Application Upsert

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 .

Créez un objet d’application s’il n’existe pas ou mettez à jour les propriétés d’un objet d’application existant.

Importante

L’utilisation d’un correctif pour établir passwordCredential n’est pas prise en charge. Utilisez les méthodes addPassword et removePassword pour mettre à jour le mot de passe ou le secret d’une application.

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

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) Application.ReadWrite.All Non disponible.
Déléguée (compte Microsoft personnel) Application.ReadWrite.All Non disponible.
Application Application.ReadWrite.OwnedBy Application.ReadWrite.All

Requête HTTP

Pour créer ou mettre à jour une application, spécifiez la clé alternative fournie par le client uniqueName .

PATCH /applications(uniqueName='{uniqueName}')

En-têtes de demande

Nom Description
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.
Content-Type application/json. Obligatoire.
Préférence create-if-missing. Requis pour le comportement d’upsert, sinon la requête est traitée comme une opération de mise à jour.

Corps de la demande

Dans le corps de la demande, fournissez une représentation JSON de l’objet d’application . Le corps de la demande doit contenir displayName, qui est une propriété obligatoire. Spécifiez d’autres propriétés accessibles en écriture si nécessaire pour votre application, pour la création ou la mise à jour.

Réponse

Si un objet d’application avec uniqueName n’existe pas, cette méthode renvoie un 201 Created code de réponse et un nouvel objet d’application dans le corps de la réponse. L’application reçoit la valeur uniqueName.

Si un objet d’application avec uniqueName n’existe pas et que l’en-tête Prefer: create-if-missingn’est pas spécifié, cette méthode renvoie un 404 Not Found code d’erreur.

Si un objet application avec uniqueName existe déjà, cette méthode met à jour l’objet application et retourne un 204 No Content code de réponse.

Exemples

Exemple 1 : Créer une application si elle n’existe pas

L’exemple suivant crée une application, car une application avec la valeur uniqueName spécifiée n’existe pas.

Demande

L’exemple suivant illustre une demande.

PATCH https://graph.microsoft.com/beta/applications(uniqueName='app-65278')
Content-Type: application/json
Prefer: create-if-missing

{
  "displayName": "Display name"
}

Réponse

L’exemple suivant illustre la réponse.

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#applications/$entity",
    "id": "03ef14b0-ca33-4840-8f4f-d6e91916010e",
    "deletedDateTime": null,
    "isFallbackPublicClient": null,
    "appId": "631a96bc-a705-4eda-9f99-fdaf9f54f6a2",
    "applicationTemplateId": null,
    "identifierUris": [],
    "createdDateTime": "2019-09-17T19:10:35.2742618Z",
    "displayName": "Display name",
    "isDeviceOnlyAuthSupported": null,
    "groupMembershipClaims": null,
    "optionalClaims": null,
    "addIns": [],
    "publisherDomain": "contoso.onmicrosoft.com",
    "samlMetadataUrl": "https://graph.microsoft.com/2h5hjaj542de/app",
    "signInAudience": "AzureADandPersonalMicrosoftAccount",
    "tags": [],
    "tokenEncryptionKeyId": null,
    "api": {
        "requestedAccessTokenVersion": 2,
        "acceptMappedClaims": null,
        "knownClientApplications": [],
        "oauth2PermissionScopes": [],
        "preAuthorizedApplications": []
    },
    "appRoles": [],
    "publicClient": {
        "redirectUris": []
    },
    "info": {
        "termsOfServiceUrl": null,
        "supportUrl": null,
        "privacyStatementUrl": null,
        "marketingUrl": null,
        "logoUrl": null
    },
    "keyCredentials": [],
    "parentalControlSettings": {
        "countriesBlockedForMinors": [],
        "legalAgeGroupRule": "Allow"
    },
    "passwordCredentials": [],
    "requiredResourceAccess": [],
    "uniqueName": "app-65278",
    "web": {
        "redirectUris": [],
        "homePageUrl": null,
        "logoutUrl": null,
        "implicitGrantSettings": {
            "enableIdTokenIssuance": false,
            "enableAccessTokenIssuance": false
        }
    }, 
    "windows" : null
}

Exemple 2 : Mettre à jour une application existante

L’exemple suivant met à jour l’application, car il existe une application avec la valeur uniqueName spécifiée.

Demande

L’exemple suivant illustre une demande.

PATCH https://graph.microsoft.com/beta/applications(uniqueName='app-65278')
Content-Type: application/json
Prefer: create-if-missing

{
  "displayName": "Display name"
}

Réponse

L’exemple suivant illustre la réponse.

HTTP/1.1 204 No Content