Apidog Docs
🇧🇷 Português (Brasil)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇧🇷 Português (Brasil)
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇧🇷 Português (Brasil)
  • 🇺🇸 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 Aprendizado da Apidog
  • Primeiros passos
    • Introdução ao Apidog
    • Conceitos básicos no Apidog
    • Navegando pelo Apidog
    • Início rápido
      • Visão geral
      • Criando um Endpoint
      • Fazendo uma Requisição
      • Adicionando uma assertiva
      • Criação de Cenários de Teste
      • Compartilhamento da 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 do Insomnia
        • Importar do apiDoc
        • Importar arquivo .har
        • Importar WSDL
  • Dados de API mock
    • Visão geral
    • Smart Mock
    • Mock personalizado
    • Sequência de Prioridade do Mock
    • Scripts de Mock
    • Mock na Nuvem
    • Mock do Runner Auto-hospedado
    • Idioma do Mock (Locales)
  • Conta e preferências
    • Configurações da Conta
    • Geração de Token de Acesso OpenAPI
    • Notificação
    • Configurações de idioma
    • Teclas de Atalho
    • Configuração de Proxy de Rede
    • Backup de Dados
    • Atualizando o Apidog
    • Exclusão da conta
    • Recursos Experimentais
  • Enviar requisições
    • Visão geral
    • Depuração de SSE
    • Cliente MCP
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP ou WebService
    • GraphQL
    • gRPC
    • Use Agentes de Proxy de Requisição para Depuração
    • Criar requisições
      • Histórico de Requisições
      • Conceitos Básicos de Requisições
      • Parâmetros e Corpo
      • Cabeçalhos da Requisição
      • Configurações da Requisição
      • Depurar Requisições
      • Salvando Requisições como Endpoints
      • HTTP/2
    • Autenticação e autorização
      • Visão geral
      • Certificados de CA e de Cliente
      • Tipos de autorização
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Autenticação Hawk
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • Resposta e cookies
      • Visualização de respostas de API
      • Gerenciamento de Cookies
      • Visão geral
  • Desenvolver e depurar APIs
    • Visão geral
    • Gerando Requisições
    • Envio de Requisições
    • 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
      • Usando variáveis
      • Gerenciamento 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
      • Banco de Dados
      • Tipo de dados
      • Data
      • Finanças
      • Comida
      • Git
      • Hacker
      • Helpers
      • Imagem
      • Internet
      • Localização
      • Lorem
      • Música
      • Número
      • Pessoa
      • Telefone
      • Ciência
      • String
      • Sistema
      • Veículo
      • Palavra
    • Pré e pós-processadores
      • Visão geral
      • Assertiva
      • 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é-processador
        • Scripts de Pós-processamento
        • Scripts Públicos
        • Referência de Scripts do Postman
        • Chamando Outras Linguagens de Programação
        • Usando bibliotecas JS
        • Visualização de Respostas
        • Exemplos de scripts
          • Scripts de assertiva
          • Usando Variáveis
          • Modificando Requisições
          • Outros exemplos
    • Depuração de APIs
      • AI Agent Debugger
      • A2A Debugger
  • Projetar APIs
    • Visão geral
    • Criar um Novo Projeto de API
    • Conceitos Básicos de Endpoint
    • Diretrizes de Design de API
    • Módulo
    • Configurar vários exemplos de corpo da requisição
    • Componentes
    • Campos Comuns
    • Parâmetros Globais
    • Histórico de Alterações do Endpoint
    • Comentários
    • Gerenciamento 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
      • Usar o Security Scheme
      • Esquema de segurança na documentação online
    • Recursos avançados
      • Campos de Endpoint Personalizados
      • Cenários de Teste Associados
      • Status 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 schemas a partir de JSON etc.
      • oneOf, allOf, anyOf
      • Usando Discriminator
  • Branches
    • Visão geral
    • Criando uma Branch de Sprint
    • Testando APIs em uma Branch
    • Projetando APIs em uma branch
    • Mesclando branches de sprint
    • Gerenciando Branches de Sprint
    • AI Branch (Beta)
  • Testes de API
    • Visão geral
    • Cenários de teste
      • Criar um cenário de teste
      • Passar Dados Entre Requisições
      • Condições de Controle 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 Compartilhados
      • Tarefas agendadas
      • Gerenciar o ambiente de execução de APIs de outros projetos
    • Suíte de testes
      • Visão geral
      • Criar Uma Suíte de Testes
      • Orquestrar Suite de Testes
      • Executar Suítes de Teste Localmente
      • Executar Suítes de Teste Via CLI
      • Tarefas agendadas
    • Testar APIs
      • Teste de integração
      • Teste de desempenho
      • Testes de Ponta a Ponta
      • Teste de regressão
      • Teste de Contrato
    • Apidog CLI
      • Visão geral
      • Instalando e executando o Apidog CLI
      • Opções da CLI do Apidog
    • CI/CD
      • Visão geral
      • Integrar com Github Actions
      • Integre com o Gitlab
      • Integrar com o Jenkins
      • Acionar teste por commit do Git
  • Publicar documentação de API
    • Visão geral
    • Tecnologias de API Suportadas
    • Compartilhamento rápido
    • Visualização da documentação da API
    • Documentação em Markdown
    • Publicação de sites de documentação
    • Página de login personalizada
    • Layouts Personalizados
    • CSS, JavaScript e HTML personalizados
    • Domínio Personalizado
    • Recursos de IA
    • Configurações de SEO
    • Configurações avançadas
      • Pesquisa na documentação
      • Proxy CORS
      • Integração com o Google Analytics
      • Configurações da Árvore de Pastas
      • Configurações de Visibilidade
      • Incorporação de valores em URLs de documentação
    • Versões da API
      • Visão geral
      • Criando versões de API
      • Publicação de Versões da API
      • Compartilhamento de Endpoints com Versões da API
  • Recursos de IA
    • Visão geral
    • Habilitando recursos de IA
    • Geração de Casos de Teste
    • Modificando esquemas com IA
    • Verificação de conformidade de endpoint
    • Verificação de Completude da Documentação da API
    • Nomeação de Campos com IA
    • Perguntas frequentes
  • Servidor MCP do Apidog
    • Visão geral
    • Conectar projeto Apidog à IA
    • Conectar documentação publicada à IA
    • Conectar Arquivos OpenAPI à IA
  • Boas práticas
    • Como lidar com assinaturas de API
    • Acessando APIs protegidas por OAuth 2.0
    • Fluxo de Trabalho de Colaboração
    • Gerenciamento do Estado de Autenticação
  • Espaço offline
    • Visão geral
  • Administração
    • Gerenciamento de projetos
      • Gerenciamento de Projetos
      • Configurações de notificação
      • Gerenciamento de membros do projeto
      • Recursos do projeto
        • Conexão com Banco de Dados
        • Conexão Git
    • Gerenciamento de equipes
      • Gerenciando equipes
      • Gerenciando membros da equipe
      • Atividades da Equipe
      • Funções e permissões da equipe
      • Recursos da equipe
        • General Runner
        • Variáveis de Equipe
        • Agente de Proxy de Requisições
      • Colaborações em tempo real
        • Colaboração em Equipe
    • Checklist de integração
      • Conceitos Básicos
      • Guia de Onboarding
    • Gerenciamento da organização
      • Gerenciamento de Organização
      • Funções e permissões da organização
      • Gerenciamento de planos
        • Gerentes de cobrança em organizações
      • Single Sign-On (SSO)
        • Visão geral do SSO
        • Configurando o Microsoft Entra ID
        • Configurando o Okta
        • Configurando SSO para uma organização
        • Gerenciamento de contas de usuário
        • Mapeamento de Grupos para Equipes
      • Provisionamento SCIM
        • Introdução ao provisionamento SCIM
        • Microsoft Entra ID
        • Okta
      • Recursos da organização
        • Runner Auto-Hospedado
  • Apidog Europe
    • Apidog Europe
  • Cobrança
    • Visão geral
    • Créditos
    • Atualizando seu plano
    • Métodos de Pagamento Alternativos
    • Gerenciamento de assinaturas
    • Movendo equipes pagas para organizações
  • Complementos
    • Hub de APIs
    • Plugin Apidog Intellij IDEA
    • Extensão do navegador
      • Chrome
      • Microsoft Edge
    • Proxy de requisições
      • Proxy de Requisição na Web
      • Proxy de Requisição em Documentação Compartilhada
      • Proxy de Requisição no Cliente
  • Dados e segurança
    • Armazenamento e Segurança de Dados
    • Privacidade e Segurança dos Dados do Usuário
    • Roteamento de Requisições e Segurança de Dados
  • Referências
    • Abordagem API Design-First
    • Extensões da especificação OpenAPI do Apidog
    • JSONPath
    • XPath
    • Expressões Regulares
    • JSON Schema
    • Formato de Arquivo CSV
    • Instalando o ambiente Java
    • Ambiente de Implantaçã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

