Facebook Pixel
APILinkedIn Messaging

Send message with delivery acknowledgment

Send a LinkedIn message while acknowledging receipt of previous messages. Useful for replying to conversations where you want to mark received messages as acknowledged. Rate limit: 150 messages per day per account.

Deprecated: Use POST /conversations/send instead.

POST/messaging/send-with-ack
Authentication requiredMessaging

Code Examples

curl -X POST 'https://api.connectsafely.ai/linkedin/messaging/send-with-ack' \
-H 'Authorization: Bearer <your_api_key>' \
-H 'Content-Type: application/json' \
-d '{"accountId":"acc_12345","recipientProfileId":"john-doe-123","message":"Hello! I would like to connect with you.","subject":"Quick question about your work","messageType":"normal","messageUrns":[]}'

Parameters

No parameters.

Request Body

FieldTypeRequiredDescription
accountIdstringNoLinkedIn account ID to use. If not provided, uses the default account.
recipientProfileIdstringConditionalRecipient LinkedIn profile vanity URL slug (e.g., "john-doe-123"). Prefer recipientProfileUrn when available. Either recipientProfileId or recipientProfileUrn must be provided.
recipientProfileUrnstringConditionalRecipient LinkedIn profile URN (e.g., "urn:li:fsd_profile:ACoAABJefVoBrz2LR3f..."). Preferred over recipientProfileId. Either recipientProfileUrn or recipientProfileId must be provided.
messagestringYesMessage content to send
subjectstringNoSubject line (for InMail)
messageTypestringNoMessage type
messageUrnsarrayNoMessage URNs to acknowledge delivery of

Example

{
  "recipientProfileUrn": "urn:li:fsd_profile:ACoAAFpqSoMB8vTqRbg4mN_wbabO8w0gjgFu-6o",
  "message": "Thanks for your message!"
}

Responses

StatusDescription
200Message sent with acknowledgment successfully
400Bad request - Missing required parameter
401Unauthorized - Invalid or missing API key
429Rate limit exceeded
500Server error

Rate Limit Headers

All responses include rate limit information in the headers:

HeaderDescription
X-RateLimit-ActionThe action type being rate limited
X-RateLimit-LimitMaximum actions allowed per period
X-RateLimit-UsedActions used in current period
X-RateLimit-RemainingActions remaining
X-RateLimit-ResetISO 8601 timestamp when limit resets

200 Response Parameters

NameTypeDescription
successboolean
messagestring
recipientProfileUrnstring
acknowledgmentSentboolean

200 Example

{
  "success": true,
  "message": "Message sent successfully",
  "recipientProfileUrn": "urn:li:fsd_profile:ACoAAFpqSoMB8vTqRbg4mN_wbabO8w0gjgFu-6o",
  "acknowledgmentSent": false
}

400 Response Parameters

NameTypeDescription
successboolean
errorobject

400 Example

{
  "success": false,
  "error": "message is required"
}

401 Example

{
  "error": "Unauthorized - Invalid credentials"
}

429 Response Parameters

NameTypeDescription
errorstring
successboolean

429 Example

{
  "error": "Rate limit exceeded for MESSAGE: 150/150 used",
  "success": false
}

500 Example

{
  "error": "Failed to get LinkedIn authentication credentials",
  "success": false
}