Bearer token (required)
The adapter authenticates with a single static Bearer token. You issue HunterAI a dedicated, read-only token scoped to the endpoints in this spec, and HunterAI sends it on every request:Issue a token that can only read the seven endpoints in this spec. HunterAI never
writes to your CRM, so a read-only token is sufficient and is the correct least-privilege
choice.
How HunterAI stores your token
- The token is written to the connection record and encrypted at rest with Fernet (AES-128-CBC + HMAC). It is never stored in plaintext.
- It is write-only through the API: the onboarding endpoints accept a token but never return it in any response. Once saved, it cannot be read back — only replaced.
Rotating the token
Rotation is a straight replacement, with no downtime if you overlap the two tokens:1
Issue a new token
Generate the replacement in your CRM. Keep the old one valid for the moment.
2
Update the connection
Your HunterAI business owner PATCHes the connection with the new token
(see Go live). The next sync uses it immediately.
3
Revoke the old token
Once a sync has succeeded on the new token, revoke the old one.
Revoking access
Revoke the token in your CRM at any time. The next HunterAI request receives401 and the sync stops — no data is written on our side
from an unauthenticated call. Revoking the token is the supported way to cut HunterAI off
without deleting the connection.