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