NAV Navigation
Shell HTTP JavaScript Ruby Python PHP Java Go

Electre API v1.19.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Swagger JSON file

Base URLs:

Email: Electre API Team Web: Electre API Team

Authentication

Scope Scope Description
roles Grants read access to the roles of the user

Notices

External API endpoints to retrieve the whole notices set as well as update

GET-Notices-by-multiple-EAN

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices/eans?ean= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices/eans?ean= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/eans?ean=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices/eans',
  params: {
  'ean' => 'array[string]'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices/eans', params={
  'ean': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices/eans', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/eans?ean=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices/eans", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices/eans

Notices by multiple EAN endpoint

API to get notices by multiple EAN

Parameters

Name In Type Required Description
catalogue query string false Type de catalogue : livre, film, musique ou jeu-video
ean query array[string] true EAN de l'ouvrage recherché. Répétable. Limité à 100 ean.

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├┬ notices [object] true Liste des notices renvoyées par la requête, une notice regroupe l'ensemble des données commerciales, bibliographiques et de classement
│├─ catalogue string true Ouvrage issu du catalogue : livre
Si la valeur donnée est différente des valeurs autorisées, une erreur de validation va être retournée.
│├─ dateMiseAJour string false Timestamp au format YYYY-MM-DD HH-mm-ss qui couvvre l'ensemble des modifications concernant la notice et ses elements de couverture
│├─ quatriemeDeCouverture string false Résumé éditeur issu de la quatrième de couverture
│├─ biographie string false Texte de la biographie (ou des biographies si plusieurs contributeurs) le cas échéant dans plusieurs langues pour certains ouvrages multilingues), issu de la quatrième de couverture.
Ce contenu présrente des balises HTML notamment pour séparer les différentes versions linguistiques lorsque les biographies sont multilingues
EXEMPLE : 9782908445077
│├─ eansErrones [string] false EANs communiqués par erreur par l'éditeur, utile pour la recherche
│├┬ extraitsSonores [object] false Extraits sonores pour les notices musique
││├─ titre string true Titre du Extrait sonore
││╰─ lien string true Lien vers l'extrait sonore
│├─ image160pxCouverture string false URL de l'imagette desktop de la couverture au format JPG de taille 160 pixels de large
│├─ imageCouverture string false URL de l'image de la couverture au format JPG à la taille maximale
│├─ isbnsErrones [string] false ISBNs communiqués par erreur par l'éditeur, utile pour la recherche
│├─ legacyNoticeId string true Identifiant de la notice chez Electre utilisé dans les systèmes Legacy V2 et V3. C'est cet ID qui doit être utilisé par tous les système tiers précemment alimentés par les versions V2 et V3 de la base electre.
│├─ extraitPlayer string false Extrait + player consommés ensemble (URL)
│├┬ passagesMedia object false Passages Media pour les notices musique
││├─ presse [string] true Padage média presse. Liste de libellé construit composé du titre de périodique, numéro, date, note
││├─ radio [string] true passage média radio. Libellé construit composé du titre de radio, date, nom de l'emission
│├─ imagetteCouverture string false URL de l'imagette mobile de la couverture au format JPG de taille 80 pixels de large
│├─ eansJustes [string] false EANs corrects
│├─ isbnsUtilises [string] false ISBNs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
│├─ source string true Source de la notice (electre, btlf, olf, dilicom)
Les sources disponibles dépendent de l'abonnement souscrit.
│├┬ extrait object false URL de l'extrait fourni par l'éditeur au format epub ou pdf
││├─ extraitUrl string false URL de l'extrait au format epub ou pdf
││╰─ extraitFormat string false format de l'extrait
│├─ tableDesMatieres string false texte balisé en HTML
│├─ noticeId string true Identifiant de la notice chez Electre dans le nouveau référentiel mis en place sur Electre NG.
│├─ isbns [string] false International Standard Book Number (ISBN 13)
│├─ dateLiberationEmbargo string false Date de liberation de l'embargo au format YYYY-MM-DD
│├─ eans [string] true Identifiants EAN de l'ouvrage (plusieurs EAN possibles)
│├─ isbnsJustes [string] false ISBNs corrects
│├┬ mesChampsExtras object false
││├─ stock integer(int64) false
││├┬ rayonsClient [object] false classification personalisée de l'organisation calculée à partir des index Electre, pour un usage donné (site web, PIM, système de gestion...)
│││├─ usageRayonId string true destination de la classification (site web, système de gestion, ou référentiel produit de type PIM)
│││├─ rayonClientId string true code du rayon dans la classification
│││╰─ libelleRayonClient string true Libellé dans la classification de l'organisation
││├─ populariteOrganisation integer(int64) false La popularité organisation, ajoutée à la popularité Electre pour augmenter le score lors d'une recherche. Doit être positive.
││├─ champLibre10 string false champ libre 10, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre2 string false champ libre 2, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre1 string false champ libre 1, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre7 string false champ libre 7, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ delaiLivraison string false
││├─ champLibre8 string false champ libre 8, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre6 string false champ libre 6, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre4 string false champ libre 4, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ nombreVues integer(int64) false
││├┬ prixPromo object false Prix de vente de l'ouvrage
│││├─ devise string true Code ISO de la devise
│││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││││├─ taxeId string true Identifiant de la taxe (TVA)
││││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││││╰─ tauxTva number(double) true Taux de taxe appliqué
│││╰─ ttc number(double) true Montant TTC
││├─ champLibre5 string false champ libre 5, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├┬ prix object false Prix de vente de l'ouvrage
│││├─ devise string true Code ISO de la devise
│││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││││├─ taxeId string true Identifiant de la taxe (TVA)
││││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││││╰─ tauxTva number(double) true Taux de taxe appliqué
│││╰─ ttc number(double) true Montant TTC
││├─ ventes integer(int64) false
││├─ champLibre9 string false champ libre 9, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││╰─ champLibre3 string false champ libre 3, champ au format texte, pour des usages spécifiques non couverts par les champs existants
│├─ desactive boolean true Indique si la notice a existé mais a été désactivée. Toujours à FALSE pour le endpoint /init, parfois à TRUE pour le endpoint /updated.
│├┬ bandesAnnonces [object] false Bandes annonces pour les notices film
││├─ type string true Libellé construit composé du titre de périodique, numéro, date, note
││├─ langue string true passage média radio
││╰─ lien string true Libellé construit composé du titre de radio, date, nom de l'emission
│├─ eansUtilises [string] false EANs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
╰─ total integer(int64) true Nombre total de notices

