AI-generated Key Takeaways
-
Service prices can be displayed as exact amounts, starting prices, price ranges, or hidden from the user.
-
Service descriptions are optional but recommended to provide details, and can be omitted if redundant with the service name.
-
Ranking hints influence the order of services and categories, ideally using unique integers to create a clear hierarchy.
-
Services are categorized for user browsing, with add-ons treated as a separate category only if bookable independently.
-
All services require a price field, which can be represented in multiple ways using specific JSON structures and interpretations.
Services Price Interpretation
Price is a required field. Please take a look at the examples(as displayed to the user) to determine how to represent prices in the feed.
Examples
Price Interpretation:
INTERPRETATION_EXACT As displayed to user: $39.99
{
"service_price": {
"price_interpretation": "INTERPRETATION_EXACT",
"min_price": {
"price_micros": 39990000,
"currency_code": "USD"
}
}
}
As displayed to user: Free
{
"service_price": {
"price_interpretation": "INTERPRETATION_EXACT",
"min_price": {
"price_micros": 0,
"currency_code": "USD"
}
}
}
Price Interpretation:
INTERPRETATION_STARTS_AT As displayed to user : From $0.00
{
"service_price": {
"price_interpretation": "INTERPRETATION_STARTS_AT",
"min_price": {
"price_micros": 0,
"currency_code": "USD"
}
}
}
As displayed to user: From $25.00
{
"service_price": {
"price_interpretation": "INTERPRETATION_STARTS_AT",
"min_price": {
"price_micros": 25000000,
"currency_code": "USD"
}
}
}
Price Interpretation:
INTERPRETATION_RANGE: As displayed to user: $15.00 - $25.00
{
"service_price": {
"price_interpretation": "INTERPRETATION_RANGE",
"min_price": {
"price_micros": 15000000,
"currency_code": "USD"
},
"max_price": {
"price_micros": 25000000,
"currency_code": "USD"
}
}
}
Price Interpretation: INTERPRETATION_NOT_DISPLAYED
As displayed to user: No price will be displayed to the user
{
"service_price": {
"price_interpretation": "INTERPRETATION_NOT_DISPLAYED"
}
}
Service description is highly recommended, but is optional as we recognize that some services are self-explanatory, and not all merchants provide it. If a service description is identical to the service name, we recommend that the description should be empty to prevent redundancy. However, this will not be enforced.
Examples
When a services description is provided for a services:
{
"localized_service_description": {
"value": "Consultation to learn more about your hair coloring needs and schedule the reservation.",
"Localized_value": {
"locale": "en",
"value": "Consultation to learn more about your hair coloring needs and schedule the reservation."
}
}
}

When no services description is provided for the services:

When a services description is provided but is longer than 120 characters, the description will be truncated:
{
"localized_service_description": {
"value": "Keratin smoothing treatments repair damage, block humidity, and reduce frizz while restoring the hair’s strength & vibrance for healthier hair. Treatment times may vary.",
"Localized_value": {
"locale": "en",
"value": "Keratin smoothing treatments repair damage, block humidity, and reduce frizz while restoring the hair’s strength & vibrance for healthier hair. Treatment times may vary."
}
}
}

Service Category and Ranking Hints Ranking hints affect both the ordering of services within a service category, and the ordering of the categories themselves. The ranking hint for a category is assumed to be the minimum ranking hint of any item in the category. Note that other factors may also influence the final ranking, such as price, user history, etc. The recommended approach is to define a total ordering on all the services, by assigning each one a unique integer ranking hint and ensuring that ranking hint values don’t overlap between categories. For example, if we want the preferred ordering of categories and services to be: Add-ons can be added as its own category, only if they can be booked independently (without a primary service)
Example
{
"data": [
{
"merchant_id":"merchant-1",
"service_id": "services-1",
"localized_service_name": {
"value": "Classic Shave"
},
"localized_service_category": {
"value": "Barber"
},
"service_price": {
"price_interpretation": "INTERPRETATION_STARTS_AT",
"min_price": {
"price_micros": 25000000,
"currency_code": "USD"
}
},
"service_duration": {
"duration_interpretation": "INTERPRETATION_EXACT",
"min_duration_sec": 4500
},
"action_link": [
{
"url": "https://www.rwgpartnerwebsite.com/appointment/service-1/in-person-1",
"language": "en"
}
],
"ranking hint": {
"score": 1
}
},
{
"merchant_id":"merchant-1",
"service_id": "services-2",
"localized_service_name": {
"value": "Beard Trim"
},
"localized_service_category": {
"value": "Barber"
},
"service_price": {
"price_interpretation": "INTERPRETATION_STARTS_AT",
"min_price": {
"price_micros": 20000000,
"currency_code": "USD"
}
},
"service_duration": {
"duration_interpretation": "INTERPRETATION_EXACT",
"min_duration_sec": 1500
},
"action_link": [
{
"url": "https://www.rwgpartnerwebsite.com/appointment/service-1/in-person-1",
"language": "en"
}
],
"ranking hint": {
"score": 2
}
},
{
"merchant_id":"merchant-1",
"service_id": "services-3",
"localized_service_name": {
"value": "Massage Shampoo"
},
"localized_service_category": {
"value": "Shampoo"
},
"service_price": {
"price_interpretation": "INTERPRETATION_STARTS_AT",
"min_price": {
"price_micros": 15000000,
"currency_code": "USD"
}
},
"service_duration": {
"duration_interpretation": "INTERPRETATION_EXACT",
"min_duration_sec": 1500
},
"action_link": [
{
"url": "https://www.rwgpartnerwebsite.com/appointment/service-1/in-person-1",
"language": "en"
}
],
"ranking hint": {
"score": 3
}
},
{
"merchant_id":"merchant-1",
"service_id": "services-4",
"localized_service_name": {
"value": "Buzz Cut"
},
"localized_service_category": {
"value": "Haircuts"
},
"service_price": {
"price_interpretation": "INTERPRETATION_STARTS_AT",
"min_price": {
"price_micros": 35000000,
"currency_code": "USD"
}
},
"service_duration": {
"duration_interpretation": "INTERPRETATION_EXACT",
"min_duration_sec": 3000
},
"action_link": [
{
"url": "https://www.rwgpartnerwebsite.com/appointment/service-1/in-person-1",
"language": "en"
}
],
"ranking hint": {
"score": 4
}
}
]
}

