A valid request URL is required to generate request examples{
"items": [
{
"id": "appt-ok",
"associateId": "user-julie",
"customerId": "cust-1",
"storeId": "store-rivoli",
"startsAt": "2030-01-01T10:00:00.000Z",
"endsAt": "2030-01-01T11:00:00.000Z",
"status": "requested",
"actorId": "user-julie",
"bookedAt": "2026-07-28T09:00:00.000Z"
}
],
"total": 1,
"page": 1,
"pageSize": 20,
"pageCount": 1
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123,
"fieldErrors": [
{
"field": "<string>",
"message": "<string>"
}
]
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}List appointments (RDV)
Returns a page of bookings (rendez-vous), optionally narrowed by associate, customer, store, status (requested | confirmed | completed | cancelled | no-show) and/or timeframe (upcoming | past, relative to the server clock). Page with page/pageSize (max 100) until page reaches pageCount. For a single booking use the get operation.
A valid request URL is required to generate request examples{
"items": [
{
"id": "appt-ok",
"associateId": "user-julie",
"customerId": "cust-1",
"storeId": "store-rivoli",
"startsAt": "2030-01-01T10:00:00.000Z",
"endsAt": "2030-01-01T11:00:00.000Z",
"status": "requested",
"actorId": "user-julie",
"bookedAt": "2026-07-28T09:00:00.000Z"
}
],
"total": 1,
"page": 1,
"pageSize": 20,
"pageCount": 1
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123,
"fieldErrors": [
{
"field": "<string>",
"message": "<string>"
}
]
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}Authorizations
Authorization: Bearer <token>. Accepts EITHER a Keycloak access token (scopes-in-token) OR an opaque POS session token; both resolve to the same pos.* scope vocabulary the route guards enforce.
Query Parameters
1-based page index to return. Defaults to 1.
1 <= x <= 9007199254740991Rows per page, 1..100. Defaults to 20.
1 <= x <= 100Narrow to one sales associate's appointments (RDV).
Narrow to one customer's appointments by id.
Narrow to one store's appointments by store id.
Filter by status: requested | confirmed | completed | cancelled | no-show.
requested, confirmed, completed, cancelled, no-show Filter relative to the server clock: upcoming | past.
upcoming, past Response
A page of matching appointments with the pagination totals.
A page of matching appointments with the pagination totals.
The rows on this page, in the query's sort order.
Show child attributes
Show child attributes
Total rows matching the filter across ALL pages, not just this one.
0 <= x <= 9007199254740991The 1-based page number served.
0 < x <= 9007199254740991Rows requested per page.
0 < x <= 9007199254740991Total number of pages; stop walking when page reaches it.
0 <= x <= 9007199254740991
