A message to a connection (in your existing conversation with them when there is one), or an InMail with linkedin.inmail (linkedin[inmail] in multipart). A Sales Navigator InMail (linkedin.api: sales_navigator) goes through the Sales Navigator inbox to the lead's Sales Navigator profile; its chat_id is that conversation, which GET/POST /api/v1/chats/{id}/messages and PATCH /api/v1/chats/{id} then read, answer and mark read. A write (message or inmail). JSON, or multipart with attachments / voice_message files.
Your API key from the console (gw_live_…).
In: header
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/chats" \ -H "Content-Type: application/json" \ -d '{ "account_id": "lg_3f9c2a7b1d", "attendees_ids": [ "ACoAAB1a2b3c4d5e6f" ], "text": "Hi Jane, thanks for connecting!", "unless_replied_since": "2026-10-28T09:00:00.000Z" }'{ "object": "MessageSent", "chat_id": "lgc_Q2xpZW50Q2hhdA", "message_id": "lgm_Zm9vYmFyYmF6cXV4", "id": "lgm_Zm9vYmFyYmF6cXV4", "timestamp": "2026-10-31T09:30:00.000Z"}Send a message in a conversation POST
A write (`message`). JSON, or multipart with files. Use `unless_replied_since` on automated follow-ups. In a Sales Navigator InMail conversation the reply goes through Sales Navigator, text only (a file is 422).
Resync an attendee's chats GET
Always SYNC_DONE: chats are read from LinkedIn whenever asked.