Skip to main content
Connecting a navigator to a project creates a navigator instance, but that instance can’t be used at runtime until it has an API key. The navigator API key (ck_…) is the credential submitted to Caylex on each agent tool call to identify which Navigator should be used for tool execution — distinct from the platform access token you use to manage your workspace. So after you provision a project per customer (or any time you add a navigator to a project), the natural next step is to mint a key for each new navigator instance and store it where your application can find it.
The two credentials do different jobs. The platform access token is the admin/control-plane credential used by every cookbook here. The navigator API key is the per-navigator-instance runtime credential your agent connects with — see Connecting your agent.
If you’re standing up a new customer project, POST /projects/from-seed already mints a runtime key per navigator and returns it. Use this recipe to mint additional keys or to rotate existing ones.

Endpoints used

The create response returns the full secret exactly once:
The key value is shown only on creation — it is never returned again. Capture it from the create response and store it immediately in a secret manager or your application database. The list endpoint only returns a non-secret preview. If you lose a key, revoke it and mint a new one.

The procedure

1

Find the project's navigator instances

GET /navigator-instances?project_id={project_id} to get each instance’s id and navigator_name.
2

Skip instances that already have a key (optional)

GET /navigator-instances/{id}/api-keys and check by name, so re-running doesn’t pile up duplicate keys.
3

Mint a key

POST /navigator-instances/{id}/api-keys with a descriptive name (and optional expires_at). Read the key field from the response.
4

Store it securely

Persist the key keyed by something stable — for example (project_name, navigator_name) — in your secret store. Your runtime looks it up when starting an agent session for that customer.

Full script

This mints one key per navigator instance in a project and returns a {navigator_name: key} map ready to hand to your secret store. It skips instances that already have a key with the same name, so it’s safe to re-run.
generate_navigator_keys.py

Rotating a key

To rotate without downtime: mint a new key, deploy it to your runtime, then DELETE the old one. Deleting a key takes effect immediately — any integration still using it will stop working — so swap it in first.
Set expires_at on keys you want to be short-lived, and use the key name/description to record which system or environment each key belongs to. The GET …/api-keys list shows these fields (and a preview) so you can audit what exists without exposing the secrets.

Next steps

Connecting your agent

Use a navigator API key to connect an agent to the Caylex MCP runtime.

Provision customer projects

Create the projects and navigator instances these keys belong to.

Background Agent Tasks

Hand a navigator API key to a background task to run the agent server-to-server.

REST API Reference

Full request/response schemas for the API-key endpoints.