Data - Update Preview
La demande de mise à jour permet à l’appelant de mettre à jour le contenu de données précédemment chargé à l’aide du chargement de données.
S’applique à : Niveau tarifaire S1.
L’API De mise à jour des données permet à l’appelant de mettre à jour un contenu de données précédemment chargé.
Vous pouvez utiliser cette API dans un scénario tel que l’ajout ou la suppression de limites géographiques dans ou à partir d’une collection existante de limites géographiques. Les limites géographiques sont chargées à l’aide de l’API de chargement de données, pour une utilisation dans le service de géofencing Azure Maps.
Notez que l’API de mise à jour remplacera et remplacera le contenu de données existant.
Notes
Retrait du service de données Azure Maps
Le service Data Azure Maps (v1 et v2) est désormais déconseillé et sera mis hors service le 16/09/2024. Pour éviter les interruptions de service, tous les appels au service Data devront être mis à jour pour utiliser le service Data Registry d’Azure Maps avant le 16/09/2024. Pour plus d'informations, consultez Guide pratique pour créer un registre de données.
Envoyer une demande de mise à jour
Pour mettre à jour votre contenu, vous utiliserez une PUT
demande. Le corps de la demande contient les nouvelles données qui remplaceront les données existantes. L’en-tête Content-Type
est défini sur le type de contenu des données, et le chemin d’accès contient le udid
des données à mettre à jour.
Par exemple, pour mettre à jour une collection de limites géographiques précédemment chargées à l’aide de l’API De chargement, placez le nouveau contenu de limite géographique dans le corps de la demande. Définissez le udid
paramètre dans le chemin d’accès au udid
des données reçues précédemment dans la réponse de l’API de chargement. Et définissez l’en-tête Content-Type
sur l’un des types de médias suivants :
application/json
application/vnd.geo+json
application/octet-stream
Voici un exemple de corps de demande pour mettre à jour une limite géographique simple. Il est représenté sous la forme d’une géométrie de cercle à l’aide d’un point central et d’un rayon. L’exemple ci-dessous se trouve dans GeoJSON
:
{
"type": "FeatureCollection",
"features": [{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [-122.126986, 47.639754]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}]
}
La limite géographique précédemment chargée avait un rayon de 100m. La requête ci-dessus la met à jour sur 500m.
L’API De mise à jour des données effectue une opération de longue durée.
Limites de mise à jour des données
N’oubliez pas qu’actuellement, chaque compte Azure Maps a une limite de stockage de données.
Une fois la limite de stockage atteinte, tous les nouveaux appels d’API de chargement retournent une 409 Conflict
réponse d’erreur HTTP.
Vous pouvez toujours utiliser l’API De suppression de données pour supprimer du contenu ancien/inutilisé et créer de l’espace pour les nouveaux chargements.
PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?api-version=1.0
PUT https://{geography}.atlas.microsoft.com/mapData/{udid}?subscription-key={subscription-key}&api-version=1.0
Paramètres URI
Nom | Dans | Obligatoire | Type | Description |
---|---|---|---|---|
geography
|
path | True |
string |
Ce paramètre spécifie l’emplacement de la ressource Azure Maps Creator. Les valeurs valides sont us et eu. |
udid
|
path | True |
string |
ID de données unique pour le contenu. Le |
api-version
|
query | True |
string |
Numéro de version de l’API Azure Maps. La version actuelle est 1.0 |
subscription-key
|
query |
string |
L’une des clés Azure Maps fournies par un compte Azure Map. Reportez-vous à cet article pour plus d’informations sur la gestion de l’authentification. |
En-tête de la demande
Nom | Obligatoire | Type | Description |
---|---|---|---|
x-ms-client-id |
string |
Spécifie le compte destiné à être utilisé conjointement avec le modèle de sécurité Microsoft Entra ID. Il représente un ID unique pour le compte Azure Maps et peut être récupéré à partir de l’API compte du plan de gestion Azure Maps. Pour utiliser Microsoft Entra ID sécurité dans Azure Maps consultez les articles suivants pour obtenir des conseils. |
Corps de la demande
Nom | Type | Description |
---|---|---|
UpdateContent |
object |
Nouveau contenu qui mettra à jour/remplacera le contenu précédemment chargé. |
Réponses
Nom | Type | Description |
---|---|---|
200 OK |
Échec de la mise à jour des données. Le contenu chargé n’a pas satisfait à toutes les vérifications de validation. Le corps de la réponse contient toutes les erreurs qui ont été rencontrées. |
|
201 Created |
La ressource a été créée avec succès. Headers Location: string |
|
202 Accepted |
Pris en charge uniquement pour la requête asynchrone. Demande acceptée : la demande a été acceptée pour traitement. Utilisez l’URL dans l’en-tête d’emplacement pour réessayer ou accéder aux résultats. Headers Location: string |
|
400 Bad Request |
Demande incorrecte : un ou plusieurs paramètres ont été spécifiés de manière incorrecte ou s’excluent mutuellement. |
|
401 Unauthorized |
Accès refusé en raison d’une clé d’abonnement non valide ou d’un jeton du porteur Microsoft Entra ID non valide. Veillez à fournir une clé valide pour un abonnement Azure actif et une ressource Maps. Sinon, vérifiez l’en-tête WWW-Authenticate pour le code d’erreur et la description du jeton du porteur Microsoft Entra ID fourni. Headers WWW-Authenticate: string |
|
403 Forbidden |
Problèmes d’autorisation, de capacité ou d’authentification. |
|
404 Not Found |
Introuvable : la ressource demandée est introuvable, mais elle peut être à nouveau disponible à l’avenir. |
|
500 Internal Server Error |
Une erreur s’est produite lors du traitement de la demande. Veuillez réessayer plus tard. |
Sécurité
AADToken
Il s’agit des flux Microsoft Entra OAuth 2.0. Lorsqu’il est associé au contrôle d’accès en fonction du rôle Azure, il peut être utilisé pour contrôler l’accès à Azure Maps API REST. Les contrôles d’accès en fonction du rôle Azure sont utilisés pour désigner l’accès à un ou plusieurs Azure Maps compte de ressource ou sous-ressources. Tout utilisateur, groupe ou principal de service peut se voir accorder l’accès via un rôle intégré ou un rôle personnalisé composé d’une ou plusieurs autorisations pour Azure Maps API REST.
Pour implémenter des scénarios, nous vous recommandons d’afficher les concepts d’authentification. En résumé, cette définition de sécurité fournit une solution pour modéliser des applications via des objets capables de contrôler l’accès sur des API et des étendues spécifiques.
Notes
- Cette définition de sécurité nécessite l’utilisation de l’en-tête
x-ms-client-id
pour indiquer à quelle ressource Azure Maps l’application demande l’accès. Vous pouvez l’acquérir à partir de l’API de gestion maps.
est Authorization URL
spécifique au cloud public Azure instance. Les clouds souverains ont des URL d’autorisation et des configurations Microsoft Entra ID uniques.
* Le contrôle d’accès en fonction du rôle Azure est configuré à partir du plan de gestion Azure via Portail Azure, PowerShell, CLI, kits SDK Azure ou API REST.
* L’utilisation du Kit de développement logiciel (SDK) web Azure Maps permet une configuration basée sur la configuration d’une application pour plusieurs cas d’usage.
- Pour plus d’informations sur Plateforme d'identités Microsoft, consultez Plateforme d'identités Microsoft vue d’ensemble.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nom | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Il s’agit d’une clé partagée qui est provisionnée lorsque vous créez un compte Azure Maps dans le Portail Azure ou à l’aide de PowerShell, cli, kits SDK Azure ou API REST.
Avec cette clé, n’importe quelle application peut accéder à toutes les API REST. En d’autres termes, cette clé peut être utilisée comme clé master dans le compte dans lequel elle est émise.
Pour les applications exposées publiquement, nous vous recommandons d’utiliser l’approche des applications clientes confidentielles pour accéder Azure Maps API REST afin que votre clé puisse être stockée en toute sécurité.
Type:
apiKey
In:
query
SAS Token
Il s’agit d’un jeton de signature d’accès partagé créé à partir de l’opération Répertorier les SAP sur la ressource Azure Maps via le plan de gestion Azure via Portail Azure, PowerShell, CLI, kits SDK Azure ou API REST.
Avec ce jeton, toute application est autorisée à accéder avec des contrôles d’accès en fonction du rôle Azure et un contrôle précis à l’expiration, au taux et à la ou les régions d’utilisation du jeton particulier. En d’autres termes, le jeton SAP peut être utilisé pour permettre aux applications de contrôler l’accès de manière plus sécurisée que la clé partagée.
Pour les applications exposées publiquement, nous vous recommandons de configurer une liste spécifique d’origines autorisées sur la ressource de compte Map afin de limiter les abus de rendu et de renouveler régulièrement le jeton SAS.
Type:
apiKey
In:
header
Exemples
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?subscription-key=[subscription-key]&api-version=1.0
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [
-122.126986,
47.639754
]
},
"properties": {
"geometryId": "001",
"radius": 500
}
}
]
}
Sample Response
Location: https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0
Access-Control-Expose-Headers: Location
{
"operationId": "{operationId}",
"status": "Succeeded",
"created": "2020-01-02 1:02:03 AM +00:00",
"resourceLocation": "https://atlas.microsoft.com/mapData/metadata/{resourceId}?api-version=1.0"
}
Location: https://atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0
Access-Control-Expose-Headers: Location
{
"error": {
"code": "400 Bad Request",
"message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry."
}
}
{
"error": {
"code": "400 BadRequest",
"message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
}
}
{
"error": {
"code": "401 Unauthorized",
"message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription."
}
}
{
"error": {
"code": "403 Forbidden",
"message": "Permission, capacity, or authentication issues."
}
}
{
"error": {
"code": "404 NotFound",
"message": "Not Found: the requested resource could not be found, but it may be available again in the future."
}
}
{
"error": {
"code": "500 InternalServerError",
"message": "An error occurred while processing the request. Please try again later."
}
}
Définitions
Nom | Description |
---|---|
Long |
Modèle de réponse pour une API Long-Running Operations. |
OData |
Cet objet est retourné lorsqu’une erreur se produit dans l’API Azure Maps. |
OData |
Cet objet de réponse est retourné lorsqu’une erreur se produit dans l’API Azure Maps. |
type |
État status de la requête. |
LongRunningOperationResult
Modèle de réponse pour une API Long-Running Operations.
Nom | Type | Description |
---|---|---|
created |
string |
Horodatage créé. |
error |
Cet objet est retourné lorsqu’une erreur se produit dans l’API Azure Maps. |
|
operationId |
string |
ID de cette opération de longue durée. |
resourceLocation |
string |
URI d’emplacement pour plus d’informations sur la ressource créée. Ce n’est fourni que lorsque la demande a été effectuée avec succès. |
status |
État status de la requête. |
|
warning |
Cet objet est retourné lorsqu’une erreur se produit dans l’API Azure Maps. |
ODataError
Cet objet est retourné lorsqu’une erreur se produit dans l’API Azure Maps.
Nom | Type | Description |
---|---|---|
code |
string |
Code ODataError. |
details |
Cet objet est retourné lorsqu’une erreur se produit dans l’API Azure Maps. |
|
message |
string |
Le cas échéant, une description lisible de l’erreur. |
target |
string |
Si disponible, la cible à l’origine de l’erreur. |
ODataErrorResponse
Cet objet de réponse est retourné lorsqu’une erreur se produit dans l’API Azure Maps.
Nom | Type | Description |
---|---|---|
error |
Cet objet est retourné lorsqu’une erreur se produit dans l’API Azure Maps. |
type
État status de la requête.
Nom | Type | Description |
---|---|---|
Failed |
string |
La requête présente un ou plusieurs échecs. |
NotStarted |
string |
Le traitement de la demande n’a pas encore commencé. |
Running |
string |
Le traitement de la demande a commencé. |
Succeeded |
string |
La demande s’est terminée avec succès. |