Offer

LINT.IfChange(offer_definition) [START offer_definition] 次のタグ: 26

JSON 表現
{
  "offerId": string,
  "entityIds": [
    string
  ],
  "addOnOfferApplicableToAllEntities": boolean,
  "offerSource": enum (OfferSource),
  "actionType": enum (ActionType),
  "offerModes": [
    enum (OfferMode)
  ],
  "offerCategory": enum (OfferCategory),
  "sourceAssignedPriority": integer,
  "offerDetails": {
    object (OfferDetails)
  },
  "offerRestrictions": {
    object (OfferRestrictions)
  },
  "coupon": {
    object (Coupon)
  },
  "paymentInstrument": {
    object (PaymentInstrument)
  },
  "subscription": {
    object (Subscription)
  },
  "terms": {
    object (Terms)
  },
  "validityPeriods": [
    {
      object (ValidityPeriod)
    }
  ],
  "offerUrl": string,
  "imageUrl": string,
  "tags": [
    enum (OfferTag)
  ],
  "brandId": string
}
フィールド
offerId

string

特典の一意の ID。必須。

entityIds[]

string

この特典に参加している販売者のリスト。

addOnOfferApplicableToAllEntities

boolean

true の場合、このオファーはアグリゲータのすべてのエンティティに適用されます。アドオン特典にのみ適用されます。

offerSource

enum (OfferSource)

オファーは、アグリゲーター、個々の販売者、またはサードパーティがアドオンとして提供できます。必須。

actionType

enum (ActionType)

特典を提供しているサービス。offerId は 1 つの actionType にのみ属することができます。オファーを複数のサービスタイプで共有できる場合は、サービスタイプごとに一意の ID を持つ重複するオファーが作成されることが想定されます。必須。

offerModes[]

enum (OfferMode)

特典を利用できる方法(来店、予約、オンラインなど)。必須。

offerCategory

enum (OfferCategory)

特典のカテゴリ。必須。

sourceAssignedPriority

integer

ソースによって割り当てられたオファーの優先度レベルを示す負でない整数([1 ~ 100]、1 が最も高い優先度)。同じ販売者に対して複数の商品が提供されている場合、これは商品のランキングのシグナルとなります。0 は、優先度が設定されていないことを示します。

offerDetails

object (OfferDetails)

割引、予約費用など、オファーの詳細。必須。

offerRestrictions

object (OfferRestrictions)

特典の制限方法(定期購入/支払い方法が必要かどうか、この特典を他の特典と併用できるかどうか(できる場合はどのような特典か)など)を説明します。必須。

coupon

object (Coupon)

クーポンの詳細。offerCategory: OFFER_CATEGORY_ADD_ON_COUPON_OFFER で必須。

paymentInstrument

object (PaymentInstrument)

お支払い方法の詳細。offerCategory: OFFER_CATEGORY_ADD_ON_PAYMENT_OFFER の場合に必須です。

subscription

object (Subscription)

定期購入の詳細。offerCategory: OFFER_CATEGORY_ADD_ON_SUBSCRIPTION_OFFER の場合は必須です。

terms

object (Terms)

特典の利用規約。必須。

validityPeriods[]

object (ValidityPeriod)

特典の有効期間。オファーが有効な期間(開始時刻、終了時刻、曜日など)を説明します。必須です。

offerUrl

string

販売者の商品ページへの URL。offerCategory: OFFER_CATEGORY_BASE_OFFER の場合に必須。

imageUrl

string

販売者の商品画像の URL。

tags[]

enum (OfferTag)

特典に関連付けられた特別なタグ。これは、「祝祭」、「高評価」、「予約数最多」などのスペシャル オファーを識別するために使用されます。

brandId

string

特典に関連付けられているブランドを指定します。設定されていない場合は、デフォルトのブランドが使用されます。

OfferDetails

[START offer_details_definition] 次のタグ: 15

JSON 表現
{
  "offerDisplayText": string,
  "maxDiscountValue": {
    object (Money)
  },
  "minSpendValue": {
    object (Money)
  },
  "bookingCost": {
    object (Money)
  },
  "bookingCostUnit": enum (FeeUnit),
  "convenienceFee": {
    object (Fee)
  },
  "bookingCostAdjustable": boolean,
  "additionalFees": [
    {
      object (AdditionalFee)
    }
  ],
  "giftCardInfo": {
    object (GiftCardInfo)
  },

  // Union field offer_specification can be only one of the following:
  "discountPercent": number,
  "discountValue": {
    object (Money)
  },
  "otherOfferDetailText": string
  // End of list of possible types for union field offer_specification.
}
フィールド
offerDisplayText

string

検索結果ページでユーザーに表示する特典のテキスト。必須。

maxDiscountValue

object (Money)

利用可能な最大割引額。たとえば、10% 割引(最大 100 ドル)などです。

minSpendValue

object (Money)

割引を利用するための最小利用額。たとえば、合計金額が 10, 000 円以上の場合は 10% 割引などです。

bookingCost

object (Money)

このオファーを予約するための費用。たとえば、15 ドルでテーブルを予約すると、最終請求額から 100 ドル割引されます。

bookingCostUnit

enum (FeeUnit)

予約費用の単位。(例: 1 人あたり、1 回の取引あたり)。

convenienceFee

object (Fee)

bookingCostAdjustable

boolean

予約費用が調整可能かどうか(予約費用が最終請求額から差し引かれるかどうか)。例: 予約でディナーが 30% オフ。予約費用は $15 で、最終請求額に適用されます。したがって、最終的な請求額は「合計費用 - 30% - $15」となります。

