LinkedIn inbox API: every reply, one endpoint
Swarmhit's LinkedIn inbox API gives your product the conversations of every connected sender in one place. GET /inbox/chats lists them by latest activity, or by latest reply with replied=true, and POST /inbox/chats/{id}/messages answers from the right sender with text, files or a voice note. One option on the reply pauses or stops the lead's sequence, so automation never talks over a human.
Endpoints
GET/inbox/chats
List conversations
GET/inbox/chats/{id}/messages
Read a conversation
POST/inbox/chats/{id}/messages
Reply in the conversation
POST/inbox/chats/{id}/read
Mark as read
/inbox/chats
api/v1curl -X POST https://app.swarmhit.com/api/v1/inbox/chats/chat_456/messages \
-H "Authorization: Bearer $SWARMHIT_API_KEY" \
-H "Idempotency-Key: 6f1c2f3e-reply-ana" \
-H "Content-Type: application/json" \
-d '{
"text": "Thanks Ana, here is the deck we discussed.",
"attachments": [{ "url": "https://cdn.example.com/deck.pdf", "name": "deck.pdf" }],
"sequenceAction": "stop"
}'How the LinkedIn inbox API works
- GET /inbox/chats with replied=true returns only threads where the lead wrote back, sorted by their latest reply; replied=false returns those still waiting for a first answer.
- Replies go out as the chat's sender. attachments are fetched from public URLs, up to 15 MB each, and voiceMessage is transcoded to LinkedIn's voice format.
- sequenceAction pauses (resumable) or stops (terminal) the lead's campaign sequence on send. The response returns the lead's campaign membership, so your product can show what happened.
Inside campaigns
One POST /campaigns sets up a whole sequence, and the engine schedules each step per sender and mailbox, inside the sending window, with rotation across senders.
- Message, voice note, InMail and email steps end on a reply. message.received fires when a lead answers on LinkedIn, and email.received when a lead answers an email, from any sender, so your CRM or agent picks the conversation up.
- Email chats live in the same inbox: replies go out from the mailbox, in the same thread, as text.
Limits and safety
- Replies go out from the account that owns the thread, on its dedicated proxy, behind the same 250+ safeguards monitored 24/7.
- Use an Idempotency-Key on replies so a retry after a timeout never sends the same answer twice.
LinkedIn senders cost $16.90 a month each for the first 50, tiered down to $6.90, with no minimum. See pricing.
Webhooks
Events to subscribe to: message.received, message.sent, email.received. Deliveries are signed and retried. How LinkedIn webhooks work
LinkedIn inbox API, answered
Can I read LinkedIn messages through an API?
Yes, for the senders connected to your workspace. GET /inbox/chats lists their conversations and GET /inbox/chats/{id}/messages returns the messages, while message.received webhooks push every new reply as it arrives. LinkedIn's official APIs do not expose member inboxes for this use.
How do I stop a campaign when a lead replies by hand?
Pass sequenceAction with your reply: pause keeps the lead resumable, stop ends the sequence for good. Message steps also stop on their own when the lead replies, so leads are never chased after answering.
Can one inbox cover several LinkedIn accounts?
Yes. The inbox covers every sender in the workspace, so a team or an agency client reads all conversations in one list, and each reply goes out from the account that owns the thread.
More LinkedIn API endpoints
LinkedIn DM API
Send a message
ReadLinkedIn voice message API
Send a voice note
ReadLinkedIn webhooks
Receive webhooks
ReadLinkedIn InMail API
Send an InMail
Read- Sequencer built in
- 250+ safeguards monitored 24/7
- REST API and signed webhooks