Synupv1
Créer une clé
v1Ressources/Fiches en double

Fiches en double

Détectez, examinez et résolvez les fiches en double dans les annuaires.

Renvoie les fiches en double détectées pour un établissement, regroupées par publisher, avec des comptages par statut.

Obtenir les fiches en double d'un établissement

get/api/v1/listings/duplicates
listings:read
Paramètres de requête
locationIdstringobligatoire
L'établissement à consulter. Obligatoire.
clientIdstringfacultatif
Le client de l'établissement. Nécessaire seulement pour lever une ambiguïté quand votre clé est limitée à des clients spécifiques.
statusstring (potential | flagged | deleted | failed)facultatif
Restreint les résultats à un seul statut : potential, flagged, deleted ou failed. Les comptages sont toujours renvoyés pour chaque statut, quel que soit ce filtre.
Réponse
dataobjectfacultatif
foundbooleanfacultatif
Si l'établissement a été trouvé et était accessible à cette clé.
yourListingobjectfacultatif
Le propre nom, adresse et téléphone de cet établissement, pour comparaison avec chaque ligne en double. Absent quand found vaut false.
namestringfacultatif
Le propre nom commercial de cet établissement.
addressstringfacultatif
La propre adresse de cet établissement.
phonestringfacultatif
Le propre numéro de téléphone de cet établissement.
countsobjectfacultatif
Comptages des fiches en double pour cet établissement, par statut.
potentialnumberfacultatif
Nombre de doublons en attente d'examen.
flaggednumberfacultatif
Nombre de doublons marqués pour suppression.
deletednumberfacultatif
Nombre de doublons supprimés avec succès.
failednumberfacultatif
Nombre de doublons dont la tentative de suppression a échoué.
groupsarray of objectfacultatif
Fiches en double, regroupées par publisher.
publisherIdstringfacultatif
Identifiant de l'annuaire/publisher (son URL de site).
publisherNamestringfacultatif
Nom d'affichage du publisher.
originalUrlstringfacultatif
URL en ligne de la propre fiche réelle de cet établissement sur ce publisher, ou null.
rowsarray of objectfacultatif
Les fiches en double trouvées sur ce publisher.
idstringfacultatif
Identifiant unique de cette ligne de fiche en double.
businessNamestringfacultatif
Nom commercial tel qu'il apparaît sur la fiche en double.
businessNameMatchesbooleanfacultatif
Si le nom commercial du doublon correspond au propre nom de cet établissement.
addressstringfacultatif
Rue, ville et code postal de la fiche en double, joints en une seule chaîne.
addressMatchesbooleanfacultatif
Si l'adresse du doublon correspond à la propre adresse de cet établissement.
phonestringfacultatif
Numéro de téléphone tel qu'il apparaît sur la fiche en double.
phoneMatchesbooleanfacultatif
Si le numéro de téléphone du doublon correspond au propre numéro de téléphone de cet établissement.
matchScorenumberfacultatif
Confiance du modèle, de 0 à 1, qu'il s'agit de la même entreprise que la fiche réelle, ou null si non scoré.
duplicateUrlstringfacultatif
URL en ligne de la fiche en double, ou null.
statusstring (potential | flagged | deleted | failed)facultatif
L'une des valeurs : potential, flagged, deleted, failed.
Erreurs
400Il manque un paramètre requis à la requête, ou elle est invalide.
401Clé API manquante, invalide, expirée ou révoquée.
403La clé n'a pas la permission requise, ou n'est pas autorisée pour ce client/établissement.
404La ressource est introuvable, ou n'appartient pas à votre agence.
429Trop de requêtes. Réessayez après le nombre de secondes indiqué dans l'en-tête Retry-After.
get/api/v1/listings/duplicates
Votre clé API
locationId *
clientId
status
{
  "data": {
    "found": true,
    "yourListing": {
      "name": "Acme Dental — Downtown",
      "address": "123 Main St, Austin, TX 78701",
      "phone": "+15125551234"
    },
    "counts": {
      "potential": 2,
      "flagged": 1,
      "deleted": 0,
      "failed": 0
    },
    "groups": [
      {
        "publisherId": "yelp",
        "publisherName": "Yelp",
        "status": "potential",
        "duplicates": [
          {
            "id": "dup_1",
            "name": "Acme Dental Downtown",
            "address": "123 Main St, Austin, TX",
            "phone": "+15125551234",
            "url": "https://yelp.com/biz/acme-dental-downtown",
            "matchScore": 0.92
          }
        ]
      }
    ]
  }
}
v1Ressources/Fiches en double/getObtenir la synthèse des fiches en double

Renvoie une synthèse agrégée des fiches en double et une file paginée sur l'ensemble des établissements d'un client, ou de l'agence entière quand clientId est omis. Une clé limitée à des clients spécifiques doit toujours passer un clientId — il n'existe pas de valeur par défaut sûre au niveau agence pour cela.

Obtenir la synthèse des fiches en double

