Route

Operations

Get Route Directions

Van toepassing op: prijscategorie S0 en S1.

Retourneert een route tussen een oorsprong en een bestemming, die door waypoints gaat als deze zijn opgegeven. De route houdt rekening met factoren zoals het huidige verkeer en de gebruikelijke snelheden op de aangevraagde dag van de week en het tijdstip van de dag.

Geretourneerde informatie omvat de afstand, de geschatte reistijd en een weergave van de routegeometrie. Er zijn ook aanvullende routeringsgegevens beschikbaar, zoals geoptimaliseerde volgorde van routepunten of turn by turn by turn-instructies, afhankelijk van de geselecteerde opties.

Routeringsservice biedt een set parameters voor een gedetailleerde beschrijving van het voertuigspecifieke verbruiksmodel. Raadpleeg Verbruiksmodel voor een gedetailleerde uitleg van de concepten en parameters die hierbij komen kijken.

Get Route Range

Api voor routebereik (isochrone)

Van toepassing op: S1-prijscategorie.

Deze service berekent een set locaties die kunnen worden bereikt vanaf het beginpunt op basis van het opgegeven budget voor brandstof, energie, tijd of afstand. Een veelhoekgrens (of isochrone) wordt geretourneerd in een richting tegen de klok in, evenals het precieze veelhoekcentrum dat het resultaat was van het beginpunt.

De geretourneerde veelhoek kan worden gebruikt voor verdere verwerking, zoals Zoeken binnen geometrie om te zoeken naar POIs binnen de opgegeven isochrone.

Post Route Directions

Van toepassing op: prijscategorie S0 en S1.

Retourneert een route tussen een oorsprong en een bestemming, die door waypoints gaat als deze zijn opgegeven. De route houdt rekening met factoren zoals het huidige verkeer en de gebruikelijke snelheden op de aangevraagde dag van de week en het tijdstip van de dag.

Geretourneerde informatie omvat de afstand, de geschatte reistijd en een weergave van de routegeometrie. Er zijn ook aanvullende routeringsgegevens beschikbaar, zoals geoptimaliseerde volgorde van routepunten of turn by turn by turn-instructies, afhankelijk van de geselecteerde opties.

Routeringsservice biedt een set parameters voor een gedetailleerde beschrijving van een specifiek verbruiksmodel voor voertuigen. Raadpleeg Verbruiksmodel voor een gedetailleerde uitleg van de concepten en parameters die hierbij komen kijken.

Post Route Directions Batch

Batch-API routebeschrijvingen

Van toepassing op: S1-prijscategorie.

De Batch-API routebeschrijving verzendt batches met query's naar routebeschrijving-API met slechts één API-aanroep. U kunt de Batch-API routebeschrijvingen aanroepen om asynchroon (asynchroon) of synchroon (synchronisatie) uit te voeren. Met de asynchrone API kan de aanroeper maximaal 700 query's batchen en api's synchroniseren tot maximaal 100 query's.

Synchrone Batch-aanvraag verzenden

De synchrone API wordt aanbevolen voor lichte batchaanvragen. Wanneer de service een aanvraag ontvangt, reageert deze zodra de batchitems zijn berekend en is het niet mogelijk om de resultaten later op te halen. De synchrone API retourneren een time-outfout (een 408-antwoord) als de aanvraag langer duurt dan 60 seconden. Het aantal batchitems is beperkt tot 100 voor deze API.

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

Asynchrone batchaanvraag verzenden

De asynchrone API is geschikt voor het verwerken van grote volumes relatief complexe routeaanvragen

  • Hiermee kunnen resultaten in een afzonderlijke aanroep worden opgehaald (meerdere downloads zijn mogelijk).
  • De asynchrone API is geoptimaliseerd voor betrouwbaarheid en er wordt niet verwacht dat er een time-out is.
  • Het aantal batchitems is beperkt tot 700 voor deze API.

Wanneer u een aanvraag indient met behulp van een async-aanvraag, retourneert de service standaard een 202-antwoordcode samen met een omleidings-URL in het veld Locatie van de antwoordheader. Deze URL moet periodiek worden gecontroleerd totdat de antwoordgegevens of foutgegevens beschikbaar zijn. De asynchrone antwoorden worden 14 dagen opgeslagen. De omleidings-URL retourneert een 404-antwoord als deze wordt gebruikt na de verloopperiode.

