Amika API keys API

The API keys API from Amika — 2 operation(s) for api keys.

OpenAPI Specification

amika-api-keys-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amika API — v0beta1 API keys API
  version: 0beta1
tags:
- name: API keys
paths:
  /api-keys:
    get:
      tags:
      - API keys
      summary: List organization API keys
      security:
      - bearerAuth: []
      - cookieAuth: []
      parameters:
      - schema:
          type: string
          minLength: 1
          description: Pagination cursor returned by a previous list call.
          example: cursor-2
        required: false
        description: Pagination cursor returned by a previous list call.
        name: after
        in: query
      - schema:
          type: integer
          minimum: 0
          exclusiveMinimum: true
          description: Maximum number of API keys to return.
          example: 25
        required: false
        description: Maximum number of API keys to return.
        name: limit
        in: query
      responses:
        '200':
          description: Page of API keys for the caller's organization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListApiKeysResponse'
        '400':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
        '401':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
        '403':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
    post:
      tags:
      - API keys
      summary: Create an API key
      security:
      - bearerAuth: []
      - cookieAuth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateApiKeyRequest'
      responses:
        '201':
          description: Created API key, including its plaintext value.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiKeyWithValue'
        '400':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
        '401':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
        '403':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
  /api-keys/{id}:
    delete:
      tags:
      - API keys
      summary: Delete an API key
      security:
      - bearerAuth: []
      - cookieAuth: []
      parameters:
      - schema:
          type: string
          minLength: 1
          description: WorkOS API key id.
          example: key_01H...
        required: true
        description: WorkOS API key id.
        name: id
        in: path
      responses:
        '204':
          description: API key deleted.
        '401':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
        '403':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
        '404':
          description: Error
          headers:
            x-trace-id:
              description: Per-request trace id for correlating responses with logs.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - error
                  error_code:
                    type: string
                  message:
                    type: string
                  details:
                    type: array
                    items:
                      nullable: true
                  trace_id:
                    type: string
                required:
                - type
                - error_code
                - message
components:
  schemas:
    CreateApiKeyRequest:
      type: object
      properties:
        name:
          type: string
          minLength: 1
          description: Human-readable name for the API key.
      required:
      - name
    ListApiKeysResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ApiKeySummary'
        pageInfo:
          type: object
          properties:
            after:
              type: string
              nullable: true
            hasNextPage:
              type: boolean
          required:
          - after
          - hasNextPage
      required:
      - data
      - pageInfo
    ApiKeySummary:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        obfuscatedValue:
          type: string
        lastUsedAt:
          type: string
          nullable: true
        createdAt:
          type: string
        updatedAt:
          type: string
      required:
      - id
      - name
      - obfuscatedValue
      - lastUsedAt
      - createdAt
      - updatedAt
    ApiKeyWithValue:
      allOf:
      - $ref: '#/components/schemas/ApiKeySummary'
      - type: object
        properties:
          value:
            type: string
        required:
        - value