/api/v4/locations/listings/duplicatesDapatkan semua profil bisnis duplikat untuk sebuah akun
Mengembalikan rekap berhalaman di seluruh akun yang mencakup profil bisnis yang berpotensi menjadi duplikat di setiap lokasi dalam akun tersebut.
Parameter
Query
| Nama | Tipe | Wajib | Deskripsi | Default |
|---|---|---|---|---|
| status | string | opsional | Duplicate status to return: `POTENTIAL`, `PROCESSING`, `FIXED`, or `FAILED`. Case-insensitive. | POTENTIAL |
| siteId | integer | opsional | Narrow to a single publisher by site ID. See the plan-sites endpoint for valid IDs. | — |
| tag | string | opsional | Tag to scope the rollup to. Defaults to every location the key can see. | all |
| page | integer | opsional | 1-based page number. | 1 |
| perPage | integer | opsional | Records per page. | — |
Respons
200Paginated rollup of duplicate listing records across the account.
{ "data": { "duplicateListingsRollup": { "pageInfo": { "hasNextPage": true, "hasPreviousPage": false, "totalPages": 34, "totalRecords": 1673 }, "records": [ { "id": "3329229", "name": "Woodbury Train Station", "nameValid": false, "duplicateProcessingState": "POTENTIAL", "liveLink": "http://citysquares.com/b/woodbury-train-station-23598450", "locationId": "73451", "siteName": "City Squares", "siteUrl": "citysquares.com" } ] } }}400An invalid `status` value, e.g. one outside `POTENTIAL` / `PROCESSING` / `FIXED` / `FAILED`.
401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.
Mengembalikan tampilan profil bisnis yang berpotensi menjadi duplikat di seluruh akun dan di setiap direktori platform publikasi, yang direkap agar Anda dapat memilah duplikat secara massal alih-alih melakukan kueri untuk setiap lokasi satu per satu. Struktur pageInfo/records yang ditampilkan di atas telah diverifikasi secara langsung menggunakan akun 12345; akun tersebut saat ini tidak memiliki duplikat yang belum diselesaikan, sehingga satu rekaman tersebut mewakili struktur yang dikembalikan oleh lokasi yang memiliki duplikat.
Kasus penggunaan: penyisiran untuk menekan duplikat setiap malam
Telusuri halaman demi halaman duplikat POTENTIAL untuk seluruh akun dan serahkan setiap id kepada peninjau:
GET /api/v4/locations/listings/duplicates?status=POTENTIAL&page=1Filter berupa parameter kueri datar, bukan JSON. status dan siteId keduanya opsional. Jika keduanya tidak diberikan, status secara default bernilai POTENTIAL dan tag bernilai all, sehingga GET /api/v4/locations/listings/duplicates tanpa parameter mengembalikan duplikat akun yang belum diselesaikan, bukan 400. Telusuri halaman demi halaman menggunakan pageInfo.hasNextPage dan naikkan nilai page hingga nilainya menjadi false; totalRecords dan totalPages memungkinkan Anda menampilkan progres.
Kasus penggunaan: batasi cakupan ke satu segmen katalog Anda
Rekap selalu mencakup setiap lokasi yang dapat diakses oleh kunci tersebut. Untuk meninjau sebagian lokasi, telusuri hasil halaman demi halaman dan kelompokkan berdasarkan locationId pada setiap rekaman, atau panggil endpoint per lokasi untuk lokasi yang Anda perlukan.
Setelah Anda memiliki id untuk ditindaklanjuti, selesaikan melalui Tandai profil bisnis sebagai duplikat atau abaikan hasil positif palsu melalui Tandai profil bisnis sebagai bukan duplikat. Untuk melihat duplikat dari satu lokasi yang dikelompokkan berdasarkan situs, gunakan Dapatkan profil bisnis duplikat untuk suatu lokasi. Ini adalah endpoint daftar berhalaman yang tunduk pada batas laju akun; saat menerima 429, beri jeda sebelum mencoba lagi dengan menggunakan header Retry-After.
curl -X GET 'https://listingsapi.com/api/v4/locations/listings/duplicates' \ -H "Authorization: API $LISTINGSAPI_KEY"