Synupv1
Criar chave
v1Recursos/Duplicate Listings

Duplicate Listings

Detecte, revise e resolva listagens duplicadas em diretórios.

Retorna as listagens duplicadas detectadas para um local, agrupadas por publisher, com contagens por status.

Obter listagens duplicadas de um local

get/api/v1/listings/duplicates
listings:read
Parâmetros de consulta
locationIdstringobrigatório
O local a ser consultado. Obrigatório.
clientIdstringopcional
O cliente do local. Necessário apenas para desambiguar quando sua chave está limitada a clientes específicos.
statusstring (potential | flagged | deleted | failed)opcional
Restringe os resultados a um status: potential, flagged, deleted ou failed. As contagens são sempre retornadas para todo status, independentemente deste filtro.
Resposta
dataobjectopcional
foundbooleanopcional
Se o local foi encontrado e estava acessível para esta chave.
yourListingobjectopcional
O próprio nome, endereço e telefone deste local, para comparação com cada linha duplicada. Ausente quando found é false.
namestringopcional
O próprio nome comercial deste local.
addressstringopcional
O próprio endereço deste local.
phonestringopcional
O próprio telefone deste local.
countsobjectopcional
Contagens de listagens duplicadas para este local, por status.
potentialnumberopcional
Número de duplicatas aguardando revisão.
flaggednumberopcional
Número de duplicatas marcadas para remoção.
deletednumberopcional
Número de duplicatas removidas com sucesso.
failednumberopcional
Número de duplicatas cuja tentativa de remoção falhou.
groupsarray of objectopcional
Listagens duplicadas, agrupadas por publisher.
publisherIdstringopcional
Identificador do diretório/publisher (sua URL de site).
publisherNamestringopcional
Nome de exibição do publisher.
originalUrlstringopcional
URL ativa da própria listagem real deste local neste publisher, ou null.
rowsarray of objectopcional
As listagens duplicadas encontradas neste publisher.
idstringopcional
Identificador único desta linha de listagem duplicada.
businessNamestringopcional
Nome do negócio como aparece na listagem duplicada.
businessNameMatchesbooleanopcional
Se o nome do negócio da duplicata corresponde ao próprio nome deste local.
addressstringopcional
Rua, cidade e código postal da listagem duplicada, unidos em uma única string.
addressMatchesbooleanopcional
Se o endereço da duplicata corresponde ao próprio endereço deste local.
phonestringopcional
Número de telefone como aparece na listagem duplicada.
phoneMatchesbooleanopcional
Se o telefone da duplicata corresponde ao próprio telefone deste local.
matchScorenumberopcional
Confiança do modelo, 0–1, de que este é o mesmo negócio que a listagem real, ou null se não pontuado.
duplicateUrlstringopcional
URL ativa da listagem duplicada, ou null.
statusstring (potential | flagged | deleted | failed)opcional
Um de: potential, flagged, deleted, failed.
Erros
400Falta um parâmetro obrigatório na solicitação, ou ela é inválida de outra forma.
401Chave de API ausente, inválida, expirada ou revogada.
403A chave não tem a permissão exigida, ou não está autorizada para este cliente/local.
404O recurso não foi encontrado, ou não pertence à sua agência.
429Muitas solicitações. Tente novamente após o número de segundos indicado no cabeçalho Retry-After.
get/api/v1/listings/duplicates
Sua chave de 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
          }
        ]
      }
    ]
  }
}
v1Recursos/Duplicate Listings/getObter o resumo de listagens duplicadas

Retorna um resumo agregado de listagens duplicadas e uma fila paginada em todos os locais de um cliente, ou de toda a agência quando clientId é omitido. Uma chave restrita a clientes específicos deve sempre passar um clientId — não há um padrão seguro para toda a agência.

Obter o resumo de listagens duplicadas

