Search

Operations

Get Search Address

Adress Geocodierung

Gilt für: S0-und S1-Tarife.

In vielen Fällen kann der gesamte Suchdienst zu viel sein, z.b. Wenn Sie nur an herkömmlicher Geocodierung interessiert sind. Auf die Suche kann auch nur für Adresssuche zugegriffen werden. Die Geocodierung wird durchgeführt, indem auf den Geocode-Endpunkt nur die betreffende Adresse oder partielle Adresse geklickt wird. Der geocodierungssuchindex wird für alle Daten, die oberhalb der Straße auf der Straße liegen, abgefragt. POIs wird nicht zurückgegeben. Beachten Sie, dass der geoprogrammierer sehr tolerant gegenüber Tippfehler und unvollständigen Adressen ist. Außerdem wird alles von der exakten Straße, der Straße oder den Schnittstellen sowie von Regionen höherer Ebene, wie z. b. Stadtzentren, Bezirken, Bundesstaaten usw., behandelt.

Get Search Address Reverse

Umkehren von Geocode zu einer Adresse

Gilt für: S0-und S1-Tarife.

Es kann vorkommen, dass Sie eine Koordinate (z. b. 37,786505,-122,3862) in eine Menschen verständliche Straße übersetzen müssen. In den meisten Fällen wird dies bei der Nachverfolgung von Anwendungen benötigt, bei denen Sie einen GPS-Feed vom Gerät oder Asset erhalten und wissen möchten, an welcher Adresse sich die Koordinate befindet. Dieser Endpunkt gibt Adressinformationen für eine bestimmte Koordinate zurück.

Get Search Address Reverse Cross Street

Umkehren von Geocode zu einer Kreuzstraße

Gilt für: S0-und S1-Tarife.

Es kann vorkommen, dass Sie eine Koordinate (z. b. 37,786505,-122,3862) in eine Menschen verständliche Kreuzstraße übersetzen müssen. In den meisten Fällen wird dies bei der Nachverfolgung von Anwendungen benötigt, bei denen Sie einen GPS-Feed vom Gerät oder Asset erhalten und wissen möchten, an welcher Adresse sich die Koordinate befindet. Dieser Endpunkt gibt Querstraßen Informationen für eine bestimmte Koordinate zurück.

Get Search Address Structured

Strukturierte Adress Geocodierung

Gilt für: S0-und S1-Tarife.

Der Zugriff auf Azure Address Geocoding ist auch nur für die strukturierte Adresssuche möglich. Der geocodierungssuchindex wird für alle Daten, die oberhalb der Straße auf der Straße liegen, abgefragt. POIs wird nicht zurückgegeben. Beachten Sie, dass der geoprogrammierer sehr tolerant gegenüber Tippfehler und unvollständigen Adressen ist. Außerdem wird alles von der exakten Straße, der Straße oder den Schnittstellen sowie von Regionen höherer Ebene, wie z. b. Stadtzentren, Bezirken, Bundesstaaten usw., behandelt.

Get Search Fuzzy

Freie Formular Suche

Gilt für: S0-und S1-Tarife.

Die standardmäßige Standard-API ist die freie Formular Suche, die den größten Teil der Eingaben behandelt, die eine beliebige Kombination aus address-oder POI-Token verarbeiten Diese Such-API ist die kanonische "einzeilige Suche". Die API für die freie Formular Suche ist eine nahtlose Kombination aus POI-Suche und Geocodierung. Die API kann auch mit einer kontextabhängigen Position (Breitengrad-Längengrad-Paar) Pair) oder vollständig durch eine Koordinate und einen RADIUS eingeschränkt, oder es kann allgemeiner ausgeführt werden, ohne dass ein beliebiger Endpunkt für den Anker vorhanden ist.

Wir empfehlen Ihnen dringend, den "countryset"-Parameter zu verwenden, um nur die Länder anzugeben, für die Ihre Anwendung eine Abdeckung benötigt, da das Standardverhalten darin besteht, die gesamte Welt zu durchsuchen und potenziell unnötige Ergebnisse zurückzugeben.

Beispiel: countrySet = US, Fr

Eine vollständige Liste aller unterstützten Länder finden Sie in der Such Abdeckung .

Die meisten Such Abfragen werden standardmäßig auf maxFuzzyLevel = 2 eingestellt, um die Leistung zu steigern und ungewöhnliche Ergebnisse zu verringern. Diese neue Standardeinstellung kann je nach Anforderung überschrieben werden, indem Sie die Abfrage param maxFuzzyLevel = 3 oder 4 übergibt.

