Back to top

API Documentation

Transcriptions

Overview

Transcriptions are structured records of transcribed conversations (e.g. voice calls or meetings). A transcription belongs to a brand and may optionally be linked to a contact, a deal, and an audio file.

This is the canonical replacement for storing free-form transcripts in contact note attributes.

Transcription

A Transcription's data model is described in the table below:

Field Type Association Description
id uuid Internal identifier of the object
created_at number Unix timestamp of creation
updated_at number Unix timestamp of last update
brand uuid The brand this transcription belongs to
user User transcription.user The user who recorded/owns this transcription
contact Contact transcription.contact Optional contact this conversation is with
deal Deal transcription.deal Optional deal this conversation is about
audio File transcription.audio Optional uploaded audio file for this recording
entries Utterance[] transcription.entries Ordered list of transcribed utterances (see below)
created_by uuid User who created this record
updated_by uuid User who last updated this record

Utterance

Each entry of contents is an object describing a single line of the conversation:

Field Type Required Description
timestamp number no Offset from the start of the conversation, in seconds. Fractional values are allowed.
author string no Free-form speaker label (e.g. Agent, Client, or a name).
text string yes The transcribed text for this utterance.

Endpoints

List transcriptions for a brand

List transcriptions for a brand
GET/brands/:id/transcriptions

Returns all transcriptions belonging to the brand, ordered most-recent-first. Optionally filter by contact, deal, or both.

Query parameters:

Field Type Required Description
contact uuid no When provided, only transcriptions for this contact are returned.
deal uuid no When provided, only transcriptions for this deal are returned.

Example URI

GET /brands/:id/transcriptions
URI Parameters
HideShow
id
string (required) Example: 23dc00ec-9da7-45ce-9a71-da1893ff0ad0
Response  200
HideShow
Body
{
  "code": "OK",
  "data": [
    {
      "id": "bd749d22-333d-4669-8d18-c69929ed378b",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "created_at": 1779368605.246143,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "updated_by": null,
      "type": "transcription",
      "entries": [
        {
          "id": "ad8d717c-036f-4c97-bb01-7764029bc29f",
          "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
          "position": 0,
          "timestamp": 0,
          "author": "Agent",
          "text": "Hi, how can I help you?",
          "created_at": 1779368605.246143,
          "type": "transcription_entry"
        },
        {
          "id": "9792e60d-d174-413b-966f-4d5cded6235b",
          "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
          "position": 1,
          "timestamp": 3.5,
          "author": "Client",
          "text": "Looking for a 3-bedroom house.",
          "created_at": 1779368605.246143,
          "type": "transcription_entry"
        },
        {
          "id": "f2e89b4b-15e2-4101-9e97-3d153b111dd0",
          "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
          "position": 2,
          "timestamp": 7.2,
          "author": "Agent",
          "text": "Great, what is your budget?",
          "created_at": 1779368605.246143,
          "type": "transcription_entry"
        }
      ]
    },
    {
      "id": "31a2c510-8c50-46b9-a2f9-734884449b50",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "created_at": 1779368605.246143,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "updated_by": null,
      "type": "transcription",
      "entries": [
        {
          "id": "63c1c58f-b397-4ab6-8b0e-1825e07f87ac",
          "transcription": "31a2c510-8c50-46b9-a2f9-734884449b50",
          "position": 0,
          "timestamp": null,
          "author": null,
          "text": "Older device transcript with no utterance metadata.",
          "created_at": 1779368605.246143,
          "type": "transcription_entry"
        }
      ]
    },
    {
      "id": "96bfe024-7a2e-44e4-9bbf-dcd592ba1522",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "created_at": 1779368605.246143,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "updated_by": null,
      "type": "transcription",
      "entries": [
        {
          "id": "74f15d67-dc3c-40ed-b6b9-20af1e329f6b",
          "transcription": "96bfe024-7a2e-44e4-9bbf-dcd592ba1522",
          "position": 0,
          "timestamp": null,
          "author": null,
          "text": "Metadata can be null.",
          "created_at": 1779368605.246143,
          "type": "transcription_entry"
        }
      ]
    },
    {
      "id": "dd2beaee-8fde-45ab-8162-b2a8762b3c1e",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "created_at": 1779368605.246143,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "updated_by": null,
      "type": "transcription",
      "entries": null
    },
    {
      "id": "e2190fe1-04ab-4f38-8c38-6be6cdd69b13",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "created_at": 1779368605.246143,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "updated_by": null,
      "type": "transcription",
      "entries": [
        {
          "id": "c6c1b66c-3a1e-4962-bd09-e827cdf03efb",
          "transcription": "e2190fe1-04ab-4f38-8c38-6be6cdd69b13",
          "position": 0,
          "timestamp": null,
          "author": null,
          "text": "Deal recording without a contact.",
          "created_at": 1779368605.246143,
          "type": "transcription_entry"
        }
      ]
    }
  ],
  "info": {
    "count": 5,
    "total": 0
  }
}

