Facebook Pixel
APILinkedIn Messaging

Get conversation messages

Retrieve messages for a specific conversation. Auto-detects Sales Navigator thread URNs (urn:li:salesNav_thread:*) and routes to the Sales Nav API. Standard conversations use DB-first with LinkedIn API fallback for older messages via cursor pagination. Replaces GET /messaging/conversation-details.

GET/conversations/{conversationUrn}/messages
Authentication requiredConversations

Code Examples

curl -X GET 'https://api.connectsafely.ai/linkedin/conversations/<conversationUrn>/messages' \
-H 'Authorization: Bearer <your_api_key>'

Parameters

NameInRequiredTypeDescription
conversationUrnpathYesstringConversation URN (URL-encoded)
accountIdqueryNostringLinkedIn account ID
countqueryNonumberNumber of messages
cursorqueryNostringTimestamp cursor for older messages
sincequeryNonumberTimestamp to fetch messages newer than (polling)
syncqueryNobooleanWait for LinkedIn response (sync mode)

Request Body

No request body.

Responses

StatusDescription
200Messages list
401Unauthorized
404Conversation not found
500Server error

200 Response Parameters

NameTypeDescription
successboolean
messagesarray
participantsarray
hasMoreboolean
cursorstring
notestring

200 Example

{
  "success": true,
  "messages": [
    {
      "messageUrn": "Hello! I would like to connect with you.",
      "text": "example_value",
      "sentAt": 0,
      "senderProfileId": "john-doe-123",
      "senderName": "example_value",
      "senderPhoto": "example_value",
      "isSentByOwner": false,
      "hasAttachment": false,
      "attachments": []
    }
  ],
  "participants": [
    {
      "profileId": "john-doe-123",
      "name": "example_value",
      "headline": "example_value",
      "profilePicture": "example_value"
    }
  ],
  "hasMore": true,
  "cursor": "example_value",
  "note": "example_value"
}

401 Response Parameters

NameTypeDescription
errorstring

401 Example

{
  "error": "example_value"
}

404 Response Parameters

NameTypeDescription
errorstring

404 Example

{
  "error": "example_value"
}

500 Response Parameters

NameTypeDescription
errorstring

500 Example

{
  "error": "example_value"
}