REST Resource: inventory.partners.merchants.services

资源:服务

商家所提供服务的相关信息,例如理发。

JSON 表示法
{
  "name": string,
  "serviceName": string,
  "localizedServiceName": {
    object (Text)
  },
  "description": string,
  "localizedDescription": {
    object (Text)
  },
  "price": {
    object (Price)
  },
  "priceInterpretation": enum (PriceInterpretation),
  "rules": {
    object (SchedulingRules)
  },
  "prepaymentType": enum (PrepaymentType),
  "prepaymentTerms": {
    object (PrepaymentTerms)
  },
  "form": [
    {
      object (ServiceIntakeForm)
    }
  ],
  "intakeForm": {
    object (ServiceIntakeForm)
  },
  "perTicketIntakeForm": {
    object (ServiceIntakeForm)
  },
  "taxRate": {
    object (TaxRate)
  },
  "paymentOptionId": [
    string
  ],
  "deposit": {
    object (Deposit)
  },
  "noShowFee": {
    object (NoShowFee)
  },
  "requireCreditCard": enum (RequireCreditCard),
  "actionLink": [
    {
      object (ActionLink)
    }
  ],
  "type": enum (ServiceType),
  "ticketType": [
    {
      object (TicketType)
    }
  ],
  "relatedMedia": [
    {
      object (RelatedMedia)
    }
  ],
  "serviceAttributeValueId": [
    {
      object (ServiceAttributeValueId)
    }
  ],
  "waitlistRules": {
    object (WaitlistRules)
  },
  "ticketingVerticalSpecificData": {
    object (TicketingVerticalSpecificData)
  },
  "integrationType": enum (IntegrationType),
  "perOrderFee": {
    object (PerOrderFee)
  },
  "toursAndActivitiesContent": {
    object (ToursAndActivitiesContent)
  },
  "location": [
    {
      object (Location)
    }
  ],
  "rating": {
    object (Rating)
  },
  "homeServiceData": {
    object (HomeServiceData)
  },
  "virtualSession": {
    object (VirtualSession)
  },
  "directMerchantPayment": {
    object (DirectMerchantPayment)
  }
}
字段
name

string

服务资源名称,格式为 partners/{partner_id}/merchants/{merchantId}/services/{serviceId}

serviceName

string

服务的名称,例如“男士理发”。已弃用,请改用 localizedServiceName。

localizedServiceName

object (Text)

服务的名称,例如“男士理发”。可能在多个语言区域。

description

string

可供用户查看的服务简介。已弃用,请改用 localizedDescription。

localizedDescription

object (Text)

可供用户查看的服务简介。

此字段同时支持纯文本格式及类似于 HTML 的格式。与纯文本部分不同,自定义布局的创建可使用标题、段落、列表和一些词组标记。请仔细阅读以下说明和注意事项,确保提供最佳的用户体验。

支持的类似于 HTML 的格式标记:

标题标记:<h1>、<h2>、<h3>、<h4>、<h5>、<h6>
标题标记可用于显示标题和副标题。例如,<h1>行程</h1>会将内嵌文本显示为该部分最重要的标题。请注意,所有内部 HTML 标记、样式或属性都将被忽略。例如,<h1 style=".."> 与 <h1> 的处理方式相同。仅保留纯文本。

段落标记:<p>
段落标记可用于突出显示详细信息或内容。任何内部标记、样式或属性都将被忽略,但存在以下几种例外情况:<br>、<strong> 和 <em>。如需了解详情,请参阅下面的词组标记部分。

列表标记:<ul>、<ol>、<li>
<ul> 标记可与 <li> 标记用于显示无序列表,<ol> 标记可与 <li> 标记用于显示有序列表。这是显示核对清单、时间表或任何其他适合您的用例的列表的好方法。
示例:如需显示游轮旅行的一系列特色,请执行以下操作:
<ol>
<li>绝美海景,有机会与野生动物一起玩耍。</li>
<li>精心设计旅行安排和服务。</li>
<li>保证最低价。</li>
</ol>
请注意,只有<li><ul> 岁以下的儿童或 <ol>代码将被转换。所有其他子级内容都会被舍弃。此外,所有内部标记、属性和样式都会被忽略,只保留纯文本内容。

分区标记:<div>
系统会根据上述规则对 <div> 标记受支持的所有内部标记进行解析,<div> 标记本身并不意味着在此进行任何分组或缩进。此外,所有内部属性和样式都会被忽略。

词组标记:<br>、<strong>、<em>
仅支持以上 3 种标记。<br> 用于对段落中的内容进行分行,<strong>/<em> 用于突出显示重要文本。所有其他词组标记都会被忽略。

不受支持的标记:

  • 不允许使用 <html>、<header> 和 <body> 标记。
  • 上面未提及的所有其他标记均不受支持(例如 <table>、<td> 等标记)。
    任何网址、锚标记和链接都会被删除,且任何时候都不会向最终用户显示。如果您想通过图片来打造丰富的用户体验,请通过下面的“relatedMedia”字段发送图片的网址。

重要注意事项:

  • 请勿使用上述受支持的标记以外的其他标记,因为不受支持的标记中的内容会被删除,用户体验也可能会受到影响。
  • 尽量避免使用深层嵌套结构,例如 3 个以上的不同标题级别或嵌套列表。确保结构简单明了,从而打造更优质的用户体验。
  • 如果目前支持的布局无法满足您的使用情形,请与“通过 Google 预订”团队联系。
  • 建议的大小上限为 32000 个字符。