GET-Notices-Updated

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices/updated?from=&lastndays= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices/updated?from=&lastndays= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/updated?from=&lastndays=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices/updated',
  params: {
  'from' => 'string',
'lastndays' => 'integer'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices/updated', params={
  'from': '',  'lastndays': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices/updated', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/updated?from=&lastndays=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices/updated", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices/updated

Updated Notices endpoint

API to fetch the updated notices in a period in a paginated way

Parameters

Name In Type Required Description
catalogue query string false Type de catalogue : livre, film, musique ou jeu-video
cursor query string false Curseur permettant de récupérer la prochaine portion de notice (valeur à mettre à "*" afin de priviligier le mode curseur)
from query string true timestamp au format ISO-8601 YYYY-MM-DDTHH:mm:ss filtrant toutes les notices modifiées ou créés depuis ce timestamp (peut remonter jusqu'à 90 jours)
lastndays query integer true nombre entier positif indiquant la période de filtre en nombre de jour à partir de l'appel (ex: lastndays=2 exécuté le 3 janvier 2020 à 13h filtre les notices modifiées depuis le 1 janvier à 13h). C'est un paramètre de confort pour indiquer facilement les derniers jours sur lesquels le client souhaite avoir les notices modifiées.
limit query integer false Quantité maximale de notices par page
source query string false Selectione la source pour effectuer un init partiel, sources existantes : electre, btlf, fel, olf, hachettepod, edilivre

Detailed descriptions

lastndays: nombre entier positif indiquant la période de filtre en nombre de jour à partir de l'appel (ex: lastndays=2 exécuté le 3 janvier 2020 à 13h filtre les notices modifiées depuis le 1 janvier à 13h). C'est un paramètre de confort pour indiquer facilement les derniers jours sur lesquels le client souhaite avoir les notices modifiées. Au moins un des paramètres from ou lastndays est obligatoire, si lastndays est présent il a la priorité sur le paramètre from.

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ limit integer(int64) true Quantité maximale de notices par page tel que passé en paramètre
├─ nextCursor string false Positionnement du prochain curseur afin de récupérer la prochaine portion de notice
Le curseur est encodé en base64, il ne peut contenir que les caractères suivant :
- Des lettres minuscules [a-z]
- Des lettres majuscules [A-Z]
- Des chiffres [0-9]
- Le caractère '+'
- Le caractère '/'
- Le caractère '='
├┬ notices [object] true Liste des notices renvoyées par la requête, une notice regroupe l'ensemble des données commerciales, bibliographiques et de classement
│├─ catalogue string true Ouvrage issu du catalogue : livre
Si la valeur donnée est différente des valeurs autorisées, une erreur de validation va être retournée.
│├─ dateMiseAJour string false Timestamp au format YYYY-MM-DD HH-mm-ss qui couvvre l'ensemble des modifications concernant la notice et ses elements de couverture
│├─ quatriemeDeCouverture string false Résumé éditeur issu de la quatrième de couverture
│├─ biographie string false Texte de la biographie (ou des biographies si plusieurs contributeurs) le cas échéant dans plusieurs langues pour certains ouvrages multilingues), issu de la quatrième de couverture.
Ce contenu présrente des balises HTML notamment pour séparer les différentes versions linguistiques lorsque les biographies sont multilingues
EXEMPLE : 9782908445077
│├─ eansErrones [string] false EANs communiqués par erreur par l'éditeur, utile pour la recherche
│├┬ extraitsSonores [object] false Extraits sonores pour les notices musique
││├─ titre string true Titre du Extrait sonore
││╰─ lien string true Lien vers l'extrait sonore
│├─ image160pxCouverture string false URL de l'imagette desktop de la couverture au format JPG de taille 160 pixels de large
│├─ imageCouverture string false URL de l'image de la couverture au format JPG à la taille maximale
│├─ isbnsErrones [string] false ISBNs communiqués par erreur par l'éditeur, utile pour la recherche
│├─ legacyNoticeId string true Identifiant de la notice chez Electre utilisé dans les systèmes Legacy V2 et V3. C'est cet ID qui doit être utilisé par tous les système tiers précemment alimentés par les versions V2 et V3 de la base electre.
│├─ extraitPlayer string false Extrait + player consommés ensemble (URL)
│├┬ passagesMedia object false Passages Media pour les notices musique
││├─ presse [string] true Padage média presse. Liste de libellé construit composé du titre de périodique, numéro, date, note
││├─ radio [string] true passage média radio. Libellé construit composé du titre de radio, date, nom de l'emission
│├─ imagetteCouverture string false URL de l'imagette mobile de la couverture au format JPG de taille 80 pixels de large
│├─ eansJustes [string] false EANs corrects
│├─ isbnsUtilises [string] false ISBNs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
│├─ source string true Source de la notice (electre, btlf, olf, dilicom)
Les sources disponibles dépendent de l'abonnement souscrit.
│├┬ extrait object false URL de l'extrait fourni par l'éditeur au format epub ou pdf
││├─ extraitUrl string false URL de l'extrait au format epub ou pdf
││╰─ extraitFormat string false format de l'extrait
│├─ tableDesMatieres string false texte balisé en HTML
│├─ noticeId string true Identifiant de la notice chez Electre dans le nouveau référentiel mis en place sur Electre NG.
│├─ isbns [string] false International Standard Book Number (ISBN 13)
│├─ dateLiberationEmbargo string false Date de liberation de l'embargo au format YYYY-MM-DD
│├─ eans [string] true Identifiants EAN de l'ouvrage (plusieurs EAN possibles)
│├─ isbnsJustes [string] false ISBNs corrects
│├─ desactive boolean true Indique si la notice a existé mais a été désactivée. Toujours à FALSE pour le endpoint /init, parfois à TRUE pour le endpoint /updated.
│├┬ bandesAnnonces [object] false Bandes annonces pour les notices film
││├─ type string true Libellé construit composé du titre de périodique, numéro, date, note
││├─ langue string true passage média radio
││╰─ lien string true Libellé construit composé du titre de radio, date, nom de l'emission
│├─ eansUtilises [string] false EANs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
╰─ total integer(int64) true Nombre total de notices

GET-Notices

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices

Notices Initialization endpoint

API to fetch all the notices in a paginated way.

Parameters

Name In Type Required Description
catalogue query string false Type de catalogue : livre, film, musique ou jeu-video
cursor query string false Curseur permettant de récupérer la prochaine portion de notice (valeur à mettre à "*" afin de priviligier le mode curseur)
ean query string false EAN de l'ouvrage recherché
limit query integer false Quantité maximale de notices par page
source query string false Si vous souhaitez effectuer un Init partiel, indiquez la source des notices que vous souhaitez récupérer : electre, btlf, fel, olf, hachettepod, edilivre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ limit integer(int64) true Quantité maximale de notices par page tel que passé en paramètre
├─ nextCursor string false Positionnement du prochain curseur afin de récupérer la prochaine portion de notice
Le curseur est encodé en base64, il ne peut contenir que les caractères suivant :
- Des lettres minuscules [a-z]
- Des lettres majuscules [A-Z]
- Des chiffres [0-9]
- Le caractère '+'
- Le caractère '/'
- Le caractère '='
├┬ notices [object] true Liste des notices renvoyées par la requête, une notice regroupe l'ensemble des données commerciales, bibliographiques et de classement
│├─ catalogue string true Ouvrage issu du catalogue : livre
Si la valeur donnée est différente des valeurs autorisées, une erreur de validation va être retournée.
│├─ dateMiseAJour string false Timestamp au format YYYY-MM-DD HH-mm-ss qui couvvre l'ensemble des modifications concernant la notice et ses elements de couverture
│├─ quatriemeDeCouverture string false Résumé éditeur issu de la quatrième de couverture
│├─ biographie string false Texte de la biographie (ou des biographies si plusieurs contributeurs) le cas échéant dans plusieurs langues pour certains ouvrages multilingues), issu de la quatrième de couverture.
Ce contenu présrente des balises HTML notamment pour séparer les différentes versions linguistiques lorsque les biographies sont multilingues
EXEMPLE : 9782908445077
│├─ eansErrones [string] false EANs communiqués par erreur par l'éditeur, utile pour la recherche
│├┬ extraitsSonores [object] false Extraits sonores pour les notices musique
││├─ titre string true Titre du Extrait sonore
││╰─ lien string true Lien vers l'extrait sonore
│├─ image160pxCouverture string false URL de l'imagette desktop de la couverture au format JPG de taille 160 pixels de large
│├─ imageCouverture string false URL de l'image de la couverture au format JPG à la taille maximale
│├─ isbnsErrones [string] false ISBNs communiqués par erreur par l'éditeur, utile pour la recherche
│├─ legacyNoticeId string true Identifiant de la notice chez Electre utilisé dans les systèmes Legacy V2 et V3. C'est cet ID qui doit être utilisé par tous les système tiers précemment alimentés par les versions V2 et V3 de la base electre.
│├─ extraitPlayer string false Extrait + player consommés ensemble (URL)
│├┬ passagesMedia object false Passages Media pour les notices musique
││├─ presse [string] true Padage média presse. Liste de libellé construit composé du titre de périodique, numéro, date, note
││├─ radio [string] true passage média radio. Libellé construit composé du titre de radio, date, nom de l'emission
│├─ imagetteCouverture string false URL de l'imagette mobile de la couverture au format JPG de taille 80 pixels de large
│├─ eansJustes [string] false EANs corrects
│├─ isbnsUtilises [string] false ISBNs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
│├─ source string true Source de la notice (electre, btlf, olf, dilicom)
Les sources disponibles dépendent de l'abonnement souscrit.
│├┬ extrait object false URL de l'extrait fourni par l'éditeur au format epub ou pdf
││├─ extraitUrl string false URL de l'extrait au format epub ou pdf
││╰─ extraitFormat string false format de l'extrait
│├─ tableDesMatieres string false texte balisé en HTML
│├─ noticeId string true Identifiant de la notice chez Electre dans le nouveau référentiel mis en place sur Electre NG.
│├─ isbns [string] false International Standard Book Number (ISBN 13)
│├─ dateLiberationEmbargo string false Date de liberation de l'embargo au format YYYY-MM-DD
│├─ eans [string] true Identifiants EAN de l'ouvrage (plusieurs EAN possibles)
│├─ isbnsJustes [string] false ISBNs corrects
│├─ desactive boolean true Indique si la notice a existé mais a été désactivée. Toujours à FALSE pour le endpoint /init, parfois à TRUE pour le endpoint /updated.
│├┬ bandesAnnonces [object] false Bandes annonces pour les notices film
││├─ type string true Libellé construit composé du titre de périodique, numéro, date, note
││├─ langue string true passage média radio
││╰─ lien string true Libellé construit composé du titre de radio, date, nom de l'emission
│├─ eansUtilises [string] false EANs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
╰─ total integer(int64) true Nombre total de notices

GET-Notices-by-EAN

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices/ean/{ean} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices/ean/{ean} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices/ean/{ean}

Notices by EAN endpoint

API to get notices by EAN

Parameters