Get a specific transcription

Get a specific transcription
GET/brands/:id/transcriptions/:transcription

Example URI

GET /brands/:id/transcriptions/:transcription
URI Parameters
HideShow
id
string (required) Example: 23dc00ec-9da7-45ce-9a71-da1893ff0ad0
transcription
string (required) Example: bd749d22-333d-4669-8d18-c69929ed378b
associations
string (required) Example: transcription.contact
Response  200
HideShow
Body
{
  "code": "OK",
  "data": {
    "id": "bd749d22-333d-4669-8d18-c69929ed378b",
    "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
    "contact": {
      "id": "7965572b-7149-4b27-8ca5-5c6be69a4b23",
      "display_name": "Johnny",
      "partner_name": "Jane Doe",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "brand_id": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "user_id": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "sort_field": "Johnny",
      "last_touch": null,
      "last_touch_action": null,
      "next_touch": null,
      "touch_freq": null,
      "ios_address_book_id": null,
      "android_address_book_id": null,
      "created_at": 1779368606.792721,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_for": "direct_request",
      "updated_for": "direct_request",
      "deleted_for": null,
      "title": null,
      "first_name": "John",
      "partner_first_name": "Jane",
      "middle_name": "M.",
      "last_name": "Doe",
      "partner_last_name": "Doe",
      "marketing_name": null,
      "nickname": "Johnny",
      "email": "[email protected]",
      "primary_email": "[email protected]",
      "emails": [
        "[email protected]"
      ],
      "parked": false,
      "partner_email": "[email protected]",
      "phone_number": "+989124834198",
      "primary_phone_number": "+989124834198",
      "phone_numbers": [
        "+989124834198"
      ],
      "company": "Rechat",
      "birthday": "1970-01-12T00:00:00.000Z",
      "profile_image_url": "https://inomics.com/sites/default/files/pictures/picture-95970-1460131169.png",
      "cover_image_url": "https://inomics.com/sites/default/files/pictures/picture-95970-1460131169.png",
      "job_title": "Contact Test Subject",
      "source_type": "ExplicitlyCreated",
      "source": null,
      "website": [
        "http://www.gholi.com"
      ],
      "tags": [
        "poo",
        "foo",
        "New"
      ],
      "address": [
        {
          "city": "Dallas",
          "full": "Street, Dallas Texas 72890",
          "name": "Street",
          "type": "stdaddr",
          "extra": "Office",
          "line1": "Street",
          "line2": "Dallas Texas 72890",
          "state": "Texas",
          "country": "US",
          "postcode": "72890"
        }
      ],
      "type": "contact"
    },
    "created_at": 1779368605.246143,
    "updated_at": 1779368605.246143,
    "deleted_at": null,
    "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
    "updated_by": null,
    "type": "transcription",
    "entries": [
      {
        "id": "ad8d717c-036f-4c97-bb01-7764029bc29f",
        "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
        "position": 0,
        "timestamp": 0,
        "author": "Agent",
        "text": "Hi, how can I help you?",
        "created_at": 1779368605.246143,
        "type": "transcription_entry"
      },
      {
        "id": "9792e60d-d174-413b-966f-4d5cded6235b",
        "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
        "position": 1,
        "timestamp": 3.5,
        "author": "Client",
        "text": "Looking for a 3-bedroom house.",
        "created_at": 1779368605.246143,
        "type": "transcription_entry"
      },
      {
        "id": "f2e89b4b-15e2-4101-9e97-3d153b111dd0",
        "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
        "position": 2,
        "timestamp": 7.2,
        "author": "Agent",
        "text": "Great, what is your budget?",
        "created_at": 1779368605.246143,
        "type": "transcription_entry"
      }
    ]
  }
}

