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

# API versioning

> How Baato versions its API endpoints and how to target a specific version.

Baato versions its API in the URL path, so a request always states which version it expects.
Existing versions keep working when a new one ships — your integration never changes
behaviour underneath you.

## Baato API v1

The current version. Every endpoint is prefixed with:

```bash theme={null}
https://api.baato.io/api/v1/
```

Version 1 covers all six services: [Search](/services/search),
[Reverse Search](/services/reverse), [Places](/services/places),
[Nearby Places](/services/nearby-places), [Directions](/services/directions) and
[Map Styles](/services/styles).

## Setting the version in a client library

The client libraries default to v1, so you rarely need to set it. When you do, each exposes
it as an explicit option:

<CodeGroup>
  ```javascript JavaScript theme={null}
  new Baato.Search()
    .setApiVersion("1.0") // default
    .setBaseUrl("https://api.baato.io/api")
    .setKey("YOUR_BAATO_ACCESS_TOKEN");
  ```

  ```java Java theme={null}
  new BaatoSearch(this)
      .setApiVersion("1") // default
      .setAccessToken("YOUR_BAATO_ACCESS_TOKEN");
  ```

  ```python Python theme={null}
  client = BaatoClient(
      access_token="YOUR_BAATO_ACCESS_TOKEN",
      endpoint="https://api.baato.io/api",
      version="v1",  # default
  )
  ```
</CodeGroup>

<Tip>
  Pin the version explicitly in production code. It costs one line and makes the upgrade
  path visible when v2 arrives.
</Tip>