Houd er rekening mee dat asynchrone batchaanvraag een langlopende aanvraag is. Hier is een typische reeks bewerkingen:

  1. Client verzendt een Batch-aanvraag routebeschrijving POST naar Azure Kaarten

  2. De server reageert met een van de volgende opties:

    HTTP: 202 Accepted Batch-aanvraag is geaccepteerd.

    HTTP: Error er is een fout opgetreden bij het verwerken van uw Batch-aanvraag. Dit kan een of 400 Bad Request een andere Error statuscode zijn.

  3. Als de batchaanvraag is geaccepteerd, bevat de header in het antwoord de URL om de resultaten van de Location batchaanvraag te downloaden. Deze status-URI ziet er als volgt uit:

GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0 Opmerking:- Vergeet niet om AUTH-gegevens (subscription-key/azure_auth - ZieBeveiliging ) toe te voegen aan de status-URI voordat u deze kunt uitvoeren.
4. Client geeft een GET aanvraag uit op de download-URL die is verkregen in stap 3 om de batchresultaten te downloaden.

POST-body voor Batch-aanvraag

Als u de query's voor routebeschrijvingen wilt verzenden, gebruikt u een aanvraag waarbij de aanvraagtekst de matrix in indeling bevat en POST de header wordt ingesteld op batchItems json Content-Type application/json . Hier is een voorbeeld van een aanvraag body met 3 routebeschrijving query's:

{
    "batchItems": [
        { "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" },
        { "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" },
        { "query": "?query=48.923159,-122.557362:32.621279,-116.840362" }
    ]
}

