Appwrite GraphQL API
Appwrite exposes its full backend API surface through a GraphQL endpoint that mirrors every REST operation. All services — Account, Databases, Storage, Functions, Teams, Locale, Messaging, and Users — are accessible as GraphQL queries (for GET operations) and mutations (for POST, PUT, PATCH, and DELETE operations). The schema is generated dynamically from Appwrite's route definitions, so field names follow the pattern of `{namespace}{MethodName}` (e.g., `accountGet`, `databasesListDocuments`, `storageCreateFile`). Appwrite uses `_` instead of `$` for internal model fields in GraphQL (e.g., `_id`, `_createdAt`, `_permissions`), because `$` is reserved in GraphQL syntax.
Overview
Appwrite GraphQL API is a GraphQL API specification published by Appwrite on the APIs.io network.
Appwrite exposes its full backend API surface through a GraphQL endpoint that mirrors every REST operation. All services — Account, Databases, Storage, Functions, Teams, Locale, Messaging, and Users — are accessible as GraphQL queries (for GET operations) and mutations (for POST, PUT, PATCH, and DELETE operations). The schema is generated dynamically from Appwrite’s route definitions, so field names follow the pattern of {namespace}{MethodName} (e.g., accountGet, databasesListDocuments, storageCreateFile). Appwrite uses _ instead of $ for internal model fields in GraphQL (e.g., _id, _createdAt, _permissions), because $ is reserved in GraphQL syntax.
The GraphQL endpoint is available at https://{hostname}/v1/graphql. documentation is published at https://appwrite.io/docs/apis/graphql.
The specification includes 2 reference links.
Tagged areas include Applications, Backends, Mobile, and Open Source.
Endpoint
References
- Documentation https://appwrite.io/docs/apis/graphql
- GettingStarted https://appwrite.io/docs/quick-starts