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

# Error reference

> What each Ecco error code means and what to do next, for AI integrations and other Ecco connections.

When Ecco refuses a request from your AI assistant, it returns a short error with a **code**. Your assistant usually explains it for you. Find the code below to see what happened and what to do.

> [!NOTE]
>
> Every error includes a **request ID**. If you write to [support@tryecco.com](mailto:support@tryecco.com), include it. Never send your token.

## What an error contains

| Field | Meaning |
| - | - |
| `code` | The error code listed on this page. |
| `status` | The HTTP status, such as 401 or 429. |
| `detail` | What went wrong, in one sentence. |
| `fix` | The next step. |
| `retryable` | `true` if the same request can succeed later without changes. |
| `request_id` | The identifier support uses to find your request. |

## Connection and access

### unauthenticated

**HTTP 401** · Not retryable

The token is missing, mistyped, expired, or revoked. Check its status in **Configuration → AI integrations**. If it is expired or revoked, create a new token and set it up again, as described in [AI integrations](/how-to-use/ai-integrations#connect-your-assistant).

### insufficient\_scope

**HTTP 403** · Not retryable

The token does not include the permission this request needs, for example guest conversation text. Create a new token with the right options, or ask an owner or admin of the property.

### forbidden

**HTTP 403** · Not retryable

Your account cannot see this item. Use an account with access to it, or ask an owner or admin to update your role.

### property\_scope\_required

**HTTP 403** · Not retryable

This request needs access to every property of the hotel, and your account sees only some of them. Use an account with access to all properties.

### not\_found

**HTTP 404** · Not retryable

The item does not exist, or your account cannot see it. Ask the assistant to list the items again and pick one from the list. If this happens on every request, write to [support@tryecco.com](mailto:support@tryecco.com).

### NOT\_ENTITLED

**HTTP 403** · Not retryable

This feature is not part of your hotel's Ecco setup. Write to [support@tryecco.com](mailto:support@tryecco.com).

### rate\_limited

**HTTP 429** · Retryable

Too many requests in the last minute for this token or property. Wait the number of seconds shown in `Retry-After`, then ask again. Asking for several things in one question helps.

## Requests

### invalid\_input

**HTTP 400** · Not retryable

The request is not in the expected format, for example an invalid date. Rephrase the question with a clear date or period.

### result\_too\_large

**HTTP 400** · Not retryable

The answer would be too long to return at once. Ask for a shorter period, a single property, or a single day.

### human\_confirmation\_required

**HTTP 403** · Not retryable

This action changes something in Ecco and must be confirmed by a person. Open the link the assistant shows and complete the action in the Ecco dashboard.

### agent\_not\_configured

**HTTP 409** · Not retryable

The Ecco agent is not set up yet for this hotel or channel. Complete the setup in the Ecco dashboard, then ask again.

## Service

### upstream\_unavailable

**HTTP 503** · Retryable

A system Ecco reads from, such as your PMS, did not answer in time. Try again in a minute.

### internal\_error

**HTTP 500** · Retryable

Something unexpected happened on Ecco's side. Try again later. If it keeps happening, write to [support@tryecco.com](mailto:support@tryecco.com) with the request ID.

## Dashboard actions

These codes come from actions on arrivals, cleaning, and escalations. They usually mean the item has already changed: read it again before acting.

### LATE\_ARRIVAL\_ALREADY\_CONFIRMED

**HTTP 409** · Not retryable

The late arrival is already confirmed. Nothing else to do.

### LATE\_ARRIVAL\_NOT\_PENDING

**HTTP 409** · Not retryable

There is no late arrival to confirm: none is expected between 22:00 and 06:00, the guest has already arrived, or the night is over. Check today's list again.

### CHECKIN\_EXCEPTION\_NOT\_PENDING

**HTTP 409** · Not retryable

The booking has no open check-in issue that day: online check-in is complete or unknown, the guest has arrived, or it is another day. Check today's list again.

### CLEANING\_TASK\_ALREADY\_DONE

**HTTP 409** · Not retryable

The cleaning task is already done. Nothing else to do.

### WORK\_ITEM\_NOT\_FOUND

**HTTP 404** · Not retryable

The escalation was not found. List the escalations again and pick one from the list.

### WORK\_ITEM\_ALREADY\_CLOSED

**HTTP 409** · Not retryable

The escalation is already closed. Nothing else to do.

### WORK\_ITEM\_ALREADY\_OPEN

**HTTP 409** · Not retryable

The escalation is already open. Nothing else to do.

### WORK\_ITEM\_VERSION\_CONFLICT

**HTTP 409** · Retryable

Someone changed the escalation after it was read. Read it again, then repeat the action.

### WORK\_ITEM\_REQUEST\_KEY\_REUSED

**HTTP 409** · Not retryable

The same request was already used for a different action. Read the escalation again and repeat the action as a new request.

### WORK\_ITEMS\_DISABLED

**HTTP 409** · Not retryable

Escalations are not available for this account. Write to [support@tryecco.com](mailto:support@tryecco.com).

### ACTOR\_FORBIDDEN

**HTTP 403** · Not retryable

Your account cannot act on this escalation. Use an account with access to the escalation's property.


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