Questa API consente di consultare, creare e modificare dei titoli.

Per gestire le API delle rese tramite autenticazione è necessario utilizzare lo scope: title_api_scope.

Operazioni

L'API espone i seguenti metodi:

Ricerca titoli

Consente di ricercare i titoli presenti a catalogo in base ai parametri di ricerca forniti.

Risponde a richieste GET verso: /titoli/title

La ricerca accetta i seguenti parametri: 

Nome Campo

Descrizione Campo

Tipo Dato 

Note 

search 

Testo di ricerca 

string 

Stringa di ricerca per testo libero. Se non specificato, sono restituiti tutti i titoli presenti. 

La ricerca è effettuata nei seguenti campi: 

  • Titolo 
  • Autore 
  • Editore 

ean 

Filtro per codice EAN 

string 

Può essere passato più volte per filtrare su più EAN 

title 

Filtro di ricerca all’interno del titolo 

string 

 

author 

Filtro di ricerca all’interno dell’autore 

string 

 

authorEx

Filtro per autore (corrispondenza esatta)

string

Può essere passato più volte per filtrare su più autori

vendor 

Filtro per codice editore 

string 

Può essere passato più volte per filtrare su più editori 

series 

Filtro per codice collana 

string 

Può essere passato più volte per filtrare su più collane 

language 

Filtro per codice lingua 

string 

Può essere passato più volte per filtrare su più lingue 

creationDateFrom 

Filtro per data creazione (da) 

date 

 

creationDateTo 

Filtro per data creazione (a) 

date 

 

launchDateFrom 

Filtro per data lancio (da) 

date 

 

launchDateTo 

Filtro per data lancio (a) 

date 

 

lastChangeDate

Filtro per data ultima modifica

date

 

price 

Filtro per prezzo 

object

Può essere passato più volte per filtrare su più fasce di prezzo. Contiene:

  • from: dal prezzo (decimal)
  • to: al prezzo (decimal)

Se "to" non è presente, cerca tutti i titoli con prezzo maggiore di "from". 

published 

Filtro di ricerca sul fatto che un titolo sia pubblicato o meno. 

boolean 

 

articleSaleStatus 

Filtro per stato vendita 

enum 

Valori ammessi: *, 0, 1, 2, 9 

articleStatus 

Filtro per risposta editore 

enum 

Valori ammessi: *, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 

pod 

Filtro di ricerca sul fatto che un titolo sia "print on demand" o meno. 

string 

 

promotionCampaign

Filtro per codice campagna promozionale

string

 

sector

Filtro per codice settore

string

 

facet

Filtro che indica se includere o meno il raggruppamento dei risultati in "facet"

boolean

 

orderBy 

Campo su cui effettuare l’ordinamento 

string 

Se non specificato, viene applicato l'ordinamento per Stato Vendita (1, 2, 9, 0)

orderDirection 

Direzione dell'ordinamento (crescente o decrescente) 

enum 

Valori ammessi: asc, desc 

pageSize 

Numero di risultati per pagina 

string 

Se non specificato, saranno restituiti al massimo 50 risultati. 

pageIndex 

Numero pagina 

string 

Se non specificato, è restituita la prima pagina. 

forEdit

Flag che indica se la ricerca avviene da parte della pagina di modifica anagrafica

boolean

 

canBeOrdered

Flag che indica se restituire solo i titoli che possono essere ordinati

boolean

 

hiddenExcluded

Flag che indica se escludere i titoli nascosti e i materiali pubblicitari

boolean

 

 

L'operazione restituisce un oggetto JSON con la seguente struttura: 

  • facets: raggruppamento dei risultati in facet. Visibili se in querystring viene passato "facet" (vedi: Elenco dei facet).
  • totalCount: numero totale di titoli trovati dalla ricerca 
  • totalPages: numero totale di pagine che compongono i risultati di ricerca 
  • page: informazioni sulla pagina corrente 
    • index: numero di pagina 
    • size: dimensione della pagina 
    • from: indice del primo titolo della pagina 
    • to: indice dell’ultimo titolo della pagina 
  • titles: lista dei titoli contenuti nella pagina corrente (vedi: Elenco dei titoli).

 

Elenco dei titoli

L’elenco di titoli è un array di oggetti JSON aventi la seguente struttura:

Nome Campo 

Descrizione Campo 

Tipo Dato 

coverUrl

Url immagine di copertina

string

title 

Titolo completo 

string 

bibliographicTitle

