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

> ## Agent Instructions
> Use the documentation index to find relevant pages, then read the linked Markdown before answering and cite the source URL.
> Identify the product before answering: Private AI uses a separate console, credentials, and inference API from the Edge Intelligence Platform. Do not apply instructions from one product to the other.
> Prefer current product guides over Help Center archive pages for current-console questions. Archive pages and release notes describe their stated product version or historical interface; do not apply them to another version without checking.
> Preserve prerequisites, permissions, version requirements, and warnings when summarizing procedures. Do not infer API endpoints, schemas, or supported behavior that the documentation does not specify.

# Errors

> Response codes, messages, and error fields from the published ZEDEDA API definitions.

Response codes and error bodies are defined per endpoint. Select a status tab in the response example card to read its documented message above the example body. **Copy** copies only the example body. The **Response** section shows the schema for the status selected there; **Try it** shows the actual response after you send a request.

## Documented error responses

The examples below quote the API definitions exactly. They describe the linked operation; another endpoint may declare different codes, descriptions, or response schemas.

### 400: Bad Request

Bad Request. The API gateway did not process the request because of invalid value of filter parameters.

Source: [`GET /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands).

### 401: Unauthorized

Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.

Source: [`GET /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands).

### 403: Forbidden

Forbidden. The API gateway did not process the request because the requestor does not have edge-node level access permission for the operation or does not have access scope to the project.

Source: [`GET /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands).

### 404: Not Found

Not Found. The API gateway did not process the request because the requested resource could not be found.

Source: [`GET /api/v1/brands/id/{id}`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands-id-by-id).

### 405: Method not allowed

Method not allowed. The API request can't be performed due to a wrong edge node's admin status.

Source: [`GET /api/v1/devices/id/{id}/config/bootstrap`](https://zededa.mintlify.site/api-reference/diagnostics/get-v1-devices-id-by-id-config-bootstrap).

### 409: Conflict

Conflict. The API gateway did not process the request because this hardware brand record will conflict with an already existing hardware brand record.

Source: [`POST /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/post-v1-brands).

### 412: Precondition failed

Precondition failed. Some of preconditions haven't been met to start request processing.

Source: [`GET /api/v1/cluster`](https://zededa.mintlify.site/api-reference/edge-node-cluster/get-v1-cluster).

### 500: Internal Server Error

Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.

Source: [`GET /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands).

### 504: Gateway Timeout

Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.

Source: [`GET /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands).

### Default response

An unexpected error response.

Source: [`GET /api/v1/brands`](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands).

## Error response format

For the explicit error responses in [Query brands](https://zededa.mintlify.site/api-reference/edge-node/get-v1-brands.md), the definition uses `ZsrvResponse`. Its error-related fields are:

| Field | Description from the schema |
| - | - |
| `httpStatusCode` | http response |
| `httpStatusMsg` | summary of the error in text format |
| `error` | one or more errors will be set if the operation failed i.e. httpStatusCode != 2xx |
| `error[].ec` | Enumrated error code, describes more granular numerical value than just httpStatus |
| `error[].details` | Field captures string description of details |

### Error code values

`error[].ec` references `ZsrvErrorCode`. These are the enum values declared in the [Edge nodes OpenAPI definition](https://zededa.mintlify.site/openapi/services/edge-node.json):

* `zMsgErrorNone`
* `zMsgSucess`
* `NotFound`
* `AlreadyExists`
* `VersionMismatch`
* `RangeError`
* `LargeResult`
* `IncompleteData`
* `InvalidData`
* `FunctionUnsupported`
* `NoMemory`
* `SendFailure`
* `Timeout`
* `BadReqBody`
* `BadReqParam`
* `InvalidFieldFormat`
* `UrlNotFound`
* `ApiVersionNotSupported`
* `Unauthorized`
* `Forbidden`
* `Conflict`
* `NotModified`
* `DependencyConflict`
* `JsonFmtError`
* `ProtoFmtError`
* `CertError`
* `DataBaseConnection`
* `DBError`
* `zMsgAccepted`
* `zMsgCreated`
* `PreConditionFailed`
* `InternalServerError`

### Default error body

The same operation's `default` response uses a different schema, `googlerpcStatus`, with these fields:

| Field | Declared type |
| - | - |
| `code` | `integer (int32)` |
| `message` | `string` |
| `details` | `array` |

Use the response schema on the endpoint you are calling to determine its documented fields.
