Yardımcı API’ler

Destekleyici API uç noktaları için cURL, Python ve Node örnekleri: desteklenen ülke ve eyaletler, alt kategori kataloğu ve planınızdaki yayın platformları.

Destekleyici uç noktalar, API'nin geri kalanının doğrulama için kullandığı üç referans kataloğudur: hangi ülkelerin ve eyaletlerin desteklendiği, hangi işletme kategorilerinin bulunduğu ve planınızın hangi yayın platformu dizinlerini kapsadığı. Üçü de salt okunurdur, sayfalandırılmamıştır ve tüm kayıtları döndürür; bu nedenle bir Read (okuma) anahtarı yeterlidir ve önbelleğe alma, sayfalandırmadan daha önemlidir.

Bir bakışta uç noktalar

YöntemYolİşleviReferans
GET/countriesDesteklenen tüm ülkeler, eyaletleri ve ISO kodlarıyla birlikte.Desteklenen ülkeleri ve eyaletleri listeleme
GET/sub-categoriesYaklaşık 6.000 kayıttan oluşan işletme kategorisi kataloğunun tamamı.Alt kategorileri listeleme
GET/plan-sitesPlanınıza dahil olan tüm yayın platformu dizinleri.Plandaki siteleri listeleme

Desteklenen ülkeleri ve eyaletleri listeleme

GET /countries

Kataloğun tamamını data.supportedCountries altında döndürür. Her ülke bir ISO kodu, base64 biçiminde bir id, sayısal bir databaseId, öğeleri kendi ISO kodlarına sahip olan bir states dizisi ve üç adres bayrağı içerir: hasCity (şehir zorunludur), stateRequired (eyalet zorunludur ve states ile karşılaştırılarak doğrulanır) ve hasPostalCode (ülkede posta kodları kullanılır). Alt bölümlere ayrılmayan bir ülke, boş bir states dizisi döndürür.

Parametreler

Bu uç nokta parametre almaz. Her zaman tüm kayıtları döndürür.

Countries
curl https://listingsapi.com/api/v4/countries \-H "Authorization: API $LISTINGSAPI_KEY"
JSON
{  "data": {    "supportedCountries": [      {        "databaseId": 13,        "hasCity": true,        "id": "Q291bnRyeToxMw==",        "iso": "AU",        "name": "Australia",        "states": [          { "countryId": 13, "id": "139", "iso": "VIC", "name": "Victoria" },          { "countryId": 13, "id": "142", "iso": "NSW", "name": "New South Wales" }        ]      },      {        "databaseId": 17,        "hasCity": true,        "id": "Q291bnRyeToxNw==",        "iso": "BE",        "name": "Belgium",        "states": []      }    ]  }}

İhtiyacınız olan değerler, iki iso alanındaki değerlerdir. Oluşturma ve güncelleme işlemlerinde ülkenin iso değeri countryIso olarak, eyaletin iso değeri ise stateIso olarak kullanılır. Bir yazma işleminden önce her ikisini de bu listeye göre doğrulamak, sunucu tarafındaki bir 400 hatasını kendi formunuzda açık bir mesaja dönüştürür.

Alt kategorileri listeleme

GET /sub-categories

Yaklaşık 6.000 kategori kaydını data.subcategories altında, sayfalandırılmamış tek bir dizide döndürür. Serbest metin olarak bildiğiniz bir işletme türünü, konum yazma işleminin gerektirdiği sayısal kimliğe dönüştüren arama kaynağıdır.

Parametreler

Yoktur. Her çağrıda kataloğun tamamı döndürülür.

Subcategories
curl https://listingsapi.com/api/v4/sub-categories \-H "Authorization: API $LISTINGSAPI_KEY"
JSON
{  "data": {    "subcategories": [      {        "databaseId": 4589,        "id": "U3ViQ2F0ZWdvcnk6NDU4OQ==",        "key": "3d-printing-service",        "name": "3D printing service",        "primary": true      }    ]  }}

Her kayıt beş alan içerir ve hangisini kullanacağınız, değerin nerede kullanılacağına bağlıdır.

