Referência da API
Automation
Subscriptions made by Power Automate, Zapier and other platforms that subscribe through the API.
List subscriptions
GET/hooks
Lists the workspace's automation subscriptions, newest first. Their callback addresses are never shown.
- Âmbitos
- webhooks:read
Respostas
- 200 The subscriptions. HookList
Campos
dataHook[]The subscriptions.
Mostrar os campos
idstring (uuid)The subscription's id.
eventstringThe event type it receives.
eventIdstring (uuid)The one event it listens to; every event when empty.
clientstringThe platform that made it: powerautomate, zapier or make.
activebooleanWhether it is sent anything.
createdUtcstring (date-time)When it was made, in UTC.
- 401 invalidKey, keyExpired, keyRevoked.
- 403 missingScope.
- 429 rateLimited.
Recusas
Pedido
curl "https://attendbeacon.com/api/v1/hooks" \
-H "Authorization: Bearer $ATTENDBEACON_KEY"const response = await fetch("https://attendbeacon.com/api/v1/hooks", {
headers: {
Authorization: `Bearer ${process.env.ATTENDBEACON_KEY}`
}
});
if (!response.ok) throw new Error((await response.json()).detail);
const data = await response.json();using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("ATTENDBEACON_KEY"));
using var request = new HttpRequestMessage(HttpMethod.Get, "https://attendbeacon.com/api/v1/hooks");
using var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
var json = await response.Content.ReadAsStringAsync();import os
import requests
response = requests.get(
"https://attendbeacon.com/api/v1/hooks",
headers={
"Authorization": f"Bearer {os.environ['ATTENDBEACON_KEY']}"
}
)
response.raise_for_status()
data = response.json()$headers = @{
Authorization = "Bearer $env:ATTENDBEACON_KEY"
}
$data = Invoke-RestMethod -Method Get -Uri "https://attendbeacon.com/api/v1/hooks" -Headers $headers401 invalidKey, keyExpired, keyRevoked.
{
"type": "https://attendbeacon.com/developers/errors#invalidKey",
"title": "No working API key",
"status": 401,
"detail": "No key was sent, or it is not one this platform made. Send it as Authorization: Bearer abk_... or in X-Api-Key.",
"instance": "/api/v1/hooks",
"code": "invalidKey",
"traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
"error": "No key was sent, or it is not one this platform made. Send it as Authorization: Bearer abk_... or in X-Api-Key."
}Subscribe to an event type Altera dados
POST/hooks
Subscribes a callback address to one event type, for every event of the workspace or one of them. The answer's Location header is the address to DELETE to unsubscribe. Each delivery is a plain JSON body: id, type, timestamp and what happened. A callback that answers 410 Gone is unsubscribed, and every subscription goes when its key is revoked or expires. Needs webhooks:write (keys made before 15 October 2026: webhooks:read) and the scopes of what the type delivers.
- Âmbitos
- webhooks:write
- Envie um Idempotency-Key para tornar as novas tentativas seguras. →
Parâmetros
cabeçalho
Idempotency-KeystringA key of your own, such as a UUID, so a retry after a lost connection is answered with the first answer instead of doing it twice. Kept 24 hours.
Corpo NewHookWithType
The callback, the event type and optionally the event.
urlstringobrigatórioThe https address to call with each event.
eventstringobrigatórioThe event type to receive.
Um de:
attendee.registered,attendee.updated,attendee.cancelled,attendee.erased,order.paid,checkin.created,feedback.given,lead.captured,certificate.issued,content.published,stay.requested,stay.assigned,stay.changed,stay.cancelled,member.joined,member.left,travel.changed,claim.submitted,claim.approved,claim.paid,shift.signed_up,shift.droppedeventIdstring (uuid)Only this event of the workspace; every event when absent.
Respostas
- 201 Subscribed. Location names the subscription. Hook
Campos
idstring (uuid)The subscription's id.
eventstringThe event type it receives.
eventIdstring (uuid)The one event it listens to; every event when empty.
clientstringThe platform that made it: powerautomate, zapier or make.
activebooleanWhether it is sent anything.
createdUtcstring (date-time)When it was made, in UTC.
- 400 invalidRequest, tooManyHooks, invalidIdempotencyKey.
- 401 invalidKey, keyExpired, keyRevoked.
- 403 missingScope.
- 404 eventNotFound.
- 409 idempotencyKeyInUse.
- 422 idempotencyKeyReused.
- 429 rateLimited.
Recusas
invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound invalidRequest tooManyHooks idempotencyKeyInUse idempotencyKeyReused invalidIdempotencyKey
Pedido
curl -X POST "https://attendbeacon.com/api/v1/hooks" \
-H "Authorization: Bearer $ATTENDBEACON_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{}'const response = await fetch("https://attendbeacon.com/api/v1/hooks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.ATTENDBEACON_KEY}`,
"Idempotency-Key": crypto.randomUUID(),
"Content-Type": "application/json"
},
body: JSON.stringify({})
});
if (!response.ok) throw new Error((await response.json()).detail);
const data = await response.json();using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("ATTENDBEACON_KEY"));
using var request = new HttpRequestMessage(HttpMethod.Post, "https://attendbeacon.com/api/v1/hooks");
request.Headers.Add("Idempotency-Key", Guid.NewGuid().ToString());
request.Content = new StringContent("""
{}
""", Encoding.UTF8, "application/json");
using var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
var json = await response.Content.ReadAsStringAsync();import os, uuid
import requests
response = requests.post(
"https://attendbeacon.com/api/v1/hooks",
headers={
"Authorization": f"Bearer {os.environ['ATTENDBEACON_KEY']}",
"Idempotency-Key": str(uuid.uuid4())
},
json={}
)
response.raise_for_status()
data = response.json()$headers = @{
Authorization = "Bearer $env:ATTENDBEACON_KEY"
"Idempotency-Key" = [guid]::NewGuid().ToString()
}
$body = @'
{}
'@
$data = Invoke-RestMethod -Method Post -Uri "https://attendbeacon.com/api/v1/hooks" -Headers $headers -ContentType "application/json" -Body $body400 invalidRequest, tooManyHooks, invalidIdempotencyKey.
{
"type": "https://attendbeacon.com/developers/errors#invalidRequest",
"title": "The request is not valid",
"status": 400,
"detail": "A field or parameter is missing or wrong; errors names each, with what is wrong.",
"instance": "/api/v1/hooks",
"code": "invalidRequest",
"traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
"errors": [
{
"field": "startDate",
"message": "startDate is a date such as 2026-11-12."
}
],
"error": "A field or parameter is missing or wrong; errors names each, with what is wrong."
}Subscribe to one event type Altera dados
POST/hooks/{eventType}
Subscribes a callback address to the event type in the path. The same as posting to the hooks list with the type in the body; the AttendBeacon connector uses one path per trigger.
- Âmbitos
- webhooks:write
- Envie um Idempotency-Key para tornar as novas tentativas seguras. →
Parâmetros
caminho
eventTypestringobrigatórioThe event type to receive.
Um de:
attendee.registered,attendee.updated,attendee.cancelled,attendee.erased,order.paid,checkin.created,feedback.given,lead.captured,certificate.issued,content.published,member.joined,member.left,stay.requested,stay.assigned,stay.changed,stay.cancelled,shift.signed_up,shift.dropped,travel.changed,claim.submitted,claim.approved,claim.paid
cabeçalho
Idempotency-KeystringA key of your own, such as a UUID, so a retry after a lost connection is answered with the first answer instead of doing it twice. Kept 24 hours.
Corpo NewHook
Where to send what happens, and for which event.
urlstringobrigatórioThe https address to call with each event.
eventIdstring (uuid)Only this event of the workspace; every event when empty.
Respostas
- 201 Subscribed. Location names the subscription. Hook
Campos
idstring (uuid)The subscription's id.
eventstringThe event type it receives.
eventIdstring (uuid)The one event it listens to; every event when empty.
clientstringThe platform that made it: powerautomate, zapier or make.
activebooleanWhether it is sent anything.
createdUtcstring (date-time)When it was made, in UTC.
- 400 invalidRequest, tooManyHooks, invalidIdempotencyKey.
- 401 invalidKey, keyExpired, keyRevoked.
- 403 missingScope.
- 404 eventNotFound.
- 409 idempotencyKeyInUse.
- 422 idempotencyKeyReused.
- 429 rateLimited.
Recusas
invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound invalidRequest tooManyHooks idempotencyKeyInUse idempotencyKeyReused invalidIdempotencyKey
Pedido
curl -X POST "https://attendbeacon.com/api/v1/hooks/attendee.registered" \
-H "Authorization: Bearer $ATTENDBEACON_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{}'const response = await fetch("https://attendbeacon.com/api/v1/hooks/attendee.registered", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.ATTENDBEACON_KEY}`,
"Idempotency-Key": crypto.randomUUID(),
"Content-Type": "application/json"
},
body: JSON.stringify({})
});
if (!response.ok) throw new Error((await response.json()).detail);
const data = await response.json();using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("ATTENDBEACON_KEY"));
using var request = new HttpRequestMessage(HttpMethod.Post, "https://attendbeacon.com/api/v1/hooks/attendee.registered");
request.Headers.Add("Idempotency-Key", Guid.NewGuid().ToString());
request.Content = new StringContent("""
{}
""", Encoding.UTF8, "application/json");
using var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
var json = await response.Content.ReadAsStringAsync();import os, uuid
import requests
response = requests.post(
"https://attendbeacon.com/api/v1/hooks/attendee.registered",
headers={
"Authorization": f"Bearer {os.environ['ATTENDBEACON_KEY']}",
"Idempotency-Key": str(uuid.uuid4())
},
json={}
)
response.raise_for_status()
data = response.json()$headers = @{
Authorization = "Bearer $env:ATTENDBEACON_KEY"
"Idempotency-Key" = [guid]::NewGuid().ToString()
}
$body = @'
{}
'@
$data = Invoke-RestMethod -Method Post -Uri "https://attendbeacon.com/api/v1/hooks/attendee.registered" -Headers $headers -ContentType "application/json" -Body $body400 invalidRequest, tooManyHooks, invalidIdempotencyKey.
{
"type": "https://attendbeacon.com/developers/errors#invalidRequest",
"title": "The request is not valid",
"status": 400,
"detail": "A field or parameter is missing or wrong; errors names each, with what is wrong.",
"instance": "/api/v1/hooks/{eventType}",
"code": "invalidRequest",
"traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
"errors": [
{
"field": "startDate",
"message": "startDate is a date such as 2026-11-12."
}
],
"error": "A field or parameter is missing or wrong; errors names each, with what is wrong."
}Get a subscription
GET/hooks/{hookId}
Gets one automation subscription of the workspace, without its callback address.
- Âmbitos
- webhooks:read
Parâmetros
caminho
hookIdstring (uuid)obrigatórioThe subscription's id, from the Location header of the answer that made it.
Respostas
- 200 The subscription. Hook
Campos
idstring (uuid)The subscription's id.
eventstringThe event type it receives.
eventIdstring (uuid)The one event it listens to; every event when empty.
clientstringThe platform that made it: powerautomate, zapier or make.
activebooleanWhether it is sent anything.
createdUtcstring (date-time)When it was made, in UTC.
- 401 invalidKey, keyExpired, keyRevoked.
- 403 missingScope.
- 404 notFound.
- 429 rateLimited.
Recusas
invalidKey keyExpired keyRevoked rateLimited missingScope notFound
Pedido
curl "https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d" \
-H "Authorization: Bearer $ATTENDBEACON_KEY"const response = await fetch("https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d", {
headers: {
Authorization: `Bearer ${process.env.ATTENDBEACON_KEY}`
}
});
if (!response.ok) throw new Error((await response.json()).detail);
const data = await response.json();using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("ATTENDBEACON_KEY"));
using var request = new HttpRequestMessage(HttpMethod.Get, "https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d");
using var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
var json = await response.Content.ReadAsStringAsync();import os
import requests
response = requests.get(
"https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d",
headers={
"Authorization": f"Bearer {os.environ['ATTENDBEACON_KEY']}"
}
)
response.raise_for_status()
data = response.json()$headers = @{
Authorization = "Bearer $env:ATTENDBEACON_KEY"
}
$data = Invoke-RestMethod -Method Get -Uri "https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d" -Headers $headers401 invalidKey, keyExpired, keyRevoked.
{
"type": "https://attendbeacon.com/developers/errors#invalidKey",
"title": "No working API key",
"status": 401,
"detail": "No key was sent, or it is not one this platform made. Send it as Authorization: Bearer abk_... or in X-Api-Key.",
"instance": "/api/v1/hooks/{hookId}",
"code": "invalidKey",
"traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
"error": "No key was sent, or it is not one this platform made. Send it as Authorization: Bearer abk_... or in X-Api-Key."
}Unsubscribe Altera dados
DELETE/hooks/{hookId}
Removes an automation subscription, so nothing more is sent to its callback. A key removes its own as it may make them; another key's need webhooks:write.
- Âmbitos
- webhooks:write
Parâmetros
caminho
hookIdstring (uuid)obrigatórioThe subscription's id, from the Location header of the answer that made it.
Respostas
- 204 Removed.
- 401 invalidKey, keyExpired, keyRevoked.
- 403 missingScope.
- 404 notFound.
- 429 rateLimited.
Recusas
invalidKey keyExpired keyRevoked rateLimited missingScope notFound
Pedido
curl -X DELETE "https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d" \
-H "Authorization: Bearer $ATTENDBEACON_KEY"const response = await fetch("https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d", {
method: "DELETE",
headers: {
Authorization: `Bearer ${process.env.ATTENDBEACON_KEY}`
}
});
if (!response.ok) throw new Error((await response.json()).detail);using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("ATTENDBEACON_KEY"));
using var request = new HttpRequestMessage(HttpMethod.Delete, "https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d");
using var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();import os
import requests
response = requests.delete(
"https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d",
headers={
"Authorization": f"Bearer {os.environ['ATTENDBEACON_KEY']}"
}
)
response.raise_for_status()$headers = @{
Authorization = "Bearer $env:ATTENDBEACON_KEY"
}
Invoke-RestMethod -Method Delete -Uri "https://attendbeacon.com/api/v1/hooks/5a7c9e1b-3d5f-4a6b-8c9d-0e1f2a3b4c5d" -Headers $headers401 invalidKey, keyExpired, keyRevoked.
{
"type": "https://attendbeacon.com/developers/errors#invalidKey",
"title": "No working API key",
"status": 401,
"detail": "No key was sent, or it is not one this platform made. Send it as Authorization: Bearer abk_... or in X-Api-Key.",
"instance": "/api/v1/hooks/{hookId}",
"code": "invalidKey",
"traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
"error": "No key was sent, or it is not one this platform made. Send it as Authorization: Bearer abk_... or in X-Api-Key."
}Os guias e este site estão no seu idioma. As descrições da própria referência da API estão em inglês, tal como a própria API.