ठहरने की कुल अवधि (लॉस) की कीमत

ट्रैवल पार्टनर प्राइस एपीआई

Travel Partner Prices API, Google को प्रॉपर्टी के किराये की जानकारी भेजने के लिए, आपको RESTful इंटरफ़ेस उपलब्ध कराता है.

सेवा: travelpartnerprices.googleapis.com

हमारा सुझाव है कि इस सेवा को कॉल करने के लिए, Google की दी गई क्लाइंट लाइब्रेरी का इस्तेमाल करें. अगर आपके ऐप्लिकेशन को इस सेवा को कॉल करने के लिए, अपनी लाइब्रेरी का इस्तेमाल करना है, तो इस सेवा के लिए डिस्कवरी दस्तावेज़ पाने के लिए, अपने तकनीकी खाता मैनेजर (टैम) से संपर्क करें.

सेवा एंडपॉइंट

सेवा का एंडपॉइंट एक ऐसा यूआरएल होता है जो किसी एपीआई सेवा के नेटवर्क पते की जानकारी देता है. एक सेवा में कई सेवा एंडपॉइंट हो सकते हैं. इस सेवा में यह सेवा शामिल है एंडपॉइंट और सूची में दिए गए सभी यूआरआई इस सर्विस एंडपॉइंट से जुड़े हैं:

https://travelpartnerprices.googleapis.com
तरीके
ingestLosPropertyPrices POST /v1/accounts/account_id/properties/property_id:ingestLosPropertyPrices

किसी प्रॉपर्टी के लिए, ठहरने की कुल अवधि के हिसाब से किराया अपलोड करें.

एचटीटीपी मैसेज के मुख्य हिस्से के तौर पर, JSON कोड में बदली गई, सेवा के लिए खरीदार से ली जाने वाली कीमतों का मैसेज (नीचे देखें) ज़रूरी है.

account_id: इस स्ट्रिंग का मान "खाता आईडी" होटल में मौजूद खाता सेटिंग वाले पेज पर मौजूद वैल्यू बीच में.

property_id: इस एलिमेंट की वैल्यू, ऐसी स्ट्रिंग होनी चाहिए जो आपके होटल की लिस्टिंग वाले फ़ीड में मौजूद लिस्टिंग आईडी से मेल खाती हो.

एपीआई की पुष्टि करना

ट्रैवल पार्टनर प्राइस एपीआई, इन कामों के लिए OAuth 2.0 का इस्तेमाल करता है अपने ऐप्लिकेशन की पुष्टि करें, ताकि आप एपीआई ऐक्सेस कर सकें.

Travel Partner Prices API के लिए अनुमति पाने के लिए, OAuth 2.0 सेटअप के निर्देशों का पालन करें.

Travel Partners Prices API के लिए नया प्रोजेक्ट बनाते समय, आपको अपने नए Google Cloud Console प्रोजेक्ट का ऐक्सेस चालू करना होगा. यह तरीका, Travel Partner API में दिए गए निर्देशों से मिलता-जुलता है.

ट्रैवल पार्टनर एपीआई में दिए गए चरण देखें और "Travel Partner API" के सभी इंस्टेंस को बदल दें "ट्रैवल पार्टनर की कीमतों में बदलाव करें" API" का इस्तेमाल करें.

ट्रैवल पार्टनर प्राइस एपीआई का स्कोप: "https://travelpartnerprices.googleapis.com" अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

Travel Partner Prices API के लिए अपलोड पाथ यह है: "/travel/lodging/uploads/accounts/<account_id>/property_data"

अनुरोध

सिंटैक्स

LoS Prices मैसेज इस सिंटैक्स का इस्तेमाल करता है:

