Sari la conținut

Referință API ​

API-ul REST notso WMS 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.

Versiune ​

Toate endpoint-urile documentate aici sunt sub /api/v1, versiunea curentă. Prefixul /api/v2 este activ și servește aceleași rute, cu un comportament identic: este un alias rezervat pentru modificările incompatibile cu /api/v1 care vor apărea ulterior. Până atunci, ambele prefixe răspund la fel și includ automat toate funcționalitățile recente (deduplicarea liniilor cu același produs, auditul și izolarea per tenant). Exemplele din această documentație folosesc /api/v1.

Operațiile unei chei de client ​

O cheie legată de un client extern poate face exact operațiile de mai jos, în schema de client descrisă pe pagina fiecărei resurse. Scrierile POST pe produse, avize și comenzi acceptă antetul Idempotency-Key (vezi erori).

OperațieDescriere
GET /api/v1/productsListează produsele clientului.
GET /api/v1/products/{id}Citește un produs.
POST /api/v1/productsCreează un produs.
PUT /api/v1/products/{id}Actualizează un produs.
DELETE /api/v1/products/{id}Șterge un produs fără stoc.
GET /api/v1/ordersListează comenzile.
GET /api/v1/orders/{id}Citește o comandă cu istoricul ei.
POST /api/v1/ordersPlasează o comandă.
GET /api/v1/orders/{id}/change-requestsListează cererile de modificare ale unei comenzi.
POST /api/v1/orders/{id}/change-requestsCere modificarea unei comenzi.
GET /api/v1/inventoryStocul pe locații.
GET /api/v1/inventory/summaryStocul agregat per produs.
GET /api/v1/asnsListează avizele de expediție.
GET /api/v1/asns/{id}Citește un aviz.
POST /api/v1/asnsAnunță o recepție.
POST /api/v1/asns/{id}/cancelAnulează un aviz neînceput.

Grupuri de resurse ​

GrupScop
ProduseListează, citește, creează, actualizează și șterge produse din catalog.
ComenziCreează comenzi, citește-le după id, actualizează statusul, șterge comenzile noi sau anulate.
Avize de expediție (ASN)Anunță marfa care sosește, citește starea recepției, anulează un aviz.
StocuriCitește stocul per locație și sumarele agregate; adaugă sau scoate stoc.
FurnizoriGestionează înregistrările furnizorilor.
LocațiiListează locațiile depozitului și ierarhia lor.
CurieriDescoperă curierii configurați pentru tenantul tău — necesar la crearea comenzilor.
Facturi (billing)Trimite facturi de platformă în modulul "Facturi" din tabloul de bord (folosit de NotSoCRM).
Service auto (moto / ATV)Atelier de service: clienți, vehicule, comenzi de reparație, devize, inspecții, pontaj, urmărire publică.

Webhook-uri ​

Pe lângă cererile către API, notso WMS poate trimite evenimente către sistemele clienților 3PL (comandă expediată, recepție finalizată). Formatul livrării, semnătura, fereastra de 300 de secunde, lista de verificare a receptorului și codurile de rezultat sunt descrise în Webhook-uri către clienții 3PL.

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

Pe /api/* platforma forțează randarea ca JSON a oricărei erori (validare, excepție internă), așa că antetul Accept: application/json este opțional. Îl poți trimite oricum — multor clienți HTTP le ușurează tratarea răspunsurilor.

Forma standard a unui răspuns ​

Resursă unică:

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

Colecție (paginată): endpoint-urile de listare (index, summary) 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.notsowms.ro/api/v1/products?page=1",
    "from": 1,
    "last_page": 12,
    "last_page_url": "https://tenant.notsowms.ro/api/v1/products?page=12",
    "links": [
        { "url": null, "label": "&laquo; Previous", "active": false },
        { "url": "https://tenant.notsowms.ro/api/v1/products?page=1", "label": "1", "active": true },
        { "url": "https://tenant.notsowms.ro/api/v1/products?page=2", "label": "Next &raquo;", "active": false }
    ],
    "next_page_url": "https://tenant.notsowms.ro/api/v1/products?page=2",
    "path": "https://tenant.notsowms.ro/api/v1/products",
    "per_page": 25,
    "prev_page_url": null,
    "to": 25,
    "total": 287
}

Controlează dimensiunea paginii cu ?per_page=N și navighează cu ?page=N. Reține: links este un array de linkuri per pagină (url/label/active), nu un obiect first/last/prev/next.

Creare / actualizare (ex. POST /orders, PUT /products/{id}) returnează resursa rezultată sub data — 201 Created la creare, 200 OK la actualizare:

json
{
    "data": { /* resursa creată sau actualizată */ }
}

Ștergere / acțiune simplă returnează un mesaj scurt:

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

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

Documentație API notso WMS