Titolo a catalogo

string

materialCode

Codice materiale

string

ean 

Codice EAN 

string 

shortTitle 

Titolo breve 

string 

author 

Autore 

string 

bibliographicAuthor

Autore a catalogo

string

designer 

Disegnatore 

string 

screenwriter 

Sceneggiatore 

string 

publisher 

Editore

string 

originalPublisher

Editore originale 

string

titleVendorCode 

Codice del titolo per l’editore 

string 

vat

IVA. Contiene:

  • code: codice IVA
  • description: Descrizione dell’aliquota IVA 

object

creationDate 

Data di creazione 

date 

publicationDate 

Data di pubblicazione 

date 

launchDate 

Data di lancio 

date 

launchYear

Anno di lancio

string

launchNumber

Numero di lancio

string

outOfCatalogueDate 

Data di uscita dal catalogo 

date 

language 

Codice lingua 

string 

price 

Prezzo 

string 

reprintDate

Data di ristampa

date

pageCount 

Numero pagine 

integer 

volumeNumber 

Numero volume 

string 

availability

Disponibilità. I valori possibili che può assumere sono: 

  • available: disponibile
  • printOnDemand: stampa a richiesta
  • ordering: in ordine
  • reprinting: in ristampa
  • cannotBeOrdered: non ordinabile
  • other: altro

string

selloutPosition

Posizione del titolo in classifica

integer

vendor 

Editore. Contiene:

  • code: codice editore
  • description: descrizione editore

object

campaign

Campagna. Contiene:

  • code: codice campagna
  • description: descrizione campagna

object

package

Confezione. Contiene:

  • code: codice confezione
  • description: descrizione confezione

object

editorialSeries

Collana. Contiene:

  • code: codice collana
  • description: descrizione collana

object

genre

Codice genere

string

articleSaleStatus

Stato vendita. Contiene:

  • code: codice stato vendita
  • description: descrizione dello stato vendita 

object

articleStatus

Risposta editore. Contiene:

  • code: codice risposta editore
  • description: descrizione della risposta editore

object

workingState

Stato di lavorazione anagrafica. I valori possibili che può assumere sono: 

  • toBeValidated: da validare
  • validated: validato

string

registrationLimit

Data limite per l'iscrizione al lancio

date

dimensions

Dimensioni del titolo. Contiene:

  • netWeight: peso
  • height: altezza
  • width: larghezza
  • length: profondità

object

commodityType

Tipo di merce. Contiene:

  • code: codice del tipo
  • description: descrizione del tipo

object

sector

Settore. Contiene:

  • code: codice del settore
  • description: descrizione del settore

object

shelf

Descrizione dello scaffale

string

containedInPackage

Flag che indica se è contenuto in confezione

boolean

 

Elenco dei facet

Nome Campo 

Descrizione Campo 

Tipo Dato 

vendor

Raggruppamento degli editori, è una lista di oggetti contenenti i seguenti campi:

  • value: editore. Contiene:
    • code: codice editore
    • name: nome editore
  • count: numero di elementi corrispondenti
array

series

Raggruppamento delle collane, è una lista di oggetti contenenti i seguenti campi:

  • value: collana. Contiene: 
    • code: codice collana
    • description: nome collana
    • vendor: editore. Contiene:
      • code: codice editore
      • name: nome editore
  • count: numero di elementi corrispondenti

array

author

Raggruppamento degli autori, è una lista di oggetti contenenti i seguenti campi:

  • value: nome dell'autore
  • count: numero di elementi corrispondenti

array

bibliographicAuthor

Raggruppamento degli autori a catalogo, è una lista di oggetti contenenti i seguenti campi:

  • value: nome dell'autore a catalogo
  • count: numero di elementi corrispondenti

array

language

Raggruppamento delle lingue, è una lista di oggetti contenenti i seguenti campi:

  • value: codice della lingua
  • count: numero di elementi corrispondenti

array

price

Raggruppamento delle fasce di prezzo, è una lista di oggetti contenenti i seguenti campi:

  • value: fascia di prezzo. Contiene:
    • from: valore iniziale della fascia di prezzo
    • to: valore finale della fascia di prezzo
  • count: numero di elementi corrispondenti

array

printOnDemand

Raggruppamento dello stato di print on demand, è una lista di oggetti contenenti i seguenti campi:

  • value: valore di print on demand
  • count: numero di elementi corrispondenti

array

hasBeenPublished

