Skip to main content
GET
/
v1
/
api-keys
List API Keys
curl --request GET \
  --url https://api.example.com/v1/api-keys
{
  "id": "<string>",
  "organization_id": "<string>",
  "decrypted_key": "<string>",
  "created_at": "<string>",
  "modified_at": "<string>",
  "expiration_date": "<string>",
  "last_used_date": "<string>",
  "created_by_email": "<string>",
  "modified_by_email": "<string>"
}

Overview

Retrieve all API keys for the authenticated organization. Returns keys with their metadata including expiration dates and usage information. Note: The actual key values are returned decrypted, but should be treated as sensitive data.

Query Parameters

skip
integer
default:0
Number of keys to skip for pagination
limit
integer
default:100
Maximum number of keys to return (1-100)

Response

Returns an array of API key objects.
id
string
required
Unique UUID identifier of the API key
organization_id
string
required
UUID of the organization this key belongs to
decrypted_key
string
required
The actual API key value (encrypted in storage, decrypted in response)
created_at
string
required
When the key was created (ISO 8601)
modified_at
string
required
When the key was last modified (ISO 8601)
expiration_date
string
required
When the key will expire (ISO 8601)
last_used_date
string
When the key was last used for API requests (ISO 8601). null if never used.
created_by_email
string
Email address of the user who created the key
modified_by_email
string
Email address of the user who last modified the key

Example Request

curl "https://api.airweave.ai/v1/api-keys?limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

Example Response

[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "organization_id": "770e8400-e29b-41d4-a716-446655440001",
    "decrypted_key": "awv_live_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
    "created_at": "2024-03-15T10:00:00Z",
    "modified_at": "2024-03-15T10:00:00Z",
    "expiration_date": "2024-06-13T10:00:00Z",
    "last_used_date": "2024-03-20T14:30:00Z",
    "created_by_email": "user@company.com",
    "modified_by_email": "user@company.com"
  },
  {
    "id": "660e8400-e29b-41d4-a716-446655440002",
    "organization_id": "770e8400-e29b-41d4-a716-446655440001",
    "decrypted_key": "awv_live_x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4",
    "created_at": "2024-01-10T08:00:00Z",
    "modified_at": "2024-01-10T08:00:00Z",
    "expiration_date": "2024-04-09T08:00:00Z",
    "last_used_date": null,
    "created_by_email": "admin@company.com",
    "modified_by_email": "admin@company.com"
  }
]

Use Cases

  • Audit key usage: Check last_used_date to identify inactive keys
  • Monitor expiration: Find keys approaching expiration
  • Key management: List all keys before rotation or cleanup
  • Security review: Identify keys that should be deleted

Error Responses

401 Unauthorized
Missing or invalid authentication