Skip to content
meruma Developers

Developers · Get started

Authentication with OAuth 2

Two ways to connect, depending on who connects, and the permissions each app can ask for.

Two ways to connect

Who connects How The token
Your own system or n8n A “private app”: anyone whose role includes Integrations creates it in Integrations › For developers and copies its ID and secret. You request it with client credentials. It lasts one hour.
Zapier, Make and other apps They connect when you click “Allow” in meruma: the person picks the organization and accepts. You can disconnect them from meruma at any time. Authorization code with PKCE. It lasts one hour and renews itself.

Tokens act as the person who connected the app, with only the permissions it was given. Anyone whose role includes Integrations can connect apps; webhooks are for owners and admins.

Request a token and use it

curl -u "$CLIENT_ID:$CLIENT_SECRET" \
  -d grant_type=client_credentials \
  https://api.meruma.app/oauth/token

The response carries access_token and expires_in (in seconds). Send it with every request:

curl https://api.meruma.app/v1/contacts \
  -H "Authorization: Bearer $ACCESS_TOKEN"

When it expires, request another one the same way. An expired or revoked token returns 401.

Permissions

Each app asks only for what it needs.

Permission What it allows
contacts:read Read contacts and their notes
contacts:write Create, update and move contacts to the trash; add notes
cards:read Read cards, pipelines, stages and their notes
cards:write Create and update cards, move them between stages, tags and notes
webhooks:write Subscribe and unsubscribe webhooks

GET /v1/me, the list of users and the list of custom fields need no permission: every integration needs them to map fields and owners.

Reviewed on