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

# API Reference Overview

> All endpoints of the Okasie Partner API

# API Reference

## Base URL

```
https://www.okasie.be/api/external/v1
```

All requests and responses use JSON (`Content-Type: application/json`) in UTF-8.

## Authentication

Send your secret as `Authorization: Bearer YOUR_API_SECRET` or `X-API-Key: YOUR_API_SECRET`. See [Authentication](https://docs.okasie.be/authentication.md) for scopes and for which dealers your key can reach.

## Endpoints

### Listings

| Method | Endpoint | Scope | Description |
| - | - | - | - |
| `GET` | `/listings` | any key | [List listings](https://docs.okasie.be/api-reference/listings/list.md) |
| `PUT` | `/listings/{externalReference}` | `write:listings` | [Create or replace a listing](https://docs.okasie.be/api-reference/listings/upsert.md) |
| `POST` | `/listings/bulk-upsert` | `write:listings` | [Create or replace up to 100 listings](https://docs.okasie.be/api-reference/listings/bulk-upsert.md) |
| `DELETE` | `/listings/{externalReference}` | `write:listings` | [Take a listing offline (sold or withdrawn)](https://docs.okasie.be/api-reference/listings/delete.md) |
| `POST` | `/listings/{externalReference}/status` | `write:listings` | [Change only the status](https://docs.okasie.be/api-reference/listings/status.md) |

### Locations

| Method | Endpoint | Scope | Description |
| - | - | - | - |
| `GET` | `/locations` | any key | [Dealers your key can reach](https://docs.okasie.be/api-reference/locations/list.md) |
| `GET` | `/locations/{id}/listings` | any key | [Listings of one dealer](https://docs.okasie.be/api-reference/locations/listings.md) |

### Brands

| Method | Endpoint | Scope | Description |
| - | - | - | - |
| `GET` | `/brands` | none (public) | [Makes and models to map to](https://docs.okasie.be/api-reference/brands/list.md) |

## Responses

* Success is always HTTP `200`, also when a listing is created. The payload is in `data`.
* Write endpoints return errors as `{"error": {"code", "message"}}`; read endpoints as `{"error": "<message>"}`. See [Error Handling](https://docs.okasie.be/errors.md).
* `GET /listings` and the write endpoints return [rate limit headers](https://docs.okasie.be/rate-limiting.md).

## OpenAPI specification

The [OpenAPI specification](https://docs.okasie.be/openapi.yaml) describes the same endpoints and can be imported into Postman or Insomnia or used to generate a client.

> [card] [Listings API](https://docs.okasie.be/api-reference/listings/upsert.md)
>
> Send vehicle listings

> [card] [Locations API](https://docs.okasie.be/api-reference/locations/list.md)
>
> Check which dealers you can reach


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