API Gestione Stock

Questa API consente di consultare e creare le richieste di reso esuberi.

Per gestire le API di gestione stock tramite autenticazione è necessario utilizzare lo scope: title_api_scope.

Operazioni

L'API espone i seguenti metodi:

Sintesi degli esuberi

Consente di ottenere la sintesi degli esuberi dei titoli a magazzino

Risponde a richieste GET verso: /titoli/surplusSummary

E' possibile passare in querystring il parametro opzionale vendor: codice editore (può essere passato più volte).

L’operazione restituisce un oggetto JSON contenente i seguenti campi: 

  • toReturn: da rendere. Contiene:
    • count: numero titoli
    • total: quantità totale
  • surplus: esubero. Contiene:
    • count: numero titoli
    • total: quantità totale
  • stock: stock. Contiene:
    • count: numero titoli
    • total: quantità totale

L'API può restituire i seguenti codici di errore:

  • 400 (Bad request): query malformata.
  • 401 (Unauthorized)il token di autenticazione non è valido oppure è scaduto.

Esempio richiesta

GET https://api.messaggerielibri.it/titoli/surplusSummary
Authorization: Bearer [TOKEN JWT]

Esempio risposta

{
	"toReturn": {
		"count": 11565,
		"total": 120258
	},
	"surplus": {
		"count": 89627,
		"total": 22228959
	},
	"stock": {
		"count": 175769,
		"total": 24112100
	}
}

Features

Per utilizzare il metodo API è necessario possedere una o più delle seguenti features:

  • title_surplus

altrimenti viene restituito 403 (Forbidden)

Ricerca esuberi

Consente di  ottenere i valori di esubero dei titoli a magazzino.

Risponde a richieste GET verso: /titoli/surplus

E' possibile passare in querystring i seguenti parametri opzionali per filtrare la ricerca:

  • vendor: codice editore. Può essere passato più volte.
  • ean: codice EAN. Può essere passato più volte.
  • filter: filtro sulla tipologia di esubero da mostrare. Può assumere uno dei seguenti valori:
    • toReturn
    • surplus
    • stock
  • orderBy: campo su cui effettuare l'ordinamento. Può assumere uno dei seguenti valori:
    • ean
    • title
    • publisher
    • toReturn
    • surplus
    • stock
    • saleOrders
    • remaining
    • suppliedM
    • suppliedT
    • suppliedY
  • orderDirection: direzione dell'ordinamento. Può assumere il valore asc per l'ordinamento crescente o il valore desc per l'ordinamento decrescente.
  • pageSize: numero massimo di risultati restituiti da una chiamata. Se non specificato, saranno restituiti al massimo 50 risultati.
  • pageIndex: numero di pagina dei risultati da restituire. Se non specificato, è restituita la prima pagina.

L’operazione restituisce un oggetto JSON contenente i seguenti campi: 

  • totalCount: numero totale di titoli trovati
  • totalPages: numero totale di pagine previste
  • page: informazioni sulla pagina corrente. Contiene:
    • index: indice della pagina corrente
    • size: dimensione della pagina
    • from: indice del primo elemento della pagina (se la pagina ha elementi)
    • to: indice dell'ultimo elemento della pagina (se la pagina ha elementi)
  • data: elenco dei titoli trovati e dei corrispondenti valori di esubero. Contiene:
    • ean: codice EAN
    • title: titolo
    • vendor: editore. Contiene:
      • code: codice editore
      • description: nome editore
    • publisher: nome editore effettivo
    • articleSaleStatus: stato vendita. Contiene:
      • code: codice stato vendita
      • description: descrizione stato vendita
    • articleStatus: risposta editore. Contiene:
      • code: codice riposta editore
      • description: descrizione risposta editore
    • printOnDemand: print on demand
    • toReturn: copie da rendere
    • surplus: copie in esubero
    • stock: copie in stock
    • saleOrders: ordini di vendita
    • supplyOrders: ordini di approvvigionamento
    • remaining: copie residue
    • supplied: copie fornite. Contiene:
      • month: valore nel mese
      • trimester: valore nel trimestre
      • year: valore nell'anno

L'API può restituire i seguenti codici di errore:

  • 400 (Bad request): query malformata.
  • 401 (Unauthorized)il token di autenticazione non è valido oppure è scaduto.

Esempio richiesta

GET https://api.messaggerielibri.it/titoli/surplus?filter=toReturn&vendor=A23&ean=1011800750001
Authorization: Bearer [TOKEN JWT]

Esempio risposta

{
	"totalCount": 1,
	"totalPages": 1,
	"page": {
		"index": 1,
		"size": 50,
		"from": 1,
		"to": 1
	},
	"data": [
		{
			"ean": "1011800750001",
			"title": "OUTCAST #1",
			"vendor": {
				"code": "A23",
				"description": "SALDA PRESS ALBI"
			},
			"publisher": "SALDA PRESS ALBI",
			"articleSaleStatus": {
				"code": "1",
				"description": "IN COMMERCIO"
			},
			"articleStatus": {
				"code": "1",
				"description": "DISPONIBILE"
			},
			"printOnDemand": false,
			"toReturn": 1,
			"surplus": 1,
			"stock": 2,
			"saleOrders": 0,
			"supplyOrders": 0,
			"remaining": 1,
			"supplied": {
				"month": 0,
				"trimester": 0,
				"year": 0
			}
		}
	]
}

Features

Per utilizzare il metodo API è necessario possedere una o più delle seguenti features:

  • title_surplus

altrimenti viene restituito 403 (Forbidden)

Creazione richiesta di reso esuberi

Consente di creare delle richieste di reso esuberi contenenti i titoli specificati.

Risponde a richieste POST verso: /titoli/surplusReturnRequest

Per identificare il reso da creare viene richiesto un oggetto JSON contenente i seguenti campi:

  • titles: elenco di titoli. Contiene: 
    • ean: codice EAN (obbligatorio)
    • quantity: numero copie (obbligatorio)
  • notes: note di consegna per le richieste di reso esuberi

L’operazione restituisce un oggetto JSON contenente i seguenti campi: 

  • returnRequestNumber: numero della richiesta di reso
  • vendor: editore. Contiene:
    • code: codice editore
    • description: nome editore
  • eanCount: numero di titoli contenuti nella richiesta di reso
  • totalQuantity: numero totale di copie contenute nella richiesta di reso
  • hasNotes: indicazione se per la richiesta di reso sono state indicate o meno note di consegna

L'API può restituire i seguenti codici di errore:

  • 400 (Bad request): query malformata.
  • 401 (Unauthorized)il token di autenticazione non è valido oppure è scaduto.
  • 409 (Conflict): reso già esistente per l'editore.

Esempio richiesta

POST https://api.messaggerielibri.it/titoli/surplusReturnRequest
Authorization: Bearer [TOKEN JWT]

Esempio body richiesta

{
   "titles":[
      {
         "ean":"9788815252579",
         "quantity":106
      }
   ],
   "notes":"prova reso"
}

Esempio risposta

[
   {
      "returnRequestNumber":"0000000337",
      "vendor":{
         "code":"015",
         "description":"IL MULINO"
      },
      "eanCount":1,
      "totalQuantity":106,
      "hasNotes":true
   }
]

Features

Per utilizzare il metodo API è necessario possedere una o più delle seguenti features:

  • title_surplus

altrimenti viene restituito 403 (Forbidden)