Listar pacotes

Importante

As APIs sob a /beta versão estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção.

Recupera uma lista de todos os pacotes disponíveis no locatário.

Importante

O acesso à API de Gerenciamento de Pacotes requer uma licença do Microsoft Agent 365.

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) CopilotPackages.Read.All CopilotPackages.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application CopilotPackages.Read.All CopilotPackages.ReadWrite.All

Solicitação HTTP

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages

Cabeçalhos de solicitação

Nome Descrição
Authorization Bearer {token}. Obrigatório. Saiba mais sobre autenticação e autorização.

Parâmetros de consulta opcionais

Esse método dá suporte $filter ao parâmetro de consulta OData para ajudar a personalizar a resposta. As propriedades a seguir têm suporte com o parâmetro de $filter consulta OData. Para obter exemplos de como usar o $filter parâmetro de consulta, consulte Exemplos.

Parâmetro Tipo Descrição
supportedHosts string Filtrar por host com suporte (Copilot, Outlook, TeamsM365, )
elementTypes string Filtrar por tipo de elemento (Bots, DeclarativeAgent, CustomEngineAgent)
lastModifiedDateTime datetime Filtrar por data/hora da última atualização, usando ge ou le
platform string Filtrar por plataforma (Copilot Studio, Microsoft 365 Copilot Agent Builder)
requestStatus copilotPackageRequestStatus Filtrar por status da solicitação, usando pending (consulte Filtrar por propriedades da solicitação)
requestType copilotPackageRequestType Filtre pelo tipo de solicitação (consulte Filtrar por propriedades da solicitação)

Filtrar por propriedades da solicitação

As requestStatus propriedades and requestType descrevem uma solicitação que um usuário da organização enviou para um pacote. A filtragem em qualquer propriedade retorna os pacotes que os usuários solicitaram.

O comportamento não filtrado GET /copilot/admin/catalog/packages permanece inalterado.

Há suporte para as seguintes expressões de filtro:

  • requestStatus eq 'pending', que seleciona a fila de solicitação aberta. Outros requestStatus membros não têm suporte em um filtro.
  • Uma única eq comparação em requestType, em relação a publishum dos membros , activate, access, , ou update . Não filtre no membro sentinel unknownFutureValue .
  • Essas duas comparações se juntaram a and.
  • Uma ou ambas as comparações combinadas com um lastModifiedDateTime limite. Forneça um ge limite, um le limite ou ambos para expressar um intervalo inclusivo.

Você pode escrever os and conjuntos em qualquer ordem.

Uma lastModifiedDateTime associação se aplica ao valor do lastModifiedDateTime pacote, que é o mesmo valor retornado para essa propriedade. Ele não filtra quando um usuário enviou a solicitação. Um pacote que não tem valor lastModifiedDateTime não corresponde enquanto um associado está presente.

A filtragem por lastModifiedDateTime si só é um comportamento comum do catálogo e não retorna a fila de solicitações.

Os itens a seguir não são suportados e retornam 400 Bad Request:

  • Combinando uma propriedade de solicitação com supportedHosts, elementTypesou platform.
  • O eqoperador , gt, ou lt em lastModifiedDateTime, ou mais de um lastModifiedDateTime limite na mesma direção, como dois ge limites.
  • Os operadores , orneand andcontains.
  • $count com um filtro de solicitação.

As propriedades da solicitação não são classificáveis.

requestType e requestStatus são enumerações evolutivas, portanto, uma versão posterior do serviço pode retornar um membro que seu cliente não reconhece. Para obter mais informações, consulte Manipulando membros futuros em enumerações evolutivas.

Paginação de uma coleção filtrada

A paginação é orientada pelo servidor, portanto, o serviço determina quantas entradas cada página contém. Trate @odata.nextLink como uma URL opaca: solicite-a exatamente como ela é retornada, sem adicionar ou modificar opções de consulta.

Importante

Para respostas paginadas, use @odata.nextLink como o sinal de continuação. Continue solicitando o opaco @odata.nextLink até que ele esteja ausente. Não deduza a conclusão de um corpo de resposta quando um @odata.nextLink estiver presente.

As respostas a uma solicitação que filtra uma propriedade de solicitação não incluem uma @odata.count propriedade. Para mais informações, consulte Paginação de dados do Microsoft Graph em seu aplicativo.

