Send Open InMail or SN InMail
Use the endpoint that creates a new conversation to send InMail through the Classic ans SN Inboxes.
Classic LinkedIn
Create a new LinkedIn conversation
-
Precondition
-
Your LinkedIn account must already be connected.
-
You should not be connected with recipient
-
You should have no another conversations created by open inmail with this recipient
-
Include the
X-AccountIdheader in the request. -
You must provide the
profileIdof the profile you want to Open InMail. -
Profile must be "canSendClassicInmail": true (to check this use Retrieve LinkedIn Profile)
-
| Field | Type | Required | Description |
|---|---|---|---|
profileId |
string | ✅ | The LinkedIn profile ID of the recipient. |
message |
string | ✅ | The message body you want to send. |
subject |
string | ✅ | Subject line of the InMail. |
inMail |
boolean | ✅ | Must be set to true to indicate it is an Open InMail message. |
POST/api/v1/conversations
curl https://api.salesflow.io/public/v1/conversations \
--request POST \
--header 'X-AccountId: 1234567890' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer HGIXEol8tC722A0ljT8AXoL6OepO7cuvWEmH54hg' \
--data '{
"profileId": "target_profile_id",
"message": "your_message",
"subject": "your_subject",
"inMail": true
}'
RESPONSE EXAMPLE:
{
"conversationId": "abc123xyz",
"messageId": "msg789",
"createdAt": "2025-07-28T10:12:45.000Z"
}
Sales Navigator
You can send InMail to LinkedIn members using either:
-
Paid InMail credits (via Sales Navigator plan)
-
Free InMail (when the recipient has an Open Profile)
Check number of available InMail credits
GET/api/v1/sales-nav/conversations/inmail-credits
curl https://sandbox-api.salesflow.io/stg/public/api/v1/sales-nav/conversations/inmail-credits \
--header 'X-AccountId: 1234567890' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
Response showing the number of available credits (they used when user wants to send a paid InMail)
{
"value": 1
}
Send an InMail
if you want to send Free InMails, value should be "inmailRestriction": "NO_RESTRICTION"
POST/api/v1/sales-nav/conversations
curl https://sandbox-api.salesflow.io/stg/public/api/v1/sales-nav/conversations \
--request POST \
--header 'X-AccountId: 1234567890' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '{
"profileId": null,
"message": null,
"subject": null,
"authToken": null,
"authType": null
}'
| Field | Required | Type | Description |
|---|---|---|---|
profileId |
✅ | string | null | LinkedIn profile ID of the recipient |
message |
✅ | string | null | The actual message text to send |
subject |
✅ | string | null | Required to identify that this is “InMail“ |
authToken |
string | null | (Optional) Token used internally for advanced auth flows (leave null) | |
authType |
string | null | (Optional) Auth type metadata (leave null unless instructed) |
Response:
{
"messageId": null,
"threadId": null
}