{
  "requestTime": YYYY-MM-DDTHH:mm:ss.SSSZ,
  "propertyPrices": {
    "arrivalDatePrices": [{
      "startDate": {
        "year": int
        "month": int
        "day": int
      }
      "endDate": {
        "year": int
        "month": int
        "day": int
      }
      "productPrices": [{
        "roomTypeId": "string"
        "ratePlanId": "string"
        "occupancyPrices": [{
          "adults": int
          "prices": [{
            "rateRuleId": "string"
            "currencyCode": "string"
            "rates": [night_1,night_2,...]
            "taxes": [night_1,night_2,...]
            "fees": [night_1,night_2,...]
          }]
        }]
      }]
    }]
  }
}

एलिमेंट और विशेषताएं

ठहरने की अवधि के हिसाब से, किराया दिखाने वाले मैसेज में ये एलिमेंट और एट्रिब्यूट शामिल होते हैं:

एलिमेंट आवृत्तियां टाइप ब्यौरा
requestTime 1 string

वह समय जब लोएस कीमत का मैसेज भेजा गया था. इसे आरएफ़सी 3339 फ़ॉर्मैट में लिखी गई स्ट्रिंग के तौर पर दिखाया गया है.

पिछले 24 दिनों में requestTime से भेजा गया कोई भी मैसेज घंटे प्रोसेस किए जाते हैं और जिन्हें खारिज नहीं किया जाता.

मैसेज requestTime के क्रम में प्रोसेस किए जाते हैं, फिर चाहे वे किसी भी क्रम में मिलें. उदाहरण के लिए, अगर किसी यात्रा की योजना के लिए requestTime2019-05-03T14:09:00Z की कीमत वाला मैसेज मिलने के बाद, requestTime2019-05-03T14:10:00Z की कीमत वाला मैसेज मिलता है, तो requestTime2019-05-03T14:09:00Z की कीमत वाले मैसेज को हटा दिया जाता है और requestTime2019-05-03T14:10:00Z की कीमत वाले मैसेज को शामिल कर लिया जाता है.

आरएफ़सी 3339 के लिए, यहां बताई गई तारीख और समय की ज़रूरत YYYY-MM-DDThh:mm:ss.SSZ. टाइमज़ोन की जानकारी देना ज़रूरी है. इसे यूटीसी से hh:mm के पॉज़िटिव या नेगेटिव ऑफ़सेट के तौर पर या यूटीसी के लिए Z के शॉर्टहैंड के तौर पर दिया जाता है.

फ़्रैक्शनल सेकंड ज़रूरी नहीं हैं. इन्हें यहां तक दिखाया जा सकता है नैनोसेकंड सटीक. उदाहरण के लिए, 2017-01-15T01:30:15.01-08:00, 15 जनवरी, 2017 को 01:30 पीएसटी के 15.01 सेकंड बाद कोड करता है.

propertyPrices 1 Object प्रॉपर्टी की कीमतें. इस propertyPrices में सभी कीमतें उसी प्रॉपर्टी पर लागू होता है.

यह एलिमेंट दोहराया नहीं गया है. एक से ज़्यादा प्रॉपर्टी के लिए किराये भेजने के लिए, आपको कई एचटीटीपी अनुरोध करने होंगे. हर प्रॉपर्टी के लिए कम से कम एक अनुरोध करना ज़रूरी है.

arrivalDayPrices[] 1..n Object पहुंचने की तारीख के लिए किराये. इस arrivalDayPrices में दी गई सभी कीमतें, किसी खास प्रॉपर्टी पर लागू होती हैं. हालांकि, इनकी चेक-इन की तारीखें अलग-अलग हैं.
startDate 1 Object productPrices, आने वाली सभी तारीखों पर लागू होगा startDate और endDate के बीच,

अगर आपको पहुंचने की सिर्फ़ एक तारीख (और आने की तारीख की सीमा नहीं) बतानी है, तो startDate और endDate, दोनों फ़ॉर्मैट में पहुंचने की तारीख डालें.

