Data - Update

Använd för att uppdatera datainnehåll som tidigare laddats upp med datauppladdning.

Anteckning

Azure Maps Data Service-tillbakadragning

Den Azure Maps datatjänsten (både v1 och v2) är nu inaktuell och kommer att dras tillbaka den 24-09-16. För att undvika avbrott i tjänsten måste alla anrop till datatjänsten uppdateras för att använda Azure Maps Data Registry-tjänsten senast 24-09-16. Mer information finns i Skapa dataregister.

API:et Data Update är en HTTP-begäran PUT som gör att anroparen kan uppdatera tidigare uppladdat datainnehåll.

Du kan använda det här API:et i ett scenario som att lägga till eller ta bort geofences till eller från en befintlig samling geofences. Geofences laddas upp med hjälp av API:et för datauppladdning för användning i Azure Maps Geofencing Service.

Observera att uppdaterings-API:et ersätter och åsidosätter det befintliga datainnehållet.

Viktigt

Genom att använda den här funktionen godkänner du de juridiska villkoren för förhandsversionen. Mer information finns i Tilläggsvillkor för förhandsversion .

Skicka uppdateringsbegäran

Om du vill uppdatera ditt innehåll använder du en PUT begäran. Begärandetexten innehåller nya data som ersätter befintliga data. Rubriken Content-Type anges till innehållstypen för data och sökvägen innehåller de udid data som ska uppdateras.

Om du till exempel vill uppdatera en samling geofences som tidigare laddats upp med hjälp av API:et Upload placerar du det nya geofence-innehållet i begärandetexten. Ange parametern udid i sökvägen till de udid data som togs emot tidigare i api-svaret för uppladdning. Och ange Content-Type rubriken till någon av följande medietyper:

  • application/json
  • application/vnd.geo+json
  • application/octet-stream

Här är ett exempel på begärandetext för att uppdatera en enkel Geofence. Den representeras som en cirkelgeometri med hjälp av en mittpunkt och en radie. Exemplet nedan finns i GeoJSON:

{
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "Point",
            "coordinates": [-122.126986, 47.639754]
        },
        "properties": {
            "geometryId": "001",
            "radius": 500
        }
    }]
}

Den tidigare uppladdade geofence hade en radie på 100 m. Ovanstående begäran uppdaterar den till 500 m.

Api:et för datauppdatering utför en tidskrävande åtgärd.

Datauppdateringsgränser

Tänk på att varje Azure Maps konto för närvarande har en datalagringsgräns. När lagringsgränsen har nåtts returnerar alla nya API-anrop för uppladdning ett 409 Conflict http-felsvar. Du kan alltid använda API:et för databorttagning för att ta bort gammalt/oanvänt innehåll och skapa utrymme för nya uppladdningar.

PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=2.0
PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=2.0&description={description}

URI-parametrar

Name I Obligatorisk Typ Description
geography
path True

string

Den här parametern anger var Azure Maps Creator-resursen finns. Giltiga värden är vi och eu.

udid
path True

string

Det unika data-ID:t för innehållet. udid Måste ha hämtats från ett lyckat datauppladdningsanrop.

api-version
query True

string

Versionsnummer för Azure Maps API.

description
query

string

Beskrivningen som ska ges till uppladdningen.

Begärandehuvud

Name Obligatorisk Typ Description
x-ms-client-id

string

Anger vilket konto som är avsett för användning tillsammans med Microsoft Entra ID säkerhetsmodell. Det representerar ett unikt ID för Azure Maps-kontot och kan hämtas från konto-API:et för Azure Maps hanteringsplan. Information om hur du använder Microsoft Entra ID säkerhet i Azure Maps finns i följande artiklar.

Begärandetext

Name Typ Description
UpdateContent

object

Det nya innehållet som ska uppdatera/ersätta det tidigare uppladdade innehållet.

Svar

Name Typ Description
200 OK

LongRunningOperationResult

Åtgärden körs eller slutförs. Om åtgärden lyckades använder du Resource-Location-huvudet för att hämta sökvägen till resultatet.

Headers

Resource-Location: string

202 Accepted

Begäran accepterad: Begäran har godkänts för bearbetning. Använd URL:en i Operation-Location-rubriken för att hämta status.

Headers

Operation-Location: string

Other Status Codes

ErrorResponse

Datalagringsgränsen nås för det Azure Maps kontot. Du kan alltid använda API:et för databorttagning för att ta bort gammalt/oanvänt innehåll och skapa utrymme för nya uppladdningar.

Other Status Codes

ErrorResponse

Det uppstod ett oväntat fel.

Säkerhet

AADToken

Det här är Microsoft Entra OAuth 2.0-flöden. När den är kopplad till rollbaserad åtkomstkontroll i Azure kan den användas för att styra åtkomsten till Azure Maps REST-API:er. Rollbaserade åtkomstkontroller i Azure används för att ange åtkomst till ett eller flera Azure Maps resurskonto eller underresurser. Alla användare, grupper eller tjänstens huvudnamn kan beviljas åtkomst via en inbyggd roll eller en anpassad roll som består av en eller flera behörigheter för att Azure Maps REST-API:er.