Utilizando o Editor de Schema#

O Editor de Schema é uma ferramenta poderosa que auxilia no design e na modelagem das estruturas de dados utilizadas pela sua API. Ele é baseado em JSON Schema e é utilizado para projetar estruturas de dados JSON ou XML.
Utilize o Editor de Schema para:
Desenvolver corpos de requisição e resposta de API adaptados a endpoints de API específicos.
Construir modelos de dados aplicáveis a uma ou várias APIs.
Todo schema começa com um objeto raiz. Para criar um schema, adicione propriedades a esse objeto raiz.

Criando um Schema#

1
Adicionar Propriedades
Clique no sinal + (Adicionar um nó filho) ao lado do objeto raiz para introduzir novas propriedades.
2
Nomear Sua Propriedade
Insira o nome (ou chave) da propriedade.
3
Selecionar o Tipo da Propriedade
Escolha tipos de dados comuns ou selecione referências a schemas predefinidos.
4
Configurações Avançadas
Utilize o Editor de Tipo para atribuir tipos de dados, como valores padrão e formatos, a cada propriedade.
5
Gerenciar Propriedades
Reorganize propriedades movendo, copiando ou excluindo-as. Você também pode enriquecer propriedades com descrições e marcá-las como obrigatórias.
Métodos Alternativos
Você também pode criar novos schemas importando de tabelas de banco de dados ou arquivos JSON schema. Saiba mais sobre Gerar schemas a partir de JSON etc..

