# Overview

Welcome to the Hostex API, where seamless integration meets comprehensive management of property and reservation systems. Our API provides a powerful suite of features for developers looking to automate and interact with the Hostex platform.

## Quickstart

Get started with our API quickly by visiting our [Quickstart Guide](/reference/quickstart). This guide provides step-by-step instructions to make your first API call, authenticate successfully, and understand the basic operations.

## Authentication

Each API request must be authenticated with a valid `Hostex-Access-Token` passed in the request header.

## Key Functionalities

Our API supports a range of functionalities across various domains:

### Properties

| Feature          | Method | Endpoint      | Description                                                                               |
| ---------------- | ------ | ------------- | ----------------------------------------------------------------------------------------- |
| Query Properties | `GET`  | `/properties` | Lists properties with their details. Supports filtering by `id`, `group_id` and `tag_id`. |
| Query Groups     | `GET`  | `/groups`     | Lists property groups with their associated property ids.                                 |
| Query Tags       | `GET`  | `/tags`       | Lists property/room type tags with their associated property and room type ids.           |

### Room Types

| Feature          | Method | Endpoint      | Description                                                                   |
| ---------------- | ------ | ------------- | ----------------------------------------------------------------------------- |
| Query Room Types | `GET`  | `/room_types` | Lists room types with their details. Supports filtering by `id` and `tag_id`. |

### Reservations

| Feature            | Method | Endpoint        | Description                                             |
| ------------------ | ------ | --------------- | ------------------------------------------------------- |
| Query Reservations | `GET`  | `/reservations` | Provides detailed lookup of reservation information.    |
| Create Reservation | `POST` | `/reservations` | Enables direct creation of a new reservation in Hostex. |

### Availabilities

| Feature                        | Method | Endpoint          | Description                                                            |
| ------------------------------ | ------ | ----------------- | ---------------------------------------------------------------------- |
| Query Property Availabilities  | `GET`  | `/availabilities` | Retrieves availability information for properties for specified dates. |
| Update Property Availabilities | `POST` | `/availabilities` | Updates the availability status of properties.                         |

### Listing Calendar

| Feature                     | Method | Endpoint                 | Description                                                    |
| --------------------------- | ------ | ------------------------ | -------------------------------------------------------------- |
| Query Listing Calendars     | `POST` | `/listings/calendar`     | Retrieves detailed calendar information for multiple listings. |
| Update Listing Inventories  | `POST` | `/listings/inventories`  | Updates inventory levels for channel listings.                 |
| Update Listing Prices       | `POST` | `/listings/prices`       | Modifies listing prices for channel listings.                  |
| Update Listing Restrictions | `POST` | `/listings/restrictions` | Alters listing restrictions for channel listings.              |

### Messaging

| Feature                  | Method | Endpoint                           | Description                                            |
| ------------------------ | ------ | ---------------------------------- | ------------------------------------------------------ |
| Query Conversations      | `GET`  | `/conversations`                   | Retrieves a list of guest conversations and inquiries. |
| Get Conversation Details | `GET`  | `/conversations/{conversation_id}` | Provides messages and conversation details.            |
| Send Message             | `POST` | `/conversations/{conversation_id}` | Sends a text or image message to a guest.              |

### Reviews

| Feature         | Method | Endpoint                      | Description                                             |
| --------------- | ------ | ----------------------------- | ------------------------------------------------------- |
| Query Reviews   | `GET`  | `/reviews`                    | Queries reviews akin to the Hostex Reviews Page.        |
| Create a Review | `POST` | `/reviews/{reservation_code}` | Submits a review or a reply for a specific reservation. |

### Tasks

| Feature      | Method | Endpoint  | Description                                                                                                                           |
| ------------ | ------ | --------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| Query Tasks  | `GET`  | `/tasks`  | Lists schedule tasks (cleaning, maintenance, reception, room service, other). Filter by date range, staff, property, type and status. |
| Query Staffs | `GET`  | `/staffs` | Lists schedule staffs (cleaners, etc.) for assigning and tracking tasks.                                                              |

## Error Handling

Errors are communicated through `request_id`, `error_code`, and `error_msg` for clarity.

## Response Format

All responses adhere to a standardized JSON format, ensuring a consistent and predictable API experience.

## Webhooks

Leverage real-time notifications with webhooks. For usage details, visit the [Webhooks Usage Guide](/reference/webhooks).

For more detailed information on endpoint specifics, request structures, and operational guidance, please refer to our comprehensive API documentation.

## API Version

* **Current Version**: see the version field in the [API Reference](/reference) – it is automatically synced from our [changelog](/reference/changelog).