API Documentation: Parcel Management
Find Your Token
To authenticate your API requests, you'll need a valid Bearer token. Here's how you can find it:
1. Log in to your account on the platform. : https://admin.elog.ma/login
2. Navigate to the Api documentation page. : https://admin.elog.ma/livreur-api
3. Look for the section labeled "API Token" or "Authentication."
4. Copy the token provided in that section.
Below is a screenshot that highlights where to find the token:
Change Parcel Status
This API allows authorized users to change the status of a parcel. It is a POST request that requires a valid Bearer token and expects data in JSON format.
Endpoint
URL: https://livreur-api.elog.ma/change-status
Method: POST
Headers
Content-Type: application/jsonAuthorization: Bearer {token}
Request Body
Required Parameters:
- parcel_code: (string) The unique code of the parcel.
- status_code: (string) The new status code for the parcel.
Optional Parameters:
- status_comment: (string) A comment or note regarding the status change.
- status_date: (timestamp) The date and time of the status change (UNIX timestamp).
Example Request
{
"parcel_code": "KDS082457334PG",
"status_code": "CANCELED",
"status_comment": "Client canceled the order",
"status_date": ""
}
Response
Success Response:
- status:
success - code:
200 - message: A message confirming the successful status change.
- data:
null - errors:
null
Example Success Response:
{
"status": "success",
"code": 200,
"message": "le statut a changé avec succès",
"data": null,
"errors": null
}
Error Responses:
- Invalid Request Method
Status:error
Code:405
Message:"Méthode de requête non autorisée. Seules les requêtes POST sont autorisées." - Invalid Content-Type
Status:error
Code:400
Message:"Type de contenu invalide (Content-Type). Le type de contenu doit être application/json." - Unauthorized Access
Status:error
Code:403
Message:"Unauthorized" - Parcel Not Found
Status:error
Code:400
Message:"Colis non trouvé" - Parcel Not Assigned to Delivery Person
Status:error
Code:403
Message:"Ce colis n'est pas attribué à ce livreur. Vous ne pouvez pas le modifier." - Validation Error
Status:error
Code:400
Message:"Données de requête invalides."
Errors:An array of validation errors indicating which fields are incorrect.
Example Error Response:
{
"status": "error",
"code": 400,
"message": "Colis non trouvé",
"data": null,
"errors": null
}
Fetch Parcel Status
This API allows authorized users to fetch the current status of a parcel. It is a POST request that requires a valid Bearer token.
Endpoint
URL: https://livreur-api.elog.ma/fetch-status
Method: POST
Headers
Content-Type: application/jsonAuthorization: Bearer {token}
Example Request
https://livreur-api.elog.ma/fetch-status
Response
Success Response:
- status:
success - code:
200 - message: A message confirming the successful retrieval of the parcel status.
- data: An object containing the parcel status details.
- errors:
null
Example Success Response:
{
"status": "success",
"code": 200,
"message": "Statuts récupérés avec succès.",
"data": {
"status": [
{
"statut_code": "DELIVERED",
"statut_name": "Livré",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "POSTPONED",
"statut_name": "Reporté",
"status_require_comment": false,
"status_require_date": true
},
{
"statut_code": "NOANSWER",
"statut_name": "Pas de réponse + SMS",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "UNREACHABLE",
"statut_name": "Injoignable",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "OUT_OF_AREA",
"statut_name": "Hors-zone",
"status_require_comment": true,
"status_require_date": false
},
{
"statut_code": "CANCELED",
"statut_name": "Annulé",
"status_require_comment": true,
"status_require_date": false
},
{
"statut_code": "REFUSE",
"statut_name": "Refusé",
"status_require_comment": true,
"status_require_date": false
},
{
"statut_code": "ERR",
"statut_name": "Numero_Erroné ",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "DEUX",
"statut_name": "Deuxième Appel Pas Réponse",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "TROIS",
"statut_name": "Troisième Appel Pas Réponse",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "PROGRAMMER",
"statut_name": "Programmé",
"status_require_comment": false,
"status_require_date": true
},
{
"statut_code": "EN_VOYAGE",
"statut_name": "En Voyage",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "WAIT_RELANCE",
"statut_name": "Attende de relancer",
"status_require_comment": false,
"status_require_date": false
},
{
"statut_code": "BV",
"statut_name": "Boite Vocal",
"status_require_comment": false,
"status_require_date": false
}
]
},
"errors": null
}
Error Responses:
- Unauthorized Access
Status:error
Code:403
Message:"Unauthorized"
Example Error Response:
{
"status": "error",
"code": 403,
"message": "Unauthorized Access",
"data": null,
"errors": null
}