Apidog Docs
🇵🇹 Português (Portugal)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇵🇹 Português (Portugal)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇵🇹 Português (Portugal)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
  1. Schemas
  • Centro de Aprendizagem da Apidog
  • Primeiros passos
    • Introdução ao Apidog
    • Conceitos Básicos no Apidog
    • Navegar no Apidog
    • Início rápido
      • Visão geral
      • Criar um Endpoint
      • Fazer um Pedido
      • Adicionar uma asserção
      • Criar Cenários de Teste
      • Partilhar Documentação da API
      • Explore Mais
    • Migração para o Apidog
      • Visão geral
      • Importação Manual
      • Importação Agendada (Vincular Fontes de Dados)
      • Opções de Importação
      • Exportar Dados
      • Importar de
        • Importar do Postman
        • Importar especificação OpenAPI
        • Importar cURL
        • Importar Markdowns
        • Importar a partir do Insomnia
        • Importar a partir de apiDoc
        • Importar Ficheiro .har
        • Importar WSDL
  • Apidog Europe
    • Apidog Europe
  • Dados de API mock
    • Visão geral
    • Smart Mock
    • Mock personalizado
    • Sequência de Prioridade do Mock
    • Scripts de Mock
    • Mock na Cloud
    • Mock do Runner Autoalojado
    • Idioma de Mock (Localidades)
  • Conta e preferências
    • Definições da Conta
    • Gerar um Token de Acesso OpenAPI
    • Notificações
    • Definições de Idioma
    • Teclas de Atalho
    • Configuração de Proxy de Rede
    • Cópia de Segurança dos Dados
    • Atualizar o Apidog
    • Eliminar Conta
    • Funcionalidades Experimentais
  • Enviar requisições
    • Visão geral
    • Depuração de SSE
    • Cliente MCP
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP ou WebService
    • GraphQL
    • gRPC
    • Utilizar Agentes de Proxy de Pedido para Depuração
    • Criar requisições
      • Histórico de Pedidos
      • Noções Básicas de Pedidos
      • Parâmetros e Corpo
      • Cabeçalhos do Pedido
      • Definições do Pedido
      • Depurar Pedidos
      • Guardar Pedidos como Endpoints
      • HTTP/2
    • Autenticação e autorização
      • Visão geral
      • Certificados CA e de Cliente
      • Tipos de autorização
      • Autenticação Digest
      • OAuth 1.0
      • OAuth 2.0
      • Autenticação Hawk
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • Resposta e cookies
      • Visualizar Respostas de API
      • Gerir Cookies
      • Visão geral
  • Desenvolver e depurar APIs
    • Visão geral
    • Gerar Pedidos
    • Enviar Pedidos
    • Casos de Depuração
    • Casos de Teste
    • Valores Dinâmicos
    • Validação de Respostas
    • Design-First vs Request-First
    • Geração de Código
    • Ambientes e variáveis
      • Visão geral
      • Utilizar Variáveis
      • Gestão de Ambientes
    • Segredos do cofre
      • Visão geral
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • Módulos de valores dinâmicos
      • Airline
      • Animal
      • Cor
      • Comércio
      • Empresa
      • Base de Dados
      • Tipo de dados
      • Data
      • Finanças
      • Alimentação
      • Git
      • Hacker
      • Helpers
      • Imagem
      • Internet
      • Localização
      • Lorem
      • Música
      • Número
      • Pessoa
      • Telefone
      • Ciência
      • String
      • Sistema
      • Veículo
      • Word
    • Pré e pós-processadores
      • Visão geral
      • Asserção
      • Extrair variável
      • Espera
      • Segurança
      • Operações de banco de dados
        • Visão geral
        • MySQL
        • MongoDB
        • Redis
        • Cliente Oracle
      • Uso de scripts
        • Visão geral
        • Scripts de Pré-processamento
        • Scripts de pós-processamento
        • Scripts Públicos
        • Referência de Scripts do Postman
        • Chamar Outras Linguagens de Programação
        • Utilizar Bibliotecas JS
        • Visualizar Respostas
        • Exemplos de scripts
          • Scripts de Asserção
          • Utilização de Variáveis
          • Modificar Pedidos
          • Outros exemplos
    • Depuração de APIs
      • Depurador de Agentes de IA
      • Depurador A2A
  • Projetar APIs
    • Visão geral
    • Criar um Novo Projeto de API
    • Noções Básicas de Endpoints
    • Diretrizes de Design de API
    • Módulo
    • Configurar vários exemplos de corpo do pedido
    • Componentes
    • Campos Comuns
    • Parâmetros Globais
    • Histórico de Alterações do Endpoint
    • Comentários
    • Gestão de Endpoints em Lote
    • API de Protocolo Personalizado
    • Modo Spec-first (Beta)
    • Esquemas de segurança
      • Visão geral
      • Criar um Esquema de Segurança
      • Utilizar o Esquema de Segurança
      • Esquema de Segurança na Documentação Online
    • Recursos avançados
      • Campos de Endpoint Personalizados
      • Cenários de Teste Associados
      • Estado do endpoint
      • Aparência das listas de parâmetros
      • Identificação Única de Endpoint
    • Schemas
      • Visão geral
      • Criar um Novo Schema
      • Criar um Schema
      • Gerar esquemas a partir de JSON, etc.
      • oneOf, allOf, anyOf
      • Utilizar Discriminator
  • Testes de API
    • Visão geral
    • Cenários de teste
      • Criar um Cenário de Teste
      • Passar Dados Entre Pedidos
      • Condições de Controlo de Fluxo
      • Sincronizar Dados de Endpoints e Casos de Endpoint
      • Importar Endpoints e Casos de Endpoint de Outros Projetos
      • Exportar Cenários de Teste
    • Relatórios de teste
      • Relatórios de Teste
    • Executar cenários de teste
      • Executar um cenário de teste
      • Executar cenários de teste em lote
      • Testes Orientados por Dados
      • Dados de Teste Partilhados
      • Tarefas agendadas
      • Gerir o ambiente de runtime de APIs de outros projetos
    • Suíte de testes
      • Visão geral
      • Criar Uma Suite de Testes
      • Orquestrar Conjunto de Testes
      • Executar Conjuntos de Testes Localmente
      • Executar conjuntos de testes via CLI
      • Tarefas agendadas
    • Testar APIs
      • Testes de Integração
      • Testes de desempenho
      • Testes de Ponta a Ponta
      • Teste de regressão
      • Testes de Contrato
    • Apidog CLI
      • Visão geral
      • Instalar e Executar o Apidog CLI
      • Opções da CLI do Apidog
    • CI/CD
      • Visão geral
      • Integrar com o Github Actions
      • Integrar com o Gitlab
      • Integrar com Jenkins
      • Acionar Teste por Commit Git
  • Publicar documentação de API
    • Visão geral
    • Tecnologias de API Suportadas
    • Partilha Rápida
    • Visualizar a Documentação da API
    • Documentação Markdown
    • Publicar Sites de Documentação
    • Página de Início de Sessão Personalizada
    • Layouts personalizados
    • CSS, JavaScript, HTML personalizados
    • Domínio Personalizado
    • Funcionalidades de IA
    • Definições de SEO
    • Configurações avançadas
      • Pesquisa na Documentação
      • Proxy CORS
      • Integrar o Google Analytics
      • Definições da Árvore de Pastas
      • Definições de Visibilidade
      • Incorporar Valores em URLs de Documentação
    • Versões da API
      • Visão geral
      • Criar Versões de API
      • Publicar versões de API
      • Partilhar Endpoints com Versões da API
  • Branches
    • Visão geral
    • Criar uma Branch de Sprint
    • Testar APIs numa Branch
    • Conceber APIs numa Ramificação
    • Mesclar Branches de Sprint
    • Gerir Branches de Sprint
    • AI Branch (Beta)
  • Recursos de IA
    • Visão geral
    • Ativar Funcionalidades de IA
    • Gerar Casos de Teste
    • Modificar esquemas com IA
    • Verificação de Conformidade do Endpoint
    • Verificação da Completude da Documentação da API
    • Nomeação de Campos com IA
    • Perguntas frequentes
  • Servidor MCP do Apidog
    • Visão geral
    • Ligar o Projeto Apidog à IA
    • Ligar Documentação Publicada à IA
    • Ligar Ficheiros OpenAPI à IA
  • Boas práticas
    • Tratamento de Assinaturas de API
    • Aceder a APIs Protegidas por OAuth 2.0
    • Fluxo de trabalho de colaboração
    • Gestão do Estado de Autenticação
  • Espaço offline
    • Visão geral
  • Administração
    • Gerenciamento de projetos
      • Gerir Projetos
      • Definições de Notificação
      • Gerir Membros do Projeto
      • Recursos do projeto
        • Ligação à Base de Dados
        • Ligação Git
    • Gerenciamento de equipes
      • Gerir Equipas
      • Gerir Membros da Equipa
      • Atividades da Equipa
      • Funções e permissões da equipa
      • Recursos da equipe
        • General Runner
        • Variáveis de Equipa
        • Agente Proxy de Pedidos
      • Colaborações em tempo real
        • Colaboração em Equipa
    • Checklist de integração
      • Conceitos Básicos
      • Guia de Integração Inicial
    • Gerenciamento da organização
      • Gerir a Organização
      • Funções e Permissões da Organização
      • Gerenciamento de planos
        • Gestores de Faturação em Organizações
      • Single Sign-On (SSO)
        • Visão Geral do SSO
        • Configurar o Microsoft Entra ID
        • Configurar o Okta
        • Configurar SSO para uma organização
        • Gerir Contas de Utilizador
        • Mapear Grupos para Equipas
      • Provisionamento SCIM
        • Introdução ao Provisionamento SCIM
        • Microsoft Entra ID
        • Okta
      • Recursos da organização
        • Self-Hosted Runner
  • Cobrança
    • Visão geral
    • Créditos
    • Atualizar o seu plano
    • Métodos de Pagamento Alternativos
    • Gestão de Subscrições
    • Mover Equipas Pagas para Organizações
  • Complementos
    • API Hub
    • Plugin Apidog Intellij IDEA
    • Extensão do navegador
      • Chrome
      • Microsoft Edge
    • Proxy de requisições
      • Proxy de pedidos na Web
      • Proxy de Pedidos em Documentação Partilhada
      • Proxy de Pedido no Cliente
  • Dados e segurança
    • Armazenamento e Segurança de Dados
    • Privacidade e Segurança dos Dados do Utilizador
    • Encaminhamento de Pedidos e Segurança dos Dados
  • Referências
    • Abordagem API Design-First
    • Extensões da Especificação OpenAPI do Apidog
    • JSONPath
    • XPath
    • Expressões Regulares
    • JSON Schema
    • Formato de ficheiro CSV
    • Instalar o Ambiente Java
    • Ambiente de Implementação do Runner
    • Sintaxe Markdown do Apidog
    • Extensões Swagger do Apidog
      • Visão geral
      • x-apidog-folder
      • x-apidog-status
      • x-apidog-name
      • x-apidog-maintainer
    • Extensões JSON Schema do Apidog
      • Visão geral
      • x-apidog-mock
      • x-apidog-orders
      • x-apidog-enum
  • Central de suporte
  1. Schemas