startDate.year 1 integer startDate साल. नंबर 1 से 9999 के बीच होना चाहिए.
startDate.month 1 integer साल का महीना. 1 से 12 के बीच होना चाहिए.
startDate.day 1 integer महीने का दिन. यह दिन 1 से 31 के बीच का होना चाहिए. साथ ही, यह साल और महीने के लिए मान्य होना चाहिए.
endDate 0..1 Object प्रॉडक्ट की कीमत, इस तारीख के बीच आने वाली सभी तारीखों पर लागू होती है startDate और endDate भी शामिल हैं.

अगर सिर्फ़ आने की तारीख (और तारीख की सीमा नहीं) बतानी है, तो endDate को छोड़ा जा सकता है.

endDate.year 1 integer endDate का साल. यह वैल्यू 1 से 9999 के बीच होनी चाहिए.
endDate.month 1 integer साल का महीना. 1 से 12 के बीच होना चाहिए.
endDate.day 1 integer महीने का दिन. यह 1 से 31 के बीच होना चाहिए. साथ ही, साल और महीने के लिए मान्य होना चाहिए.
productPrices[] 1..n Object किसी प्रॉडक्ट की कीमतें. इस productPrices में दी गई सभी कीमतें, किसी खास प्रॉपर्टी और आने की तारीख के कॉम्बिनेशन पर लागू होती हैं. हालांकि, ये कीमतें अलग-अलग प्रॉडक्ट पर लागू होती हैं.
roomTypeId 0..1 string उस कमरे का यूनीक आईडी जिससे यह कीमत पता चलती है. इस्तेमाल की जाने वाली चीज़ें इस आईडी का इस्तेमाल करके, रूम बंडल के डेटा को रूम डेटा में भेजे गए डेटा से मैच किया जा सकता है. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
ratePlanId 0..1 string उस पैकेज डेटा का यूनीक आईडी जिसकी कीमत बताई जा रही है. इस आईडी का इस्तेमाल करके, Room बंडल के डेटा को packagedata में भेजे गए डेटा से मैच करें. ज़्यादा जानकारी के लिए, रूम बंडल का मेटाडेटा देखें.
occupancyPrices[] 1..n Object बुकिंग के हिसाब से वयस्कों और बच्चों की संख्या. इस occupancyPrices में सभी कीमतें किसी खास प्रॉपर्टी, आने की तारीख, प्रॉडक्ट के कॉम्बिनेशन पर लागू होगा, लेकिन अलग-अलग बुकिंग पर काम कर सकता है.
adults 1 integer एक कमरे में ज़्यादा से ज़्यादा कितने मेहमान बुक किए जा सकते हैं. इनमें ये शामिल हैं वयस्क और बच्चे. यह वैल्यू, उससे जुड़े occupancyPrices फ़ील्ड में सभी किराये के लिए सेट की जाती है. यह वैल्यू, 1 से 99 के बीच की कोई पॉज़िटिव संख्या होनी चाहिए.

ध्यान दें: चार से ज़्यादा वयस्कों के लिए बुकिंग की जानकारी भेजने के लिए, अपनी सहायता टीम से संपर्क करें.

prices[] 1..n Object ठहरने की अवधि के हिसाब से किराये. prices में मौजूद सभी कीमतें इस पर लागू होंगी किसी खास प्रॉपर्टी, पहुंचने की तारीख, प्रॉडक्ट, और व्यस्तता की संख्या का कॉम्बिनेशन.
rateRuleId 0..1 string शर्तों के हिसाब से तय की गई किराये की दरों के लिए, यह आईडी, किराये के नियम की परिभाषा वाली फ़ाइल में मौजूद किसी दर से मेल खाता है. इस फ़ील्ड में ज़्यादा से ज़्यादा 40 वर्ण डाले जा सकते हैं.
currencyCode 1 string तीन अक्षर वाला मुद्रा कोड, जिसमें rates और taxes शामिल हैं में दी गई हैं. जैसे, डॉलर के लिए "USD".
rates[] 30 float ठहरने की अवधि के हिसाब से तय की गई कीमतों का बुनियादी किराया.

अगर taxes एट्रिब्यूट की वैल्यू दी गई है, तो इस दर में टैक्स शामिल नहीं है. कुल कीमत, लागू होने वाली दर और टैक्स का योग होती है.

