> ## Documentation Index
> Fetch the complete documentation index at: https://demo-travel.webbinghub.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Confidential suppliers and presenter mode

> Some suppliers' terms make their data confidential. See what Omnibeds hides outside presenter mode, where the check runs, and the rules for code and fixtures.

Hotelbeds' terms treat the information its API returns as confidential, and Omnibeds treats RateHawk the same way. Their data is only served to a session that has unlocked presenter mode. Everyone else uses the product fully with the other suppliers, and the product must keep working if a confidential supplier's access is withdrawn.

A supplier is confidential when it is marked so in `lib/constants.ts`; `isConfidential(id)` answers the question everywhere.

## What is hidden outside presenter mode

| Area | Without presenter mode |
| - | - |
| Search | The supplier isn't searched; asking for it is refused with a plain message |
| Bookings | Its bookings are left out of the list, and opening one is refused |
| Quotes | A quote with one of its options is hidden, and can't be sent, shared or printed even in presenter mode |
| Logs | Its traces are relabelled as presenter-only options without the hotel, and its raw payloads and normalized data are withheld |
| Images and content | Its hotel photos and content are only shown in presenter mode |

## Where the check runs

The check is part of the command, not the screen. A command declares `confidential(input)`, and `execute()` refuses with `PRESENTER_REQUIRED` (403) when it returns true and presenter mode isn't unlocked. A scheduled job or an assistant calling the same command meets the same rule. See [Commands](https://demo-travel.webbinghub.io/docs/architecture/commands.md).

## Rules for code and data

> [!WARNING]
>
> Recorded payloads, fixtures and content from a confidential supplier are never committed, never served publicly, and never shown in public screenshots or videos.

* Replay mode for Hotelbeds uses synthetic fixtures, never recorded real data.
* Its adapter is built only from the supplier's public documentation.
* The supplier may be named honestly, for example as a test environment, but without its logo or any partner wording.
* Every new code path that touches a confidential supplier's data goes through a command with a `confidential` check, so it can't be reached without presenter mode.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.