Tipo de Propriedade#

Em conformidade com o padrão JSON Schema, o Editor de Schema do Apidog oferece suporte aos seguintes tipos básicos de dados:
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 e precisão arbitrária, correspondente ao valor JSON "number".
stringRepresenta uma sequência de caracteres Unicode, correspondente ao valor JSON "string".
Tipo de Dados Array
Ao usar o tipo de dados array, uma propriedade de subnível ITEMS será gerada automaticamente. Ela especifica o tipo de dados dos elementos dentro do array.
Além das estruturas de dados padrão mencionadas anteriormente, o Editor de Schema do Apidog também oferece suporte ao seguinte:
Referenciar outros schemas: Capacidade de referenciar e reutilizar schemas definidos em outro local dentro da documentação da API.
any: Representa um valor que pode ser de qualquer tipo de dados.
Composição de Schema: Permite combinar vários schemas para criar estruturas de dados complexas.
Personalização: Permite que os usuários personalizem e adaptem o schema para atender a requisitos específicos e necessidades de modelagem de dados.

Referenciando Outros Schemas#

Você pode utilizar o recurso "Referenciar outros schemas" para referenciar schemas definidos anteriormente.
Depois de referenciar outro schema, você pode visualizar o schema referenciado no Editor de Schema.
Pontos principais sobre schemas referenciados:
Quaisquer modificações feitas no schema original serão refletidas no schema que o referencia.
O schema referenciado não pode ser editado diretamente; para fazer alterações, você pode:
Clicar no nome do schema para navegar até o schema original e editá-lo.
Ao clicar em Desreferenciar no schema, o schema será transformado em uma série de propriedades independentes, permitindo que você as edite individualmente.
Se precisar modificar a definição de uma propriedade específica de forma independente, você pode optar por Desreferenciar essa propriedade, permitindo modificações individuais. Quaisquer alterações no schema original não afetarão a propriedade desreferenciada.
Nos casos em que nem todas as propriedades do schema referenciado forem necessárias no endpoint, você pode clicar em Ocultar para ocultar propriedades desnecessárias.

Composição de Schema#

Se uma propriedade na sua estrutura de dados puder ter vários tipos de dados possíveis, você poderá usar a Composição de Schema para combinar vários schemas.
O Apidog oferece suporte às seguintes palavras-chave de composição:
Palavra-chaveDescrição
allOf (AND)Especifica que a propriedade deve obedecer a 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 obedecer a um, e somente um, dos schemas definidos na composição.
Depois de selecionar Composição de Schema, subpropriedades chamadas "0" e "1" aparecerão sob a propriedade, representando cada schema dentro da composição. Você pode modificar o tipo de schema de cada subpropriedade e adicionar schemas adicionais conforme necessário.
Na documentação da API, a Composição de Schema será exibida assim:
Você observará os dois objetos opcionais em OneOf. Se quiser exibir os nomes deles como mostrado na imagem, você precisará inserir os nomes no campo title no Editor de Tipo.

Personalização#

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

Configurações da Propriedade#

Para cada propriedade, há vários botões localizados ao lado do tipo de dados:
Botões de configurações da propriedade
BotãoDescrição
*Indica se a propriedade é obrigatória.
NEspecifica se a propriedade permite valores nulos.
SettingsPermite que você edite configurações avançadas no Editor de Tipo.

Editor de Tipo#

O Editor de Tipo descreve visualmente uma propriedade em conformidade com JSON Schema.
Depois que essas configurações avançadas forem configuradas, elas entrarão em vigor nas seguintes áreas:
1.
Ao adicionar exemplos de resposta, você pode clicar para gerar automaticamente com base nas configurações.
2.
Elas serão exibidas na documentação da API.
3.
No corpo da requisição, você pode clicar para gerar automaticamente com base nas configurações.
4.
Ao enviar uma requisição, os dados retornados serão validados automaticamente em relação às configurações.
5.
No serviço de mock, os dados de resposta serão gerados com base nas configurações.

