@revolugo/booking-api-client
TypeScript icon, indicating that this package has built-in type declarations

5.8.1 • Public • Published

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.


## Getting Started

### Import & Configure

```js
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 \ | Environment.SANDBOX) | apiKey | Required | Public or Private Api Key provided by Revolugo | | 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)
    }
  },
)

Package Sidebar

Install

npm i @revolugo/booking-api-client

Weekly Downloads

1,902

Version

5.8.1

License

none

Unpacked Size

910 kB

Total Files

38

Last publish

Collaborators

  • davidrevolugo