EN
Copied
Modules

Réseaux sociaux

Module d'enrichissement qui attache les URLs de profils sociaux publics à chaque point d'intérêt portant un site web.

Purpose

Module d'enrichissement : attache les URLs de profils sociaux publics (opérés par l'entité elle-même) à chaque POI portant un site web. Les liens parasites — boutons de partage, annuaires tiers, agrégateurs d'avis — sont écartés. Ne découvre pas d'entités, ne vérifie pas la propriété, n'accède à aucun contenu authentifié.

Inputs

Corps JSON avec deux champs.

Field Type Required Description
items array of objects yes Entre 1 et 10 000 points d'intérêt. Chaque item doit porter un champ site_web. Les items sans site web sont filtrés avant la mise en file.
source_job_id string no Identifiant d'un job amont dont la sortie alimente celui-ci. Sert à chaîner les modules dans un pipeline.

Forme minimale d'un item :

{
  "name": "Studio Atlas",
  "site_web": "https://studio-atlas.example"
}

Toute clé additionnelle sur les items d'entrée est conservée inchangée aux côtés des colonnes sociales.

Outputs

Chaque item d'entrée est retourné avec les mêmes champs d'identification plus une colonne par réseau. Une colonne est laissée vide quand aucun profil n'est trouvé.

Column Type Description
social_facebook string URL canonique de la page Facebook.
social_instagram string URL canonique du profil Instagram.
social_linkedin string URL canonique de la page entreprise ou du profil LinkedIn.
social_twitter string URL canonique du profil X (ex-Twitter).
social_tiktok string URL canonique du profil TikTok.
social_youtube string URL canonique de la chaîne YouTube.

Lifecycle

Cycle de vie standard : voir Jobs & lifecycle.

Pipeline

Property Value
Category enrich
Needs site_web
Produces social_facebook, social_instagram, social_linkedin, social_twitter, social_tiktok, social_youtube
Pipelinable yes
Supports continuous monitoring no

Chaîne typique : scrapsocials → outreach. source_job_id relie le run à son parent.

Endpoints

Création d'un job socials

POST /api/jobs/socials

Le corps de requête correspond à la table Inputs. Réponse : une ressource Job avec identifiant, statut en file, et coût EF estimé.

{
  "items": [
    { "name": "Studio Atlas", "site_web": "https://studio-atlas.example" },
    { "name": "Atelier Nord",  "site_web": "https://atelier-nord.example" }
  ],
  "source_job_id": "b1f2c3d4-..."
}

Une réponse réussie retourne :

{
  "id": "f9e8d7c6-...",
  "job_type": "socials",
  "status": "pending",
  "items_count": 2,
  "ef_cost": 0.0011
}

Lire l'état, suivre la progression, télécharger les résultats

Endpoints job standard sans changement :

Method Path Purpose
GET /api/jobs/{id} Instantané de l'état du job.
GET /api/jobs/{id}/events Flux server-sent events pour les mises à jour de progression.
GET /api/jobs/{id}/results Liste enrichie, JSON ou CSV.

Limits

Quotas globaux : voir /docs/fr/concepts/limits. Plafonds spécifiques au module :

Limit Value
Items par job 1 à 10 000
Champ requis par item site_web

Les items sans site_web sont écartés à la validation. Si aucun item ne reste, le job est rejeté.

Errors

Enveloppe d'erreur HTTP standard.

Status Code Condition
400 validation_error Le payload échoue la validation de schéma (items manquant, plus de 10 000 entrées, JSON malformé).
400 no_eligible_items Aucun item soumis ne porte un site_web exploitable.
400 quota_exceeded Le coût estimé dépasse le plafond du compte. Le corps de réponse porte l'estimation et le plafond.
401 unauthenticated La requête n'a pas de session valide.
403 inactive_account Le compte n'est pas actif.
429 rate_limited Trop de créations de jobs dans une fenêtre courte.

Les échecs par item ne font jamais échouer le job : colonnes vides pour cet item, remontées dans le résumé du job.

What's next