> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useanima.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Get api keys



## OpenAPI

````yaml /openapi.json get /api-keys
openapi: 3.1.1
info:
  title: Anima API
  version: 0.1.0
  description: >-
    The Anima API provides programmatic access to unified infrastructure for AI
    agents: create and manage agents; send and receive email; place phone calls
    and send/receive SMS and voice; store and retrieve vault credentials; manage
    agent identity; and configure webhooks for real-time events. Authenticate
    using a Bearer token or an API key passed via the X-API-Key header.
  contact:
    name: Anima Labs
    url: https://useanima.sh
    email: support@useanima.sh
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://api.useanima.sh/v1
    description: Production
security:
  - BearerAuth: []
  - ApiKeyAuth: []
tags:
  - name: Agents
    description: Create and manage AI agents with email and phone capabilities
  - name: Inboxes
    description: Manage email inboxes and their configurations
  - name: Messages
    description: Send, receive, and search email messages
  - name: Webhooks
    description: Register and manage webhook subscriptions for real-time events
  - name: Organizations
    description: Manage organizations and team settings
  - name: Domains
    description: Configure and verify custom email domains
  - name: Phone
    description: Manage phone numbers and SMS/voice capabilities
  - name: Invoices
    description: Track invoices, match receipts, and reconcile payments
  - name: Billing
    description: View usage, tiers, and billing information
  - name: Security
    description: Configure security policies and access controls
  - name: Vault
    description: Store and retrieve encrypted secrets
  - name: API Keys
    description: Create and manage API keys for programmatic access
paths:
  /api-keys:
    get:
      operationId: apiKeys.list
      parameters:
        - name: cursor
          in: query
          schema:
            type: string
            pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
            description: Opaque cursor from a previous response to fetch the next page
          allowEmptyValue: true
          allowReserved: true
        - name: limit
          in: query
          schema:
            default: 20
            type: integer
            minimum: 1
            maximum: 100
            description: Maximum number of items to return per page (1–100, default 20)
          allowEmptyValue: true
          allowReserved: true
        - name: mode
          in: query
          schema:
            enum:
              - LIVE
              - TEST
            type: string
            description: Filter keys by environment mode
          allowEmptyValue: true
          allowReserved: true
        - name: agentId
          in: query
          schema:
            type: string
            pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
            description: Filter keys restricted to a specific agent
          allowEmptyValue: true
          allowReserved: true
        - name: includeRevoked
          in: query
          schema:
            default: false
            type: boolean
            description: Whether to include revoked keys in results
          allowEmptyValue: true
          allowReserved: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
                          description: Unique identifier for the API key
                        orgId:
                          type: string
                          pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
                          description: Organization that owns this API key
                        agentId:
                          anyOf:
                            - type: string
                              pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
                            - type: 'null'
                          description: >-
                            Agent this key is restricted to, null if
                            unrestricted
                        name:
                          anyOf:
                            - type: string
                            - type: 'null'
                          description: Human-readable label for the API key
                        prefix:
                          type: string
                          description: Non-secret prefix of the key for identification
                        mode:
                          enum:
                            - LIVE
                            - TEST
                          type: string
                          description: Environment mode of the key
                        scopes:
                          type: array
                          items:
                            type: string
                          description: Permission scopes granted to this key
                        revoked:
                          type: boolean
                          description: Whether the key has been revoked
                        createdAt:
                          type: string
                          format: date-time
                          description: ISO 8601 timestamp when the key was created
                        lastUsedAt:
                          anyOf:
                            - type: string
                              format: date-time
                            - type: 'null'
                          description: >-
                            ISO 8601 timestamp when the key was last used, null
                            if never used
                        expiresAt:
                          anyOf:
                            - type: string
                              format: date-time
                            - type: 'null'
                          description: >-
                            ISO 8601 timestamp when the key expires, null if no
                            expiration
                        createdBy:
                          anyOf:
                            - type: string
                            - type: 'null'
                          description: >-
                            User ID of the key creator, null if created by
                            system
                        extension:
                          anyOf:
                            - type: object
                              properties:
                                authPolicy:
                                  enum:
                                    - session
                                    - pre_approved
                                    - prompt_owner
                                  type: string
                                tokenTtl:
                                  enum:
                                    - 15m
                                    - 1h
                                    - session
                                  type: string
                              required:
                                - authPolicy
                                - tokenTtl
                            - type: 'null'
                          description: >-
                            Extension-token settings surfaced from metadata.
                            Present only for extension:bridge keys.
                      required:
                        - id
                        - orgId
                        - agentId
                        - name
                        - prefix
                        - mode
                        - scopes
                        - revoked
                        - createdAt
                        - lastUsedAt
                        - expiresAt
                        - createdBy
                      description: API key resource without the secret value
                    description: Array of API key resources in the current page
                  pagination:
                    type: object
                    properties:
                      nextCursor:
                        anyOf:
                          - type: string
                            pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
                          - type: 'null'
                        description: >-
                          Cursor to pass as the `cursor` parameter to retrieve
                          the next page, or null if no more results
                      hasMore:
                        type: boolean
                        description: Whether additional pages of results are available
                    required:
                      - nextCursor
                      - hasMore
                    description: Cursor-based pagination metadata
                required:
                  - items
                  - pagination
                description: Paginated list of API keys
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT Bearer token obtained from authentication. Pass as: Authorization:
        Bearer <token>
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: 'API key for programmatic access. Pass as: X-API-Key: <your-key>'

````