Raggruppamento dello stato di pubblicazione, è una lista di oggetti contenenti i seguenti campi:

  • value: valore di pubblicazione
  • count: numero di elementi corrispondenti

array

articleSaleStatus

Raggruppamento degli stati di vendita, è una lista di oggetti contenenti i seguenti campi:

  • value: codice dello stato di vendita
  • count: numero di elementi corrispondenti

array

articleStatus

Raggruppamento delle risposte editore, è una lista di oggetti contenenti i seguenti campi:

  • value: codice della risposta editor
  • count: numero di elementi corrispondenti

array

sector

Raggruppamento dei settori, è una lista di oggetti contenenti i seguenti campi:

  • value: settore. Contiene:
    • code: codice settore
    • description: descrizione settore
  • count: numero di elementi corrispondenti

array

 

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/title?ean=9788807492433&pageIndex=1
Authorization: Bearer[TOKEN JWT]

 

Esempio risposta: 

{
	"totalCount": 1,
	"totalPages": 1,
	"page": {
		"index": 1,
		"size": 50,
		"from": 1,
		"to": 1
	},
	"titles": [
		{
			"coverUrl": "https://img.messaggerielibri.it/images/9788807492433_0_500_0_0.jpg",
			"title": "CINQUE VITE DI GIORGIO SCERBANENCO",
			"bibliographicTitle": "CINQUE VITE DI GIORGIO SCERBANENCO",
			"materialCode": "000000008807492433",
			"ean": "9788807492433",
			"shortTitle": "CINQUE VITE DI GIORGIO SCERB",
			"author": "SCERBANENKO ALBERTO",
			"bibliographicAuthor": "CINQUE VITE DI GIORGIO SCERBANENCO",
			"publisher": "FELTRINELLI EDITORE",
			"vat": {
				"code": "L",
				"description": "ART. 74 IVA LIBRO ASSOLTA"
			},
			"creationDate": "2018-05-18T12:00:00+02:00",
			"lastChangeDate": "2018-11-05",
			"publicationDate": "2018-10-01",
			"launchYear": 2023,
			"launchNumber": "60.0",
			"language": "IT",
			"price": 0.00,
			"availability": "other",
			"vendor": {
				"code": "0000000243",
				"description": "FELTRINELLI EDITORE"
			},
			"articleSaleStatus": {
				"code": "0",
				"description": "DI PROSSIMA PUBBLICAZIONE"
			},
			"articleStatus": {
				"code": "0",
				"description": "DI PROSSIMA PUBBLICAZIONE"
			},
			"editorialSeries": {
				"code": "VARIA",
				"description": "VARIA"
			},
			"genre": "01",
			"printOnDemand": false,
			"publishOnFol": false,
			"returnRecirculation": false,
			"workingState": "validated",
			"dimensions": {
				"netWeight": 650.000,
				"height": 10.000,
				"width": 120.000,
				"length": 240.000
			},
			"registrationLimit": "2023-08-29T00:00:00+02:00",
			"commodityType": {
				"code": "99",
				"description": "non classificati"
			}
		}
	]
}

Features

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

  • title_search

altrimenti viene restituito 403 (Forbidden)

Recupero di un singolo titolo

Consente di ottenere il titolo presente a catalogo corrispondente al codice EAN fornito.

