openapi: 3.0.3 info: title: Appwrite Account Users 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: Users description: Server-side user management (requires server key) paths: /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 components: 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 securitySchemes: projectKey: type: apiKey in: header name: X-Appwrite-Project