additionalFees[]

object (AdditionalFee)

お客様に請求される追加料金。例: 利便性、取り扱い、配送、梱包、サービス手数料など。

giftCardInfo

object (GiftCardInfo)

ギフトカードの取引に固有の詳細。

共用体フィールド offer_specification。割引は、合計値から差し引かれる割合または固定値にすることができます。例: 1。最終請求額から 10% 割引。2. 15 ドル割引。販売者は、関連する仕様フィールドで「1 つ買うと 1 つ無料」などのカスタム割引を提供することもできます。必須。offer_specification は次のいずれかになります。
discountPercent

number

請求額の割引率。[0, 100] 1+1 または 50% 割引の特典が食事全体に適用される場合(1+1 ビュッフェ、合計金額の 1+1、セットメニューの 1+1 など)、この値は 50 に設定できます。

discountValue

object (Money)

割引の固定値。

otherOfferDetailText

string

割引を説明する自由形式のテキスト。特定の 1+1 特典(1+1 ドリンク、+1 メインコース、1+1 選択メニューなど)については、ここに詳細を記載する必要があります。

OfferRestrictions

[START offer_restrictions_definition] 次のタグ: 11

JSON 表現
{
  "combinableWithOtherOffers": boolean,
  "combinableOfferCategories": [
    enum (OfferCategory)
  ],
  "combinableOfferIds": [
    string
  ],
  "inclusions": [
    {
      object (OfferCondition)
    }
  ],
  "exclusions": [
    {
      object (OfferCondition)
    }
  ],
  "minGuest": integer,
  "foodOfferRestrictions": {
    object (FoodOfferRestrictions)
  },
  "specialConditions": [
    string
  ]
}
フィールド
combinableWithOtherOffers

boolean

この特典を他の特典と併用できるかどうか。true の場合、パートナーはこの特典を組み合わせることができる特典を指定できます。combinableOfferCategories と combinableOfferIds の両方が設定されている場合、上記の条件のいずれかに一致する特典は組み合わせ可能です。

combinableOfferCategories[]

enum (OfferCategory)

この特典と併用できる特典タイプのリスト。たとえば、この特典は他のクーポンと併用できる場合があります。combinableWithOtherOffers が true で、このフィールドが設定されていない場合、すべてのタイプを組み合わせることができます。

combinableOfferIds[]

string

この特典と併用できる offer_id のリスト。一部の特典は、特定の他の offer_id(親特典とみなすことができます)とのみ組み合わせることができます。combinableWithOtherOffers が true で、このフィールドが設定されていない場合、すべてのオファー ID を組み合わせることができます。

inclusions[]

object (OfferCondition)

特典が有効になるために満たす必要がある条件のリスト(例: ノンアルコール飲料、食品)。

exclusions[]

object (OfferCondition)

特典が無効になる条件のリスト(例: ビュッフェ、セットメニュー、カクテル)。

minGuest

integer

特典を利用するために必要な最小人数。

foodOfferRestrictions

object (FoodOfferRestrictions)

フード特典に固有の制限事項。

specialConditions[]

string

ユーザーに表示する必要がある、この特典の特別な条件。例: 「[地域] でのお支払いのみ有効」、「オンライン決済は対象外」

OfferCondition

[START offer_condition_definition]

JSON 表現
{
  "description": string
}
フィールド
description

string

PaymentInstrument

[START payment_instrument_definition]

JSON 表現
{
  "items": [
    {
      object (PaymentInstrumentItem)
    }
  ],
  "providerName": string
}
フィールド
items[]

object (PaymentInstrumentItem)

特典を利用するために使用できるお支払い方法のリスト。必須。

providerName

string

支払い方法のプロバイダの名前。銀行パートナー、銀行名など。例: American Express、HDFC、ICICI。

PaymentInstrumentItem

[START payment_instrument_item_definition]

JSON 表現
{
  "type": enum (PaymentInstrumentType),
  "name": string
}
フィールド
type

enum (PaymentInstrumentType)

支払い方法の種類。必須。

name

string

クレジット カードの名前など、お支払い方法のアイテムの名前。例: HDFC Infinia、American Express Platinum。必須。

サブスクリプション

[START subscription_definition]

JSON 表現
{
  "name": string,
  "subscriptionAutoAdded": boolean,
  "cost": {
    object (Money)
  },
  "subscriptionDuration": string,
  "termsAndConditionsUrl": string
}
項目
name

string

サブスクリプションの名前。 必須。

subscriptionAutoAdded

boolean

ユーザーがこの特典を利用したときに定期購入が自動的に追加されるかどうか

cost

object (Money)

サブスクリプションの費用。必須。

subscriptionDuration

string (Duration format)

定期購入の費用 [subscription_cost] で定期購入が有効な期間。必須。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"。

termsAndConditionsUrl

string

このサブスクリプションに関連するパートナーの利用規約の URL。

利用規約

[START terms_definition]

JSON 表現
{
  "url": string,
  "restrictedToCertainUsers": boolean,
  "termsAndConditions": string,
  "additionalTermsAndConditions": [
    string
  ]
}
フィールド
url

string

パートナーの利用規約の URL。

restrictedToCertainUsers

boolean

特典が特定のユーザーに限定されているかどうか。

termsAndConditions

string

パートナーが提供する主な利用規約のテキスト。

additionalTermsAndConditions[]

string

パートナーの主な利用規約に加えて、追加の利用規約。