Revolugo Booking API Client
The Revolugo Booking API Client provides convenient access to the Revolugo Booking API from
applications written in server-side JavaScript or for browser based applications. This client exposes Typescript types.
See the Revolugo Booking API documentation.
Installation
The package can be installed through NPM or Yarn:
npm install --save @revolugo/revolugo-client-js
yarn add @revolugo/revolugo-client-js
Getting Started
Import & Configure
import { ApiClient } from '@revolugo/booking-api-client'
const revolugoApiClient = new ApiClient({
apiEnvironment: Revolugo.Environment.LIVE,
apiKey: '<public-or-private-api-key-here>',
apiVersion: 'v1',
})
Configuration
Option | Default | Description |
---|
apiEnvironment | Required | Target environment for the client (Environment.PRODUCTION \ |
apiVersion | Required | Api version |
Usage
See the Revolugo Booking API documentation for details about request/reponse data.
const hotelOfferRequest = await revolugoApiClient.hotelOfferRequests.create({
adult_count: 5,
check_in_date: '2021-05-30',
check_out_date: '2021-06-02',
children: '2,8',
latitude: 45.76405021831942,
longitude: 4.835700988769532,
room_count: 3,
source_market: 'FR'
})
Polling
Some endpoints require polling to get the complete result. Polling is already handled by the library:
revolugoApiClient.hotelOffers.list({
currency: HotelOffersCurrencyEnum.Eur,
hotelOfferRequestId: 'xxxx-xxxx-xxxx-xxxx-xxxx'
}, (err, result) => {
if (err) {
console.log("Error while Polling")
handleError(err)
return
}
if (result.meta.status === 'in-progress') {
console.log("Still Polling")
doSomething(result)
} else {
console.log("Done Polling")
doSomethingElse(result)
}
})