Get Search Nearby

Suche in der Nähe

Gilt für: S0-und S1-Tarife.

Wenn Sie einen Anwendungsfall haben, um nur die POI-Ergebnisse für einen bestimmten Speicherort abzurufen, ist die Suchmethode in der Nähe möglicherweise die richtige Wahl. Dieser Endpunkt liefert nur POI-Ergebnisse und übernimmt keinen Suchabfrageparameter.

Get Search POI

POI nach Name erhalten

Gilt für: S0-und S1-Tarife.

Mithilfe der Such Punkte (Points of Interest, POI) können Sie die POI-Ergebnisse nach Namen anfordern. Die Suche unterstützt zusätzliche Abfrage Parameter, wie z. b. Sprache und Filter Ergebnisse nach Interessenbereich, gesteuert nach Land oder Begrenzungs Rahmen. Der Endpunkt gibt nur die in der Abfrage Zeichenfolge passenden POI-Ergebnisse zurück Die Antwort enthält die POI-Details wie Adresse, Koordinaten Speicherort und Kategorie.

Get Search POI Category

POI nach Kategorie erhalten

Gilt für: S0-und S1-Tarife.

Die Such Punkte (Points of Interest, POI) ermöglichen es Ihnen, die POI-Ergebnisse aus der angegebenen Kategorie anzufordern. Search ermöglicht die Abfrage von POIs von einer Kategorie zu einem Zeitpunkt. Der Endpunkt gibt nur die POI-Ergebnisse zurück, die wie angegeben kategorisiert werden. Die Antwort enthält die POI-Details wie Adresse, Koordinaten Speicherort und Klassifizierung.

Get Search POI Category Tree Preview

POI-Kategoriestruktur erhalten

Gilt für: S0-und S1-Tarife.

Die POI Category-API bietet eine vollständige Liste der unterstützten Punkte (Points of Interest, POI) und Unterkategorien sowie deren Übersetzungen und Synonyme. Der zurückgegebene Inhalt kann verwendet werden, um aussagekräftigere Ergebnisse über andere Suchdienst-APIs bereitzustellen, wie z. b. " Suche"

Get Search Polygon

Polygon erhalten

Gilt für: S1-Tarif.

Der Get-Polygon Dienst ermöglicht es Ihnen, die Geometriedaten, z. b. eine Stadt oder einen Länder Umriss, für eine Reihe von Entitäten anzufordern, die zuvor aus einer Online Such Anforderung im geojson-Format abgerufen wurden. Die Geometry-ID wird im DataSources-Objekt unter "Geometry" und "ID" entweder in einer Such Adresse oder in einem suchfuzzy-Befehl zurückgegeben.

Beachten Sie, dass jede Geometry-ID, die von einem Online Such Endpunkt abgerufen wird, eine begrenzte Lebensdauer hat. Der Client sollte für spätere Verweise keine Geometry-IDs im permanenten Speicher speichern, da die Stabilität dieser Bezeichner für einen längeren Zeitraum nicht gewährleistet ist. Es wird erwartet, dass eine Anforderung an die Polygon Methode innerhalb weniger Minuten nach der Anforderung an die Online Suchmethode erfolgt, die die ID bereitgestellt hat. Der Dienst ermöglicht Batch Anforderungen bis zu 20 Bezeichner.

Post Search Address Batch

Adress Batch-API suchen

Gilt für: S1-Tarif.

Die Such Adress Batch-API sendet Batches von Abfragen an die Such Adress-API , indem nur ein einziger API-Befehl verwendet wird. Sie können die API für die Adress Batch Suche aufrufen, um entweder asynchron (Async) oder synchron (synchronisiert) auszuführen. Die Async-API ermöglicht dem Aufrufer, bis zu 100 Abfragen bis zu 10.000 Abfragen und eine Synchronisierungs-API zu erhalten.

Synchrone Batch Anforderung senden

Die synchrone API wird für Lightweight Batch-Anforderungen empfohlen. Wenn der Dienst eine Anforderung empfängt, antwortet er, sobald die Batch Elemente berechnet werden, und es besteht keine Möglichkeit, die Ergebnisse zu einem späteren Zeitpunkt abzurufen. Die synchrone API gibt einen Timeout Fehler (eine 408-Antwort) zurück, wenn die Anforderung länger als 60 Sekunden dauert. Die Anzahl der Batch Elemente ist auf 100 für diese API beschränkt.

