Vérification de l'État du Service
curl --request GET \
--url https://api.oneclickdz.com/v3/ping \
--header 'X-Access-Token: <api-key>'import requests
url = "https://api.oneclickdz.com/v3/ping"
headers = {"X-Access-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Access-Token': '<api-key>'}};
fetch('https://api.oneclickdz.com/v3/ping', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.oneclickdz.com/v3/ping",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Access-Token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.oneclickdz.com/v3/ping"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Access-Token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.oneclickdz.com/v3/ping")
.header("X-Access-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.oneclickdz.com/v3/ping")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Access-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"api": "<string>",
"operators": {
"mobilis": "<string>",
"ooredoo": "<string>",
"djezzy": "<string>",
"mobilisFixedPlans": "<string>"
}
},
"meta": {
"timestamp": "<string>"
}
}Core
Vérification de l'État du Service
Vérifier l’état du service API et la disponibilité des opérateurs
GET
/
v3
/
ping
Vérification de l'État du Service
curl --request GET \
--url https://api.oneclickdz.com/v3/ping \
--header 'X-Access-Token: <api-key>'import requests
url = "https://api.oneclickdz.com/v3/ping"
headers = {"X-Access-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Access-Token': '<api-key>'}};
fetch('https://api.oneclickdz.com/v3/ping', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.oneclickdz.com/v3/ping",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Access-Token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.oneclickdz.com/v3/ping"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Access-Token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.oneclickdz.com/v3/ping")
.header("X-Access-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.oneclickdz.com/v3/ping")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Access-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"api": "<string>",
"operators": {
"mobilis": "<string>",
"ooredoo": "<string>",
"djezzy": "<string>",
"mobilisFixedPlans": "<string>"
}
},
"meta": {
"timestamp": "<string>"
}
}Vue d’Ensemble
L’endpoint de vérification d’état vous permet de contrôler le statut du service API et de vérifier la disponibilité de chaque opérateur mobile.Réponse
boolean
requis
Toujours
true si l’API est opérationnelleobject
requis
Afficher properties
Afficher properties
string
Statut du service :
"ok" ou "error"Exemple de Requête
curl --request GET \
--url https://api.oneclickdz.com/v3/ping
curl --request GET \
--url https://api.oneclickdz.com/v3/ping \
--header 'X-Access-Token: your_api_key_here'
const response = await fetch("https://api.oneclickdz.com/v3/ping");
const data = await response.json();
console.log("API Status:", data.data.api);
console.log("Operators:", data.data.operators);
const response = await fetch("https://api.oneclickdz.com/v3/ping", {
headers: {
'X-Access-Token': 'your_api_key_here'
}
});
const data = await response.json();
console.log("API Status:", data.data.api);
console.log("Operators:", data.data.operators);
import requests
response = requests.get('https://api.oneclickdz.com/v3/ping')
data = response.json()
print
{
"success": true,
"data": {
"api": "ok",
"operators": {
"mobilis": "up",
"ooredoo": "up",
"djezzy": "up",
"mobilisFixedPlans": "up"
}
},
"meta": {
"timestamp": "2025-10-29T00:35:58.557Z"
}
}
Cas d’Utilisation
Surveillance du Service
Surveillez la disponibilité de l’API et le statut des opérateurs pour le suivi de disponibilité
Vérifications Préalables
Vérifiez que le service est opérationnel avant de traiter des transactions
Filtrage des Opérateurs
Masquez les opérateurs indisponibles dans votre interface utilisateur
Tableau de Bord d'État
Construisez un tableau de bord de statut pour votre équipe opérationnelle
Exemple d’Intégration
// Check service health before processing orders
async function canProcessOrders() {
try {
const response = await fetch("https://api.oneclickdz.com/v3/ping");
const data = await response.json();
if (data.data.api !== "ok") {
console.error("API service is down");
return false;
}
return true;
} catch (error) {
console.error("Health check failed:", error);
return false;
}
}
// Check specific operator availability
async function isOperatorAvailable(operator) {
const response = await fetch("https://api.oneclickdz.com/v3/ping");
const data = await response.json();
const operatorMap = {
Mobilis: "mobilis",
Ooredoo: "ooredoo",
Djezzy: "djezzy",
Pixx: "mobilisFixedPlans",
};
const operatorKey = operatorMap[operator];
return data.data.operators[operatorKey] === "up";
}
Bonnes Pratiques
Interroger Périodiquement
Interroger Périodiquement
Vérifiez l’endpoint de santé toutes les 30 à 60 secondes pour maintenir une vue à jour du statut du service.
setInterval(async () => {
const response = await fetch('https://api.oneclickdz.com/v3/ping');
const data = await response.json();
updateServiceStatus(data.data);
}, 30000); // Check every 30 seconds
Mettre en Cache le Statut
Mettre en Cache le Statut
Mettez en cache le statut pendant 30 à 60 secondes pour éviter les requêtes excessives
let cachedStatus = null;
let lastCheck = 0;
async function getServiceStatus() {
const now = Date.now();
if (cachedStatus && (now - lastCheck) < 30000) {
return cachedStatus;
}
const response = await fetch('https://api.oneclickdz.com/v3/ping');
cachedStatus = await response.json();
lastCheck = now;
return cachedStatus;
}
Gérer l'État Dégradé
Gérer l'État Dégradé
Lorsqu’un opérateur est hors service, informez les utilisateurs et suggérez des alternatives
if (data.data.operators.djezzy === 'down') {
showNotification('Djezzy service temporarily unavailable. Try Mobilis or Ooredoo.');
}

