Compartir a través de


Aplicación Upsert

Espacio de nombres: microsoft.graph

Cree un nuevo objeto de aplicación si no existe o actualice las propiedades de un objeto de aplicación existente.

Importante

No es compatible con el uso de PATCH para establecer passwordCredential. Use los métodos addPassword y removePassword para actualizar la contraseña o el secreto de una aplicación.

Esta API está disponible en las siguientes implementaciones nacionales de nube.

Servicio global Gobierno de EE. UU. L4 Us Government L5 (DOD) China operada por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) Application.ReadWrite.All No disponible.
Delegado (cuenta personal de Microsoft) Application.ReadWrite.All No disponible.
Aplicación Application.ReadWrite.OwnedBy Application.ReadWrite.All

Solicitud HTTP

Para crear o actualizar una aplicación, especifique la clave alternativa proporcionada por el cliente uniqueName .

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

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización.
Content-Type application/json. Necesario.
Prefer create-if-missing. Necesario para el comportamiento de upsert; de lo contrario, la solicitud se trata como una operación de actualización.

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione una representación JSON del objeto de aplicación . El cuerpo de la solicitud debe contener displayName, que es una propiedad obligatoria. Especifique otras propiedades grabables según sea necesario para la aplicación, para su creación o actualización.

Respuesta

Si no existe un objeto de aplicación con uniqueName , este método devuelve un 201 Created código de respuesta y un nuevo objeto de aplicación en el cuerpo de la respuesta. A la aplicación se le asigna el valor uniqueName.

Si no existe un objeto de aplicación con uniqueName y no se especifica el Prefer: create-if-missing encabezado, este método devuelve un código de 404 Not Found error.

Si ya existe un objeto de aplicación con uniqueName , este método actualiza el objeto de aplicación y devuelve un 204 No Content código de respuesta.

Ejemplos

Ejemplo 1: Creación de una nueva aplicación si no existe

En el ejemplo siguiente se crea una aplicación porque no existe una aplicación con el valor de uniqueName especificado.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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

{
  "displayName": "Display name"
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$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
}

Ejemplo 2: Actualización de una aplicación existente

En el ejemplo siguiente se actualiza la aplicación porque existe una aplicación con el valor uniqueName especificado.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

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

{
  "displayName": "Display name"
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 204 No Content