Saltar al contenido principal

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

HeaderRequiredDescription
Content-TypeYesMust be application/json
AuthorizationYesFormat: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature

📝 Request Parameters

Path Parameters (Get Single Service)

ParameterTypeRequiredDescriptionExample
idstring (UUID)YesUnique identifier of the service1610c525-f19a-40d0-8cd1-03daba3d2d98

Query Parameters (List Services)

ParameterTypeRequiredDescriptionDefault
pagenumberNoPage number for pagination1
limitnumberNoItems per page20
userGroupIdstringNoFilter by user group ID-
searchstringNoSearch in service name-
typeIdstringNoFilter by service type-
namestringNoFilter by exact name-
startDatestringNoFilter by availability start date-
endDatestringNoFilter 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 and limit 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
  • 📊 Service Directory: List all available services
  • 🗓️ Date-based Filtering: Find services available in specific periods
  • 👥 Group Management: List services for specific user groups
  • 📱 Pagination: Handle large numbers of services efficiently

🔍 Filtering Tips

  1. Date Range Filtering

    • Use startDate and endDate together for specific periods
    • Dates must be in ISO 8601 format
    • Times are optional in date parameters
  2. Performance

    • Use appropriate page sizes (10-50 items)
    • Include specific filters when possible
    • Cache frequently accessed service details