Quickstart

Tutorial

The public API lets your own scripts and integrations read and write your organisation's data directly - contacts, companies, deals, activities, notes, and brands. It's separate from the internal API the Envoy web app itself uses, which has no stability guarantees.

API access is included on every paid plan (not Free) - see pricing if you need to upgrade first.

1. Create a key

In Envoy, go to Settings → API keys and click New key. Give it a name (so you can tell it apart from other integrations later) and choose whether it should be read-only. Copy the key when it's shown - it starts with envoy_live_ and is only ever displayed this once.

2. Make a request

Every request needs the key as a bearer token. No other headers are required - the key alone identifies both you and your organisation.

curl https://app.envoycrm.com/api/v1/contacts \
  -H "Authorization: Bearer envoy_live_..."

A successful response looks like this:

{
  "items": [
    { "id": 1, "firstName": "Jane", "lastName": "Doe", "email": "[email protected]", ... }
  ],
  "total": 1
}

3. Create something

curl -X POST https://app.envoycrm.com/api/v1/contacts \
  -H "Authorization: Bearer envoy_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "firstName": "Jane", "lastName": "Doe", "email": "[email protected]" }'

The response is { "id": 123 } - use that id to fetch, update, or delete the record later.

Next

  • Authentication - how keys are attributed, read-only mode, expiry and revocation
  • Conventions - pagination, errors, idempotency, rate limits
  • API Reference - every endpoint, with a live try-it console