Criar um Schema

Utilizar o Editor de Schemas#

O Editor de Schemas é uma ferramenta poderosa que ajuda a conceber e modelar as estruturas de dados que a sua API utiliza. Baseia-se em JSON Schema e é utilizado para conceber estruturas de dados JSON ou XML.
Utilize o Editor de Schemas para:
Desenvolver corpos de pedidos e respostas da API adaptados a endpoints de API específicos.
Construir modelos de dados aplicáveis a uma ou várias APIs.
Todos os schemas começam com um objeto raiz. Para criar um schema, adicione propriedades a este objeto raiz.

Criar um Schema#

1
Adicionar Propriedades
Clique no sinal + (Adicionar um nó filho) junto ao objeto raiz para introduzir novas propriedades.
2
Nomear a Sua Propriedade
Introduza o nome (ou chave) da propriedade.
3
Selecionar o Tipo de Propriedade
Escolha tipos de dados comuns ou selecione referências para schemas predefinidos.
4
Definições Avançadas
Utilize o Editor de Tipos para atribuir tipos de dados, como valores predefinidos e formatos, a cada propriedade.
5
Gerir Propriedades
Reordene propriedades movendo-as, copiando-as ou eliminando-as. Também pode enriquecer as propriedades com descrições e marcá-las como obrigatórias.
Métodos Alternativos
Também pode criar novos schemas importando a partir de tabelas de bases de dados ou ficheiros de JSON schema. Saiba mais sobre Gerar Schemas a partir de JSON etc..