För att implementera scenarier rekommenderar vi att du visar autentiseringsbegrepp. Sammanfattningsvis tillhandahåller den här säkerhetsdefinitionen en lösning för modellering av program via objekt som kan ha åtkomstkontroll för specifika API:er och omfång.

Kommentarer

  • Den här säkerhetsdefinitionen x-ms-client-idkräver att huvudet används för att ange vilken Azure Maps resurs som programmet begär åtkomst till. Detta kan hämtas från MAPS-hanterings-API :et.

Authorization URL är specifikt för den offentliga Azure-molninstansen. Nationella moln har unika auktoriserings-URL:er och Microsoft Entra ID konfigurationer. * Rollbaserad åtkomstkontroll i Azure konfigureras från Azure-hanteringsplanet via Azure Portal, PowerShell, CLI, Azure SDK:er eller REST-API:er. * Användning av Azure Maps Web SDK möjliggör konfigurationsbaserad konfiguration av ett program för flera användningsfall.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Det här är en delad nyckel som etableras när du Skapa ett Azure Maps konto i Azure Portal eller med hjälp av PowerShell, CLI, Azure SDK:er eller REST API.

Med den här nyckeln kan alla program komma åt alla REST-API:et. Med andra ord kan den här nyckeln användas som huvudnyckel i det konto som de har utfärdats i.

För offentligt exponerade program rekommenderar vi att du använder metoden för konfidentiella klientprogram för att komma åt Azure Maps REST-API:er så att din nyckel kan lagras på ett säkert sätt.

Type: apiKey
In: query

SAS Token

Det här är en signaturtoken för delad åtkomst som skapas från åtgärden Lista SAS på den Azure Maps resursen via Azure-hanteringsplanet via Azure Portal, PowerShell, CLI, Azure SDK:er eller REST-API:er.

Med den här token har alla program behörighet att komma åt med rollbaserade Åtkomstkontroller i Azure och detaljerad kontroll av förfallodatum, frekvens och region för användning för den specifika token. Med andra ord kan SAS-token användas för att tillåta program att styra åtkomsten på ett säkrare sätt än den delade nyckeln.

För offentligt exponerade program rekommenderar vi att du konfigurerar en specifik lista över tillåtna ursprung på map-kontoresursen för att begränsa återgivningsmissbruket och regelbundet förnya SAS-token.

Type: apiKey
In: header

Exempel

Update previously uploaded GeoJSON data containing geometries that represent a collection of geofences

Sample Request

PUT https://us.atlas.microsoft.com/mapData/25084fb7-307a-4720-8f91-7952a0b91012?api-version=2.0

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          -122.126986,
          47.639754
        ]
      },
      "properties": {
        "geometryId": "001",
        "radius": 500
      }
    }
  ]
}

Sample Response

Resource-Location: https://us.atlas.microsoft.com/mapData/3e36b996-f6d1-b068-0fcb-dd6b014c3447?api-version=2.0
{
  "operationId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c",
  "created": "2021-04-20T22:43:14.9401559+00:00",
  "status": "Succeeded"
}
Operation-Location: https://us.atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0
Access-Control-Expose-Headers: Operation-Location
{
  "error": {
    "code": "409 Conflict",
    "message": "The data storage limit is reached on the Azure Maps account. You can always use the Data Delete API to delete old/unused content and create space for new uploads."
  }
}

Definitioner

Name Description
ErrorAdditionalInfo

Ytterligare information om resurshanteringsfelet.

ErrorDetail

Felinformationen.

ErrorResponse

Felsvar

LongRunningOperationResult

Svarsmodellen för ett Long-Running Operations API.

LroStatus

Statustillståndet för begäran.

ErrorAdditionalInfo

Ytterligare information om resurshanteringsfelet.

Name Typ Description
info

object

Ytterligare information.

type

string

Den ytterligare informationstypen.

ErrorDetail

Felinformationen.

Name Typ Description
additionalInfo

ErrorAdditionalInfo[]

Ytterligare information om felet.

code

string

Felkoden.

details

ErrorDetail[]

Felinformationen.

message

string

Felmeddelandet.

target

string

Felmålet.

ErrorResponse

Felsvar

Name Typ Description
error

ErrorDetail

Felobjektet.

LongRunningOperationResult

Svarsmodellen för ett Long-Running Operations API.

Name Typ Description
created

string

Den skapade tidsstämpeln.

error

ErrorDetail

Felinformationen.

operationId

string

ID:t för den här långvariga åtgärden.

status

LroStatus

Statustillståndet för begäran.

warning

ErrorDetail

Felinformationen.

LroStatus

Statustillståndet för begäran.

Name Typ Description
Failed

string

Begäran har ett eller flera fel.

NotStarted

string

Begäran har inte börjat bearbetas än.

Running

string

Begäran har börjat bearbetas.

Succeeded

string

Begäran har slutförts.