Skip to content

Commit 3b81989

Browse files
AAnkudovichclaude
andcommitted
Document speaker names on call transcript turns
Adds the optional speaker_name field to transcript turns and corrects the call transcript response type, which has always been a JSON array rather than a plain-text attachment. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent b862a25 commit 3b81989

1 file changed

Lines changed: 79 additions & 25 deletions

File tree

‎descriptions/0/api.intercom.io.yaml‎

Lines changed: 79 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -22113,33 +22113,42 @@ paths:
2211322113
- Calls
2211422114
operationId: showCallTranscript
2211522115
description: |
22116-
Returns the transcript for the specified call as a downloadable text file.
22116+
Returns the transcript for the specified call as a JSON array of turns. Each turn carries a `speaker_name` when the speaker could be resolved. Clients should fall back to `speaker_label` when `speaker_name` is absent.
2211722117
responses:
2211822118
'200':
2211922119
description: successful
22120-
headers:
22121-
Content-Disposition:
22122-
description: File attachment directive and suggested filename for the transcript
22123-
schema:
22124-
type: string
22125-
example: "attachment; filename=transcription_data-2025-07-17.txt"
2212622120
content:
22127-
text/plain:
22121+
application/json:
2212822122
schema:
22129-
type: string
22130-
description: Transcript text
22131-
examples:
22132-
transcript_txt:
22133-
value: |-
22134-
[00:00:03] Teammate 1: "Hello, thanks for calling. How can I help today?"
22135-
[00:00:09] User: "I need help recovering access to my account."
22136-
[00:00:15] Teammate 1: "I can help with that. For security, I’ll ask a few generic verification questions."
22137-
[00:00:22] User: "Okay."
22138-
[00:00:28] Teammate 1: "Please confirm general details on the account (no sensitive data over this call)."
22139-
[00:00:35] User: "I can provide non-sensitive info."
22140-
[00:00:41] Teammate 1: "Thank you. I’ll initiate a standard account recovery process and send the next steps."
22141-
[00:00:48] User: "Great, thanks."
22142-
[00:00:53] Teammate 1: "You should receive a message shortly with instructions to complete recovery."
22123+
type: array
22124+
items:
22125+
"$ref": "#/components/schemas/call_transcript_turn"
22126+
examples:
22127+
transcript:
22128+
value:
22129+
- start_time: "0.0"
22130+
end_time: "3.00"
22131+
speaker_label: "Teammate 1"
22132+
speaker: "Teammate 1"
22133+
content: "Hello, thanks for calling. How can I help today?"
22134+
speaker_type: admin
22135+
speaker_id: "789"
22136+
speaker_name: Jane Doe
22137+
- start_time: "3.00"
22138+
end_time: "9.00"
22139+
speaker_label: User
22140+
speaker: User
22141+
content: I need help recovering access to my account.
22142+
speaker_type: user
22143+
speaker_id: "6762f0dd1bb69f9f2193bb83"
22144+
speaker_name: John Smith
22145+
- start_time: "9.00"
22146+
end_time: "15.00"
22147+
speaker_label: User
22148+
speaker: User
22149+
content: I can provide non-sensitive info to verify.
22150+
speaker_type: user
22151+
speaker_id: "6762f0dd1bb69f9f2193bb84"
2214322152
'404':
2214422153
description: Not Found
2214522154
content:
@@ -22204,7 +22213,14 @@ paths:
2220422213
id: "123"
2220522214
conversation_id: "64619700005694"
2220622215
transcript:
22207-
- {}
22216+
- start_time: "0.0"
22217+
end_time: "3.00"
22218+
speaker_label: "Teammate 1"
22219+
speaker: "Teammate 1"
22220+
content: "Hello, thanks for calling. How can I help today?"
22221+
speaker_type: admin
22222+
speaker_id: "789"
22223+
speaker_name: Jane Doe
2220822224
transcript_status: completed
2220922225
schema:
2221022226
type: object
@@ -22223,8 +22239,7 @@ paths:
2222322239
type: array
2222422240
description: The call transcript if available, otherwise an empty array.
2222522241
items:
22226-
type: object
22227-
additionalProperties: true
22242+
"$ref": "#/components/schemas/call_transcript_turn"
2222822243
transcript_status:
2222922244
type: string
2223022245
nullable: true
@@ -35562,6 +35577,45 @@ components:
3556235577
example: 0
3556335578
pages:
3556435579
"$ref": "#/components/schemas/cursor_pages"
35580+
call_transcript_turn:
35581+
title: Call Transcript Turn
35582+
type: object
35583+
x-tags:
35584+
- Calls
35585+
description: A single turn in a call transcript.
35586+
properties:
35587+
start_time:
35588+
type: string
35589+
description: The start time of the turn, as a seconds offset from the start of the call.
35590+
example: "0.0"
35591+
end_time:
35592+
type: string
35593+
description: The end time of the turn, as a seconds offset from the start of the call.
35594+
example: "3.00"
35595+
speaker_label:
35596+
type: string
35597+
description: The diarization label for the speaker.
35598+
example: "Teammate 1"
35599+
speaker:
35600+
type: string
35601+
description: The diarization label for the speaker. Same value as `speaker_label`.
35602+
example: "Teammate 1"
35603+
content:
35604+
type: string
35605+
description: The transcribed text spoken during this turn.
35606+
example: Hello, thanks for calling. How can I help today?
35607+
speaker_type:
35608+
type: string
35609+
description: The type of the speaker - either `admin` for a teammate or `user` for a contact.
35610+
example: admin
35611+
speaker_id:
35612+
type: string
35613+
description: The id of the teammate or contact who is the speaker.
35614+
example: "789"
35615+
speaker_name:
35616+
type: string
35617+
description: The resolved display name of the speaker. Omitted when the speaker cannot be resolved or has no name, for example a contact whose record was scrambled by a GDPR deletion request. Clients should fall back to `speaker_label` when this is absent.
35618+
example: Jane Doe
3556535619
custom_attributes:
3556635620
title: Custom Attributes
3556735621
type: object

0 commit comments

Comments
 (0)