Risponde a richieste GET verso: /titoli/title/{eanCode} , dove {eanCode} rappresenta il codice EAN del titolo che si vuole recuperare.

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

  • coverUrl: url copertina
  • title: titolo
  • bibliographicTitle: titolo a catalogo
  • materialCode: codice materiale
  • ean: codice EAN
  • shortTitle: titolo breve
  • author: autore
  • bibliographicAuthor: autore a catalogo
  • vat: aliquota IVA. Contiene:
    • code: codice aliquota IVA. Può avere uno dei seguenti valori:
      •  '0', 'A', 'C','E','F','H', 'L', 'N', 'P', 'S', 'V', 'W', 'Z'
    • description: descrizione dell'aliquota IVA
  • creationDate: data di creazione
  • lastChangeDate: data ultima modifica
  • publicationDate: data di pubblicazione
  • language: codice lingua. Può avere uno dei seguenti valori:
    • IT, EN, ES, FR, DE, AF, AR, BG, CA, CS, DA, EL, ET, FI, HE, HR, HU, ID, IS, JA, KO, LT, LV, MS, NL, NO, PL, PT, RO, RU, SH, SK, SL, SR, SV, TH, TR, UK
  • price: prezzo di copertina
  • vendor: editore. Contiene:
    • code: codice editore
    • description: descrizione editore
  • articleSaleStatus: stato vendita. Contiene:
    • code: codice stato vendita
    • description: descrizione dello stato vendita
  • articleStatus: risposta editore. Contiene:
    • code: codice della risposta editore
    • description: descrizione della risposta editore
  • editorialSeries: collana. Contiene:
    • code: codice della collana
    • description: nome della collana
  • genre: genere
  • launchCopies: numero di copie di lancio
  • mainPlant: impianto prevalente. Contiene:
    • code: codice dell'impianto prevalente
    • description: descrizione dell'impianto prevalente
  • mrpType: tipo di approvvigionamento. Contiene:
    • code: codice del tipo di approvvigionamento
    • description: tipo di approvvigionamento
  • printOnDemand: print on demand
  • publishOnFol: pubblica su FOL
  • returnRecirculation: ricircolo rese
  • returnStorageLocation: magazzino destinazione rese. Contiene:
    • code: codice del magazzino destinazione rese
    • description: magazzino destinazione rese
  • vendorWarehouse: magazzino editoriale
  • workingState: stato di lavorazione anagrafica
  • dimensions: dimensioni del titolo. Contiene:
    • netWeight: peso
    • height: altezza
    • width: larghezza
    • length: profondità
  • registrationLimit: data limite di registrazione
  • commodityType: tipo di merce. Contiene:
    • code: codice tipo di merce
    • description: descrizione tipo di merce
  • sector: settore. Contiene:
    • code: codice del settore
    • description: descrizione del settore
  • shelf: descrizione dello scaffale
  • containedInPackage: flag che indica se il titolo è contenuto in una confezione

 

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

  • 400 (Bad Request): query malformata.
  • 401 (Unauthorized)il token di autenticazione non è valido oppure è scaduto.
  • 404 (Not Found)ai parametri forniti non corrisponde alcun EAN.

 

Esempio richiesta: 

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

 

Esempio risposta: 

{
	"coverUrl": "https://img.messaggerielibri.it/images/9788850211487_0_500_0_0.jpg",
	"title": "LA CONGIURA DI MERLINO",
	"bibliographicTitle": "congiura di Merlino, La",
	"materialCode": "000000008850211481",
	"ean": "9788850211487",
	"shortTitle": "CONGIURA DI MERLINO",
	"author": "WYNNE JONES",
	"bibliographicAuthor": "Wynne Jones Diana",
	"vat": {
		"code": "L",
		"description": "ART. 74 IVA LIBRO ASSOLTA"
	},
	"creationDate": "2006-03-17T11:00:00Z",
	"lastChangeDate": "2018-11-05",
	"publicationDate": "2006-03-17",
	"language": "IT",
	"price": 8.00,
	"volumeNumber": "9999",
	"vendor": {
		"code": "0000000781",
		"description": "T.E.A. TASCABILI EDITORI ASSOC"
	},
	"articleSaleStatus": {
		"code": "0",
		"description": "DI PROSSIMA PUBBLICAZIONE"
	},
	"articleStatus": {
		"code": "0",
		"description": "DI PROSSIMA PUBBLICAZIONE"
	},
	"editorialSeries": {
		"code": "TEADUE",
		"description": "TEADUE BIBLIOTECA AVV. FANTASTICHE"
	},
	"genre": "01",
	"launchCopies": 0,
	"mainPlant": {},
	"mrpType": {},
	"printOnDemand": false,
	"publishOnFol": false,
	"returnRecirculation": false,
	"returnStorageLocation": {},
	"vendorWarehouse": true,
	"workingState": "validated",
	"dimensions": {
		"netWeight": 650.000,
		"height": 10.000,
		"width": 120.000,
		"length": 240.000
	},
	"commodityType": {
		"code": "99",
		"description": "non classificati"
	},
	"shelf": "9/10 anni",
	"sector": {
		"code": "7",
		"description": "RAGAZZI"
	},
	"containedInPackage": false,
	"hasPromotionCampaign": false
}

Features

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

  • title_search

altrimenti viene restituito 403 (Forbidden)

Creazione titoli

Consente di inserire nuovi titoli a catalogo

Risponde a richieste POST verso: /titoli/title

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

Nome Campo 

Descrizione Campo 

Obbligatorio 

Tipo Dato 

Note 

ean 

Codice EAN 

string 

 Può avere le seguenti lunghezze:

  • EAN 13 (composto da soli numeri)
  • EAN 18 (EAN 13 + 5 numeri)