get/api/v1/listings/duplicates/rollup
listings:read
Paramètres de requête
clientIdstringfacultatif
Restreint la synthèse à un client. Obligatoire quand votre clé est limitée à des clients spécifiques.
filterstring (potential | flagged | deleted | failed)facultatif
Restreint la file à un seul statut : potential, flagged, deleted ou failed.
bandstring (high | med | low)facultatif
Restreint la file à une seule tranche de confiance : high, med ou low.
publisherSiteIdintegerfacultatif
Restreint la file à un seul publisher, par son site id numérique (voir publisherSites dans la réponse).
locationIdstringfacultatif
Restreint la file à un seul établissement.
tagsstringfacultatif
Liste de tags d'établissement internes séparés par des virgules. Seuls les doublons sur des établissements portant au moins un de ces tags sont inclus.
searchstringfacultatif
Recherche en texte libre sur le nom commercial, l'adresse et le téléphone de la file.
sortstring (confidence | detected | lastSynced)facultatif
Ordre de tri de la file : confidence (score de correspondance le plus élevé en premier), detected (détecté le plus récemment en premier), ou lastSynced (vu le plus récemment en premier). Par défaut confidence.
pageintegerfacultatif
Numéro de page pour la file, à partir de 1. Par défaut 1.
perPageintegerfacultatif
Lignes par page pour la file, de 1 à 100. Par défaut 25.
Réponse
dataobjectfacultatif
summaryobjectfacultatif
Synthèse agrégée des fiches en double sur le périmètre demandé.
potentialTotalnumberfacultatif
Nombre total de doublons potentiels (non encore résolus) dans le périmètre.
locationsAffectednumberfacultatif
Nombre d'établissements distincts avec au moins un doublon potentiel.
bandsobjectfacultatif
Comptages de doublons potentiels ventilés par tranche de confiance.
highnumberfacultatif
Nombre de doublons potentiels avec un score de correspondance de confiance élevée.
mednumberfacultatif
Nombre de doublons potentiels avec un score de correspondance de confiance moyenne.
lownumberfacultatif
Nombre de doublons potentiels avec un score de correspondance de confiance faible ou non scoré.
topPublishersarray of objectfacultatif
Jusqu'à 5 publishers avec le plus de doublons potentiels, les pires contrevenants en premier.
publisherIdstringfacultatif
Identifiant de l'annuaire/publisher (son URL de site).
publisherNamestringfacultatif
Nom d'affichage du publisher.
countnumberfacultatif
Nombre de doublons potentiels sur ce publisher.
publisherSitesarray of objectfacultatif
Chaque publisher avec un doublon visible dans ce périmètre — la liste complète des options, contrairement à topPublishers qui est limitée à 5.
siteIdnumberfacultatif
Site id numérique pour ce publisher, utilisable comme filtre publisherSiteId de la synthèse ou de la résolution.
publisherIdstringfacultatif
Identifiant de l'annuaire/publisher (son URL de site).
publisherNamestringfacultatif
Nom d'affichage du publisher.
queueobjectfacultatif
La liste paginée et filtrable des lignes de doublons individuelles sur les établissements du périmètre.
rowsarray of objectfacultatif
Les lignes de doublons de la page actuelle.
idstringfacultatif
Identifiant unique de cette ligne de fiche en double.
locationIdstringfacultatif
ID de l'établissement auquel appartient ce doublon.
locationNamestringfacultatif
Nom de l'établissement auquel appartient ce doublon.
citystringfacultatif
Ville de l'établissement auquel appartient ce doublon, ou null.
locationStreetstringfacultatif
Adresse de rue de l'établissement auquel appartient ce doublon.
locationStatestringfacultatif
État ou région de l'établissement auquel appartient ce doublon.
locationPostalCodestringfacultatif
Code postal de l'établissement auquel appartient ce doublon.
publisherIdstringfacultatif
Identifiant de l'annuaire/publisher (son URL de site).
publisherNamestringfacultatif
Nom d'affichage du publisher.
businessNamestringfacultatif
Nom commercial tel qu'il apparaît sur la fiche en double.
businessNameMatchesbooleanfacultatif
Si le nom commercial du doublon correspond au propre nom de cet établissement.
addressstringfacultatif
Rue, ville et code postal de la fiche en double, joints en une seule chaîne.
addressMatchesbooleanfacultatif
Si l'adresse du doublon correspond à la propre adresse de cet établissement.
phonestringfacultatif
Numéro de téléphone tel qu'il apparaît sur la fiche en double.
phoneMatchesbooleanfacultatif
Si le numéro de téléphone du doublon correspond au propre numéro de téléphone de cet établissement.
matchScorenumberfacultatif
Confiance du modèle, de 0 à 1, qu'il s'agit de la même entreprise que la fiche réelle, ou null si non scoré.
bandstring (high | med | low)facultatif
Tranche de confiance pour le score de correspondance de cette ligne : high, med ou low.
statusstring (potential | flagged | deleted | failed)facultatif
L'une des valeurs : potential, flagged, deleted, failed.
duplicateUrlstringfacultatif
URL en ligne de la fiche en double, ou null.
originalUrlstringfacultatif
URL en ligne de la propre fiche réelle de cet établissement sur ce publisher, ou null.
detectedAtstringfacultatif
Date de première détection de ce doublon, au format horodatage ISO 8601.
lastSyncedAtstringfacultatif
Date de dernière observation de ce doublon lors d'une analyse, au format horodatage ISO 8601.
yourNamestringfacultatif
Le propre nom commercial de l'établissement propriétaire, pour comparaison.
yourAddressstringfacultatif
La propre adresse de l'établissement propriétaire, pour comparaison.
yourPhonestringfacultatif
Le propre numéro de téléphone de l'établissement propriétaire, pour comparaison.
tagsarray of stringfacultatif
Les tags internes de l'établissement propriétaire.
totalnumberfacultatif
Nombre total de lignes correspondant au filtre actuel, sur toutes les pages.
pagenumberfacultatif
Numéro de page actuel.
perPagenumberfacultatif
Lignes par page.
Erreurs
401Clé API manquante, invalide, expirée ou révoquée.
403La clé n'a pas la permission requise, ou n'est pas autorisée pour ce client/établissement.
429Trop de requêtes. Réessayez après le nombre de secondes indiqué dans l'en-tête Retry-After.
get/api/v1/listings/duplicates/rollup
Votre clé API
clientId
filter
band
publisherSiteId
locationId
tags
search
sort
page
perPage
{
  "data": {
    "summary": {
      "potentialTotal": 14,
      "locationsAffected": 6,
      "bands": {
        "high": 4,
        "med": 7,
        "low": 3
      },
      "topPublishers": [
        {
          "publisherId": "yelp",
          "publisherName": "Yelp",
          "count": 6
        }
      ],
      "publisherSites": [
        {
          "id": "yelp",
          "name": "Yelp"
        }
      ]
    },
    "queue": {
      "rows": [
        {
          "id": "dup_1",
          "locationId": "loc_456",
          "locationName": "Acme Dental — Downtown",
          "publisherId": "yelp",
          "publisherName": "Yelp",
          "name": "Acme Dental Downtown",
          "matchScore": 0.92,
          "status": "potential"
        }
      ],
      "total": 14,
      "page": 1,
      "perPage": 25
    }
  }
}
v1Ressources/Fiches en double/postRésoudre des fiches en double

