Téléphones supplémentaires
Téléphones supplémentaires
Le module phones_extra va au-delà de l'unique numéro de standard renvoyé par une fiche cartographique typique et fait remonter les canaux vocaux supplémentaires qu'une entreprise expose sur son propre site : lignes directes, mobiles, services commerciaux, hotlines support, et fax résiduels.
Objectif
Les sources de découverte publient un numéro canonique par implantation. Les organisations réelles en publient plusieurs : homepage, landing pages, bios d'équipe, mentions légales. phones_extra lit les pages publiques de chaque site rattaché à un POI, extrait tous les jetons de forme téléphonique, les valide via la bibliothèque phonenumbers de Google, les normalise en E.164 et les dédoublonne par rapport au numéro principal déjà connu.
Entrées
Le module opère sur une liste de POI enrichie — généralement issue d'une étape de découverte préalable.
| Champ | Requis | Notes |
|---|---|---|
site_web |
oui | Les POI sans site sont filtrés à la soumission. |
name |
non | Sert au libellé de sortie et à l'audit trail. |
phone |
non | Quand présent, sert de référence pour le dédoublonnage. |
address |
non | Aide la détection de pays sur formats ambigus. |
Les items sans site_web sont silencieusement écartés ; si la liste filtrée est vide, la requête est rejetée avec une erreur de validation.
Sorties
Chaque POI d'entrée est retourné avec jusqu'à trois champs téléphoniques supplémentaires. Une chaîne vide indique que le module a tourné mais n'a rien trouvé pour ce type.
| Colonne | Type | Description |
|---|---|---|
phone_secondary |
string | Ligne fixe additionnelle distincte du numéro principal, E.164. |
mobile |
string | Ligne mobile détectée via le plan de numérotation national, E.164. |
fax |
string | Numéro de fax quand explicitement étiqueté sur la page, E.164. |
Tous les numéros sont validés et normalisés. Ce qui échoue à la validation est écarté plutôt que rendu sous forme d'estimation.
Cycle de vie
Cycle de job standard — voir Cycle de vie des jobs. La progression est reportée en sites et le volume final en numéros.
Pipeline
phones_extra est un module d'enrichissement : il augmente une liste de POI existante, il n'en génère pas.
needs: poi_list
produces: enriched_list
Chaîne typique :
discovery → phones_extra → verify_emails → filter → campaign
Endpoints
POST /api/jobs/phones-extra
Crée un job de téléphones supplémentaires à partir d'une liste de POI.
Corps
| Champ | Type | Requis | Description |
|---|---|---|---|
items |
array | oui | POI à enrichir, chacun portant au moins site_web. |
source_job_id |
string (uuid) | non | ID du job parent quand on enchaîne depuis une exécution. |
Réponse
Retourne l'enveloppe JobPublic standard (id, status, job_type, output_filename, coût quota, timestamps).
Exemple
POST /api/jobs/phones-extra
Content-Type: application/json
{
"source_job_id": "f3c2…",
"items": [
{ "name": "Acme SAS", "site_web": "https://acme.example", "phone": "+33123456789" },
{ "name": "Beta Co", "site_web": "https://beta.example" }
]
}
{
"id": "9a7b…",
"status": "pending",
"job_type": "phones_extra",
"output_filename": "telephones-extra-2-sites.xlsx"
}
Quotas globaux et plafonds par job : voir Limites.
Erreurs
| Condition | Réponse |
|---|---|
Aucun item ne porte de site_web |
400 — Aucun établissement avec site web. |
| Coût estimé au-dessus du quota par job | 400 — quota dépassé, avec dépassement chiffré. |
| Quota de compte épuisé | 400 — échec du contrôle quota avant insertion. |
Corps malformé (items manquant, mauvais types) |
422 — erreur de validation de requête. |
Les erreurs runtime sur des sites individuels n'interrompent pas le job : le POI concerné est enregistré avec des champs téléphoniques extras vides et le worker poursuit.
Et après
- Vérification d'emails — apparier les lignes directes fraîchement trouvées avec des boîtes délivrables.
- Filter — segmenter la liste enrichie par présence de mobile, indicatif pays, ou toute combinaison des nouveaux champs.