Compartilhar via


Visão geral da API Web de portais

A API Web de portais permite uma experiência de usuário mais avançada em sites do Power Pages. Você pode usar a API Web para executar operações para criar, ler, atualizar e excluir em todas as tabelas do Microsoft Dataverse a partir de páginas da Web. Por exemplo, você pode criar uma nova conta, atualizar um contato, sem usar um formulário ou um formulário de várias etapas por meio da API da Web de portais.

Importante

  • Sua versão do site do Power Pages deve ser 9.3.3.x ou posterior para que este recurso funcione.
  • A API Web de portais foi desenvolvida para criar uma experiência de usuário rica em páginas de portais. Ela não foi otimizada para integração com serviços ou aplicativos de terceiros. Também não há suporte para o uso da API da Web dos portais para integração com outros sites do Power Pages.
  • As operações de API Web estão limitadas a tabelas relacionadas a dados. Por exemplo, contas, contatos ou tabelas personalizadas. A API Web de portais não dá suporte à configuração de metadados da tabela ou dados da tabela de configuração do portal. Por exemplo, configurar tabelas de portais, como adx_contentsnippet, adx_entityform ou adx_entitylist. Para obter uma lista completa, acesse as tabelas de configuração não compatíveis, mais adiante neste tópico.
  • Os portais da API Web se beneficiam de cache do servidor, tornando as chamadas subsequentes para a API Web mais rápidas do que as chamadas iniciais. Observe que limpar o cache do servidor do portal causa degradação temporária do desempenho.
  • As operações da API Web de portals exigem uma licença do Power Pages. Por exemplo, chamadas de API Web feitas por usuários anônimos contam na capacidade do usuário anônimo. As chamadas de API Web feitas por usuários autenticados (internos ou externos) não contam em exibições de página, mas exigem licenças de capacidade do usuário autenticado aplicáveis. Para obter mais informações: Perguntas frequentes sobre licenciamento do Power Pages

Operações da API Web

A API Web de portais oferece um subconjunto de recursos para operações do Dataverse que você pode executar usando a API Dataverse. Mantivemos o formato da API o mais semelhante possível para reduzir a curva de aprendizado.

Observação

As operações da API Web diferenciam maiúsculas de minúsculas.

Operações da API Web disponíveis no Power Pages

Observação

Não há suporte a chamadas de ações e funções usando da API Web dos portais.

Configurações do site para a API Web

É necessário habilitar a configuração do site para habilitar a API Web de portais para o seu portal. Você também pode configurar a API Web em nível de campo que determina os campos da tabela que podem ou não ser modificados com a API Web de portais.

Observação

Usar a tabela nome lógico para essas configurações (por exemplo conta).

Nome da configuração do site Descrição
Webapi/<table name>/enabled Habilita ou desabilita a API Web para <table name>.
Padrão:False
Valores válidos:True, False
Webapi/<table name>/fields Define a lista de atributos separados por vírgulas que podem ser modificados com a API Web.
Valores possíveis:
- Todos os atributos:*
- Atributos específicos:attr1,attr2,attr3
Observação: o valor deve ser um asterisco (*) ou uma lista de nomes de campos separados por vírgulas.
Importante: esta é uma configuração de site obrigatória. Quando esta configuração estiver faltando, você verá o erro "Nenhum campo definido para esta entidade".
Webapi/error/innererror Habilita ou desabilita InnerError.
Padrão:False
Valores válidos:True, False
Webapi/<table name>/disableodatafilter Habilita ou desabilita o filtro OData.
Padrão:False
Valores válidos:True, False Consulte problemas conhecidos para obter mais informações. A configuração do site está disponível na versão do portal 9.4.10.74 ou posterior.

Observação

As configurações do site devem ser definidas como Ativas para que as alterações entrem em vigor.

Por exemplo, para expor a API Web da tabela de Casos em que usuários autenticados podem executar operações de criação, atualização e exclusão nesta entidade, as configurações do site são exibidas na seguinte tabela.