price

object (Price)

服务的价格。

priceInterpretation

enum (PriceInterpretation)

说明价格的解析方式和面向用户显示的方式。可用于除餐饮和推荐活动之外的任何行业来配置服务价格的显示方式。

rules

object (SchedulingRules)

预约/取消预约的规则。

prepaymentType

enum (PrepaymentType)

预付款是必需项、可选项还是不支持预付款。

prepaymentTerms

object (PrepaymentTerms)

与预付款完成相关的条款。

form[]
(deprecated)

object (ServiceIntakeForm)

已弃用。请使用 intakeForm 和 perTicketIntakeForm。

intakeForm

object (ServiceIntakeForm)

在用户预订此服务时,用于请求用户提供更多信息的表单。(可选)

perTicketIntakeForm

object (ServiceIntakeForm)

在用户预订此服务时,用于请求用户提供更多信息的表单。用户预订每张票券时均需填写一次该表单。(可选)

taxRate

object (TaxRate)

服务的税率。如果设置该字段,它将替换在商家级别设置的任何 taxRate。空白消息(即 taxRate { })会将适用税率重置为零。

paymentOptionId[]

string

ID 列表,其中列出了可用于支付此服务费用的付款方式。实际的付款方式需在商家级别定义,且多个商家可共享付款方式。

deposit

object (Deposit)

指定向用户收取押金的方式。如果指定了押金,则会替换在服务级别定义的押金。如果将该字段留空,系统会移除服务级别的所有押金。(可选)

noShowFee

object (NoShowFee)

指定可能需要向用户收取的违约金。如果指定了违约金,则会替换在服务级别定义的违约金。如果将该字段留空,系统会移除服务级别的所有违约金。(可选)

requireCreditCard

enum (RequireCreditCard)

指明用户是否必须提供信用卡信息才能预订相应服务。可在可用性级别替换该字段。(可选)

type

enum (ServiceType)

服务的预定义类型。(可选)

ticketType[]

object (TicketType)

可预订/购买的服务票券类型(如果支持票券)。(可选)

relatedMedia[]

object (RelatedMedia)

与服务相关的图片。Google 会抓取并存储媒体,用于确保以最有效的方式向最终用户展示。(可选)

serviceAttributeValueId[]

object (ServiceAttributeValueId)

适用于相应服务的服务属性值(可选)。对于在相应商家中定义的每个服务属性,每项服务都可能具有零个或多个值。(可选)

waitlistRules

object (WaitlistRules)

加入等候名单需遵循的规则。

ticketingVerticalSpecificData

object (TicketingVerticalSpecificData)

特定于活动门票行业的其他信息。(可选)

integrationType

enum (IntegrationType)

我们所支持的集成深度。(可选)不适用于采用初级集成的合作伙伴。对于此类合作伙伴,“端到端”将始终处于停用状态。

perOrderFee

object (PerOrderFee)

用于购买相应服务的订单级费用。(可选)

toursAndActivitiesContent

object (ToursAndActivitiesContent)

特定于“游览”和“活动”的内容字段。

location[]

object (Location)

与服务相关的地点。重要注意事项:如果有多个与服务相关的已访问地点,或者 START_LOCATION 与 VISITED_LOCATION 不同,则必须指定 START_LOCATION。示例:- 对于途径 3 个地点的有向导的骑行之旅,需指定第一个地点。- 对于要在酒店大厅集合,然后前往参观地点的观光巴士之旅,需要指定会议地点。

rating

object (Rating)

此服务的用户评分,是针对所有评价的汇总指标。

homeServiceData

object (HomeServiceData)

家政服务行业特有的额外信息。(可选)

virtualSession

object (VirtualSession)

可选。有关虚拟会话的信息。必须具有此权限才能启用虚拟服务。

directMerchantPayment

object (DirectMerchantPayment)

可选。当服务要求用户直接向商家付款时需要添加的其他信息。重要提示:RwG 不会参与此交易。如果定义了 virtualSession 但服务不是免费服务或 prepaymentType 未设置为 REQUIRED,则必须提供此属性。

PriceInterpretation

说明价格的解析方式和面向用户显示的方式。

枚举
PRICE_INTERPRETATION_UNSPECIFIED 未指定价格解析方式,默认为 EXACT_AMOUNT。
EXACT_AMOUNT

应将价格解析为特定值时。

例如:瑜伽课一节 20 元;儿童理发一次 15 元

STARTS_AT

服务的价格不固定,但最低价格已知且向消费者显示价格时。价格可能会因消费者的选择而变高。

请注意,使用 PriceInterpretation 的任何服务都必须使用 PrepaymentType NOT_SUPPORTED。

示例:狗狗美容 30 美元,但消费者的其他选择可能会使价格变高

NOT_DISPLAYED

服务的价格不固定且不提前向消费者显示价格信息时。

请注意,使用 PriceInterpretation 的任何服务都必须使用 PrepaymentType NOT_SUPPORTED,且价格必须为空。

示例:家政服务的相关咨询

SchedulingRules

服务的时间表规则。

