Developer Portal
How-to guides

Carbon Voice + Custom Integration

About this integration

Why Carbon Voice?

  • Talk to your service — Record voice messages that are sent to your custom service via webhook while on-the-go with the mobile app
  • Talk to it with a desktop shortcut — Start talking to your webhook with a single keyboard shortcut
  • Full API control — Use the Carbon Voice API to send replies, mark messages as read, and attach files

1 - Create an Agent Account (Optional: Get PAT if accessing the API)

  1. Create an agent
  2. If you want your webhook to send replies back to Carbon Voice, generate a Personal Access Token (PAT) for that agent
  3. Copy the PAT - you'll need it for API calls

2 - Connect your agent

Register your Webhook

Your webhook endpoint is the URL Carbon Voice will POST to whenever a new message is sent to your agent.

  1. On the Agent Setup page, scroll down to "Webhook subscription"
  2. Enter your webhook URL
  3. Configure message filters as needed (e.g. ignore messages the agent sends itself)
  4. Click Subscribe

Carbon Voice will now POST to your webhook URL whenever a new message is sent to your agent. The payload will contain the message text (transcript_txt) and other metadata.

For more details on how to process messages coming to the agents or make API calls, see the "How-to guides below.

3 - Talk to your agent

Get desktop app to setup hotkeys to talk to your agent. Get mobile app to talk to your agent on the go. Download Carbon Voice

How-to guides

Use the following guides for the most common operations your integration will need:

For the full API reference: OpenAPI spec

Troubleshooting

ProblemSolution
Webhook not firingVerify the URL is correct in the Agent Setup and that your server is publicly reachable
Agent replies to itselfAdd a filter in your webhook subscription to exclude messages where creator_id matches your agent's user ID (get it from GET /whoami)
Replies go to wrong channelMake sure you're using conversation_id from the incoming webhook payload, not a hardcoded value
401 UnauthorizedCheck your PAT is correct and being sent as Bearer <token> in the Authorization header

Need help? Reach out in Carbon Voice: Settings → Help → Support

Security Notes

  • Your Carbon Voice PAT is stored in your service configuration — never commit it to version control
  • Use webhook filters to restrict who can send messages to your agent
Carbon Voice + Custom Integration | Carbon Voice Developer Portal