Place2Book Developers
api@place2book.com

Events

An event is something people can buy tickets for, such as a concert or a talk. Each event belongs to an event maker and has one or more prices.

Event responses are wrapped Unlike other resources, an event is returned inside an event key, both on its own and in lists: {"event": {...}}.

The event object

Field Type Description
id integer Unique identifier.
seccode string Public code for the event, used in sales links.
name string Name of the event.
state string Lifecycle state. See Event states.
active boolean false when sales have been paused manually.
mute boolean When true, no emails are sent for the event.
description_short string Short description, at most 255 characters.
description_long string Long description, no length limit.
begin_at datetime When the event starts.
end_at datetime When the event ends.
sale_open_at datetime When ticket sales open. null unless a sales period has been set.
sale_close_at datetime When ticket sales close. null unless a sales period has been set.
capacity integer Total number of tickets. null if capacity is unlimited.
sold integer Number of tickets sold.
kultunaut_export boolean Whether the event is exported to kultunaut.dk.
kultunaut_age_group string Kultunaut age group: Alle, Børn, Unge, Voksne or Ældre.
kultunaut_picture_uri string Full URL of the picture shown on kultunaut.dk.
kultunaut_export_category string Kultunaut category. Contact us for the list of valid values.
waiting_list boolean Whether buyers can join a waiting list when the event is sold out. This does not mean the event is sold out right now.
passive boolean Only included, with the value true, when the event is passive.
meta_data.event_state string Simplified state: published (on sale now), pause (published but not on sale) or passive (anything else).
meta_data.sales_status string open, upcoming (sales open later) or closed.
meta_data.available_tickets integer or string Tickets left for sale, or "∞" if capacity is unlimited.
meta_data.scanned_tickets integer Number of tickets scanned at the entrance.
meta_data.deletable boolean Whether the event can be deleted.
links.prices string URL of the event’s prices.
links.sales_location string Public URL where buyers purchase tickets.
address object Venue. Left out if the event has no venue.
address.name string Venue name. Only included if set.
address.address1 string Street address.
address.address2 string Extra address line.
address.postal_code string Postal code.
address.city string City.
address.phone string Phone number.
address.country string ISO 3166-1 alpha-2 country code.
{
  "event": {
    "id": 12345678,
    "seccode": "c41f9a07b2",
    "name": "Eventbureauets første arrangement",
    "state": "published",
    "active": true,
    "mute": false,
    "description_short": "Det første arrangement som arrangeres af Eventbureauet",
    "description_long": "Kom og vær med til åbningen. Det bliver et brag af en fest!",
    "begin_at": "2026-12-05T19:00:00Z",
    "end_at": "2026-12-05T23:00:00Z",
    "sale_open_at": "2026-10-01T08:00:00Z",
    "sale_close_at": "2026-12-05T18:00:00Z",
    "capacity": 1500,
    "sold": 412,
    "kultunaut_export": true,
    "kultunaut_age_group": "Voksne",
    "kultunaut_picture_uri": "https://example.com/images/opening.jpg",
    "kultunaut_export_category": "Elektronisk",
    "waiting_list": false,
    "meta_data": {
      "event_state": "published",
      "sales_status": "open",
      "available_tickets": 1088,
      "scanned_tickets": 0,
      "deletable": false
    },
    "links": {
      "prices": "https://api.place2book.com/event_makers/1234567/events/12345678/prices",
      "sales_location": "https://www.place2book.com/da/sw2/sales/c41f9a07b2"
    },
    "address": {
      "name": "Herlev Bibliotek",
      "address1": "Nørrelundvej 5",
      "address2": "",
      "postal_code": "2730",
      "city": "Herlev",
      "phone": "+4570232550",
      "country": "DK"
    }
  }
}

Event states

State Meaning
draft Not on sale and not listed anywhere.
passive Not on sale, but exported to partners such as kultunaut.dk. Use this for events without ticket sales.
published Publicly available. Whether tickets can be bought depends on the sales period, active and availability.
held The event has taken place and sales are closed. Waiting for payout.
completed The event is settled and its accounts are closed.

List events

Returns all events of an event maker.

GET/event_makers/:event_maker_id/events

Query parameters

Parameter Type Description
event_begin_at_after datetime Only events that begin at or after this time.
event_begin_at_before datetime Only events that begin at or before this time.
page integer Page number, starting at 1. Turns on paging.
per_page integer Events per page when paging. Defaults to 200.

Without page or per_page, every matching event is returned in one response.