JSON 表示法
{
  "minAdvanceOnlineCanceling": string,
  "lateCancellationFee": {
    object (Price)
  },
  "noshowFee": {
    object (Price)
  },
  "admissionPolicy": enum (AdmissionPolicy),
  "cancellationPolicy": {
    object (CancellationPolicy)
  },

  // Union field min_booking_buffer can be only one of the following:
  "minAdvanceBooking": string,
  "minBookingBufferBeforeEndTime": string
  // End of list of possible types for union field min_booking_buffer.
}
字段
minAdvanceOnlineCanceling

string (int64 format)

网上取消预订应至少提前通知的时间(以秒为单位)。(可选)

lateCancellationFee
(deprecated)

object (Price)

在至少应提前通知的期限内取消时应支付的费用。

noshowFee
(deprecated)

object (Price)

未取消预订时应付的违约金。

admissionPolicy

enum (AdmissionPolicy)

适用于此服务的准入政策。如果未设置,默认为 TIME_STRICT。(可选)

cancellationPolicy

object (CancellationPolicy)

时间表规则取消政策。(对于推荐活动而言是必需的)

联合字段 min_booking_buffer。从上次预订时间到可用性空档开始或结束时间的时长(以秒为单位)。

如果已设置“min_advance_booking”,则最后可预订时间的计算方式为:(<空档开始时间> - "min_advance_booking")。如果已设置“min_booking_buffer_before_end_time”,则最后可预订时间的计算方式为:(<空档结束时间> - "min_booking_buffer_before_end_time")。请注意,如需设置“min_booking_buffer_before_end_time”时,必须将其设置为正值。如果两者均未设置,则在空档开始时间之前,相应空档可预订。如果同时设置了这两个字段,那么系统只会选择其中一个值,而忽略另一个值,也就是说,我们无法可靠地预测会选择哪个值。

示例:

  • 需要至少提前 1 个小时预约理发服务。“scheduling_rules{ min_advance_booking: 3600 ...}”

  • 最晚可在闭馆前 30 分钟购买博物馆门票:“scheduling_rules{ min_booking_buffer_before_end_time: 1800 ...}”

  • 需要在电影开始时间之前购买电影票。“scheduling_rules{ ...}”(请将此字段留空)(可选)min_booking_buffer 只能是以下其中一项:

minAdvanceBooking

string (int64 format)

从上次预订时间到可用性空档开始时间的时长(以秒为单位)。

minBookingBufferBeforeEndTime

string (int64 format)

从上次预订时间到可用性空档结束时间的时长(以秒为单位)。如果设置了此字段,则“admissionPolicy”字段必须设置为 TIME_FLEXIBLE,以指明用户可以在空档开始后使用所购票券。

AdmissionPolicy

此服务的准入政策。

枚举
ADMISSION_POLICY_UNSPECIFIED 未使用。
TIME_STRICT 客户需要在可用性空档开始时到场,且服务会在此空档结束时结束。TIME_STRICT 使用情形示例:* 某游览项目上午 9:00 开始,所有参加者都需要在开始时间到达,中午 12:00 左右返回。* 预约时间为星期六下午 3:00 的某理发服务大约需要 30 分钟的时间。* 某健身课程的上课时间为晚上 6:00 到晚上 8:00。
TIME_FLEXIBLE

客户可以在可用性空档的开始和结束时间之间的任何时间享受已预约的服务。

TIME_FLEXIBLE 使用情形示例:* 可在购票当天的任何时间使用博物馆门票。* 可在中午 12:00 至晚上 9:00 使用下午时段的游乐园入场券。

TIMED_ENTRY_WITH_FLEXIBLE_DURATION

客户需要在可用性空档的开始时间到达商家地点,但可以随时离开。

例如,上午 10:00 的限时门票要求参观者在上午 10:00 点到达博物馆。此服务的可用性空档的开始时间即指定的到场时间。结束时间仅用作确定可用性空档的键。

CancellationPolicy

服务的取消政策。

JSON 表示法
{
  "refundCondition": [
    {
      object (RefundCondition)
    }
  ]
}
字段
refundCondition[]

object (RefundCondition)

适用于政策的零或多个退款条件。

RefundCondition

指定单个退款条件。您可使用多个退款条件来描述服务开始时间前各个时段的“退款步骤”。

JSON 表示法
{
  "minDurationBeforeStartTime": string,
  "refundPercent": integer
}
字段
minDurationBeforeStartTime

string (Duration format)

服务开始前的时段,在该时间范围内取消预订的客户可以收到有关 refundPercent 中指定的部分服务费用的退款。如果将该字段设置为 0(默认值),用户将可随时取消相应服务。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"

refundPercent

integer (uint32 format)

只要在服务开始时间前至少 minDurationBeforeStartTime 取消预订,将退还的服务费用百分比,值的范围为 [0, 100]。将该字段设置为 0(默认值)表示相应服务不支持退款。如果设置为 100,则该服务可全额退款。

PrepaymentType

用于表示预付款类型的枚举。

枚举
PREPAYMENT_TYPE_UNSPECIFIED 系统默认预付款为 NOT_SUPPORTED。
REQUIRED 用户必须在预订时支付服务费用。
OPTIONAL 用户可以选择在预订时或预订后预付服务的费用,但这并不是进行预订的必要条件。
NOT_SUPPORTED 相应服务不支持预付费。

