ट्रैवल पार्टनर प्राइस एपीआई
ट्रैवल पार्टनर प्राइस एपीआई, आपको भेजने के लिए RESTful इंटरफ़ेस उपलब्ध कराता है प्रॉपर्टी की कीमतों को Google को कैसे सबमिट करें.
सेवा: Travelpartnerprices.googleapis.com
इस सेवा को कॉल करने के लिए, हमारा सुझाव है कि आप Google के दिए गए क्लाइंट का इस्तेमाल करें लाइब्रेरी. अगर आपके ऐप्लिकेशन को इस सेवा को कॉल करने के लिए आपकी अपनी लाइब्रेरी का उपयोग करना होगा, अपने डिस्कवरी दस्तावेज़ पाने के लिए तकनीकी खाता मैनेजर (टीएएम) इस सेवा के लिए.
सेवा एंडपॉइंट
एक सेवा एंडपॉइंट बेस यूआरएल, जो एपीआई सेवा के नेटवर्क पते के बारे में बताता है. एक सेवा एक से ज़्यादा सेवा एंडपॉइंट हो सकते हैं. इस सेवा में यह सेवा शामिल है एंडपॉइंट और सूची में दिए गए सभी यूआरआई इस सर्विस एंडपॉइंट से जुड़े हैं:
https://travelpartnerprices.googleapis.com
तरीके | |
---|---|
ingestLosPropertyPrices |
POST /v1/accounts/account_id/properties/property_id:ingestLosPropertyPrices
किसी प्रॉपर्टी के लिए, ठहरने की कुल अवधि के हिसाब से किराया अपलोड करें. एचटीटीपी के तौर पर, JSON कोड में बदले गए LoS कीमतें मैसेज (नीचे देखें) की ज़रूरत है ईमेल का मुख्य हिस्सा.
|
एपीआई की पुष्टि
ट्रैवल पार्टनर प्राइस एपीआई, इन कामों के लिए OAuth 2.0 का इस्तेमाल करता है अपने ऐप्लिकेशन की पुष्टि करें, ताकि आप एपीआई ऐक्सेस कर सकें.
सेटअप के सिलसिलेवार निर्देश पाने के लिए, OAuth सेट अप करना देखें 2.0 के तौर पर सकती है. ये हैं सेटअप Travel Partner API के लिए निर्देश. ध्यान दें कि Travel Partner API और ट्रैवल पार्टनर प्राइस एपीआई अलग हैं. इसलिए, सेटअप से जुड़े इन निर्देशों में, आपको "ट्रैवल पार्टनर कीमतें एपीआई" बदलना होगा उस नाम को कहीं भी "ट्रैवल पार्टनर एपीआई" को रेफ़र किया गया है.
अनुरोध
सिंटैक्स
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 दिनों में मैसेज आरएफ़सी 3339 के लिए, यहां बताई गई तारीख और समय की ज़रूरत
फ़्रैक्शनल सेकंड ज़रूरी नहीं हैं. इन्हें यहां तक दिखाया जा सकता है
नैनोसेकंड सटीक. उदाहरण के लिए,
|
propertyPrices | 1 | Object | प्रॉपर्टी की कीमतें. इस propertyPrices में सभी कीमतें
उसी प्रॉपर्टी पर लागू होता है.
यह एलिमेंट दोहराया नहीं गया है. कई प्रॉपर्टी की कीमतें भेजने के लिए, आपको कई एचटीटीपी अनुरोध (हर प्रॉपर्टी के लिए कम से कम एक) करने होंगे. |
arrivalDayPrices[] | 1..n | Object | पहुंचने की तारीख के लिए किराये. इस arrivalDayPrices में सभी कीमतें
किसी खास प्रॉपर्टी पर लागू होते हैं, लेकिन आने की तारीखें अलग-अलग होती हैं. |
startDate | 1 | Object | productPrices , आने वाली सभी तारीखों पर लागू होगा
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.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 | उस पैकेज डेटा का यूनीक आईडी जिससे इस कीमत की जानकारी मिलती है. इस्तेमाल की जाने वाली चीज़ें इस आईडी का इस्तेमाल करके, रूम बंडल के डेटा को पैकेजडेटा में भेजे गए आपके डेटा से मैच किया जा सकता है. ज़्यादा जानकारी के लिए, इसे देखें रूम बंडल का मेटाडेटा. |
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 | ठहरने की कुल अवधि के हिसाब से, मूल किराये का कॉम्पोनेंट.
अगर इससे जुड़ी इंडेक्स आपको एक बार में 30 कीमतों का पूरा सेट भेजना होगा. अगर आपने 30 से कम होने पर, कम से कम कीमत के साथ दी गई सभी कीमतों को इस तरह से प्रोसेस किया जाता है सामान्य है, और बाकी कीमतें 30 कम से कम स्तर तक उपलब्ध नहीं हैं. अगर आपको आप 30 से अधिक कीमत भेजेंगे,तो 30वीं दर के बाद भेजी जाने वाली कोई भी कीमत की गिरावट दर्ज की गई . ठहरने की कुल अवधि:
|
taxes[] | 30 | float | ठहरने की कुल अवधि के हिसाब से, टैक्स का हिस्सा.
इंडेक्स |
fees[] | 30 | float | ठहरने की कुल अवधि के हिसाब से, शुल्क वाला हिस्सा.
इंडेक्स |
उदाहरण
दरें और एलओएस के हिसाब से टैक्स
यहां दिए गए उदाहरण में, ठहरने की कम से कम अवधि दो साल सेट करने के बारे में बताया गया है
का इस्तेमाल करें.
अगर आपने 1/9/2023 के लिए startDate
को बिना endDate
के सेट किया है, तो इसका मतलब है कि
आप सिर्फ़ एक तारीख के लिए दरें तय कर रहे हैं और आपको
endDate
.
2
पर सेट किए गए occupancyPrices
कलेक्शन की मदद से, अलग-अलग दरें सेट की जा सकती हैं
अलग-अलग बुकिंग पर काम कर सकता है. इसलिए, 04/09/23 को कोई खाली जगह नहीं है
rates
उपलब्ध है.
दिखाए गए taxes
कलेक्शन को दर के 10% के तौर पर कैलकुलेट किया गया है.
यहां दिखाए गए fees
कलेक्शन में, हर ठहरने पर 50 डॉलर का सफ़ाई शुल्क लिया जाता है.
अगर चेक इन की पूरी तारीख उपलब्ध नहीं है ‐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} .
|