Tipo de Propriedade#

Em conformidade com a norma JSON Schema, o Editor de Schemas do Apidog suporta os seguintes tipos de dados básicos:
TipoDescrição
nullRepresenta um valor JSON "null".
booleanRepresenta um valor "true" ou "false", correspondente ao valor JSON "true" ou "false".
objectRepresenta uma coleção não ordenada de pares chave-valor, correspondente ao valor JSON "object".
arrayRepresenta uma lista ordenada de valores, correspondente ao valor JSON "array".
numberRepresenta um valor numérico decimal de base 10, de precisão arbitrária, correspondente ao valor JSON "number".
stringRepresenta uma cadeia de caracteres Unicode, correspondente ao valor JSON "string".
Tipo de Dados Array
Ao utilizar o tipo de dados array, será gerada automaticamente uma propriedade ITEMS de subnível. Esta especifica o tipo de dados dos elementos dentro do array.
Além das estruturas de dados padrão mencionadas anteriormente, o Editor de Schemas do Apidog também suporta o seguinte:
Referenciar outros schemas: Capacidade de referenciar e reutilizar schemas definidos noutro local dentro da documentação da API.
any: Representa um valor que pode ser de qualquer tipo de dados.
Composição de Schemas: Permite combinar vários schemas para criar estruturas de dados complexas.
Personalização: Permite aos utilizadores personalizar e adaptar o schema para cumprir requisitos específicos e necessidades de modelação de dados.

