# Transcript resources

One of the key resources produced by a Meeting Agent is the transcript.

### Example Response
```json
{
  "meeting_agent": {
    "sub": "agt_69286a86d432e0005a6eb9ca"
  },
  "transcript": {
    "summary": "A summary of the meeting as a whole",
    "languages": [
      {
        "language": "en"
      }
    ],
    "paragraphs": [
      {
        "speaker": {
          "identifier": "A",
          "name": "Garry Shutler"
        },
        "start": 2.72,
        "end": 7.6,
        "sentences": [
          {
            "text": "This is a simple example of the transcription format.",
            "start": 2.72,
            "end": 7.6
          }
        ]
      }
    ]
  }
}
```

### Response Parameters
##### `meeting_agent.sub` *(required)*

The `sub` of the Meeting Agent that generated the transcript.

##### `transcript.summary` *(required)*

A [`String`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) providing a plain text summary
of the meeting.

##### `transcript.languages[]` *(required)*

An array of languages detected for the meeting.

By default we transcribe by detecting the single dominant language of the meeting, so a
single value is returned. Where the Meeting Agent was requested with a `language` of
`detect_multi` — see [provisioning](https://docs.cronofy.com/api-reference/conferencing-and-transcription/meeting-agents/provisioning/index.md)
and [scheduling](https://docs.cronofy.com/api-reference/conferencing-and-transcription/meeting-agents/schedule/index.md) — a value is
returned for each language detected across the meeting.

Integrators should tolerate zero values present, as we may be unable to detect
transcribable content.

##### `transcript.languages[].language` *(required)*

A [`String`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) containing an
[IETF BCP 47](https://en.wikipedia.org/wiki/IETF_language_tag) language tag for a language
detected in the meeting, such as `en` or `fr`.

##### `transcript.paragraphs[].speaker.identifier` *(required)*

A [`String`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) consistently representing the
speaker throughout the transcript.

##### `transcript.paragraphs[].speaker.name` *(optional)*

A [`String`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) consistently representing the
name of the speaker throughout the transcript.

It is highly likely this parameter will be provided, but it cannot be guaranteed
and so an integration should tolerate its absence.

##### `transcript.paragraphs[].start` *(required)*

A [`Float`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) representing number of seconds
since the start of the transcript the paragraph began being spoken.

##### `transcript.paragraphs[].end` *(required)*

A [`Float`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) representing number of seconds
since the start of the transcript the paragraph stopped being spoken.

##### `transcript.paragraphs[].sentences[].start` *(required)*

A [`Float`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) representing number of seconds
since the start of the transcript the sentence began being spoken.

##### `transcript.paragraphs[].sentences[].end` *(required)*

A [`Float`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) representing number of seconds
since the start of the transcript the sentence stopped being spoken.

##### `transcript.paragraphs[].sentences[].text` *(required)*

A [`String`](https://docs.cronofy.com/api-reference/fundamentals/data-types/index.md) detailing what was said for the
sentence.



---
[Read in HTML](https://docs.cronofy.com/api-reference/conferencing-and-transcription/meeting-agents/transcripts/)