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-AccountId header in the request.

    • You must provide the profileId of 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
}