इंडेक्स n की वैल्यू, n+1 के हिसाब से ठहरने की अवधि से जुड़ी होती है.

आपको एक बार में 30 कीमतों का पूरा सेट भेजना होगा. अगर आपने 30 से कम होने पर, कम से कम कीमत के साथ दी गई सभी कीमतों को इस तरह से प्रोसेस किया जाता है सामान्य है और बाकी दरें 30 कम से कम स्तर तक उपलब्ध नहीं हैं. अगर आपने 30 से ज़्यादा किराये की जानकारी भेजी है, तो 30वें किराये के बाद की जानकारी को हटा दिया जाएगा .

ठहरने की कुल अवधि: 0.

taxes[] 30 float ठहरने की अवधि के हिसाब से तय की गई कीमतों में टैक्स का हिस्सा.

इंडेक्स n में दी गई वैल्यू, n+1 के हिसाब से है ठहरने की कुल अवधि.

fees[] 30 float ठहरने की अवधि के हिसाब से तय की गई कीमतों में शामिल शुल्क.

इंडेक्स n में दी गई वैल्यू, n+1 के हिसाब से है ठहरने की कुल अवधि.

उदाहरण

लॉन्ग ऑब्जेक्टिव सिस्टम (एलओएस) के आधार पर किराया और टैक्स

यहां दिए गए उदाहरण में, ठहरने की कम से कम अवधि दो साल सेट करने के बारे में बताया गया है का इस्तेमाल करें. अगर आपने 1/9/2023 के लिए startDate को बिना endDate के सेट किया है, तो इसका मतलब है कि आप सिर्फ़ एक तारीख के लिए दरें तय कर रहे हैं और आपको endDate.

occupancyPrices कलेक्शन को 2 पर सेट करने से, अलग-अलग बुकिंग के लिए अलग-अलग किराये तय किए जा सकते हैं. इसलिए, 09/04/23 को कोई जगह उपलब्ध न होने पर, rates की उपलब्धता सीमित हो जाती है.

दिखाए गए taxes कलेक्शन का हिसाब, दर के 10% के तौर पर लगाया जाता है.

यहां दिए गए fees कलेक्शन में, हर बार ठहरने पर 50 डॉलर का सफ़ाई शुल्क लागू होता है.

अगर चेक इन की पूरी तारीख उपलब्ध नहीं है &dash;9/3/2023, तो आपको साफ़ तौर पर तारीख भेजें और rates, taxes और productPrices को हटा दें यह बताता है कि अनुरोधित तारीख के लिए कोई उपलब्धता नहीं है.

{
  "requestTime": "2023-08-10T12:15:222",
  "propertyPrices": {
    "arrivalDatePrices": [
      {
        "startDate": {
          "year": 2023,
          "month": 9,
          "day": 1
        },
        "productPrices": [
          {
            "occupancyPrices": [
              {
                "adults": 2,
                "prices": [
                  {
                    "currencyCode": "USD",
                    "rates": [
                      0, 200, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
                    ],
                    "taxes": [
                      0, 20, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
                    ],
                    "fees": [
                      0, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
                    ]
                  }
                ]
              }
            ]
          }
        ]
      },
      {
        "startDate": {
          "year": 2023,
          "month": 9,
          "day": 3
        },
        "productPrices": [
          {
            "occupancyPrices": [
              {
                "adults": 2,
                "prices": [
                  {
                    "currencyCode": "USD",
                    "rates": [
                      0, 200, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
                    ],
                    "taxes": [
                      0, 20, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
                    ],
                    "fees": [
                      0, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  }
}

जवाब का मुख्य भाग

अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.

JSON के काेड में दिखाना
        {
          "name": "string"
        }
        
फ़ील्ड
name प्रॉपर्टी की उस कीमत के संसाधन का नाम जिसमें बदलाव किया गया है. यह इस फ़ॉर्मैट में हो:
accounts/{account}/properties/{property}.