Name In Type Required Description
catalogue query string false Type de catalogue : livre, film, musique ou jeu-video
ean path string true EAN de l'ouvrage recherché

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├┬ notices [object] true Liste des notices renvoyées par la requête, une notice regroupe l'ensemble des données commerciales, bibliographiques et de classement
│├─ catalogue string true Ouvrage issu du catalogue : livre
Si la valeur donnée est différente des valeurs autorisées, une erreur de validation va être retournée.
│├─ dateMiseAJour string false Timestamp au format YYYY-MM-DD HH-mm-ss qui couvvre l'ensemble des modifications concernant la notice et ses elements de couverture
│├─ quatriemeDeCouverture string false Résumé éditeur issu de la quatrième de couverture
│├─ biographie string false Texte de la biographie (ou des biographies si plusieurs contributeurs) le cas échéant dans plusieurs langues pour certains ouvrages multilingues), issu de la quatrième de couverture.
Ce contenu présrente des balises HTML notamment pour séparer les différentes versions linguistiques lorsque les biographies sont multilingues
EXEMPLE : 9782908445077
│├─ eansErrones [string] false EANs communiqués par erreur par l'éditeur, utile pour la recherche
│├┬ extraitsSonores [object] false Extraits sonores pour les notices musique
││├─ titre string true Titre du Extrait sonore
││╰─ lien string true Lien vers l'extrait sonore
│├─ image160pxCouverture string false URL de l'imagette desktop de la couverture au format JPG de taille 160 pixels de large
│├─ imageCouverture string false URL de l'image de la couverture au format JPG à la taille maximale
│├─ isbnsErrones [string] false ISBNs communiqués par erreur par l'éditeur, utile pour la recherche
│├─ legacyNoticeId string true Identifiant de la notice chez Electre utilisé dans les systèmes Legacy V2 et V3. C'est cet ID qui doit être utilisé par tous les système tiers précemment alimentés par les versions V2 et V3 de la base electre.
│├─ extraitPlayer string false Extrait + player consommés ensemble (URL)
│├┬ passagesMedia object false Passages Media pour les notices musique
││├─ presse [string] true Padage média presse. Liste de libellé construit composé du titre de périodique, numéro, date, note
││├─ radio [string] true passage média radio. Libellé construit composé du titre de radio, date, nom de l'emission
│├─ imagetteCouverture string false URL de l'imagette mobile de la couverture au format JPG de taille 80 pixels de large
│├─ eansJustes [string] false EANs corrects
│├─ isbnsUtilises [string] false ISBNs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
│├─ source string true Source de la notice (electre, btlf, olf, dilicom)
Les sources disponibles dépendent de l'abonnement souscrit.
│├┬ extrait object false URL de l'extrait fourni par l'éditeur au format epub ou pdf
││├─ extraitUrl string false URL de l'extrait au format epub ou pdf
││╰─ extraitFormat string false format de l'extrait
│├─ tableDesMatieres string false texte balisé en HTML
│├─ noticeId string true Identifiant de la notice chez Electre dans le nouveau référentiel mis en place sur Electre NG.
│├─ isbns [string] false International Standard Book Number (ISBN 13)
│├─ dateLiberationEmbargo string false Date de liberation de l'embargo au format YYYY-MM-DD
│├─ eans [string] true Identifiants EAN de l'ouvrage (plusieurs EAN possibles)
│├─ isbnsJustes [string] false ISBNs corrects
│├┬ mesChampsExtras object false
││├─ stock integer(int64) false
││├┬ rayonsClient [object] false classification personalisée de l'organisation calculée à partir des index Electre, pour un usage donné (site web, PIM, système de gestion...)
│││├─ usageRayonId string true destination de la classification (site web, système de gestion, ou référentiel produit de type PIM)
│││├─ rayonClientId string true code du rayon dans la classification
│││╰─ libelleRayonClient string true Libellé dans la classification de l'organisation
││├─ populariteOrganisation integer(int64) false La popularité organisation, ajoutée à la popularité Electre pour augmenter le score lors d'une recherche. Doit être positive.
││├─ champLibre10 string false champ libre 10, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre2 string false champ libre 2, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre1 string false champ libre 1, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre7 string false champ libre 7, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ delaiLivraison string false
││├─ champLibre8 string false champ libre 8, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre6 string false champ libre 6, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre4 string false champ libre 4, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ nombreVues integer(int64) false
││├┬ prixPromo object false Prix de vente de l'ouvrage
│││├─ devise string true Code ISO de la devise
│││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││││├─ taxeId string true Identifiant de la taxe (TVA)
││││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││││╰─ tauxTva number(double) true Taux de taxe appliqué
│││╰─ ttc number(double) true Montant TTC
││├─ champLibre5 string false champ libre 5, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├┬ prix object false Prix de vente de l'ouvrage
│││├─ devise string true Code ISO de la devise
│││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││││├─ taxeId string true Identifiant de la taxe (TVA)
││││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││││╰─ tauxTva number(double) true Taux de taxe appliqué
│││╰─ ttc number(double) true Montant TTC
││├─ ventes integer(int64) false
││├─ champLibre9 string false champ libre 9, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││╰─ champLibre3 string false champ libre 3, champ au format texte, pour des usages spécifiques non couverts par les champs existants
│├─ desactive boolean true Indique si la notice a existé mais a été désactivée. Toujours à FALSE pour le endpoint /init, parfois à TRUE pour le endpoint /updated.
│├┬ bandesAnnonces [object] false Bandes annonces pour les notices film
││├─ type string true Libellé construit composé du titre de périodique, numéro, date, note
││├─ langue string true passage média radio
││╰─ lien string true Libellé construit composé du titre de radio, date, nom de l'emission
│├─ eansUtilises [string] false EANs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
╰─ total integer(int64) true Nombre total de notices

Recherche

External API endpoints to search for notices

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices/search \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices/search HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/search',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices/search',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices/search', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices/search', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/search");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices/search", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices/search

Search Notices endpoint

Notices search API engine

Parameters

Name In Type Required Description
filtres.montant.min query number false Filtre montant : borne inférieure du curseur.
filtres.rayons-client query string false Filtre facette rayon client. Ce paramètre peut être répété pour filtrer par plusieurs rayons différents.
id.collection query string false Identifiant collection utilisé pour le rebond
catalogue query string false Filtre par catalogue (livres, musique, films). A venir...
offset query integer false Offset pour la page appelée
filtres.date.min query string false Filtre date : borne inférieure du curseur. Les formats de date acceptés sont :
q query string false Recherche libre sur les champs titre, auteur, éditeur, collection, ISBN, EAN, avec un OU logique.
filtres.montant.max query number false Filtre montant : borne supérieure du curseur.
sort.order query string false Sens du tri. Exemple : "asc", "desc"
id.rayon-client query string false Identifiant rayon client utilisé pour le rebond
filtres.disponibilite query string false Filtre facette disponibilité. Ce paramètre peut être répété pour filtrer par plusieurs disponiblités différentes.
q.ean-isbn query string false Recherche ciblée EAN/ISBN (les champs d'une recherche ciblée sont composés avec l'opérateur logique ET)
q.rayon query string false Recherche ciblée rayon electre etendu, recherche par code de rayon. Recherche effectuée sur le rayon et ses enfants. (les champs d'une recherche ciblée sont composés avec l'opérateur logique ET)
q.titre query string false Recherche ciblée titre (les champs d'une recherche ciblée sont composés avec l'opérateur logique ET)
q.auteur query string false Recherche ciblée auteur (les champs d'une recherche ciblée sont composés avec l'opérateur logique ET)
limit query integer false Quantité maximale de notices par page
q.editeur query string false Recherche ciblée éditeur (les champs d'une recherche ciblée sont composés avec l'opérateur logique ET)
filtres.type-produit query string false Filtre facette type produit. Ce paramètre peut être répété pour filtrer par plusieurs types produits différents.
id.rayon-electre-etendu query string false Identifiant rayon electre étendu utilisé pour le rebond
filtres.rayon-electre query string false Filtre facette rayon electre. Ce paramètre peut être répété pour filtrer par plusieurs rayons différents.
filtres.auteurs query string false Filtre facette auteurs. Ce paramètre peut être répété pour filtrer par plusieurs auteurs différents.
filtres.editeurs query string false Filtre facette éditeurs. Ce paramètre peut être répété pour filtrer par plusieurs éditeurs différents.
filtres.date.max query string false Filtre date : borne supérieure du curseur. Les formats de date acceptés sont :
filtres.series query string false Filtre facette séries. Ce paramètre peut être répété pour filtrer par plusieurs séries différentes.
id.auteur query string false Identifiant auteur utilisé pour le rebond
filtres.collections query string false Filtre facette collections. Ce paramètre peut être répété pour filtrer par plusieurs collections différentes.
q.collection query string false Recherche ciblée collection (les champs d'une recherche ciblée sont composés avec l'opérateur logique ET)
sort.field query string false Champ sur lequel faire le tri. Exemple : "score”, “titre”, “auteur”, “editeur”, “date-parution”, “montant"
voir-notices-embargo query boolean false Voir ou non les notices sous embargo, faux par défaut.
filtres.rayon-electre-etendu query string false Filtre facette rayon electre étendu. Ce paramètre peut être répété pour filtrer par plusieurs rayons différents.
facets query boolean false Retourne les facettes sur la recherche. true par défaut
id.serie query string false Identifiant série utilisé pour le rebond
id.editeur query string false Identifiant éditeur utilisé pour le rebond

Detailed descriptions

filtres.date.min: Filtre date : borne inférieure du curseur. Les formats de date acceptés sont :

filtres.date.max: Filtre date : borne supérieure du curseur. Les formats de date acceptés sont :

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ limit integer(int64) true Quantité maximale de notices par page tel que passé en paramètre
├┬ notices [object] true Liste des notices renvoyées par la requête, une notice regroupe l'ensemble des données commerciales, bibliographiques et de classement
│├─ catalogue string true Ouvrage issu du catalogue : livre
Si la valeur donnée est différente des valeurs autorisées, une erreur de validation va être retournée.
│├─ dateMiseAJour string false Timestamp au format YYYY-MM-DD HH-mm-ss qui couvvre l'ensemble des modifications concernant la notice et ses elements de couverture
│├─ quatriemeDeCouverture string false Résumé éditeur issu de la quatrième de couverture
│├─ biographie string false Texte de la biographie (ou des biographies si plusieurs contributeurs) le cas échéant dans plusieurs langues pour certains ouvrages multilingues), issu de la quatrième de couverture.
Ce contenu présrente des balises HTML notamment pour séparer les différentes versions linguistiques lorsque les biographies sont multilingues
EXEMPLE : 9782908445077
│├─ eansErrones [string] false EANs communiqués par erreur par l'éditeur, utile pour la recherche
│├─ image160pxCouverture string false URL de l'imagette desktop de la couverture au format JPG de taille 160 pixels de large
│├─ imageCouverture string false URL de l'image de la couverture au format JPG à la taille maximale
│├─ isbnsErrones [string] false ISBNs communiqués par erreur par l'éditeur, utile pour la recherche
│├─ legacyNoticeId string true Identifiant de la notice chez Electre utilisé dans les systèmes Legacy V2 et V3. C'est cet ID qui doit être utilisé par tous les système tiers précemment alimentés par les versions V2 et V3 de la base electre.
│├─ extraitPlayer string false Extrait + player consommés ensemble (URL)
│├─ imagetteCouverture string false URL de l'imagette mobile de la couverture au format JPG de taille 80 pixels de large
│├─ eansJustes [string] false EANs corrects
│├─ isbnsUtilises [string] false ISBNs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
│├─ source string true Source de la notice (electre, btlf, olf, dilicom)
Les sources disponibles dépendent de l'abonnement souscrit.
│├┬ extrait object false URL de l'extrait fourni par l'éditeur au format epub ou pdf
││├─ extraitUrl string false URL de l'extrait au format epub ou pdf
││╰─ extraitFormat string false format de l'extrait
│├─ tableDesMatieres string false texte balisé en HTML
│├─ noticeId string true Identifiant de la notice chez Electre dans le nouveau référentiel mis en place sur Electre NG.
│├─ isbns [string] false International Standard Book Number (ISBN 13)
│├─ dateLiberationEmbargo string false Date de liberation de l'embargo au format YYYY-MM-DD
│├─ eans [string] true Identifiants EAN de l'ouvrage (plusieurs EAN possibles)
│├─ isbnsJustes [string] false ISBNs corrects
│├┬ mesChampsExtras object false
││├─ stock integer(int64) false
││├┬ rayonsClient [object] false classification personalisée de l'organisation calculée à partir des index Electre, pour un usage donné (site web, PIM, système de gestion...)
│││├─ usageRayonId string true destination de la classification (site web, système de gestion, ou référentiel produit de type PIM)
│││├─ rayonClientId string true code du rayon dans la classification
│││╰─ libelleRayonClient string true Libellé dans la classification de l'organisation
││├─ populariteOrganisation integer(int64) false La popularité organisation, ajoutée à la popularité Electre pour augmenter le score lors d'une recherche. Doit être positive.
││├─ champLibre10 string false champ libre 10, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre2 string false champ libre 2, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre1 string false champ libre 1, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre7 string false champ libre 7, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ delaiLivraison string false
││├─ champLibre8 string false champ libre 8, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre6 string false champ libre 6, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ champLibre4 string false champ libre 4, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├─ nombreVues integer(int64) false
││├┬ prixPromo object false Prix de vente de l'ouvrage
│││├─ devise string true Code ISO de la devise
│││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││││├─ taxeId string true Identifiant de la taxe (TVA)
││││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││││╰─ tauxTva number(double) true Taux de taxe appliqué
│││╰─ ttc number(double) true Montant TTC
││├─ champLibre5 string false champ libre 5, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││├┬ prix object false Prix de vente de l'ouvrage
│││├─ devise string true Code ISO de la devise
│││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││││├─ taxeId string true Identifiant de la taxe (TVA)
││││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││││╰─ tauxTva number(double) true Taux de taxe appliqué
│││╰─ ttc number(double) true Montant TTC
││├─ ventes integer(int64) false
││├─ champLibre9 string false champ libre 9, champ au format texte, pour des usages spécifiques non couverts par les champs existants
││╰─ champLibre3 string false champ libre 3, champ au format texte, pour des usages spécifiques non couverts par les champs existants
│├─ desactive boolean true Indique si la notice a existé mais a été désactivée. Toujours à FALSE pour le endpoint /init, parfois à TRUE pour le endpoint /updated.
│├─ eansUtilises [string] false EANs utilisés par erreur, par l'éditeur, pour codifier un ou plusieurs articles distincts
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total de notices