Referenciar Outros Schemas#

Pode utilizar a funcionalidade "Referenciar outros schemas" para referenciar schemas definidos anteriormente.
Depois de referenciar outro schema, pode ver o schema referenciado no Editor de Schemas.
Pontos principais sobre schemas referenciados:
Quaisquer modificações feitas ao schema original serão refletidas no schema que o referencia.
O schema referenciado não pode ser editado diretamente; para efetuar alterações, pode:
Clicar no nome do schema para navegar até ao schema original e editá-lo.
Ao clicar em Remover referência no schema, o schema será transformado numa série de propriedades independentes, permitindo-lhe editá-las individualmente.
Se precisar de modificar independentemente a definição de uma propriedade específica, pode optar por Remover referência dessa propriedade, permitindo modificações individuais. Quaisquer alterações ao schema original não afetarão a propriedade cuja referência foi removida.
Nos casos em que nem todas as propriedades do schema referenciado sejam necessárias no endpoint, pode clicar em Ocultar para ocultar propriedades desnecessárias.

Composição de Schemas#

Se uma propriedade na sua estrutura de dados puder ter vários tipos de dados possíveis, pode utilizar a Composição de Schemas para combinar vários schemas.
O Apidog suporta as seguintes palavras-chave de composição:
Palavra-chaveDescrição
allOf (AND)Especifica que a propriedade deve cumprir todos os schemas definidos na composição.
anyOf (OR)Especifica que a propriedade pode estar em conformidade com qualquer um dos schemas listados na composição.
oneOf (XOR)Especifica que a propriedade deve cumprir um e apenas um dos schemas definidos na composição.
Depois de selecionar Composição de Schemas, aparecerão subpropriedades chamadas "0" e "1" sob a propriedade, representando cada schema dentro da composição. Pode modificar o tipo de schema para cada subpropriedade e adicionar schemas adicionais conforme necessário.
Na documentação da API, a Composição de Schemas será apresentada assim:
Irá reparar nos dois objetos opcionais sob OneOf. Se pretender apresentar os respetivos nomes conforme mostrado na imagem, deve introduzir os nomes no campo title no Editor de Tipos.

