Deprecation Notice
This endpoint has been replaced with Services V2's Query Services and will be removed on December 31, 2023. If your app uses this endpoint, we recommend updating your code as soon as possible.
Retrieves a list of services, given the provided filtering. Returns a list of enriched services; Based on the invoker permissions and the request query. Query object support:
- filter: supports
service.id
- query for a specific service. Example:"filter { string_value: "{ "service.id": "46ce4cd4-46ff-4aa7-9cc0-02fd4f0f3209" }" }"
.category.id
- query for all services that belongs to the category. Example:"filter { string_value: "{ "category.id": "55ce4cd4-46ff-4aa7-9cc0-01fd4f0f3209" }" }"
.service.info.name
- query for all services with given name. Example:"filter { string_value: "{ "service.info.name": "haircut" }" }"
.service.info.tagLine
- query for all services with given tag line. Example:"filter { string_value: "{ "service.info.tagLine": "short haircut" }" }"
.service.policy.isBookOnlineAllowed
- query for all services that can be booked online. Example:"filter { string_value: "{ "service.policy.isBookOnlineAllowed": true }" }"
.category.name
- query for all services that belongs to categories with given name. Example:"filter { string_value: "{ "categoty.name": "hair services" }" }"
.service.customProperties.tag
- query for all services that has given tag. Example:"filter { string_value: "{ "service.customProperties.tag": "hair services" }" }"
.service.paymentOptions.wixPayOnline
- query for all services that can be payed Online with Wix Pay. Example:"filter { string_value: "{ "service.paymentOptions.wixPayOnline": true }" }"
.service.paymentOptions.wixPayInPerson
- query for all services that be payed Offline with Wix Pay.. Example:"filter { string_value: "{ "service.paymentOptions.wixPayInPerson": true }" }"
.service.paymentOptions.wixPaidPlan
- query for all services that can be booked using a paid plan. Example:"filter { string_value: "{ "service.paymentOptions.wixPaidPlan": true }" }"
.service.paymentOptions.custom
- query for all services that has a custom payment method. Example:"filter { string_value: "{ "service.paymentOptions.custom": true }" }"
.slugs.name
- query for service with given slug. Example:"filter { string_value: "{ "slugs.name": "woman-hair-cut" }" }"
.schedules.tags
- query for all services that has a schedule with given tag and statusCREATED
. Example:"filter { string_value: "{ "schedules.tags": "Group" }" }"
.resources.id
- query for all services that are given by a given resource, taking into account only ACTIVE status service schedule. Example:"filter { string_value: "{ "resources.id": "46ce4cd4-46ff-4aa7-9cc0-02fd4f0f3209" }" }"
.service.policy.bookingsApprovalPolicy.isBusinessApprovalRequired
- query for all services that require business approval. Example:"filter { string_value: "{ "service.policy.bookingsApprovalPolicy.isBusinessApprovalRequired": true }" }"
.service.schedules.availability.locations.businessLocation.ids
- Not supported. Query for all services that have at least one of the specified locations. Example:"filter { string_value: "{ "service.schedules.availability.locations.businessLocation.ids": ["66a2674c-9267-4600-826e-f463957b9446", "66a2674c-9267-4600-826e-f463957b9447"] }" }"
.- paging: Supported. Limit Example: "query { paging { limit { value: 10 } } }". Offset Example: "query { paging { offset { value: 10 } } }". Default paging: "query { paging { offset { value: 0 } limit { value: 25 } } }"
- fieldsets: not supported.
- fields: any projection is supported. Example: query { fields ["service.id", "service.status", "service.info.name"] } Important: Calling List without any filter, will return all non deleted services.
- All results are for one specific business, resolved from the request context.
Permissions This endpoint requires the Read Bookings - Public Data, the Read Bookings - Including Participants or the Manage Bookings permissions scope
Syntax
Deprecation Notice
This endpoint has been replaced with Services V2's Query Services and will be removed on December 31, 2023. If your app uses this endpoint, we recommend updating your code as soon as possible.
Returns a list of services and related information according to the specified query.
Related information includes:
- Pricing plans
- Resources
- Forms
- Schedules
- Categories
- URLs
- Slugs
The query runs with the following defaults:
Copy Code
{"query" : {"paging" : { "offset" : 0, "limit": 25}},"includeDeleted":false}}
The following fields and filters are supported in the query:
FIELD | Supported filters |
---|---|
service.id | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
service.info.name | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
service.info.tagLine | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
service.policy.isBookOnlineAllowed | $eq , $ne |
service.customProperties.tag | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
service.paymentOptions.wixPayOnline | $eq , $ne |
service.paymentOptions.wixPayInPerson | $eq , $ne |
service.paymentOptions.wixPaidPlan | $eq , $ne |
service.paymentOptions.custom | $eq , $ne |
service.policy.bookingsApprovalPolicy. isBusinessApprovalRequired | $eq , $ne |
service.schedules.availability. locations.businessLocation.ids | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
category.id | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
category.name | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
slugs.name | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
schedules.tags | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
resources.id | $eq , $ne , $lt , $lte , $gt , $gte , $in , $hasSome , $hasAll , $startsWith , $contains |
paging | Supported. |
fields | Supported. |
fieldsets | Not supported. |
Notes:
- The following objects in the
query
parameter are not supported for this query:
sort
fieldsets
- The
businessLocation.businessSchedule
object in thelocation
object is not supported.
Permissions This endpoint requires the Read Bookings - Public Data, the Read Bookings - Including Participants or the Manage Bookings permissions scope
Syntax
Deprecation Notice
This endpoint has been replaced with Services V2's Get Service and will be removed on December 31, 2023. If your app uses this endpoint, we recommend updating your code as soon as possible.
Retrieves a service, including all its data.
Permissions This endpoint requires the Read Bookings - Public Data, the Read Bookings - Including Participants or the Manage Bookings permissions scope