GET-Notices-Suggestions

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices/suggestions?q= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices/suggestions?q= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/suggestions?q=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices/suggestions',
  params: {
  'q' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices/suggestions', params={
  'q': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices/suggestions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/suggestions?q=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices/suggestions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices/suggestions

Notice suggestions endpoint

API to fetch notice suggestions (related to "/notices/search" endpoint and requires the proper permissions in your business subscription)

Parameters

Name In Type Required Description
limit query integer false Quantité maximale de résultats par page
q query string true Recherche sur les champs titre, auteur, éditeur, collection, avec un ET logique.
voir-notices-embargo query boolean false Voir ou non les notices sous embargo, faux par défaut.

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├┬ suggestions [object] true Liste des suggestions renvoyées par la requête
│├─ suggestion string true Suggestion précédée du nom de l'index pour lequel la suggestion est proposée
│├─ surlignage string true Suggestion avec le terme retrouvé dans une balise
│╰─ recherche string true Url permettant de relancer une recherche sur le terme retrouvé
╰─ total integer(int64) true Nombre total de suggestions

Périmètres Pilotés

External API endpoints for managing perimeter

GET

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}

Endpoint pour recuperer le perimetre pilotes du compte

Recupere le périmètre piloté du compte

Parameters

Name In Type Required Description
username path string true le username du compte pour lequel on souhaite récupérer le périmètre piloté

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ totalAuteursExclus integer(int64) false Nombre total d'auteurs exclus pour ce périmètre
├─ totalAuteursInclus integer(int64) false Nombre total d'auteurs inclus pour ce périmètre
├─ totalEansExclus integer(int64) false Nombre total d'eans exclus pour ce périmètre
├─ totalEansInclus integer(int64) false Nombre total d'eans inclus pour ce périmètre
├─ totalEditeursExclus integer(int64) false Nombre total d'éditeurs exclus pour ce périmètre
╰─ totalEditeursInclus integer(int64) false Nombre total d'éditeurs inclus pour ce périmètre

Périmètres Pilotés par inclusion

External API endpoints for managing perimeter by inclusion list

PUT-Inclusion-Editeur

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /perimetres/comptes/{username}/inclusions/editeurs/{editeurId}

Endpoint pour inclure un editeur dans le perimetre pilote du compte

Inclus l'editeur dénoté par son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
editeurId path string true identifiant de l'éditeur à inclure (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Inclusion-Editeur

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs/{editeurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /perimetres/comptes/{username}/inclusions/editeurs/{editeurId}

Endpoint pour supprimer l'inclusion d'un editeur dans le perimetre pilote du compte

Supprime l'inclusion de l'editeur dénotée par son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
editeurId path string true identifiant de l'éditeur à retirer de l'inclusion (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

GET-Inclusion-Auteur

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}/inclusions/auteurs

Endpoint de consultation des auteurs inclus dans le perimetre pilote du compte

Consultation paginée des auteurs dans le périmètre piloté du compte

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'auteur par page
offset query integer false Offset pour la page appelée
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ auteurs string true Liste des auteurs présents dans la liste d'inclusion
├─ limit integer(int64) true Quantité maximale d'auteur par page tel que passé en paramètre
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total d'auteur

GET-Inclusion-Notice

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}/inclusions/notices/ean

Endpoint de consultation des eans inclus dans le perimetre pilote du compte

Consultation paginée des eans dans le périmètre piloté du compte

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'ean par page
offset query integer false Offset pour la page appelée
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ eans string true Liste des eans présents dans la liste d'inclusion
├─ limit integer(int64) true Quantité maximale d'ean par page tel que passé en paramètre
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total d'ean

PUT-Inclusion-Notice

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /perimetres/comptes/{username}/inclusions/notices/ean/{ean}

Endpoint pour inclure une notice dans le perimetre pilote du compte

Inclus la notice dénotée par l'EAN au périmètre piloté du compte

Parameters

Name In Type Required Description
ean path string true EAN de la notice concernée par cette inclusion de le périmètre du compte
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Inclusion-Notice

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/notices/ean/{ean}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /perimetres/comptes/{username}/inclusions/notices/ean/{ean}

Endpoint pour supprimer l'inclusion d'une notice dans le perimetre pilote du compte

Supprime l'inclusion de la notice dénotée par l'EAN au périmètre piloté du compte

Parameters

Name In Type Required Description
ean path string true EAN de la notice concernée par cette inclusion de le périmètre du compte
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

PUT-Inclusion-Auteur

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /perimetres/comptes/{username}/inclusions/auteurs/{auteurId}

Endpoint pour inclure un auteur dans le perimetre pilote du compte