PrepaymentTerms

有关何时完成预付款的具体信息。

JSON 表示法
{
  "chargeTiming": enum (ChargeTiming),
  "chargeTimeBeforeStartTimeSec": string
}
字段
chargeTiming

enum (ChargeTiming)

相对于购买时间的扣款时间。

chargeTimeBeforeStartTimeSec

string (int64 format)

服务开始时间前,系统向用户收取费用的时间(以秒为单位)。只有在 ChargeTiming 为 CHARGE_LATER 时才应设置此字段。

ChargeTiming

用于指定相对于购买时间的扣款时间的枚举。

枚举
CHARGE_TIMING_UNSPECIFIED 未使用。
CHARGE_NOW 系统会立即向客户收取费用。
CHARGE_LATER 客户稍后将被扣款。

ServiceIntakeForm

指定可对商家所提供服务进行自定义的信息录入表单。

JSON 表示法
{
  "field": [
    {
      object (ServiceIntakeFormField)
    }
  ],
  "firstTimeCustomers": boolean,
  "returningCustomers": boolean
}
字段
field[]

object (ServiceIntakeFormField)

将向用户显示的字段。

firstTimeCustomers
(deprecated)

boolean

如果值为 true,系统将向新客户显示此表单。已弃用。信息录入表单不支持此功能。

returningCustomers
(deprecated)

boolean

如果值为 true,系统将向回头客显示此表单。已弃用。信息录入表单不支持此功能。

ServiceIntakeFormField

指定 ServiceIntakeForm 中包含的字段。

JSON 表示法
{
  "id": string,
  "type": enum (FieldType),
  "label": string,
  "localizedLabel": {
    object (Text)
  },
  "value": [
    string
  ],
  "choiceText": [
    {
      object (Text)
    }
  ],
  "isRequired": boolean,
  "allowCustomAnswer": boolean,
  "additionalOption": [
    {
      object (Text)
    }
  ],
  "ticketTypeRestrict": [
    string
  ],
  "hint": {
    object (Text)
  }
}
字段
id

string

集合商家合作伙伴提供的字符串,用于唯一标识表单字段。此 ID 应与相应表单字段回答中的 ID 相同,且必须在服务级别和单张票券信息录入表单中具有唯一性。(必填)

type

enum (FieldType)

此字段的类型。

label

string

该字段中向用户显示的文本。已弃用,请改用 localizedLabel

localizedLabel

object (Text)

该字段中向用户显示的文本。可面向多个语言区域提供。(必填)

value[]

string

当且仅当字段类型为 LOCATION_SEARCH 时设置。请使用“locationId”在“位置”字段以指定地理位置值。

choiceText[]

object (Text)

当且仅当字段类型是 MULTIPLE_CHOICE、CHECKBOXES 或 DROPDOWN 时设置。用于枚举可能的选项。

isRequired

boolean

指明用户是否必须回答此字段。

allowCustomAnswer

boolean

指明是否允许在预定义的答案之外使用自定义值。仅当字段类型为 LOCATION_SEARCH 时,此字段才适用。(可选)

additionalOption[]

object (Text)

除所提供的值外,提供的其他选项。仅在字段类型为 LOCATION_SEARCH 时适用。例如:除了提供的地点列表外,您还可以使用“稍后与供应商联系”选项。(可选)

ticketTypeRestrict[]

string

如果仅应在用户预订某些类型的票券时显示此问题,则应将此字段设置为一组适用的票券类型 ID。如果问题始终适用,请将此字段留空。

hint

object (Text)

输入的提示文本,以文本占位符的形式显示。这仅在字段类型为 SHORT_ANSWER 或 PARAGRAPH 时适用。(可选)

FieldType

用于表明字段类型的枚举。

枚举
FIELD_TYPE_UNSPECIFIED 未指定或类型未知的字段将被忽略。
SHORT_ANSWER 用于输入文本的单行输入字段。
PARAGRAPH 用于输入文本的多行输入字段。
MULTIPLE_CHOICE 供用户从多个选项中选择一项的一组单选按钮。
CHECKBOXES 一个或多个带有复选框的枚举项。
DROPDOWN 下拉菜单中的一个选项。
BOOLEAN “是/否”按钮。

ServiceType

预定义的服务类型。

枚举
SERVICE_TYPE_UNSPECIFIED 未使用。
SERVICE_TYPE_DINING_RESERVATION 用餐预订。
SERVICE_TYPE_FOOD_ORDERING 订餐方式可以是送餐和/或外卖。
SERVICE_TYPE_FOOD_DELIVERY 外卖。
SERVICE_TYPE_FOOD_TAKEOUT 外带。
SERVICE_TYPE_EVENT_TICKET 活动门票。
SERVICE_TYPE_TRIP_TOUR 旅游。
SERVICE_TYPE_APPOINTMENT 提供预约或课程的服务。建议用于:(1) 保健和健身行业;(2) 水疗和美容行业;以及 (3) 金融咨询和评估服务。如需查看支持的服务类型,请访问:https://developers.google.com/maps-booking/guides/end-to-end-integration/overview
SERVICE_TYPE_ONLINE_APPOINTMENT 针对完全虚拟的课程或会话提供在线预约的服务。如果启用虚拟服务预订,则必须设置此字段。
SERVICE_TYPE_SHOPPING 允许用户从指定商家购物的服务。可以是“送餐”或“自取”。

