Get Booking Service
This endpoint allows you to retrieve information about specific booking services and list all services with optional filtering and pagination.
🔹 Endpoint Details
Get Single Service
GET /api/v1/services/{id}
List Services
GET /api/v1/services
🔒 Authentication
Header | Required | Description |
---|---|---|
Content-Type | Yes | Must be application/json |
Authorization | Yes | Format: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature |
📝 Request Parameters
Path Parameters (Get Single Service)
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
id | string (UUID) | Yes | Unique identifier of the service | 1610c525-f19a-40d0-8cd1-03daba3d2d98 |
Query Parameters (List Services)
Parameter | Type | Required | Description | Default |
---|---|---|---|---|
page | number | No | Page number for pagination | 1 |
limit | number | No | Items per page | 20 |
userGroupId | string | No | Filter by user group ID | - |
search | string | No | Search in service name | - |
typeId | string | No | Filter by service type | - |
name | string | No | Filter by exact name | - |
startDate | string | No | Filter by availability start date | - |
endDate | string | No | Filter by availability end date | - |
🧩 Request Examples
Get Single Service
curl -X GET "https://openapi.onlive.site/api/v1/services/1610c525-f19a-40d0-8cd1-03daba3d2d98" \
-H "Content-Type: application/json" \
-H "Authorization: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature"
List Services with Filtering
curl -X GET "https://openapi.onlive.site/api/v1/services?page=1&limit=10&userGroupId=f329fe97-452f-4d12-aef0-f526a74569cc" \
-H "Content-Type: application/json" \
-H "Authorization: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature"
📤 Response Format
Single Service Response (200 OK)
{
"id": "1610c525-f19a-40d0-8cd1-03daba3d2d98",
"deletedAt": null,
"createdAt": "2025-03-09T19:32:03.735Z",
"updatedAt": "2025-03-09T19:32:06.669Z",
"name": "Test Drive Standard",
"duration": 30,
"timeBetween": 30,
"minTimeToSchedule": 0,
"maxTimeToSchedule": 90,
"incrementTime": 30,
"condition": "one",
"extraFields": {
"area": "Barcelona",
"city": "Mollet Del Valles",
"street": "Avenida. Rabassaires, 22-26",
"country": "Spain"
},
"deniedMultipleAppointment": false,
"image": "https://cdn.onlive.site/assets/cupra/cupra-terramar-img1.webp",
"userGroupId": "f329fe97-452f-4d12-aef0-f526a74569cc",
"allowOverlapping": true,
"hasICall": false,
"active": true,
"typeId": "e3fb21fb-83ef-4051-916b-a8e96effe81f",
"dateRanges": [
{
"startDate": "2024-10-13T22:00:00.000Z",
"endDate": "2025-10-14T21:59:59.000Z"
}
],
"calendarIds": [
"75704ec6-8370-445d-90a1-913e096952da",
"6447bff2-a384-49f8-9641-ec2e7178a174",
"cdbab668-4938-445f-8ccf-3c88cfbf56ad"
]
}
List Response (200 OK)
{
"items": [
{
// Service object as shown above
}
],
"total": 1,
"page": 1,
"limit": 10,
"pages": 1
}
❌ Error Responses
400 Bad Request
{
"statusCode": 400,
"message": "Invalid service ID format"
}
401 Unauthorized
{
"statusCode": 401,
"message": "Invalid or missing authorization credentials"
}
403 Forbidden
{
"statusCode": 403,
"message": "User does not have permission to access this service"
}
404 Not Found
{
"statusCode": 404,
"message": "Service not found"
}
📘 Notes
- All timestamps are in ISO 8601 format with UTC timezone
- The list endpoint supports pagination through
page
andlimit
parameters - The
organizationId
is automatically derived from your authentication token - Date filters (
startDate
,endDate
) must be in ISO 8601 format - Results are sorted by creation date in descending order (newest first)
✅ Common Use Cases
- 🔍 Service Lookup: Find specific services by ID