POST https://atlas.microsoft.com/search/address/batch/sync/json?api-version=1.0&subscription-key={subscription-key}

Asynchrone Batch Anforderung übermitteln

Die asynchrone API eignet sich für die Verarbeitung großer Mengen von relativ komplexen Suchanforderungen.

  • Dies ermöglicht das Abrufen von Ergebnissen in einem separaten-Rückruf (mehrere Downloads sind möglich).
  • Die asynchrone API ist für die Zuverlässigkeit optimiert und wird nicht als Timeout erwartet.
  • Die Anzahl der Batch Elemente ist auf 10.000 für diese API beschränkt.

Wenn Sie eine Anforderung mit einer Async-Anforderung erstellen, gibt der Dienst standardmäßig einen 202-Antwort Code an einer Umleitungs-URL im Feld Speicherort des Antwort Headers zurück. Diese URL sollte in regelmäßigen Abständen überprüft werden, bis die Antwortdaten oder Fehlerinformationen verfügbar sind. Die asynchronen Antworten werden 14 Tage lang gespeichert. Die Umleitungs-URL gibt die Antwort 404 zurück, wenn Sie nach dem Ablauf Zeitraum verwendet wird.

Beachten Sie, dass die asynchrone Batch Anforderung eine Anforderung mit langer Ausführungszeit ist. Im folgenden finden Sie eine typische Abfolge von Vorgängen:

  1. Der Client sendet eine Such Adress Batch POST Anforderung an Azure Maps

  2. Der Server antwortet mit einer der folgenden Aktionen:

    HTTP 202 Accepted -Batch-Anforderung wurde akzeptiert.

    HTTP Error : bei der Verarbeitung der Batch Anforderung ist ein Fehler aufgetreten. Dies kann entweder ein 400 Bad Request oder ein beliebiger anderer Error Statuscode sein.

  3. Wenn die Batch Anforderung erfolgreich akzeptiert wurde, enthält der- Location Header in der Antwort die URL, mit der die Ergebnisse der Batch Anforderung heruntergeladen werden können. Dieser Status-URI sieht wie folgt aus:

    GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
  1. Der Client gibt eine GET Anforderung der Download-URL aus Schritt 3 aus, um die Batch Ergebnisse herunterzuladen.

Post-Text für Batch Anforderung

Um die Such Adress Abfragen zu senden, verwenden Sie eine Anforderung, bei der der POST Anforderungs Text das batchItems Array im json -Format enthält und der- Content-Type Header auf festgelegt wird application/json . Im folgenden finden Sie einen Beispiel Anforderungs Text mit fünf Such Adress Abfragen:

{
    "batchItems": [
        {"query": "?query=400 Broad St, Seattle, WA 98109&limit=3"},
        {"query": "?query=One, Microsoft Way, Redmond, WA 98052&limit=3"},
        {"query": "?query=350 5th Ave, New York, NY 10118&limit=1"},
        {"query": "?query=Pike Pl, Seattle, WA 98101&lat=47.610970&lon=-122.342469&radius=1000"},
        {"query": "?query=Champ de Mars, 5 Avenue Anatole France, 75007 Paris, France&limit=1"}
    ]
}

Eine Such Adress Abfrage in einem Batch ist nur eine partielle URL ohne Protokoll, Basis-URL, Pfad, API-Version und Abonnement Schlüssel. Er kann jeden der unterstützten URI-Parameterfür die Such Adresse akzeptieren. Die Zeichen folgen Werte in der Such Adress Abfrage müssen ordnungsgemäß mit Escapezeichen versehen werden (z. b. "das Zeichen sollte mit Escapezeichen versehen werden" \ ), und Sie sollten ebenfalls ordnungsgemäß URL

Die Async-API ermöglicht dem Aufrufer, bis zu 10.000 Abfragen und eine Synchronisierungs-API bis zu 100 Abfragen zu verpacken, und der Batch muss mindestens eine Abfrage enthalten.

Asynchrone Batch Ergebnisse herunterladen

Wenn Sie die asynchronen Batch Ergebnisse herunterladen möchten GET , wird eine Anforderung an den Batch-Download Endpunkt ausgegeben. Diese Download-URL kann aus dem Location Header einer erfolgreichen POST Batch Anforderung abgerufen werden und sieht wie folgt aus:

https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

