Documentation API đź“•
Ceci est la documentation de la plateforme web de Pixao.
Principe de base de l’api
Spécifications
L’api fonctionne en Typescript donc toutes les données échangées seront de type Json et les types des variables seront prises en compte.
⚠Ceci est un exemple des types de données :
{ "id": "61532b3940f9440044280179", // Id MongoDB (string) "firstName": "Prenom", // Chaine de caractère (string) "age": 37, // Nombre (number) "active": true, // Boolean (bool) "data": "2022-01-06T12:30:00.000Z", // Date (Date) 06/01/2022 à 12:30 "droit": [ // Tableau (array) "reception", "commande" ], "objet": { // Objet (object) "name": "Nom de famille" } }
Authentification
Nous utilisons un "Bearer Token” pour gérer l’authentification à l’api. Pour l’obtenir il faut lancer la requête suivante avec vos informations de connexion.
POST https://api.asplogistique.com/api/login // Avec comme body { "username": "votre_nom_utilisateur", "password": "votre_mot_de_passe" } /** * Cela retournera un objet javascript avec votre token d'authentification * qui sera Ă remettre dans toute vos requĂŞtes */ { "token": "votre_token", "user": { ... } }
Commande
Récupération de la liste des commandes
Pour récupérer la liste des commandes il vous faudra l’id de votre compte, que Pixao vous a transmis.
GET https://api.asplogistique.com/api/compte/:id/commande /** * Voici les arguments servant à la pagination: * limit=10 ( Défini une limite de 10 commandes renvoyées par page ) * page=1 ( Défini la page à retourner. Ici la première ) * * Voici les arguments permettant de filter la liste des commandes. * statut=en_attente ( Retournera uniquement les commandes en attente ( Valeur possible ("en_attente", "transmis") ) ) */ GET https://api.asplogistique.com/api/compte/:id/commande?limit=15&page=1&statut=en_attente /** * Cela retournera une liste d'objet de type commande * Ainsi que les informations de pagination */ { "id": string, "noCommande": string, "referenceCommandeClient": string, "referenceCommandeDonneurOrdre": string, "dateLivraisonPrevue": Date, "dateLivraisonImperative": Date, "dateExpeditionPrevue": Date, "dateTransmission": Date, "tiersLivre": { "code": string, "type": string, "nom": string, "nomAbrege": string, "contact": string, "telephone": string, "fax": string, "email": string, "website": string, "adresse": { "rue": string, "complement": string, "complement2": string, "complement3": string, "ville": string, "codePostal": number, "pays": string, "codePays": string } }, "tiersFacture": { "code": string, "type": string, "nom": string, "nomAbrege": string, "contact": string, "telephone": string, "fax": string, "email": string, "website": string, "adresse": { "rue": string, "complement": string, "complement2": string, "complement3": string, "ville": string, "codePostal": number, "pays": string, "codePays": string } }, "statut": string, "commentaireLivraison": string, "commentairePreparation": string, "urgence": number, "commandeLignes": [ { "article": { "code": string, "label": string, "description": string }, "poste": string, "quantiteCommandee": number, "quantiteCommandee2": number, "multiplicateurquantiteCommandee": number, "commentaireLivraison": string, "commentairePreparation": string, "contraites": { "type": { "code": string, "label": string, "description": string } "value": string } } ] }
Récupération d’une commande
Pour récupérer une commande il vous faudra son id.
GET https://api.asplogistique.com/api/commande/:id /** * Cela retournera un objet de type commande */ { "id": string, "noCommande": string, "referenceCommandeClient": string, "referenceCommandeDonneurOrdre": string, "dateLivraisonPrevue": Date, "dateLivraisonImperative": Date, "dateExpeditionPrevue": Date, "dateTransmission": Date, "tiersLivre": { "code": string, "type": string, "nom": string, "nomAbrege": string, "contact": string, "telephone": string, "fax": string, "email": string, "website": string, "adresse": { "rue": string, "complement": string, "complement2": string, "complement3": string, "ville": string, "codePostal": number, "pays": string, "codePays": string } }, "tiersFacture": { "code": string, "type": string, "nom": string, "nomAbrege": string, "contact": string, "telephone": string, "fax": string, "email": string, "website": string, "adresse": { "rue": string, "complement": string, "complement2": string, "complement3": string, "ville": string, "codePostal": number, "pays": string, "codePays": string } }, "statut": string, "commentaireLivraison": string, "commentairePreparation": string, "urgence": number, "commandeLignes": [ { "article": { "code": string, "label": string, "description": string }, "poste": string, "quantiteCommandee": number, "quantiteCommandee2": number, "multiplicateurquantiteCommandee": number, "commentaireLivraison": string, "commentairePreparation": string, "contraites": { "type": { "code": string, "label": string, "description": string } "value": string } } ] }
Création d’une commande
Avant de créer une commande vous devez savoir que les types de tiers sont uniquement :
[ "client", "fournisseur", "transporteur" ]Mais également que les contraintes possible sont les suivantes:
[ { code: "20", label: "N° de palette", description: "Contrainte Sscc, N° Ur client, N° UR Galatée" }, { code: "40", label: "N° lot", description: "Contrainte N° de lot" }, { code: "70", label: "Affectation", description: "Contrainte affectation" }, { code: '30', label: "Conditionnement", description: "Contrainte sur le conditionnement" }, { code: "95", label: "Emplacement", description: "Contrainte sur l'emplacement" } ]Voici la requête pour créer une commande
POST https://api.asplogistique.com/api/commande /** * Il faut envoyer dans le body un objet de type commande. * Les champs avec un '?' sont optionels, sinon le champ est obligatoire. * Si un champ obligatoire n'est pas renseigné, l'api retournera une erreur 400 et ne créera pas la commande. */ { "noCommande"?: string, // Généré automatiquement si non renseigné, doit être unique si renseigné "typeCommande": string, "referenceCommandeClient"?: string, "referenceCommandeDonneurOrdre"?: string, "dateExpeditionPrevue": Date, "dateLivraisonPrevue": Date, "dateLivraisonImperative"?: Date, "tiersLivre": { "type": string, "code": string, "nom": string, "telephone"?: string, "fax"?: string, "email"?: string, "adresse": { "rue": string, "complement"?: string, "complement2"?: string, "complement3"?: string, "ville": string, "codePostal": number, "pays": string, "codePays": string } }, "tiersFacture": { "type": string, "code": string, "nom": string, "telephone"?: string, "fax"?: string, "email"?: string, "adresse": { "rue": string, "complement"?: string, "complement2"?: string, "complement3"?: string, "ville": string, "codePostal": number, "pays": string, "codePays": string } }, "commentairePreparation"?: string, "commentaireLivraison"?: string, "commandeLignes": [ { "poste"?: string, "article": { "code": string }, "quantiteCommandee": number, "quantiteCommandee2": number, "multiplicateurquantiteCommandee": number, "commentairePreparation"?: string, "commentaireLivraison"?: string, "contraintes"?: [ { "type": { "label": string, "code": string, "description": string }, "value": string } ] } ], "compte": string }
Modification d’une commande
PUT https://api.asplogistique.com/api/commande/:id /** * Il faut envoyer dans le body le json * de la commande Ă modifier pour la mettre Ă jour */
Transmission d’une commande au WMS
Pour transmettre une commande il vous faudra son id.
POST https://api.asplogistique.com/api/commande/:id/transmit // Cela transmettra la commande au WMS
Attendu
Récupération de la liste des attendus
Pour récupérer la liste des attendus il vous faudra l’id de votre compte, que Pixao vous a transmis.
GET https://api.asplogistique.com/api/compte/:id/reception /** * Voici les arguments servant à la pagination: * limit=10 ( Défini une limite de 10 attendus renvoyées par page ) * page=1 ( Défini la page à retourner. Ici la première ) * * Voici les arguments permettant de filter la liste des attendus. * statut=en_attente ( Retournera uniquement les attendus en attente ( Valeur possible ("en_attente", "transmis") ) ) */ GET https://api.asplogistique.com/api/compte/:id/reception?limit=15&page=1&statut=en_attente /** * Cela retournera une liste d'objet de type attendu * Ainsi que les informations de pagination */ { "codeEdiDestinataire": ?string, "codeEdiEmetteur": ?string, "numeroOrdreLivraison": ?string, "dateEmissionAttendu": Date, "dateLivraisonPrevu": Date, "codeTiersOrigineMarchandise": string, "nbLigneAttendu": ?number, "codeTransporteur": ?string, "motifApprovisionnement": ?string, "nbColisAttendu": ?number, "poidsTotalAttendu": ?number, "nbPaletteAttentu": ?number, "nbRegroupementAttendu": ?string, "volumeTotalAttendu": ?number, "receptionLignes": [ { "article": { "code": string }, "quantiteUC": number, "numeroPosteAttendu": ?string, "pcb": ?number, "prixHT": ?number, "numeroLot": ?string, "DLUO": ?Date, "dateFabrication": ?Date, "codeConditionnement": ?string, "SSCCouEtiquettePalette": ?string, "variantePromotionnel": ?string, "varianteLogistique": ?string, "poidsLigne": ?number, "codeNatureStock": ?string, "gencod": ?string, "codeDangerProduit": ?string, "numeroDeSerie": ?string, "codeSuiviLigne": ?string, "quantiteStandartUR": ?number, "nomPrestaTransfo": ?string, "enStock": ?number, "typeMouvementArticle": string } ], "commentaireEntete": ?string, "typeMouvement": string, "compte": Compte }
Récupération d’un attendu
Pour récupérer une commande il vous faudra son id.
GET https://api.asplogistique.com/api/reception/:id /** * Cela retournera un objet de type attendu */ { "statut": string, "_id": string, "dateEmissionAttendu": Date, "dateLivraisonPrevu": Date, "codeTiersOrigineMarchandise": string, "receptionLignes": [ { "_id": string, "article": { "_id": string, "code": string }, "quantiteUC": number, "typeMouvementArticle": string } ], "typeMouvement": string, "compte": Compte, "numeroOrdreLivraison": string, "createdBy": string, "createdAt": Date, "updatedAt": Date, "__v": number, "id": string }
Création d’un attendu
Voici la requête pour créer un attendu
POST https://api.asplogistique.com/api/reception /** * Il faut envoyer dans le body un objet de type attendu. * Les champs avec un '?' sont optionels, sinon le champ est obligatoire. * Si un champ obligatoire n'est pas renseigné, l'api retournera une erreur 400 et ne créera pas l'attendu. */ { "codeEdiDestinataire": ?string, "codeEdiEmetteur": ?string, "numeroOrdreLivraison": ?string, "dateEmissionAttendu": Date, "dateLivraisonPrevu": Date, "codeTiersOrigineMarchandise": string, "nbLigneAttendu": ?number, "codeTransporteur": ?string, "motifApprovisionnement": ?string, "nbColisAttendu": ?number, "poidsTotalAttendu": ?number, "nbPaletteAttentu": ?number, "nbRegroupementAttendu": ?string, "volumeTotalAttendu": ?number, "receptionLignes": [ { "article": { "code": string }, "quantiteUC": number, "numeroPosteAttendu": ?string, "pcb": ?number, "prixHT": ?number, "numeroLot": ?string, "DLUO": ?Date, "dateFabrication": ?Date, "codeConditionnement": ?string, "SSCCouEtiquettePalette": ?string, "variantePromotionnel": ?string, "varianteLogistique": ?string, "poidsLigne": ?number, "codeNatureStock": ?string, "gencod": ?string, "codeDangerProduit": ?string, "numeroDeSerie": ?string, "codeSuiviLigne": ?string, "quantiteStandartUR": ?number, "nomPrestaTransfo": ?string, "enStock": ?number, "typeMouvementArticle": string } ], "commentaireEntete": ?string, "typeMouvement": string, "compte": string }
Modification d’un attendu
PUT https://api.asplogistique.com/api/reception/:id /** * Il faut envoyer dans le body le json * de l'attendu Ă modifier pour la mettre Ă jour */
Transmission d’un attendu au WMS
Pour transmettre un attendu il vous faudra son id.
POST https://api.asplogistique.com/api/reception/:id/transmit // Cela transmettra l'attendu au WMS
Article
Récupération du stock d’une liste article
POST https://api.asplogistique.com/api/article/stock/:compteId /** * Il faut envoyer à la place de :compteId l'id du compte qui vous à été transmis par Pixao * Et dans le body de la requête envoyé un objet de ce type */ { "articles": ["123", "456"] } // Cela retournera un objet de ce type [ { "compte": "TST", "article": "123", "stock": 123 }, { "compte": "TST", "article": "456", "stock": 159 } ]
Stock
GET https://api.asplogistique.com/api/consultation/:compteId/stock?limit=15&page=1
Copyright © SARL Pixao 2024