GraphQL

A full GraphQL endpoint over your documents, with schema introspection. Send queries to POST /graphql (a GET ?query= form also works). Document bodies are carried on a JSON scalar.

Queries & mutations

Operations
Query:
  documentGet(databaseId, collectionId, documentId, populate)
  documentList(databaseId, collectionId, queries, populate) { total documents { id data } }
  collectionList(databaseId)
Mutation:
  documentCreate(databaseId, collectionId, documentId, data, permissions)
  documentUpdate(databaseId, collectionId, documentId, data, permissions)
  documentDelete(databaseId, collectionId, documentId)

Example

curl
curl -X POST "https://base.finiteskills.com/v1/graphql" -H "X-Appwrite-Project: <YOUR_PROJECT_ID>" \
  -H "X-Appwrite-Key: <API_KEY>" -H "Content-Type: application/json" \
  -d '{"query":"mutation($d:JSON!){ documentCreate(databaseId:\"main\",collectionId:\"notes\",data:$d){ id data } }","variables":{"d":{"title":"Hi"}}}'

Errors follow the GraphQL spec and carry FiniteBase's { code, type } in extensions. Point any GraphQL client at the endpoint — introspection works.