get/api/v1/listings/duplicates/rollup
listings:read
Parâmetros de consulta
clientIdstringopcional
Restringe o resumo a um cliente. Obrigatório quando sua chave está limitada a clientes específicos.
filterstring (potential | flagged | deleted | failed)opcional
Restringe a fila a um status: potential, flagged, deleted ou failed.
bandstring (high | med | low)opcional
Restringe a fila a uma faixa de confiança: high, med ou low.
publisherSiteIdintegeropcional
Restringe a fila a um publisher, pelo seu site id numérico (veja publisherSites na resposta).
locationIdstringopcional
Restringe a fila a um local.
tagsstringopcional
Lista de tags internas de local separadas por vírgula. Somente duplicatas em locais com pelo menos uma dessas tags são incluídas.
searchstringopcional
Busca de texto livre no nome do negócio, endereço e telefone da fila.
sortstring (confidence | detected | lastSynced)opcional
Ordem de classificação da fila: confidence (maior pontuação de correspondência primeiro), detected (detectadas mais recentemente primeiro) ou lastSynced (vistas mais recentemente primeiro). O padrão é confidence.
pageintegeropcional
Número da página para a fila, começando em 1. O padrão é 1.
perPageintegeropcional
Linhas por página para a fila, 1–100. O padrão é 25.
Resposta
dataobjectopcional
summaryobjectopcional
Resumo agregado de listagens duplicadas no escopo solicitado.
potentialTotalnumberopcional
Número total de duplicatas potenciais (ainda não resolvidas) no escopo.
locationsAffectednumberopcional
Número de locais distintos com pelo menos uma duplicata potencial.
bandsobjectopcional
Contagens de duplicatas potenciais detalhadas por faixa de confiança.
highnumberopcional
Contagem de duplicatas potenciais com pontuação de correspondência de alta confiança.
mednumberopcional
Contagem de duplicatas potenciais com pontuação de correspondência de confiança média.
lownumberopcional
Contagem de duplicatas potenciais com pontuação de correspondência baixa ou não pontuada.
topPublishersarray of objectopcional
Até 5 publishers com mais duplicatas potenciais, os piores infratores primeiro.
publisherIdstringopcional
Identificador do diretório/publisher (sua URL de site).
publisherNamestringopcional
Nome de exibição do publisher.
countnumberopcional
Número de duplicatas potenciais neste publisher.
publisherSitesarray of objectopcional
Todo publisher com uma duplicata visível neste escopo — a lista completa de opções, diferente de topPublishers, que é limitada a 5.
siteIdnumberopcional
Site id numérico deste publisher, utilizável como filtro publisherSiteId do resumo ou da resolução.
publisherIdstringopcional
Identificador do diretório/publisher (sua URL de site).
publisherNamestringopcional
Nome de exibição do publisher.
queueobjectopcional
A lista paginada e filtrável de linhas de duplicatas individuais nos locais do escopo.
rowsarray of objectopcional
As linhas de duplicatas na página atual.
idstringopcional
Identificador único desta linha de listagem duplicada.
locationIdstringopcional
ID do local ao qual esta duplicata pertence.
locationNamestringopcional
Nome do local ao qual esta duplicata pertence.
citystringopcional
Cidade do local ao qual esta duplicata pertence, ou null.
locationStreetstringopcional
Endereço do local ao qual esta duplicata pertence.
locationStatestringopcional
Estado ou região do local ao qual esta duplicata pertence.
locationPostalCodestringopcional
Código postal do local ao qual esta duplicata pertence.
publisherIdstringopcional
Identificador do diretório/publisher (sua URL de site).
publisherNamestringopcional
Nome de exibição do publisher.
businessNamestringopcional
Nome do negócio como aparece na listagem duplicada.
businessNameMatchesbooleanopcional
Se o nome do negócio da duplicata corresponde ao próprio nome deste local.
addressstringopcional
Rua, cidade e código postal da listagem duplicada, unidos em uma única string.
addressMatchesbooleanopcional
Se o endereço da duplicata corresponde ao próprio endereço deste local.
phonestringopcional
Número de telefone como aparece na listagem duplicada.
phoneMatchesbooleanopcional
Se o telefone da duplicata corresponde ao próprio telefone deste local.
matchScorenumberopcional
Confiança do modelo, 0–1, de que este é o mesmo negócio que a listagem real, ou null se não pontuado.
bandstring (high | med | low)opcional
Faixa de confiança para a pontuação de correspondência desta linha: high, med ou low.
statusstring (potential | flagged | deleted | failed)opcional
Um de: potential, flagged, deleted, failed.
duplicateUrlstringopcional
URL ativa da listagem duplicada, ou null.
originalUrlstringopcional
URL ativa da própria listagem real deste local neste publisher, ou null.
detectedAtstringopcional
Quando esta duplicata foi detectada pela primeira vez, como timestamp ISO 8601.
lastSyncedAtstringopcional
Quando esta duplicata foi vista por último durante uma varredura, como timestamp ISO 8601.
yourNamestringopcional
O próprio nome comercial do local proprietário, para comparação.
yourAddressstringopcional
O próprio endereço do local proprietário, para comparação.
yourPhonestringopcional
O próprio telefone do local proprietário, para comparação.
tagsarray of stringopcional
As tags internas do local proprietário.
totalnumberopcional
Número total de linhas correspondentes ao filtro atual, em todas as páginas.
pagenumberopcional
Número da página atual.
perPagenumberopcional
Linhas por página.
Erros
401Chave de API ausente, inválida, expirada ou revogada.
403A chave não tem a permissão exigida, ou não está autorizada para este cliente/local.
429Muitas solicitações. Tente novamente após o número de segundos indicado no cabeçalho Retry-After.
get/api/v1/listings/duplicates/rollup
Sua chave de 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
    }
  }
}
v1Recursos/Duplicate Listings/postResolver listagens duplicadas