Corpo da solicitação

Não forneça um corpo de solicitação para esse método.

Resposta

Se for bem-sucedido, esse método retornará um 200 OK código de resposta e uma coleção de objetos copilotPackage no corpo da resposta.

Exemplos

Exemplo 1: Listar todos os pacotes

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Diligent Teams Document Uploader",
      "type": "external",
      "shortDescription": "Allows direct upload of documents from Microsoft Office into Diligent Teams for sharing",
      "isBlocked": false,
      "supportedHosts": ["outlook", "word", "excel", "powerPoint"],
      "lastModifiedDateTime": "2023-11-20T19:02:02.241Z",
      "publisher": "Diligent Corporation",
      "availableTo": "all",
      "deployedTo": "none",
      "elementTypes": ["officeAddIn"],
      "platform": "web",
      "version": "1.0.0",
      "manifestVersion": "1.1",
      "manifestId": "diligent-teams-uploader",
      "appId": "aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb",
      "assetId": "asset-00001"
    }
  ]
}

Exemplo 2: Listar pacotes filtrados por host com suporte

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=supportedHosts/any(h:h eq 'Word')
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=supportedHosts/any(h:h eq 'Word')
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-cb65-505a-3d42-156df75a4xxy",
      "displayName": "Contoso Document Formatter",
      "type": "external",
      "shortDescription": "Formats Word documents according to company style guide",
      "isBlocked": false,
      "supportedHosts": ["Word"],
      "lastModifiedDateTime": "2025-10-06T00:07:20.1467852Z",
      "availableTo": "all",
      "deployedTo": "all"
    }
  ]
}

Exemplo 3: Listar pacotes filtrados por tipo de elemento

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=elementTypes/any(h:h eq 'OfficeAddIns')
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=elementTypes/any(h:h eq 'OfficeAddIns')
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-505a-3492-9871-134df75a4xxy",
      "displayName": "Northwind Traders Account Lookup",
      "type": "external",
      "shortDescription": "Look up customer account details in Outlook and add them to email",
      "isBlocked": false,
      "supportedHosts": ["Outlook"],
      "lastModifiedDateTime": "2025-10-06T00:07:20.1467852Z",
      "availableTo": "all",
      "deployedTo": "all"
    }
  ]
}

Exemplo 4: Listar pacotes por data/hora da última atualização

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=lastModifiedDateTime ge 2026-01-01T00:00:00.0000000Z
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=lastModifiedDateTime ge 2026-01-01T00:00:00.0000000Z
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Contoso HR Agent",
      "type": "custom",
      "shortDescription": "Agent that can answer HR questions",
      "isBlocked": false,
      "supportedHosts": ["Copilot"],
      "lastModifiedDateTime": "2026-01-06T00:07:20.1467852Z",
      "availableTo": "all",
      "deployedTo": "all"
    }
  ]
}

Exemplo 5: Listar todos os agentes

Para listar todos os agentes, use um filtro que supportedHosts contenha Copilot

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=supportedHosts/any(h:h eq 'Copilot')
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=supportedHosts/any(h:h eq 'Copilot')
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Contoso HR Agent",
      "type": "custom",
      "shortDescription": "Agent that can answer HR questions",
      "isBlocked": false,
      "supportedHosts": ["Copilot"],
      "lastModifiedDateTime": "2026-01-06T00:07:20.1467852Z",
      "availableTo": "all",
      "deployedTo": "all"
    }
  ]
}

Exemplo 6: Listar pacotes solicitados pelos usuários

Solicitação

O exemplo a seguir mostra uma solicitação que retorna os pacotes com uma solicitação aberta.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=requestStatus eq 'pending'
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=requestStatus eq 'pending'
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Contoso HR Agent",
      "type": "custom",
      "shortDescription": "Agent that can answer HR questions",
      "isBlocked": false,
      "supportedHosts": ["Copilot"],
      "lastModifiedDateTime": "2026-08-06T00:07:20.1467852Z",
      "availableTo": "none",
      "deployedTo": "none",
      "requestType": "publish",
      "requestStatus": "pending"
    },
    {
      "id": "P_38cd4yy2-71de-4f6b-9c05-284ef86b5zzt",
      "displayName": "Northwind Traders Account Lookup",
      "type": "external",
      "shortDescription": "Look up customer account details in Outlook and add them to email",
      "isBlocked": false,
      "supportedHosts": ["Outlook"],
      "lastModifiedDateTime": "2026-08-11T18:22:04.5510000Z",
      "availableTo": "some",
      "deployedTo": "some",
      "requestType": "update",
      "requestStatus": "pending"
    }
  ]
}

