Ir para o conteúdo

Estruturas Complexas de API REST no Jitterbit App Builder

Introdução

A API REST do App Builder suporta estruturas complexas de API REST para operações GET. Isso torna possível solicitar dados de várias tabelas e aninhar os resultados em uma única estrutura JSON retornada.

Nota

Outros métodos HTTP, como POST e PUT, não são suportados.

Configuração

  1. Navegue até App Builder IDE > Expandir Sua Empresa > Publicar

  2. Crie seu endpoint REST como de costume com sua tabela/endpoint raiz

  3. Clique no ícone Estrutura para seu endpoint

  4. Adicione recursos filhos conforme necessário

Parâmetros de recurso

Nome Descrição
Pai A tabela pai na hierarquia.
Nome O nome deste nó na estrutura da árvore. Observe que o nome pode incluir barras para aninhar a estrutura ainda mais.
Tabela A tabela da qual recuperar dados.
Tipo de Campo O tipo de campo.
  • Array de objetos: Este é o tipo padrão onde cada linha na tabela é um objeto JSON.
  • Array de escalares: Um array de itens de valor único, serializados em um array JSON de escalares. A tabela deve conter colunas Index e Value.
  • Objeto: Mapeia para um único objeto JSON (eliminando efetivamente o array JSON). A tabela deve retornar no máximo uma linha.
Expandir Por Padrão Se verdadeiro, a tabela é expandida por padrão (mostrada no JSON de saída). Se falso, o chamador REST precisará fornecer uma propriedade de string de consulta $expand=true para ver os dados
Observe que esta propriedade impacta apenas uma solicitação de coleção (por exemplo, /orders). Uma solicitação para um item específico em uma coleção (por exemplo, /orders/101) sempre expandirá tabelas filhas.
Limite Máximo de Itens Se fornecido, indica o limite máximo de itens que podem ser retornados em uma solicitação GET. Se NULL, o valor máximo padrão para a API REST é utilizado.
Vínculos de Recurso Configura os vínculos entre as tabelas pai e filho.

Mudanças nos parâmetros de consulta

Os seguintes parâmetros de consulta foram modificados para funcionar com estruturas complexas de API REST:

  • $fields permite especificar tabelas filhas:

    • Por exemplo, details/*: Todos os campos da tabela filha details.

    • Por exemplo, details/name: Apenas o campo name da tabela filha details.

    • Por exemplo, *: Todos os campos em todas as tabelas.

  • $expand um parâmetro verdadeiro/falso adicionado para permitir que o chamador REST expanda tabelas que não são expandidas por padrão (ou vice-versa). Usado apenas para solicitações de coleção:

    • Por exemplo, $expand=true.