Read a contact's history

Every message between the workspace and one contact on email, LinkedIn and SMS, oldest first: what was sent, what they wrote back, what is scheduled and drafts waiting for a person, with the campaign step each came from. up_next lists the steps queued with no message written yet. 100 messages a page by default (limit 1 to 200); pass next_cursor back as cursor for earlier ones.

GEThttps://app.trygtm.com/api/v1/contacts/{contact_id}/messages
Scope
read

Path parameters

contact_idstringrequired
The contact's id, from list_contacts or get_contact.

Query parameters

limitintegeroptionaldefault: 100
Messages per page, 1 to 200.
cursorstringoptional
nextCursor from the previous page, for the messages before it. Omit for the most recent.

Request

curl -G https://app.trygtm.com/api/v1/contacts/8f2a91c4-6d1e-4c0a-9a57-2f3b1c7e9d10/messages \
  -H "Authorization: Bearer $TRYGTM_API_KEY" \
  --data-urlencode "limit=25"

Response

{
  "data": {
    "contact": {
      "id": "8f2a91c4-6d1e-4c0a-9a57-2f3b1c7e9d10",
      "name": "Dana Whitfield"
    },
    "entries": [
      {
        "id": "9f8e7d6c-5b4a-4392-8180-7f6e5d4c3b2a",
        "conversation_id": "0f1e2d3c-4b5a-4697-8877-665544332211",
        "channel": "email",
        "kind": "message",
        "direction": "outbound",
        "state": "sent",
        "status": "delivered",
        "subject": "your dispatch team",
        "body": "Dana, saw Northbeam is hiring two dispatchers.\n\nAre you still covering the phones yourself while they ramp up?",
        "at": "2026-09-17T08:02:11.000Z",
        "scheduled_for": null,
        "error": null,
        "waiting": null,
        "sender": {
          "handle": "maya@northwind-partners.example",
          "name": "Maya Chen"
        },
        "campaign": {
          "id": "3b7f0c52-91aa-4e0d-8c11-5a2d6e4f7b90",
          "name": "Q4 logistics leaders",
          "step_seq": 1,
          "step_label": "First note"
        },
        "automatic": false,
        "bounced": false,
        "opened": true,
        "rewrite_before_sending": false
      }
    ],
    "next_cursor": null,
    "up_next": [
      {
        "queue_id": "5a4b3c2d-1e0f-4a9b-8c7d-6e5f4a3b2c1d",
        "channel": "linkedin",
        "step_seq": 2,
        "step_label": "Connect",
        "scheduled_for": "2026-09-18T15:00:00.000Z",
        "campaign_name": "Q4 logistics leaders",
        "waiting": null
      }
    ]
  }
}

Was this page helpful?