Qualification
Cette API permet de gérer les demandes de signalements dans le processus de qualification sur la plateforme Connect My Zone.
Types de signalement pris en compte :
| Code | Description |
|---|---|
zob | Zone Blanche |
cpo | Absence d'Opérateur(s) |
cps | Mauvais Signal d'Opérateur(s) |
abi | Absence d'Internet |
Liste de toutes les demandes
Cette API permet de récupérer toutes les demandes de signalements.
Endpoint : GET /requests
Headers requis :
Authorization: Bearer <access_token>
Content-Type: application/json
Paramètres de requête (optionnels) :
| Paramètre | Type | Description |
|---|---|---|
report_type | string | Type de signalement |
initiator_phone_number | string | Filtrer par le numéro de téléphone de celui qui a fait le signalement |
request_report_uniq_id | string | Filtrer par l’identifiant unique du signalement |
uniq_id | string | Filtrer par l’identifiant unique de la demande de signalement |
source | string | Filtrer par la source du signalement |
region_id | string | Filtrer par l’identifiant de la région |
department_id | string | Filtrer par l’identifiant du département |
municipality_id | string | Filtrer par l’identifiant de la commune |
region_name | string | Filtrer par l’identifiant de la région |
department_name | string | Filtrer par l’identifiant de la région |
municipality_name | string | Filtrer par l’identifiant de la région |
status | string | Filtrer par le statut du signalement |
operators | string | Filtrer par les opérateurs concernés (liste séparée par des virgules) |
start_date | string | Date de début de la période de recherche |
end_date | string | Date de fin de la période de recherche |
page | integer | Numéro de page pour la pagination |
Requête :
curl -X GET "https://clients-api-services.mazone-test.ansut.ci/api/v1.0/requests" \
-H "Authorization: Bearer 1|abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
-H "Content-Type: application/json"
Réponse succès (200) :
{
"error": false,
"message": "Successfully",
"data": {
"data": [...],
"current_page": 1,
"per_page": 50,
"total": 100
}
}
Demandes en attente
Cette API permet de récupérer toutes les demandes de signalements en attente de traitement.
Endpoint : GET /requests/queues
Headers requis :
Authorization: Bearer <access_token>
Content-Type: application/json
Paramètres de requête (optionnels) :
| Paramètre | Type | Description |
|---|---|---|
report_type | string | Type de signalement |
initiator_phone_number | string | Filtrer par le numéro de téléphone de celui qui a fait le signalement |
request_report_uniq_id | string | Filtrer par l’identifiant unique du signalement |
uniq_id | string | Filtrer par l’identifiant unique de la demande de signalement |
source | string | Filtrer par la source du signalement |
region_id | string | Filtrer par l’identifiant de la région |
department_id | string | Filtrer par l’identifiant du département |
municipality_id | string | Filtrer par l’identifiant de la commune |
region_name | string | Filtrer par l’identifiant de la région |
department_name | string | Filtrer par l’identifiant de la région |
municipality_name | string | Filtrer par l’identifiant de la région |
status | string | Filtrer par le statut du signalement |
operators | string | Filtrer par les opérateurs concernés (liste séparée par des virgules) |
start_date | string | Date de début de la période de recherche |
end_date | string | Date de fin de la période de recherche |
page | integer | Numéro de page pour la pagination |
Requête :
curl -X GET "https://clients-api-services.mazone-test.ansut.ci/api/v1.0/requests/queues" \
-H "Authorization: Bearer 1|abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
-H "Content-Type: application/json"
Réponse succès (200) :
{
"error": false,
"message": "Successfully",
"data": {
"data": [...],
"current_page": 1,
"per_page": 50,
"total": 100
}
}
Prise en charge d'une demande
Cette API permet à un utilisateur du backoffice de prendre en charge une demande de signalement afin de démarrer son traitement.
Lorsqu’un signalement est pris en charge :
- le statut passe de
pendingàin-progress - la date de prise en charge est enregistrée
- l’utilisateur ayant pris en charge la demande est enregistré
- une notification est envoyée à l’usager
- un historique de traitement est généré
Endpoint : POST /requests/{requestReportUniqId}/take
Authentification : Bearer Token
Headers requis :
Authorization: Bearer <access_token>
Content-Type: application/json
Accept: application/json
Paramètres de requête :
| Champ | Type | Requis | Description |
|---|---|---|---|
requestReportUniqId | string | Oui | Identifiant unique de la demande |
Requête :
curl -X POST "https://clients-api-services.mazone-test.ansut.ci/api/v1.0/requests/ZOB69FCAEC983556/take" \
-H "Authorization: Bearer 1|abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
Réponse succès (200) :
{
"error": false,
"message": "Successfully",
"data": {
"id": "ZOB69FCAEC983556"
}
}
Erreur - Signalement introuvable (400) :
{
"error": true,
"statusCode": 400,
"message": "La demande que vous voulez prendre n'existe pas."
}
Erreur - Signalement déjà pris en charge (400) :
{
"error": true,
"statusCode": 400,
"message": "Impossible de prendre cette demande."
}
Comportement détaillé :
- Recherche du signalement via son identifiant unique (uniq_id)
- Vérification que le signalement existe
- Vérification que le signalement possède le statut pending
- Mise à jour du statut vers in-progress
- Enregistrement de la date de prise en charge
- Enregistrement de l’utilisateur ayant pris en charge la demande
- Envoi d’une notification à l’usager
- Génération d’un historique de traitement
Demandes en attente de qualification
Cette API permet de récupérer la liste des demandes de signalements qui ont déjà été prises en charge par un agent du backoffice et qui sont en attente de qualification.
Ces demandes sont actuellement dans le panier de travail de l’agent et doivent être traitées (qualification, validation ou rejet).
Endpoint : GET /requests/task-baskets
Authentification : Bearer Token
Headers requis :
Authorization: Bearer <access_token>
Content-Type: application/json
Accept: application/json
Paramètres de requête (optionnels) :
| Paramètre | Type | Description |
|---|---|---|
report_type | string | Type de signalement |
initiator_phone_number | string | Filtrer par le numéro de téléphone de celui qui a fait le signalement |
request_report_uniq_id | string | Filtrer par l’identifiant unique du signalement |
uniq_id | string | Filtrer par l’identifiant unique de la demande de signalement |
source | string | Filtrer par la source du signalement |
region_id | string | Filtrer par l’identifiant de la région |
department_id | string | Filtrer par l’identifiant du département |
municipality_id | string | Filtrer par l’identifiant de la commune |
region_name | string | Filtrer par l’identifiant de la région |
department_name | string | Filtrer par l’identifiant de la région |
municipality_name | string | Filtrer par l’identifiant de la région |
status | string | Filtrer par le statut du signalement |
operators | string | Filtrer par les opérateurs concernés (liste séparée par des virgules) |
start_date | string | Date de début de la période de recherche |
end_date | string | Date de fin de la période de recherche |
page | integer | Numéro de page pour la pagination |
Requête :
curl -X GET "https://clients-api-services.mazone-test.ansut.ci/api/v1.0/requests/task-baskets" \
-H "Authorization: Bearer 1|abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
-H "Content-Type: application/json"
Réponse succès (200) :
{
"error": false,
"message": "Successfully",
"data": {
"data": [...],
"current_page": 1,
"per_page": 50,
"total": 100
}
}
Approuver une demande de signalement
Cette API permet à un agent du backoffice de valider (approuver) une demande de signalement après analyse.
L’approbation marque la fin du cycle de qualification et déclenche la création ou la mise à jour du signalement final dans le système.
Endpoint : POST /requests/{requestReportUniqId}/approve
Authentification : Bearer Token
Headers requis :
Authorization: Bearer <access_token>
Content-Type: application/json
Accept: application/json
Paramètres de requête :
| Champ | Type | Requis | Description |
|---|---|---|---|
requestReportUniqId | string | Oui | Identifiant unique de la demande |
Body de la requête :
| Champ | Type | Requis | Description |
|---|---|---|---|
request | object | Non | Données complémentaires de traitement (callback/edit) |
comment | string | Non | Commentaire complémentaire de l’agent |
Requête :
curl -X POST "https://clients-api-services.mazone-test.ansut.ci/api/v1.0/requests/ZOB69FCAEC983556/approve" \
-H "Authorization: Bearer 1|abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"comment": "Validation du signalement après analyse"
}'
Réponse succès (200) :
{
"error": false,
"message": "Successfully",
"data": {
"id": "ZOB69FCAEC983556"
}
}
Erreur - Signalement introuvable (400) :
{
"error": true,
"statusCode": 400,
"message": "La demande que vous voulez approuver n'existe pas."
}
Erreur - Signalement déjà pris en charge (400) :
{
"error": true,
"statusCode": 400,
"message": "Vous ne pouvez pas traiter une demande qui n’a pas encore été prise en charge."
}
Demande déjà approuvée (400) :
{
"error": true,
"statusCode": 400,
"message": "La demande est déjà approuvée."
}
Comportement détaillé :
Lors du rejet d’une demande :
- Vérification de l’existence de la demande
- Vérification qu’elle n’est pas déjà approuvée
- Vérification des cas particuliers (rejet + commentaire obligatoire)
- Mise à jour de la demande :
- status = approved
- approved_at
- approved_by
- qualification_state = completed
- Mise à jour ou création du Report final Génération du csp_id
- Synchronisation des infrastructures si coordonnées GPS disponibles
- Création de l’historique du signalement
- Notification envoyée à l’usager
- Déclenchement des événements système : logs
- processing event
Rejeter une demande de signalement
Cette API permet à un agent du backoffice de rejeter une demande de signalement qui a été prise en charge.
Le rejet marque la fin du traitement avec un motif obligatoire.
Endpoint : POST /requests/{requestReportUniqId}/reject
Authentification : Bearer Token
Headers requis :
Authorization: Bearer <access_token>
Content-Type: application/json
Accept: application/json
Paramètres de requête :
| Champ | Type | Requis | Description |
|---|---|---|---|
requestReportUniqId | string | Oui | Identifiant unique de la demande |
Body de la requête :
| Champ | Type | Requis | Description |
|---|---|---|---|
reason | string | Oui | Raison du rejet (valeur de l’enum ReasonMessageEnum) |
comment | string | Oui | Commentaire complémentaire de l’agent |
Requête :
curl -X POST "https://clients-api-services.mazone-test.ansut.ci/api/v1.0/requests/ZOB69FCAEC983556/reject" \
-H "Authorization: Bearer 1|abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"reason": "NO_COVERAGE",
"comment": "Zone non couverte par les opérateurs"
}'
Réponse succès (200) :
{
"error": false,
"message": "Successfully",
"data": {
"id": "ZOB69FCAEC983556"
}
}
Erreur - Signalement introuvable (400) :
{
"error": true,
"statusCode": 400,
"message": "La demande que vous voulez rejeter n'existe pas."
}
Erreur - Signalement déjà pris en charge (400) :
{
"error": true,
"statusCode": 400,
"message": "Vous ne pouvez pas traiter une demande qui n’a pas encore été prise en charge."
}
Demande déjà rejetée (400) :
{
"error": true,
"statusCode": 400,
"message": "La demande est déjà rejetée."
}
Comportement détaillé :
Lors du rejet d’une demande :
- Vérification de l’existence du signalement
- Vérification que le statut n’est pas pending
- Vérification que le statut n’est pas déjà rejected
- Enregistrement de :
- rejected_at
- rejected_by
- Passage du statut à rejected
- Passage de l’état de qualification à completed
- Génération d’une notification à l’usager
- Ajout du motif de rejet formaté
- Enregistrement dans les logs de traitement