# Booking Logic

With the **Prio Distributor API**, connecting to our platform and processing bookings couldn’t be easier. Whether you’re looking to **browse product content**, **check live availability**, or **confirm bookings in real-time**, our API offers **a streamlined process** designed for travel resellers, marketplaces, and OTAs.

This page explains the **end-to-end booking flow**, giving you a clear roadmap to building your integration, from retrieving content to issuing tickets.

### The Four Pillars of the Prio Distributor API

The Distributor API is divided into **four core areas**, each designed to handle a key part of the booking journey:

| 🔗 API Type                                             | 💡 What It Does                                                                                           |
| ------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| [**Content APIs**](/endpoints/products.md)              | Retrieve **products, destinations, categories**, and other key product details to populate your platform. |
| [**Availability APIs**](/endpoints/availability.md)     | Check real-time **availability, capacity, and time slots** for the products you want to sell.             |
| [**Reservation APIs**](/endpoints/reservations-cart.md) | Temporarily **hold reservations** while you collect payment or manage a shopping cart.                    |
| [**Booking APIs**](/endpoints/orders.md)                | Confirm reservations, **create direct bookings**, and retrieve **barcodes/tickets** for your guests.      |

### Additional APIs for Full Flexibility

| 🔗 API Type                                             | 💡 What It Does                                                                                    |
| ------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| [**Authentication APIs**](/endpoints/authentication.md) | Secure your connection using **OAuth-based credentials**.                                          |
| [**Payment APIs**](/endpoints/payments.md)              | Use Prioticket’s **Payment Service Provider** integrations (optional) or handle payments yourself. |
| [**Contact APIs**](/endpoints/contacts.md)              | Manage **guest profiles** (only needed for recurring guests).                                      |
| [**Notification APIs**](/endpoints/notifications.md)    | Set up **webhooks** to receive real-time updates on external booking changes.                      |
| [**System APIs**](/endpoints/system.md)                 | Monitor **API uptime** and system health.                                                          |

### Create a booking

To book a product through this API, you generally need to follow these steps:

1. Check availability and pricing: Use the Get Products and Get Availabilities endpoints to verify if tickets for the desired tour or activity are available for a specific date, time, and quantity.
2. Request a booking hold: If tickets are available, request a pricing / availability hold for the booking using the Create Reservation endpoint.
3. Collect payment: Once a booking hold is requested, collect payment either through the provided payment endpoints or via your own payment service provider.
4. Confirm the booking: Finalize the booking by confirming it using the confirm order endpoint.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.prioticket.com/key-concepts/booking-logic.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