TicketType

TicketType 用于区分因用户类型、服务属性或选项/附加服务不同而具有不同价格和/或可用性的票券。

票券是服务最小的可预订单元(例如,漂流之旅中的某个地点、博物馆门票、双人皮划艇全天租借服务)。

JSON 表示法
{
  "ticketTypeId": string,
  "shortDescription": string,
  "localizedShortDescription": {
    object (Text)
  },
  "price": {
    object (Price)
  },
  "perTicketFee": {
    object (PerTicketFee)
  },
  "optionDescription": string,
  "localizedOptionDescription": {
    object (Text)
  }
}
字段
ticketTypeId

string

票券 ID 用于区分同一服务的不同票券类型,且仅在服务内是唯一的。

shortDescription

string

对 TicketType 的简要说明。

此内容可面向用户显示,例如“成人”、“儿童”、“退伍军人”和“Row J”等。该字段是必填字段,每种票券类型都应附有面向用户的说明。已弃用,请改用 localizedShortDescription。

localizedShortDescription

object (Text)

对支持国际化的 TicketType 的简要说明。

此内容可面向用户显示,例如“成人”、“儿童”、“退伍军人”和“Row J”等。该字段是必填字段,每种票券类型都应附有面向用户的说明。可分别针对不同语言区域提供不同的值。

price

object (Price)

单张此类票券的价格,不含任何税费。服务税率适用于门票的税率。

perTicketFee

object (PerTicketFee)

购买此票券需支付的额外费用。(可选)

optionDescription

string

对此票券类型所代表的任何其他选项的说明(如有)。已弃用,请改用 localizedOptionDescription。

localizedOptionDescription

object (Text)

对此票券类型所代表的任何其他选项的说明(如有)。可分别针对不同语言区域提供不同的值。

当票券类型表示多个维度时,其他选项非常有用。

示例 1:将不同类型(例如“成人”、“儿童”)和语言作为附加选项的票券,TicketType 列表可如下所示:- { ticketTypeId: "ticket_type_1" localizedShortDescription { value: "成人" } localizedOptionDescription { value: "英语" } } - { ticketTypeId: "ticket_type_2" localizedShortDescription { value: "成人" } localizedOptionDescription { value: "西班牙语" } } - { ticketTypeId: "ticket_type_3" localizedShortDescription { value: "儿童" } localizedOptionDescription { value: "英语" } } - { ticketTypeId: "ticket_type_4" localizedShortDescription { value: "儿童" } localizedOptionDescription { value: "西班牙语" } }

示例 2:具有防水袋附加选项且租借时长可长达数小时的皮划艇租借服务,其中 shortDescription 可以为“3 个小时”,而 optionDescription 可以为“包含防水袋”或“不含防水袋”:- { ticketTypeId: "ticket_type_1" localizedShortDescription { value: "2 个小时" } localizedOptionDescription { value: "英语" } } - { ticketTypeId: "ticket_type_2" localizedShortDescription { value: "2 个小时" } localizedOptionDescription { value: "西班牙语" } } - { ticketTypeId: "ticket_type_3" localizedShortDescription { value: "3 个小时" } localizedOptionDescription { value: "英语" } } - { ticketTypeId: "ticket_type_4" localizedShortDescription { value: "3 个小时" } localizedOptionDescription { value: "西班牙语" } }

可选,但如果服务的所有票券类型均已设置该字段,则应为其他所有票券类型设置该字段(可以使用默认的 optionDescription)。例如 [{ticket_type_1, 成人, 英语}, {ticket_type_1, 成人, ''}] 并非有效列表。

仅支持两种 HTML 格式标记:
。这两种标记用于指定同时包含标题和详细说明的选项,例如“高级座位
享受私人包厢,提供全包式座椅、专享电视和送餐到座服务。可在此欣赏如画般的田野风景。”

PerTicketFee

用户购买每张票券时必须支付的费用。

JSON 表示法
{
  "serviceCharge": {
    object (Price)
  },
  "facilityFee": {
    object (Price)
  },
  "taxes": {
    object (Price)
  }
}
字段
serviceCharge

object (Price)

针对服务评估的额外费用。

facilityFee

object (Price)

进入场馆/设施的费用。

taxes

object (Price)

每张门票的税费。

RelatedMedia

与服务相关的图片。Google 会抓取这些媒体,用于确保面向最终用户正确显示。(可选)

JSON 表示法
{
  "url": string,
  "type": enum (MediaType),
  "localizedCaption": {
    object (Text)
  },
  "attribution": {
    object (Attribution)
  },
  "caption": string
}
字段
url

string

媒体来源的网址。Google 会抓取托管在此网址上的媒体。

type

enum (MediaType)

此媒体来源的类型。

localizedCaption

object (Text)

对支持国际化的媒体的说明,仅支持纯文本格式。所有 HTML 组件均会被删除。(可选)

attribution

object (Attribution)

有关媒体来源的提供方信息。请注意,如果提供方信息需要与媒体一同显示,以便注明摄影师或代理机构,则必须设置该字段。(可选)

caption
(deprecated)

