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

# Get API key

> Where the key is, what it is scoped to, and the one thing people get wrong about it.

Every **environment** has its own API key. There is no account-wide key.

***

## Where it is

Open **Settings**, go to the **Environments** tab, and find your environment in the
list. The **API Key** column shows it masked. The eye icon reveals it and the other
icon copies it.

<Frame>
  <img src="https://mintcdn.com/fluents/Ntis-q5QWqwCqRQw/images/product/account/environments-api-key.png?fit=max&auto=format&n=Ntis-q5QWqwCqRQw&q=85&s=cb30900a7c90db78ab74f5d14fd107b3" alt="The Environments tab in Settings, listing each environment with its masked API key, a reveal icon, a copy icon, and its concurrency and number limits" width="1567" height="476" data-path="images/product/account/environments-api-key.png" />
</Frame>

***

## Keys are scoped to one environment

This is the part worth understanding before you start debugging.

A key works only in the environment it came from. It cannot see agents, numbers, calls
or campaigns anywhere else.

<Warning>
  The most common API problem is not a broken key. It is the right key pointed at the
  wrong environment. Requests succeed and return nothing, because the thing you are
  asking about lives somewhere else.

  Before assuming a bug, check which environment the key belongs to.
</Warning>

That scoping is deliberate. It means a key you hand to a contractor, or paste into a
staging config, cannot reach production.

***

## Keeping it safe

* **Server side only.** A key in browser code is a published key.
* **One environment per use.** Use your test environment's key for testing.
* **Rotate on exposure.** If a key has been somewhere it should not, replace it.

***

## Where to go next

* Environments, caps and members: **[Settings](./settings)**
* Browser widget tokens, which work differently: **[Web Widget](../widget)**
* Notify your systems instead of polling: **[Webhooks](../webhook)**
