1. @auth

The @auth directive is used to define complex fine-grained and role-based access control for object types and fields.

Reference: Auth

2. @coalesce

The @coalesce directive exposes a mechanism for querying against non-existent, null values on a node.

Reference: @coalesce

3. @cypher

The @cypher directive overrides field resolution (including Query and Mutation fields), instead resolving with the specified Cypher.

Reference: @cypher Directive

4. @default

The @default directive allows for the setting of a default value for a field on object creation.

Reference: @default

5. @exclude

The @exclude directive is used on object types to instruct them to be skipped during Query and Mutation generation.

Reference: @exclude

6. @id

The @id directive marks a field as the unique ID for an object type, and allows for autogeneration of IDs.

Reference: @id

7. @ignore

The @ignore directive ignores a field, and it will need an alternative mechanism for resolution.

Reference: @ignore

8. @private

The @private directive protects fields which should only be available through the OGM.

Reference: @private Directive

9. @readonly

The @readonly directive marks fields as read-only.

Reference: @readonly

10. @relationship

The @relationship directive is used to configure relationships between object types.

Reference: Relationships

11. @timestamp

The @timestamp directive flags fields to be used to store timestamps on create/update events.

Reference: @timestamp

12. @writeonly

The @writeonly directive marks fields as write-only.

Reference: @writeonly