Exemplo 7: Listar pacotes que os usuários pediram para publicar

Solicitação

O exemplo a seguir mostra uma solicitação que retorna apenas os pacotes que os usuários pediram para publicar.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=requestType eq 'publish'
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=requestType eq 'publish'
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Contoso HR Agent",
      "type": "custom",
      "shortDescription": "Agent that can answer HR questions",
      "isBlocked": false,
      "supportedHosts": ["Copilot"],
      "lastModifiedDateTime": "2026-08-06T00:07:20.1467852Z",
      "availableTo": "none",
      "deployedTo": "none",
      "requestType": "publish",
      "requestStatus": "pending"
    }
  ]
}

Exemplo 8: combinar os dois filtros de solicitação

Solicitação

O exemplo a seguir mostra uma solicitação que combina as duas propriedades de solicitação com and.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=requestStatus eq 'pending' and requestType eq 'publish'
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=requestStatus eq 'pending' and requestType eq 'publish'
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Contoso HR Agent",
      "type": "custom",
      "shortDescription": "Agent that can answer HR questions",
      "isBlocked": false,
      "supportedHosts": ["Copilot"],
      "lastModifiedDateTime": "2026-08-06T00:07:20.1467852Z",
      "availableTo": "none",
      "deployedTo": "none",
      "requestType": "publish",
      "requestStatus": "pending"
    }
  ]
}

Exemplo 9: Listar solicitações pendentes por lastModifiedDateTime

Solicitação

O exemplo a seguir mostra uma solicitação que retorna os pacotes com uma solicitação aberta cujo lastModifiedDateTime valor é igual ou posterior a uma data.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=requestStatus eq 'pending' and lastModifiedDateTime ge 2026-08-10T00:00:00.0000000Z
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=requestStatus eq 'pending' and lastModifiedDateTime ge 2026-08-10T00:00:00.0000000Z
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_38cd4yy2-71de-4f6b-9c05-284ef86b5zzt",
      "displayName": "Northwind Traders Account Lookup",
      "type": "external",
      "shortDescription": "Look up customer account details in Outlook and add them to email",
      "isBlocked": false,
      "supportedHosts": ["Outlook"],
      "lastModifiedDateTime": "2026-08-11T18:22:04.5510000Z",
      "availableTo": "some",
      "deployedTo": "some",
      "requestType": "update",
      "requestStatus": "pending"
    }
  ]
}

Exemplo 10: Listar um tipo de solicitação em um lastModifiedDateTime intervalo

Solicitação

O exemplo a seguir mostra uma solicitação que retorna os pacotes que os usuários solicitaram a publicação, limitados àqueles cujo lastModifiedDateTime valor está dentro de um intervalo inclusivo.

GET https://graph.microsoft.com/v1.0/copilot/admin/catalog/packages?$filter=requestType eq 'publish' and lastModifiedDateTime ge 2026-08-01T00:00:00.0000000Z and lastModifiedDateTime le 2026-08-31T23:59:59.9999999Z
GET https://graph.microsoft.com/beta/copilot/admin/catalog/packages?$filter=requestType eq 'publish' and lastModifiedDateTime ge 2026-08-01T00:00:00.0000000Z and lastModifiedDateTime le 2026-08-31T23:59:59.9999999Z
Resposta

O exemplo a seguir mostra a resposta. O objeto de resposta mostrado aqui pode ser reduzido para facilitar a leitura.

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

{
  "value": [
    {
      "id": "P_19ae1zz1-56bc-505a-3d42-156df75a4xxy",
      "displayName": "Contoso HR Agent",
      "type": "custom",
      "shortDescription": "Agent that can answer HR questions",
      "isBlocked": false,
      "supportedHosts": ["Copilot"],
      "lastModifiedDateTime": "2026-08-06T00:07:20.1467852Z",
      "availableTo": "none",
      "deployedTo": "none",
      "requestType": "publish",
      "requestStatus": "pending"
    }
  ]
}