Managing API keys needs the API keys permission. Owners and Administrators have it, and a custom role can grant it. Members without it do not see API Keys in the settings menu.
Create a key
1
Open API Keys
Go to Settings → Developers → API Keys and click Create New Key.
2
Name the key
Enter a Key Name that says where the key will be used, for example “Checkout service” or “Zapier”. The name is only for you; it is how you tell keys apart in the list.
3
Set an expiry date (optional)
Pick an Expiry Date if the key should stop working on a given day. Leave it empty for a key that never expires.
4
Choose permissions
Under Permissions, tick the scopes this key needs. They are grouped by what they touch: contacts, lists and segments; events and goals; transactional email and templates; campaigns; journeys; webhooks; AI assistants (MCP). For a key that may call everything, turn on Full access instead. Create Key stays disabled until you either tick at least one scope or turn on Full access.
5
Create and copy the key
Click Create Key. The Your New API Key dialog shows the full key once. Click Copy Key and store it in your secret manager.
Permissions (scopes)
Give each key only the scopes it needs. A key with scopes can call only the endpoints those scopes cover. Any other call returns403 with code: "insufficient_scope". Most endpoints also name the missing scope in requiredScope. Transactional send and validate, public events and the MCP server don’t, so check code.
contacts:read also covers custom fields and segments, contacts:write covers creating lists, and transactional:read covers listing templates.
Full access
Full access is a switch of its own, not “nothing ticked”. A full-access key can call every endpoint, including any added to the API later, so the editor shows a warning when you turn it on. Prefer the narrowest scopes that work.Keys created before scopes existed have no scopes and keep full access. They show a Full access badge in the list.
The key list
Each key shows its Name with its scopes (or Full access), the Prefix (the first characters of the key, so you can match it to your config), when it was Created, when it was Last Used, and when it Expires. An expired key has an Expired badge and is refused by the API.Revoke a key
Click the delete icon on the key’s row, then Delete Key in the Delete API Key dialog. Any application using the key stops working immediately. To rotate a key without downtime, create the new key first, deploy it, check that the old key’s Last Used date stops changing, then delete the old key.Change a key’s name or permissions
1
Open the editor
Click the pencil icon (Edit key) on the key’s row. The Edit API key dialog shows its name and its current scopes.
2
Change the scopes
Tick or untick scopes, or turn Full access on or off. Turning on Full access for a key that had scopes removes its limits, and the dialog warns you before you save. Turning it off brings back the scopes the key had.
3
Save
Click Save. The change applies from the key’s next request. The key itself does not change, so nothing needs redeploying.
Save stays disabled while Full access is off and no scope is ticked: a key with no scopes is stored as full access, so the editor never lets that happen by accident.