GET /event_makers/1234567/events?event_begin_at_after=2026-12-01T00:00:00Z&page=1&per_page=50
Response200 OK
[
  {
    "event": {
      "id": 12345678,
      "seccode": "c41f9a07b2",
      "name": "Eventbureauets første arrangement",
      "state": "published",
      "active": true,
      "mute": false,
      "description_short": "Det første arrangement som arrangeres af Eventbureauet",
      "description_long": "Kom og vær med til åbningen. Det bliver et brag af en fest!",
      "begin_at": "2026-12-05T19:00:00Z",
      "end_at": "2026-12-05T23:00:00Z",
      "sale_open_at": "2026-10-01T08:00:00Z",
      "sale_close_at": "2026-12-05T18:00:00Z",
      "capacity": 1500,
      "sold": 412,
      "kultunaut_export": true,
      "kultunaut_age_group": "Voksne",
      "kultunaut_picture_uri": "https://example.com/images/opening.jpg",
      "kultunaut_export_category": "Elektronisk",
      "waiting_list": false,
      "meta_data": {
        "event_state": "published",
        "sales_status": "open",
        "available_tickets": 1088,
        "scanned_tickets": 0,
        "deletable": false
      },
      "links": {
        "prices": "https://api.place2book.com/event_makers/1234567/events/12345678/prices",
        "sales_location": "https://www.place2book.com/da/sw2/sales/c41f9a07b2"
      },
      "address": {
        "name": "Herlev Bibliotek",
        "address1": "Nørrelundvej 5",
        "address2": "",
        "postal_code": "2730",
        "city": "Herlev",
        "phone": "+4570232550",
        "country": "DK"
      }
    }
  }
]
Possible errors404 Not Found

Get an event

GET/event_makers/:event_maker_id/events/:event_id
Response200 OK
{
  "event": {
    "id": 12345678,
    "seccode": "c41f9a07b2",
    "name": "Eventbureauets første arrangement",
    "state": "published",
    "active": true,
    "mute": false,
    "description_short": "Det første arrangement som arrangeres af Eventbureauet",
    "description_long": "Kom og vær med til åbningen. Det bliver et brag af en fest!",
    "begin_at": "2026-12-05T19:00:00Z",
    "end_at": "2026-12-05T23:00:00Z",
    "sale_open_at": "2026-10-01T08:00:00Z",
    "sale_close_at": "2026-12-05T18:00:00Z",
    "capacity": 1500,
    "sold": 412,
    "kultunaut_export": true,
    "kultunaut_age_group": "Voksne",
    "kultunaut_picture_uri": "https://example.com/images/opening.jpg",
    "kultunaut_export_category": "Elektronisk",
    "waiting_list": false,
    "meta_data": {
      "event_state": "published",
      "sales_status": "open",
      "available_tickets": 1088,
      "scanned_tickets": 0,
      "deletable": false
    },
    "links": {
      "prices": "https://api.place2book.com/event_makers/1234567/events/12345678/prices",
      "sales_location": "https://www.place2book.com/da/sw2/sales/c41f9a07b2"
    },
    "address": {
      "name": "Herlev Bibliotek",
      "address1": "Nørrelundvej 5",
      "address2": "",
      "postal_code": "2730",
      "city": "Herlev",
      "phone": "+4570232550",
      "country": "DK"
    }
  }
}
Possible errors404 Not Found

Create an event

POST/event_makers/:event_maker_id/events

A new event is published straight away if it has all the information needed to go on sale. That means an end_at in the future, a capacity and at least one price. If something is missing, the event stays in draft. Send "passive": true to create a passive event.

Parameters

