Skip to main content
This guide walks through using Anthropic Claude models with the AI Gateway. Anthropic is a built-in provider, so ngrok.ai offers managed inference for it—you can use Claude models without an Anthropic account of your own, or bring your own key.

Use ngrok.ai inference (no Anthropic account)

You can use Claude models without your own Anthropic account—ngrok.ai inference supplies the upstream credentials and bills the model cost through credits.
1

Create an access key and add credits

Follow the quickstart to create an access key and purchase credits in app.ngrok.ai.
2

Send requests

Point your SDK at the gateway with your access key:
import anthropic

client = anthropic.Anthropic(
    base_url="https://gateway.ngrok.ai",
    api_key="ng-xxxxx-g1-xxxxx",  # Access key
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello!"}]
)
The gateway supports both the Anthropic Messages API (/v1/messages) and OpenAI-compatible Chat Completions.

Bring your own Anthropic key

Want requests billed to your own Anthropic account instead of through credits? Store your Anthropic key once—the gateway attaches it for you on every request.
1

Create an access key

Follow the quickstart to create an access key in app.ngrok.ai if you don’t have one yet.
2

Add your Anthropic key

Add a provider key for Anthropic. ngrok stores it encrypted, so it never has to live in your application or get shared around—and you can reuse it across as many access keys as you need.
3

Route to it with a configuration

Create an access key configuration with an Anthropic routing rule set to Bring your own API key, then assign it to your access key.
4

Keep sending your access key

Your code doesn’t change. Send the same access key as before—the gateway swaps in your Anthropic key before the request leaves for Anthropic.

Explicit provider routing

message = client.messages.create(
    model="anthropic:claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello!"}]
)

Available models

Browse the model catalog for the full list of Claude models you can call through the gateway.

Next steps