shortTitle 

Titolo breve 

string 

Lunghezza massima: 30 

longTitle 

Titolo completo 

string 

Lunghezza massima: 55 

author 

Autore 

 

string 

Lunghezza massima: 44 

designer 

Disegnatore 

 

string 

Lunghezza massima: 22 

screenwriter 

Sceneggiatore 

 

string 

Lunghezza massima: 22 

vendorCode 

Codice editore 

string 

 

editorialSeriesCode 

Codice collana 

string 

 

genre 

Genere 

string 

 

vatCode 

Codice IVA 

string 

 

language 

Codice lingua 

string 

Può avere uno dei seguenti valori:

IT, EN, ES, FR, DE

publicationDate 

Data di pubblicazione 

 

date 

 

originalpublisher 

Editore originale 

Se language diverso da “IT” 

string 

Lunghezza massima: 60 

titleVendorCode 

Codice titolo per l’editore 

 

string 

Lunghezza massima: 8

price 

Prezzo 

 

string 

Non può essere negativo

pageCount 

Numero pagine 

 

integer 

Valore massimo: 9999

volumeNumber 

Numero volume 

 

string 

Lunghezza massima: 4

isNewEdition

Nuova edizione

 

boolean

 

articleStatusCode 

Codice risposta editore 

 

string 

 

articleSaleStatusCode

Codice stato vendita

 

string

 

reprintDate

Data di ristampa

 

dateTime

 

 

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

  • 400 (Bad Request): query malformata (il messaggio di risposta contiene indicazioni sugli errori di validazione riscontrati). 
  • 401 (Unauthorized): il token di autenticazione non è valido oppure è scaduto.


Se l’esecuzione è terminata con successo, l’API restituisce 200 OK senza alcun body.


Esempio richiesta: 

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

Esempio body richiesta

[{"isMatPub":true,"ean":"a015943873","longTitle":"PROVA3","shortTitle":"PROVA3","vendorCode":"0000000015","editorialSeriesCode":"MATPUB","genre":"01","language":"IT","vatCode":"Z","publicationDate":"2023-01-30","author":"","designer":"","screenwriter":"","originalPublisher":"","titleVendorCode":"","volumeNumber":"","pageCount":"","price":0}]

Features

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

  • title_add

altrimenti viene restituito 403 (Forbidden)

Modifica titoli

Consente di modifica titoli presenti a catalogo

Risponde a richieste PUT verso: /titoli/title

Per identificare il titolo da modificare viene richiesto un oggetto JSON contenente i seguenti campi:

Nome Campo 

Descrizione Campo 

Obbligatorio 

Tipo Dato 

Note 

ean 

Codice EAN 

string 

 

shortTitle 

Titolo breve 

string 

Lunghezza massima: 30 

longTitle 

Titolo completo 

string 

Lunghezza massima: 55 

author 

Autore 

 

string 

Lunghezza massima: 44 

designer 

Disegnatore 

 

string 

Lunghezza massima: 22 

screenwriter 

Sceneggiatore 

 

string 

Lunghezza massima: 22 

vendorCode

Codice editore

 

string

 

editorialSeriesCode 

Codice collana 

string 

 

genre

Codice genere

 

string

Modificabile solo se Stato Vendita = 0 e titolo non iscritto al lancio 

vatCode

Codice aliquota IVA

 

string

Lunghezza massima: 1

language

Codice lingua

 

string

Può avere uno dei seguenti valori:

IT, EN, ES, FR, DE

publicationDate 

Data di pubblicazione 

 

date 

Modificabile solo se Stato Vendita = 0 e titolo non iscritto al lancio 

originalPublisher

Editore originale

Se language diverso da “IT” 

string

Lunghezza massima: 60

titleVendorCode

Codice titolo presso l'editore

 

string

Lunghezza massima: 8

price 

Prezzo 

 

string 

Modificabile solo se Stato Vendita = 0 e titolo non iscritto al lancio 

pageCount 

Numero pagine

 

integer 

Valore massimo: 9999

volumeNumber 

Numero volume

 

string

Lunghezza massima: 4

isNewEdition

Nuova edizione

 

boolean

 

articleStatusCode 

Codice risposta editore 

 

string 

Modificabile solo da 1 a 4 o da 4 a 1 o 2 

articleSaleStatusCode 

Codice stato vendita 

 

string 

Modificabile solo da 1 a 2 

reprintDate