Hier ist die typische Abfolge von Vorgängen für das Herunterladen der Batch Ergebnisse:

  1. Der Client sendet eine GET Anforderung mithilfe der Download-URL.

  2. Der Server antwortet mit einer der folgenden Aktionen:

    HTTP 202 Accepted -Batch-Anforderung wurde akzeptiert, wird aber noch verarbeitet. Versuchen Sie es später noch mal.

    HTTP 200 OK -Batch-Anforderung erfolgreich verarbeitet. Der Antworttext enthält alle Batch Ergebnisse.

Batch Antwort Modell

Der zurückgegebene Dateninhalt ist bei Async-und Synchronisierungs Anforderungen ähnlich. Wenn die Ergebnisse einer asynchronen Batch Anforderung heruntergeladen werden und die Verarbeitung des Batches abgeschlossen ist, enthält der Antworttext die Batch Antwort. Diese Batch Antwort enthält eine summary Komponente, die das angibt totalRequests , das Teil der ursprünglichen Batch Anforderung war, successfulRequests d. h. Abfragen, die erfolgreich ausgeführt wurden. Die Batch Antwort enthält auch ein batchItems -Array, das eine Antwort für jede Abfrage in der Batch Anforderung enthält. Der batchItems enthält die Ergebnisse in genau derselben Reihenfolge, in der die ursprünglichen Abfragen in der Batch Anforderung gesendet wurden. Jedes Element in batchItems enthält statusCode die response Felder und. Jede response in weist batchItems einen der folgenden Typen auf:

  • SearchAddressResponse-, Wenn die Abfrage erfolgreich abgeschlossen wurde.

  • Error: Wenn die Abfrage fehlgeschlagen ist. Die Antwort enthält code message in diesem Fall ein und ein.

Im folgenden finden Sie ein Beispiel für eine Batch Antwort mit 2 erfolgreichen und 1 fehlgeschlagenen Ergebnissen:

