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
}