string

已弃用,建议使用 localizedCaption。

MediaType

用于指明媒体来源类型的枚举。仅支持图片格式。如需使用图片以外的其他媒体,请与“通过 Google 预订”团队联系。

枚举
TYPE_UNSPECIFIED 未使用。
PHOTO 表示网址所提供的媒体是图片。

提供方

媒体提供方的相关信息。

JSON 表示法
{
  "localizedText": {
    object (Text)
  },
  "text": string
}
字段
localizedText

object (Text)

用于注明支持国际化的摄影师或代理机构的文本。此文本将与源媒体一同显示。请注意,此字段仅支持纯文本,所有 HTML 组件都将被删除(基于超链接的提供方说明不受支持)。

text
(deprecated)

string

已弃用,建议使用 localizedText。

ServiceAttributeValueId

标识要应用于服务的服务属性的特定值。

JSON 表示法
{
  "attributeId": string,
  "valueId": string
}
字段
attributeId

string

Merchant.service_attribute 中定义的属性的 ID,例如“service-type”

valueId

string

此属性值的 ID,例如“理发”。必须与服务属性定义中的 valueId 相匹配。

WaitlistRules

加入候位名单需遵守的规则。

JSON 表示法
{
  "minPartySize": integer,
  "maxPartySize": integer,
  "supportsAdditionalRequest": boolean,
  "aboveMaxPartySizeOptions": [
    {
      object (UnsupportedPartySizeOption)
    }
  ]
}
字段
minPartySize

integer

必填。对于提供候位名单功能的服务,必须提供正整数。如果服务或商家不提供候位名单功能,则不得填充此字段。

maxPartySize

integer

必需。对于提供候位名单功能的服务,必须提供正整数。如果服务或商家不提供候位名单功能,则不得填充此字段。

supportsAdditionalRequest

boolean

如果为 true,用户将能够在加入此服务的等候名单时发送任意格式的附加文本请求。

aboveMaxPartySizeOptions[]

object (UnsupportedPartySizeOption)

为大于所设置 maxPartySize 的参与者设置选项。如果不应为大型派对提供加入等候名单的其他选项,请将其留空。

UnsupportedPartySizeOption

适用于超出范围的选项。

JSON 表示法
{
  "callMerchant": {
    object (CallMerchant)
  }
}
字段
callMerchant

object (CallMerchant)

如果人数超出范围,您可以致电联系商家。系统将向用户显示一条预定义消息。要显示的示例文本:“如果聚会人数超过 {waitlistRules.max_party_size},请致电 {phone} 致电餐厅。”必须设置 CallMerchant,但它将为空。

CallMerchant

要在 UnsupportedPartySizeOption 中使用的空白消息,设置此选项后,系统会向用户显示致电商家进行预订的选项。

TicketingVerticalSpecificData

特定于活动门票行业的其他信息。

JSON 表示法
{
  "eventCategory": enum (EventCategory),
  "eventUrl": string,
  "entity": [
    {
      object (Entity)
    }
  ],
  "eventAttendanceMode": enum (AttendanceMode),
  "eventVirtualLocationUrl": [
    string
  ],
  "eventOrganizer": {
    object (Text)
  },
  "eventOrganizerUrl": string,
  "eventOrganizerType": enum (OrganizerType),
  "eventSourceUrl": [
    string
  ],
  "eventState": enum (EventState)
}
字段
eventCategory

enum (EventCategory)

活动所属的类别。仅在活动属于某个预定义的类别时设置该字段。(可选)

eventUrl

string

合作伙伴网站上的活动网址。(可选)

entity[]

object (Entity)

与活动相关的实体列表。(可选)

eventAttendanceMode

enum (AttendanceMode)

必需。活动参加类型。

eventVirtualLocationUrl[]

string

可选。可观看活动的网址。

eventOrganizer

object (Text)

可选。活动的组织者。

eventOrganizerUrl

string

可选。举办活动的组织者的网址。

eventOrganizerType

enum (OrganizerType)

可选。组织者的类型。

eventSourceUrl[]

string

必需。活动信息或说明所在网页的网址。

eventState

enum (EventState)

可选。事件的状态。

EventCategory

为其自定义产品体验的活动类别的子集。注意:不会作为活动的通用本体。

枚举
EVENT_CATEGORY_UNSPECIFIED 未指定。请勿使用。
EVENT_CATEGORY_CONCERT 演唱会。
EVENT_CATEGORY_SPORTS 体育赛事。
EVENT_CATEGORY_THEATRE 戏剧表演。
EVENT_CATEGORY_EXHIBITS 展览。
EVENT_CATEGORY_WORKSHOPS_AND_CLASSES 讲习班和课程。

实体

表示与活动相关的实体。

JSON 表示法
{
  "id": string,
  "name": string,
  "url": string,
  "entityType": enum (EntityType),
  "entityRole": enum (EntityRole),
  "publicIdentificationData": {
    object (PublicIdentificationData)
  }
}
字段
id

string

合作伙伴数据库中实体的唯一标识符。(可选)

name

string

实体的名称。(必填)

url

string

对实体进行明确描述的网页的网址。这是相应实体在合作伙伴网站上的网页(如有);对于实体的其他公共网址,请使用 publicIdentificationData 中的 relevantUrl。(可选)