Create a transcription

Create a transcription
POST/brands/:id/transcriptions

Creates a transcription under the given brand. The optional contact and deal must belong to the same brand, and audio must reference an accessible uploaded file. The contents array may be empty, but every entry must include text.

Body fields:

Field Type Required Description
contact uuid no Optional contact this conversation was with
deal uuid no Optional deal this conversation was about
audio uuid no Optional audio file id
contents Utterance[] yes Ordered list of utterances (may be empty)

Example URI

POST /brands/:id/transcriptions
URI Parameters
HideShow
id
string (required) Example: 23dc00ec-9da7-45ce-9a71-da1893ff0ad0
associations
string (required) Example: transcription.contact,transcription.entries
Request
HideShow
Body
{
  "contact": "7965572b-7149-4b27-8ca5-5c6be69a4b23",
  "contents": [
    {
      "timestamp": 0,
      "author": "Agent",
      "text": "Hi, how can I help you?"
    },
    {
      "timestamp": 3.5,
      "author": "Client",
      "text": "Looking for a 3-bedroom house."
    },
    {
      "timestamp": 7.2,
      "author": "Agent",
      "text": "Great, what is your budget?"
    }
  ]
}
Response  200
HideShow
Body
{
  "code": "OK",
  "data": {
    "id": "bd749d22-333d-4669-8d18-c69929ed378b",
    "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
    "contact": {
      "id": "7965572b-7149-4b27-8ca5-5c6be69a4b23",
      "display_name": "Johnny",
      "partner_name": "Jane Doe",
      "brand": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "brand_id": "23dc00ec-9da7-45ce-9a71-da1893ff0ad0",
      "user_id": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
      "sort_field": "Johnny",
      "last_touch": null,
      "last_touch_action": null,
      "next_touch": null,
      "touch_freq": null,
      "ios_address_book_id": null,
      "android_address_book_id": null,
      "created_at": 1779368606.792721,
      "updated_at": 1779368605.246143,
      "deleted_at": null,
      "created_for": "direct_request",
      "updated_for": "direct_request",
      "deleted_for": null,
      "title": null,
      "first_name": "John",
      "partner_first_name": "Jane",
      "middle_name": "M.",
      "last_name": "Doe",
      "partner_last_name": "Doe",
      "marketing_name": null,
      "nickname": "Johnny",
      "email": "[email protected]",
      "primary_email": "[email protected]",
      "emails": [
        "[email protected]"
      ],
      "parked": false,
      "partner_email": "[email protected]",
      "phone_number": "+989124834198",
      "primary_phone_number": "+989124834198",
      "phone_numbers": [
        "+989124834198"
      ],
      "company": "Rechat",
      "birthday": "1970-01-12T00:00:00.000Z",
      "profile_image_url": "https://inomics.com/sites/default/files/pictures/picture-95970-1460131169.png",
      "cover_image_url": "https://inomics.com/sites/default/files/pictures/picture-95970-1460131169.png",
      "job_title": "Contact Test Subject",
      "source_type": "ExplicitlyCreated",
      "source": null,
      "website": [
        "http://www.gholi.com"
      ],
      "tags": [
        "poo",
        "foo",
        "New"
      ],
      "address": [
        {
          "city": "Dallas",
          "full": "Street, Dallas Texas 72890",
          "name": "Street",
          "type": "stdaddr",
          "extra": "Office",
          "line1": "Street",
          "line2": "Dallas Texas 72890",
          "state": "Texas",
          "country": "US",
          "postcode": "72890"
        }
      ],
      "type": "contact"
    },
    "created_at": 1779368605.246143,
    "updated_at": 1779368605.246143,
    "deleted_at": null,
    "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
    "updated_by": null,
    "type": "transcription",
    "entries": [
      {
        "id": "ad8d717c-036f-4c97-bb01-7764029bc29f",
        "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
        "position": 0,
        "timestamp": 0,
        "author": "Agent",
        "text": "Hi, how can I help you?",
        "created_at": 1779368605.246143,
        "type": "transcription_entry"
      },
      {
        "id": "9792e60d-d174-413b-966f-4d5cded6235b",
        "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
        "position": 1,
        "timestamp": 3.5,
        "author": "Client",
        "text": "Looking for a 3-bedroom house.",
        "created_at": 1779368605.246143,
        "type": "transcription_entry"
      },
      {
        "id": "f2e89b4b-15e2-4101-9e97-3d153b111dd0",
        "transcription": "bd749d22-333d-4669-8d18-c69929ed378b",
        "position": 2,
        "timestamp": 7.2,
        "author": "Agent",
        "text": "Great, what is your budget?",
        "created_at": 1779368605.246143,
        "type": "transcription_entry"
      }
    ]
  }
}

