API-referentie
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.
- Scopes
- webhooks:read
Antwoorden
- 200 The subscriptions. HookList
Velden
dataHook[]The subscriptions.
Velden tonen
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.
Weigeringen
Verzoek
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 Wijzigt gegevens
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.
- Scopes
- webhooks:write
- Stuur een Idempotency-Key mee, dan zijn herhalingen veilig. →
Parameters
header
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.
Body NewHookWithType
The callback, the event type and optionally the event.
urlstringverplichtThe https address to call with each event.
eventstringverplichtThe event type to receive.
Een van:
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.
Antwoorden
- 201 Subscribed. Location names the subscription. Hook
Velden
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.
Weigeringen
invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound invalidRequest tooManyHooks idempotencyKeyInUse idempotencyKeyReused invalidIdempotencyKey
Verzoek
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 Wijzigt gegevens
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.
- Scopes
- webhooks:write
- Stuur een Idempotency-Key mee, dan zijn herhalingen veilig. →
Parameters
pad
eventTypestringverplichtThe event type to receive.
Een van:
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
header
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.
Body NewHook
Where to send what happens, and for which event.
urlstringverplichtThe https address to call with each event.
eventIdstring (uuid)Only this event of the workspace; every event when empty.
Antwoorden
- 201 Subscribed. Location names the subscription. Hook
Velden
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.
Weigeringen
invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound invalidRequest tooManyHooks idempotencyKeyInUse idempotencyKeyReused invalidIdempotencyKey
Verzoek
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.
- Scopes
- webhooks:read
Parameters
pad
hookIdstring (uuid)verplichtThe subscription's id, from the Location header of the answer that made it.
Antwoorden
- 200 The subscription. Hook
Velden
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.
Weigeringen
invalidKey keyExpired keyRevoked rateLimited missingScope notFound
Verzoek
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 Wijzigt gegevens
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.
- Scopes
- webhooks:write
Parameters
pad
hookIdstring (uuid)verplichtThe subscription's id, from the Location header of the answer that made it.
Antwoorden
- 204 Removed.
- 401 invalidKey, keyExpired, keyRevoked.
- 403 missingScope.
- 404 notFound.
- 429 rateLimited.
Weigeringen
invalidKey keyExpired keyRevoked rateLimited missingScope notFound
Verzoek
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."
}De handleidingen en deze site zijn in jouw taal. De beschrijvingen in de API-referentie zelf zijn in het Engels, de taal van de API.