İşletme kaydı durumunu kontrol edin, canlı bağlantıları alın
Konumun tüm yayın platformu eşitleme durumlarını, canlı URL'leri, kapsamı ve sesli asistanları kontrol edin; sorgulama yerine webhook bildirimi alın.
Bir konum oluşturulduğunda, planınızdaki her yayın platformuna otomatik olarak bir işletme kaydı gönderilir. Bu kılavuz, her birinin hangi aşamada olduğunu nasıl okuyacağınızı, yayındaki işletme kayıtlarının URL'lerini nasıl alacağınızı ve webhook'lar ayarlandıktan sonra düzenli sorgulamayı nasıl durduracağınızı gösterir.
1. Bir konumun premium işletme kayıtlarını alın
GET /locations/{locationId}/listings/premium, plandaki her premium yayın platformu için bir kayıt döndürür. Bu, sayfalanmış bir liste değil, düz bir dizidir. İlgili /listings/additional yolu, ücretsiz dizinleri aynı yapıda döndürür; listingType sorgu parametresi yoktur.
curl https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/listings/premium \-H "Authorization: API $LISTINGSAPI_KEY"{ "data": { "listingsForLocation": [ { "site": { "name": "Google Maps", "url": "maps.google.com" }, "syncStatus": "REQUIRING_ACTION", "displayStatus": "Connect your account to sync the listing", "actionRequired": true, "listingUrl": null, "syncIssue": null, "lastUpdate": "2026-07-06T18:33:28Z" }, { "site": { "name": "BeLocalFocussed", "url": "belocalfocussed.com" }, "syncStatus": "SYNCED", "displayStatus": "Synced", "actionRequired": false, "listingUrl": "https://belocalfocussed.com/jenny-home-26x0ffkd0e", "syncIssue": null, "lastUpdate": "2026-07-06T18:33:30Z" } ] }}Her satır, bir site değerini makine tarafından okunabilir bir syncStatus ve insan tarafından okunabilir bir displayStatus ile eşleştirir. lastUpdate, satırın en son ne zaman değiştiğini belirtir; bu da ilerlemeyen bir gönderimi tespit etmek için yararlıdır.
2. Her yayın platformunun durumunu okuyun
Koşullu dallanma için kullanılacak alan syncStatus alanıdır. displayStatus, kullanıcıya gösterilecek metindir ve syncIssue, varsa yayın platformunun gerekçesini içerir.
Google Maps ve Facebook, ilgili yayın platformunun hesabı bağlanana kadar REQUIRING_ACTION durumunda kalır: Google Maps için bir Google Business Profile, Facebook için ise bir Facebook Sayfası bağlanmalıdır. Bu, yeni bir konum için beklenen bir durumdur, hata değildir.
Apple Maps bağlantı gerektirmez. Konum sahibi doğrulanmış bir Apple Business kuruluş hesabını bağlamadıysa ListingsAPI, konumu kendi Apple Business Connect hesabı üzerinden gönderir ve Apple, gönderimi yayınlamadan önce doğrular. Apple Business Connect'i bağlayın bölümüne bakın.
3. Yayındaki kayıtların bağlantılarını toplayın
listingUrl yalnızca yayındaki satırlarda ayarlanır. SYNCED (ve COMPLETED) durumlarına göre filtreleyin ve URL'yi site adıyla birlikte saklayın; böylece bir "yayında görüntüle" listesi oluşturabilir veya URL'yi kendi kaydınızla ilişkilendirerek saklayabilirsiniz.
curl -s https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/listings/premium \-H "Authorization: API $LISTINGSAPI_KEY" \| jq '[.data.listingsForLocation[] | select(.listingUrl != null) | {site: .site.name, url: .listingUrl}]'listingUrl değeri null olan bir SYNCED satırıyla karşılaşılabilir: bazı dizinler herkese açık bir sayfa URL'si sunmaz. Durumu esas alın ve bağlantıyı isteğe bağlı olarak değerlendirin.
4. Bir kapsam özeti oluşturun
Satırları syncStatus değerine göre saymak, her konum için tek satırlık bir genel durum göstergesi sağlar: kaç yayın platformunda kaydın yayında olduğunu, kaçında işlemlerin hâlâ sürdüğünü ve kaçında ilerlemenin engellendiğini gösterir. Kontrol panelinde gösterilecek sayı budur.
curl -s https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/listings/premium \-H "Authorization: API $LISTINGSAPI_KEY" \| jq '.data.listingsForLocation | group_by(.syncStatus) | map({status: .[0].syncStatus, count: length})'Bunu birçok konum için çalıştırmak üzere GET /locations sonuçlarını sayfa sayfa alın ve her konum için premium uç noktasını bir kez çağırın. Her çağrı istek hızı limitinizden sayılır; bu nedenle çağrılar arasında zaman bırakın ve 429 yanıtı aldığınızda Retry-After değerine uyun. İşletme kaydı hatalarını bulun ve düzeltin bölümü, bu döngüyü tek bir hesabın tamamını kapsayan bir tarama olarak gösterir.
5. Sesli asistanları kontrol edin
Sesli asistanların (Google Assistant, Alexa, Siri, Cortana, Bixby) daha küçük bir durum kümesine sahip kendi endpoint'i vardır: GET /locations/{locationId}/voice-assistants. Google Assistant, Google bağlantısına bağlıdır; bu nedenle bu bağlantısı olmayan bir konum burada da ilgilenmenizi gerektirir. Siri sonuçları, konumun Apple Maps işletme kaydından gelir.
curl https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/voice-assistants \-H "Authorization: API $LISTINGSAPI_KEY"{ "data": { "voiceAssistantsForLocation": [ { "voiceIdentifier": "GOOGLE_ASSISTANT", "name": "Google Assistant", "syncStatus": "REQUIRING_ACTION", "actionRequired": true, "syncIssue": null, "errors": [] }, { "voiceIdentifier": "SIRI", "name": "Siri", "syncStatus": "IN_PROGRESS", "actionRequired": false, "syncIssue": null, "errors": [] } ] }}Sesli asistanlar için yayındaki kayda ait bir bağlantı yoktur; LIVE son durumdur.
6. Düzenli sorgulama yerine webhook olaylarını alın
/dashboard/webhooks konumunda yapılandırılmış bir webhook URL'niz varsa, bir konum için yapılan yayın platformu gönderimi son duruma her ulaştığında listing.submission olayı tetiklenir. Bu olay, status (success, incomplete veya canceled), site ve başarı durumunda 3. adımda aldığınız URL ile aynı olan live_link bilgisini taşır.
import base64 def handle(payload: dict) -> None: if payload["event"] != "listing.submission": return data = payload["data"] # "TG9jYXRpb246Mjc5Mzgx" -> "Location:279381" global_id = base64.b64decode(data["location_id"]).decode() database_id = int(global_id.split(":")[1]) site = data["site"]["name"] status = payload["status"] if status == "success": live_link = payload.get("live_link") save_live_link(database_id, site, live_link) elif status == "incomplete": flag_for_review(database_id, site, payload.get("error_message"))5 saniye içinde 200 ile yanıt verin ve işlemi daha sonra yapın; yeniden deneme yapılmaz. Alıcının temel yapısı ve imza kontrolü için Webhook'larla olaylara tepki verin bölümüne bakın.
Sonraki adımlar
- İşletme kaydı hatalarını bulun ve düzeltin:
REQUIRING_ACTIONveFAILEDsatırlarındaki sorunları düzeltin. - Google'ı bağlayın ve konumları içe aktarın: Google Maps ve Google Assistant'ın kullandığı Google Business Profile'ı bağlayın.
- Apple Business Connect'i bağlayın: işletme sahibinin doğrulanmış Apple Business hesabı üzerinden Apple Maps'te yayımlayın.
- Yinelenen işletme kayıtlarını bulun ve gizleyin: işletme kaydı sağlığının diğer yarısı.
- Başvuru: Premium işletme kayıtlarını alın, Sesli asistan işletme kayıtlarını alın, Olay başvurusu.