Data di ristampa

 

dateTime

 

 

Per quanto riguarda i campi modificabili solo a determinate condizioni, se tali condizioni non sono rispettate e il campo è modificato sarà restituito un errore di validazione. In questi casi, per “campo modificato” si intende un campo di cui è stato passato un valore diverso da quello originale. Un campo per cui non si è passato il valore oppure per cui è stato passato il valore precedente si considera non modificato.   

 

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

  • 400 (Bad Request): query malformata (il messaggio di risposta contiene indicazioni sugli errori di validazione riscontrati). 
  • 401 (Unauthorized): il token di autenticazione non è valido oppure è scaduto.


Se l’esecuzione è terminata con successo, l’API restituisce 200 OK senza alcun body.


Esempio richiesta: 

PUT
https://api.messaggerielibri.it/titoli/title
Authorization: Bearer[TOKEN JWT]

Esempio body richiesta

[{"editorialSeriesCode":"MATPUB","ean":"9788834588123","publisher":"IL MULINO","price":0,"longTitle":"PROVA PROVA 2","shortTitle":"PROVA PROVA 2","author":"","articleSaleStatusCode":"0","articleStatusCode":"0","genre":"01","publicationDate":"2023-02-26","outOfCatalogueDate":null,"vatCode":"Z","language":"IT","vendorCode":"0000000015","vendorDescription":"IL MULINO","vatDescription":"MATERIALE PUBBLICITARIO","titleVendorCode":"","designer":"","screenwriter":"","workingState":"toBeValidated","volumeNumber":"","registrationLimit":"","commodityType":null,"reprintDate":null}]

 

Features

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

  • title_add

altrimenti viene restituito 403 (Forbidden)

Recupero collane

Consente di ottenere le collane associate a un editore.

Risponde a richieste GET verso: /vendor/{vendorCode}/series, dove {vendorCode} rappresenta il codice dell’editore per cui di desidera avere l’elenco delle collane.

La chiamata restituisce la lista delle collane associate al codice editore specificato. 

La collana è un oggetto JSON che contiene i seguenti dati:

Nome Campo 

Descrizione Campo 

Tipo Dato 

code 

Codice collana 

string 

description 

Descrizione della collana 

string 

vendor

Editore. Contiene:

  • code: codice editore

object

genre 

Genere associato alla collana 

string 

isSeries 

La collana rappresenta una serie 

boolean 

creationDate 

Data di creazione 

dateTime 

 

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

  • 400 (Bad Request): query malformata.
  • 401 (Unauthorized): il token di autenticazione non è valido oppure è scaduto.
  • 404 (Not Found): il codice editore specificato non esiste o non è associato all’utente. 

Esempio richiesta: 

GET
https://api.messaggerielibri.it/titoli/vendor/0000000243/series
Authorization: Bearer[TOKEN JWT]

 

Esempio risposta: 

