---
title: "List bookings"
method: GET
path: "/v1/locations/{locationId}/bookings"
tags: ["Bookings"]
---

# List bookings

`GET /v1/locations/{locationId}/bookings`

## Request

- Base URL: `https://api.cliento.com`
- URL: `https://api.cliento.com/v1/locations/{locationId}/bookings`
- Auth: HTTP bearer

The location's bookings that start in a period, in order of start time, one page at a time. The period is at most 62 days; read a longer one in several calls. Cancelled bookings are included, with `status` `cancelled`. A booking a customer has started online and not yet completed is not.

## Path parameters

- `locationId` string, required

## Query parameters

- `from` string, required
- `to` string, required
- `resourceId` string
- `customerId` string
- `limit` integer
- `after` string

## Response `200`

OK

- BookingList
  - `data` Booking[], required
    - `afterTimeMinutes` integer, required: Time kept free on the resource after the services, for cleaning up or resting. It is part of the time between `startsAt` and `endsAt`.
    - `createdAt` string, date-time, required
    - `customFields` CustomField[], required: The location's own fields on the booking, with their values.
      - `key` string, required
      - `label` string
      - `type` string: The kind of field, in lower case, such as `text` or `checkbox`. The list is open.
      - `value` string: The value, of the JSON type the field holds. Left out when not given.
    - `customers` BookingCustomer[], required: The customers the booking is for: persons, companies and vehicles. Empty for a reservation, and for a class nobody has booked yet.
      - `bookedAs` string: The name the customer was booked under, when it differs from the customer's own.
      - `bookedAt` string, date-time, required
      - `cancelledAt` string, date-time
      - `cancelledChannel` string: Where the customer was cancelled from, with the same values as `channel`. Left out for a customer who is not cancelled.
      - `channel` string, required: Where the customer was booked from: `web` for online booking, `calendar` for staff in Cliento, `api` for this API. More values may be added.
      - `customFields` CustomField[], required: The location's own fields for this customer on the booking.
        - `key` string, required
        - `label` string
        - `type` string: The kind of field, in lower case, such as `text` or `checkbox`. The list is open.
        - `value` string: The value, of the JSON type the field holds. Left out when not given.
      - `customerId` string, required: The person, company or vehicle. The id's prefix says which, and that type's API has the rest.
      - `customerNote` string: What the customer wrote when booking online. Only with the scope `customers:read`.
      - `email` string: Only with the scope `customers:read`.
      - `identityNumber` IdentityNumber: A number issued by an authority that identifies a person, such as a personnummer. The accepted format of each type is listed under Persons.
        - `number` string, required: In the format of its type: twelve digits for a Swedish personnummer.
        - `type` string, required: The kind of number, in lower case, such as `se_personnummer` or `foreign`. More values may be added.
      - `name` string: The customer's name; for a vehicle, what it is called in Cliento.
      - `organisationNumber` string: For a company: the organisation number. Only with the scope `customers:read`.
      - `otherPhoneNumber` string: Another phone number. Only with the scope `customers:read`.
      - `phoneNumber` string: Mobile number. Only with the scope `customers:read`.
      - `price` string: This customer's price, where each customer has one, as on a class.
      - `priceFrom` boolean, required: True when the price is a starting price.
      - `registrationNumber` string: For a vehicle: the registration number. Only with the scope `customers:read`.
      - `status` string, required: This customer's status on the booking, with the same values as the booking's `status`. It differs from the booking's on a class, where one customer can cancel and the others stay booked.
      - `type` string, required: `person`, `company` or `vehicle`. More values may be added.
    - `description` string: A text of its own for the booking: what a reservation is for, or what staff wrote in place of a service.
    - `doneAt` string, date-time: When staff set the booking as done. Left out until then.
    - `endsAt` string, date-time, required: When the time held on the resource ends, in UTC. The last `afterTimeMinutes` of it are the time kept free after the services.
    - `id` string, required
    - `locationId` string, required
    - `minPlaces` integer: For a class: the fewest customers it runs with. Left out for other bookings.
    - `note` string: Staff's note on the booking. Not shown to the customer.
    - `payments` BookingPayment[], required: The payments made for the booking.
      - `amount` string, required
      - `customerId` string: The customer the payment was made for, when it was made for one.
      - `paidOn` string, date: The day of the payment, in the location's time zone.
      - `provider` string, required: Who handled the payment, in lower case, such as `stripe` or `klarna`. The list is open, so accept a value you do not know.
      - `reference` string: The payment's reference, as shown to the customer.
      - `refundedAmount` string, required
      - `refundedOn` string, date: The day of the refund, when there is one.
      - `status` string, required: `paid`, `unpaid`, or a refund state such as `refunded` or `refunded_partially`. More values may be added.
      - `type` string, required: `online` for a payment made when booking online, `pre_paid` for one made in advance, `pos` for one made at the point of sale. More values may be added.
    - `places` integer: For a class: how many places it has. Left out for other bookings.
    - `placesBooked` integer: For a class: how many places are booked. Left out for other bookings.
    - `price` string: The price of the booking as a whole, when it has one. Follows "Amounts" in the introduction.
    - `priceFrom` boolean, required: True when the price is a starting price.
    - `reminders` BookingReminder[], required: The SMS reminders for the booking.
      - `customerId` string, required
      - `status` string, required: How far the message has come, in lower case, such as `pending`, `sent` or `delivered`. The list is open, so accept a value you do not know.
      - `statusAt` string, date-time, required: When it got that status.
      - `type` string, required: `pre_reminder` for one sent before the booking; `post_reminder1` and `post_reminder2` for those sent after it. More values may be added.
    - `reservationType` string: For a reservation: what the time is blocked for, in lower case, such as `lunch` or `vacation`. Left out when staff gave none. The list is open.
    - `resources` BookingResource[], required: The resources the booking is on. One of them is the primary resource.
      - `primary` boolean, required: True for the booking's primary resource: the one it was booked with. A booking has exactly one. The others are held for the same time, such as a room.
      - `resourceId` string, required
    - `sales` BookingSale[], required: The sales the booking was sold in.
      - `createdAt` string, date-time: When the sale was created.
      - `customerId` string: The customer the sale was made to, when it names one.
      - `invoiceStatus` string: For a sale with an invoice: whether the invoice is paid, such as `unpaid` or `paid`. The list is open.
      - `paidAmount` string, required: What has been paid in the sale as a whole. A sale can cover more than this booking.
      - `saleId` string, required
      - `status` string, required: The sale's state, in lower case, such as `open`, `paid` or `void`. The list is open, so accept a value you do not know.
      - `type` string, required: `pos_sale`, `order` or `invoice`. More values may be added.
    - `series` BookingSeries: A series of bookings that recur. Each booking in it is a booking of its own and has the series' id. The series has the rule the bookings were made from.
      - `id` string, required
      - `recurrenceRule` string, required: The recurrence rule, as an iCalendar RRULE.
    - `services` BookingService[], required: The services booked, as they were when booked. Empty for a reservation.
      - `durationMinutes` integer, required
      - `name` string, required
      - `price` string
      - `priceFrom` boolean, required: True when the price is a starting price.
      - `serviceId` string, required
    - `startsAt` string, date-time, required: When the booking starts, in UTC.
    - `status` string, required: `booked`; `show` and `no_show`, which staff set when the customer came or did not; `done`, which staff set when the work is finished; or `cancelled`. For a class, each customer has a status of their own. More values may be added.
    - `type` string, required: `appointment`: a time for one customer, or for the customers that come together, such as a person and their vehicle. `class`: a time several customers book a place at. `reservation`: time blocked on the resource, with no customer. The list is open, so accept a value you do not know.
    - `updatedAt` string, date-time, required
  - `nextCursor` string: Pass as `after` to fetch the next page. Absent on the last page.

## Other responses

- `default`: Any failure. See the Errors section.

---

[API](https://skmtc.dev/cliento/apis/cliento-api.md) · [All operations](https://skmtc.dev/cliento/apis/cliento-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cliento/apis/cliento-api/revisions/29ca811bc061?raw)
