Skip to content

Referință API

API-ul REST notso CRM expune următoarele grupuri de resurse sub /api/v1. Alege o secțiune din meniul lateral pentru detalii complete despre cereri și răspunsuri per endpoint.

GrupScop
CompaniiListează, citește, creează, actualizează și șterge companii.
ContacteGestionează persoanele de contact ale unei companii.
AdreseGestionează adresele unei companii (fiscală, livrare, sediu principal, corespondență).

Forma standard a unei cereri

Toate endpoint-urile acceptă și returnează JSON. Fiecare cerere autentificată trebuie să includă:

http
Authorization: Bearer <slug-tenant>.<cheie>
Content-Type: application/json     # pentru POST/PUT

Vezi autentificare pentru formatul complet al cheii și capabilitățile necesare per endpoint.

Forma standard a unui răspuns

Resursă unică (GET pe un singur id, POST, PUT):

json
{
    "data": { /* resursa */ }
}

POST returnează 201 Created, PUT returnează 200 OK.

Colecție (paginată): endpoint-urile de listare returnează paginatorul standard Laravel — un singur obiect cu rândurile în data și metadatele de paginare la nivelul de sus (nu sub meta):

json
{
    "current_page": 1,
    "data": [ /* resurse */ ],
    "first_page_url": "https://tenant.notsocrm.ro/api/v1/companies?page=1",
    "from": 1,
    "last_page": 3,
    "last_page_url": "https://tenant.notsocrm.ro/api/v1/companies?page=3",
    "links": [
        { "url": null, "label": "&laquo; Previous", "active": false },
        { "url": "https://tenant.notsocrm.ro/api/v1/companies?page=1", "label": "1", "active": true },
        { "url": "https://tenant.notsocrm.ro/api/v1/companies?page=2", "label": "Next &raquo;", "active": false }
    ],
    "next_page_url": "https://tenant.notsocrm.ro/api/v1/companies?page=2",
    "path": "https://tenant.notsocrm.ro/api/v1/companies",
    "per_page": 50,
    "prev_page_url": null,
    "to": 50,
    "total": 128
}

Controlează dimensiunea paginii cu ?per_page=N (implicit 50 pe toate cele trei resurse, plafonat la 200) și navighează cu ?page=N. Valorile sub 1 (inclusiv negative sau nevalide) sunt readuse la 1; valorile peste 200 sunt plafonate la 200 — nu se poate cere întreg tabelul unui tenant într-o singură cerere.

Ștergere returnează un mesaj scurt:

json
{ "message": "Company deleted." }

Vezi erori pentru forma răspunsurilor de eșec.