GET/api/v4/social/brands

Daftar merek

Mengembalikan daftar merek sosial di akun Anda dengan paginasi, beserta profil, zona waktu, dan jumlah kanal yang terhubung untuk setiap merek.

Memerlukan kunci API. Lihat Autentikasi untuk format header dan rotasi kunci.

Parameter

Query

NamaTipeWajibDeskripsiDefault
filtersstringopsionalJSON-encoded filter object with two fields. `statuses` (array of strings, **required inside the object**) selects which brand states to return: `ACTIVE` or `ARCHIVED`. `profileName` (string, optional) is a case-insensitive substring match on the brand name. Omit the parameter entirely to return active brands.—
pageintegeropsional1-based page number. Defaults to 1.—
sizeintegeropsionalRows per page. Defaults to 20.—

Respons

200A page of brands plus `pageInfo` for paging.
Response
{  "data": {    "listSocialProfiles": {      "profiles": [        {          "id": "6f2c9a41-7b0e-4d55-9a2f-3c8e1d47b902",          "profileName": "Jenny Home",          "archived": false,          "logo": null,          "profileLogo": null,          "siteUrl": "https://jennyhome.example",          "countryIso": "US",          "bio": "Handmade furniture for real homes.",          "businessIntent": "A family-run home furnishings store selling handmade furniture and textiles.",          "categories": ["Furniture Store", "Home Goods"],          "brandHashtags": ["jennyhome", "handmadefurniture"],          "competitorHashtags": [],          "connectedChannelCount": 3,          "timezone": {            "label": "(GMT-05:00) Eastern Time",            "tzCode": "America/New_York",            "name": "Eastern Standard Time",            "utc": "-05:00"          },          "contentPreferredLanguage": "en"        },        {          "id": "a90f7c22-5db1-4e83-9f40-2b7c6a1e5d33",          "profileName": "Jenny Home Eastside",          "archived": false,          "logo": null,          "profileLogo": null,          "siteUrl": null,          "countryIso": "US",          "bio": null,          "businessIntent": "general",          "categories": [],          "brandHashtags": [],          "competitorHashtags": [],          "connectedChannelCount": 0,          "timezone": {            "label": "(GMT-06:00) Central Time",            "tzCode": "America/Chicago",            "name": "Central Standard Time",            "utc": "-06:00"          },          "contentPreferredLanguage": "en"        }      ],      "pageInfo": {        "total": 11,        "hasNextPage": true,        "totalEngagementPosts": 0,        "totalPublishedPosts": 0      }    }  }}
401Unauthenticated, missing or invalid API key.

Menampilkan merek di akun Anda, satu halaman setiap kali. Setiap baris berisi objek merek yang sama dengan yang dikembalikan GET /social/brands/{brandId} untuk satu merek, sehingga satu daftar biasanya cukup untuk menampilkan pemilih merek tanpa permintaan tambahan.

Kasus penggunaan: pemilih merek di UI Anda sendiri. Panggil sekali saat pengguna membuka layar publikasi Anda dan tampilkan profileName serta logo di setiap baris. Merek dengan connectedChannelCount bernilai 0 belum memiliki akun sosial yang terhubung dan tidak dapat memublikasikan konten; beri penanda pada merek tersebut dan arahkan pengguna ke tautan koneksi. Telusuri halaman menggunakan page dan size selama pageInfo.hasNextPage bernilai true.

Kasus penggunaan: merekonsiliasi catatan Anda. Telusuri setiap halaman tiap malam dan cocokkan id dengan ID merek yang Anda simpan saat pembuatan. Merek yang tidak lagi muncul dalam daftar default telah diarsipkan; sertakan filters={"statuses":["ARCHIVED"]} untuk melihatnya.

Catatan.

  • id adalah UUID biasa yang digunakan sebagai token path brandId di bagian lain Social API, dan sebagai socialProfileId dalam body permintaan.
  • Filter dikirim sebagai satu string yang dikodekan dalam JSON melalui parameter kueri filters, bukan sebagai parameter terpisah. Terapkan pengodean URL pada string tersebut. Jika Anda mengirim filters, parameter tersebut harus memuat statuses; profileName dapat disertakan secara opsional bersamanya.
  • Paginasi berbasis offset (page / size), bukan berbasis cursor seperti pada endpoint Locations dan Reviews. pageInfo.total adalah jumlah total merek yang cocok, bukan jumlah pada halaman ini. pageInfo.totalEngagementPosts dan totalPublishedPosts adalah penghitung postingan yang juga digunakan dalam daftar postingan dan bernilai 0 di sini.
  • connectedChannelCount hanya menghitung koneksi yang aktif; kanal yang koneksinya terputus langsung dikeluarkan dari hitungan. Untuk mendapatkan kanal itu sendiri, panggil GET /social/brands/{brandId}/connections.
  • timezone.tzCode adalah pengenal IANA yang menjadi acuan penentuan waktu setiap jadwal pada merek tersebut; tiga field zona waktu lainnya adalah label tampilan.
  • Tidak ada batas jumlah merek yang perlu dijadikan acuan rekonsiliasi. Jumlah merek tidak dibatasi pada paket API, sehingga panjang daftar ini hanya bersifat informatif. Jumlah yang dibatasi adalah koneksi: baca nilainya dari GET /social/limits. Pengarsipan merek langsung menonaktifkan koneksinya, tetapi slotnya tetap diperhitungkan terhadap batas maxConnections hingga periode penagihan berakhir, sehingga merek yang tidak lagi ada dalam daftar ini masih dapat menahan slot hingga perpanjangan.
Request
curl -X GET 'https://listingsapi.com/api/v4/social/brands' \  -H "Authorization: API $LISTINGSAPI_KEY"