You are looking at the docs for an older version of Dgraph (v21.03). The latest version is v23.1.
Ask a Question

Index of Directives

The list of all directives supported by Dgraph.


@auth allows you to define how to apply authorization rules on the queries/mutation for a type.

Reference: Auth directive


@cascade allows you to filter out certain nodes within a query.

Reference: Cascade


@custom directive is used to define custom queries, mutations and fields.

Reference: Custom directive


The @deprecated directive lets you mark the schema definition of a field or enum value as deprecated, and also lets you provide an optional reason for the deprecation.

Reference: Deprecation


@dgraph directive tells us how to map fields within a type to existing predicates inside Dgraph.

Reference: GraphQL on Existing Dgraph


The @generate directive is used to specify which GraphQL APIs are generated for a type.

Reference: Generate directive


@hasInverse is used to setup up two way edges such that adding a edge in one direction automically adds the one in the inverse direction.

Reference: Linking nodes in the graph


@id directive is used to annotate a field which represents a unique identifier coming from outside of Dgraph.

Reference: Identity


The @include directive can be used to include a field based on the value of an if argument.

Reference: Include directive


The @lambda directive allows you to call custom JavaScript resolvers. The @lambda queries, mutations, and fields are resolved through the lambda functions implemented on a given lambda server.

Reference: Lambda directive


@remote directive is used to annotate types for which data is not stored in Dgraph. These types are typically used with custom queries and mutations.

Reference: Remote directive


The @remoteResponse directive allows you to annotate the fields of a @remote type in order to map a custom query’s JSON key response to a GraphQL field.

Reference: Remote directive

@search allows you to perform filtering on a field while querying for nodes.

Reference: Search


@secret directive is used to store secret information, it gets encrypted and then stored in Dgraph.

Reference: Password Type


The @skip directive can be used to fetch a field based on the value of a user-defined GraphQL variable.

Reference: Skip directive


@withSubscription directive when applied on a type, generates subsciption queries for it.

Reference: Subscriptions


The @lambdaOnMutate directive allows you to listen to mutation events(add/update/delete). Depending on the defined events and the occurrence of a mutation event, @lambdaOnMutate triggers the appropriate lambda function implemented on a given lambda server.

Reference: LambdaOnMutate directive