# Authentication

OCTO uses Bearer authentication. To authenticate requests, send an API key as a Bearer token in the `Authorization` header:

```http
Authorization: Bearer {your_API_key}
```

The supplier issues your API key by creating a connection for your reseller account in Ventrata. The same connection also controls product access and applicable pricing.

The API key is a UUID value, for example: `5bd1629a-323e-4edb-ac9b-327ef51e6136`

{% hint style="warning" %}
Note that in Ventrata's implementation of OCTO, **the API key provides access to a single supplier**. You will have different API keys for each supplier you'd like to connect with.
{% endhint %}

To obtain an API key for Ventrata's test supplier account during development, see [Testing Credentials](https://docs.ventrata.com/getting-started/test-credentials).

All API requests must be made over [HTTPS](https://en.wikipedia.org/wiki/HTTPS). Calls made over plain HTTP will fail.

Requests without authentication fail. If the token is invalid or deactivated by the supplier, the API returns `403 Forbidden`.

{% hint style="warning" %}
API keys must be kept secure. You are responsible for any bookings made with your API key. If your key is disclosed publicly, ask the supplier to delete and recreate your connection, or contact <connectivity@ventrata.com> to rotate the key.
{% endhint %}

Every `POST`, `PATCH`, and `DELETE` request must use the `Content-Type: application/json` header, and the request body must be a JSON-encoded string. Every endpoint will return JSON unless otherwise stated.


---

# 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.ventrata.com/getting-started/getting-started.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.
