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

# Introducere API

> Autentifică-te și accesează resursele Amovio prin API REST.

## Prezentare generală

API-ul Amovio urmează convențiile REST. Toate răspunsurile sunt în format JSON. Accesul este securizat prin **Bearer Token** (JWT).

## Autentificare

### Obținerea token-ului

```bash theme={null}
POST /auth/login
Content-Type: application/json

{
  "email": "user@firma.ro",
  "password": "parola_ta"
}
```

Răspuns:

```json theme={null}
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "expires_in": 3600
}
```

### Utilizarea token-ului

Includ token-ul în header-ul `Authorization` la fiecare request:

```bash theme={null}
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
```

## URL de bază

```
https://api.amovio.ro/v1
```

## Endpoint-uri principale

| Resursă   | Endpoint         |
| --------- | ---------------- |
| Vehicule  | `GET /vehicles`  |
| Leads     | `GET /leads`     |
| Contacte  | `GET /contacts`  |
| Facturi   | `GET /invoices`  |
| Contracte | `GET /contracts` |

## Paginare

Toate listele sunt paginate:

```
GET /vehicles?page=1&limit=20
```

Răspuns:

```json theme={null}
{
  "data": [...],
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 154,
    "totalPages": 8
  }
}
```

## Erori

| Cod HTTP | Descriere                                |
| -------- | ---------------------------------------- |
| `400`    | Date invalide în request                 |
| `401`    | Token lipsă sau expirat                  |
| `403`    | Acces interzis (permisiuni insuficiente) |
| `404`    | Resursa nu a fost găsită                 |
| `422`    | Eroare de validare câmpuri               |
| `500`    | Eroare internă server                    |

## Webhooks

Amovio poate trimite notificări HTTP la URL-ul tău când se produc evenimente:

| Eveniment           | Descriere                       |
| ------------------- | ------------------------------- |
| `lead.created`      | Lead nou creat                  |
| `invoice.validated` | Factură validată de ANAF        |
| `contract.signed`   | Contract semnat de ambele părți |
| `vehicle.sold`      | Vehicul marcat ca vândut        |

Configurează webhook-ul din **Setări → API → Webhooks**.
