Skip to main content
POST
/
your-webhook-url
Webhook callback for transcription results
curl --request POST \
  --url https://app.xosum.am/your-webhook-url \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "secret": "<string>",
  "docId": "<string>",
  "transcription": "<string>",
  "metadata": {
    "phonenumber": "+37400000000",
    "agent": "King Ruzi"
  },
  "title": "<string>",
  "resolution": "<string>",
  "link": "<string>"
}
'
You host this endpoint. This page documents the request that Xosum sends to you — to a URL you provide and operate on your own infrastructure. The path /your-webhook-url is a placeholder for whatever publicly-reachable URL you configure in your account at app.xosum.am. Xosum does not host this URL.
When a transcription job finishes, Xosum sends a POST request to your configured webhook URL with the payload below. Your endpoint should:
  1. Verify the secret field matches the webhookSecret configured in your Xosum account, and reject the request otherwise.
  2. Return 200 OK quickly. Acknowledge first, process asynchronously — Xosum does not retry indefinitely, so don’t tie up the connection while you do downstream work.
  3. Be prepared for two content shapes in transcription. The JSON envelope is identical regardless of recording type, but the text inside transcription differs:
    • For type: single_voice, the text is plain (no speaker labels).
    • For type: phone_call, the text is diarized with inline Խոսնակ 1: / Խոսնակ 2: speaker labels.
If you can’t host a publicly reachable endpoint, use the polling option at GET /api/getTranscription instead.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
event_type
enum<string>

Event type for transcription completion.

Available options:
transcript_ready
secret
string

Webhook secret to validate authenticity.

docId
string

Transcription job ID.

transcription
string

The transcript text. The JSON shape of this payload is identical regardless of recording type, but the content of this field differs: for type: phone_call, the text is diarized with inline Խոսնակ 1: / Խոսնակ 2: speaker labels; for type: single_voice, the text is plain with no labels.

metadata
object

Metadata passed during creation.

Example:
{
"phonenumber": "+37400000000",
"agent": "King Ruzi"
}
title
string

Short title automatically generated from the transcript.

resolution
string

A concise summary or resolution for the call.

Direct URL to the recording details inside Xosum.am.

Response

Webhook received and acknowledged.