[
	{
		"code": "ALBILL",
		"description": "ALBI ILLUSTRATI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "ANNALI",
		"description": "ANNALI FONDAZIONE G. FELTRINELLI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "ARTTEO",
		"description": "ARTE E TEORIA DELL ARTE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "AUDIOL",
		"description": "AUDIOLIBRI-EMONS/FELTRINELLI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "AVVENT",
		"description": "AVVENTURA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "AVVUM",
		"description": "AVVENTURA UMANA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "BSM",
		"description": "BIBLIOTECA DI MUSICA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "BPPC",
		"description": "BIBLIOTECA DI PSICHIATRIA E PSICOL.",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "BNRR",
		"description": "BIBLIOTECA I NARRATORI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "BRUCHI",
		"description": "BRUCHI FELTRINELLI KIDS",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2022-11-29T11:00:00Z"
	},
	{
		"code": "CAMSAP",
		"description": "CAMPI DEL SAPERE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "CANGUR",
		"description": "CANGURI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "COLMAT",
		"description": "COLLANA DI MATEMATICA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "COMETE",
		"description": "COMETE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "CRFIL",
		"description": "CRITICA E FILOSOFIA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "ED-LF",
		"description": "EDIZIONI LIBRERIE FELTRINELLI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "ELEMEN",
		"description": "ELEMENTI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "E.F.F.",
		"description": "ENCICLOPEDIA FELTRINELLI FISCHER",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "EREDI",
		"description": "EREDI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "COMICS",
		"description": "FELTRINELLI COMICS",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2017-10-06T10:00:00Z"
	},
	{
		"code": "FUOCHI",
		"description": "FELTRINELLI FUOCHI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDFEL",
		"description": "FELTRINELLI KIDS",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "FELMOR",
		"description": "FELTRINELLI MORELLINI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2022-11-07T11:00:00Z"
	},
	{
		"code": "FELTUP",
		"description": "FELTRINELLI UP",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2016-04-07T10:00:00Z"
	},
	{
		"code": "FOXCRI",
		"description": "FOXCRIME/FELTRINELI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "FRNRR",
		"description": "FRANCHI NARRATORI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "FC",
		"description": "FUORI COLLANA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "GRALET",
		"description": "GRANDI LETTURE FELTRINELLI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDROM",
		"description": "I ROMANZI FELTRINELLI KIDS",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "IDEE",
		"description": "IDEE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "IMPRON",
		"description": "IMPRONTE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "INDIES",
		"description": "INDIES",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "INTERZ",
		"description": "INTERZONE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDS",
		"description": "KIDS",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDSBA",
		"description": "KIDS BABU",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDSGA",
		"description": "KIDS GATTO NERO",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDSAG",
		"description": "KIDS SAGGISTICA NARRATA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "KIDSBU",
		"description": "KIDS SBUK",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "LAEFFE",
		"description": "LAEFFE FILM FESTIVAL",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "MAT",
		"description": "MATERIALI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "MATPUB",
		"description": "MATERIALI PUBBLICITARI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "MEDPOT",
		"description": "MEDICINA E POTERE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "NARFEL",
		"description": "NARRATORI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "NUOVAS",
		"description": "NUOVA SERIE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "NUOTRA",
		"description": "NUOVA TRAVELLER",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "NMAT",
		"description": "NUOVI MATERIALI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "NUVOLE",
		"description": "NUVOLE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "PENSOC",
		"description": "PENSIERO SOCIALISTA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "POESIA",
		"description": "POESIA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "PRETES",
		"description": "PRETEST",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2018-02-08T11:00:00Z"
	},
	{
		"code": "PRSESS",
		"description": "PROBLEMI DI SESSUOLOGIA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "QUAVEC",
		"description": "QUADERNI SALVATORE VECA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2022-01-18T11:00:00Z"
	},
	{
		"code": "REALCI",
		"description": "REAL CINEMA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "RGCIT",
		"description": "RG CITTA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "RGSTA",
		"description": "RG STATI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "RICERC",
		"description": "RICERCHE FONDAZIONE GGF",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2021-09-01T10:00:00Z"
	},
	{
		"code": "ROMRAG",
		"description": "ROMANZI RAGAZZI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "RGPOCK",
		"description": "ROUGH GUIDES POCKET",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2018-02-16T11:00:00Z"
	},
	{
		"code": "SAGGI",
		"description": "SAGGI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "SC10R",
		"description": "SC/10 READINGS",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "SCENAR",
		"description": "SCENARI FONDAZIONE GGF",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2021-09-01T10:00:00Z"
	},
	{
		"code": "SERBIA",
		"description": "SERIE BIANCA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "SERCUL",
		"description": "SERIE CULTURA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "SUF",
		"description": "STORIA UNIVERSALE FELTRINELLI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "STORIE",
		"description": "STORIE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "SNS",
		"description": "STRUMENTI PER UNA NUOVA SCUOLA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "SUPUE",
		"description": "SUPER UNIVERSALE ECONOMICA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "TEMLIB",
		"description": "TEMPI LIBERI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2021-02-12T11:00:00Z"
	},
	{
		"code": "TEMRIT",
		"description": "TEMPO RITROVATO",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "TRAVEL",
		"description": "TRAVELLER",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UERACL",
		"description": "UE RAGAZZI CLASSICI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2021-01-29T11:00:00Z"
	},
	{
		"code": "UERAGL",
		"description": "UE RAGAZZI GIALLI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2021-01-29T11:00:00Z"
	},
	{
		"code": "UE",
		"description": "UNIVERSALE ECONOMICA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UECLAS",
		"description": "UNIVERSALE ECONOMICA I CLASSICI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UENOIR",
		"description": "UNIVERSALE ECONOMICA NOIR",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UEORIE",
		"description": "UNIVERSALE ECONOMICA ORIENTE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UERAGA",
		"description": "UNIVERSALE ECONOMICA RAGAZZI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2020-01-23T11:00:00Z"
	},
	{
		"code": "UESGBL",
		"description": "UNIVERSALE ECONOMICA SAGGI BLU",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UESGRO",
		"description": "UNIVERSALE ECONOMICA SAGGI ROSSI",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UESTOR",
		"description": "UNIVERSALE ECONOMICA STORIA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UETRAV",
		"description": "UNIVERSALE ECONOMICA TRAVELLER",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "UEVITE",
		"description": "UNIVERSALE ECONOMICA VITE NARRATE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "URRA",
		"description": "URRA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "VARIA",
		"description": "VARIA",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	},
	{
		"code": "VINTAG",
		"description": "VINTAGE",
		"vendor": {
			"code": "0000000243"
		},
		"isSeries": true,
		"creationDate": "2015-06-17T10:00:00Z"
	}
]

