Länder, Bundesstaaten und Kategorien nachschlagen
Prüfen Sie vor der Standorterstellung unterstützte Länder, Bundesstaatencodes und Plattformen Ihres Tarifs und ermitteln Sie die numerische Kategorie-ID.
Zum Erstellen eines Standorts sind drei Werte erforderlich, die aus der API stammen müssen: von der API akzeptierte Werte für countryIso und stateIso, ein numerischer Wert für subCategoryId und, wenn Sie die Plattformen einschränken möchten, die Website-IDs in Ihrem Tarif. Drei Katalogendpunkte liefern diese Werte. Alle drei geben ein einfaches Array ohne Paginierung zurück.
1. Länder und Bundesstaatencodes auflisten
GET /countries gibt jedes unterstützte Land mit seinem ISO-Code, einem hasCity-Flag und einem states-Array zurück. Die iso-Werte werden beim Erstellen und Aktualisieren für countryIso und stateIso verwendet. Das Python SDK stellt dies als client.countries() und das Node SDK als client.fetchCountries() bereit.
curl https://listingsapi.com/api/v4/countries \-H "Authorization: API $LISTINGSAPI_KEY"{ "data": { "supportedCountries": [ { "databaseId": 13, "iso": "AU", "name": "Australia", "hasCity": true, "states": [ { "id": "139", "iso": "VIC", "name": "Victoria" }, { "id": "142", "iso": "NSW", "name": "New South Wales" } ] }, { "databaseId": 17, "iso": "BE", "name": "Belgium", "hasCity": true, "states": [] } ] }}hasCity: true bedeutet, dass city beim Erstellen erforderlich ist; bei false wird eine von Ihnen übermittelte Stadt verworfen. stateRequired: true bedeutet, dass stateIso erforderlich ist und einem der states-Werte des Landes entsprechen muss; bei false lassen Sie diesen Wert weg. hasPostalCode: true bedeutet, dass das Land Postleitzahlen verwendet. Senden Sie daher postalCode zusammen mit der Adresse. Der Länderendpunkt erläutert jedes Flag.
2. Eine Kategorie-ID ermitteln
GET /sub-categories gibt den vollständigen Kategorienkatalog zurück. Der Wert, den Sie als subCategoryId senden, ist databaseId, also die Ganzzahl, und nicht der Base64-Wert id. Für Restaurants ist dies beispielsweise 1432. Filtern Sie die Liste in Ihrem eigenen Code nach Namen; es gibt keinen serverseitigen Suchparameter.
curl https://listingsapi.com/api/v4/sub-categories \-H "Authorization: API $LISTINGSAPI_KEY" \| jq '.data.subcategories[] | select(.name | test("restaurant"; "i")) | {databaseId, name, primary}'{ "data": { "subcategories": [ { "databaseId": 1432, "id": "U3ViQ2F0ZWdvcnk6MTQzMg==", "key": "restaurants", "name": "Restaurants", "primary": true } ] }}3. Prüfen, welche Plattformen Ihr Tarif abdeckt
GET /plan-sites listet jede Plattform in Ihrem Tarif mit einem numerischen id, einem url, den akzeptierten Ländern und den Ländern auf, in denen sie hideAddress berücksichtigt. Diese IDs sind die einzigen gültigen Werte für enabledSiteIds beim Erstellen und submissionDisabledSiteIds beim Aktualisieren. Filtern Sie nach dem Land des Standorts, damit Sie nur Plattformen anbieten, die den Standort akzeptieren.
curl https://listingsapi.com/api/v4/plan-sites \-H "Authorization: API $LISTINGSAPI_KEY" \| jq '.data.planSites[] | select(.supportedCountries | index("US")) | {id, name, url}'{ "data": { "planSites": [ { "id": 1, "name": "Google Maps", "url": "maps.google.com", "supportedCountries": ["US", "CA", "IN", "GB", "DE"], "hideAddressSupportedCountries": ["US", "CA", "AU", "IN", "GB"] }, { "id": 2, "name": "Yelp", "url": "yelp.com", "supportedCountries": ["US", "CA", "GB", "DE", "FR"], "hideAddressSupportedCountries": ["US", "CA", "AU", "GB"] } ] }}Beide Länder-Arrays sind hier gekürzt; die tatsächliche Antwort kann 50 oder mehr Codes pro Website enthalten. Prüfen Sie bei einem Unternehmen mit Einzugsgebiet auch hideAddressSupportedCountries, da eine Plattform, die das Land akzeptiert, einen Eintrag ohne Straßenadresse dennoch ablehnen kann.
4. Diese Nachschlagedaten zwischenspeichern
Alle drei Kataloge ändern sich selten und keiner verwendet Paginierung. Rufen Sie daher jeden Katalog einmal beim Start ab, speichern Sie ihn im Arbeitsspeicher oder in einer kleinen Tabelle und aktualisieren Sie ihn nach einem Zeitplan. Wenn Sie die Kataloge bei jedem Erstellen direkt abrufen, verbrauchen Sie Ihr Ratenlimit, ohne neue Daten zu erhalten; im Launch-Tarif sind das 3 Ihrer 10 Anfragen pro Minute.
Erstellen Sie für Unterkategorien eine Zuordnung von name in Kleinbuchstaben zu databaseId und für Länder eine Zuordnung von countryIso zu states. Validieren Sie die Adresse anhand der zwischengespeicherten Daten, bevor Sie den Aufruf zum Erstellen ausführen, damit ein nicht unterstützter Wert für countryIso (SY10036) oder ein fehlender Wert für city (SY10126) in Ihrer Anwendung erkannt wird, bevor die Anfrage gesendet wird.
Nächste Schritte
- Standort hinzufügen: Verwenden Sie die
subCategoryId,countryIsound Site-IDs, die Sie gerade nachgeschlagen haben. - Standort aktualisieren: Ändern Sie Kategorien oder schließen Sie Plattformen mit
submissionDisabledSiteIdsaus. - Unterstützte Länder und Bundesstaaten auflisten, Unterkategorien auflisten und Sites des Tarifs auflisten: die Referenzseiten.