Dostępność i ceny
Wszystkie trzy metody działają z kluczem publicznym, więc sklep internetowy może je wywoływać bezpośrednio z przeglądarki.
availability.calendar()
availability.calendar(
input: AvailabilityCalendarInput,
options?: RequiplyRequestOptions,
): Promise<AvailabilityCalendarResponse>
Wymagane: startDate i endDate jako zwykłe daty (YYYY-MM-DD), oddalone o najwyżej 366 dni. Wartość z godziną jest zamieniana na datę w UTC, co może przesunąć ją o jeden dzień. Opcjonalne groupIds ogranicza kalendarz do najwyżej 200 pozycji.
const { days } = await requiply.availability.calendar({
startDate: '2026-07-01',
endDate: '2026-07-07',
groupIds: [cameraKitId],
});
Każdy dzień zawiera grupę, łączną ilość, zarezerwowaną ilość i availabilityStatus, który może mieć wartość null.
availability.items()
availability.items(
input: AvailabilityItemsInput,
options?: RequiplyRequestOptions,
): Promise<AvailabilityItemsResponse>
Wymagane: startDate i endDate. endDate nie może być wcześniejsze niż startDate. Daty z godziną bez przesunięcia są odczytywane w strefie czasowej organizacji. Opcjonalne: search, limit (od 1 do 100, domyślnie 25) i cursor.
const page = await requiply.availability.items({
startDate: '2026-07-01T10:00:00',
endDate: '2026-07-03T18:00:00',
search: 'camera',
limit: 25,
});
const nextCursor = page.nextCursor;
Odpowiedź ma taki sam kształt pozycji jak inventory.list() i zwraca nextCursor: string | null. Wymienia tylko pozycje, w których co najmniej jeden egzemplarz jest wolny przez cały okres. categoryId ma tu zawsze wartość null. Jeśli potrzebujesz kategorii, użyj inventory.list() z tymi samymi datami.
pricing.quote()
pricing.quote(
input: PricingQuoteInput,
options?: RequiplyRequestOptions,
): Promise<PricingQuoteResponse>
Wymagane: startDate, endDate i items. Każda pozycja potrzebuje groupId (id pozycji) i quantity. items może być puste, gdy wysyłasz bundles. Opcjonalne:
| Pole | Co robi |
|---|---|
bundles | Zestawy do zarezerwowania jako { bundleId, quantity }, z quantity w całych kompletach, z bundles.list(). Ich składniki są dodawane do pozycji. Od wersji 0.2.1. Wymaga włączonej w organizacji funkcji Zestawy. |
services | Usługi dodatkowe według serviceId z services.list(). |
clientId | Stosuje rabat procentowy tego klienta. Przeznaczone dla integracji serwerowych, które już znają klienta. |
adjustment | Korekta kosztu rezerwacji. Tylko z kluczem tajnym. |
saleLines | Towary sprzedawane razem z rezerwacją. Zobacz Sprzedaż i towary na sprzedaż. Klucz publiczny może je wysyłać tylko wtedy, gdy organizacja sprzedaje klientom. |
const quote = await requiply.pricing.quote({
startDate: '2026-07-01T10:00:00',
endDate: '2026-07-03T18:00:00',
items: [{ groupId: cameraKitId, quantity: 2 }],
services: [{ serviceId: deliveryServiceId }],
});
console.log(quote.currency, quote.total);
Daty z godziną bez przesunięcia są odczytywane w strefie czasowej organizacji, tak jak w bookings.create(). Wycena jest liczona dokładnie tak samo jak rezerwacja, więc pokazywane total to suma, którą otrzyma rezerwacja.
Odpowiedź z wyceną
| Pole | Co zawiera |
|---|---|
itemsSubtotal, servicesSubtotal | Pozycje do wynajęcia i usługi przed rabatem i korektą. |
discountableSubtotal | Część, do której stosuje się rabat klienta. Nie ma w niej usług z excludedFromDiscount. |
bundleDiscountAmount, lineBundles | Oszczędność dzięki zestawom, już uwzględniona w total (0 bez zestawów), oraz po jednym wierszu na zestaw z quantity, discountPercent, grossTotal, discountAmount i składnikami components na komplet. lineItems zawierają połączone ilości egzemplarzy z zestawów i spoza nich. Od wersji 0.2.1. |
discountPercentage, discountAmount | Rabat klienta i kwota, którą odejmuje, po rabacie zestawu. |
adjustment, adjustmentAmount | Korekta kosztu rezerwacji użyta w wycenie albo null oraz jej skutek finansowy ze znakiem (0 dla units, które zamiast tego zmienia naliczany okres). |
saleSubtotal, lineSaleItems | Towary sprzedawane razem z rezerwacją, gdy przekażesz saleLines. Nigdy nie są objęte rabatem ani korektą. Zobacz Sprzedaż i towary na sprzedaż. |
total | Koszt rezerwacji, łącznie z towarami. |
lineItems, lineServices | Po jednym wierszu na pozycję lub usługę z jej sumą częściową. unitCount to liczba naliczanych dni, godzin lub miesięcy. |