# Getting started

Before you can start making RtB API calls, we  will cover some basics such as authorization, authentication, rate limiting and versioning.

## Authentication

As with any other Connectivity API, you can use [machine account based authentication](/connectivity/docs/authentication#machine-account).

## Authorization

RtB API requires the same property permissions as the [Reservations API](/connectivity/docs/reservations-api/reservations-overview).

## Rate limiting

We apply rate limiting in the RtB API, please see [connectivity rate limiting](/connectivity/docs#rate-limiting) for more information.

## Versioning

It is mandatory to send a versioning header when using the RtB API.

You can use `X-Booking-Api-Version` header to pass the version information.

Currently, the minimum version is `1.0.0` and the latest version is `1.0.0`.


```http
X-Booking-Api-Version: 1.0.0
```

## Request headers

Below headers are mandatory to provide when making RtB API calls.

| Header | Description | Type | Required |
|  --- | --- | --- | --- |
| `Authorization` | [Your Base-64 encoded username and password.](/connectivity/docs/request-to-book/technical-overview#authentication) | String | Required |
| `X-Booking-Api-Version` | [API Version](/connectivity/docs/request-to-book/technical-overview#versioning) | String | Required |


## Messaging

To make use of pre-reservation messaging via [Messaging API](/connectivity/docs/messaging-api/understanding-the-messaging-api), head to [pre-reservation messaging](/connectivity/docs/request-to-book/pre-reservation-messaging) section.

This requires implementing Messaging API.