message ServiceFeed {
repeated Service data = 1;
}
Service Definition
// The definition of a service provided by a merchant.messageService{// An opaque string from an aggregator partner which uniquely identifies a// merchant.// Required.stringmerchant_id=1;// An opaque string of ASCII characters from an aggregator partner which// uniquely identifies the service.// Must be equal to or shorter than 100 characters.// Required.stringservice_id=2;// The name of the service, e.g. "Men's haircut". Possibly in several locales.// Required.Textlocalized_service_name=3;// The name of the service category, e.g. "Haircut", "Shave", "Color".// Possibly in several locales. The category will be used to group services// when presented to the consumer.// Note: For merchants without categories on your website, you can group all// services into one category and use a generic name such as "All Services"// or "General." Merchants who have categories you should try to replicate// those categories.// Required.Textlocalized_service_category=4;// The user-visible description of the service, possibly in several locales.// This field is not required for every services, but is strongly// recommended to be filled when available.// Important notes:// * The recommended maximum size is 2,000 characters.// Optional.Textlocalized_service_description=5;// The price of the service.// Note, if a service (or merchant) doesn't provide price up front, use// RangeInterpretation.INTERPRETATION_NOT_DISPLAYED as PriceInterpretation.// Required.ServicePriceservice_price=6;// An action link related to this service. Action link should deep link to the// 3P page with the preselected service.// Note: Only the first entry will be used. Other provided action links will// be ignored.// Optional, but highly recommended if service-level deep links are supported.// This enables service-level entrypoints on Google if provided.// Note: For merchants participating in Healthcare vertical should not provide// service-level deep link.repeatedActionLinkaction_link=8;// Duration of the service.// Note, if a service (or merchant) doesn't provide service duration, use// RangeInterpretation.INTERPRETATION_NOT_DISPLAYED as DurationInterpretation.// Required.ServiceDurationservice_duration=9;// Ranking hint for this service.// Optional.ServiceRankingHintranking_hint=10;}
// The price of a service.messageServicePrice{// Describes how a Price should be interpreted and displayed to the user.RangeInterpretationprice_interpretation=1;// The minimum price of the service. Must be set if price_interpretation is// set to EXACT, STARTS_AT, or RANGE.// price is known.// Required.Pricemin_price=2;// The maximum price of the service. Must be set if price_interpretation is// set to RANGE.// Optional.Pricemax_price=3;}
Price Definition
// The price of a service or a fee.messagePrice{// The price in micro-units of the currency.// For example: 1.95 USD is 1950000 in micro-units.// If your price contains fractions of the smallest currency unit, then it// will be rounded using nearest even rounding (e.g. 2.5 cents rounded// to 2 cents, 3.5 cents rounded to 4 cents, 0.5 cents rounded to 0 cents,// 2.51 cents rounded to 3 cents).// Required.int64price_micros=1;// The currency of the price that is defined in ISO 4217.// Required.stringcurrency_code=2;// An optional and opaque string that identifies the pricing option that is// associated with the extended price.// Optional.stringpricing_option_tag=3;}
ActionLink Definition
// An action URL for a service.messageActionLink{// The entry point URL for this action link.// Required.stringurl=1;}
Service Duration Definition
message ServiceDuration {
// Describes how a service duration should be interpreted and displayed to
// the user.
// Note, if a service (or merchant) doesn't provide service duration, use
// 'INTERPRETATION_NOT_DISPLAYED' as DurationInterpretation.
// Required.
RangeInterpretation duration_interpretation = 1;
// The minimum duration (in seconds) that the service may take. Must be set
// if duration_interpretation is set to EXACT, STARTS_AT, or RANGE.
// Required.
int64 min_duration_sec = 2;
// The maximum duration (in seconds) that the service may take. Must be set
// if duration_interpretation is set to RANGE.
// Optional.
int64 max_duration_sec = 3;
}
Service Ranking Hint Definition
// Ranking hints for a service.messageServiceRankingHint{// Arbitrary partner or merchant assigned rank for this service.//// Services with a lower score will be displayed more prominently (e.g.// displayed higher in lists).//// 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:// Category 1: A, B, C// Category 2: D, E, F// Then the simplest ranking hint scheme to indicate this would be:// A=1, B=2, C=3, D=4, E=5, F=6.//// Optional. Must be non-negative if set.floatscore=1[features.field_presence=EXPLICIT];}
Localized String Definition
// Instance of a string in one locale.messageLocalizedString{// IETF BCP 47 language code, such as "en", "mas", "zh-Hant", "de-CH-1901".// See http://www.w3.org/International/articles/language-tags/.// Required.stringlocale=1;// Message in the locale above (UTF-8).// Required.stringvalue=2;}
[null,null,["Last updated 2024-10-31 UTC."],[[["Merchants provide service feeds to define the services they offer, including details like name, category, description, price, duration, and booking links."],["Service feeds can be uploaded in JSON format, with a recommended structure and sample feeds are provided for reference."],["Service data includes localized text for names, categories, and descriptions to support multiple languages."],["Prices and durations can be represented as exact values, ranges, or starting points, allowing for flexibility in how this information is displayed."],["Service ranking hints can be provided to influence the order in which services are presented to users."]]],[]]