Skip to content
V2 (Legacy) API ReferenceGet started
Messaging

Reactions

Add and remove emoji reactions on messages.

React to any message with built-in iMessage tapbacks or custom Unicode emoji. Reactions are an iMessage feature — see Protocol Selection for protocol capabilities. See the Reactions API Reference for the full endpoint specification.

Terminal window
curl -X POST https://api.linqapp.com/api/partner/v3/messages/{message_id}/reactions \
-H "Authorization: Bearer $LINQ_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "love",
"operation": "add"
}'
await client.messages.addReaction(messageId, {
type: 'love',
operation: 'add',
});
client.messages.add_reaction(
message_id,
type="love",
operation="add",
)

These map to the standard iMessage tapback reactions:

TypeDescription
loveHeart
likeThumbs up
dislikeThumbs down
laughHa ha
emphasizeExclamation marks
questionQuestion mark

Send any Unicode emoji as a reaction:

Terminal window
curl -X POST https://api.linqapp.com/api/partner/v3/messages/{message_id}/reactions \
-H "Authorization: Bearer $LINQ_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "custom",
"custom_emoji": "🎉",
"operation": "add"
}'

For messages with multiple parts, target a specific part using part_index (0-based):

{
"type": "love",
"operation": "add",
"part_index": 1
}

This reacts to the second part of the message. If omitted, the reaction applies to the first part.

Use the same endpoint with "operation": "remove" and the matching type you originally added.

A contact can attach a sticker to any message part in iMessage. This is distinct from a custom sticker reaction — the type is "sticker" and the payload includes image metadata.

Sticker attachments are inbound only; the API does not support sending them.

They appear inside parts[].reactions[] on the message and trigger a reaction.added event:

{
"parts": [
{
"type": "text",
"value": "Hey yea",
"reactions": [
{
"type": "sticker",
"is_me": false,
"custom_emoji": null,
"sticker": {
"file_name": "sticker-abc123.png",
"mime_type": "image/png",
"url": "https://cdn.linqapp.com/attachments/550e8400/sticker-abc123.png",
"width": 320,
"height": 320
},
"handle": {
"id": "550e8400-e29b-41d4-a716-446655440011",
"handle": "+14155559876",
"is_me": false,
"service": "iMessage",
"status": "active",
"joined_at": "2025-11-23T17:30:00.000Z",
"left_at": null
}
}
]
}
]
}
EventDescription
reaction.addedA reaction was added to a message
reaction.removedA reaction was removed from a message

Webhook payloads include reaction_type, message_id, part_index, and sender information. See Reaction events for full payload details.