AlanKullanım amacı
databaseIdsubCategoryId olarak ve additionalCategoryIds içinde iletilecek tam sayı.
idAynı kaydın base64 biçimindeki tanımlayıcısı.
keyAdın URL uyumlu kısa biçimi.
nameKullanıcıya gösterilecek etiket.
primaryKategorinin bir konumun birincil alt kategorisi olup olamayacağı.

Bir konum, subCategoryId içinde bir birincil kategori ve additionalCategoryIds içinde en fazla dokuz ek kategori alır.

Plandaki siteleri listeleme

GET /plan-sites

Hesabınızdaki plana dahil olan tüm yayın platformu dizinlerini data.planSites altında döndürür. Sayısal site kimlikleri için esas alınması gereken liste budur ve API'nin diğer bölümlerinde yalnızca burada yer alan kimlikler geçerlidir.

Parametreler

Yoktur. Yanıtın kapsamı, hesabınızın planıyla sınırlıdır.

Plan sites
curl https://listingsapi.com/api/v4/plan-sites \-H "Authorization: API $LISTINGSAPI_KEY"
JSON
{  "data": {    "planSites": [      {        "id": 1,        "name": "Google Maps",        "url": "maps.google.com",        "supportedCountries": ["US", "CA", "IN", "GB", "DE"],        "hideAddressSupportedCountries": ["US", "CA", "AU", "IN", "GB"]      },      {        "id": 184,        "name": "Facebook",        "url": "facebook.com",        "supportedCountries": ["US", "CA", "IN", "GB", "DE"],        "hideAddressSupportedCountries": ["US", "CA", "AU", "IN", "GB"]      }    ]  }}

İki ülke dizisi farklı soruları yanıtlar. supportedCountries, sitenin hangi ülkelerde işletme kaydı kabul ettiğini belirtir; bu nedenle bir yayın platformunu seçenek olarak sunmadan önce konumunuzun countryIso değerine göre filtreleme yapın. hideAddressSupportedCountries, sitenin hangi ülkelerde adres gizleme tercihini uyguladığını belirtir; hizmet bölgesi olan bir işletmenin ihtiyaç duyduğu özellik budur. Her iki dizi de 50 veya daha fazla kod içerebilir; yukarıdaki örnek kısaltılmıştır.

Site kimlikleri sabittir ve bunları bilmek yararlıdır: 1 Google Maps, 184 ise Facebook için kullanılır; bunlar, bağlantı akışlarının çoğunun hedeflediği iki yayın platformudur.

Kendine ait bir endpoint değildir. Yer işlem bağlantıları, Order online (Çevrimiçi sipariş ver), Reserve a table (Masa ayırt) ve Book an appointment (Randevu al) gibi Google düğmeleridir ve platform bunları ayrı bir kaynak yerine konum üzerindeki bir alan olarak yönetir. Bunları oluşturma ve güncelleme sırasında placeActionLinks dizisi aracılığıyla ayarlayabilir ve konum okuma endpoint'lerinin herhangi birinden geri okuyabilirsiniz.

Her öğe bir placeActionType ve bir uri gerektirir, tür başına en fazla bir tercih edilen bağlantı olacak şekilde isteğe bağlı bir isPreferred bayrağı alır ve güncelleme sırasında action için add veya delete değerini kabul eder. Geçerli türler, silme kuralları ve senkronizasyon davranışının tümü Yer işlem bağlantıları sayfasında açıklanmıştır.

Karşılaşacağınız hatalar

Kod veya durumAnlamıÇözüm
401Eksik veya geçersiz anahtar.Authorization: API <YOUR_API_KEY> gönderin.
Retry-After ile birlikte 429Bu kataloglar hesabınızın istek hızı sınırını paylaşır.Sonucu önbelleğe alın. İstek hızı sınırları sayfasına bakın.
Ülkeler için 500Sunucu tarafında bir hata; hatalı bir istek değil.Bekleme süresini artırarak yeniden deneyin; çağrıda düzeltilecek bir şey yoktur.

Bu endpoint'lerin hiçbiri yazma işlemi yapmadığından, burada bir Read anahtarı kullanıldığında hiçbir zaman SY90016 döndürülmez. Tam liste Hata kodları sayfasındadır.

Sonraki adımlar