Marque des fiches en double pour suppression, ou les rejette, soit via une liste explicite de duplicateListingIds, soit via un filtre correspondant à la même forme que la file de synthèse. Le mode filtre s'exécute comme une seule mise à jour groupée restreinte à l'intersection des statuts propres au filtre et des statuts source éligibles de l'action — il ne peut jamais atteindre des lignes hors de ce que ce filtre afficherait. Marquer ne supprime pas la fiche elle-même ; cela met en file la demande de suppression, qu'un job en arrière-plan exécute ensuite auprès du publisher.

Résoudre des fiches en double

post/api/v1/listings/duplicates/resolve
listings:write
Corps de la requête
actionstring (flag | dismiss)obligatoire
flag (demander la suppression auprès du publisher) ou dismiss (marquer comme n'étant pas un doublon).
duplicateListingIdsarray of stringfacultatif
Ids explicites à résoudre, jusqu'à 1000. Exclusif avec filter.
filterobjectfacultatif
Résout chaque ligne éligible correspondant à ce filtre au lieu de nommer explicitement des ids. Une clé limitée à des clients spécifiques doit aussi passer clientId en mode filtre.
filterstring (potential | flagged | deleted | failed)facultatif
Restreint à un seul statut : potential, flagged, deleted ou failed.
bandstring (high | med | low)facultatif
Restreint à une seule tranche de confiance : high, med ou low.
publisherSiteIdintegerfacultatif
Restreint à un seul publisher, par son site id numérique.
locationIdstringfacultatif
Restreint à un seul établissement.
searchstringfacultatif
Recherche en texte libre sur le nom commercial, l'adresse et le téléphone.
clientIdstringfacultatif
Obligatoire quand votre clé est limitée à des clients spécifiques et que vous utilisez le mode filtre (le mode id est auto-limité par id et n'en a pas besoin).
Réponse
dataobjectfacultatif
updatednumberfacultatif
Nombre de fiches en double ayant transité vers le nouveau statut.
skippedarray of stringfacultatif
Ids demandés qui N'ONT PAS transité — introuvables, non détenus par votre agence/client, ou pas dans un statut source éligible. Toujours vide en mode filtre.
Erreurs
400Il manque un paramètre requis à la requête, ou elle est invalide.
401Clé API manquante, invalide, expirée ou révoquée.
403La clé n'a pas la permission requise, ou n'est pas autorisée pour ce client/établissement.
429Trop de requêtes. Réessayez après le nombre de secondes indiqué dans l'en-tête Retry-After.
post/api/v1/listings/duplicates/resolve
Votre clé API
Corps de la requête*
{
  "data": {
    "updated": 3,
    "skipped": []
  }
}