Parameter Type Description
name string required Name of the event.
begin_at datetime required When the event starts. Once tickets have been sold, the date cannot be moved earlier. The time of day can still change.
capacity integer or string required Total number of tickets, or "∞" for unlimited.
end_at datetime When the event ends. Needed to publish.
sale_open_at datetime When ticket sales open. Only used if sale_close_at is also sent.
sale_close_at datetime When ticket sales close. Only used if sale_open_at is also sent.
description_short string Short description. Longer text is cut at 255 characters.
description_long string Long description.
bank_account_id integer Bank account that receives the payout.
mute boolean Don’t send emails for this event. Defaults to false.
passive boolean Create the event as passive (no ticket sales).
reminder_sms_available boolean Let buyers opt in to an SMS reminder.
ticket_fee integer Ticket fee in øre.
kultunaut_export boolean Export the event to kultunaut.dk.
kultunaut_age_group string Alle, Børn, Unge, Voksne or Ældre.
kultunaut_picture_uri string Full URL of the picture for kultunaut.dk.
kultunaut_export_category string Kultunaut category. Contact us for valid values.
address object Venue, with name, address1, address2, postal_code, city, phone and country.
prices array Prices to create along with the event. Each entry takes the price parameters. Ignored for events with a seating plan.
Request body
{
  "event": {
    "name": "Eventbureauets første arrangement",
    "description_short": "Det første arrangement som arrangeres af Eventbureauet",
    "description_long": "Kom og vær med til åbningen. Det bliver et brag af en fest!",
    "begin_at": "2026-12-05T19:00:00Z",
    "end_at": "2026-12-05T23:00:00Z",
    "sale_open_at": "2026-10-01T08:00:00Z",
    "sale_close_at": "2026-12-05T18:00:00Z",
    "capacity": 1500,
    "bank_account_id": 7654321,
    "kultunaut_export": true,
    "kultunaut_age_group": "Voksne",
    "address": {
      "name": "Herlev Bibliotek",
      "address1": "Nørrelundvej 5",
      "postal_code": "2730",
      "city": "Herlev",
      "phone": "+4570232550",
      "country": "DK"
    },
    "prices": [
      {
        "name": "Voksen",
        "value": 15000,
        "maximum_count": 10
      },
      {
        "name": "Barn",
        "description": "Under 12 år",
        "value": 7500
      }
    ]
  }
}
Response201 Created
{
  "event": {
    "id": 12345678,
    "seccode": "c41f9a07b2",
    "name": "Eventbureauets første arrangement",
    "state": "published",
    "active": true,
    "mute": false,
    "description_short": "Det første arrangement som arrangeres af Eventbureauet",
    "description_long": "Kom og vær med til åbningen. Det bliver et brag af en fest!",
    "begin_at": "2026-12-05T19:00:00Z",
    "end_at": "2026-12-05T23:00:00Z",
    "sale_open_at": "2026-10-01T08:00:00Z",
    "sale_close_at": "2026-12-05T18:00:00Z",
    "capacity": 1500,
    "sold": 412,
    "kultunaut_export": true,
    "kultunaut_age_group": "Voksne",
    "kultunaut_picture_uri": "https://example.com/images/opening.jpg",
    "kultunaut_export_category": "Elektronisk",
    "waiting_list": false,
    "meta_data": {
      "event_state": "published",
      "sales_status": "open",
      "available_tickets": 1088,
      "scanned_tickets": 0,
      "deletable": false
    },
    "links": {
      "prices": "https://api.place2book.com/event_makers/1234567/events/12345678/prices",
      "sales_location": "https://www.place2book.com/da/sw2/sales/c41f9a07b2"
    },
    "address": {
      "name": "Herlev Bibliotek",
      "address1": "Nørrelundvej 5",
      "address2": "",
      "postal_code": "2730",
      "city": "Herlev",
      "phone": "+4570232550",
      "country": "DK"
    }
  }
}

Use the id in the response body to reach the event afterwards.

Update an event

PUT/event_makers/:event_maker_id/events/:event_id

Takes the same parameters as create. A draft event is published once it has the information it needs.

Send the complete event - An update sets every field from the request, and a field you leave out is cleared. Only address, end_at, ticket_fee and reminder_sms_available keep their current values when left out. - Send "passive": true on every update of a passive event. Without it, the event is published. - Any prices you send are added as new prices. To change existing prices, use the prices endpoints.

Response200 OK
{
  "event": {
    "id": 12345678,
    "seccode": "c41f9a07b2",
    "name": "Eventbureauets første arrangement",
    "state": "published",
    "active": true,
    "mute": false,
    "description_short": "Det første arrangement som arrangeres af Eventbureauet",
    "description_long": "Kom og vær med til åbningen. Det bliver et brag af en fest!",
    "begin_at": "2026-12-05T19:00:00Z",
    "end_at": "2026-12-05T23:00:00Z",
    "sale_open_at": "2026-10-01T08:00:00Z",
    "sale_close_at": "2026-12-05T18:00:00Z",
    "capacity": 1500,
    "sold": 412,
    "kultunaut_export": true,
    "kultunaut_age_group": "Voksne",
    "kultunaut_picture_uri": "https://example.com/images/opening.jpg",
    "kultunaut_export_category": "Elektronisk",
    "waiting_list": false,
    "meta_data": {
      "event_state": "published",
      "sales_status": "open",
      "available_tickets": 1088,
      "scanned_tickets": 0,
      "deletable": false
    },
    "links": {
      "prices": "https://api.place2book.com/event_makers/1234567/events/12345678/prices",
      "sales_location": "https://www.place2book.com/da/sw2/sales/c41f9a07b2"
    },
    "address": {
      "name": "Herlev Bibliotek",
      "address1": "Nørrelundvej 5",
      "address2": "",
      "postal_code": "2730",
      "city": "Herlev",
      "phone": "+4570232550",
      "country": "DK"
    }
  }
}

Delete an event

You can only delete an event while meta_data.deletable is true. That means it is in draft, passive or published and has no purchases.

DELETE/event_makers/:event_maker_id/events/:event_id
Response204 No Content