entityType

enum (EntityType)

实体的类型。(可选)

entityRole

enum (EntityRole)

实体在活动中的角色。(可选)

publicIdentificationData

object (PublicIdentificationData)

实体的公共引用。(可选)

EntityType

实体的类型。注意:不会作为通用本体。

枚举
ENTITY_TYPE_UNSPECIFIED 未指定。请勿使用。
ENTITY_TYPE_PERFORMER 该实体表示在演唱会或演出中进行表演的艺术家或团体。仅在活动类别为“演唱会”或“戏剧”时适用。
ENTITY_TYPE_PLAYER 该实体表示参加比赛的团队或运动员。仅在活动类别为“体育赛事”时适用。
ENTITY_TYPE_CONCERT_TOUR 该实体表示活动所属的游览项目。仅在活动类别为“演唱会”时适用。
ENTITY_TYPE_SPORTS_SERIES 该实体表示活动所属的体育赛事。仅在活动类别为“体育赛事”时适用。
ENTITY_TYPE_PLAY 该实体表示在活动的表演类型(例如音乐剧、喜剧、芭蕾舞等)。仅在活动类别为“戏剧”时适用。

EntityRole

实体在活动中的角色。

枚举
ENTITY_ROLE_UNSPECIFIED 未指定。
ENTITY_ROLE_HEADLINER 该实体表示参加活动的主角或主要表演者。
ENTITY_ROLE_SUPPORTER 该实体表示参加活动的配角。
ENTITY_ROLE_HOME_TEAM 该实体表示参加(体育)活动的主场队。
ENTITY_ROLE_AWAY_TEAM 该实体表示参加(体育)活动的客场队。

PublicIdentificationData

引用实体的标识符、网页或任何其他公共来源。

JSON 表示法
{
  "relevantUrl": [
    string
  ],
  "musicbrainzId": string
}
字段
relevantUrl[]

string

内容主要涉及相应主题的任何网页的公共网址。包括官方网站、Discogs、社交媒体平台、维基百科或 IMDb 页面,例如 https://www.discogs.com/artist/1124645-Taylor-Swifthttps://www.wikidata.org/wiki/Q19320959https://twitter.com/acmilan。(可选)

musicbrainzId

string

艺术家或其他音乐实体的 36 个字符的 MusicBrainz 标识符(如适用)。如需了解详情,请访问 https://musicbrainz.org/doc/MusicBrainz_Identifier。(可选)

AttendanceMode

活动参加类型。

枚举
ATTENDANCE_MODE_UNSPECIFIED 未指定。
ONLINE 用于线上活动。
PHYSICAL 适用于线下活动。
PHYSICAL_ONLINE_MIXED 适用于线上和线下活动。

OrganizerType

组织者的类型。

枚举
ORGANIZER_TYPE_UNSPECIFIED 未指定。
PERSON 适用于只有个人组织者。
ORGANIZATION 适用于是组织的组织者。

EventState

事件的状态。

枚举
EVENT_STATE_UNSPECIFIED 未指定。
SCHEDULED 活动已排定时间。
RESCHEDULED 活动已重新安排。
CANCELLED 该活动已取消。
POSTPONED 活动已延期。

IntegrationType

支持的集成深度。

枚举
INTEGRATION_TYPE_UNSPECIFIED 默认为 END_TO_END。
INTEGRATION_TYPE_END_TO_END 允许通过 Google 进行端到端预订的完整集成。
INTEGRATION_TYPE_INVENTORY_ONLY 预订服务器无需支持此服务。只需发送商家、服务和(可选)可用性数据。

PerOrderFee

须为每笔订单支付的费用(无论票券的数量是多少)。

JSON 表示法
{
  "deliveryFee": {
    object (Price)
  },
  "processingFee": {
    object (Price)
  }
}
字段
deliveryFee

object (Price)

可能因配送方式而异的费用。

processingFee

object (Price)

处理用户付款方式的费用。

ToursAndActivitiesContent

特定于游览项目和活动的“内容”字段。重复字段中的各个元素应相互独立,以便单独呈现(例如以要点的形式显示)。

强烈建议为游览项目和活动填充 ToursAndActivitiesContent,但并非硬性要求。所有字段均支持将纯文本和类似于 HTML 的文本作为基本格式。支持的类似于 HTML 的格式标记:

词组标记:
, , , :仅支持上述三种标记。
用于对段落中的内容进行分行,// 则用于突出显示重要文本。所有其他词组标记都会被忽略。

不允许使用任何其他标记和自定义样式,且相应标记和样式会被移除。任何网址、锚标记和链接都会被删除,且任何时候都不会向最终用户显示。

重要注意事项:* 请勿重复提供服务说明中 highlightsexclusion 及其他更具体的字段中已提供的数据。* 请勿使用上述受支持的标记以外的其他标记,因为不受支持的标记中的内容会被删除,用户体验也可能会受到影响。

JSON 表示法
{
  "highlights": [
    {
      object (Text)
    }
  ],
  "inclusions": [
    {
      object (Text)
    }
  ],
  "exclusions": [
    {
      object (Text)
    }
  ],
  "mustKnow": [
    {
      object (Text)
    }
  ]
}
字段
highlights[]

object (Text)

用户可见的突出显示内容列表。

inclusions[]

