Authentication

API Key Authentication

All Public API endpoints require authentication using an API key passed in the X-API-Key header.

Creating an API Key

Endpoint: POST /api/v1/api-keys

Headers:

Authorization: Bearer <your_jwt_token>
Content-Type: application/json

Request Body:

{
  "name": "My Production Key",
  "scopes": ["read:financial", "read:stock"],
  "expires_at": "2025-12-31T23:59:59Z",
  "rate_limit": 2000,
  "rate_period": 3600
}

Response:

{
  "id": 1,
  "name": "My Production Key",
  "key": "ak_aBcDeFgHiJkLmNoPqRsTuVwXyZ123456",
  "key_prefix": "ak_aBcDeFgH",
  "scopes": ["read:financial", "read:stock"],
  "expires_at": "2025-12-31T23:59:59Z",
  "created_at": "2024-01-15T10:30:00Z"
}

Warning: The full API key (key field) is only shown once at creation. Save it securely!

Using the API Key

Include your API key in the X-API-Key header for all Public API requests:

Managing API Keys

Rate Limiting

Default: 1,000 requests per hour

Rate limits are enforced per API key. When exceeded:

Custom Rate Limits

You can set custom rate limits when creating an API key:

  • rate_limit: Number of requests allowed

  • rate_period: Time period in seconds (60-86400)

If you need higher limits, please contact us via chatbot.

Last updated