Method: accounts.properties.ingestLosPropertyPrices

Zaktualizuj ceny pojedynczego miejsca zakwaterowania za pomocą formatów cen za długość pobytu. W przypadku każdej daty przyjazdu w wybranym zakresie wszystkie ceny lotów w danym obiekcie, w tym wszystkie produkty i liczba osób, zostaną zastąpione. Nie ma to wpływu na ceny z datami przyjazdu spoza określonego zakresu dat.

Żądanie HTTP

POST https://travelpartnerprices.googleapis.com/v1/{propertyPrices.property=accounts/*/properties/*}:ingestLosPropertyPrices

Adres URL używa składni transkodowania gRPC.

Parametry ścieżki

Parametry
propertyPrices.property

string

Nazwa zasobu komponentu PropertyPrices. Ma formę accounts/{account_id}/properties/{property_id}.

account_id: ta wartość ciągu znaków to „Account ID” (Identyfikator konta). podane na stronie Ustawienia konta w Hotel Center.

property_id: wartość tego elementu musi być ciągiem znaków pasującym do identyfikatora produktu w pliku danych z listą hoteli.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "requestTime": string,
  "propertyPrices": {
    "property": string,
    "arrivalDatePrices": [
      {
        "productPrices": [
          {
            object (LosProductPrices)
          }
        ],
        "startDate": {
          object (Date)
        },
        "endDate": {
          object (Date)
        }
      }
    ]
  }
}
Pola
requestTime

string (Timestamp format)

Wymagane. Moment wysłania wiadomości o cenie LoS wyrażony w postaci ciągu RFC 3339.

Wszystkie wiadomości wysłane za pomocą requestTime w ciągu ostatnich 24 godzin zostaną przetworzone, a te, które nie zostały odrzucone.

Wiadomości są przetwarzane w kolejności requestTime, niezależnie od kolejności ich odbierania. Na przykład aktualizacja ceny o wartości requestTime w wysokości 2019-05-03T14:09:00Z otrzymana po wysłaniu wiadomości dotyczącej tych samych planów podróży z wartością requestTime wynoszącą 2019-05-03T14:10:00Z zostanie odrzucona i zastąpiona późniejszą wiadomością z sygnaturą czasową.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

propertyPrices.arrivalDatePrices[]

object (LosArrivalDatePrices)

Ceny w terminie przyjazdu. Wszystkie ceny w tym kraju (arrivalDayPrices) dotyczą konkretnego miejsca zakwaterowania, ale różnią się od dat przyjazdu.

Treść odpowiedzi

W przypadku powodzenia treść odpowiedzi obejmuje wystąpienie elementu PropertyPrices.

Zakresy autoryzacji

Wymaga następującego zakresu OAuth:

  • https://www.googleapis.com/auth/travelpartner

Więcej informacji znajdziesz w artykule Omówienie protokołu OAuth 2.0.

LosPropertyPrices

Ceny za długość pobytu określane na poziomie obiektu.

Zapis JSON
{
  "arrivalDatePrices": [
    {
      object (LosArrivalDatePrices)
    }
  ],
  "property": string
}
Pola
arrivalDatePrices[]

object (LosArrivalDatePrices)

Ceny w terminie przyjazdu. Wszystkie ceny w tym kraju (arrivalDayPrices) dotyczą konkretnego miejsca zakwaterowania, ale różnią się od dat przyjazdu.

property

string

Nazwa zasobu komponentu PropertyPrices. Ma formę accounts/{account_id}/properties/{property_id}.

account_id: ta wartość ciągu znaków to „Account ID” (Identyfikator konta). podane na stronie Ustawienia konta w Hotel Center.

property_id: wartość tego elementu musi być ciągiem znaków pasującym do identyfikatora produktu w pliku danych z listą hoteli.

LosArrivalDatePrices

Długość cen pobytu pogrupowana według zakresów dat przyjazdu.

Zapis JSON
{
  "productPrices": [
    {
      object (LosProductPrices)
    }
  ],
  "startDate": {
    object (Date)
  },
  "endDate": {
    object (Date)
  }
}
Pola
productPrices[]

object (LosProductPrices)

Ceny produktu. Wszystkie ceny w tym kraju (productPrices) dotyczą konkretnego miejsca zakwaterowania, kombinacji daty przyjazdu, ale różnych produktów.

startDate

object (Date)

Pole productPrices będzie stosowane do wszystkich dat przyjazdu między startDate a endDate włącznie.

Jeśli próbujesz określić tylko jedną datę przyjazdu (a nie zakres), funkcja endDate może zostać pominięta.

endDate

object (Date)

Pole productPrices będzie stosowane do wszystkich dat przyjazdu między startDate a endDate włącznie.

Jeśli próbujesz określić tylko jedną datę przyjazdu (a nie zakres), funkcja endDate może zostać pominięta.

Data

