Get transcripts for an interaction

Retrieves transcript messages for a given interaction or workflow session by its ID.

The {interactionId} parameter accepts either an interactionId or a workflow session ID.

Returns a sanitized subset of message fields appropriate for transcript display. Internal and sensitive fields are excluded from the response.

Note on the message field: In the GET response, message is an array of content objects (e.g. [{"type":"text","text":"Hello","isTextOnlyEmojis":false}]). This differs from the POST request body where message is a plain string. Be aware of this type difference when building integrations.

Note on createdAt format: The createdAt field in responses uses the format 2026-02-26 16:27:05.124000 (space separator, no T, no timezone), rather than standard ISO 8601. Parse accordingly.

Known issue: If the {interactionId} does not exist, the API currently returns a 500 Internal Server Error (with {"message":"Internal Server Error","errors":[]}) rather than a 404. This is a known behavior pending a server-side fix — treat a 500 response on this endpoint as a potential "not found" condition.

Finding Your Customer Subdomain

Your subdomain is found in your Avaya Infinity portal URL and is required for all API calls.

Example: If your portal URL is:

https://core.avaya1234.ec.avayacloud.com/app/core-config-ui/

Your subdomain is: avaya1234

To use this API:

  1. Find your subdomain from your Infinity portal URL (as shown above)
  2. Get your Bearer token using your provisioned client credential (see Authentication below)
  3. In the API explorer on the right:
    • Click on {customerId} in the URL field and replace it with your actual subdomain
    • Paste your Bearer token in the Credentials section
    • Provide the interactionId path parameter

Authentication

This endpoint requires a valid OAuth 2.0 Bearer token. To get started, contact Avaya Support to request a client_id and client_secret provisioned with the TRANSCRIPT scope.

Once you have your credentials, generate an access token and include it in the Authorization: Bearer <token> header of each request.

Working with Interaction IDs and Pagination

The {interactionId} path parameter accepts:

  • An interactionId for standard voice or digital interactions (format: 004d01...)
  • A workflow session ID for WORKFLOW_SESSION type sessions

Use the before and after query parameters with a paginationId or timestamp value to page through large transcript histories. The limit parameter controls how many messages are returned per page.

Important Notes

  • Transcript messages are returned in the order they were created.
  • The message field in each returned message is an array of content objects, not a plain string.
  • The createdAt field format is 2026-02-26 16:27:05.124000 — not standard ISO 8601. Parse using a space separator.
  • For customer authors, a root-level displayName field may be present on the author object in addition to the details.displayName.
  • Messages posted via the Send Transcript Batch endpoint will have subType: "transcription".
  • Known issue: A non-existent interactionId returns 500 instead of 404. This is pending a server-side fix.

DOS Protection & Rate Limiting

  • Implement retry logic with exponential backoff for transient errors.
  • Use pagination parameters (limit, before, after) to retrieve large transcripts in manageable pages rather than fetching all messages in one call.

Security Implementation Guidelines

  • Never expose your client_secret or Bearer token to client-side applications.
  • Implement proper error handling — avoid surfacing internal error details to end users.
Language
Credentials
Bearer
URL
Response
Click Try It! to start a request and see the response here!