Personalização#

Ao escolher "Personalizar", pode editar diretamente o JSON Schema dentro do editor.

Definições de Propriedades#

Para cada propriedade, existem vários botões localizados junto ao tipo de dados:
Botões de definições de propriedades
BotãoDescrição
*Indica se a propriedade é obrigatória.
NEspecifica se a propriedade permite valores nulos.
DefiniçõesPermite-lhe editar definições avançadas no Editor de Tipos.

Editor de Tipos#

O Editor de Tipos descreve visualmente uma propriedade em conformidade com JSON Schema.
Depois de configuradas estas definições avançadas, estas terão efeito nas seguintes áreas:
1.
Ao adicionar exemplos de resposta, pode clicar para gerar automaticamente com base nas definições.
2.
Serão apresentadas na documentação da API.
3.
No corpo do pedido, pode clicar para gerar automaticamente com base nas definições.
4.
Ao enviar um pedido, os dados devolvidos serão validados automaticamente em relação às definições.
5.
No serviço de mock, os dados da resposta serão gerados com base nas definições.

Propriedade Enumerada#

Para os tipos String, Integer e Number, o Apidog suporta enum. Ao ativar o comutador de enum, pode adicionar valores e descrições de enum. Além disso, pode efetuar Edição em Massa para valores de enum.

Mock#

Além das definições avançadas na propriedade, pode especificar conteúdo de mock para campos preenchendo valores de mock. Os valores de mock têm precedência sobre as definições nas definições avançadas.
Os valores de mock suportam a sintaxe Faker.js, permitindo-lhe escolher os dados faker pretendidos diretamente a partir das opções da lista pendente.
Os valores de mock também podem ser introduzidos como valores fixos.

Definições de XML#

Para dados XML, o Editor de Tipos no Apidog oferece Definições de XML adicionais. Pode ativar o comutador XML, configurar propriedades como nome da etiqueta, namespace, etc., e pré-visualizar a estrutura XML correspondente.

HashMap, Dicionário, Array#

HashMap, também conhecido como Map, dicionário ou array associativo. É uma coleção de pares chave-valor, em que os nomes das chaves podem ser qualquer conteúdo, em vez de predefinidos.
A especificação OpenAPI suporta a definição de um HashMap com chaves de cadeia de caracteres. Isto é feito definindo o tipo de elemento como object e, em seguida, utilizando a palavra-chave additionalProperties para especificar o tipo dos valores nos pares chave-valor.
Suponha que existe uma API de consulta de informações de utilizadores e que o formato dos dados devolvidos tem os seguintes requisitos:
1.
Os dados devolvidos são um objeto
2.
Os elementos filhos do objeto são pares chave-valor de um HashMap
3.
O ID do utilizador é a chave, e as informações do utilizador são o valor
Para definir isto no Apidog:
1
Crie um novo schema e dê-lhe o nome "UserProfiles".
2
Em "UserProfiles", especifique o nó raiz como um tipo "object". Em seguida, clique em Configuração Avançada, defina additionalProperties como Permitir e clique no botão Definições à direita.
Configuração de HashMap
3
Na janela pop-up, adicione as informações de utilizador necessárias, com o nome e o email do utilizador como campos do objeto. Guarda automaticamente.
Adicionar campos de informações de utilizador
4
Nas respostas da documentação da API, referencie o schema no nó raiz e selecione "user profiles", que acabou de criar.
Referenciar schema de perfis de utilizador
5
Clique em guardar e, em seguida, poderá ver o schema definido e os valores de exemplo no exemplo de resposta devolvida dentro da documentação da API.
Exemplo de schema na documentação da API

