openapi: 3.0.3 info: title: Appwrite API description: >- The Appwrite REST API provides programmatic access to backend services for web and mobile applications, including user authentication, databases, file storage, cloud functions, real-time messaging, and team management. Appwrite is open source and can be self-hosted or used via Appwrite Cloud. version: 1.6.0 contact: name: Appwrite url: https://appwrite.io/docs license: name: BSD 3-Clause url: https://opensource.org/licenses/BSD-3-Clause servers: - url: https://cloud.appwrite.io/v1 description: Appwrite Cloud API security: - projectKey: [] tags: - name: Account description: User account management - name: Users description: Server-side user management (requires server key) - name: Databases description: Database and collection management - name: Storage description: File storage management paths: /account: get: operationId: getAccount summary: Appwrite - Get Account description: Returns the currently authenticated user account information tags: - Account responses: '200': description: User account details content: application/json: schema: $ref: '#/components/schemas/User' examples: GetAccountExample: x-microcks-default: true summary: Example account response value: $id: user-abc123 name: Jane Developer email: jane@example.com emailVerification: true status: true createdAt: "2026-01-01T12:00:00Z" '401': description: Unauthorized - invalid or missing session /users: get: operationId: listUsers summary: Appwrite - List Users description: Returns a list of all users in the project (requires server API key) tags: - Users parameters: - name: queries in: query description: Array of query strings for filtering users schema: type: array items: type: string - name: search in: query description: Search term to filter users by name or email schema: type: string responses: '200': description: A list of users content: application/json: schema: type: object properties: total: type: integer description: Total number of users users: type: array items: $ref: '#/components/schemas/User' examples: ListUsersExample: x-microcks-default: true summary: Example users list value: total: 1 users: - $id: user-abc123 name: Jane Developer email: jane@example.com emailVerification: true status: true '401': description: Unauthorized - invalid or missing API key post: operationId: createUser summary: Appwrite - Create User description: Creates a new user account in the Appwrite project tags: - Users requestBody: required: true content: application/json: schema: type: object required: - userId - email - password properties: userId: type: string description: Unique user ID (use "unique()" to auto-generate) email: type: string description: User email address password: type: string description: User password name: type: string description: User display name examples: CreateUserExample: x-microcks-default: true summary: Example user creation request value: userId: unique() email: newuser@example.com password: securepassword123 name: New User responses: '201': description: User created successfully content: application/json: schema: $ref: '#/components/schemas/User' '400': description: Invalid request body '409': description: User with this email already exists '401': description: Unauthorized - invalid or missing API key /databases: get: operationId: listDatabases summary: Appwrite - List Databases description: Returns a list of all databases in the Appwrite project tags: - Databases responses: '200': description: A list of databases content: application/json: schema: type: object properties: total: type: integer description: Total number of databases databases: type: array items: $ref: '#/components/schemas/Database' examples: ListDatabasesExample: x-microcks-default: true summary: Example databases list value: total: 1 databases: - $id: main-db name: Main Database createdAt: "2026-01-01T00:00:00Z" '401': description: Unauthorized - invalid or missing API key /storage/buckets: get: operationId: listBuckets summary: Appwrite - List Buckets description: Returns a list of all storage buckets in the Appwrite project tags: - Storage responses: '200': description: A list of storage buckets content: application/json: schema: type: object properties: total: type: integer description: Total number of buckets buckets: type: array items: $ref: '#/components/schemas/Bucket' examples: ListBucketsExample: x-microcks-default: true summary: Example buckets list value: total: 1 buckets: - $id: avatars name: User Avatars createdAt: "2026-01-01T00:00:00Z" '401': description: Unauthorized - invalid or missing API key components: securitySchemes: projectKey: type: apiKey in: header name: X-Appwrite-Project schemas: User: title: User description: An Appwrite user account type: object properties: $id: type: string description: Unique user identifier name: type: string description: User display name email: type: string description: User email address phone: type: string description: User phone number emailVerification: type: boolean description: Email verification status phoneVerification: type: boolean description: Phone verification status status: type: boolean description: Account active status createdAt: type: string format: date-time description: Account creation timestamp labels: type: array items: type: string description: User labels for role-based access control Database: title: Database description: An Appwrite database for storing collections and documents type: object properties: $id: type: string description: Unique database identifier name: type: string description: Database name createdAt: type: string format: date-time description: Database creation timestamp Bucket: title: Bucket description: An Appwrite storage bucket for managing files type: object properties: $id: type: string description: Unique bucket identifier name: type: string description: Bucket name createdAt: type: string format: date-time description: Bucket creation timestamp maximumFileSize: type: integer description: Maximum file size in bytes allowedFileExtensions: type: array items: type: string description: Allowed file extensions (empty = all allowed)