Interactions
Acknowledge Interaction
Acknowledge and resolve a button click
When to use this
Confirm you processed a button click and optionally update the message.
Endpoint
POST /api/bot/v1/interactions/{interactionId}/ackAuth
Authorization: Bot YOUR_BOT_TOKEN
Request Body
| Field | Type | Required | Notes |
|---|---|---|---|
type | `"deferred" | "update_message" | "new_message"` |
content | string | No | For new_message or update_message |
components | MessageComponent[] | No | Optional replacement buttons |
Response
| Field | Type | Description |
|---|---|---|
ok | boolean | Ack accepted |
request_id | string | Trace ID |
Errors
| Status | Reason |
|---|---|
400 | Invalid ack payload |
401 | Invalid token |
404 | Interaction not found/expired |
409 | Interaction already acknowledged |
429 | Rate limited |
cURL
curl -X POST https://api.vxil.io/api/bot/v1/interactions/int_123/ack \
-H "Authorization: Bot YOUR_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"type":"update_message","content":"Vote recorded"}'TypeScript
await fetch("https://api.vxil.io/api/bot/v1/interactions/int_123/ack", {
method: "POST",
headers: {
"Authorization": `Bot ${process.env.VXIL_BOT_TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ type: "update_message", content: "Vote recorded" }),
});Retry behavior
Treat 409 as terminal; the interaction was already resolved.