Objetos com additionalProperties#

À medida que o trabalho de desenvolvimento real itera, os objetos devolvidos pela API podem ter additionalProperties em comparação com o objeto originalmente definido. De acordo com a especificação OpenAPI, esta situação também pode ser tratada utilizando a funcionalidade "additionalProperties".
Suponha que existe agora uma API de consulta de informações de utilizadores, em que os campos de resposta originalmente definidos ao consultar informações de utilizador por ID de utilizador eram name e email. Agora, com a atualização do sistema, pretende incluir outros campos.
Ao editar a documentação da API, pode defini-la da seguinte forma: no nó raiz do modelo de dados, clique em Definições Avançadas, defina additionalProperties como Permitir e defina o tipo de valor do campo como any.
Definir additionalProperties
Em seguida, pode ver a estrutura de dados definida e os valores de exemplo na documentação da API.
Estrutura de dados com additionalProperties

Tuplos#

Normalmente, os elementos internos de um array devem ser do mesmo tipo, enquanto os tuplos podem conter diferentes tipos de dados. Se pretender definir um tuplo que inclua tipos string e integer, como dados do tipo (0,"A",2,"C"), pode definir o tipo de elemento como array no modelo de dados, depois definir o tipo de items como anyOf no padrão de combinação e, em seguida, adicionar elementos filhos do tipo string e integer, respetivamente.
TIP
Se pretender gerar vários elementos ao gerar exemplos, especifique o número mínimo e máximo de elementos nas definições avançadas do nó raiz.
Definir tuplos
Depois de guardar, clique em Gerar Automaticamente na documentação da API para ver a estrutura de dados definida e os valores de exemplo.
Valores de exemplo de tuplo
Também pode ver os valores de exemplo do tuplo na resposta devolvida na documentação.
Tuplo na documentação

Ferramentas#

O Editor de Schemas no Apidog fornece várias ferramentas altamente úteis.
FerramentaDescrição
Gerar a partir de JSON etc.Esta ferramenta permite-lhe gerar automaticamente schemas a partir de JSON, dados XML e outras fontes, ou diretamente a partir de estruturas de tabelas de bases de dados. Saiba mais sobre Gerar schemas a partir de JSON etc..
Pré-visualizaçãoEsta ferramenta cria dados de mock que cumprem a definição do schema, fornecendo uma pré-visualização dos dados esperados.
Gerar códigoEsta ferramenta pode produzir código de definição de estruturas de dados em várias linguagens de programação. Saiba mais sobre Gerar código.
JSON SchemaEsta ferramenta permite a edição direta de JSON schemas para ajuste fino e personalização.

FAQ#

P: Se uma propriedade de cadeia de caracteres tiver vários valores enumerados e for utilizada em vários locais, como pode este enum ser referenciado de forma consistente em todo o lado?
R: Pode definir esta propriedade como um schema autónomo composto por uma única propriedade, permitindo que seja referenciada de forma consistente em diferentes partes da documentação da API.
Modified at 2026-06-09 08:54:45
Previous
Criar um Novo Schema
Next
Gerar esquemas a partir de JSON, etc.
Built with