Appearance
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.
| Grup | Scop |
|---|---|
| Companii | Listează, citește, creează, actualizează și șterge companii. |
| Contacte | Gestionează persoanele de contact ale unei companii. |
| Adrese | Gestionează 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/PUTVezi 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": "« 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 »", "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.