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

# Erori

> Formatul și codurile erorilor returnate de API-ul GetQR.

> [!NOTE]
>
> API-ul GetQR este în versiune beta și este disponibil pentru anumite spații de lucru. Detaliile se pot schimba înainte de lansarea generală.

API-ul GetQR folosește coduri de stare HTTP standard. Cererile reușite returnează `2xx`. Cererile eșuate returnează `4xx` sau `5xx`, cu un corp JSON care explică ce nu a mers bine.

## Formatul erorilor

Toate erorile au aceeași formă: un cod stabil, un mesaj ușor de citit și un link către descrierea acelui cod.

```json theme={null}
{
  "error": {
    "code": "unauthorized",
    "message": "Unauthorized: Invalid API key.",
    "doc_url": "https://getqr.com/account/api-docs#error-unauthorized"
  }
}
```

**error.code** `string` *required*

Cod de eroare stabil, destinat procesării automate. Folosiți-l în cod în locul mesajului. Consultați [Coduri de eroare](#coduri-de-eroare).

**error.message** `string` *required*

Descrierea problemei, ușor de citit. Formularea se poate schimba.

**error.doc\_url** `string` *required*

Link către descrierea codului de eroare în documentația API din contul dvs. GetQR.

## Coduri de eroare

| Cod | Status HTTP | Când apare |
| - | - | - |
| `bad_request` | 400 | Cererea este formată greșit: corpul nu este JSON valid, antetului `Authorization` îi lipsește prefixul `Bearer ` sau acțiunea nu este permisă în starea actuală a resursei (de exemplu, anularea unei creări în masă deja încheiate). |
| `unauthorized` | 401 | Cheia API lipsește sau este invalidă, de exemplu pentru că a fost regenerată. |
| `forbidden` | 403 | Abonamentul proprietarului spațiului de lucru nu este activ sau rolul dvs. în spațiul de lucru nu permite această acțiune. |
| `exceeded_limit` | 403 | Ați atins o limită a planului. Pe planul Single QR: crearea sau duplicarea unui cod QR când spațiul de lucru are deja unul ori pornirea unei creări în masă. |
| `not_found` | 404 | Resursa nu există sau nu se află în spațiul dvs. de lucru, endpointul nu există sau API-ul nu este activat pentru spațiul dvs. de lucru. |
| `method_not_allowed` | 405 | Endpointul există, dar nu acceptă această metodă HTTP. Antetul `Allow` enumeră metodele acceptate. |
| `conflict` | 409 | Cererea intră în conflict cu datele existente: slugul linkului scurt este deja ocupat, o cerere cu același `Idempotency-Key` este încă în curs, o programare se suprapune cu una existentă sau o arhivă în masă nu este încă gata. |
| `invite_pending` | 409 | Ați fost invitat în spațiul de lucru, dar nu v-ați alăturat încă. Cererile cu cheie API nu returnează acest cod: spațiul de lucru al cheii este întotdeauna unul din care faceți parte. |
| `invite_expired` | 410 | Invitația dvs. în spațiul de lucru a expirat. Cererile cu cheie API nu returnează acest cod, din același motiv. |
| `unprocessable_entity` | 422 | Corpul sau parametrii de interogare nu au trecut validarea. Mesajul indică câmpul și problema. Consultați [Erori de validare](#erori-de-validare). |
| `rate_limit_exceeded` | 429 | Cheia API și-a consumat cererile pentru fereastra curentă. Consultați [Limite de cereri](https://docs.getqr.com/ro/api/rate-limits.md). |
| `internal_server_error` | 500 | Ceva nu a mers bine la noi. Reîncercați mai târziu și contactați asistența dacă problema persistă. |

## Erori de validare

Când corpul sau parametrii de interogare nu trec validarea, API-ul răspunde cu `422`. Mesajul descrie primul câmp invalid sub forma `<issue>: <field>: <details>`:

```json theme={null}
{
  "error": {
    "code": "unprocessable_entity",
    "message": "too_big: pageSize: Max page size is 100.",
    "doc_url": "https://getqr.com/account/api-docs#error-unprocessable_entity"
  }
}
```

Câmpurile imbricate folosesc notația cu punct, de exemplu `link.url`.

## Gestionarea erorilor

* Decideți pe baza lui `error.code`, nu a lui `error.message`.
* Nu reîncercați erorile `4xx` fără modificări: corectați mai întâi cererea. Excepțiile sunt un `409` pentru o cerere încă în curs și `429`.
* La `429`, așteptați numărul de secunde din antetul `Retry-After`. Consultați [Limite de cereri](https://docs.getqr.com/ro/api/rate-limits.md#când-depășiți-limita).
* Reîncercați erorile `5xx` cu backoff exponențial.

## Probleme frecvente

> [accordion] Fiecare cerere returnează 404 "This endpoint is not available."
>
> API-ul este în versiune beta și nu este încă activat pentru spațiul dvs. de lucru.

> [accordion] 404 "This endpoint does not exist."
>
> Calea este greșită. Comparați-o cu paginile endpointurilor și verificați că începe cu `/api/v1/`.

> [accordion] 403 "Access denied: This account does not have an active subscription."
>
> Abonamentul proprietarului spațiului de lucru s-a încheiat. Cheia API funcționează din nou imediat ce proprietarul se reabonează.

> [accordion] 403 "API access is not available for this role."
>
> Rolul dvs. în spațiul de lucru este Viewer. Doar proprietarul spațiului de lucru și utilizatorii cu rolul Editor pot folosi API-ul.

## Ce urmează

> [card] [Limite de cereri](https://docs.getqr.com/ro/api/rate-limits.md)

> [card] [Autentificare](https://docs.getqr.com/ro/api/authentication.md)


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