POSTYour Webhook URL

Webhook Callback

Once transliteration is complete, the ButterCut AI service sends an asynchronous POST request to your configured webhook_url. This payload contains the full transcript, timestamps, and word-level confidence scores.

Callback Payload Schema

The following JSON object is sent to your webhook endpoint:

JSON Response
{
  "job_id": "b2a74f88-9940-4bbf-be92-3b08b3647a8e",
  "status": "completed",
  "result": {
    "segments": [
      {
        "start": 0.0,
        "end": 1.44,
        "text": "Kaise ek simple si paani",
        "confidence": 0.98877,
        "words": [
          {
            "start": 0.0,
            "end": 0.48,
            "text": "Kaise",
            "importance": "normal",
            "confidence": 0.9707
          },
          {
            "start": 0.48,
            "end": 0.80,
            "text": "ek",
            "importance": "normal",
            "confidence": 0.9790
          }
          // ... additional words
        ]
      }
      // ... additional segments
    ]
  }
}

Field Definitions

FieldDescription
job_idThe unique identifier for the transliteration job.
statusCurrent status of the job (e.g., completed).
result.segmentsA collection of audio segments with start/end times and full text strings.
result.segments[].wordsGranular word-level data including timing and confidence scores.

Response Requirements

Your server should respond with a 200 OK status code to acknowledge receipt of the webhook. If the request fails or times out, the ButterCut AI service may attempt to retry the delivery based on the system's retry policy.