# Get an API key: Sakana AI

> Sakana AI spreads one key across a pool of AI services, for users outside the European Economic Area, the UK and Switzerland, on credit that expires in six months.

- Canonical: https://big-agi.com/docs/connect-sakana
- Minimum tier: open  [Open ⊂ Free ⊂ Pro - a tier only ever ADDS to the Open baseline]
- Kind: provider · Last content update generation: 2026-07-27 · Review by: 2026-10-29
- Answers: Where do I create a Sakana AI API key? · Can I use Sakana AI in the EU or the UK? · Does Sakana AI have a free tier, and do its credits expire? · Why does my Sakana AI key pass the field and still fail? · Why is there no Direct Connection row for Sakana AI? · How do I use SAKANA_API_KEY on my own server?

Sakana AI is an orchestrator: one key reaches a router that spreads each request across a pool of third-party AI services. It serves users outside the EU and the rest of the European Economic Area, the UK and Switzerland.

## Who can hold an account

That regional line is in Sakana's [terms of service](https://console.sakana.ai/terms-of-service), alongside an 18-year minimum. Sakana names GDPR compliance as the pending work.

## Credits, and their six-month clock

Two billing modes are published on [the pricing page](https://console.sakana.ai/pricing): prepaid credit spent per request, or a monthly subscription with a fixed allowance. Neither a free tier nor trial credit is offered, so money goes on the account before the first answer. Prepaid credit expires six months after purchase, and is neither refundable nor transferable. Nothing inside Big-AGI holds the spending back - the balance, or the tier's allowance, is what stops a request.

## Issuing the key

1. Open [console.sakana.ai/get-started](https://console.sakana.ai/get-started) - the empty key field links there as **request Key**.
2. Create a key on the console's API keys page.
3. Copy it there - it is shown once.

The key's own create and edit form carries a custom-pool option: leave only the upstream services you accept, and routing skips the rest. Training use is opt-out from the console ([privacy policy](https://console.sakana.ai/privacy-policy)).

## The key field, and the host beside it

Sakana keys start `fish_`, and the field shows that as its placeholder. Big-AGI checks the length only, at least 40 characters, so a wrong string of the right length passes here and is refused upstream.

Open **Models** (`Ctrl + Shift + M`) and press **More Services** if the **Setup AI Models** wizard appears. Then **Add** -> **Sakana AI**, paste into **Sakana AI Key**, and press **Models** - the list filling in below is your confirmation ([add and manage your keys](/docs/connect-models)).

**Advanced** carries an **API Host** field. Give it a bare origin such as `https://api.sakana.ai`, because Big-AGI appends the API paths itself. A value ending in `/v1` produces a doubled path and no list.

## What the model list carries

Sakana's list endpoint returns model IDs and nothing else. Every label, context size and price you see comes from Big-AGI's own table, updated by hand. A brand-new ID arrives with generic details until that table catches up. One model is gated behind an access request and pay-as-you-go billing. It ships hidden, and you unhide it from the model list once Sakana approves your key.

## Server-only by construction

Sakana's API declines browser-direct (CORS) requests, so every request travels through the Big-AGI fast edge servers. It is one of two AI services that declare no browser path at all ([Modular](/docs/connect-modular) is the other), so the Direct Connection control never renders anywhere in the app.

> **Direct Connection works only with your API key stored in the browser**, and with an AI service that permits direct browser calls (CORS). Where it cannot be used, requests route through the Big-AGI fast edge servers instead - everything still works, within the standard upload size and time limits.

## Running it from a server key

A server-side `SAKANA_API_KEY` shows no green check, no `Already set on server` label, and no service waiting after a restart. The server still reads it on every request. Add the service by hand, leave **Sakana AI Key** empty and press **Models** - the server supplies the key and the list fills. `SAKANA_API_HOST` replaces the default endpoint the same way ([keys held by a server you operate](/docs/self-host-configuration)).

## When this doesn't work

| What you see | What it means | What to do |
|---|---|---|
| `Prepaid credit balance is exhausted` | The credit is spent or expired, and this one is never retried. | Buy credit in the console, then [key and access errors](/docs/issue-key-and-access) |
| The key is accepted and no models arrive | The field counts characters only, so a key from the wrong account passes it. | Copy the key again from the console: [key and access errors](/docs/issue-key-and-access) |
| A model answers with a permission error | That model is access-gated and the key is not approved yet. | Request access from Sakana, or pick another model: [key and access errors](/docs/issue-key-and-access) |

## Related

- [Connect an AI service](/docs/connect-models)
- [Direct Connection](/docs/feature-direct-connection)
- [What your provider does with your text](/docs/privacy-data-flow)
- [Keys held by a server you operate](/docs/self-host-configuration)
