Criar aplicativo

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

Crie um novo objeto application. Essa API também pode criar um objeto agentIdentityBlueprint quando a propriedade @odata.type é definida como #microsoft.graph.agentIdentityBlueprint.

Importante

Não compartilhe IDs de cliente de aplicativo (appId) na documentação da API ou em exemplos de código.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) AppRegistration.Create Application.ReadWrite.All
Delegado (conta pessoal da Microsoft) Application.ReadWrite.All Indisponível.
Application AppRegistration.Create Application.ReadWrite.OwnedBy, Application.ReadWrite.All

Importante

Para acesso delegado usando contas corporativas ou de estudante, o administrador deve receber uma função do Microsoft Entra com suporte ou uma função personalizada que conceda as permissões necessárias para esta operação. Esta operação dá suporte às seguintes funções internas, que fornecem apenas o menor privilégio necessário:

  • Um membro ou convidado não administrador que tenha permissões de usuário padrão, a menos que o acesso restrito do administrador do locatário.
  • Desenvolvedor de Aplicativos. Essa função pode criar aplicativos mesmo quando o administrador restringe o acesso a membros e convidados. A entidade de segurança com essa função recebe a propriedade do aplicativo que ela cria.
  • Gravadores de diretório. Essa função pode atualizar as propriedades da extensão.
  • Administrador de Identidade Híbrida. Essa função pode atualizar apenas propriedades básicas.
  • Administrador de Segurança
  • Administrador de Aplicativos de Nuvem
  • Administrador de Aplicativos

Em cenários delegados usando contas corporativas ou de estudante, os seguintes privilégios têm suporte para o gerenciamento de blueprints de identidade do agente:

  • O usuário conectado é o proprietário ou
  • O usuário conectado recebe a função de Administrador de ID de Agente .

Solicitação HTTP

POST /applications

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto application. O corpo da solicitação deve conter displayName, que é uma propriedade necessária. Para criar um agentIdentityBlueprint, defina também a propriedade @odata.type como #microsoft.graph.agentIdentityBlueprint.

Resposta

Se for bem-sucedido, esse método retornará 201 Created o código de resposta e um aplicativo ou objeto agentIdentityBlueprint no corpo da resposta.

Exemplos

Exemplo 1: Criar um aplicativo com as configurações padrão

Solicitação

O exemplo a seguir mostra uma solicitação.

POST https://graph.microsoft.com/beta/applications
Content-type: application/json

{
  "displayName": "Display name"
}

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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.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": null,
    "web": {
        "redirectUris": [],
        "homePageUrl": null,
        "logoutUrl": null,
        "implicitGrantSettings": {
            "enableIdTokenIssuance": false,
            "enableAccessTokenIssuance": false
        }
    },
    "windows" : null
}

Exemplo 2: Criar um novo aplicativo e adicionar um segredo de senha

Solicitação

POST https://graph.microsoft.com/beta/applications
Content-type: application/json

{
  "displayName": "MyAppName",
  "passwordCredentials": [
    {
      "displayName": "Password name"
    }
  ]
}

Resposta

O exemplo a seguir mostra a resposta. A propriedade secretText no objeto de resposta contém as senhas fortes ou o segredo gerado pelo Microsoft Entra ID e tem de 16 a 64 caracteres de comprimento. Não há como recuperar essa senha no futuro.

Observação: o objeto de resposta mostrado aqui pode ser encurtado com fins de legibilidade.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#applications/$entity",
    "id": "83ab4737-da9d-4084-86f2-f8fbec220647",
    "deletedDateTime": null,
    "appId": "9519e58c-bd06-4120-a7fd-2220d4de8409",
    "applicationTemplateId": null,
    "disabledByMicrosoftStatus": null,
    "createdDateTime": "2024-04-01T19:10:02.6626202Z",
    "displayName": "MyAppName",
    "description": null,
    "keyCredentials": [],
    "parentalControlSettings": {
        "countriesBlockedForMinors": [],
        "legalAgeGroupRule": "Allow"
    },
    "passwordCredentials": [
        {
            "customKeyIdentifier": null,
            "displayName": "Password name",
            "endDateTime": "2026-04-01T19:10:02.6576213Z",
            "hint": "puE",
            "keyId": "09a0c91a-1bc3-4eaf-a945-c88c041fad6c",
            "secretText": "1234567890abcdefghijklmnopqrstuvwxyzabcd",
            "startDateTime": "2024-04-01T19:10:02.6576213Z"
        }
    ],
    "publicClient": {
        "redirectUris": []
    }
}

Exemplo 3: Criar um novo aplicativo multilocatário limitado a apenas alguns locatários

Solicitação

O exemplo a seguir cria um aplicativo multilocatário que só pode ser usado em dois locatários permitidos do Microsoft Entra (e o locatário em que o aplicativo está registrado).

POST https://graph.microsoft.com/beta/applications
Content-type: application/json

{
  "displayName": "MyAppName",
  "signInAudience": "AzureADMultipleOrgs",
  "signInAudienceRestrictions": {
    "@odata.type": "#microsoft.graph.allowedTenantsAudience",
    "isHomeTenantAllowed": true,
    "allowedTenantIds": [
      "818ce016-78c2-457c-91d7-c02c2faaa5fe",
      "c62670b0-53a1-4a38-b26c-4093cbaa510a"
    ]
  }
}

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado com fins de legibilidade.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#applications/$entity",
    "id": "83ab4737-da9d-4084-86f2-f8fbec220647",
    "appId": "9519e58c-bd06-4120-a7fd-2220d4de8409",
    "createdDateTime": "2025-11-01T19:10:02.6626202Z",
    "displayName": "MyAppName",
    "signInAudience": "AzureADMultipleOrgs",
    "signInAudienceRestrictions": {
      "@odata.type": "#microsoft.graph.allowedTenantsAudience",
      "isHomeTenantAllowed": true,
      "allowedTenantIds": [
        "818ce016-78c2-457c-91d7-c02c2faaa5fe",
        "c62670b0-53a1-4a38-b26c-4093cbaa510a"
      ]
    }
}