Een routebeschrijvingsquery in een batch is slechts een gedeeltelijke URL zonder het protocol, de basis-URL, het pad, de API-versie en de abonnementssleutel. De URI-parametersvoor ondersteunde routebeschrijvingen kunnen worden geaccepteerd. De tekenreekswaarden in de routebeschrijvingsquery moeten een escape-teken hebben (bijvoorbeeld " teken moet worden afgesloten met ) en moet ook correct \ url-gecodeerd zijn.

Met de asynchrone API kan de aanroeper maximaal 700 query's batchen en api's synchroniseren tot maximaal 100 query's. De batch moet ten minste één query bevatten.

Asynchrone batchresultaten downloaden

Als u de asynsync-batchresultaten wilt downloaden, moet u een GET aanvraag indienen bij het batch-download-eindpunt. Deze download-URL kan worden verkregen uit de header van een geslaagde batchaanvraag en Location ziet er als volgt POST uit:

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

Hier is de typische volgorde van bewerkingen voor het downloaden van de batchresultaten:

  1. Client verzendt een GET aanvraag met behulp van de download-URL.

  2. De server reageert met een van de volgende opties:

    HTTP: 202 Accepted Batch-aanvraag is geaccepteerd, maar wordt nog verwerkt. Probeer het over enige tijd opnieuw.

    HTTP: 200 OK Batch-aanvraag is verwerkt. De antwoord-body bevat alle batchresultaten.

Batch Response Model

De geretourneerde gegevensinhoud is vergelijkbaar voor asynchrone en synchronisatieaanvragen. Wanneer u de resultaten van een asyntische batchaanvraag downloadt en de batch is verwerkt, bevat de antwoord-body het batch-antwoord. Deze batchreactie bevat een onderdeel dat aangeeft dat deel uitmaakte van de oorspronkelijke batchaanvraag en dat wil zeggen query's summary totalRequests die zijn successfulRequests uitgevoerd. Het batch-antwoord bevat ook een batchItems matrix die een antwoord bevat voor elke query in de batchaanvraag. De bevat de resultaten in exact dezelfde volgorde als de batchItems oorspronkelijke query's zijn verzonden in de batchaanvraag. Elk item in batchItems bevat de velden en statusCode response . Elk response in heeft een van de volgende batchItems typen:

  • RouteDirectionsResponse - Als de query is voltooid.

  • Error - Als de query is mislukt. Het antwoord bevat in code dit geval een en een message .

Hier is een batch-voorbeeldreactie met 1 geslaagd en 1 mislukt resultaat:

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
Post Route Matrix

Van toepassing op: S1-prijscategorie.

Met de matrixrouteringsservice kunt u een matrix met route-samenvattingen berekenen voor een set routes die zijn gedefinieerd door de locaties van herkomst en bestemming met behulp van een asynchrone (asynchrone) of synchrone (synchronisatie) POST-aanvraag. Voor elke bepaalde oorsprong berekent de service de routeringskosten van die oorsprong naar elke bepaalde bestemming. De set met oorsprongen en de set bestemmingen kan worden zien als de kolom- en rijkoppen van een tabel en elke cel in de tabel bevat de kosten van routering van de oorsprong naar de bestemming voor die cel. Stel dat een bezorger van een restaurant 20 stuurprogramma's heeft en de dichtstbijzijnde stuurprogramma moet vinden om de bezorging van het restaurant op te halen. Om deze use-case op te lossen, kunnen ze de Matrix Route-API aanroepen.

Voor elke route worden de reistijden en afstanden geretourneerd. U kunt de berekende kosten gebruiken om te bepalen welke gedetailleerde routes u wilt berekenen met behulp van de API routebeschrijvingen.

De maximale grootte van een matrix voor een asynchrone aanvraag is 700 en voor een synchronisatieaanvraag is dit 100 (het aantal oorsprongen vermenigvuldigd met het aantal bestemmingen).

Aanvraag voor synchrone routematrix verzenden

Als uw scenario synchrone aanvragen vereist en de maximale grootte van de matrix kleiner dan of gelijk aan 100 is, kunt u een synchrone aanvraag indienen. De maximale grootte van een matrix voor deze API is 100 (het aantal oorsprongen vermenigvuldigd met het aantal bestemmingen). Met deze beperking in gedachten zijn voorbeelden van mogelijke matrixdimensingen: 10x10, 6x8, 9x8 (deze hoeft niet vierkant te zijn).

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

Aanvraag voor Asynchrone routematrix verzenden

De asynchrone API is geschikt voor het verwerken van grote volumes relatief complexe routeringsaanvragen. Wanneer u een aanvraag indient met behulp van een async-aanvraag, retourneert de service standaard een 202-antwoordcode samen met een omleidings-URL in het veld Locatie van de antwoordheader. Deze URL moet periodiek worden gecontroleerd totdat de antwoordgegevens of foutgegevens beschikbaar zijn. Als de parameter in de aanvraag is ingesteld op true, krijgt de gebruiker een 200-respons als de aanvraag minder dan waitForResults 120 seconden is voltooid.

De maximale grootte van een matrix voor deze API is 700 (het aantal oorsprongen vermenigvuldigd met het aantal bestemmingen). Met deze beperking in gedachten zijn voorbeelden van mogelijke matrixdimensingen: 50x10, 10x10, 28x25. 10x70 (dit hoeft niet vierkant te zijn).

De asynchrone antwoorden worden 14 dagen opgeslagen. De omleidings-URL retourneert een 404-antwoord als deze wordt gebruikt na de verloopperiode.

POST https://atlas.microsoft.com/route/matrix/json?api-version=1.0&subscription-key={subscription-key}

Hier is een typische reeks asynchrone bewerkingen:

  1. Client verzendt een Route Matrix POST-aanvraag naar Azure Kaarten

  2. De server reageert met een van de volgende opties:

    HTTP: 202 Accepted de aanvraag voor de routematrix is geaccepteerd.

    HTTP: Error er is een fout opgetreden bij het verwerken van uw routematrixaanvraag. Dit kan een 400-foutaanvraag of een andere foutstatuscode zijn.

  3. Als de aanvraag matrixroute is geaccepteerd, bevat de locatieheader in het antwoord de URL om de resultaten van de aanvraag te downloaden. Deze status-URI ziet er als volgt uit:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
  1. Client geeft een GET-aanvraag uit op de download-URL die is verkregen in stap 3 om de resultaten te downloaden

Synchronisatieresultaten downloaden

Wanneer u een POST-aanvraag voor routematrixsynchronisatie-API maakt, retourneert de service 200 antwoordcode voor een geslaagde aanvraag en een antwoordmatrix. De antwoord-body bevat de gegevens en het is niet mogelijk om de resultaten later op te halen.

Async-resultaten downloaden

Wanneer een aanvraag een antwoord 202 Accepted geeft, wordt de aanvraag verwerkt met behulp van onze asynsync-pijplijn. U krijgt een URL om de voortgang van uw async-aanvraag te controleren in de locatieheader van het antwoord. Deze status-URI ziet er als volgt uit:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}

De URL die wordt geleverd door de locatieheader retourneert de volgende antwoorden wanneer een GET aanvraag wordt uitgegeven.

HTTP: 202 Accepted de matrixaanvraag is geaccepteerd, maar wordt nog verwerkt. Probeer het over enige tijd opnieuw.

HTTP: 200 OK matrixaanvraag is verwerkt. De antwoord-body bevat alle resultaten.