AttendBeacon
Otwórz przestrzeń roboczą

Dokumentacja API

Events

Events: list them, read one, create a draft, change its basics, publish it, and its numbers.

List events

GET/events

Lists the workspace's events, oldest change first, with how many attendees and check-ins each has. Filter by status or by part of the name.

Uprawnienia
events:read

    Parametry

    zapytanie

    • cursorstring

      Where the page starts: nextCursor from the page before, exactly as it was returned. Leave out for the first page.

    • limitinteger (int32)

      How many on a page, up to 500.

      Domyślnie: 100

    • updatedSincestring (date-time)

      Only what changed at or after this moment, in UTC unless it says otherwise. Pass the newest updatedUtc your last sync saw.

    • statusstring

      Only events with this status.

      Jedno z: draft, published, closed

    • qstring

      Only events whose name or address holds this text.

    Odpowiedzi

    • 200 A page of events. EventList
      Pola
      • dataEventSummary[]

        The events.

        Pokaż pola
        • eventIdstring (uuid)

          The event's id.

        • slugstring

          The event's address: /e/{slug}.

        • namestring

          The event's name.

        • statusstring

          Draft, published or closed.

          Jedno z: draft, published, closed

        • startDatestring (date)

          The first day, in the venue's time zone.

        • endDatestring (date)

          The last day, in the venue's time zone.

        • venueNamestring

          Where it is.

        • attendeesinteger

          How many valid tickets it has.

        • checkedIninteger

          How many attendees were checked in.

        • sessionsinteger

          How many sessions its programme has.

        • timeZonestring

          The venue's IANA time zone, such as Europe/Amsterdam. Dates and the local times of sessions are in it.

        • currencystring

          The currency of its tickets, as ISO 4217.

        • formatstring

          InPerson, online or hybrid.

          Jedno z: inPerson, online, hybrid

        • modulesstring[]

          The modules switched on, such as checkin and sponsors.

        • urlstring (uri)

          The event's public page.

        • createdUtcstring (date-time)

          When it was made, in UTC.

        • updatedUtcstring (date-time)

          When its basics last changed, in UTC. Pass the latest you have as updatedSince.

      • nextCursorstring lub null

        The cursor for the next page; null on the last page.

      • hasMoreboolean

        Whether there is another page.

    • 400 invalidCursor, invalidUpdatedSince, invalidRequest.
    • 401 invalidKey, keyExpired, keyRevoked.
    • 403 missingScope.
    • 429 rateLimited.

    Odmowy

    invalidKey keyExpired keyRevoked rateLimited missingScope invalidCursor invalidUpdatedSince invalidRequest

    Żądanie

    curl "https://attendbeacon.com/api/v1/events?limit=2" \
      -H "Authorization: Bearer $ATTENDBEACON_KEY"

    200 Przykładowa odpowiedź

    JSON
    {
      "data": [
        {
          "eventId": "b3ac0000-0000-4000-8000-000000000001",
          "slug": "beacon-summit",
          "name": "Beacon Summit",
          "status": "published",
          "startDate": "2026-11-12",
          "endDate": "2026-11-13",
          "timeZone": "Europe/Amsterdam",
          "venueName": "Beurs van Berlage",
          "currency": "EUR",
          "format": "inPerson",
          "modules": [
            "payments",
            "addons"
          ],
          "url": "https://attendbeacon.com/e/beacon-summit/",
          "attendees": 86,
          "checkedIn": 0,
          "sessions": 30,
          "createdUtc": "2026-10-14T21:40:48.036Z",
          "updatedUtc": "2026-10-14T21:40:48.036Z"
        },
        {
          "eventId": "b3ac2500-0000-4000-8000-000000000001",
          "slug": "beacon-summit-2025",
          "name": "Beacon Summit 2025",
          "status": "closed",
          "startDate": "2025-11-13",
          "endDate": "2025-11-14",
          "timeZone": "Europe/Amsterdam",
          "venueName": "Beurs van Berlage",
          "currency": "EUR",
          "format": "inPerson",
          "modules": [
            "payments",
            "addons"
          ],
          "url": "https://attendbeacon.com/e/beacon-summit-2025/",
          "attendees": 65,
          "checkedIn": 61,
          "sessions": 12,
          "createdUtc": "2025-06-16T00:00:00.000Z",
          "updatedUtc": "2026-10-14T21:40:49.820Z"
        }
      ],
      "nextCursor": "YzE6MDYzOTI3NjEwODQ5ODIwMDAwMHxiM2FjMjUwMDAwMDA0MDAwODAwMDAwMDAwMDAwMDAwMQ",
      "hasMore": true
    }
    400 invalidCursor, invalidUpdatedSince, invalidRequest.
    JSON
    {
      "type": "https://attendbeacon.com/developers/errors#invalidCursor",
      "title": "The cursor is not valid",
      "status": 400,
      "detail": "Pass nextCursor exactly as a list returned it, with the same filters.",
      "instance": "/api/v1/events",
      "code": "invalidCursor",
      "traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
      "error": "Pass nextCursor exactly as a list returned it, with the same filters."
    }

    Create a draft event Zmienia dane

    POST/events

    Creates an event as a draft, as the workspace's New event does. Nothing is public and nobody is emailed until it is published. Answers the event as GetEvent does, with its ETag.

    Uprawnienia
    events:write
    • Wyślij Idempotency-Key, aby ponowienia były bezpieczne. →

    Parametry

    nagłówek

    • Idempotency-Keystring

      A 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.

    Treść NewEvent

    The event.

    • namestringwymagane

      Its name, at most 200 characters.

    • startDatestring (date)wymagane

      The first day, at the venue.

    • endDatestring (date)

      The last day; the first day when left out.

    • timeZonestring

      The venue's IANA time zone. Europe/Amsterdam when left out.

      Domyślnie: "Europe/Amsterdam"

    • venueNamestring

      Where it takes place.

    • venueAddressstring

      The venue's address.

    • summarystring

      One or two sentences about it.

    • formatstring

      InPerson (the default), online or hybrid.

      Jedno z: inPerson, online, hybrid

    • currencystring

      The currency of its tickets, as ISO 4217. EUR when left out.

      Domyślnie: "EUR"

    • slugstring

      Its address after /e/, lower case letters, digits and hyphens. Made from the name when left out.

    • languagesstring[]

      Its languages as two-letter codes, the first the default. en when left out.

    • modulesstring[]

      The modules to switch on. Every one when left out.

    Odpowiedzi

    • 201 The draft event. Location is its address. EventDetail
      Pola
      • eventobject

        The event as its public page shows it, with its registration questions and theme as well.

        Pokaż pola
        • eventIdstring (uuid)

          The event's id.

        • slugstring

          The event's address: /e/{slug}.

        • namestring

          The event's name.

        • statusstring

          Draft, published or closed.

        • startDatestring (date)

          The first day, in the venue's time zone.

        • endDatestring (date)

          The last day, in the venue's time zone.

        • timeZonestring

          The venue's time zone, such as Europe/Amsterdam.

        • venueNamestring

          Where it is.

        • venueAddressstring

          The venue's address.

        • summarystring

          A line about the event.

        • descriptionstring

          What the event is about.

        • languagesstring[]

          The event's languages, such as en and nl.

        • currencystring

          The currency, as ISO 4217.

        • contactEmailstring (email)

          The organiser's contact address.

        • formatstring

          In person, online or hybrid.

      • programmeobject lub null

        Rooms, tracks, sessions, speakers and sponsors. Null without program:read.

        Pokaż pola
        • roomsobject[]

          The rooms.

          Pokaż pola
          • roomIdstring (uuid)

            The room's id.

          • namestring

            The room's name.

          • locationstring

            Where the room is.

          • capacityinteger

            How many it seats.

        • tracksobject[]

          The tracks.

          Pokaż pola
          • trackIdstring (uuid)

            The track's id.

          • namestring

            The track's name.

          • colourstring

            The track's colour.

        • sessionsobject[]

          The sessions.

          Pokaż pola
          • sessionIdstring (uuid)

            The session's id.

          • titlestring

            The session's title.

          • summarystring

            What it is about.

          • kindstring

            Talk, workshop, break and others.

          • roomIdstring (uuid)

            The room's id.

          • trackIdstring (uuid)

            The track's id.

          • startsUtcstring (date-time)

            When it starts, in UTC.

          • endsUtcstring (date-time)

            When it ends, in UTC.

          • startsLocalstring

            When it starts, in the venue's time.

          • endsLocalstring

            When it ends, in the venue's time.

          • capacityinteger

            How many it seats, when fewer than its room.

          • languagestring

            The language it is given in.

        • speakersobject[]

          The speakers.

          Pokaż pola
          • speakerIdstring (uuid)

            The speaker's id.

          • namestring

            The speaker's name.

          • jobTitlestring

            Their job title.

          • companystring

            Their company.

          • biostring

            About them.

          • photoUrlstring

            Their photo's address.

        • sponsorsobject[]

          The sponsors.

          Pokaż pola
          • sponsorIdstring (uuid)

            The sponsor's id.

          • namestring

            The sponsor's name.

          • tierstring

            Their sponsorship level.

          • websitestring

            Their website.

          • boothstring

            Their stand.

      • ticketTypesTicketType[] lub null

        The ticket types and what is sold. Null without tickets:read.

        Pokaż pola
        • ticketTypeIdstring (uuid)

          The ticket type's id.

        • namestring

          Its name.

        • descriptionstring

          What it includes.

        • pricenumber

          The price, VAT included, with the currency's own decimals.

        • vatRatenumber

          The VAT rate, as a percentage.

        • currencystring

          The currency, as ISO 4217.

        • capacityinteger lub null

          How many may be sold, when limited.

        • takeninteger

          How many are taken.

        • maxPerOrderinteger

          The most one order may hold.

        • visibilitystring

          Public, code (sold with an access code) or hidden.

          Jedno z: public, code, hidden

        • salesStartUtcstring (date-time)

          When sales start, in UTC.

        • salesEndUtcstring (date-time)

          When sales end, in UTC.

        • sortOrderinteger

          Its place in the list.

        • eventIdstring (uuid)

          The event's id.

        • remaininginteger (int32) lub null

          Places left, or null without a limit.

        • requiresApprovalboolean

          Whether an order for it waits for the organiser's approval.

        • salesStartLocalstring lub null

          When sales start, in the venue's time.

        • salesEndLocalstring lub null

          When sales end, in the venue's time.

        • includedAddOnIdsstring (uuid)[]

          The add-ons it includes, as a bundle.

        • updatedUtcstring (date-time) lub null

          When it last changed, in UTC.

      • updatedUtcstring (date-time)

        When the event's basics last changed, in UTC.

    • 400 invalidBody, invalidRequest, invalidIdempotencyKey.
    • 401 invalidKey, keyExpired, keyRevoked.
    • 403 missingScope, demoWorkspace.
    • 409 idempotencyKeyInUse, slugTaken.
    • 422 idempotencyKeyReused.
    • 429 rateLimited.

    Odmowy

    invalidKey keyExpired keyRevoked rateLimited missingScope invalidBody invalidRequest demoWorkspace idempotencyKeyInUse idempotencyKeyReused invalidIdempotencyKey slugTaken

    Żądanie

    curl -X POST "https://attendbeacon.com/api/v1/events" \
      -H "Authorization: Bearer $ATTENDBEACON_KEY" \
      -H "Idempotency-Key: $(uuidgen)" \
      -H "Content-Type: application/json" \
      -d '{
      "name": "Beacon Summit 2027",
      "startDate": "2027-11-11",
      "endDate": "2027-11-12",
      "timeZone": "Europe/Amsterdam",
      "venueName": "Beurs van Berlage, Amsterdam",
      "currency": "EUR"
    }'

    201 Przykładowa odpowiedź

    JSON
    {
      "event": {
        "eventId": "b3ac0000-0000-4000-8000-000000000001",
        "slug": "beacon-summit",
        "name": "Beacon Summit",
        "status": "published",
        "startDate": "2026-11-12",
        "endDate": "2026-11-13",
        "timeZone": "Europe/Amsterdam",
        "venueName": "Beurs van Berlage",
        "venueAddress": "Damrak 243, 1012 ZJ Amsterdam",
        "summary": "Two days on building, shipping and running software, in the old stock exchange on the Damrak.",
        "description": "Beacon Summit brings together the people who build software and the people who run it. Two days, four rooms, thirty sessions, and a long table for lunch.\n\n**Bring your laptop** for the workshops on day two.",
        "languages": [
          "en",
          "nl"
        ],
        "currency": "EUR",
        "contactEmail": "hello@beaconsummit.example",
        "theme": {
          "accent": "#4338ca",
          "highlight": "#f59e0b",
          "darkAccent": "#a5b4fc",
          "darkHighlight": "#fbbf24",
          "background": null,
          "surface": null,
          "mode": "auto",
          "font": "Inter",
          "headingFont": "Sora",
          "headingWeight": "heavy",
          "headingSpacing": "tight",
          "radius": 16,
          "buttonStyle": "filled",
          "buttonShape": "pill",
          "cardStyle": "glass",
          "headerStyle": "transparent",
          "logoUrl": null,
          "logoDarkUrl": null,
          "logoSize": "medium",
          "iconUrl": null,
          "heroUrl": "/media/f0de0000000040008000000000000001/b3ac001e000040008000000000000000.jpg",
          "heroLayout": "image",
          "heroVideoUrl": null,
          "heroOverlay": 50,
          "countdown": true,
          "backgroundStyle": "aurora",
          "pattern": "beacons",
          "backgroundUrl": null,
          "backgroundOverlay": 75,
          "motion": "subtle",
          "preset": null,
          "customCss": null,
          "accentInk": "#ffffff",
          "highlightInk": "#0f1b2d"
        },
        "registration": {
          "schemaVersion": 1,
          "askCompany": true,
          "askJobTitle": true,
          "companyRequired": false,
          "askSponsorConsent": true,
          "questions": [
            {
              "id": "dietary",
              "kind": "choice",
              "label": {
                "en": "Dietary requirements",
                "nl": "Dieetwensen",
                "de": "Ernährungswünsche",
                "es": "Requisitos alimentarios",
                "da": "Kostbehov",
                "fr": "Régime alimentaire",
                "fi": "Ruokavalio",
                "nb": "Kostbehov",
                "pt": "Restrições alimentares",
                "sv": "Kostönskemål",
                "pl": "Wymagania dietetyczne"
              },
              "required": false,
              "options": [
                {
                  "value": "none",
                  "label": {
                    "en": "None",
                    "nl": "Geen",
                    "de": "Keine",
                    "es": "Ninguno",
                    "da": "Ingen",
                    "fr": "Aucun",
                    "fi": "Ei mitään",
                    "nb": "Ingen",
                    "pt": "Nenhuma",
                    "sv": "Inga",
                    "pl": "Brak"
                  }
                },
                {
                  "value": "vegetarian",
                  "label": {
                    "en": "Vegetarian",
                    "nl": "Vegetarisch",
                    "de": "Vegetarisch",
                    "es": "Vegetariano",
                    "da": "Vegetar",
                    "fr": "Végétarien",
                    "fi": "Kasvis",
                    "nb": "Vegetar",
                    "pt": "Vegetariano",
                    "sv": "Vegetarisk",
                    "pl": "Wegetariańskie"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            },
            {
              "id": "interests",
              "kind": "multiChoice",
              "label": {
                "en": "What are you here for?",
                "nl": "Waarvoor kom je?",
                "de": "Weshalb kommst du?",
                "es": "¿Qué te trae aquí?",
                "da": "Hvad kommer du for?",
                "fr": "Qu’est-ce qui vous amène ?",
                "fi": "Mitä varten tulet?",
                "nb": "Hva kommer du for?",
                "pt": "O que o traz cá?",
                "sv": "Vad kommer du för?",
                "pl": "Co cię tu sprowadza?"
              },
              "required": false,
              "options": [
                {
                  "value": "cloud",
                  "label": {
                    "en": "Cloud and AI",
                    "nl": "Cloud en AI",
                    "de": "Cloud und KI",
                    "es": "Nube e IA",
                    "da": "Cloud og AI",
                    "fr": "Cloud et IA",
                    "fi": "Pilvi ja tekoäly",
                    "nb": "Sky og KI",
                    "pt": "Cloud e IA",
                    "sv": "Moln och AI",
                    "pl": "Chmura i AI"
                  }
                },
                {
                  "value": "product",
                  "label": {
                    "en": "Product",
                    "nl": "Product",
                    "de": "Produkt",
                    "es": "Producto",
                    "da": "Produkt",
                    "fr": "Produit",
                    "fi": "Tuote",
                    "nb": "Produkt",
                    "pt": "Produto",
                    "sv": "Produkt",
                    "pl": "Produkt"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            }
          ]
        },
        "paymentProvider": null,
        "updatedUtc": null,
        "format": "inPerson",
        "capabilities": {
          "doors": true,
          "badges": true,
          "screens": true,
          "venue": true,
          "selfCheckIn": true,
          "boothScanning": true,
          "boothRedemption": true,
          "walletPass": true,
          "crewOnSite": true,
          "meetingTables": true,
          "onlineAccess": false,
          "venueMap": true
        },
        "modules": [
          "payments",
          "addons"
        ],
        "modulesChosen": null,
        "online": null
      },
      "programme": {
        "rooms": [
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "name": "Main Hall",
            "location": "Ground floor, straight ahead",
            "capacity": 600,
            "sortOrder": 0
          },
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000001",
            "name": "Graanbeurs",
            "location": "Ground floor, left wing",
            "capacity": 220,
            "sortOrder": 1
          }
        ],
        "tracks": [
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000000",
            "name": "Cloud & AI",
            "colour": "#2b8fd0",
            "sortOrder": 0
          },
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000001",
            "name": "Product",
            "colour": "#c2410c",
            "sortOrder": 1
          }
        ],
        "sessions": [
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000000",
            "title": "Registration and coffee",
            "summary": null,
            "kind": "other",
            "roomId": null,
            "trackId": null,
            "startsUtc": "2026-11-12T07:30:00.000Z",
            "endsUtc": "2026-11-12T08:30:00.000Z",
            "startsLocal": "2026-11-12T08:30",
            "endsLocal": "2026-11-12T09:30",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": []
          },
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000001",
            "title": "Opening keynote: software that finds its way",
            "summary": "Opening keynote: software that finds its way. What worked, what did not, and what to try on Monday.",
            "kind": "keynote",
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "trackId": null,
            "startsUtc": "2026-11-12T08:30:00.000Z",
            "endsUtc": "2026-11-12T09:15:00.000Z",
            "startsLocal": "2026-11-12T09:30",
            "endsLocal": "2026-11-12T10:15",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": [
              "b3ac0003-0000-4000-8000-000000000009"
            ]
          }
        ],
        "speakers": [
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000000",
            "name": "Ada Verhoeven",
            "jobTitle": "Principal Engineer",
            "company": "Northwind Cloud",
            "bio": "Ada builds the platforms other engineers build on, and writes about what breaks.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000000.jpg",
            "email": null,
            "links": [],
            "sortOrder": 0
          },
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000001",
            "name": "Malik Osei",
            "jobTitle": "VP Product",
            "company": "Contoso",
            "bio": "Malik has shipped products in four countries and still reads every support ticket.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000001.jpg",
            "email": null,
            "links": [],
            "sortOrder": 1
          }
        ],
        "sponsors": [
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000000",
            "name": "Northwind Cloud",
            "tier": "Platinum",
            "tierOrder": 0,
            "website": "https://northwindcloud.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000000.png",
            "description": "The cloud for teams who would rather be building.",
            "booth": "A1",
            "sortOrder": 0
          },
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000001",
            "name": "Contoso",
            "tier": "Gold",
            "tierOrder": 1,
            "website": "https://contoso.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000001.png",
            "description": "Software for the way people work now.",
            "booth": "B2",
            "sortOrder": 1
          }
        ]
      },
      "ticketTypes": [
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000000",
          "name": "Community pass",
          "description": "Both days, lunch included. Free for members of a local user group.",
          "price": 0,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 300,
          "taken": 24,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 0
        },
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000001",
          "name": "Conference pass",
          "description": "Both days, lunch and drinks. A workshop seat is booked as an extra.",
          "price": 395,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 500,
          "taken": 38,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 1
        }
      ],
      "updatedUtc": "2026-10-14T21:40:48.036Z"
    }
    400 invalidBody, invalidRequest, invalidIdempotencyKey.
    JSON
    {
      "type": "https://attendbeacon.com/developers/errors#invalidBody",
      "title": "The body is not readable",
      "status": 400,
      "detail": "The body is not JSON, or a field has the wrong type.",
      "instance": "/api/v1/events",
      "code": "invalidBody",
      "traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
      "error": "The body is not JSON, or a field has the wrong type."
    }

    Get an event

    GET/events/{eventId}

    Gets an event with its programme (rooms, tracks, sessions, speakers, sponsors) when the key reads the programme, and its ticket types when it reads tickets. Never an access code or a speaker's address.

    Uprawnienia
    events:read
    • Odpowiada z nagłówkiem ETag; wyślij If-None-Match, aby nie pobierać danych ponownie.

    Parametry

    ścieżka

    • eventIdstring (uuid)wymagane

      The event's id.

    nagłówek

    • If-None-Matchstring

      The ETag you have: when it is still current the answer is 304 with no body.

    Odpowiedzi

    • 200 The event. EventDetail
      Pola
      • eventobject

        The event as its public page shows it, with its registration questions and theme as well.

        Pokaż pola
        • eventIdstring (uuid)

          The event's id.

        • slugstring

          The event's address: /e/{slug}.

        • namestring

          The event's name.

        • statusstring

          Draft, published or closed.

        • startDatestring (date)

          The first day, in the venue's time zone.

        • endDatestring (date)

          The last day, in the venue's time zone.

        • timeZonestring

          The venue's time zone, such as Europe/Amsterdam.

        • venueNamestring

          Where it is.

        • venueAddressstring

          The venue's address.

        • summarystring

          A line about the event.

        • descriptionstring

          What the event is about.

        • languagesstring[]

          The event's languages, such as en and nl.

        • currencystring

          The currency, as ISO 4217.

        • contactEmailstring (email)

          The organiser's contact address.

        • formatstring

          In person, online or hybrid.

      • programmeobject lub null

        Rooms, tracks, sessions, speakers and sponsors. Null without program:read.

        Pokaż pola
        • roomsobject[]

          The rooms.

          Pokaż pola
          • roomIdstring (uuid)

            The room's id.

          • namestring

            The room's name.

          • locationstring

            Where the room is.

          • capacityinteger

            How many it seats.

        • tracksobject[]

          The tracks.

          Pokaż pola
          • trackIdstring (uuid)

            The track's id.

          • namestring

            The track's name.

          • colourstring

            The track's colour.

        • sessionsobject[]

          The sessions.

          Pokaż pola
          • sessionIdstring (uuid)

            The session's id.

          • titlestring

            The session's title.

          • summarystring

            What it is about.

          • kindstring

            Talk, workshop, break and others.

          • roomIdstring (uuid)

            The room's id.

          • trackIdstring (uuid)

            The track's id.

          • startsUtcstring (date-time)

            When it starts, in UTC.

          • endsUtcstring (date-time)

            When it ends, in UTC.

          • startsLocalstring

            When it starts, in the venue's time.

          • endsLocalstring

            When it ends, in the venue's time.

          • capacityinteger

            How many it seats, when fewer than its room.

          • languagestring

            The language it is given in.

        • speakersobject[]

          The speakers.

          Pokaż pola
          • speakerIdstring (uuid)

            The speaker's id.

          • namestring

            The speaker's name.

          • jobTitlestring

            Their job title.

          • companystring

            Their company.

          • biostring

            About them.

          • photoUrlstring

            Their photo's address.

        • sponsorsobject[]

          The sponsors.

          Pokaż pola
          • sponsorIdstring (uuid)

            The sponsor's id.

          • namestring

            The sponsor's name.

          • tierstring

            Their sponsorship level.

          • websitestring

            Their website.

          • boothstring

            Their stand.

      • ticketTypesTicketType[] lub null

        The ticket types and what is sold. Null without tickets:read.

        Pokaż pola
        • ticketTypeIdstring (uuid)

          The ticket type's id.

        • namestring

          Its name.

        • descriptionstring

          What it includes.

        • pricenumber

          The price, VAT included, with the currency's own decimals.

        • vatRatenumber

          The VAT rate, as a percentage.

        • currencystring

          The currency, as ISO 4217.

        • capacityinteger lub null

          How many may be sold, when limited.

        • takeninteger

          How many are taken.

        • maxPerOrderinteger

          The most one order may hold.

        • visibilitystring

          Public, code (sold with an access code) or hidden.

          Jedno z: public, code, hidden

        • salesStartUtcstring (date-time)

          When sales start, in UTC.

        • salesEndUtcstring (date-time)

          When sales end, in UTC.

        • sortOrderinteger

          Its place in the list.

        • eventIdstring (uuid)

          The event's id.

        • remaininginteger (int32) lub null

          Places left, or null without a limit.

        • requiresApprovalboolean

          Whether an order for it waits for the organiser's approval.

        • salesStartLocalstring lub null

          When sales start, in the venue's time.

        • salesEndLocalstring lub null

          When sales end, in the venue's time.

        • includedAddOnIdsstring (uuid)[]

          The add-ons it includes, as a bundle.

        • updatedUtcstring (date-time) lub null

          When it last changed, in UTC.

      • updatedUtcstring (date-time)

        When the event's basics last changed, in UTC.

    • 304 Not modified: If-None-Match named the representation as it is.
    • 401 invalidKey, keyExpired, keyRevoked.
    • 403 missingScope.
    • 404 eventNotFound.
    • 429 rateLimited.

    Odmowy

    invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound

    Żądanie

    curl "https://attendbeacon.com/api/v1/events/b3ac0000-0000-4000-8000-000000000001" \
      -H "Authorization: Bearer $ATTENDBEACON_KEY"

    200 Przykładowa odpowiedź

    JSON
    {
      "event": {
        "eventId": "b3ac0000-0000-4000-8000-000000000001",
        "slug": "beacon-summit",
        "name": "Beacon Summit",
        "status": "published",
        "startDate": "2026-11-12",
        "endDate": "2026-11-13",
        "timeZone": "Europe/Amsterdam",
        "venueName": "Beurs van Berlage",
        "venueAddress": "Damrak 243, 1012 ZJ Amsterdam",
        "summary": "Two days on building, shipping and running software, in the old stock exchange on the Damrak.",
        "description": "Beacon Summit brings together the people who build software and the people who run it. Two days, four rooms, thirty sessions, and a long table for lunch.\n\n**Bring your laptop** for the workshops on day two.",
        "languages": [
          "en",
          "nl"
        ],
        "currency": "EUR",
        "contactEmail": "hello@beaconsummit.example",
        "theme": {
          "accent": "#4338ca",
          "highlight": "#f59e0b",
          "darkAccent": "#a5b4fc",
          "darkHighlight": "#fbbf24",
          "background": null,
          "surface": null,
          "mode": "auto",
          "font": "Inter",
          "headingFont": "Sora",
          "headingWeight": "heavy",
          "headingSpacing": "tight",
          "radius": 16,
          "buttonStyle": "filled",
          "buttonShape": "pill",
          "cardStyle": "glass",
          "headerStyle": "transparent",
          "logoUrl": null,
          "logoDarkUrl": null,
          "logoSize": "medium",
          "iconUrl": null,
          "heroUrl": "/media/f0de0000000040008000000000000001/b3ac001e000040008000000000000000.jpg",
          "heroLayout": "image",
          "heroVideoUrl": null,
          "heroOverlay": 50,
          "countdown": true,
          "backgroundStyle": "aurora",
          "pattern": "beacons",
          "backgroundUrl": null,
          "backgroundOverlay": 75,
          "motion": "subtle",
          "preset": null,
          "customCss": null,
          "accentInk": "#ffffff",
          "highlightInk": "#0f1b2d"
        },
        "registration": {
          "schemaVersion": 1,
          "askCompany": true,
          "askJobTitle": true,
          "companyRequired": false,
          "askSponsorConsent": true,
          "questions": [
            {
              "id": "dietary",
              "kind": "choice",
              "label": {
                "en": "Dietary requirements",
                "nl": "Dieetwensen",
                "de": "Ernährungswünsche",
                "es": "Requisitos alimentarios",
                "da": "Kostbehov",
                "fr": "Régime alimentaire",
                "fi": "Ruokavalio",
                "nb": "Kostbehov",
                "pt": "Restrições alimentares",
                "sv": "Kostönskemål",
                "pl": "Wymagania dietetyczne"
              },
              "required": false,
              "options": [
                {
                  "value": "none",
                  "label": {
                    "en": "None",
                    "nl": "Geen",
                    "de": "Keine",
                    "es": "Ninguno",
                    "da": "Ingen",
                    "fr": "Aucun",
                    "fi": "Ei mitään",
                    "nb": "Ingen",
                    "pt": "Nenhuma",
                    "sv": "Inga",
                    "pl": "Brak"
                  }
                },
                {
                  "value": "vegetarian",
                  "label": {
                    "en": "Vegetarian",
                    "nl": "Vegetarisch",
                    "de": "Vegetarisch",
                    "es": "Vegetariano",
                    "da": "Vegetar",
                    "fr": "Végétarien",
                    "fi": "Kasvis",
                    "nb": "Vegetar",
                    "pt": "Vegetariano",
                    "sv": "Vegetarisk",
                    "pl": "Wegetariańskie"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            },
            {
              "id": "interests",
              "kind": "multiChoice",
              "label": {
                "en": "What are you here for?",
                "nl": "Waarvoor kom je?",
                "de": "Weshalb kommst du?",
                "es": "¿Qué te trae aquí?",
                "da": "Hvad kommer du for?",
                "fr": "Qu’est-ce qui vous amène ?",
                "fi": "Mitä varten tulet?",
                "nb": "Hva kommer du for?",
                "pt": "O que o traz cá?",
                "sv": "Vad kommer du för?",
                "pl": "Co cię tu sprowadza?"
              },
              "required": false,
              "options": [
                {
                  "value": "cloud",
                  "label": {
                    "en": "Cloud and AI",
                    "nl": "Cloud en AI",
                    "de": "Cloud und KI",
                    "es": "Nube e IA",
                    "da": "Cloud og AI",
                    "fr": "Cloud et IA",
                    "fi": "Pilvi ja tekoäly",
                    "nb": "Sky og KI",
                    "pt": "Cloud e IA",
                    "sv": "Moln och AI",
                    "pl": "Chmura i AI"
                  }
                },
                {
                  "value": "product",
                  "label": {
                    "en": "Product",
                    "nl": "Product",
                    "de": "Produkt",
                    "es": "Producto",
                    "da": "Produkt",
                    "fr": "Produit",
                    "fi": "Tuote",
                    "nb": "Produkt",
                    "pt": "Produto",
                    "sv": "Produkt",
                    "pl": "Produkt"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            }
          ]
        },
        "paymentProvider": null,
        "updatedUtc": null,
        "format": "inPerson",
        "capabilities": {
          "doors": true,
          "badges": true,
          "screens": true,
          "venue": true,
          "selfCheckIn": true,
          "boothScanning": true,
          "boothRedemption": true,
          "walletPass": true,
          "crewOnSite": true,
          "meetingTables": true,
          "onlineAccess": false,
          "venueMap": true
        },
        "modules": [
          "payments",
          "addons"
        ],
        "modulesChosen": null,
        "online": null
      },
      "programme": {
        "rooms": [
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "name": "Main Hall",
            "location": "Ground floor, straight ahead",
            "capacity": 600,
            "sortOrder": 0
          },
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000001",
            "name": "Graanbeurs",
            "location": "Ground floor, left wing",
            "capacity": 220,
            "sortOrder": 1
          }
        ],
        "tracks": [
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000000",
            "name": "Cloud & AI",
            "colour": "#2b8fd0",
            "sortOrder": 0
          },
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000001",
            "name": "Product",
            "colour": "#c2410c",
            "sortOrder": 1
          }
        ],
        "sessions": [
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000000",
            "title": "Registration and coffee",
            "summary": null,
            "kind": "other",
            "roomId": null,
            "trackId": null,
            "startsUtc": "2026-11-12T07:30:00.000Z",
            "endsUtc": "2026-11-12T08:30:00.000Z",
            "startsLocal": "2026-11-12T08:30",
            "endsLocal": "2026-11-12T09:30",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": []
          },
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000001",
            "title": "Opening keynote: software that finds its way",
            "summary": "Opening keynote: software that finds its way. What worked, what did not, and what to try on Monday.",
            "kind": "keynote",
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "trackId": null,
            "startsUtc": "2026-11-12T08:30:00.000Z",
            "endsUtc": "2026-11-12T09:15:00.000Z",
            "startsLocal": "2026-11-12T09:30",
            "endsLocal": "2026-11-12T10:15",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": [
              "b3ac0003-0000-4000-8000-000000000009"
            ]
          }
        ],
        "speakers": [
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000000",
            "name": "Ada Verhoeven",
            "jobTitle": "Principal Engineer",
            "company": "Northwind Cloud",
            "bio": "Ada builds the platforms other engineers build on, and writes about what breaks.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000000.jpg",
            "email": null,
            "links": [],
            "sortOrder": 0
          },
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000001",
            "name": "Malik Osei",
            "jobTitle": "VP Product",
            "company": "Contoso",
            "bio": "Malik has shipped products in four countries and still reads every support ticket.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000001.jpg",
            "email": null,
            "links": [],
            "sortOrder": 1
          }
        ],
        "sponsors": [
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000000",
            "name": "Northwind Cloud",
            "tier": "Platinum",
            "tierOrder": 0,
            "website": "https://northwindcloud.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000000.png",
            "description": "The cloud for teams who would rather be building.",
            "booth": "A1",
            "sortOrder": 0
          },
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000001",
            "name": "Contoso",
            "tier": "Gold",
            "tierOrder": 1,
            "website": "https://contoso.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000001.png",
            "description": "Software for the way people work now.",
            "booth": "B2",
            "sortOrder": 1
          }
        ]
      },
      "ticketTypes": [
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000000",
          "name": "Community pass",
          "description": "Both days, lunch included. Free for members of a local user group.",
          "price": 0,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 300,
          "taken": 24,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 0
        },
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000001",
          "name": "Conference pass",
          "description": "Both days, lunch and drinks. A workshop seat is booked as an extra.",
          "price": 395,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 500,
          "taken": 38,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 1
        }
      ],
      "updatedUtc": "2026-10-14T21:40:48.036Z"
    }
    401 invalidKey, keyExpired, keyRevoked.
    JSON
    {
      "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/events/b3ac0000-0000-4000-8000-000000000001",
      "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."
    }

    Change an event Zmienia dane

    PATCH/events/{eventId}

    Changes an event's basics as a JSON merge patch: name, dates, time zone, venue, summary, description, contact address, languages. Send If-Match with the ETag you read, so a change made in between is not overwritten.

    Uprawnienia
    events:write
    • Wyślij If-Match z odczytanym ETagiem, aby nie nadpisać zmiany wprowadzonej w międzyczasie.

    Parametry

    ścieżka

    • eventIdstring (uuid)wymagane

      The event's id.

    nagłówek

    • If-Matchstring

      The ETag you read, so a change made since is refused (412) rather than overwritten.

    Treść EventPatch

    The fields to change.

    • namestring

      Its name.

    • startDatestring (date)

      The first day, at the venue.

    • endDatestring (date)

      The last day, at the venue.

    • timeZonestring

      The venue's IANA time zone.

    • slugstring

      Its address after /e/. Changing it breaks links people already have.

    • venueNamestring lub null

      Where it takes place.

    • venueAddressstring lub null

      The venue's address.

    • summarystring lub null

      One or two sentences about it.

    • descriptionstring lub null

      What it is about, in Markdown.

    • contactEmailstring lub null

      Where attendees' questions go.

    • languagesstring[]

      Its languages, the first the default.

    Odpowiedzi

    • 200 The event as it is now. EventDetail
      Pola
      • eventobject

        The event as its public page shows it, with its registration questions and theme as well.

        Pokaż pola
        • eventIdstring (uuid)

          The event's id.

        • slugstring

          The event's address: /e/{slug}.

        • namestring

          The event's name.

        • statusstring

          Draft, published or closed.

        • startDatestring (date)

          The first day, in the venue's time zone.

        • endDatestring (date)

          The last day, in the venue's time zone.

        • timeZonestring

          The venue's time zone, such as Europe/Amsterdam.

        • venueNamestring

          Where it is.

        • venueAddressstring

          The venue's address.

        • summarystring

          A line about the event.

        • descriptionstring

          What the event is about.

        • languagesstring[]

          The event's languages, such as en and nl.

        • currencystring

          The currency, as ISO 4217.

        • contactEmailstring (email)

          The organiser's contact address.

        • formatstring

          In person, online or hybrid.

      • programmeobject lub null

        Rooms, tracks, sessions, speakers and sponsors. Null without program:read.

        Pokaż pola
        • roomsobject[]

          The rooms.

          Pokaż pola
          • roomIdstring (uuid)

            The room's id.

          • namestring

            The room's name.

          • locationstring

            Where the room is.

          • capacityinteger

            How many it seats.

        • tracksobject[]

          The tracks.

          Pokaż pola
          • trackIdstring (uuid)

            The track's id.

          • namestring

            The track's name.

          • colourstring

            The track's colour.

        • sessionsobject[]

          The sessions.

          Pokaż pola
          • sessionIdstring (uuid)

            The session's id.

          • titlestring

            The session's title.

          • summarystring

            What it is about.

          • kindstring

            Talk, workshop, break and others.

          • roomIdstring (uuid)

            The room's id.

          • trackIdstring (uuid)

            The track's id.

          • startsUtcstring (date-time)

            When it starts, in UTC.

          • endsUtcstring (date-time)

            When it ends, in UTC.

          • startsLocalstring

            When it starts, in the venue's time.

          • endsLocalstring

            When it ends, in the venue's time.

          • capacityinteger

            How many it seats, when fewer than its room.

          • languagestring

            The language it is given in.

        • speakersobject[]

          The speakers.

          Pokaż pola
          • speakerIdstring (uuid)

            The speaker's id.

          • namestring

            The speaker's name.

          • jobTitlestring

            Their job title.

          • companystring

            Their company.

          • biostring

            About them.

          • photoUrlstring

            Their photo's address.

        • sponsorsobject[]

          The sponsors.

          Pokaż pola
          • sponsorIdstring (uuid)

            The sponsor's id.

          • namestring

            The sponsor's name.

          • tierstring

            Their sponsorship level.

          • websitestring

            Their website.

          • boothstring

            Their stand.

      • ticketTypesTicketType[] lub null

        The ticket types and what is sold. Null without tickets:read.

        Pokaż pola
        • ticketTypeIdstring (uuid)

          The ticket type's id.

        • namestring

          Its name.

        • descriptionstring

          What it includes.

        • pricenumber

          The price, VAT included, with the currency's own decimals.

        • vatRatenumber

          The VAT rate, as a percentage.

        • currencystring

          The currency, as ISO 4217.

        • capacityinteger lub null

          How many may be sold, when limited.

        • takeninteger

          How many are taken.

        • maxPerOrderinteger

          The most one order may hold.

        • visibilitystring

          Public, code (sold with an access code) or hidden.

          Jedno z: public, code, hidden

        • salesStartUtcstring (date-time)

          When sales start, in UTC.

        • salesEndUtcstring (date-time)

          When sales end, in UTC.

        • sortOrderinteger

          Its place in the list.

        • eventIdstring (uuid)

          The event's id.

        • remaininginteger (int32) lub null

          Places left, or null without a limit.

        • requiresApprovalboolean

          Whether an order for it waits for the organiser's approval.

        • salesStartLocalstring lub null

          When sales start, in the venue's time.

        • salesEndLocalstring lub null

          When sales end, in the venue's time.

        • includedAddOnIdsstring (uuid)[]

          The add-ons it includes, as a bundle.

        • updatedUtcstring (date-time) lub null

          When it last changed, in UTC.

      • updatedUtcstring (date-time)

        When the event's basics last changed, in UTC.

    • 400 invalidBody, invalidRequest.
    • 401 invalidKey, keyExpired, keyRevoked.
    • 403 missingScope, demoWorkspace.
    • 404 eventNotFound.
    • 409 slugTaken.
    • 412 preconditionFailed.
    • 429 rateLimited.

    Odmowy

    invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound invalidBody invalidRequest demoWorkspace preconditionFailed slugTaken

    Żądanie

    curl -X PATCH "https://attendbeacon.com/api/v1/events/b3ac0000-0000-4000-8000-000000000001" \
      -H "Authorization: Bearer $ATTENDBEACON_KEY" \
      -H "If-Match: $ETAG" \
      -H "Content-Type: application/json" \
      -d '{
      "venueName": "Beurs van Berlage",
      "summary": "Two days of cloud, data and AI in Amsterdam."
    }'

    200 Przykładowa odpowiedź

    JSON
    {
      "event": {
        "eventId": "b3ac0000-0000-4000-8000-000000000001",
        "slug": "beacon-summit",
        "name": "Beacon Summit",
        "status": "published",
        "startDate": "2026-11-12",
        "endDate": "2026-11-13",
        "timeZone": "Europe/Amsterdam",
        "venueName": "Beurs van Berlage",
        "venueAddress": "Damrak 243, 1012 ZJ Amsterdam",
        "summary": "Two days on building, shipping and running software, in the old stock exchange on the Damrak.",
        "description": "Beacon Summit brings together the people who build software and the people who run it. Two days, four rooms, thirty sessions, and a long table for lunch.\n\n**Bring your laptop** for the workshops on day two.",
        "languages": [
          "en",
          "nl"
        ],
        "currency": "EUR",
        "contactEmail": "hello@beaconsummit.example",
        "theme": {
          "accent": "#4338ca",
          "highlight": "#f59e0b",
          "darkAccent": "#a5b4fc",
          "darkHighlight": "#fbbf24",
          "background": null,
          "surface": null,
          "mode": "auto",
          "font": "Inter",
          "headingFont": "Sora",
          "headingWeight": "heavy",
          "headingSpacing": "tight",
          "radius": 16,
          "buttonStyle": "filled",
          "buttonShape": "pill",
          "cardStyle": "glass",
          "headerStyle": "transparent",
          "logoUrl": null,
          "logoDarkUrl": null,
          "logoSize": "medium",
          "iconUrl": null,
          "heroUrl": "/media/f0de0000000040008000000000000001/b3ac001e000040008000000000000000.jpg",
          "heroLayout": "image",
          "heroVideoUrl": null,
          "heroOverlay": 50,
          "countdown": true,
          "backgroundStyle": "aurora",
          "pattern": "beacons",
          "backgroundUrl": null,
          "backgroundOverlay": 75,
          "motion": "subtle",
          "preset": null,
          "customCss": null,
          "accentInk": "#ffffff",
          "highlightInk": "#0f1b2d"
        },
        "registration": {
          "schemaVersion": 1,
          "askCompany": true,
          "askJobTitle": true,
          "companyRequired": false,
          "askSponsorConsent": true,
          "questions": [
            {
              "id": "dietary",
              "kind": "choice",
              "label": {
                "en": "Dietary requirements",
                "nl": "Dieetwensen",
                "de": "Ernährungswünsche",
                "es": "Requisitos alimentarios",
                "da": "Kostbehov",
                "fr": "Régime alimentaire",
                "fi": "Ruokavalio",
                "nb": "Kostbehov",
                "pt": "Restrições alimentares",
                "sv": "Kostönskemål",
                "pl": "Wymagania dietetyczne"
              },
              "required": false,
              "options": [
                {
                  "value": "none",
                  "label": {
                    "en": "None",
                    "nl": "Geen",
                    "de": "Keine",
                    "es": "Ninguno",
                    "da": "Ingen",
                    "fr": "Aucun",
                    "fi": "Ei mitään",
                    "nb": "Ingen",
                    "pt": "Nenhuma",
                    "sv": "Inga",
                    "pl": "Brak"
                  }
                },
                {
                  "value": "vegetarian",
                  "label": {
                    "en": "Vegetarian",
                    "nl": "Vegetarisch",
                    "de": "Vegetarisch",
                    "es": "Vegetariano",
                    "da": "Vegetar",
                    "fr": "Végétarien",
                    "fi": "Kasvis",
                    "nb": "Vegetar",
                    "pt": "Vegetariano",
                    "sv": "Vegetarisk",
                    "pl": "Wegetariańskie"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            },
            {
              "id": "interests",
              "kind": "multiChoice",
              "label": {
                "en": "What are you here for?",
                "nl": "Waarvoor kom je?",
                "de": "Weshalb kommst du?",
                "es": "¿Qué te trae aquí?",
                "da": "Hvad kommer du for?",
                "fr": "Qu’est-ce qui vous amène ?",
                "fi": "Mitä varten tulet?",
                "nb": "Hva kommer du for?",
                "pt": "O que o traz cá?",
                "sv": "Vad kommer du för?",
                "pl": "Co cię tu sprowadza?"
              },
              "required": false,
              "options": [
                {
                  "value": "cloud",
                  "label": {
                    "en": "Cloud and AI",
                    "nl": "Cloud en AI",
                    "de": "Cloud und KI",
                    "es": "Nube e IA",
                    "da": "Cloud og AI",
                    "fr": "Cloud et IA",
                    "fi": "Pilvi ja tekoäly",
                    "nb": "Sky og KI",
                    "pt": "Cloud e IA",
                    "sv": "Moln och AI",
                    "pl": "Chmura i AI"
                  }
                },
                {
                  "value": "product",
                  "label": {
                    "en": "Product",
                    "nl": "Product",
                    "de": "Produkt",
                    "es": "Producto",
                    "da": "Produkt",
                    "fr": "Produit",
                    "fi": "Tuote",
                    "nb": "Produkt",
                    "pt": "Produto",
                    "sv": "Produkt",
                    "pl": "Produkt"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            }
          ]
        },
        "paymentProvider": null,
        "updatedUtc": null,
        "format": "inPerson",
        "capabilities": {
          "doors": true,
          "badges": true,
          "screens": true,
          "venue": true,
          "selfCheckIn": true,
          "boothScanning": true,
          "boothRedemption": true,
          "walletPass": true,
          "crewOnSite": true,
          "meetingTables": true,
          "onlineAccess": false,
          "venueMap": true
        },
        "modules": [
          "payments",
          "addons"
        ],
        "modulesChosen": null,
        "online": null
      },
      "programme": {
        "rooms": [
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "name": "Main Hall",
            "location": "Ground floor, straight ahead",
            "capacity": 600,
            "sortOrder": 0
          },
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000001",
            "name": "Graanbeurs",
            "location": "Ground floor, left wing",
            "capacity": 220,
            "sortOrder": 1
          }
        ],
        "tracks": [
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000000",
            "name": "Cloud & AI",
            "colour": "#2b8fd0",
            "sortOrder": 0
          },
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000001",
            "name": "Product",
            "colour": "#c2410c",
            "sortOrder": 1
          }
        ],
        "sessions": [
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000000",
            "title": "Registration and coffee",
            "summary": null,
            "kind": "other",
            "roomId": null,
            "trackId": null,
            "startsUtc": "2026-11-12T07:30:00.000Z",
            "endsUtc": "2026-11-12T08:30:00.000Z",
            "startsLocal": "2026-11-12T08:30",
            "endsLocal": "2026-11-12T09:30",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": []
          },
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000001",
            "title": "Opening keynote: software that finds its way",
            "summary": "Opening keynote: software that finds its way. What worked, what did not, and what to try on Monday.",
            "kind": "keynote",
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "trackId": null,
            "startsUtc": "2026-11-12T08:30:00.000Z",
            "endsUtc": "2026-11-12T09:15:00.000Z",
            "startsLocal": "2026-11-12T09:30",
            "endsLocal": "2026-11-12T10:15",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": [
              "b3ac0003-0000-4000-8000-000000000009"
            ]
          }
        ],
        "speakers": [
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000000",
            "name": "Ada Verhoeven",
            "jobTitle": "Principal Engineer",
            "company": "Northwind Cloud",
            "bio": "Ada builds the platforms other engineers build on, and writes about what breaks.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000000.jpg",
            "email": null,
            "links": [],
            "sortOrder": 0
          },
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000001",
            "name": "Malik Osei",
            "jobTitle": "VP Product",
            "company": "Contoso",
            "bio": "Malik has shipped products in four countries and still reads every support ticket.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000001.jpg",
            "email": null,
            "links": [],
            "sortOrder": 1
          }
        ],
        "sponsors": [
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000000",
            "name": "Northwind Cloud",
            "tier": "Platinum",
            "tierOrder": 0,
            "website": "https://northwindcloud.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000000.png",
            "description": "The cloud for teams who would rather be building.",
            "booth": "A1",
            "sortOrder": 0
          },
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000001",
            "name": "Contoso",
            "tier": "Gold",
            "tierOrder": 1,
            "website": "https://contoso.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000001.png",
            "description": "Software for the way people work now.",
            "booth": "B2",
            "sortOrder": 1
          }
        ]
      },
      "ticketTypes": [
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000000",
          "name": "Community pass",
          "description": "Both days, lunch included. Free for members of a local user group.",
          "price": 0,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 300,
          "taken": 24,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 0
        },
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000001",
          "name": "Conference pass",
          "description": "Both days, lunch and drinks. A workshop seat is booked as an extra.",
          "price": 395,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 500,
          "taken": 38,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 1
        }
      ],
      "updatedUtc": "2026-10-14T21:40:48.036Z"
    }
    400 invalidBody, invalidRequest.
    JSON
    {
      "type": "https://attendbeacon.com/developers/errors#invalidBody",
      "title": "The body is not readable",
      "status": 400,
      "detail": "The body is not JSON, or a field has the wrong type.",
      "instance": "/api/v1/events/b3ac0000-0000-4000-8000-000000000001",
      "code": "invalidBody",
      "traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
      "error": "The body is not JSON, or a field has the wrong type."
    }

    Publish or unpublish an event Zmienia dane

    PUT/events/{eventId}/status

    Publishes an event, takes it back to draft or closes it, by the workspace's rules. Publishing makes its page public and opens registration as its ticket types allow.

    Uprawnienia
    events:write
    • Wyślij If-Match z odczytanym ETagiem, aby nie nadpisać zmiany wprowadzonej w międzyczasie.

    Parametry

    ścieżka

    • eventIdstring (uuid)wymagane

      The event's id.

    nagłówek

    • If-Matchstring

      The ETag you read, so a change made since is refused (412) rather than overwritten.

    Treść EventStatusChange

    The status.

    • statusstringwymagane

      Draft (only the workspace sees it), published (its page is public and registration follows its ticket types) or closed (over: the page stays, registration stops).

      Jedno z: draft, published, closed

    Odpowiedzi

    • 200 The event as it is now. EventDetail
      Pola
      • eventobject

        The event as its public page shows it, with its registration questions and theme as well.

        Pokaż pola
        • eventIdstring (uuid)

          The event's id.

        • slugstring

          The event's address: /e/{slug}.

        • namestring

          The event's name.

        • statusstring

          Draft, published or closed.

        • startDatestring (date)

          The first day, in the venue's time zone.

        • endDatestring (date)

          The last day, in the venue's time zone.

        • timeZonestring

          The venue's time zone, such as Europe/Amsterdam.

        • venueNamestring

          Where it is.

        • venueAddressstring

          The venue's address.

        • summarystring

          A line about the event.

        • descriptionstring

          What the event is about.

        • languagesstring[]

          The event's languages, such as en and nl.

        • currencystring

          The currency, as ISO 4217.

        • contactEmailstring (email)

          The organiser's contact address.

        • formatstring

          In person, online or hybrid.

      • programmeobject lub null

        Rooms, tracks, sessions, speakers and sponsors. Null without program:read.

        Pokaż pola
        • roomsobject[]

          The rooms.

          Pokaż pola
          • roomIdstring (uuid)

            The room's id.

          • namestring

            The room's name.

          • locationstring

            Where the room is.

          • capacityinteger

            How many it seats.

        • tracksobject[]

          The tracks.

          Pokaż pola
          • trackIdstring (uuid)

            The track's id.

          • namestring

            The track's name.

          • colourstring

            The track's colour.

        • sessionsobject[]

          The sessions.

          Pokaż pola
          • sessionIdstring (uuid)

            The session's id.

          • titlestring

            The session's title.

          • summarystring

            What it is about.

          • kindstring

            Talk, workshop, break and others.

          • roomIdstring (uuid)

            The room's id.

          • trackIdstring (uuid)

            The track's id.

          • startsUtcstring (date-time)

            When it starts, in UTC.

          • endsUtcstring (date-time)

            When it ends, in UTC.

          • startsLocalstring

            When it starts, in the venue's time.

          • endsLocalstring

            When it ends, in the venue's time.

          • capacityinteger

            How many it seats, when fewer than its room.

          • languagestring

            The language it is given in.

        • speakersobject[]

          The speakers.

          Pokaż pola
          • speakerIdstring (uuid)

            The speaker's id.

          • namestring

            The speaker's name.

          • jobTitlestring

            Their job title.

          • companystring

            Their company.

          • biostring

            About them.

          • photoUrlstring

            Their photo's address.

        • sponsorsobject[]

          The sponsors.

          Pokaż pola
          • sponsorIdstring (uuid)

            The sponsor's id.

          • namestring

            The sponsor's name.

          • tierstring

            Their sponsorship level.

          • websitestring

            Their website.

          • boothstring

            Their stand.

      • ticketTypesTicketType[] lub null

        The ticket types and what is sold. Null without tickets:read.

        Pokaż pola
        • ticketTypeIdstring (uuid)

          The ticket type's id.

        • namestring

          Its name.

        • descriptionstring

          What it includes.

        • pricenumber

          The price, VAT included, with the currency's own decimals.

        • vatRatenumber

          The VAT rate, as a percentage.

        • currencystring

          The currency, as ISO 4217.

        • capacityinteger lub null

          How many may be sold, when limited.

        • takeninteger

          How many are taken.

        • maxPerOrderinteger

          The most one order may hold.

        • visibilitystring

          Public, code (sold with an access code) or hidden.

          Jedno z: public, code, hidden

        • salesStartUtcstring (date-time)

          When sales start, in UTC.

        • salesEndUtcstring (date-time)

          When sales end, in UTC.

        • sortOrderinteger

          Its place in the list.

        • eventIdstring (uuid)

          The event's id.

        • remaininginteger (int32) lub null

          Places left, or null without a limit.

        • requiresApprovalboolean

          Whether an order for it waits for the organiser's approval.

        • salesStartLocalstring lub null

          When sales start, in the venue's time.

        • salesEndLocalstring lub null

          When sales end, in the venue's time.

        • includedAddOnIdsstring (uuid)[]

          The add-ons it includes, as a bundle.

        • updatedUtcstring (date-time) lub null

          When it last changed, in UTC.

      • updatedUtcstring (date-time)

        When the event's basics last changed, in UTC.

    • 400 invalidBody, invalidRequest.
    • 401 invalidKey, keyExpired, keyRevoked.
    • 403 missingScope, demoWorkspace.
    • 404 eventNotFound.
    • 409 historyNeedsLicence.
    • 412 preconditionFailed.
    • 429 rateLimited.

    Odmowy

    invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound invalidBody invalidRequest demoWorkspace preconditionFailed historyNeedsLicence

    Żądanie

    curl -X PUT "https://attendbeacon.com/api/v1/events/b3ac0000-0000-4000-8000-000000000001/status" \
      -H "Authorization: Bearer $ATTENDBEACON_KEY" \
      -H "Content-Type: application/json" \
      -d '{
      "status": "published"
    }'

    200 Przykładowa odpowiedź

    JSON
    {
      "event": {
        "eventId": "b3ac0000-0000-4000-8000-000000000001",
        "slug": "beacon-summit",
        "name": "Beacon Summit",
        "status": "published",
        "startDate": "2026-11-12",
        "endDate": "2026-11-13",
        "timeZone": "Europe/Amsterdam",
        "venueName": "Beurs van Berlage",
        "venueAddress": "Damrak 243, 1012 ZJ Amsterdam",
        "summary": "Two days on building, shipping and running software, in the old stock exchange on the Damrak.",
        "description": "Beacon Summit brings together the people who build software and the people who run it. Two days, four rooms, thirty sessions, and a long table for lunch.\n\n**Bring your laptop** for the workshops on day two.",
        "languages": [
          "en",
          "nl"
        ],
        "currency": "EUR",
        "contactEmail": "hello@beaconsummit.example",
        "theme": {
          "accent": "#4338ca",
          "highlight": "#f59e0b",
          "darkAccent": "#a5b4fc",
          "darkHighlight": "#fbbf24",
          "background": null,
          "surface": null,
          "mode": "auto",
          "font": "Inter",
          "headingFont": "Sora",
          "headingWeight": "heavy",
          "headingSpacing": "tight",
          "radius": 16,
          "buttonStyle": "filled",
          "buttonShape": "pill",
          "cardStyle": "glass",
          "headerStyle": "transparent",
          "logoUrl": null,
          "logoDarkUrl": null,
          "logoSize": "medium",
          "iconUrl": null,
          "heroUrl": "/media/f0de0000000040008000000000000001/b3ac001e000040008000000000000000.jpg",
          "heroLayout": "image",
          "heroVideoUrl": null,
          "heroOverlay": 50,
          "countdown": true,
          "backgroundStyle": "aurora",
          "pattern": "beacons",
          "backgroundUrl": null,
          "backgroundOverlay": 75,
          "motion": "subtle",
          "preset": null,
          "customCss": null,
          "accentInk": "#ffffff",
          "highlightInk": "#0f1b2d"
        },
        "registration": {
          "schemaVersion": 1,
          "askCompany": true,
          "askJobTitle": true,
          "companyRequired": false,
          "askSponsorConsent": true,
          "questions": [
            {
              "id": "dietary",
              "kind": "choice",
              "label": {
                "en": "Dietary requirements",
                "nl": "Dieetwensen",
                "de": "Ernährungswünsche",
                "es": "Requisitos alimentarios",
                "da": "Kostbehov",
                "fr": "Régime alimentaire",
                "fi": "Ruokavalio",
                "nb": "Kostbehov",
                "pt": "Restrições alimentares",
                "sv": "Kostönskemål",
                "pl": "Wymagania dietetyczne"
              },
              "required": false,
              "options": [
                {
                  "value": "none",
                  "label": {
                    "en": "None",
                    "nl": "Geen",
                    "de": "Keine",
                    "es": "Ninguno",
                    "da": "Ingen",
                    "fr": "Aucun",
                    "fi": "Ei mitään",
                    "nb": "Ingen",
                    "pt": "Nenhuma",
                    "sv": "Inga",
                    "pl": "Brak"
                  }
                },
                {
                  "value": "vegetarian",
                  "label": {
                    "en": "Vegetarian",
                    "nl": "Vegetarisch",
                    "de": "Vegetarisch",
                    "es": "Vegetariano",
                    "da": "Vegetar",
                    "fr": "Végétarien",
                    "fi": "Kasvis",
                    "nb": "Vegetar",
                    "pt": "Vegetariano",
                    "sv": "Vegetarisk",
                    "pl": "Wegetariańskie"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            },
            {
              "id": "interests",
              "kind": "multiChoice",
              "label": {
                "en": "What are you here for?",
                "nl": "Waarvoor kom je?",
                "de": "Weshalb kommst du?",
                "es": "¿Qué te trae aquí?",
                "da": "Hvad kommer du for?",
                "fr": "Qu’est-ce qui vous amène ?",
                "fi": "Mitä varten tulet?",
                "nb": "Hva kommer du for?",
                "pt": "O que o traz cá?",
                "sv": "Vad kommer du för?",
                "pl": "Co cię tu sprowadza?"
              },
              "required": false,
              "options": [
                {
                  "value": "cloud",
                  "label": {
                    "en": "Cloud and AI",
                    "nl": "Cloud en AI",
                    "de": "Cloud und KI",
                    "es": "Nube e IA",
                    "da": "Cloud og AI",
                    "fr": "Cloud et IA",
                    "fi": "Pilvi ja tekoäly",
                    "nb": "Sky og KI",
                    "pt": "Cloud e IA",
                    "sv": "Moln och AI",
                    "pl": "Chmura i AI"
                  }
                },
                {
                  "value": "product",
                  "label": {
                    "en": "Product",
                    "nl": "Product",
                    "de": "Produkt",
                    "es": "Producto",
                    "da": "Produkt",
                    "fr": "Produit",
                    "fi": "Tuote",
                    "nb": "Produkt",
                    "pt": "Produto",
                    "sv": "Produkt",
                    "pl": "Produkt"
                  }
                }
              ],
              "ticketTypes": [],
              "onBadge": false,
              "fileTypes": [],
              "maxMegabytes": 10
            }
          ]
        },
        "paymentProvider": null,
        "updatedUtc": null,
        "format": "inPerson",
        "capabilities": {
          "doors": true,
          "badges": true,
          "screens": true,
          "venue": true,
          "selfCheckIn": true,
          "boothScanning": true,
          "boothRedemption": true,
          "walletPass": true,
          "crewOnSite": true,
          "meetingTables": true,
          "onlineAccess": false,
          "venueMap": true
        },
        "modules": [
          "payments",
          "addons"
        ],
        "modulesChosen": null,
        "online": null
      },
      "programme": {
        "rooms": [
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "name": "Main Hall",
            "location": "Ground floor, straight ahead",
            "capacity": 600,
            "sortOrder": 0
          },
          {
            "roomId": "b3ac0001-0000-4000-8000-000000000001",
            "name": "Graanbeurs",
            "location": "Ground floor, left wing",
            "capacity": 220,
            "sortOrder": 1
          }
        ],
        "tracks": [
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000000",
            "name": "Cloud & AI",
            "colour": "#2b8fd0",
            "sortOrder": 0
          },
          {
            "trackId": "b3ac0002-0000-4000-8000-000000000001",
            "name": "Product",
            "colour": "#c2410c",
            "sortOrder": 1
          }
        ],
        "sessions": [
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000000",
            "title": "Registration and coffee",
            "summary": null,
            "kind": "other",
            "roomId": null,
            "trackId": null,
            "startsUtc": "2026-11-12T07:30:00.000Z",
            "endsUtc": "2026-11-12T08:30:00.000Z",
            "startsLocal": "2026-11-12T08:30",
            "endsLocal": "2026-11-12T09:30",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": []
          },
          {
            "sessionId": "b3ac0004-0000-4000-8000-000000000001",
            "title": "Opening keynote: software that finds its way",
            "summary": "Opening keynote: software that finds its way. What worked, what did not, and what to try on Monday.",
            "kind": "keynote",
            "roomId": "b3ac0001-0000-4000-8000-000000000000",
            "trackId": null,
            "startsUtc": "2026-11-12T08:30:00.000Z",
            "endsUtc": "2026-11-12T09:15:00.000Z",
            "startsLocal": "2026-11-12T09:30",
            "endsLocal": "2026-11-12T10:15",
            "capacity": null,
            "onlineUrl": null,
            "joinProvider": null,
            "language": null,
            "speakerIds": [
              "b3ac0003-0000-4000-8000-000000000009"
            ]
          }
        ],
        "speakers": [
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000000",
            "name": "Ada Verhoeven",
            "jobTitle": "Principal Engineer",
            "company": "Northwind Cloud",
            "bio": "Ada builds the platforms other engineers build on, and writes about what breaks.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000000.jpg",
            "email": null,
            "links": [],
            "sortOrder": 0
          },
          {
            "speakerId": "b3ac0003-0000-4000-8000-000000000001",
            "name": "Malik Osei",
            "jobTitle": "VP Product",
            "company": "Contoso",
            "bio": "Malik has shipped products in four countries and still reads every support ticket.",
            "photoUrl": "/media/f0de0000000040008000000000000001/b3ac00fa000040008000000000000001.jpg",
            "email": null,
            "links": [],
            "sortOrder": 1
          }
        ],
        "sponsors": [
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000000",
            "name": "Northwind Cloud",
            "tier": "Platinum",
            "tierOrder": 0,
            "website": "https://northwindcloud.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000000.png",
            "description": "The cloud for teams who would rather be building.",
            "booth": "A1",
            "sortOrder": 0
          },
          {
            "sponsorId": "b3ac0005-0000-4000-8000-000000000001",
            "name": "Contoso",
            "tier": "Gold",
            "tierOrder": 1,
            "website": "https://contoso.example",
            "logoUrl": "/media/f0de0000000040008000000000000001/b3ac00fb000040008000000000000001.png",
            "description": "Software for the way people work now.",
            "booth": "B2",
            "sortOrder": 1
          }
        ]
      },
      "ticketTypes": [
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000000",
          "name": "Community pass",
          "description": "Both days, lunch included. Free for members of a local user group.",
          "price": 0,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 300,
          "taken": 24,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 0
        },
        {
          "ticketTypeId": "b3ac0006-0000-4000-8000-000000000001",
          "name": "Conference pass",
          "description": "Both days, lunch and drinks. A workshop seat is booked as an extra.",
          "price": 395,
          "vatRate": 21,
          "currency": "EUR",
          "capacity": 500,
          "taken": 38,
          "maxPerOrder": 10,
          "visibility": "public",
          "salesStartUtc": null,
          "salesEndUtc": "2026-11-13T11:00:00.000Z",
          "sortOrder": 1
        }
      ],
      "updatedUtc": "2026-10-14T21:40:48.036Z"
    }
    400 invalidBody, invalidRequest.
    JSON
    {
      "type": "https://attendbeacon.com/developers/errors#invalidBody",
      "title": "The body is not readable",
      "status": 400,
      "detail": "The body is not JSON, or a field has the wrong type.",
      "instance": "/api/v1/events/b3ac0000-0000-4000-8000-000000000001/status",
      "code": "invalidBody",
      "traceId": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
      "error": "The body is not JSON, or a field has the wrong type."
    }

    Get event statistics

    GET/events/{eventId}/stats

    Gets an event's numbers at a glance: registrations against capacity, pending and cancelled tickets, check-ins, the programme's size and, with orders:read, revenue.

    Uprawnienia
    events:read

      Parametry

      ścieżka

      • eventIdstring (uuid)wymagane

        The event's id.

      Odpowiedzi

      • 200 The numbers. EventStats
        Pola
        • eventIdstring (uuid)

          The event's id.

        • namestring

          Its name.

        • statusstring

          Draft, published or closed.

        • timeZonestring

          The venue's time zone.

        • startDatestring (date)

          The first day.

        • endDatestring (date)

          The last day.

        • daysToGointeger (int32)

          Days until the first day; 0 once it has begun.

        • phasestring

          Before, during or after the event, at the venue.

          Jedno z: before, during, after

        • formatstring

          InPerson, online or hybrid.

        • registrationsobject

          Who holds a ticket.

          Pokaż pola
          • registeredinteger (int32)

            Valid tickets, crew left out.

          • pendinginteger (int32)

            Tickets in orders waiting for payment, a bank transfer or approval.

          • cancelledinteger (int32)

            Cancelled tickets.

          • crewinteger (int32)

            Crew tickets.

          • capacityinteger (int32) lub null

            Places in all ticket types, or null when one has no limit.

          • remaininginteger (int32) lub null

            Places left, or null without a limit.

          • fillnumber lub null

            Registered and pending as a percentage of capacity.

        • checkInsobject

          Who came in.

          Pokaż pola
          • checkedIninteger (int32)

            Valid tickets checked in at the main entrance.

          • ratenumber lub null

            As a percentage of registered.

        • programmeobject

          The programme's size.

          Pokaż pola
          • sessionsinteger (int32)

            Sessions.

          • speakersinteger (int32)

            Speakers.

          • sponsorsinteger (int32)

            Sponsors; 0 when the Sponsors module is off.

        • moneyobject lub null

          With orders:read: what paid orders came to.

          Pokaż pola
          • currencystring

            ISO 4217.

          • revenuenumber

            Paid and on-account orders, VAT included. With the currency's own decimals: 147.00 in EUR, 147 in JPY, 147.000 in KWD.

          • vatnumber

            The VAT in it. With the currency's own decimals: 147.00 in EUR, 147 in JPY, 147.000 in KWD.

          • paidOrdersinteger (int32)

            Orders paid.

        • modulesstring[]

          The modules switched on.

      • 401 invalidKey, keyExpired, keyRevoked.
      • 403 missingScope.
      • 404 eventNotFound.
      • 429 rateLimited.

      Odmowy

      invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound

      Żądanie

      curl "https://attendbeacon.com/api/v1/events/b3ac0000-0000-4000-8000-000000000001/stats" \
        -H "Authorization: Bearer $ATTENDBEACON_KEY"

      200 Przykładowa odpowiedź

      JSON
      {
        "eventId": "b3ac0000-0000-4000-8000-000000000001",
        "name": "Beacon Summit",
        "status": "published",
        "timeZone": "Europe/Amsterdam",
        "startDate": "2026-11-12",
        "endDate": "2026-11-13",
        "daysToGo": 29,
        "phase": "before",
        "format": "inPerson",
        "registrations": {
          "registered": 74,
          "pending": 8,
          "cancelled": 0,
          "crew": 12,
          "capacity": null,
          "remaining": null,
          "fill": null
        },
        "checkIns": {
          "checkedIn": 0,
          "rate": 0
        },
        "programme": {
          "sessions": 30,
          "speakers": 11,
          "sponsors": 11
        },
        "money": {
          "currency": "EUR",
          "revenue": 15216.25,
          "vat": 2552.11,
          "paidOrders": 46
        },
        "modules": [
          "payments",
          "addons"
        ]
      }
      401 invalidKey, keyExpired, keyRevoked.
      JSON
      {
        "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/events/b3ac0000-0000-4000-8000-000000000001/stats",
        "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."
      }

      List registration questions

      GET/events/{eventId}/questions

      Lists the questions an event asks beyond name and email, with their ids, which an attendee's answers are keyed by.

      Uprawnienia
      events:read

        Parametry

        ścieżka

        • eventIdstring (uuid)wymagane

          The event's id.

        Odpowiedzi

        • 200 The questions. QuestionList
          Pola
          • dataQuestion[]

            The questions.

            Pokaż pola
            • idstring

              The question's id, which answers are keyed by.

            • kindstring

              What kind of answer it takes.

              Jedno z: text, longText, choice, multiChoice, yesNo, consent, phone, rating, scale, file

            • labelstring

              What is asked, in the event's first language.

            • requiredboolean

              Whether attendees have to answer it.

            • optionsobject[]

              The options of a choice.

              Pokaż pola
              • valuestring

                What is stored.

              • labelstring

                What is shown.

            • ticketTypesstring (uuid)[]

              The ticket types it is asked for; all when empty.

        • 401 invalidKey, keyExpired, keyRevoked.
        • 403 missingScope.
        • 404 eventNotFound.
        • 429 rateLimited.

        Odmowy

        invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound

        Żądanie

        curl "https://attendbeacon.com/api/v1/events/b3ac0000-0000-4000-8000-000000000001/questions" \
          -H "Authorization: Bearer $ATTENDBEACON_KEY"

        200 Przykładowa odpowiedź

        JSON
        {
          "data": [
            {
              "id": "dietary",
              "kind": "choice",
              "label": "Dietary requirements",
              "required": false,
              "options": [
                {
                  "value": "none",
                  "label": "None"
                },
                {
                  "value": "vegetarian",
                  "label": "Vegetarian"
                }
              ],
              "ticketTypes": []
            },
            {
              "id": "interests",
              "kind": "multiChoice",
              "label": "What are you here for?",
              "required": false,
              "options": [
                {
                  "value": "cloud",
                  "label": "Cloud and AI"
                },
                {
                  "value": "product",
                  "label": "Product"
                }
              ],
              "ticketTypes": []
            }
          ]
        }
        401 invalidKey, keyExpired, keyRevoked.
        JSON
        {
          "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/events/b3ac0000-0000-4000-8000-000000000001/questions",
          "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."
        }

        Get the answers schema

        GET/events/{eventId}/questions/schema

        Returns a JSON schema with one property per registration question, so a flow can show the event's own fields.

        Uprawnienia
        events:read

          Parametry

          ścieżka

          • eventIdstring (uuid)wymagane

            The event's id.

          zapytanie

          • purposestring

            Use input for the questions an organiser may answer on somebody's behalf, or output for every question.

            Jedno z: output, input

            Domyślnie: "output"

          Odpowiedzi

          • 200 The schema, under schema. AnswersSchema
            Pola
            • schemaobject

              The schema: an object with a property per question.

          • 401 invalidKey, keyExpired, keyRevoked.
          • 403 missingScope.
          • 404 eventNotFound.
          • 429 rateLimited.

          Odmowy

          invalidKey keyExpired keyRevoked rateLimited missingScope eventNotFound

          Żądanie

          curl "https://attendbeacon.com/api/v1/events/b3ac0000-0000-4000-8000-000000000001/questions/schema" \
            -H "Authorization: Bearer $ATTENDBEACON_KEY"
          401 invalidKey, keyExpired, keyRevoked.
          JSON
          {
            "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/events/b3ac0000-0000-4000-8000-000000000001/questions/schema",
            "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."
          }

          Przewodniki i ta witryna są w twoim języku. Opisy w samej dokumentacji API są po angielsku, tak jak mówi samo API.