Upload transcription audio

Upload transcription audio
POST/brands/:id/transcriptions/audio

Uploads or imports an audio file for later use as audio in POST /brands/:id/transcriptions. Supports multipart uploads, copying an existing file, or importing { url, filename } with common audio extensions such as m4a, mp3, wav, and aac.

Example URI

POST /brands/:id/transcriptions/audio
URI Parameters
HideShow
id
string (required) Example: 23dc00ec-9da7-45ce-9a71-da1893ff0ad0
Response  200
HideShow
Body
{
  "code": "OK",
  "data": {
    "id": "c1c0e384-4906-4b10-82b5-c29bf5ab9b5b",
    "created_at": 1779368607.25211,
    "updated_at": 1779368607.25211,
    "deleted_at": null,
    "created_by": "80a227b2-29a0-11e7-b636-e4a7a08e15d4",
    "path": "transcriptions/23dc00ec-9da7-45ce-9a71-da1893ff0ad0/audio/75199100-5515-11f1-8e8a-390655dbf437.mp3",
    "name": "sample.mp3",
    "public": false,
    "type": "file",
    "url": "https://private-cdn.irish.rechat.com/transcriptions/23dc00ec-9da7-45ce-9a71-da1893ff0ad0/audio/75199100-5515-11f1-8e8a-390655dbf437.mp3?Expires=1779455007256&Key-Pair-Id=APKAIIRG223GKFAC4MHA&Signature=OBVADm16woQonZjTyWAC~nKXUw0hDxEQYNuCqKuxeM4Rbcbg7Y6feTYHKvz1JQg0VQM~-NlQyq20HWNgj7EelpM62dtcYqA15T-AnlxJrhxOF4MkYM61B4hvqgCnstrtMXqJHi6VQ9yseRHFDZbcTv-WtinMzi-Zc6vyQYyTardoKP6geiSY9PNv4vsOgMizf-gtIe7h5aFMWS94ABRUVz7JJOP-MdPcaSKLouMpG-o0XrKpXTo02nhaRkMLJaQmPoYhdLVoEU806jqzO1ckj8GOqCkN5B~rucjx18Ym7YNrXm5ucABDSQaf3agK6HSCmmt8AOgVTekS-dBTDGAYXw__",
    "preview_url": "http://assets.rechat.com/mimes/unknown.png",
    "mime": "audio/mpeg"
  }
}

Delete a transcription

Delete a transcription
DELETE/brands/:id/transcriptions/:transcription

Soft-deletes a transcription. Returns 204 on success.

Example URI

DELETE /brands/:id/transcriptions/:transcription
URI Parameters
HideShow
id
string (required) Example: 23dc00ec-9da7-45ce-9a71-da1893ff0ad0
transcription
string (required) Example: bd749d22-333d-4669-8d18-c69929ed378b
Response  204

Generated by aglio on 21 May 2026