Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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 agentInstance .
Esta API está disponível nas seguintes implementações de cloud nacionais.
| Serviço global | US Government L4 | US Government L5 (DOD) | China operada pela 21Vianet |
|---|---|---|---|
| ✅ | ❌ | ❌ | ❌ |
Permissões
Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.
| Tipo de permissão | Permissões com menos privilégios | Permissões com privilégios superiores |
|---|---|---|
| Delegado (conta corporativa ou de estudante) | AgentInstance.ReadWrite.All | Indisponível. |
| Delegado (conta pessoal da Microsoft) | Sem suporte. | Sem suporte. |
| Application | AgentInstance.ReadWrite.All | AgentInstance.ReadWrite.ManagedBy |
Importante
Ao utilizar permissões delegadas, tem de ser atribuída ao utilizador autenticado uma função de Microsoft Entra suportada ou uma função personalizada com uma permissão de função suportada. O Administrador de Registo do Agente é a função com menos privilégios suportada para esta operação.
Solicitação HTTP
POST /agentRegistry/agentInstances
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 do pedido, forneça uma representação JSON do objeto agentInstance .
Pode especificar as seguintes propriedades ao criar um agentInstance.
| Propriedade | Tipo | Descrição |
|---|---|---|
| ownerIds | String collection | Lista de identificadores de proprietário da instância do agente. Obrigatório. |
| managedBy | Cadeia de caracteres | Identificador da aplicação que gere este agente. Opcional. |
| originatingStore | Cadeia de caracteres | Nome do arquivo/sistema de origem do agente. Opcional. |
| displayName | Cadeia de caracteres | Nome a apresentar para a instância do agente. Obrigatório. |
| sourceAgentId | Cadeia de caracteres | Identificador de agente original do sistema de origem. Opcional. |
| agentIdentityBlueprintId | Cadeia de caracteres | Identificador de esquema de identidade do agente. Opcional. |
| agentIdentityId | Cadeia de caracteres | Identificador de identidade do agente Entra. Opcional. |
| agentUserId | Cadeia de caracteres | Identificador de utilizador associado ao agente. Opcional. |
| url | Cadeia de caracteres | URL de ponto final para a instância do agente. Opcional. |
| preferredTransport | Cadeia de caracteres | Protocolo de transporte preferencial (JSONRPC, GRPC, HTTP+JSON). Opcional. |
| additionalInterfaces | agentInterface collection | Interfaces/transportes adicionais suportados pelo agente (URL, transporte). Opcional. |
| assinaturas | coleção agentCardSignature | Assinaturas digitais para a instância do agente (protegido, assinatura, cabeçalho). Opcional. |
Resposta
Se for bem-sucedido, este método devolve um 201 Created código de resposta e um objeto agentInstance no corpo da resposta.
Exemplos
Exemplo 1: Criar um agentInstance com um novo agenteCardManifest
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/agentRegistry/agentInstances
Content-Type: application/json
{
"id": "Security Copilot Platform Agent: 00222",
"ownerIds": [
"daf58b0e-44e1-433c-b6b0-ca70cae320b8",
"b9108c41-d2d2-4e78-b073-92f57b752bd0"
],
"managedBy": "719cc904-9700-4e08-9941-fd826cc84c60",
"originatingStore": "Microsoft Security Copilot",
"createdBy": "d47bffae-411a-4de9-8548-05e79bc01f0d",
"displayName": "Conditional Access Agent",
"sourceAgentId": "00222",
"agentIdentityBlueprintId": "d0108c41-d2d2-4e78-b073-92f57b752bd0",
"agentIdentityId": "dd108c41-d2d2-4e78-b073-92f57b752bd0",
"agentUserId": "ee108c41-d2d2-4e78-b073-92f57b752bd0",
"createdDateTime": "2025-01-01T00:00:00.1234567Z",
"lastModifiedDateTime": "2025-01-01T00:00:00.1234567Z",
"url": "https://conditional-access-agent.example.com/a2a/v1",
"preferredTransport": "JSONRPC",
"additionalInterfaces": [
{
"url": "https://conditional-access-agent.example.com/a2a/v1",
"transport": "JSONRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/grpc",
"transport": "GRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/json",
"transport": "HTTP+JSON"
}
],
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDp3ZWI6Y29udG9zby5leGFtcGxlI2tleS0xIiwidHlwIjoiYWdlbnRjYXJkK2p3cyJ9",
"signature": "xOSim9oMw_CdZM-qDhmwpB5fJcBx5I30yh-FZULd1j9ruPEUBnJzmfCynNfH1KgmJ2B7ulAYc7D2iIb-4Ul-8w",
"header": {
"kidHint": "contoso-key-1",
"nonce": "f1e9b6c3-2f3a-4a3a-b604-1f9af3f2a9c0"
}
}
],
"agentCardManifest": {
"ownerIds": [
"0ef68a76-e247-41dd-947b-41282760a2ac"
],
"originatingStore": "Copilot Studio",
"displayName": "Conditional Access Agent Card",
"description": "Manages organizational conditional access policies",
"iconUrl": "https://example.com/icon.png",
"provider": {
"organization": "Test Organization",
"url": "https://test.com"
},
"protocolVersion": "1.0",
"version": "1.0.0",
"documentationUrl": "https://example.com/docs",
"capabilities": {
"streaming": false,
"pushNotifications": false,
"stateTransitionHistory": true,
"extensions": [
{
"uri": "https://contoso.example.com/a2a/capabilities/secureMessaging",
"description": null,
"required": false,
"params": {
"useHttps": true
}
}
]
},
"defaultInputModes": [
"application/json"
],
"defaultOutputModes": [
"application/json",
"text/html"
],
"supportsAuthenticatedExtendedCard": true,
"skills": [
{
"id": "threat-detection",
"displayName": "Threat Detection",
"description": "Detect security threats in real-time",
"tags": [
"security",
"threat",
"detection"
],
"examples": [
"Analyze this log for threats",
"Check for malware"
],
"inputModes": [
"application/json",
"text/plain"
],
"outputModes": [
"application/json",
"text/html"
]
}
]
}
}
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
{
"id": "Security Copilot Platform Agent: 00222",
"ownerIds": [
"daf58b0e-44e1-433c-b6b0-ca70cae320b8",
"b9108c41-d2d2-4e78-b073-92f57b752bd0"
],
"managedBy": "719cc904-9700-4e08-9941-fd826cc84c60",
"originatingStore": "Microsoft Security Copilot",
"createdBy": "d47bffae-411a-4de9-8548-05e79bc01f0d",
"displayName": "Conditional Access Agent",
"sourceAgentId": "00222",
"agentIdentityBlueprintId": "d0108c41-d2d2-4e78-b073-92f57b752bd0",
"agentIdentityId": "dd108c41-d2d2-4e78-b073-92f57b752bd0",
"agentUserId": "ee108c41-d2d2-4e78-b073-92f57b752bd0",
"createdDateTime": "2025-01-01T00:00:00.1234567Z",
"lastModifiedDateTime": "2025-01-01T00:00:00.1234567Z",
"url": "https://conditional-access-agent.example.com/a2a/v1",
"preferredTransport": "JSONRPC",
"additionalInterfaces": [
{
"url": "https://conditional-access-agent.example.com/a2a/v1",
"transport": "JSONRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/grpc",
"transport": "GRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/json",
"transport": "HTTP+JSON"
}
],
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDp3ZWI6Y29udG9zby5leGFtcGxlI2tleS0xIiwidHlwIjoiYWdlbnRjYXJkK2p3cyJ9",
"signature": "xOSim9oMw_CdZM-qDhmwpB5fJcBx5I30yh-FZULd1j9ruPEUBnJzmfCynNfH1KgmJ2B7ulAYc7D2iIb-4Ul-8w",
"header": {
"kidHint": "contoso-key-1",
"nonce": "f1e9b6c3-2f3a-4a3a-b604-1f9af3f2a9c0"
}
}
]
}
Exemplo 2: Criar um agentInstance e referenciar um agente existenteCardManifest
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/agentRegistry/agentInstances
Content-Type: application/json
{
"id": "Security Copilot Platform Agent: 00222",
"ownerIds": [
"daf58b0e-44e1-433c-b6b0-ca70cae320b8",
"b9108c41-d2d2-4e78-b073-92f57b752bd0"
],
"managedBy": "719cc904-9700-4e08-9941-fd826cc84c60",
"originatingStore": "Microsoft Security Copilot",
"createdBy": "d47bffae-411a-4de9-8548-05e79bc01f0d",
"displayName": "Conditional Access Agent",
"sourceAgentId": "00222",
"agentIdentityBlueprintId": "d0108c41-d2d2-4e78-b073-92f57b752bd0",
"agentIdentityId": "dd108c41-d2d2-4e78-b073-92f57b752bd0",
"agentUserId": "ee108c41-d2d2-4e78-b073-92f57b752bd0",
"createdDateTime": "2025-01-01T00:00:00.1234567Z",
"lastModifiedDateTime": "2025-01-01T00:00:00.1234567Z",
"url": "https://conditional-access-agent.example.com/a2a/v1",
"preferredTransport": "JSONRPC",
"additionalInterfaces": [
{
"url": "https://conditional-access-agent.example.com/a2a/v1",
"transport": "JSONRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/grpc",
"transport": "GRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/json",
"transport": "HTTP+JSON"
}
],
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDp3ZWI6Y29udG9zby5leGFtcGxlI2tleS0xIiwidHlwIjoiYWdlbnRjYXJkK2p3cyJ9",
"signature": "xOSim9oMw_CdZM-qDhmwpB5fJcBx5I30yh-FZULd1j9ruPEUBnJzmfCynNfH1KgmJ2B7ulAYc7D2iIb-4Ul-8w",
"header": {
"kidHint": "contoso-key-1",
"nonce": "f1e9b6c3-2f3a-4a3a-b604-1f9af3f2a9c0"
}
}
],
"agentCardManifest@odata.bind": "https://graph.microsoft.com/beta/agentRegistry/agentCardManifests('employee-assistant')"
}
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
{
"id": "Security Copilot Platform Agent: 00222",
"ownerIds": [
"daf58b0e-44e1-433c-b6b0-ca70cae320b8",
"b9108c41-d2d2-4e78-b073-92f57b752bd0"
],
"managedBy": "719cc904-9700-4e08-9941-fd826cc84c60",
"originatingStore": "Microsoft Security Copilot",
"createdBy": "d47bffae-411a-4de9-8548-05e79bc01f0d",
"displayName": "Conditional Access Agent",
"sourceAgentId": "00222",
"agentIdentityBlueprintId": "d0108c41-d2d2-4e78-b073-92f57b752bd0",
"agentIdentityId": "dd108c41-d2d2-4e78-b073-92f57b752bd0",
"agentUserId": "ee108c41-d2d2-4e78-b073-92f57b752bd0",
"createdDateTime": "2025-01-01T00:00:00.1234567Z",
"lastModifiedDateTime": "2025-01-01T00:00:00.1234567Z",
"url": "https://conditional-access-agent.example.com/a2a/v1",
"preferredTransport": "JSONRPC",
"additionalInterfaces": [
{
"url": "https://conditional-access-agent.example.com/a2a/v1",
"transport": "JSONRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/grpc",
"transport": "GRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/json",
"transport": "HTTP+JSON"
}
],
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDp3ZWI6Y29udG9zby5leGFtcGxlI2tleS0xIiwidHlwIjoiYWdlbnRjYXJkK2p3cyJ9",
"signature": "xOSim9oMw_CdZM-qDhmwpB5fJcBx5I30yh-FZULd1j9ruPEUBnJzmfCynNfH1KgmJ2B7ulAYc7D2iIb-4Ul-8w",
"header": {
"kidHint": "contoso-key-1",
"nonce": "f1e9b6c3-2f3a-4a3a-b604-1f9af3f2a9c0"
}
}
]
}
Exemplo 3: Criar um agentInstance sem o agentCardManifest
Solicitação
O exemplo a seguir mostra uma solicitação. Para adicionar um agentCardManifest mais tarde, utilize a API Update agentInstance.
POST https://graph.microsoft.com/beta/agentRegistry/agentInstances
Content-Type: application/json
{
"id": "Security Copilot Platform Agent: 00222",
"ownerIds": [
"daf58b0e-44e1-433c-b6b0-ca70cae320b8",
"b9108c41-d2d2-4e78-b073-92f57b752bd0"
],
"managedBy": "719cc904-9700-4e08-9941-fd826cc84c60",
"originatingStore": "Microsoft Security Copilot",
"createdBy": "d47bffae-411a-4de9-8548-05e79bc01f0d",
"displayName": "Conditional Access Agent",
"sourceAgentId": "00222",
"agentIdentityBlueprintId": "d0108c41-d2d2-4e78-b073-92f57b752bd0",
"agentIdentityId": "dd108c41-d2d2-4e78-b073-92f57b752bd0",
"agentUserId": "ee108c41-d2d2-4e78-b073-92f57b752bd0",
"createdDateTime": "2025-01-01T00:00:00.1234567Z",
"lastModifiedDateTime": "2025-01-01T00:00:00.1234567Z",
"url": "https://conditional-access-agent.example.com/a2a/v1",
"preferredTransport": "JSONRPC",
"additionalInterfaces": [
{
"url": "https://conditional-access-agent.example.com/a2a/v1",
"transport": "JSONRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/grpc",
"transport": "GRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/json",
"transport": "HTTP+JSON"
}
],
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDp3ZWI6Y29udG9zby5leGFtcGxlI2tleS0xIiwidHlwIjoiYWdlbnRjYXJkK2p3cyJ9",
"signature": "xOSim9oMw_CdZM-qDhmwpB5fJcBx5I30yh-FZULd1j9ruPEUBnJzmfCynNfH1KgmJ2B7ulAYc7D2iIb-4Ul-8w",
"header": {
"kidHint": "contoso-key-1",
"nonce": "f1e9b6c3-2f3a-4a3a-b604-1f9af3f2a9c0"
}
}
]
}
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
{
"id": "Security Copilot Platform Agent: 00222",
"ownerIds": [
"daf58b0e-44e1-433c-b6b0-ca70cae320b8",
"b9108c41-d2d2-4e78-b073-92f57b752bd0"
],
"managedBy": "719cc904-9700-4e08-9941-fd826cc84c60",
"originatingStore": "Microsoft Security Copilot",
"createdBy": "d47bffae-411a-4de9-8548-05e79bc01f0d",
"displayName": "Conditional Access Agent",
"sourceAgentId": "00222",
"agentIdentityBlueprintId": "d0108c41-d2d2-4e78-b073-92f57b752bd0",
"agentIdentityId": "dd108c41-d2d2-4e78-b073-92f57b752bd0",
"agentUserId": "ee108c41-d2d2-4e78-b073-92f57b752bd0",
"createdDateTime": "2025-01-01T00:00:00.1234567Z",
"lastModifiedDateTime": "2025-01-01T00:00:00.1234567Z",
"url": "https://conditional-access-agent.example.com/a2a/v1",
"preferredTransport": "JSONRPC",
"additionalInterfaces": [
{
"url": "https://conditional-access-agent.example.com/a2a/v1",
"transport": "JSONRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/grpc",
"transport": "GRPC"
},
{
"url": "https://conditional-access-agent.example.com/a2a/json",
"transport": "HTTP+JSON"
}
],
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsImtpZCI6ImRpZDp3ZWI6Y29udG9zby5leGFtcGxlI2tleS0xIiwidHlwIjoiYWdlbnRjYXJkK2p3cyJ9",
"signature": "xOSim9oMw_CdZM-qDhmwpB5fJcBx5I30yh-FZULd1j9ruPEUBnJzmfCynNfH1KgmJ2B7ulAYc7D2iIb-4Ul-8w",
"header": {
"kidHint": "contoso-key-1",
"nonce": "f1e9b6c3-2f3a-4a3a-b604-1f9af3f2a9c0"
}
}
]
}