---
title: "Get a text message by ID"
method: GET
path: "/v2.0/communication/text/{communicationId}"
tags: ["Communication V2"]
---

# Get a text message by ID

`GET /v2.0/communication/text/{communicationId}`

Returns the text message identified by the given communication ID. The communication must be a text record, and the caller must have manage permission on the owning lead; otherwise 400 PERMISSION_DENIED is returned (no existence leak).

Webhook follow-up: when a Text webhook is delivered, pass each `createdText[].timelineId` from the payload as the `communicationId` path parameter to fetch the full record. The legacy `createdText[].textId` field is kept for backward compatibility but is not interchangeable across communicationType — prefer `timelineId`.

## Path parameters

- `communicationId` integer, required

## Headers

- `Authorization` string, required

## Response `200`

Text message retrieved successfully.

- TextResponse
  - `id` integer — The ID of the text
  - `leadId` integer — The lead(Id) associated with the text
  - `direction` string — Outbound or Inbound text
  - `agentId` integer — The related Agent ID
  - `textOutcome` string — Text delivery status
  - `textTime` string — The sending time of the text
  - `textType` string — Manual or Auto text
  - `textContent` string — The content of the text

## Other responses

- `400` — Communication does not exist, is not a text record, or caller has no access to the owning lead (20017 PERMISSION_DENIED).
- `401` — Missing or invalid authentication token.
- `500` — Internal server error.

---

[API](https://skmtc.net/lofty/apis/lofty-service-open-apis.md) · [All operations](https://skmtc.net/lofty/apis/lofty-service-open-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lofty/lofty-service-open-apis/versions/23e640467118/schema)
