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

# Introduction

> Integrate with EatNow through the Partner API to read availability, create reservations, and manage bookings on behalf of a restaurant.

The Partner API is a REST API scoped to a single restaurant. Each API token grants access to one restaurant's catalog (tables, rooms, shifts, discounts), its availability, and its reservations.

## Base URL

<CodeGroup>
  ```text Production theme={null}
  https://app.eat-now.io/api/partner/v1
  ```
</CodeGroup>

## Authentication

All business endpoints require a **Bearer token** passed in the `Authorization` header. Tokens are issued per restaurant and scope every request to that restaurant.

```bash theme={null}
curl https://app.eat-now.io/api/partner/v1/me \
  -H "Authorization: Bearer YOUR_API_TOKEN"
```

<Note>
  Use [`GET /me`](/api-reference/authentication/get-auth-context) to verify a token and inspect the restaurant and scopes it maps to before calling business endpoints.
</Note>

## Response format

Successful responses return JSON with status codes `200` or `201`. Error responses share a common envelope:

```json theme={null}
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "party_size must be greater than 0",
    "request_id": "req_01H...",
    "details": { "field": "party_size" }
  }
}
```

Always log `request_id` — include it when contacting support so we can trace the exact call in our systems.

## Status codes

| Code          | Meaning                                                          |
| ------------- | ---------------------------------------------------------------- |
| `200` / `201` | Success                                                          |
| `400`         | Malformed request (invalid JSON, wrong types)                    |
| `401`         | Missing or invalid Bearer token                                  |
| `403`         | Token is valid but not allowed for this resource                 |
| `404`         | Resource does not exist or is not visible to this token          |
| `409`         | Conflict (e.g. reservation slot no longer available)             |
| `422`         | Business-rule violation (e.g. party size exceeds shift capacity) |

## Where to start

<CardGroup cols={2}>
  <Card title="Who am I" icon="key" href="/api-reference/authentication/get-auth-context">
    Verify your token and inspect the restaurant it maps to.
  </Card>

  <Card title="Search availability" icon="calendar-search" href="/api-reference/availability/search-bookable-reservation-slots">
    Find bookable slots for a party on a given date.
  </Card>

  <Card title="Create a reservation" icon="calendar-plus" href="/api-reference/reservations/create-a-reservation">
    Book a slot on behalf of a customer.
  </Card>

  <Card title="Catalog" icon="list" href="/api-reference/catalog/get-all-tables">
    Browse tables, rooms, shifts, and discounts.
  </Card>
</CardGroup>