Reprezentuje całą datę lub jej część, na przykład datę urodzin. Pora dnia i strefa czasowa zostały określone w innym miejscu lub są nieistotne. Data zależy od kalendarza gregoriańskiego. Może to być jedna z tych wartości:

  • Pełna data z wartościami niezerowymi dotyczącymi roku, miesiąca i dnia.
  • Miesiąc i dzień bez roku (np. rocznica).
  • Sam rok z zerowym miesiącem i zerowym dniem.
  • Rok i miesiąc z zerową datą ważności (np. data ważności karty kredytowej).

Podobne typy:

Zapis JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Pola
year

integer

Rok daty. Wartość musi mieścić się w zakresie od 1 do 9999 lub od 0 do określenia daty bez roku.

month

integer

Miesiąc w roku. Musi mieścić się w zakresie od 1 do 12 lub 0, jeśli chcesz określić rok bez miesiąca i dnia.

day

integer

Dzień miesiąca. Wartość musi należeć do zakresu od 1 do 31 i jest ważna dla roku i miesiąca. Wartość 0 pozwala określić pojedynczy rok lub rok i miesiąc, w którym dzień nie jest istotny.

LosProductPrices

Ceny pobytu pogrupowane według typu produktu (kombinacje typu_roomTypeId i ratePlanId).

Zapis JSON
{
  "occupancyPrices": [
    {
      object (LosOccupancyPrices)
    }
  ],
  "roomTypeId": string,
  "ratePlanId": string
}
Pola
occupancyPrices[]

object (LosOccupancyPrices)

Ceny za liczbę osób. Wszystkie ceny w tym kraju (occupancyPrices) dotyczą konkretnego miejsca zakwaterowania, daty przyjazdu lub kombinacji produktów, ale dotyczą różnych osób.

roomTypeId

string

Unikalny identyfikator pokoju, którego dotyczy ta cena. Użyj tego identyfikatora, aby dopasować dane pakietu pokoi do danych przesłanych w danych pokoi. Więcej informacji znajdziesz w artykule Metadane pakietu sal.

Jeśli pole roomTypeId jest wypełnione, musisz też wypełnić ratePlanId.

ratePlanId

string

Unikalny identyfikator danych pakietu, do których odnosi się dana cena. Użyj tego identyfikatora, aby dopasować dane pakietu pokoi do danych przesłanych w danych pakietu. Więcej informacji znajdziesz w artykule Metadane pakietu sal.

Jeśli pole ratePlanId jest wypełnione, musisz też wypełnić roomTypeId.

LosOccupancyPrices

Ceny pobytu pogrupowane według liczby osób dorosłych.

Zapis JSON
{
  "prices": [
    {
      object (LosPrices)
    }
  ],
  "adults": integer
}
Pola
prices[]

object (LosPrices)

Ceny za długość pobytu. Wszystkie ceny w prices dotyczą konkretnej kombinacji miejsca zakwaterowania, daty przyjazdu, usługi i liczby osób.

adults

integer

Maksymalna liczba gości, które można zarezerwować na pokój, w tym dorosłych i dzieci. Ta wartość jest ustawiana dla wszystkich stawek w odpowiednim polu za obłożenie i musi być dodatnią liczbą całkowitą z zakresu od 1 do 99.

LosPrices

Ceny za długość pobytu.

Zapis JSON
{
  "rates": [
    number
  ],
  "taxes": [
    number
  ],
  "fees": [
    number
  ],
  "rateRuleId": string,
  "currencyCode": string
}
Pola
rates[]

number

Składnik stawki podstawowej ceny za długość pobytu.

Jeśli podasz odpowiednią wartość taxes, stawka ta nie będzie uwzględniała podatku (łączna cena to suma odpowiedniej stawki i podatku).

Powinna to być lista rozdzielonych przecinkami stawek. Wartość w indeksie n odpowiada długości pobytu wynoszącej n+1.

Musisz przesłać pełny zestaw LoS obejmujący 30 cen jednocześnie. Jeśli prześlesz mniej niż 30 cen, przetworzymy wszystkie podane ceny LoS w zwykły sposób, a pozostałe ceny będą niedostępne do osiągnięcia tego progu. Jeśli prześlesz więcej niż 30 cen, obniżymy wszystkie ceny powyżej 30. stawek.

Niedostępne długości pobytu powinny być określone za pomocą atrybutu 0.

taxes[]

number

Składnik podatku od cen za długość pobytu.

Powinna to być lista rozdzielonych przecinkami podatków. Wartość w indeksie n odpowiada długości pobytu wynoszącej n+1.

fees[]

number

Opcjonalnie: Składnik opłaty w przypadku cen za długość pobytu.

Powinna to być rozdzielona przecinkami lista opłat. Wartość w indeksie n odpowiada długości pobytu wynoszącej n+1.

rateRuleId

string

W przypadku cen warunkowych ten identyfikator dopasowuje stawkę do definicji w pliku definicji reguły dotyczącej stawek.

Limit znaków w tym polu to 40 znaków.

currencyCode

string

Trzyliterowy kod waluty, w której podawane są stawki i podatki. Na przykład „PLN”. w dolarach amerykańskich.

Dotyczy: rates i taxes.