honeycomb Key Management API
Manage API keys for a team, including listing, creating, updating, and deleting keys.
Manage API keys for a team, including listing, creating, updating, and deleting keys.
openapi: 3.1.0
info:
title: Honeycomb Auth Key Management API
description: The Honeycomb API is a REST API that provides programmatic access to the Honeycomb observability platform. It enables developers to manage datasets and columns, configure SLOs and burn alerts, set up triggers and recipients, manage boards and markers, administer environments, API keys, and access auth, query annotations, calculated fields, marker settings, reporting, dataset definitions, and service maps.
version: '1.0'
contact:
name: Honeycomb Support
url: https://support.honeycomb.io
termsOfService: https://www.honeycomb.io/terms-of-service
servers:
- url: https://api.honeycomb.io
description: Honeycomb Production API
security:
- ApiKeyAuth: []
tags:
- name: Key Management
description: Manage API keys for a team, including listing, creating, updating, and deleting keys.
paths:
/1/api_keys:
get:
operationId: listApiKeys
summary: List all API keys
description: Returns a list of all API keys for the team.
tags:
- Key Management
responses:
'200':
description: A list of API keys
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ApiKey'
'401':
description: Unauthorized
post:
operationId: createApiKey
summary: Create an API key
description: Creates a new API key for the team with specified permissions and environment scope.
tags:
- Key Management
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCreateRequest'
responses:
'201':
description: API key created
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKey'
'401':
description: Unauthorized
/1/api_keys/{keyId}:
get:
operationId: getApiKey
summary: Get an API key
description: Returns a single API key by its ID.
tags:
- Key Management
parameters:
- $ref: '#/components/parameters/keyId'
responses:
'200':
description: API key details
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKey'
'401':
description: Unauthorized
'404':
description: API key not found
put:
operationId: updateApiKey
summary: Update an API key
description: Updates an API key's name, permissions, or configuration.
tags:
- Key Management
parameters:
- $ref: '#/components/parameters/keyId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyUpdateRequest'
responses:
'200':
description: API key updated
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKey'
'401':
description: Unauthorized
'404':
description: API key not found
delete:
operationId: deleteApiKey
summary: Delete an API key
description: Deletes an API key.
tags:
- Key Management
parameters:
- $ref: '#/components/parameters/keyId'
responses:
'204':
description: API key deleted
'401':
description: Unauthorized
'404':
description: API key not found
components:
parameters:
keyId:
name: keyId
in: path
required: true
description: The unique identifier for the API key.
schema:
type: string
schemas:
ApiKey:
type: object
properties:
id:
type: string
description: Unique identifier for the API key.
name:
type: string
description: The display name of the API key.
type:
type: string
description: The type of API key.
enum:
- configuration
- ingest
disabled:
type: boolean
description: Whether the API key is disabled.
permissions:
type: object
description: The permissions granted to this API key.
additionalProperties:
type: boolean
environment_id:
type: string
description: The environment this key is scoped to, if applicable.
secret:
type: string
description: The API key secret, only returned upon creation.
created_at:
type: string
format: date-time
description: ISO8601 formatted time the API key was created.
ApiKeyCreateRequest:
type: object
required:
- name
- type
properties:
name:
type: string
description: The display name for the API key.
type:
type: string
description: The type of API key to create.
enum:
- configuration
- ingest
permissions:
type: object
description: The permissions to grant to this API key.
additionalProperties:
type: boolean
environment_id:
type: string
description: The environment to scope this key to.
ApiKeyUpdateRequest:
type: object
properties:
name:
type: string
description: An updated display name for the API key.
disabled:
type: boolean
description: Whether to disable the API key.
permissions:
type: object
description: Updated permissions for the API key.
additionalProperties:
type: boolean
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: X-Honeycomb-Team
description: Honeycomb Configuration API key. Must have appropriate permissions for the endpoint being called.
externalDocs:
description: Honeycomb API Documentation
url: https://api-docs.honeycomb.io/api