Propriedade Enumerada#

Para os tipos String, Integer e Number, o Apidog oferece suporte a enum. Ao ativar o seletor de enum, você pode adicionar valores e descrições de enum. Além disso, você pode realizar Edição em Massa para valores de enum.

Mock#

Além das configurações avançadas na propriedade, você pode especificar conteúdo de mock para campos preenchendo valores de mock. Valores de mock têm precedência sobre as configurações nas configurações avançadas.
Valores de mock oferecem suporte à sintaxe Faker.js, permitindo que você escolha os dados faker desejados diretamente nas opções do menu suspenso.
Valores de mock também podem ser inseridos como valores fixos.

Configurações de XML#

Para dados XML, o Editor de Tipo no Apidog oferece Configurações de XML adicionais. Você pode ativar o seletor XML, configurar propriedades como nome da tag, namespace etc. e 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 oferece suporte à definição de um HashMap com chaves string. Isso é feito definindo o tipo do elemento como object e, em seguida, usando a palavra-chave additionalProperties para especificar o tipo dos valores nos pares chave-valor.
Suponha que exista uma API de consulta de informações de usuário, e o formato dos dados retornados tenha os seguintes requisitos:
1.
Os dados retornados são um objeto
2.
Os elementos filhos do objeto são pares chave-valor de um HashMap
3.
O ID do usuário é a chave, e as informações do usuário são o valor
Para definir isso no Apidog:
1
Crie um novo schema e nomeie-o como "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 Settings à direita.
Configuração de HashMap
3
No pop-up, adicione as informações de usuário necessárias, com o nome e o email do usuário como campos do objeto. Ele salva automaticamente.
Adição de campos de informações de usuário
4
Nas respostas da documentação da API, referencie o schema no nó raiz e selecione "user profiles" que você acabou de criar.
Referência ao schema de perfis de usuário
5
Clique em salvar e, em seguida, você poderá ver o schema definido e os valores de exemplo no exemplo de resposta de retorno dentro da documentação da API.
Exemplo de schema na documentação da API

Objetos com additionalProperties#

À medida que o trabalho de desenvolvimento real evolui, os objetos retornados pela API podem ter additionalProperties em comparação com o objeto originalmente definido. De acordo com a especificação OpenAPI, essa situação também pode ser tratada usando o recurso "additionalProperties".
Suponha que agora exista uma API de consulta de informações de usuário, em que os campos de resposta originalmente definidos ao consultar informações de usuário por ID de usuário eram name e email. Agora, com a atualização do sistema, você deseja incluir outros campos.
Ao editar a documentação da API, você pode defini-la da seguinte forma: no nó raiz do modelo de dados, clique em Configurações Avançadas, defina additionalProperties como Permitir e defina o tipo de valor do campo como any.
Configuração de additionalProperties
Então você poderá ver a estrutura de dados definida e os valores de exemplo na documentação da API.
Estrutura de dados com additionalProperties

Tuplas#

Normalmente, os elementos internos de um array devem ser do mesmo tipo, enquanto tuplas podem conter diferentes tipos de dados. Se você quiser definir uma tupla que inclua tipos string e integer, como dados do tipo (0,"A",2,"C"), poderá definir o tipo do 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 dos tipos string e integer, respectivamente.
TIP
Se você quiser gerar vários elementos ao gerar exemplos, especifique o número mínimo e máximo de elementos nas configurações avançadas do nó raiz.
Definição de tuplas
Depois de salvar, 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 tupla
Você também pode ver os valores de exemplo da tupla na resposta de retorno na documentação.
Tupla na documentação

Ferramentas#

O Editor de Schema no Apidog fornece várias ferramentas altamente úteis.
FerramentaDescrição
Generate from JSON etc.Esta ferramenta permite que você gere schemas automaticamente a partir de JSON, dados XML e outras fontes, ou diretamente de estruturas de tabelas de banco de dados. Saiba mais sobre Gerar schemas a partir de JSON etc..
PreviewEsta ferramenta cria dados de mock que seguem a definição do schema, fornecendo uma prévia dos dados esperados.
Generate codeEsta ferramenta pode produzir código de definição de estrutura de dados em várias linguagens de programação. Saiba mais sobre Gerar código.
JSON SchemaEsta ferramenta permite a edição direta de schemas JSON para ajustes finos e personalização.

FAQ#

P: Se uma propriedade string tiver vários valores enumerados e for usada em vários locais, como esse enum pode ser referenciado de forma consistente em todos eles?
R: Você pode definir essa propriedade como um schema independente composto por uma única propriedade, permitindo que ela seja referenciada de forma consistente em diferentes partes da documentação da API.
Modified at 2026-06-11 10:21:25
Previous
Criar um Novo Schema
Next
Gerar schemas a partir de JSON etc.
Built with