Marca listagens duplicadas para remoção, ou as descarta, seja por uma lista explícita de duplicateListingIds ou por um filtro com o mesmo formato da fila do resumo. O modo de filtro é executado como uma única atualização em lote restrita à intersecção dos próprios status do filtro e dos status de origem elegíveis da ação — ele nunca pode alcançar linhas fora do que esse filtro mostraria. Marcar não remove a listagem em si; enfileira o pedido de remoção, que um job em segundo plano executa junto ao publisher.

Resolver listagens duplicadas

post/api/v1/listings/duplicates/resolve
listings:write
Corpo da solicitação
actionstring (flag | dismiss)obrigatório
flag (solicitar remoção do publisher) ou dismiss (marcar como não sendo uma duplicata).
duplicateListingIdsarray of stringopcional
IDs explícitos a resolver, até 1000. Mutuamente exclusivo com filter.
filterobjectopcional
Resolve toda linha elegível que corresponda a este filtro em vez de nomear ids explicitamente. Uma chave limitada a clientes específicos também deve passar clientId ao usar o modo de filtro.
filterstring (potential | flagged | deleted | failed)opcional
Restringe a um status: potential, flagged, deleted ou failed.
bandstring (high | med | low)opcional
Restringe a uma faixa de confiança: high, med ou low.
publisherSiteIdintegeropcional
Restringe a um publisher, pelo seu site id numérico.
locationIdstringopcional
Restringe a um local.
searchstringopcional
Busca de texto livre no nome do negócio, endereço e telefone.
clientIdstringopcional
Obrigatório quando sua chave está limitada a clientes específicos e você está usando o modo de filtro (o modo por id é autolimitado por id e não precisa disso).
Resposta
dataobjectopcional
updatednumberopcional
Número de listagens duplicadas que transicionaram para o novo status.
skippedarray of stringopcional
IDs solicitados que NÃO transicionaram — não encontrados, não pertencentes à sua agência/cliente, ou não em um status de origem elegível. Sempre vazio no modo de filtro.
Erros
400Falta um parâmetro obrigatório na solicitação, ou ela é inválida de outra forma.
401Chave de API ausente, inválida, expirada ou revogada.
403A chave não tem a permissão exigida, ou não está autorizada para este cliente/local.
429Muitas solicitações. Tente novamente após o número de segundos indicado no cabeçalho Retry-After.
post/api/v1/listings/duplicates/resolve
Sua chave de API
Corpo da solicitação*
{
  "data": {
    "updated": 3,
    "skipped": []
  }
}