reaction.apply
React to the newest incoming message in a direct message, including with arbitrary emoji.
POST /v1/commands/reaction.applyReacts to the newest incoming message in a direct message. Narrower than
reaction.tapback in two ways — DMs only, newest
message only — but it is the only command that can apply an arbitrary emoji
rather than one of the classic six.
Routing path: agent-turn. Honours Idempotency-Key.
Reach for reaction.tapback unless you need custom emoji. It works in
groups, targets any message explicitly, and can remove a reaction.
Target
Direct-message conversations only. A group conversationId is rejected.
Prop
Type
Payload
Two shapes. Both require the caller to name the message it expects to be newest, which is how the command stays safe against a race with an incoming message.
Classic tapback
Prop
Type
Custom emoji
Prop
Type
Request
curl $MAPIER_BASE_URL/v1/commands/reaction.apply \
-H "Authorization: Bearer $MAPIER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target": {
"kind": "conversation",
"conversationId": "a0000000-0000-4000-8000-000000000001"
},
"payload": {
"reaction": "laugh",
"expectedNewestIncomingMessageExternalId": "guid-1"
}
}'Response
{ "commandId": "cmd-3", "status": "queued", "disposition": "queued" }Outcomes are applied or already_reacted. The latter settles no_effect.
Errors
| Status | Code | Cause |
|---|---|---|
400 | invalid_conversationId | Not a UUID |
404 | conversation_not_found | Unknown conversation, or another account's |
503 | no_live_connector | No Mac available |
Settlement failures: stale_target when a newer message arrived before the
command ran, unsupported_capability when custom emoji is not supported,
reaction_unverified when the reaction could not be confirmed.
Capabilities
Requires command.reaction_apply.v1. Custom emoji additionally requires the
capability's supportsCustomEmoji parameter.
This command drives the Mac's UI directly and runs one at a time per host. Sustained high-rate
reactions will queue behind each other; prefer reaction.tapback for throughput.