# Válaszok és hibák

> A JSON válaszok ugyanabban a borítékban jönnek. Siker esetén data, hiba esetén error, kóddal és HTTP-státusszal.

A JSON válaszok ugyanabban a borítékban jönnek. Két kivétel van: az `/openapi.json` a leírást adja vissza, boríték nélkül, a PDF-végpontok pedig `Accept: application/pdf` fejléccel a nyers PDF-et.

## Siker

```json
{ "success": true, "data": { } }
```

## Hiba

```json
{
  "success": false,
  "error": { "code": "SZAMLAZZ_3", "message": "Sikertelen bejelentkezés.", "httpStatus": 422, "details": {} }
}
```

| Mező | Jelentés |
|---|---|
| `code` | A hiba kódja. A számlázz.hu üzleti hibái `SZAMLAZZ_<kód>` alakban jönnek. |
| `message` | Olvasható leírás. |
| `httpStatus` | A HTTP-státusz. A számlázz.hu üzleti hibái `422`-vel jönnek. |
| `details` | További adatok, például a hibás mezők. |

Hibás kérésnél (a kérés törzse vagy lekérdezése nem felel meg a leírásnak) a kód `VALIDATION_ERROR`, a státusz szintén `422`.

## Hibakódok

| Kód | Státusz | Jelentés |
|---|---|---|
| `MISSING_AGENT_KEY` | `401` | Nem érkezett Agent-kulcs. |
| `VALIDATION_ERROR` | `422` | A kérés nem felel meg a leírásnak. |
| `SZAMLAZZ_<kód>` | `422` | A számlázz.hu üzleti hibát jelzett. A `<kód>` a számlázz.hu számkódja. |
| `SZAMLAZZ_SDK_ERROR` | `502` | A számlázz.hu elérése közben átviteli hiba történt, és nem sorolható üzleti hibába. |
| `NOT_FOUND` | `404` | Ismeretlen útvonal. |
| `METHOD_NOT_ALLOWED` | `405` | Az útvonal nem támogatja a metódust. |
| `INTERNAL_ERROR` | `500` | Egyéb, szerveroldali hiba. |
