# `GSNode.attributes`

*Instance Property*

Additional values associated with the node.

## Declaration

```swift
var attributes: [GSShapeKey : Any] { get set }
```

```objc
@property (nonatomic, strong) NSDictionary<NSString *,id> * attributes;
```

[See also `attributes` in the Python API](https://docu.glyphsapp.com/#GSNode.attributes)

```python
pyobjc_instanceMethods.attributes() -> dict[str, object]
pyobjc_instanceMethods.setAttributes_(attributes: dict[str, object])
```

## Discussion

Attribute values must support property-list encoding.

## See Also

### Attributes

- [`GSNode.countOfAttributes`](/Core/GlyphsCore/GSNode/countOfAttributes) — The number of attributes.
- [`GSNode attributeForKey:`](/Core/GlyphsCore/GSNode/attributeForKey:) — The value for an attribute key, or `nil` if no value is set.
- [`GSNode setAttribute:forKey:`](/Core/GlyphsCore/GSNode/setAttribute:forKey:) — Sets or removes an attribute.
- [`GSNode setAttributes:format:`](/Core/GlyphsCore/GSNode/setAttributes:format:) — Replaces all attributes using values encoded for a file format version.
- [`GSNode setAttributesFast:format:`](/Core/GlyphsCore/GSNode/setAttributesFast:format:) — Replaces all attributes without registering undo or notifying the path.
- [`GSNode removeAttributeForKey:`](/Core/GlyphsCore/GSNode/removeAttributeForKey:) — Removes an attribute.

