Passer au contenu principal
GET
/
v3
/
internet
/
check-number
Valider un Numéro de Téléphone
curl --request GET \
  --url https://api.oneclickdz.com/v3/internet/check-number \
  --header 'X-Access-Token: <api-key>'

Documentation Index

Fetch the complete documentation index at: https://docs.oneclickdz.com/llms.txt

Use this file to discover all available pages before exploring further.

Vue d’ensemble

Valide les numéros de téléphone pour les services ADSL ou 4G avant la soumission. Permet d’éviter les erreurs et de réduire les demandes de remboursement.
Validez toujours les numéros de téléphone avant de soumettre des demandes de recharge pour minimiser les échecs.

Paramètres de requête

type
string
requis
Type de service : ADSL ou 4G
number
string
requis
Numéro de téléphone à valider - ADSL : 0[0-9]{8} (ex. 036362608) - 4G : 213[0-9]{9} (ex. 213472731602)

Réponse

Numéro ADSL valide

{
  "success": true,
  "data": {
    "ncli": "11022*****",
    "offre": "FTTc-b_10M'",
    "type": "ADSL"
  },
  "meta": {
    "timestamp": "2025-10-29T00:36:48.823Z"
  }
}

Numéro 4G valide

{
  "success": true,
  "data": {
    "ncli": "11034*****",
    "type": "4GLTE"
  },
  "meta": {
    "timestamp": "2025-10-29T00:36:49.847Z"
  }
}

Numéro invalide

{
  "success": false,
  "error": {
    "code": "ERR_PHONE",
    "message": "Invalid phone number for ADSL service",
    "details": {
      "number": "123456",
      "type": "ADSL",
      "reason": "Number does not match required format"
    }
  }
}

Exemples

curl "https://api.oneclickdz.com/v3/internet/check-number?type=ADSL&number=036362608" \
  -H "X-Access-Token: YOUR_API_KEY"

Formats de numéros de téléphone

Format : 0[0-9]{8} Exemples valides : - ✅ 036362608 - ✅ 031417237 - ✅ 021123456 Exemples invalides : - ❌ 36362608 (0 manquant au début) - ❌ 0363626081 (trop long) - ❌ 213636362608 (mauvais format)

Exemple d’intégration

// Flux de validation complet
async function prepareInternetTopup(type, number, value) {
  // Étape 1 : Valider le numéro
  try {
    await validateNumber(type, number);
  } catch (error) {
    return {
      success: false,
      error: "Numéro de téléphone invalide",
      details: error.message,
    };
  }

  // Step 2: Check product availability
  const products = await getProducts(type);
  const product = products.find((p) => p.value === value && p.available);

  if (!product) {
    return {
      success: false,
      error: "Produit non disponible",
    };
  }

  // Étape 3 : Envoyer la recharge
  return await sendInternetTopup({ type, number, value });
}

Pourquoi valider ?

Réduire les erreurs

Détectez les numéros invalides avant la soumission

Meilleure UX

Affichez un retour immédiat aux utilisateurs

Moins de remboursements

Minimisez les transactions échouées et les remboursements

Vérifier le format

Assurez-vous que le numéro correspond au type de service

Bonnes pratiques

Validez le format côté client d’abord, puis confirmez avec l’API :
function validateADSLFormat(number) {
  return /^0[0-9]{8}$/.test(number);
}

function validate4GFormat(number) {
  return /^213[0-9]{9}$/.test(number);
}
Affichez des messages clairs quand la validation échoue : - “Veuillez entrer un numéro ADSL valide (ex. 036362608)” - “Les numéros 4G doivent commencer par 213 (ex. 213665983439)” - “Format du numéro : 9 chiffres commençant par 0”
Mettez en cache les validations réussies pendant une courte période :
const validationCache = new Map();

async function validateWithCache(type, number) {
  const key = `${type}:${number}`;

  if (validationCache.has(key)) {
    return validationCache.get(key);
  }

  const result = await validateNumber(type, number);
  validationCache.set(key, result);

  // Effacer après 5 minutes
  setTimeout(() => validationCache.delete(key), 5 * 60 * 1000);

  return result;
}

Endpoints liés

Liste des produits

Obtenir les cartes disponibles

Envoyer une recharge

Acheter une carte internet