utilisateur : translateExchangeIds

Espace de noms: microsoft.graph

Importante

Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .

Traduit les identificateurs des ressources Outlook entre les formats.

Cette API est disponible dans les déploiements cloud nationaux suivants.

Service global Gouvernement américain L4 Gouvernement américain L5 (DOD) Chine exploitée par 21Vianet
✅ ❌ ❌ ✅

Autorisations

Les tableaux suivants indiquent la ou les autorisations les moins privilégiées requises pour appeler cette API sur chaque type de ressource pris en charge. Suivez les bonnes pratiques pour demander les autorisations les moins privilégiées. Pour plus d’informations sur les autorisations déléguées et d’application, voir Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez la référence des autorisations.

Autorisations de traduction des ID Exchange pour l’utilisateur connecté :

POST /me/translateExchangeIds
Type d’autorisation Autorisations les moins privilégiées Autorisations à privilèges plus élevés
Déléguée (compte professionnel ou scolaire) User.ReadBasic.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, User.Read, User.Read.All, User.ReadWrite, User.ReadWrite.All
Déléguée (compte Microsoft personnel) User.Read User.ReadWrite
Application Non prise en charge. Non prise en charge.

Autorisations pour traduire les ID Exchange d’un utilisateur :

POST /users/{id | userPrincipalName}/translateExchangeIds
Type d’autorisation Autorisations les moins privilégiées Autorisations à privilèges plus élevés
Déléguée (compte professionnel ou scolaire) User.ReadBasic.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, User.Read, User.Read.All, User.ReadWrite, User.ReadWrite.All
Déléguée (compte Microsoft personnel) User.Read User.ReadWrite
Application User.Read.All AgentIdUser.ReadWrite.All, AgentIdUser.ReadWrite.IdentityParentedBy, User.ReadWrite.All

Requête HTTP

Pour traduire les identifiants Exchange de l’utilisateur connecté à l’aide des autorisations déléguées (/me) :

POST /me/translateExchangeIds

Pour traduire des ID Exchange en utilisant des autorisations déléguées ou d’application :

POST /users/{id | userPrincipalName}/translateExchangeIds

En-têtes de demande

Nom Valeur
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et les autorisations.

Corps de la demande

Paramètre Type Description
ID d’entrée String collection Collection d’identificateurs à convertir. Tous les identificateurs de la collection DOIVENT avoir le même type d’ID de source, et DOIVENT être pour les éléments de la même boîte aux lettres. La taille maximale de cette collection est de 1 000 chaînes.
sourceIdType exchangeIdFormat Type d’ID des identificateurs dans le inputIds paramètre.
targetIdType exchangeIdFormat Type d’ID demandé pour la conversion.

valeurs exchangeIdFormat

Member Description
entryId Format d’ID d’entrée binaire utilisé par les clients MAPI.
ewsId Format d’ID utilisé par les clients des services web Exchange.
immutableEntryId Format d’ID immuable compatible MAPI binaire.
restId Format d’ID par défaut utilisé par Microsoft Graph.
restImmutableEntryId Format d’ID immuable utilisé par Microsoft Graph.

Les formats binaires (entryId et immutableEntryId) sont encodés en base64 pour URL. La sécurité d’URL est implémentée en modifiant l’encodage base64 des données binaires de la manière suivante :

  • Remplacer + par -
  • Remplacer / par _
  • Supprimer les caractères de remplissage à la fin (=)
  • Ajouter un entier à la fin de la chaîne indiquant le nombre de caractères de remplissage présents dans le fichier d’origine (0, 1, ou 2)

Réponse

En cas de réussite, cette méthode renvoie un 200 OK code de réponse et une collection convertIdResult dans le corps de la réponse.

Exemple

L’exemple suivant montre comment convertir plusieurs identificateurs du format normal de l’API REST (restId) au format immuable REST (restImmutableEntryId).

Demande

Voici l’exemple de demande.

POST https://graph.microsoft.com/beta/me/translateExchangeIds
Content-Type: application/json

{
  "inputIds" : [
    "{rest-formatted-id-1}",
    "{rest-formatted-id-2}"
  ],
  "sourceIdType": "restId",
  "targetIdType": "restImmutableEntryId"
}

Réponse

Voici l’exemple de réponse

HTTP/1.1 200 OK
Content-type: application/json

{
  "value": [
    {
      "sourceId": "{rest-formatted-id-1}",
      "targetId": "{rest-immutable-formatted-id-1}"
    },
    {
      "sourceId": "{rest-formatted-id-2}",
      "targetId": "{rest-immutable-formatted-id-2}"
    }
  ]
}