Introduction
Comment utiliser l'API de First Delivery Group
Collection Postman
Suivez les étapes suivantes pour démarrer rapidement avec l'API de First Delivery Group
- Télécharger et installer l'application Postman
- Installer la collection Postman. Cliquez sur le bouton "Run in Postman" ci-dessous pour installer
- Veillez à mettre à jour les variables d"environnement:
-
{{env}} : https://www.firstdeliverygroup.com/api/v2
-
{{token}} : Le jeton d'accès fournit
-
Commandes
Chez First Delivery Group, nous avons mis en place une API qui vous permet de créer des commandes et de consulter l'état de vos commandes.
NB: Toutes les requêtes nécessitent que le jeton fourni par nous soit le Berear token pour l'autorisation.
Ajouter une commande
Pour ajouter une nouvelle commande en utilisant notre API
Méthode HTTP : POST
Lien : {{env}}/create
{
"Client": {
"nom": "nom client",
"gouvernerat": "sousse",
"ville": "medina",
"adresse": "adresse client",
"telephone": "00000000",
"telephone2": ""
},
"Produit": {
"prix": 20,
"designation": "designation produit",
"nombreArticle": 1,
"commentaire": "commentaire",
"article": "nom prduit",
"nombreEchange": 0
}
}
{
"status": 201,
"isError": false,
"message": "Produit ajouté avec succès",
"result": {
"barCode": "683375045049",
"link": "{{env}}/print?q=eyji"
}
}
Paramètres d'entrées
Paramètre | Type | Requis | Description |
---|---|---|---|
Client | |||
nom | String | Oui | Nom du client |
gouvernerat | String | Oui | Gouvernerat du client |
ville | String | Oui | Ville du client |
adresse | String | Oui | Adresse du client |
telephone | String | Oui | Numéro de téléphone du client |
telephone2 | String | Non | Deuxième numéro de téléphone du client |
Produit | |||
prix | Number | Oui | Prix TTC du produit (Entre 0 et 999 DT) Inclus les frais de livraison |
designation | String | Oui | Désignation du produit |
nombreArticle | Number | Oui | Nombre d'article |
commentaire | String | Non | Commentaire |
article | String | Non | Nom du produit |
nombreEchange | Number | Non | Nombre d'échange |
Ajouter plusieurs commandes
Pour ajouter des commandes en utilisant notre API
NB:
- Vous ne pouvez ajouter que 100 commandes à la fois.
- Pour garantir la stabilité et la performance de notre API, nous avons mis en place une limitation du taux de requêtes. Chaque utilisateur peut effectuer une requête toutes les 10 secondes. Toute tentative d'exécution de requêtes plus fréquentes entraînera un rejet temporaire.
Méthode HTTP : POST
Lien : {{env}}/bulk-create
[
{
"Client": {
"nom": "nom du client 1",
"gouvernerat": "sousse",
"ville": "medina",
"adresse": "adresse client 1",
"telephone": "88999000",
"telephone2": ""
},
"Produit": {
"prix": 50,
"designation": "designation produit 1",
"nombreArticle": 1,
"commentaire": "",
"article": "nom produit 1",
"nombreEchange": 2
}
},
{
"Client": {
"nom": "nom client",
"gouvernerat": "sousse",
"ville": "medina",
"adresse": "adresse client",
"telephone": "00000000",
"telephone2": "22000000"
},
"Produit": {
"prix": 20,
"designation": "designation produit 2",
"nombreArticle": 1,
"commentaire": "commentaire",
"article": "nom produit 2",
}
}
]
====== Succès ======
{
"status": 201,
"isError": false,
"message": "3 produit(s) a/ont été ajoutés avec succès",
"result": {
"link": "{{env}}/bulk-print?q=eyji",
"barCodes": [
{
"index": 0,
"barCode": "111111111111"
},
{
"index": 1,
"barCode": "222222222222"
},
{
"index": 2,
"barCode": "333333333333"
}
]
}
}
====== En cas d'erreur interceptée ======
{
"status": 207,
"isError": false,
"message": "Nous n'arrivons pas à ajouter 1 produit(s)",
"result": {
"link": "{{env}}/bulk-print?q=eyji",
"barCodes": [
{
"index": 0,
"barCode": "444444444444"
},
{
"index": 2,
"barCode": "555555555555"
}
]
};
"errors": [
{
"Client": {
"nom": "nom du client 1",
"gouvernerat": "gouvernerat invalide",
"ville": "ville 1",
"adresse": "adresse client",
"telephone": "11222333",
"telephone2": ""
},
"Produit": {
"article": "article",
"prix": "999",
"designation": "designation produit",
"nombreArticle": "2",
"commentaire": "commentaire"
},
"errors": {
"isError": true,
"message": "Le gouvernorat 'gouvernerat invalide' est invalide"
}
}
}
Paramètres d'entrées
Paramètre | Type | Requis | Description |
---|---|---|---|
Client | |||
nom | String | Oui | Nom du client |
gouvernerat | String | Oui | Gouvernerat du client |
ville | String | Oui | Ville du client |
adresse | String | Oui | Adresse du client |
telephone | String | Oui | Numéro de téléphone du client |
telephone2 | String | Non | Deuxième numéro de téléphone du client |
Produit | |||
prix | Number | Oui | Prix TTC du produit (Entre 0 et 999 DT) Inclus les frais de livraison |
designation | String | Oui | Désignation du produit |
nombreArticle | Number | Oui | Nombre d'article |
commentaire | String | Non | Commentaire |
article | String | Non | Nom du produit |
nombreEchange | Number | Non | Nombre de produits d'échange |
Consulter l'état d'une commande
Méthode HTTP : POST
Lien : {{env}}/etat
NB:
- Pour garantir la stabilité et la performance de notre API, nous avons mis en place une limitation du taux de requêtes. Chaque utilisateur peut effectuer une requête par seconde. Toute tentative d'exécution de requêtes plus fréquentes entraînera un rejet temporaire.
{
"barCode": "683377360858"
}
{
"status": 200,
"isError": false,
"message": "Etat du produit récupéré avec succès",
"result": {
"state": "En attente",
"barCode": "683377360858"
}
}
Paramètres d'entrées
Paramètre | Type | Requis | Description |
---|---|---|---|
barCode | String | Oui | Code à barre du produit |
Filtrer les commande
Méthode HTTP : POST
Lien : {{env}}/filter
NB:
- Pour garantir la stabilité et la performance de notre API, nous avons mis en place une limitation du taux de requêtes. Chaque utilisateur peut effectuer 2 requêtes chaque 10 secondes. Toute tentative d'exécution de requêtes plus fréquentes entraînera un rejet temporaire.
{
"barCode": "",
"createdAtFrom": "2021-01-02",
"createdAtTo": "2022-01-02",
"state": 0,
"pagination": {
"pageNumber": 1,
"limit": 10
}
}
{
"status": 200,
"isError": false,
"message": "Commandes récupérées avec succès",
"result": {
"CurrentPage": 1,
"TotalPages": 1,
"TotalCount": 1,
"PageSize": 10,
"Items": [
{
"barCode": "xxxxxxxxxxxx",
"createdAt": "2021-01-02T23:00:00.000Z",
"pickupAt": "2021-01-04T18:51:38.000Z",
"deliveredAt": "2021-01-05T18:49:32.000Z",
"Client": {
"name": "***",
"address": "***",
"city": "***",
"state": "***",
"telephone": "********",
"telephone2": ""
},
"Product": {
"designation": "***",
"price": 20,
"message": "",
"itemNumber": "1"
},
"state": "**",
"exchange": "0"
}
]
}
}
Paramètres d'entrées
Paramètre | Type | Requis | Description |
---|---|---|---|
barCode | String | Non | Code à barre du produit |
createdAtFrom | String | Non | Date de création de la commande (format : YYYY-MM-DD) |
createdAtTo | String | Non | Date de création de la commande (format : YYYY-MM-DD) |
state | Number | Non | Etat de la commande voir détails |
pagination | Non | Paramètres de pagination | |
pageNumber | Number | Non | Numéro de la page (1 par défaut) |
limit | Number | Non | Nombre d'éléments par page (10 par défaut) |
Détails des états
Etat | Code | Description |
---|---|---|
En attente | 0 | Commande en attente de traitement |
En cours | 1 | Commande en cours de traitement |
Livré | 2 | Commande livré |
Echange | 3 | Commande en état d'échange |
Retour Expéditeur | 5 | Commande en retour expéditeur |
Supprimé | 6 | Commande annulé par expéditeur |
Rtn client/agence | 7 | Retour client/agence |
Au magasin | 8 | Commande au magasin |
Rtn dépôt | 11 | Commande retour dépôt |
A vérifier | 20 | Commande à vérifier |
Retour reçu | 30 | Retour reçu |
Rtn définitif | 31 | Retour définitif |
Demande d'enlèvement | 100 | Demande d'enlèvement créée |
Demande d'enlèvement assignée | 101 | Demande d'enlèvement assignée |
En cours d’enlèvement | 102 | Pickup en cours d’enlèvement |
Enlevé | 103 | Pickup enlevé |
Demande d'enlèvement annulé | 104 | Demande d'enlèvement annulé |
Retour assigné | 201 | Retour assigné à un livreur |
Retour en cours d'expédition | 202 | Retour en cours d'expédition |
Retour enlevé | 203 | Retour enlevé par le livreur |
Retour Annulé | 204 | Retour Annulé |
Annuler des commandes
Méthode HTTP : POST
Lien : {{env}}/cancel-orders
NB:
- Seules les commandes qui sont en attente peuvent être annulées.
- Cette méthode accepte au maximum 100 commandes à la fois.
{
"barCodes": [
"1111111111",
"1111111112",
"1111111113",
"1111111114",
]
}
{
"status": 200,
"isError": false,
"message": "Succès",
"result": [
"1111111111",
"1111111112",
]
}
}
- Cette requête renvoie comme réponse la liste des code à barres traités
Demande d’enlèvements
NB: Toutes les requêtes nécessitent que le jeton fourni par nous soit le Berear token pour l'autorisation.
Créer une demande d’enlèvement
Pour créer une demande d’enlèvement en utilisant notre API
Méthode HTTP : POST
Lien : {{env}}/pickup
{
"barCodes": [
"123456789012",
"123456789013",
"123456789014",
"123456789015",
"123456789016",
"123456789017"
]
}
{
"status": 201,
"isError": false,
"message": "Produit ajouté avec succès",
"result": {
"pickup": "683375045049",
"link": "{{env}}/print-pickup?q=eyji"
}
}
Paramètres d'entrées
Paramètre | Type | Requis | Description |
---|---|---|---|
barCodes | Array <string> | Oui | Liste des codes à barre |
Imprimer décharge
Méthode HTTP : POST
Lien : {{env}}/request-print/{pickupId}
Aucun corps
{
"status": 200,
"isError": false,
"message": "Demande d'enlèvement trouvée avec succès",
"result": {
"pickup": "683377360858",
"link": "{{env}}/print-pickup?q=eyji"
}
}
Paramètres d'entrées
Paramètre | Type | Requis | Description |
---|---|---|---|
pickupId | String | Oui | Le numéro de lot de pickup |
Journal des modifications
Découvrez les nouveautés ajoutées, modifiées, corrigées, améliorées ou mises à jour dans les dernières versions.
Version 2.0 (12 Mai, 2023)
Version 2.1 (4 Octobre, 2023)
- Limitation du prix des articles à 999 DT
Version 2.2 (20 Juin, 2024)
- Creation des demandes d’enlèvements
- Impression des décharges des demandes d’enlèvements
Version 2.3 (07 Juillet, 2024)
- Creation multiples des commandes
- Impression multiples des bordeaux
Version 2.4 (30 Juillet, 2024)
- Annulation multiples des commandes