Creazione collana

Consente di inserire una nuova collana per un editore.

Risponde a richieste POST verso: /vendor/{vendorCode}/series, dove {vendorCode} rappresenta il codice dell’editore per cui di desidera aggiungere la collana.

Per identificare la collana da creare viene richiesto un oggetto JSON contenente i seguenti campi:

Nome Campo 

Descrizione Campo 

Obbligatorio

Tipo Dato 

Note 

code 

Codice collana 

string 

Lunghezza massima: 6 

Ammette solo lettere o numeri 

description 

Descrizione della collana 

string 

Lunghezza massima: 40 

isSeries 

La collana rappresenta una serie 

boolean 

 

 

Controlli di validazione

Il metodo API effettua i seguenti controlli di validazione:

  • il codice editore (vendorCode) deve corrispondere ad un editore esistente ed attivo
  • il codice collana (code) non deve già essere presente a sistema per l'editore che la crea

 

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

  • 400 (Bad Request): query malformata (il messaggio di risposta contiene indicazioni sugli errori di validazione riscontrati). 
  • 401 (Unauthorized): il token di autenticazione non è valido oppure è scaduto.
  • 404 (Not Found): il codice editore specificato non esiste o non è associato all’utente. 
  • 409 (Conflict): collana già esistente per l'editore.

 

Esempio richiesta: 

POST
https://api.messaggerielibri.it/titoli/vendor/0000000015/series
Authorization: Bearer[TOKEN JWT]

Esempio body richiesta

{"code":"PROVA3","description":"prova3","isSeries":false}

Esempio risposta

Se l’esecuzione è terminata con successo, l’API restituisce 200 OK senza alcun body.

Features

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

  • title_add

altrimenti viene restituito 403 (Forbidden)

Modifica prezzo titolo

Consente di modificare il prezzo di un titolo a partire da una data futura.

Risponde a richieste POST verso: /titoli/price

Per inserire il nuovo prezzo del titolo viene richiesto un oggetto JSON contenente i seguenti campi:

Nome Campo 

Descrizione Campo 

Obbligatorio

Tipo Dato 

Note 

eanCode

Codice EAN titolo

string 

 

price

Nuovo prezzo del titolo 

decimal

 

validityStartDate

La data di inizio validità prezzo 

 

date

Formato data yyyy-mm-gg

 

Controlli di validazione

Il metodo API effettua i seguenti controlli di validazione:

  • il codice EAN (eanCode) deve corrispondere ad un titolo esistente, diverso da un materiale pubblicitario e in SV=1 e RE=1 oppure SV=0 e RE=0 ma non iscritti a piani di lancio
  • il prezzo (price) deve essere maggiore di 0
  • la data di inizio validità del prezzo (validityStartDate) deve essere:
    • futura se SV=1 e RE=1 (se non indicata assume di default oggi+1)
    • odierna se SV=0 e RE=0 ma non iscritti a piani di lancio (se non indicata assume di  default oggi)


Nota:
         SV = Stato Vendita
         RE = Risposta Editore

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

  • 400 (Bad Request): query malformata (il messaggio di risposta contiene indicazioni sugli errori di validazione riscontrati). 
  • 401 (Unauthorized): il token di autenticazione non è valido oppure è scaduto.
  • 404 (Not Found): il titolo è inesistente.

 

Esempio richiesta: 

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

Esempio body richiesta

[{
	"EanCode": "9780006002765",
  "Price": "10",
	"ValidityStartDate": "2024-03-07"
},
{
	"EanCode": "9788820744632",
  "Price": "20"
}]

Esempio risposta

Se l’esecuzione è terminata con successo, l’API restituisce 200 OK senza alcun body.

Features

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

  • title_add

altrimenti viene restituito 403 (Forbidden)