Inclus l'auteur dénoté son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
auteurId path string true identifiant de l'auteur à inclure (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Inclusion-Auteur

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/auteurs/{auteurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /perimetres/comptes/{username}/inclusions/auteurs/{auteurId}

Endpoint pour supprimer l'inclusion d'un auteur dans le perimetre pilote du compte

Supprime l'inclusion de l'auteur dénotée par son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
auteurId path string true identifiant de l'auteur à retirer de l'inclusion (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

GET-Inclusion-Editeur

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/inclusions/editeurs", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}/inclusions/editeurs

Endpoint de consultation des editeurs inclus dans le perimetre pilote du compte

Consultation paginée des éditeurs dans le périmètre piloté du compte

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'éditeur par page
offset query integer false Offset pour la page appelée
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ editeurs string true Liste des éditeurs présents dans la liste d'inclusion
├─ limit integer(int64) true Quantité maximale de notices par page tel que passé en paramètre
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total de notices

Périmètres Pilotés par exclusion

External API endpoints for managing perimeter by exclusion list

PUT-Exclusion-Auteur

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /perimetres/comptes/{username}/exclusions/auteurs/{auteurId}

Endpoint pour exclure un auteur dans le perimetre pilote du compte

Exclus l'auteur dénoté son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
auteurId path string true identifiant de l'auteur à exclure (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Exclusion-Auteur

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs/{auteurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /perimetres/comptes/{username}/exclusions/auteurs/{auteurId}

Endpoint pour supprimer l'exclusion d'un auteur dans le perimetre pilote du compte

Supprime l'exclusion de l'auteur dénotée par son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
auteurId path string true identifiant de l'auteur à retirer de l'exclusion (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

PUT-Exclusion-Editeur

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /perimetres/comptes/{username}/exclusions/editeurs/{editeurId}

Endpoint pour exclure un editeur dans le perimetre pilote du compte

Exclus l'editeur dénoté par son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
editeurId path string true identifiant de l'éditeur à exclure (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Exclusion-Editeur

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs/{editeurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /perimetres/comptes/{username}/exclusions/editeurs/{editeurId}

Endpoint pour supprimer l'exclusion d'un editeur dans le perimetre pilote du compte

Supprime l'exclusion de l'editeur dénotée par son identifiant au périmètre piloté du compte

Parameters

Name In Type Required Description
editeurId path string true identifiant de l'éditeur à retirer de l'exclusion (tel que retourné par les ressources /notice/xxx)
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

GET-Exclusion-Auteur

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/auteurs", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}/exclusions/auteurs

Endpoint de consultation des auteurs exclus dans le perimetre pilote du compte

Consultation paginée des auteurs dans le périmètre piloté du compte

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'auteur par page
offset query integer false Offset pour la page appelée
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ auteurs string true Liste des auteurs présents dans la liste d'exclusion
├─ limit integer(int64) true Quantité maximale d'auteur par page tel que passé en paramètre
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total d'auteur

PUT-Exclusion-Notice

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /perimetres/comptes/{username}/exclusions/notices/ean/{ean}

Endpoint pour exclure une notice dans le perimetre pilote du compte

Exclus la notice dénotée par l'EAN au périmètre piloté du compte

Parameters

Name In Type Required Description
ean path string true EAN de la notice concernée par cette exclusion de le périmètre du compte
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Exclusion-Notice

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean/{ean}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /perimetres/comptes/{username}/exclusions/notices/ean/{ean}

Endpoint pour supprimer l'exclusion d'une notice dans le perimetre pilote du compte

Supprime l'exclusion de la notice dénotée par l'EAN au périmètre piloté du compte

Parameters

Name In Type Required Description
ean path string true EAN de la notice concernée par cette exclusion de le périmètre du compte
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

GET-Exclusion-Editeur

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/editeurs", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}/exclusions/editeurs

Endpoint de consultation des editeurs exclus dans le perimetre pilote du compte

Consultation paginée des éditeurs dans le périmètre piloté du compte

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'éditeur par page
offset query integer false Offset pour la page appelée
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ editeurs string true Liste des éditeurs présents dans la liste d'exclusion
├─ limit integer(int64) true Quantité maximale d'éditeur par page tel que passé en paramètre
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total d'éditeur

GET-Exclusion-Notice

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/perimetres/comptes/{username}/exclusions/notices/ean", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /perimetres/comptes/{username}/exclusions/notices/ean

Endpoint de consultation des eans exclus dans le perimetre pilote du compte

Consultation paginée des eans dans le périmètre piloté du compte

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'ean par page
offset query integer false Offset pour la page appelée
username path string true le username du compte à qui appartient ce périmètre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ eans string true Liste des eans présents dans la liste d'exclusion
├─ limit integer(int64) true Quantité maximale d'ean par page tel que passé en paramètre
├─ offset integer(int64) true Offset, tel que passé en paramètre
╰─ total integer(int64) true Nombre total d'ean

Champs Extras

API qui permet de gérer des données spécifiques à votre organisation pour un EAN : les champs extras.

Ces données permettent d'enrichir ou de surcharger les informations.
Elles sont consultables par le biais des API de recherche des notices.

- Il est possible de surcharger les rayons ;
- d'indiquer la popularité d'un EAN ;
- 10 champs libres vous permettent d'ajouter des informations qui vous sont propres ;
- de gérer des données de gesiton : stock, nombre de ventes...

Cette API permet de travailler unitairement sur un EAN à la fois.

À noter que l'API des données de gestion portail permet un traitement par lot d'un sous ensemble des champs extras.

GET-Notice-Champs-Extras

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /notices/ean/{ean}/orgs/{orgId}/champs-extras

Consultation des champs extras associés à un EAN d'une organisation

Parameters

Name In Type Required Description
ean path string true EAN de la notice pour laquelle les champs extras sont demandés
orgId path string true Identifiant de l'organisation pour laquelle les champs extras sont demandés

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ stock integer(int64) false Stock courant
├┬ rayonsClient [object] false classification personalisée de l'organisation calculée à partir des index Electre, pour un usage donné (site web, PIM, système de gestion...)
│├─ usageRayonId string true destination de la classification (site web, système de gestion, ou référentiel produit de type PIM)
│├─ rayonClientId string true identifiant du rayon dans la classification
│╰─ libelleRayonClient string true Libellé dans la classification de l'organisation
├─ populariteOrganisation integer(int64) false La popularité organisation, ajoutée à la popularité Electre pour augmenter le score lors d'une recherche. Doit être positive.
├─ champLibre10 string false champ libre 10, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre2 string false champ libre 2, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre1 string false champ libre 1, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre7 string false champ libre 7, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ delaiLivraison string false Disponibilité en magasin ou délai de livraison
├─ champLibre8 string false champ libre 8, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre6 string false champ libre 6, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre4 string false champ libre 4, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ nombreVues integer(int64) false nombre de consultations de la notice sur le site
├┬ prixPromo object false Prix de vente de l'ouvrage
│├─ devise string true Code ISO de la devise
│├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││├─ taxeId string true Identifiant de la taxe (TVA)
││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││╰─ tauxTva number(double) true Taux de taxe appliqué
│╰─ ttc number(double) true Montant TTC
├─ champLibre5 string false champ libre 5, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├┬ prix object false Prix de vente de l'ouvrage
│├─ devise string true Code ISO de la devise
│├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││├─ taxeId string true Identifiant de la taxe (TVA)
││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
││╰─ tauxTva number(double) true Taux de taxe appliqué
│╰─ ttc number(double) true Montant TTC
├─ ventes integer(int64) false nombre d'exemplaires vendus, sur une période donnée
├─ champLibre9 string false champ libre 9, champ au format texte, pour des usages spécifiques non couverts par les champs existants
╰─ champLibre3 string false champ libre 3, champ au format texte, pour des usages spécifiques non couverts par les champs existants

PUT-Notice-Champs-Extras

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras \
  -H 'Content-Type: application/json' \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Content-Type: application/json
Accept: */*

const inputBody = '{
  "stock": "25",
  "rayonsClient": "",
  "populariteOrganisation": "",
  "champLibre10": "",
  "champLibre2": "",
  "champLibre1": "",
  "champLibre7": "",
  "delaiLivraison": "A commander",
  "champLibre8": "",
  "champLibre6": "",
  "champLibre4": "",
  "nombreVues": "455",
  "prixPromo": "",
  "champLibre5": "",
  "prix": "",
  "ventes": "13",
  "champLibre9": "",
  "champLibre3": ""
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras', headers = headers)

print(r.json())

 'application/json',
    'Accept' => '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /notices/ean/{ean}/orgs/{orgId}/champs-extras

Cet endpoint permet d'associer des champs extras spécifiques à votre organisation pour un EAN

Concernant la mise à jour de chaque EAN, il n'est pas utile de renvoyer l'ensemble des champs extras.
L'EAN sera mis à jour avec les données présentes sans supprimer les autres.

Body parameter

{
  "stock": "25",
  "rayonsClient": "",
  "populariteOrganisation": "",
  "champLibre10": "",
  "champLibre2": "",
  "champLibre1": "",
  "champLibre7": "",
  "delaiLivraison": "A commander",
  "champLibre8": "",
  "champLibre6": "",
  "champLibre4": "",
  "nombreVues": "455",
  "prixPromo": "",
  "champLibre5": "",
  "prix": "",
  "ventes": "13",
  "champLibre9": "",
  "champLibre3": ""
}

Parameters

Name In Type Required Description
ean path string true EAN de la notice sur laquelle les champs extras vont être associés
orgId path string true Identifiant de l'organisation à laquelles les champs extras vont être associés
body body object true Body
├─ stock body integer(int64) false Stock courant
├┬ rayonsClient body [object] false classification personalisée de l'organisation calculée à partir des index Electre, pour un usage donné (site web, PIM, système de gestion...)
│├─ usageRayonId body string true destination de la classification (site web, système de gestion, ou référentiel produit de type PIM)
│├─ rayonClientId body string true identifiant du rayon dans la classification
│╰─ libelleRayonClient body string true Libellé dans la classification de l'organisation
├─ populariteOrganisation body integer(int64) false La popularité organisation, ajoutée à la popularité Electre pour augmenter le score lors d'une recherche. Doit être positive.
├─ champLibre10 body string false champ libre 10, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre2 body string false champ libre 2, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre1 body string false champ libre 1, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre7 body string false champ libre 7, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ delaiLivraison body string false Disponibilité en magasin ou délai de livraison
├─ champLibre8 body string false champ libre 8, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre6 body string false champ libre 6, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ champLibre4 body string false champ libre 4, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├─ nombreVues body integer(int64) false nombre de consultations de la notice sur le site
├┬ prixPromo body object false Prix de vente de l'ouvrage
│├─ devise body string true Code ISO de la devise
│├┬ taxes body [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││├─ taxeId body string true Identifiant de la taxe (TVA)
││├─ horsTaxe body number(double) true Montant hors taxe sur lequel la taxe s'applique
││╰─ tauxTva body number(double) true Taux de taxe appliqué
│╰─ ttc body number(double) true Montant TTC
├─ champLibre5 body string false champ libre 5, champ au format texte, pour des usages spécifiques non couverts par les champs existants
├┬ prix body object false Prix de vente de l'ouvrage
│├─ devise body string true Code ISO de la devise
│├┬ taxes body [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││├─ taxeId body string true Identifiant de la taxe (TVA)
││├─ horsTaxe body number(double) true Montant hors taxe sur lequel la taxe s'applique
││╰─ tauxTva body number(double) true Taux de taxe appliqué
│╰─ ttc body number(double) true Montant TTC
├─ ventes body integer(int64) false nombre d'exemplaires vendus, sur une période donnée
├─ champLibre9 body string false champ libre 9, champ au format texte, pour des usages spécifiques non couverts par les champs existants
╰─ champLibre3 body string false champ libre 3, champ au format texte, pour des usages spécifiques non couverts par les champs existants

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Notice-Champs-Extras

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/notices/ean/{ean}/orgs/{orgId}/champs-extras", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /notices/ean/{ean}/orgs/{orgId}/champs-extras

Cet endpoint permet de supprimer toutes les données extras associées à un EAN pour une organisation

Parameters

Name In Type Required Description
ean path string true EAN de l'ouvrage recherché
orgId path string true Identifiant de l'organisation pour laquelle les champs extras sont demandés

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Notices Organisation

External API endpoints to add your own notice

PUT-Org-Notice

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Content-Type: application/json
Accept: */*

const inputBody = '{
  "codeLangue": "",
  "auteurs": "",
  "dateParution": "",
  "quatriemeDeCouverture": "",
  "ean": "",
  "collections": "",
  "titre": "",
  "distributeur": "",
  "editeurs": "",
  "disponibiliteEtendueId": "",
  "prix": "",
  "descriptionPhysique": "",
  "typeProduitId": "",
  "isbn": ""
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', headers = headers)

print(r.json())

 'application/json',
    'Accept' => '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /orgs/{orgId}/notices/{orgNoticeId}

Endpoint pour ajouter une notice specifique a cette organisation

Ajoute une notice a cette organisation

Body parameter

{
  "codeLangue": "",
  "auteurs": "",
  "dateParution": "",
  "quatriemeDeCouverture": "",
  "ean": "",
  "collections": "",
  "titre": "",
  "distributeur": "",
  "editeurs": "",
  "disponibiliteEtendueId": "",
  "prix": "",
  "descriptionPhysique": "",
  "typeProduitId": "",
  "isbn": ""
}

Parameters

Name In Type Required Description
orgId path string true identifiant de l'organisation (est fourni par Electre)
orgNoticeId path integer true identifiant de la notice dans l'organisation
body body object true Body
├─ codeLangue body string false Langue dans laquelle est écrit l'ouvrage.
├┬ auteurs body [object] false auteurs de l'ouvrage
│├─ codeContribution body string true Code de contribution ("A01" pour "Auteur", "A05" pour "Traducteur") cf. codes
│├─ auteurId body string true identifiant de l'auteur
│├─ nom body string false nom de l'auteur
│├─ prenom body string false prénom de l'auteur
│╰─ formebib body string true forme bibliographique de l'auteur
├─ dateParution body string false Date de parution au format YYYY-MM-DD
├─ quatriemeDeCouverture body string false Résumé ou quatrième de couverture, sera renvoyé dans le champ "quatrième de couverture"
├─ ean body string true Identifiant EAN de l'ouvrage
├┬ collections body [object] false collection d'ouvrages chez un éditeur
│├─ collectionId body string true identifiant de la collection
│├─ noDeCollection body string false numéro de l'ouvrage dans la collection
│╰─ libelleCollection body string true libellé de la collection
├─ titre body string true Titre complet de l'ouvrage
├┬ distributeur body object false Distributeur
│├─ distributeurId body string true identifiant du distributeur Electre
│├─ globalLocationNumber body integer(int64) false code distributeur GLN (Global Location Number)
│╰─ raisonSociale body string true raison sociale du distributeur
├┬ editeurs body [object] true Editeurs
│├─ editeurId body string true identifiant Electre de l'éditeur
│├─ formeBibEditeur body string true Forme bibliographique de l'éditeur
│╰─ lieuPublication body string false Ville du lieu d'édition
├─ disponibiliteEtendueId body integer(int64) true Valeur de disponibilité parmi 1,2 ,3 ,4, 5, 6, 7 ,8, 9
├┬ prix body object true Prix de vente de l'ouvrage
│├─ devise body string true Code ISO de la devise
│├┬ taxes body [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││├─ taxeId body string true Identifiant de la taxe (TVA)
││├─ horsTaxe body number(double) true Montant hors taxe sur lequel la taxe s'applique
││╰─ tauxTva body number(double) true Taux de taxe appliqué
│╰─ ttc body number(double) true Montant TTC
├┬ descriptionPhysique body object false Description physique de l'ouvrage
│├─ nbPages body string false nombre de pages
│├─ largeur body number(double) false largeur de l'ouvrage, en centimètres
│├─ hauteur body number(double) false hauteur de l'ouvrage, en centimètres
│├─ epaisseur body number(double) false épaisseur en cm
│╰─ poids body integer(int64) false poids de l'ouvrage, en grammes
├─ typeProduitId body string true Identifiant du type de produit (cf. nomenclature)
╰─ isbn body string false International Standard Book Number (ISBN 13)

Detailed descriptions

├─ disponibiliteEtendueId: Valeur de disponibilité parmi 1,2 ,3 ,4, 5, 6, 7 ,8, 9 Mapping : disponible 1 a-paraitre 2 reimpression-en-cours 3 manque-provisoirement 4 epuise 5 arret-de-commercialisation 6 ne-sera-plus-distribue 7 a-reparaitre 8 parution-annulee 9

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

POST-Org-Notice

Code samples

# You can also use wget
curl -X POST https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Content-Type: application/json
Accept: */*

const inputBody = '{
  "codeLangue": "",
  "auteurs": "",
  "dateParution": "",
  "quatriemeDeCouverture": "",
  "ean": "",
  "collections": "",
  "titre": "",
  "distributeur": "",
  "editeurs": "",
  "disponibiliteEtendueId": "",
  "prix": "",
  "descriptionPhysique": "",
  "typeProduitId": "",
  "isbn": ""
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', headers = headers)

print(r.json())

 'application/json',
    'Accept' => '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /orgs/{orgId}/notices/{orgNoticeId}

Endpoint pour mettre a jour une notice specifique a cette organisation

Met a jour une notice a cette organisation

Body parameter

{
  "codeLangue": "",
  "auteurs": "",
  "dateParution": "",
  "quatriemeDeCouverture": "",
  "ean": "",
  "collections": "",
  "titre": "",
  "distributeur": "",
  "editeurs": "",
  "disponibiliteEtendueId": "",
  "prix": "",
  "descriptionPhysique": "",
  "typeProduitId": "",
  "isbn": ""
}

Parameters

Name In Type Required Description
orgId path string true identifiant de l'organisation (est fourni par Electre)
orgNoticeId path integer true identifiant de la notice dans l'organisation
body body object true Body
├─ codeLangue body string false Langue dans laquelle est écrit l'ouvrage.
├┬ auteurs body [object] false auteurs de l'ouvrage
│├─ codeContribution body string true Code de contribution ("A01" pour "Auteur", "A05" pour "Traducteur") cf. codes
│├─ auteurId body string true identifiant de l'auteur
│├─ nom body string false nom de l'auteur
│├─ prenom body string false prénom de l'auteur
│╰─ formebib body string true forme bibliographique de l'auteur
├─ dateParution body string false Date de parution au format YYYY-MM-DD
├─ quatriemeDeCouverture body string false Résumé ou quatrième de couverture, sera renvoyé dans le champ "quatrième de couverture"
├─ ean body string true Identifiant EAN de l'ouvrage
├┬ collections body [object] false collection d'ouvrages chez un éditeur
│├─ collectionId body string true identifiant de la collection
│├─ noDeCollection body string false numéro de l'ouvrage dans la collection
│╰─ libelleCollection body string true libellé de la collection
├─ titre body string true Titre complet de l'ouvrage
├┬ distributeur body object false Distributeur
│├─ distributeurId body string true identifiant du distributeur Electre
│├─ globalLocationNumber body integer(int64) false code distributeur GLN (Global Location Number)
│╰─ raisonSociale body string true raison sociale du distributeur
├┬ editeurs body [object] true Editeurs
│├─ editeurId body string true identifiant Electre de l'éditeur
│├─ formeBibEditeur body string true Forme bibliographique de l'éditeur
│╰─ lieuPublication body string false Ville du lieu d'édition
├─ disponibiliteEtendueId body integer(int64) true Valeur de disponibilité parmi 1,2 ,3 ,4, 5, 6, 7 ,8, 9
├┬ prix body object true Prix de vente de l'ouvrage
│├─ devise body string true Code ISO de la devise
│├┬ taxes body [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
││├─ taxeId body string true Identifiant de la taxe (TVA)
││├─ horsTaxe body number(double) true Montant hors taxe sur lequel la taxe s'applique
││╰─ tauxTva body number(double) true Taux de taxe appliqué
│╰─ ttc body number(double) true Montant TTC
├┬ descriptionPhysique body object false Description physique de l'ouvrage
│├─ nbPages body string false nombre de pages
│├─ largeur body number(double) false largeur de l'ouvrage, en centimètres
│├─ hauteur body number(double) false hauteur de l'ouvrage, en centimètres
│├─ epaisseur body number(double) false épaisseur en cm
│╰─ poids body integer(int64) false poids de l'ouvrage, en grammes
├─ typeProduitId body string true Identifiant du type de produit (cf. nomenclature)
╰─ isbn body string false International Standard Book Number (ISBN 13)

Detailed descriptions

├─ disponibiliteEtendueId: Valeur de disponibilité parmi 1,2 ,3 ,4, 5, 6, 7 ,8, 9 Mapping : disponible 1 a-paraitre 2 reimpression-en-cours 3 manque-provisoirement 4 epuise 5 arret-de-commercialisation 6 ne-sera-plus-distribue 7 a-reparaitre 8 parution-annulee 9

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

DELETE-Org-Notice

Code samples

# You can also use wget
curl -X DELETE https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

DELETE /orgs/{orgId}/notices/{orgNoticeId}

Endpoint pour supprimer une notice specifique a cette organisation

Supprime une notice de cette organisation

Parameters

Name In Type Required Description
orgId path string true identifiant de l'organisation (est fourni par Electre)
orgNoticeId path integer true identifiant de la notice dans l'organisation

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

GET-Org-Notice

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/orgs/{orgId}/notices/{orgNoticeId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /orgs/{orgId}/notices/{orgNoticeId}

Endpoint pour recuperer une notice specifique a cette organisation

Recupere une notice propre de cette organisation

Parameters

Name In Type Required Description
orgId path string true identifiant de l'organisation (est fourni par Electre)
orgNoticeId path integer true identifiant de la notice dans l'organisation

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Auteurs

API qui permet de récupérer ou de chercher des auteurs

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/auteurs/search?q= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/auteurs/search?q= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/auteurs/search?q=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/auteurs/search',
  params: {
  'q' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/auteurs/search', params={
  'q': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/auteurs/search', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/auteurs/search?q=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/auteurs/search", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /auteurs/search

Endpoint pour chercher des auteurs

Cherche des auteurs

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'auteur par page
offset query integer false Offset pour la page appelée
q query string true Recherche sur la forme bibliographique des auteurs

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├┬ auteurs [object] true Liste des auteurs renvoyés
│├─ auteurId string true Identifiant de l'auteur
│├─ formebib string true Forme bibliographique du nom de l'auteur + qualificatifs
│╰─ codeTypeAuteur string false Code du type de l'auteur : "P" (personne physique) ; "C" (collectivité) ; "M" (manifestation)
├─ limit integer(int64) true Quantité maximale d'auteur par page
├─ offset integer(int64) true Offset pour la page appelée
╰─ total integer(int64) true Nombre total de notices

GET-Auteurs-Id

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/auteurs/{auteurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /auteurs/{auteurId}

Endpoint pour recuperer les informations d'un auteur

Recupere les informations d'un auteur

Parameters

Name In Type Required Description
auteurId path string true Identifiant de l'auteur

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ auteurId string true Identifiant de l'auteur
├─ codeTypeAuteur string false Code du type de l'auteur : "P" (personne physique) ; "C" (collectivité) ; "M" (manifestation)
╰─ formebib string true Forme bibliographique du nom de l'auteur + qualificatifs

Editeurs

API qui permet de récupérer ou de chercher des éditeurs, des distributeurs, des distributeurs

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/editeurs/search?q= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/editeurs/search?q= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/editeurs/search?q=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/editeurs/search',
  params: {
  'q' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/editeurs/search', params={
  'q': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/editeurs/search', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/editeurs/search?q=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/editeurs/search", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /editeurs/search

Endpoint pour chercher des éditeurs, des distributeurs, des diffuseurs...

Cherche des éditeurs, des distributeurs, des diffuseurs...

Parameters

Name In Type Required Description
limit query integer false Quantité maximale d'éditeur par page
offset query integer false Offset pour la page appelée
q query string true Recherche sur la raison sociale des éditeurs, distributeurs, diffuseurs...

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ limit integer(int64) true Quantité maximale d'auteur par page
├─ offset integer(int64) true Offset pour la page appelée
├┬ societes [object] true Liste des auteurs renvoyés
│├─ societeId string true Identifiant de l'éditeur, distributeur, diffuseur...
│├─ raisonSociale string true Raison sociale de l'éditeur, distributeur, diffuseur...
│├─ formeBibliographique string false Forme bibliographique de l'éditeur, distributeur, diffuseur...
│├─ autresAppelations [string] false Autres appelations de l'éditeur, distributeur, diffuseur...
│├─ typeActivite string false Code du type d'activité : "1" (éditeur) ; "2" (auto-édition) ; "3" (commercialisation du livre) ; "3.01" (diffusion) ; "3.02" (distribution) ; "3.03" ( diffusion / distribution) ; "3.04" (libraire) ; "3.05" (grossiste) ; "3.06" (comptoir de vente) ; "3.07" (importateur)
│├─ nationalite string true Nationalité de l'éditeur, distributeur, diffuseur...
│╰─ cnuf integer(int64) false Code national unifié fournisseur
╰─ total integer(int64) true Nombre total de notices

GET-Editeurs-Id

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/editeurs/{editeurId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /editeurs/{editeurId}

Endpoint pour recuperer les informations d'un éditeur, d'un distributeur, d'un diffuseur...

Recupere les informations d'un éditeur, distributeur, diffuseur...

Parameters

Name In Type Required Description
editeurId path string true Identifiant de l'éditeur, distributeur, diffuseur...

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ autresAppelations [string] false Autres appelations de l'éditeur, distributeur, diffuseur...
├─ cnuf integer(int64) false Code national unifié fournisseur
├─ formeBibliographique string false Forme bibliographique de l'éditeur, distributeur, diffuseur...
├─ nationalite string true Nationalité de l'éditeur, distributeur, diffuseur...
├─ raisonSociale string true Raison sociale de l'éditeur, distributeur, diffuseur...
├─ societeId string true Identifiant de l'éditeur, distributeur, diffuseur...
╰─ typeActivite string false Code du type d'activité : "1" (éditeur) ; "2" (auto-édition) ; "3" (commercialisation du livre) ; "3.01" (diffusion) ; "3.02" (distribution) ; "3.03" ( diffusion / distribution) ; "3.04" (libraire) ; "3.05" (grossiste) ; "3.06" (comptoir de vente) ; "3.07" (importateur)

Collections

API qui permet de chercher des collections

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/collections/search?q= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/collections/search?q= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/collections/search?q=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/collections/search',
  params: {
  'q' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/collections/search', params={
  'q': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/collections/search', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/collections/search?q=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/collections/search", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /collections/search

Endpoint pour chercher des collections

Permet la recherche de Collections. Si une collection est trouvée, elle est renvoyée sous forme de hiérarchie.

Parameters

Name In Type Required Description
limit query integer false Quantité maximale de collections par page. Valeur par défaut → 0. Valeurs acceptées → [0-100]
offset query integer false Offset pour la page appelée. Valeur par défaut → 0
q query string true Recherche sur le nom de la collection. Taille minimum → 3

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline
400 Bad Request Erreur dans les paramètres d'entrée None
401 Unauthorized Appel API non authentifié None
500 Internal Server Error Erreur interne Electre None

Response Schema

Status Code 200

Name Type Required Description
├─ limit integer(int64) true Quantité maximale de collections par page (même valeur que celle en entrée)
├─ offset integer(int64) true Offset pour la page appelée (même valeur que celle en entrée)
├┬ resultat [object] true Liste des résultats demandés. S'il n'y a aucun résultat, cette liste sera vide.
│├┬ collections [object] false Liste représentant un hiérarchie de collection. Peut avoir un nombre maximal de 3.
││├─ id string true Identifiant de la collection
││├─ libelle string true Libellé de la collection
││├─ parentId string false Si plusieurs collections sont renvoyées, elle représente une hiérarchie. Cette valeur pointe vers la collection parent.
││╰─ niveau integer(int64) true Valeurs entre 1 et 3. Indique le niveau de la collection dans la hiérarchie.
│├┬ editeurs [object] false Liste des éditeurs à qui appartiennent la collection
││├─ id string true Identifiant de l'éditeur
││╰─ nom string true Nom de l'éditeur
╰─ total integer(int64) true Nombre total de collections. Permet de savoir s'il faut rappeler le endpoint pour avoir les pages suviantes.

Données de gestion portail

API qui permet de gérer les données de gestion affichées en portail

Les données de gestion vous permettent d'enrichir le portail Electre avec des informations personnalisées.
Vous pouvez ainsi ajouter, grâce à cette API, vos informations de stock, de délai de livraison, etc...
Ces données sont consultables sur le portail en résultat de recherche ainsi que sur le détail d'une notice.

Il est à noter que ces données ne peuvent pas servir de critères de recherche.
Ainsi, les rayons clients mis à jour par cet API ne servent qu'à être affichées dans le portail ElectreNG.
Si vous avez besoin de surcharger des rayons pour votre site e-commerce ou votre système de gestion,
préférez l'API des champs extras.

Si vous utilisez déjà l'API des champs extras, sachez que cet endpoint utilise le même format de données.

PUT-DonneesGestion-par-Lot

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans \
  -H 'Content-Type: application/json' \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Content-Type: application/json
Accept: */*

const inputBody = '{
  "donneesGestion": ""
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans', headers = headers)

print(r.json())

 'application/json',
    'Accept' => '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /donnees-gestion-portail/orgs/{orgId}/eans

Endpoint de mise à jour par lot des données de gestion portail

Cet endpoint permet de mettre à jour les données de gestion portail pour un ensemble d'EANs

Attention, La mise à jour n'est pas transactionnelle !
Les données sont mises à jour pour chaque EAN individuellement.
L'échec de mise à jour d'un EAN ne provoque pas le rollback de l'ensemble des EANS.

Il est possible de mettre à jour au maximum : 3000 EANs par appel

Concernant la mise à jour de chaque EAN, il n'est pas utile de renvoyer l'ensemble des informations.
L'EAN sera mis à jour avec les données présentes sans supprimer les autres.

La réponse est HTTP 200 OK si tous les EANs ont été mis à jour sans erreur.
Si au moins un EAN est en erreur alors la réponse est HTTP 207 MULTI-STATUS
Si tous les EANS sont en erreur, alors la réponse est HTTP 400

Body parameter

{
  "donneesGestion": ""
}

Parameters

Name In Type Required Description
orgId path string true Identifiant de l'organisation à laquelle les données de gestion portail sont associées
body body object true Body
├┬ donneesGestion body [object] true Liste des données de gestion portail
│├─ ean body string true EAN 13 de la notice sur laquelle les données de gestion portail sont associées
│├─ stock body integer(int64) false Stock courant
│├─ stockReserve body integer(int64) false Le stock réservé
│├┬ rayonsClientPortail body [object] false Les différents rayons dans lesquels sont classés l'EAN.
││├─ rayonClientId body string true identifiant du rayon dans la classification
││╰─ libelleRayonClient body string true Libellé dans la classification de l'organisation
│├┬ prix body object false Prix de vente de l'ouvrage
││├─ devise body string true Code ISO de la devise
││├┬ taxes body [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
│││├─ taxeId body string true Identifiant de la taxe (TVA)
│││├─ horsTaxe body number(double) true Montant hors taxe sur lequel la taxe s'applique
│││╰─ tauxTva body number(double) true Taux de taxe appliqué
││╰─ ttc body number(double) true Montant TTC
│├┬ prixPromo body object false Prix de vente de l'ouvrage
││├─ devise body string true Code ISO de la devise
││├┬ taxes body [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
│││├─ taxeId body string true Identifiant de la taxe (TVA)
│││├─ horsTaxe body number(double) true Montant hors taxe sur lequel la taxe s'applique
│││╰─ tauxTva body number(double) true Taux de taxe appliqué
││╰─ ttc body number(double) true Montant TTC
╵╰─ delaiLivraison body string false Disponibilité en magasin ou délai de livraison

Detailed descriptions

│├┬ rayonsClientPortail: Les différents rayons dans lesquels sont classés l'EAN. Une liste vide permet de les effacer

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

GET-DonneesGestion-par-Lot

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans?ean= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans?ean= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans?ean=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans',
  params: {
  'ean' => 'array[string]'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans', params={
  'ean': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans?ean=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/donnees-gestion-portail/orgs/{orgId}/eans", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /donnees-gestion-portail/orgs/{orgId}/eans

Endpoint de récupération des données de gestion portail par liste d'EAN's

Cet endpoint permet de récupérer les données de gestion portail pour un ensemble d'EANs

La limite est fixée à 100 EANs à la fois.

Parameters

Name In Type Required Description
ean query array[string] true Les EANs des ouvrages recherchés. Limité à 100 EANs.
orgId path string true Identifiant de l'organisation à laquelle les données de gestion portail sont associées

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├┬ donneesGestion [object] true Liste des données de gestion portail
│├─ ean string true EAN 13 de la notice sur laquelle les données de gestion portail sont associées
│├─ stock integer(int64) false Stock courant
│├─ stockReserve integer(int64) false Le stock réservé
│├┬ rayonsClientPortail [object] false Les différents rayons dans lesquels sont classés l'EAN.
││├─ rayonClientId string true identifiant du rayon dans la classification
││╰─ libelleRayonClient string true Libellé dans la classification de l'organisation
│├┬ prix object false Prix de vente de l'ouvrage
││├─ devise string true Code ISO de la devise
││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
│││├─ taxeId string true Identifiant de la taxe (TVA)
│││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
│││╰─ tauxTva number(double) true Taux de taxe appliqué
││╰─ ttc number(double) true Montant TTC
│├┬ prixPromo object false Prix de vente de l'ouvrage
││├─ devise string true Code ISO de la devise
││├┬ taxes [object] false Détail des taxes : TVA sur le livre (ou sur un autre type de produit si l'article comprend d'autres types de produits)
│││├─ taxeId string true Identifiant de la taxe (TVA)
│││├─ horsTaxe number(double) true Montant hors taxe sur lequel la taxe s'applique
│││╰─ tauxTva number(double) true Taux de taxe appliqué
││╰─ ttc number(double) true Montant TTC
╵╰─ delaiLivraison string false Disponibilité en magasin ou délai de livraison

Bons de commandes pour les fournisseurs

API qui permet aux fournisseurs de gérer les bons de commande qui leurs sont destinés.

3 fonctionnalités sont proposées:
- Récupérer la liste des bons de commandes
- Récupérer tous les détails d'un bon de commande
- Associer à un bon de commande un identifiant fournisseur qui sera stocké chez Electre

Liste des bons de commandes

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /api/fournisseurs/bons-de-commande

Récupére la liste des bons de commandes

Renvoie la liste des bons de commande. Ne prend aucun paramètre en entrée.

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ dateReponse string true Date de la réponse. Format ISO 8601 YYYY-MM-DDThh:mm:ss.sss
├─ message string true
├┬ resultat [object] true Tableau contenant tous les bons de commandes disponibles. Peut être vide.
│├─ bdcId string true Identifiant du bon de commande
│├─ nomClient string true Nom du client du bon de commande
│├─ dateDisponibilite string true Date depuis laquelle le bon de commande est disponible. Format ISO 8601 YYYY-MM-DDThh:mm:ss.sssZ
│├─ datePremiereTransmission string true Date depuis laquelle le bon de commande est lue pour la première fois par le fournisseur. Format ISO 8601 YYYY-MM-DDThh:mm:ssZ
╵╰─ nombreNotice number(double) true Nombre de notices dans le bon de commande

Bon de commande par identifiant

Code samples

# You can also use wget
curl -X GET https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id} \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

GET https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id} HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}', headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /api/fournisseurs/bons-de-commande/{bdc-id}

Récupére un bon de commande en entier

Renvoie un bon de commande en entier. Prend uniquement un identifiant de bon de commande en entrée.

Parameters

Name In Type Required Description
bdc-id path string true Identifiant du bon de commande

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ dateReponse string true Date de la réponse. Format ISO 8601 YYYY-MM-DDThh:mm:ss.sss
├─ message string true
├┬ resultat object true Contient toutes les infos du bon de commande
│├┬ adresseLivraison2 object true Adresse de livraison complète avec champs séparés
││├─ codePostal string false
││├─ pays string false
││├─ nom string false
││├─ civilite string false
││├─ prenom string false
││├─ rue string false
││├─ ville string false
││├─ raisonSociale string false
││╰─ adresseId string false
│├─ referenceCommande string true Identifiant de la commande pour un client
│├─ datePremiereTransmission string true Date depuis laquelle le bon de commande est lue pour la première fois par le fournisseur. Format ISO 8601 YYYY-MM-DDThh:mm:ssZ
│├─ fraisDePort string true frais de port
│├─ commentaireBdc string true commentaire du client
│├┬ adresseFacturation2 object true Adresse de facturation complète avec champs séparés
││├─ codePostal string false
││├─ pays string false
││├─ nom string false
││├─ civilite string false
││├─ prenom string false
││├─ rue string false
││├─ ville string false
││├─ raisonSociale string false
││╰─ adresseId string false
│├─ adresseLivraison string true Adresse brute de livraison
│├─ raisonSocialeClient string true raison sociale du client
│├┬ destinataire object true
││├─ contact string true contact destinataire
││╰─ email string true email destinataire
│├─ adresseCommerciale string true Adresse brute commerciale
│├┬ articles [object] true Liste des articles du bon de commande
││├─ editeur string false Éditeur de la notice
││├─ champLibre10 string false Valeur du champ libre 10
││├─ quantite integer(int64) true Quantité commandé de l'article
││├─ champLibre2 string false Valeur du champ libre 2
││├─ champLibre1 string false Valeur du champ libre 1
││├─ ean string false EAN de la notice
││├─ champLibre7 string false Valeur du champ libre 7
││├─ champLibre8 string false Valeur du champ libre 8
││├─ champLibre6 string false Valeur du champ libre 6
││├─ titre string false titre de la notice
││├─ commentaire string false Commentaire du client
││├─ champLibre4 string false Valeur du champ libre 4
││├─ champLibre12 string false Valeur du champ libre 12
││├─ distributeur string false Distributeur de la notice
││├─ type string true Indique le type d'article : "article" ou "notice"
││├─ noticeId string true Id de la notice
││├─ auteur string false Autheur de la notice
││├─ champLibre5 string false Valeur du champ libre 5
││├─ champLibre11 string false Valeur du champ libre 11
││├─ champLibre9 string false Valeur du champ libre 9
││├─ scolaire boolean true Indique si la notice est scolaire ou non
││╰─ champLibre3 string false Valeur du champ libre 3
│├─ dateDisponibilite string true Date depuis laquelle le bon de commande est disponible. Format ISO 8601 YYYY-MM-DDThh:mm:ss.sssZ
│├┬ champsLibres object false Si des champs libres sont utilisés dans le bon de commande, leurs libellés apparaitront dans cet objet
││├─ champLibre10 string false Libellé du champ libre 10
││├─ champLibre2 string false Libellé du champ libre 2
││├─ champLibre1 string false Libellé du champ libre 1
││├─ champLibre7 string false Libellé du champ libre 7
││├─ champLibre8 string false Libellé du champ libre 8
││├─ champLibre6 string false Libellé du champ libre 6
││├─ champLibre4 string false Libellé du champ libre 4
││├─ champLibre12 string false Libellé du champ libre 12
││├─ champLibre5 string false Libellé du champ libre 5
││├─ champLibre11 string false Libellé du champ libre 11
││├─ champLibre9 string false Libellé du champ libre 9
││╰─ champLibre3 string false Libellé du champ libre 3
│├┬ adresseCommerciale2 object true Adresse Commerciale complète avec champs séparés
││├─ codePostal string false
││├─ pays string false
││├─ nom string false
││├─ civilite string false
││├─ prenom string false
││├─ rue string false
││├─ ville string false
││├─ raisonSociale string false
││╰─ adresseId string false
│├─ adresseFacturation string true Adresse brute de la facture
│├─ referenceLot string true identifiant du lot
│├─ bdcId string true Identifiant du bon de commande
│├┬ client object true
││├─ contact string true contact client
││╰─ email string true email client
│├─ referenceMarche string true identifiant d'un appel d'offre
│├─ modeExpedition string true mode d'expedition
╵╰─ referenceClient string true Numéro client

Enregistrer identifiant fournisseur

Code samples

# You can also use wget
curl -X PUT https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}?bdc%2Did%2Dfournisseur= \
  -H 'Accept: */*' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}?bdc%2Did%2Dfournisseur= HTTP/1.1
Host: api.demo.electre-ng-horsprod.com
Accept: */*


const headers = {
  'Accept':'*/*',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}?bdc%2Did%2Dfournisseur=',
{
  method: 'PUT',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => '*/*',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put 'https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}',
  params: {
  'bdc-id-fournisseur' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': '*/*',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}', params={
  'bdc-id-fournisseur': ''
}, headers = headers)

print(r.json())

 '*/*',
    'Authorization' => 'Bearer {access-token}',
    
    );

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('PUT','https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}?bdc%2Did%2Dfournisseur=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"*/*"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.demo.electre-ng-horsprod.com/api/fournisseurs/bons-de-commande/{bdc-id}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

PUT /api/fournisseurs/bons-de-commande/{bdc-id}

Enregistrer l'identifiant fournisseur du bon de commande

Enregistre un identifiant fournisseur dans le bon de commande Electre.

Parameters

Name In Type Required Description
bdc-id-fournisseur query string true Identifiant du bon de commande chez le fournisseur
bdc-id path string true Identifiant du bon de commande Electre

Example responses

200 Response

Responses

Status Meaning Description Schema
200 OK Response for operation Inline

Response Schema

Status Code 200

Name Type Required Description
├─ bdcId string true Identifiant du bon de commande Electre
├─ bdcIdFournisseur string true Identifiant du bon de commande chez le fournisseur
├─ dateReponse string true Date de la réponse. Format ISO 8601 YYYY-MM-DDThh:mm:ss.sss
╰─ message string true