object (Text)

向用户显示的包含项列表。

exclusions[]

object (Text)

向用户显示的排除项列表。

mustKnow[]

object (Text)

向用户显示的重要备注列表,用于详细说明年龄限制或不适合使用此服务的其他情况。

位置

某个地点的地理位置信息。

JSON 表示法
{
  "placeId": string,
  "name": string,
  "telephone": string,
  "url": string,
  "geo": {
    object (GeoCoordinates)
  },
  "locationType": enum (LocationType),
  "locationId": string
}
字段
placeId

string

Google Places 数据库中和 Google 地图上某个地点的地点 ID。如需详细了解地点 ID,请参阅 https://developers.google.com/places/web-service/place-id。如果提供,Google 会将营业地点与此地点进行匹配。

name

string

营业地点的名称、电话、网址和地理位置用于将营业地点与 Google 地图上已有的地点进行匹配。

此字段是可选的,但在某些情况下可能是必需的。例如,没有名称的 Service.location 不会与商家实体匹配,即使这两个实体位于同一地址也是如此。(可选)

telephone

string

包含国家/地区代码的营业地点公开电话号码,例如 +14567891234。 (可选)

url

string

营业地点公共网站的网址。(可选)

geo

object (GeoCoordinates)

营业地点的地理位置信息,包括纬度、经度和地址。(可选)

locationType

enum (LocationType)

如果为服务提供了此营业地点,则必须提供该营业地点的类型。

locationId

string

服务中对营业地点的唯一引用。此 ID 可用于在其他服务字段中引用此营业地点。例如:在自定义信息录入表单中,可以使用一组营业地点 ID 来指定自提地点选项。如果已设置,此 ID 在同一服务中应具有唯一性。(可选)

LocationType

营业地点的类型。

枚举
LOCATION_TYPE_UNSPECIFIED 未指定营业地点的类型。
VISITED_LOCATION 提供服务的地点。
START_LOCATION 服务开始时的地点,也作为 MEETING_LOCATION。
END_LOCATION 服务结束时的地点。

评分

定义实体的评分。

JSON 表示法
{
  "value": number,
  "numberOfRatings": string
}
字段
value

number

平均评分值(numberOfRatings > 0 时为必填项)。该值必须在 [1, 5] 的范围内,且当且仅当 numberOfRatings 为零时才能省略。

numberOfRatings

string

计算此值时所用的评分数量(必填)。

HomeServiceData

需要提供针对家政服务行业的其他信息。

JSON 表示法
{
  "categoryType": string,
  "jobType": string
}
字段
categoryType

string

此家政服务所属的高级类别。例如:管道工、电工等

jobType

string

给定家政服务所属类别下的职位类型。例如:unclog_drain 和 install_faucet 是“管道工”类别下的作业类型。

VirtualSession

有关线上/在线会话的信息。例如:线上瑜伽课程、线上烹饪课等

JSON 表示法
{
  "sessionInstructions": {
    object (Text)
  },
  "sessionRequirements": {
    object (Text)
  },
  "virtualPlatformInfo": {
    object (VirtualPlatformInfo)
  },
  "isSessionPrerecorded": boolean
}
字段
sessionInstructions

object (Text)

有关如何设置此虚拟类的说明。如果合作伙伴未在预订中添加视频网址,则此文本必须包含视频网址与用户分享的时间。例如 “Zoom url 将在课程开始前 30 分钟通过邮件寄送”。(推荐)

sessionRequirements

object (Text)

指定虚拟会话的要求。例如瑜伽垫、烹饪用具等(推荐)

virtualPlatformInfo

object (VirtualPlatformInfo)

此会话中所用虚拟平台的相关信息。(启用虚拟服务是必需的)

isSessionPrerecorded

boolean

必需。如果虚拟会议未进行直播,并且是预先录制的,请将此项设为 true。

VirtualPlatformInfo

将用于此虚拟会话的平台的相关信息。

JSON 表示法
{
  "platform": enum (Platform),
  "otherPlatformName": {
    object (Text)
  }
}
字段
platform

enum (Platform)

用于虚拟会话的平台。

otherPlatformName

object (Text)

如果平台设为“其他”,平台的名称。(如果平台设置为“其他”,则必须提供此值)

平台

用于指明商家将使用哪个虚拟平台的枚举。

枚举
PLATFORM_UNSPECIFIED 未使用。
FLEXIBLE 商家可以灵活地选择使用的视频平台。
GOOGLE_HANGOUTS Google 环聊产品。
GOOGLE_MEET Google Meet 产品。
ZOOM Zoom Video Communications。
SKYPE Skype。
YOUTUBE 在 YouTube 中直播。
OTHER 如果使用的视频平台与此处提到的视频平台不同,则应设置此字段。

DirectMerchantPayment

有关用户如何直接向商家付款而不是通过 RwG 预付款的信息。

JSON 表示法
{
  "paymentMethods": [
    {
      object (Text)
    }
  ]
}
字段
paymentMethods[]

object (Text)

我们会建议用户仅通过下列付款方式付款。

方法

create

创建由指定的集合商家管理的商家的新 Service,并将其返回。

delete

删除由指定的集合商家管理的商家的现有 Service

patch

更新由指定的集合商家管理的商家的现有 Service,并将其返回。