{
    "summary": {
        "successfulRequests": 2,
        "totalRequests": 3
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response":
            {
                "summary": {
                    "query": "one microsoft way redmond wa 98052"
                },
                "results": [
                    {
                        "position": {
                            "lat": 47.63989,
                            "lon": -122.12509
                        }
                    }
                ]
            }
        },
        {
            "statusCode": 200,
            "response":
            {
                "summary": {
                    "query": "pike pl seattle wa 98101"
                },
                "results": [
                    {
                        "position": {
                            "lat": 47.60963,
                            "lon": -122.34215
                        }
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
Post Search Address Reverse Batch

API für die Suche nach Adressen umkehren

Gilt für: S1-Tarif.

Die Such Adress Batch-API sendet Batches von Abfragen an die API für die Suche nach Adressen mit nur einem einzigen API-Befehl. Sie können die Reverse-Batch-API für die Such Adresse aufrufen, um entweder asynchron (Async) oder synchron (synchronisiert) auszuführen. Die Async-API ermöglicht dem Aufrufer, bis zu 100 Abfragen bis zu 10.000 Abfragen und eine Synchronisierungs-API zu erhalten.

Synchrone Batch Anforderung senden

Die synchrone API wird für Lightweight Batch-Anforderungen empfohlen. Wenn der Dienst eine Anforderung empfängt, antwortet er, sobald die Batch Elemente berechnet werden, und es besteht keine Möglichkeit, die Ergebnisse zu einem späteren Zeitpunkt abzurufen. Die synchrone API gibt einen Timeout Fehler (eine 408-Antwort) zurück, wenn die Anforderung länger als 60 Sekunden dauert. Die Anzahl der Batch Elemente ist auf 100 für diese API beschränkt.

POST https://atlas.microsoft.com/search/address/reverse/batch/sync/json?api-version=1.0&subscription-key={subscription-key}

Asynchrone Batch Anforderung übermitteln

Die asynchrone API eignet sich für die Verarbeitung großer Mengen von relativ komplexen Suchanforderungen.

  • Dies ermöglicht das Abrufen von Ergebnissen in einem separaten-Rückruf (mehrere Downloads sind möglich).
  • Die asynchrone API ist für die Zuverlässigkeit optimiert und wird nicht als Timeout erwartet.
  • Die Anzahl der Batch Elemente ist auf 10.000 für diese API beschränkt.

Wenn Sie eine Anforderung mit einer Async-Anforderung erstellen, gibt der Dienst standardmäßig einen 202-Antwort Code an einer Umleitungs-URL im Feld Speicherort des Antwort Headers zurück. Diese URL sollte in regelmäßigen Abständen überprüft werden, bis die Antwortdaten oder Fehlerinformationen verfügbar sind. Die asynchronen Antworten werden 14 Tage lang gespeichert. Die Umleitungs-URL gibt die Antwort 404 zurück, wenn Sie nach dem Ablauf Zeitraum verwendet wird.

Beachten Sie, dass die asynchrone Batch Anforderung eine Anforderung mit langer Ausführungszeit ist. Im folgenden finden Sie eine typische Abfolge von Vorgängen:

  1. Der Client sendet eine Such Adress Batch POST Anforderung an Azure Maps

  2. Der Server antwortet mit einer der folgenden Aktionen:

    HTTP 202 Accepted -Batch-Anforderung wurde akzeptiert.

    HTTP Error : bei der Verarbeitung der Batch Anforderung ist ein Fehler aufgetreten. Dies kann entweder ein 400 Bad Request oder ein beliebiger anderer Error Statuscode sein.

  3. Wenn die Batch Anforderung erfolgreich akzeptiert wurde, enthält der- Location Header in der Antwort die URL, mit der die Ergebnisse der Batch Anforderung heruntergeladen werden können. Dieser Status-URI sieht wie folgt aus:

    GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
  1. Der Client gibt eine GET Anforderung der Download-URL aus Schritt 3 aus, um die Batch Ergebnisse herunterzuladen.

Post-Text für Batch Anforderung

Um die Such Adresse mit Reverse -Abfragen zu senden, verwenden Sie eine Anforderung, bei der der POST Anforderungs Text das batchItems Array im json -Format enthält und der- Content-Type Header auf festgelegt wird application/json . Im folgenden finden Sie einen Beispiel Anforderungs Text mit fünf Such Adress umgekehrten Abfragen:

{
    "batchItems": [
        {"query": "?query=48.858561,2.294911"},
        {"query": "?query=47.639765,-122.127896&radius=5000&limit=2"},
        {"query": "?query=47.621028,-122.348170"},
        {"query": "?query=43.722990,10.396695"},
        {"query": "?query=40.750958,-73.982336"}
    ]
}

Eine Such Adresse für eine umgekehrte Abfrage in einem Batch ist nur eine partielle URL ohne Protokoll, Basis-URL, Pfad, API-Version und Abonnement Schlüssel. Er kann jeden der unterstützten Reverse- URI-Parameterfür die Such Adresse akzeptieren. Die Zeichen folgen Werte in der Reverse-Abfrage für die Such Adresse müssen ordnungsgemäß mit Escapezeichen versehen werden (z. b. "das Zeichen sollte mit Escapezeichen versehen werden \ ), und es sollte auch korrekt

Die Async-API ermöglicht dem Aufrufer, bis zu 10.000 Abfragen und eine Synchronisierungs-API bis zu 100 Abfragen zu verpacken, und der Batch muss mindestens eine Abfrage enthalten.

Asynchrone Batch Ergebnisse herunterladen

Wenn Sie die asynchronen Batch Ergebnisse herunterladen möchten GET , wird eine Anforderung an den Batch-Download Endpunkt ausgegeben. Diese Download-URL kann aus dem Location Header einer erfolgreichen POST Batch Anforderung abgerufen werden und sieht wie folgt aus:

https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

Hier ist die typische Abfolge von Vorgängen für das Herunterladen der Batch Ergebnisse:

  1. Der Client sendet eine GET Anforderung mithilfe der Download-URL.

  2. Der Server antwortet mit einer der folgenden Aktionen:

    HTTP 202 Accepted -Batch-Anforderung wurde akzeptiert, wird aber noch verarbeitet. Versuchen Sie es später noch mal.

    HTTP 200 OK -Batch-Anforderung erfolgreich verarbeitet. Der Antworttext enthält alle Batch Ergebnisse.

Batch Antwort Modell

Der zurückgegebene Dateninhalt ist bei Async-und Synchronisierungs Anforderungen ähnlich. Wenn die Ergebnisse einer asynchronen Batch Anforderung heruntergeladen werden und die Verarbeitung des Batches abgeschlossen ist, enthält der Antworttext die Batch Antwort. Diese Batch Antwort enthält eine summary Komponente, die das angibt totalRequests , das Teil der ursprünglichen Batch Anforderung war, successfulRequests d. h. Abfragen, die erfolgreich ausgeführt wurden. Die Batch Antwort enthält auch ein batchItems -Array, das eine Antwort für jede Abfrage in der Batch Anforderung enthält. Der batchItems enthält die Ergebnisse in genau derselben Reihenfolge, in der die ursprünglichen Abfragen in der Batch Anforderung gesendet wurden. Jedes Element in batchItems enthält statusCode die response Felder und. Jede response in weist batchItems einen der folgenden Typen auf:

  • SearchAddressReverseResponse-, Wenn die Abfrage erfolgreich abgeschlossen wurde.

  • Error: Wenn die Abfrage fehlgeschlagen ist. Die Antwort enthält code message in diesem Fall ein und ein.

Im folgenden finden Sie ein Beispiel für eine Batch Antwort mit 2 erfolgreichen und 1 fehlgeschlagenen Ergebnissen:

{
    "summary": {
        "successfulRequests": 2,
        "totalRequests": 3
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response":
            {
                "summary": {
                    "queryTime": 11
                },
                "addresses": [
                    {
                        "address": {
                            "country": "France",
                            "freeformAddress": "Avenue Anatole France, 75007 Paris"
                        },
                        "position": "48.858490,2.294820"
                    }
                ]
            }
        },
        {
            "statusCode": 200,
            "response":
            {
                "summary": {
                    "queryTime": 1
                },
                "addresses": [
                    {
                        "address": {
                            "country": "United States of America",
                            "freeformAddress": "157th Pl NE, Redmond WA 98052"
                        },
                        "position": "47.640470,-122.129430"
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
Post Search Along Route

Gilt für: S0-und S1-Tarife.

Durch die Suche entlang des Routen Endpunkts können Sie eine Fuzzysuche für POIs entlang einer angegebenen Route durchführen. Diese Suche wird durch Angabe des maxDetourTime Einschränkungs Measures eingeschränkt.

Um die Routenpunkte zu senden, verwenden Sie eine POST Anforderung, bei der der Anforderungs Text das route als Typ dargestellte Objekt enthält GeoJSON LineString und der- Content-Type Header auf festgelegt wird application/json . Jeder Routen Punkt in route wird als Typ dargestellt, GeoJSON Position d. h. ein Array, in dem auf den Längen Grad Wert der Breitengrad folgt und der Höhen Wert ignoriert wird. Der route sollte mindestens 2 Routenpunkte enthalten.

Es ist möglich, dass die ursprüngliche Route geändert wird, einige der Punkte möglicherweise ausgelassen werden. Wenn die Route, die den gefundenen Punkt durchläuft, schneller ist als die ursprüngliche Route, detourTime ist der Wert in der Antwort negativ.

Post Search Fuzzy Batch

Fuzzybatch-API suchen

Gilt für: S1-Tarif.

Die Such Adress Batch-API sendet Batches von Abfragen, um die fuzzyapi mit nur einem einzigen API-Befehl zu suchen. Sie können die API für die Suche nach dem Fuzzy-Batch aufrufen, um entweder asynchron (Async) oder synchron (synchronisiert) auszuführen. Die Async-API ermöglicht dem Aufrufer, bis zu 100 Abfragen bis zu 10.000 Abfragen und eine Synchronisierungs-API zu erhalten.

Synchrone Batch Anforderung senden

Die synchrone API wird für Lightweight Batch-Anforderungen empfohlen. Wenn der Dienst eine Anforderung empfängt, antwortet er, sobald die Batch Elemente berechnet werden, und es besteht keine Möglichkeit, die Ergebnisse zu einem späteren Zeitpunkt abzurufen. Die synchrone API gibt einen Timeout Fehler (eine 408-Antwort) zurück, wenn die Anforderung länger als 60 Sekunden dauert. Die Anzahl der Batch Elemente ist auf 100 für diese API beschränkt.

POST https://atlas.microsoft.com/search/fuzzy/batch/sync/json?api-version=1.0&subscription-key={subscription-key}

Asynchrone Batch Anforderung übermitteln

Die asynchrone API eignet sich für die Verarbeitung großer Mengen von relativ komplexen Suchanforderungen.

  • Dies ermöglicht das Abrufen von Ergebnissen in einem separaten-Rückruf (mehrere Downloads sind möglich).
  • Die asynchrone API ist für die Zuverlässigkeit optimiert und wird nicht als Timeout erwartet.
  • Die Anzahl der Batch Elemente ist auf 10.000 für diese API beschränkt.

Wenn Sie eine Anforderung mit einer Async-Anforderung erstellen, gibt der Dienst standardmäßig einen 202-Antwort Code an einer Umleitungs-URL im Feld Speicherort des Antwort Headers zurück. Diese URL sollte in regelmäßigen Abständen überprüft werden, bis die Antwortdaten oder Fehlerinformationen verfügbar sind. Die asynchronen Antworten werden 14 Tage lang gespeichert. Die Umleitungs-URL gibt die Antwort 404 zurück, wenn Sie nach dem Ablauf Zeitraum verwendet wird.

Beachten Sie, dass die asynchrone Batch Anforderung eine Anforderung mit langer Ausführungszeit ist. Im folgenden finden Sie eine typische Abfolge von Vorgängen:

  1. Der Client sendet eine Such Adress Batch POST Anforderung an Azure Maps

  2. Der Server antwortet mit einer der folgenden Aktionen:

    HTTP 202 Accepted -Batch-Anforderung wurde akzeptiert.

    HTTP Error : bei der Verarbeitung der Batch Anforderung ist ein Fehler aufgetreten. Dies kann entweder ein 400 Bad Request oder ein beliebiger anderer Error Statuscode sein.

  3. Wenn die Batch Anforderung erfolgreich akzeptiert wurde, enthält der- Location Header in der Antwort die URL, mit der die Ergebnisse der Batch Anforderung heruntergeladen werden können. Dieser Status-URI sieht wie folgt aus:

    GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}
  1. Der Client gibt eine GET Anforderung der Download-URL aus Schritt 3 aus, um die Batch Ergebnisse herunterzuladen.

Post-Text für Batch Anforderung

Um die suchfuzzy -Abfragen zu senden, verwenden Sie eine Anforderung, bei der der POST Anforderungs Text das batchItems Array im json -Format enthält und der- Content-Type Header auf festgelegt wird application/json . Im folgenden finden Sie einen Beispiel Anforderungs Text mit fünf suchfuzzy -Abfragen:

{
    "batchItems": [
        {"query": "?query=atm&lat=47.639769&lon=-122.128362&radius=5000&limit=5"},
        {"query": "?query=Statue Of Liberty&limit=2"},
        {"query": "?query=Starbucks&lat=47.639769&lon=-122.128362&radius=5000"},
        {"query": "?query=Space Needle"},
        {"query": "?query=pizza&limit=10"}
    ]
}

Eine suchfuzzy -Abfrage in einem Batch ist nur eine partielle URL ohne das Protokoll, die Basis-URL, den Pfad, die API-Version und den Abonnement Schlüssel. Er kann jeden der unterstützten Parameter für die Suche nach dem URI-URIakzeptieren. Die Zeichen folgen Werte in der Suche-Fuzzy -Abfrage müssen ordnungsgemäß mit Escapezeichen versehen werden (z. b \

Die Async-API ermöglicht dem Aufrufer, bis zu 10.000 Abfragen und eine Synchronisierungs-API bis zu 100 Abfragen zu verpacken, und der Batch muss mindestens eine Abfrage enthalten.

Asynchrone Batch Ergebnisse herunterladen

Wenn Sie die asynchronen Batch Ergebnisse herunterladen möchten GET , wird eine Anforderung an den Batch-Download Endpunkt ausgegeben. Diese Download-URL kann aus dem Location Header einer erfolgreichen POST Batch Anforderung abgerufen werden und sieht wie folgt aus:

https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

Hier ist die typische Abfolge von Vorgängen für das Herunterladen der Batch Ergebnisse:

  1. Der Client sendet eine GET Anforderung mithilfe der Download-URL.

  2. Der Server antwortet mit einer der folgenden Aktionen:

    HTTP 202 Accepted -Batch-Anforderung wurde akzeptiert, wird aber noch verarbeitet. Versuchen Sie es später noch mal.

    HTTP 200 OK -Batch-Anforderung erfolgreich verarbeitet. Der Antworttext enthält alle Batch Ergebnisse.

Batch Antwort Modell

Der zurückgegebene Dateninhalt ist bei Async-und Synchronisierungs Anforderungen ähnlich. Wenn die Ergebnisse einer asynchronen Batch Anforderung heruntergeladen werden und die Verarbeitung des Batches abgeschlossen ist, enthält der Antworttext die Batch Antwort. Diese Batch Antwort enthält eine summary Komponente, die das angibt totalRequests , das Teil der ursprünglichen Batch Anforderung war, successfulRequests d. h. Abfragen, die erfolgreich ausgeführt wurden. Die Batch Antwort enthält auch ein batchItems -Array, das eine Antwort für jede Abfrage in der Batch Anforderung enthält. Der batchItems enthält die Ergebnisse in genau derselben Reihenfolge, in der die ursprünglichen Abfragen in der Batch Anforderung gesendet wurden. Jedes Element in batchItems enthält statusCode die response Felder und. Jede response in weist batchItems einen der folgenden Typen auf:

  • SearchFuzzyResponse-, Wenn die Abfrage erfolgreich abgeschlossen wurde.

  • Error: Wenn die Abfrage fehlgeschlagen ist. Die Antwort enthält code message in diesem Fall ein und ein.

Im folgenden finden Sie ein Beispiel für eine Batch Antwort mit 2 erfolgreichen und 1 fehlgeschlagenen Ergebnissen:

{
    "summary": {
        "successfulRequests": 2,
        "totalRequests": 3
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response":
            {
                "summary": {
                    "query": "atm"
                },
                "results": [
                    {
                        "type": "POI",
                        "poi": {
                            "name": "ATM at Wells Fargo"
                        },
                        "address": {
                            "country": "United States Of America",
                            "freeformAddress": "3240 157th Ave NE, Redmond, WA 98052"
                        }
                    }
                ]
            }
        },
        {
            "statusCode": 200,
            "response":
            {
                "summary": {
                    "query": "statue of liberty"
                },
                "results": [
                    {
                        "type": "POI",
                        "poi": {
                            "name": "Statue of Liberty"
                        },
                        "address": {
                            "country": "United States Of America",
                            "freeformAddress": "New York, NY 10004"
                        }
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
Post Search Inside Geometry

Gilt für: S0-und S1-Tarife.

Der Geometry-Endpunkt für die Suche ermöglicht es Ihnen, eine freie Formular Suche innerhalb einer einzigen Geometrie oder in vielen davon auszuführen. Die Suchergebnisse, die in den geometry/geometries liegen, werden zurückgegeben.

Zum Senden der Geometrie verwenden Sie eine POST Anforderung, bei der der Anforderungs Text das geometry als Typ dargestellte Objekt enthält GeoJSON und der- Content-Type Header auf festgelegt wird application/json . Die zu durchsuchenden geografischen Features können als Polygon-und/oder Kreis Geometrien modelliert werden, die mit einem der folgenden GeoJSON Typen dargestellt werden:

  • Geojson featurückruf
    Der geometry kann als-Objekt dargestellt werden GeoJSON FeatureCollection . Dies ist die empfohlene Option, wenn die Geometrie sowohl Polygone als auch Kreise enthält. Der FeatureCollection kann maximal 50 GeoJSON Feature Objekte enthalten. Jedes- Feature Objekt muss entweder ein Polygon oder einen Kreis mit den folgenden Bedingungen darstellen:
    • Ein Feature -Objekt für die Polygon Geometrie kann über einen maximalen Wert von 50 Koordinaten verfügen, und die Eigenschaften müssen leer sein.
    • Ein Feature -Objekt für die Kreis Geometrie besteht aus einem mit einem Typ dargestellten Mittelpunkt GeoJSON Point und einem RADIUS -Wert (in Meter), der in den Eigenschaften des Objekts zusammen mit der Untertyp -Eigenschaft, deren Wert ' Circle ' sein muss, angegeben werden muss.

    Eine Beispiel Darstellung finden Sie im Abschnitt "Beispiele" weiter unten FeatureCollection .

  • Geojson GeometryCollection
    Der geometry kann als-Objekt dargestellt werden GeoJSON GeometryCollection . Dies ist die empfohlene Option, wenn die Geometrie nur eine Liste von Polygonen enthält. Der GeometryCollection kann maximal 50 GeoJSON Polygon Objekte enthalten. Jedes- Polygon Objekt kann über einen maximalen Wert von 50 Koordinaten verfügen. Eine Beispiel Darstellung finden Sie im Abschnitt "Beispiele" weiter unten GeometryCollection .

  • Geojson-Polygon
    Der geometry kann als-Objekt dargestellt werden GeoJSON Polygon . Dies ist die empfohlene Option, wenn die Geometrie ein einzelnes Polygon enthält. Das Polygon Objekt kann einen maximalen Wert von 50 Koordinaten aufweisen. Eine Beispiel Darstellung finden Sie im Abschnitt "Beispiele" weiter unten Polygon .

.