> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trylimitless.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# SDKs and integrations

> Connect existing clients using Limitless endpoints and keys.

Use a dedicated, scoped customer key for each integration. Choose the protocol the client actually implements.

| Client | Base URL setting | Authentication |
| - | - | - |
| OpenAI JavaScript or Python SDK | `https://trylimitless.ai/v1` | Customer key as `apiKey` or `api_key`. |
| Anthropic Python SDK | `https://trylimitless.ai` | Customer key as `api_key`; the SDK uses `x-api-key`. |
| OpenAI-compatible editor or chat client | Custom provider URL ending in `/v1` | Customer key; select an available Limitless model ID. |
| Raw HTTP organization automation | `https://trylimitless.ai/v1/organization` | Admin API key in `Authorization: Bearer …`. |

These are the hosted sandbox API URLs. The documentation domain is not an API endpoint. For local development, the origin is `http://127.0.0.1:3001`. See [quickstart](/quickstart) for complete OpenAI SDK examples and [Messages](/guides/messages) for Anthropic examples.

## Configure a compatible application

1. Select its custom OpenAI-compatible or Anthropic-compatible provider.
2. Set the corresponding base URL and your Limitless customer key.
3. Select an exact ID returned by `GET /v1/models`.
4. Start with a short prompt and modest output limit.
5. Confirm the request and cost in Activity before increasing use.

A client that assumes files, audio, embeddings, stored conversations, background jobs, or another provider's model names may require configuration changes. SDK compatibility does not add those APIs. Do not substitute an Admin API key for an inference key.

Use server-side clients where possible. If an installed desktop application stores the key, follow that application's credential-storage controls. Avoid putting customer keys in a public frontend bundle.

## Verify the full flow

List models, run one JSON generation, then run one stream and wait for its terminal event. Confirm both usage records. Test application cancellation through the deployed client/proxy path separately: a closed local stream does not prove the gateway received the disconnect. For an observed customer cancellation, final reported usage is charged normally; if final usage is unavailable, reserved credits are released and Limitless absorbs the unmeasured supplier cost. Timeouts, provider failures and platform shutdown can still leave unknown usage pending reconciliation. See [streaming](/guides/streaming) and [billing](/billing).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.