Nome da configuração do site Valor de configuração do site
Webapi/incident/enabled true
Webapi/incident/fields attr1, attr2, attr3

Segurança com a API Web de portais

É possível configurar a segurança baseada em registros para registros individuais em portais usando as permissões de tabela. A API Web de portais acessa registros da tabela (entidade) e segue as permissões da tabela fornecidas a usuários por meio da função Web associada.

Você pode configurar permissões de coluna para definir ainda mais privilégios para colunas individuais em uma tabela ao usar a API Web dos portais.

Autenticação de solicitações da API Web de portais

Você não precisa incluir um código de autenticação porque a autenticação e a autorização são gerenciadas pela sessão do aplicativo. Todas as chamadas da API Web devem incluir um token de solicitação intersite forjada (CSRF).

Uso de EntitySetName

Ao se referir a tabelas do Dataverse que usam a API Web de portais em seu código, você precisa usar o EntitySetName, por exemplo, para acessar o tabela conta, a sintaxe do código usará o EntitySetName de contas; /_api/accounts().

Observação

Usar a tabela nome lógico para configurações do site (por exemplo conta).

Você pode determinar EntitySetName de tabelas específicas seguindo estas etapas:

  1. Acessar o https://make.powerapps.com

  2. Selecione a guia Dataverse no painel lateral e selecione a tabela.

  3. Selecione ... (opção Comandos) e escolha Avançado, Ferramentas e Copiar nome do conjunto para copiar EntitySetName da tabela para a área de transferência.

    Como localizar EntitySetName de uma tabela do Dataverse.

Leis e regulamentos de privacidade

Todos os cabeçalhos de solicitação terão uma ID de contato passada para fins de auditoria. Para um usuário anônimo, isso será transmitido como null.

Se o registro em log de auditoria estiver habilitado, o usuário poderá ver todos os eventos de auditoria no log de auditoria do Office 365.

Log de auditoria do Office 365.

Mais informações:
Habilitar e usar o log de atividades
Exportar, configurar e exibir registros do log de auditoria

Tabelas de configuração não compatíveis

A API Web de portais não pode ser usada para as seguintes tabelas de configuração:

adx_contentaccesslevel

adx_contentsnippet

adx_entityform

adx_entityformmetadata

adx_entitylist

adx_entitypermission

adx_entitypermission_webrole

adx_externalidentity

adx_pagealert

adx_pagenotification

adx_pagetag

adx_pagetag_webpage

adx_pagetemplate

adx_portallanguage

adx_publishingstate

adx_publishingstatetransitionrule

adx_publishingstatetransitionrule_webrole

adx_redirect

adx_setting

adx_shortcut

adx_sitemarker

adx_sitesetting

adx_urlhistory

adx_webfile

adx_webfilelog

adx_webform

adx_webformmetadata

adx_webformsession

adx_webformstep

adx_weblink

adx_weblinkset

adx_webnotificationentity

adx_webnotificationurl

adx_webpage

adx_webpage_tag

adx_webpageaccesscontrolrule

adx_webpageaccesscontrolrule_webrole

adx_webpagehistory

adx_webpagelog

adx_webrole_systemuser

adx_website

adx_website_list

adx_website_sponsor

adx_websiteaccess

adx_websiteaccess_webrole

adx_websitebinding

adx_websitelanguage

adx_webtemplate

Problemas conhecidos

Os usuários receberão um erro CDS se chamarem uma GET Solicitação de API Web para tabelas que têm vários níveis de 1 para muitos ou muitos para muitospermissões de tabela quando os escopos Primário, Contato ou Conta incluem condições adicionais à query.

Para resolver esse problema, a solução recomendada é usar FetchXML na consulta OData.

Outra opção é definir Webapi/<table name>/disableodatafilter como True.

Importante

Alterar a configuração do site Webapi/<table name>/disableodatafilter para True pode resultar em desempenho mais lento para chamadas GET da API Web.

A configuração do site está disponível na versão do portal 9.4.10.74 ou posterior.

Próxima etapa

Consultar dados usando portais API Web

Confira também