Apidog Docs
🇵🇹 Português
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português
🇵🇹 Português
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português
🇵🇹 Português
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
  1. Projetar APIs
  • 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
    • Apidog Support Center
    • Importar/exportar
      • Como importar dados de API para o Apidog?
      • Como importar cURL no Apidog?
      • Como migrar ambientes do Postman para o Apidog?
      • Como agrupar automaticamente endpoints na importação de Swagger/OpenAPI?
    • Envio de requisições
      • O Apidog suporta Socket.IO?
      • Porque é que o "+" no valor do parâmetro é descodificado como um espaço?
      • Como enviar um pedido no Apidog?
      • Como enviar um pedido GraphQL no Apidog?
      • Como enviar um pedido gRPC no Apidog?
      • Como enviar um pedido SOAP/WebService no Apidog?
      • Como enviar um pedido WebSocket no Apidog?
      • O Apidog suporta scripts pré-pedido/teste e asserções em APIs WebSocket?
      • Como enviar um pedido SSE no Apidog?
      • Como adicionar cabeçalhos predefinidos ao nível da pasta?
      • O Apidog suporta scripts pré-pedido/de teste e asserções em APIs gRPC?
      • Erro do resolvedor DNS ELANREFUSED.DNS
      • Porque estou a receber um erro "socket hang up" ao enviar um pedido?
      • Correção de erros de requisição
        • Corrigir o erro read ECONNRESET
        • Corrigir o erro ECONNREFUSED
        • Corrigir o erro ETIMEDOUT
        • Corrigir o erro ENOTFOUND: Couldn't resolve host
        • Corrigir ENOTFOUND: getaddrinfo ENOTFOUND www Error
        • Corrigir o erro connect EHOSTUNREACH
    • Projeto de APIs
      • Como utilizo variáveis no caminho?
      • Posso utilizar um componente de resposta como resposta predefinida?
      • Como verificar quem modificou um endpoint?
      • Como posso eliminar pastas de endpoints em massa no Apidog?
      • Como posso adicionar/remover prefixos em massa ao caminho dos endpoints?
      • Como mover o nível de uma propriedade no Editor de Esquemas?
      • Se uma propriedade de string tiver vários valores enumerados e for utilizada em vários locais, como é que este enum pode ser referenciado de forma consistente em todo o lado?
      • Como obter o ID da pasta de recursos do Apidog?
      • Como posso obter o ID da pasta de recursos do Apidog?
      • Como utilizo variáveis num caminho de URL?
      • O que deve fazer se um endpoint, documento ou cenário de teste for eliminado acidentalmente?
      • O Apidog suporta código de pedido para endpoints personalizados?
      • Como agrupar automaticamente endpoints ao importar Swagger/OpenAPI para o Apidog?
      • Como gero dados de array não duplicados em respostas mock?
      • Porque é que a entrada "#" não é suportada no caminho?
    • Depuração de APIs
      • Como é que o Apidog se integra com sistemas de gestão de chaves de terceiros?
      • Porque é que o mesmo pedido funciona corretamente noutras ferramentas (como o Postman), mas não no Apidog?
      • Como obter valores de variáveis a partir da base de dados no Apidog?
      • Como migrar ambientes de outras ferramentas para o Apidog?
      • Como criar asserções utilizando scripts no Apidog?
      • JSONPath só consegue extrair arrays. Como podemos extrair um único elemento dentro deles no Apidog?
      • Como configurar operações de base de dados no Apidog quando diferentes ambientes têm diferentes credenciais de conta da base de dados?
      • Como obter o URL base do serviço num script personalizado?
      • Porque é que o Apidog comunica um erro de excesso do comprimento máximo de string do Node.js quando a resposta da API é demasiado grande?
      • Qual é o limite de tamanho para a impressão na consola? Porque recebo um erro ao imprimir ficheiros grandes?
      • Como resolver erros de ligação à base de dados DB2 no Windows?
      • Porque estou a obter o erro NJS-045 ao ligar-me a uma base de dados Oracle no Apidog?
      • Como gerar valores dinâmicos em scripts personalizados do Apidog?
      • Porque é que o pedido do cliente para o mesmo endpoint é bem-sucedido, mas ocorre um erro ao depurar no lado web: "Não é possível solicitar o endereço"?
      • Porque é que o Apidog comunica um erro quando a resposta é demasiado grande?
      • Como posso utilizar o endpoint de gravação do Apidog?
      • Ao definir uma resposta de endpoint, é permitido que o endpoint não tenha conteúdo de resposta?
      • Como obtenho a baseURL do serviço num script personalizado?
      • Como posso visualizar o pacote original no Apidog?
      • Porque é que vejo o erro "Invalid URI xxx" ao fazer um pedido?
      • Como faço um pedido assíncrono num script do Apidog?
      • Porque vejo a mensagem "Couldn't resolve host" ao enviar um pedido?
      • Qual é o limite de tamanho de impressão na consola? Porque ocorre um erro ao imprimir um ficheiro grande?
      • Como faço para carregar um ficheiro num pedido de endpoint?
      • O que fazer se o Apidog falhar ou os dados da resposta não forem apresentados?
      • URI de Redirecionamento Oficial utilizado pelo Apidog para OAuth2.0
    • Dados de API mock
      • Como simular APIs automaticamente?
      • O que pode fazer o mocking do Apidog?
      • Como fazer mock de dados fixos de API no Apidog?
      • Como simular dados condicionais no Apidog?
      • Como ativar o mock na cloud no Apidog?
      • Como ativar o mock autoalojado no Apidog?
      • O Apidog suporta mocks de APIs WebSocket?
      • Porque é que o browser não devolve conteúdo ao solicitar o endpoint mock?
    • Testes automatizados
      • Porque é que os cenários de teste são executados sem problemas no meu cliente local, mas ocorrem erros ao executá-los na CLI ou no runner do Apidog?
      • Como criar um cenário de teste no Apidog?
      • Como passar dados entre etapas de teste?
      • Porque não consigo referenciar com êxito dados do passo anterior?
      • Como utilizar o ciclo foreach no Apidog?
      • Quais são as diferenças entre sincronizar dados de endpoints/casos de endpoint?
      • Como utilizar dados de teste no Apidog?
      • Como obter dados de teste em scripts no Apidog?
      • Como executar cenários de teste em lote no Apidog?
      • Como agendar tarefas de teste no Apidog?
      • Como executar um teste de desempenho no Apidog?
      • Como pode visualizar os pedidos e as respostas reais nos testes de desempenho?
      • Como posso exportar relatórios de testes de desempenho no Apidog?
      • Como utilizar resultados de consultas à base de dados como parâmetros para pedidos de API em loop?
      • Capturar e Validar Webhooks do Stripe no ApiDog Durante CI/CD
      • Como resolver o erro "Error: unable to verify the first certificate on runner"?
      • Erro "Not Found" no Contentor Docker do General Runner.
      • Como definir o host do servidor para o General Runner na versão Web do Apidog?
      • Porque é que o cenário de teste agendado terminou com 0 pedidos?
      • O que deve fazer se o parâmetro de carregamento de ficheiro não for encontrado no Runner ou na CLI?
      • Como utilizar o Runner para executar um cenário de teste com um passo de carregamento de ficheiro?
      • Como resolvo o erro "Error: unable to verify the first certificate on runner"?
      • Como pode aceder e pesquisar os logs do runner para identificar o problema quando surge um problema com um runner?
      • O que devo fazer se o parâmetro do endpoint for um ficheiro de upload e não puder ser encontrado no Runner ou na CLI?
      • Porque é que os passos de teste não são sincronizados automaticamente quando o caso de uso da API muda?
      • Porque é que a utilização de vários sinais de dólar num documento Markdown faz com que algum conteúdo não seja apresentado corretamente?
      • O Runner autoalojado gera um relatório de teste no servidor após executar uma tarefa?
      • Posso adicionar pré/pós-processadores unificados a pedidos num cenário de teste?
      • Como posso manter valores dinâmicos consistentes durante uma única execução de teste automatizado?
    • Publicar documentação de API
      • Como ocultar todos os logótipos da Apidog em documentos publicados?
      • Quando a especificação da API é atualizada, a documentação da API muda?
      • Como partilhar APIs com colaboradores no Apidog?
      • Como personalizar o domínio das documentações do Apidog?
      • Como criar documentação multiversão no Apidog?
      • Âmbito de partilha para Sites de Documentação Publicados no Apidog
      • Âmbito de partilha da lista Share Doc no Apidog
      • Porque é que a documentação partilhada publicada não mostra o hostname?
      • Como podem os utilizadores da documentação modificar a URL Base em documentação partilhada?
      • Posso duplicar um documento Apidog publicado para usar no meu próprio projeto?
      • Como Partilhar Cabeçalhos (por exemplo, Token) na Documentação Online do Apidog?
      • Porque é que o membro da minha equipa não consegue encontrar a documentação publicada?
      • Como corrijo a expiração de um certificado SSL ou um erro 526 da Cloudflare no meu domínio personalizado?
      • SMTP personalizado configurado com sucesso, mas os utilizadores na lista de permissões não recebem e-mails com OTP
    • Markdown
      • Como utilizar cartões para ligar a várias páginas ou endpoints dentro do Apidog?
      • Porque é que algum conteúdo não é apresentado corretamente ao utilizar vários símbolos $ em documentos Markdown?
      • Como utilizar imagens com fundo transparente no Markdown do Apidog?
      • Como definir a largura das colunas de uma tabela Markdown?
      • Como pode inserir APIs internas, documentos, esquemas de dados ou pastas num documento Markdown?
      • Como posso adicionar uma ligação a um documento ou endpoint dentro de um projeto num componente de cartão do Apidog?
    • Branches
      • Como aceder ao branch de sprint?
    • Administração
      • Como instalar o cliente Apidog silenciosamente?
      • Porque estou a ver um erro “No Permission” apesar de ter acesso de administrador?
      • Como posso verificar o número da versão do runner?
      • O Apidog suporta Windows 7?
      • Porque é que o Apidog apresenta o erro "Cannot locate program entry point DiscardVirtualMemory in dynamic link library KERNEL32.dll" após a instalação?
      • Alterações de Subscrição e Reembolsos
      • Os pedidos Web funcionam, mas a aplicação apresenta "read ECONNRESET" — Porquê?
      • Porque não consigo abrir o Apidog após uma atualização do sistema Windows?
      • Porque é que o Apidog não abre após uma atualização do sistema Windows
    • Cobrança
      • Posso configurar uma conta de faturação separada para a minha equipa no Apidog?
      • Problemas de Acesso da Equipa e Faturação no Apidog
      • O membro da equipa convidado não consegue aceder ao Apidog.
      • Transferir uma Equipa Paga Pessoal para uma Organização
    • On-premises
      • Gestão de utilizadores e acessos na versão Self-Hosted (Enterprise) do Apidog
    • Web e cliente
      • Transferência e instalação da versão de ambiente de trabalho para Linux
  1. Projetar APIs

Modo Spec-first (Beta)

O Modo Spec-first destina-se a equipas que pretendem que os ficheiros de especificação da API sejam a fonte de verdade. Neste modo, pode conceber e manter ficheiros OpenAPI ou Swagger diretamente no Apidog, pré-visualizar a documentação da API gerada à medida que edita e manter os ficheiros sincronizados com o Git.
Utilize o Modo Spec-first quando a sua equipa já trabalha com ficheiros de especificação YAML ou JSON, revê alterações da API através do Git ou pretende que a conceção da API se enquadre naturalmente num fluxo de trabalho de repositório de código.

Como funciona o Modo Spec-first#

Num projeto Apidog normal, as APIs são geralmente criadas e editadas através de formulários visuais. Num projeto Spec-first, o espaço de trabalho principal é baseado em ficheiros.
Trabalha com ficheiros como:
openapi.yaml
openapi.json
Ficheiros Swagger 2.0
Ficheiros Markdown e outros ficheiros de apoio do projeto
O Apidog analisa os ficheiros de especificação e transforma-os numa estrutura de API navegável. Pode editar os ficheiros em bruto, utilizar formulários visuais suportados, validar a especificação, pré-visualizar a documentação gerada e enviar alterações de volta para o Git.

Criar um projeto Spec-first#

1
Clique em + Novo projeto.
2
No seletor de tipo de projeto, escolha Modo Spec-first.
3
Ligue um fornecedor Git, como GitHub, GitLab, Azure DevOps ou Bitbucket.
4
Selecione uma organização ou espaço de trabalho e, em seguida, escolha um repositório existente ou crie um novo repositório, se a opção estiver disponível.
5
Selecione o ramo principal com o qual o Apidog deve sincronizar.
6
Escolha se pretende instalar um webhook.
A instalação de um webhook permite que envios push no repositório Git acionem a sincronização automática. Normalmente, isto requer permissão de administrador no repositório. Se não tiver permissão de administrador, pode ignorar a instalação do webhook e sincronizar manualmente.
7
Introduza o nome do projeto, configure as permissões dos membros e clique em Criar.
image.png
Após a criação, o Apidog executa a primeira sincronização. Se o ramo predefinido do repositório não for main, o Apidog utiliza o nome do ramo do repositório para o ramo principal do projeto.
Os projetos Spec-first não incluem dados de projeto de exemplo. O conteúdo da API provém dos seus ficheiros de especificação.

O espaço de trabalho Specs#

Os projetos Spec-first incluem um espaço de trabalho Specs na barra lateral esquerda. Este é o local principal para gerir ficheiros de especificação e a sincronização com o Git.
Espaço de trabalho Specs
O espaço de trabalho contém três áreas principais:
Explorador de ficheiros: navegue e gira ficheiros e pastas do repositório sincronizado.
Árvore de estrutura da API: navegue pelo conteúdo OpenAPI analisado, como visão geral, endpoints, esquemas e definições.
Editor: edite ficheiros em vista de código ou, para nós OpenAPI suportados, em vista de formulário.
Quando seleciona um endpoint, esquema ou outro nó suportado na árvore de estrutura, o Apidog abre a parte relacionada do ficheiro de origem. Isto permite-lhe alternar entre a vista ao nível do ficheiro e a vista ao nível da API sem sair do espaço de trabalho Specs.

Editar ficheiros de especificação#

O editor suporta diferentes tipos de ficheiro e modos de edição.

Vista de código#

Utilize a vista Código para editar diretamente ficheiros YAML, JSON, Markdown e outros ficheiros de texto. Esta é a forma predefinida de trabalhar no Modo Spec-first.
image.png

Vista de formulário#

Para nós OpenAPI suportados, o Apidog também disponibiliza uma vista Formulário. Isto permite-lhe editar campos comuns da API através de controlos estruturados, mantendo o ficheiro de especificação subjacente como a fonte de verdade.
image.png
A vista de formulário está disponível para nós suportados, tais como:
Visão geral da API
Endpoints
Esquemas
Definições
Se o ficheiro ou nó selecionado não puder ser editado na vista de formulário, o Apidog mantém-no na vista de código.

Validar e pré-visualizar durante a edição#

O Modo Spec-first inclui ferramentas de validação e pré-visualização no cabeçalho do editor.

Validação#

O painel Validação mostra problemas detetados na especificação atual, incluindo avisos e erros. O distintivo de validação apresenta o número total de problemas detetados.
image.png
Utilize este painel para encontrar problemas de sintaxe, campos obrigatórios em falta e violações de regras antes de confirmar alterações.

Pré-visualização#

O painel Pré-visualização mostra como o nó de especificação selecionado será apresentado na documentação da API gerada.
A pré-visualização está disponível para:
Visão geral da API
Endpoints
Esquemas
Definições
Para endpoints, a Pré-visualização inclui:
Documentação: a documentação gerada do endpoint.
Experimentar: um painel de pedido para enviar um pedido com base na definição do endpoint selecionado.
image.png
Para esquemas, definições e nós de visão geral, a Pré-visualização mostra a vista de documentação gerada.
image.png
A Validação e a Pré-visualização utilizam o mesmo painel lateral. Abrir uma fecha a outra.

Sincronizar alterações do Git#

Quando outros membros da equipa enviam alterações para o repositório ligado, pode obter os ficheiros mais recentes no Apidog.
1
Abra o espaço de trabalho Specs.
2
Clique no nome do ramo atual na barra lateral de Specs.
3
Clique em Git Pull.
Se a sincronização por webhook estiver instalada, o Apidog também pode receber eventos push do fornecedor Git e acionar a sincronização automaticamente.

Confirmar e enviar alterações para o Git#

Depois de editar ficheiros no Apidog, envie as suas alterações de volta para o repositório ligado.
1
Edite um ou mais ficheiros no espaço de trabalho Specs.
2
Clique em Alterações para rever ficheiros modificados, adicionados, renomeados e eliminados.
3
Clique em Commit & Push.
4
No modal Push to Git repo, selecione os ficheiros que pretende incluir.
5
Introduza uma mensagem de commit.
6
Clique em Push.
Confirmar e enviar alterações
Se não quiser manter as suas edições locais, utilize Descartar todas as alterações antes de enviar.

Gerir ramos#

O Modo Spec-first suporta colaboração baseada em ramos. O Apidog associa ramos Git sincronizados a ramos do projeto, para que possa alternar entre versões da especificação.
image.png

Alternar entre ramos#

Clique no nome do ramo na barra lateral de Specs e selecione outro ramo no menu pendente.

Monitorizar um ramo Git existente#

Se existir um ramo no Git, mas ainda não tiver sido importado para o Apidog, clique em Importar novo ramo, selecione o ramo e importe-o. O Apidog começa então a monitorizar e sincronizar esse ramo.

Criar um ramo#

Abra Definições do projeto > Git e ramos e clique em Novo ramo para criar um ramo a partir de um ramo de projeto existente.

Ressincronizar um ramo#

Se a sincronização de um ramo falhar ou se os ficheiros parecerem desatualizados, utilize Ressincronizar em Definições do projeto > Git e ramos. Isto repõe o estado de sincronização desse ramo e importa novamente os ficheiros.

Ver registos de sincronização#

Se uma sincronização falhar, abra as ações do ramo e escolha Ver registos para inspecionar os detalhes da sincronização.

Deixar de monitorizar ou eliminar um ramo#

Eliminar um ramo monitorizado remove-o da configuração de sincronização do Apidog. Para ramos não principais, o registo do ramo do projeto também pode ser removido.
image.png

Sincronização por webhook e permissões#

A sincronização por webhook é opcional, mas recomendada para equipas que pretendem que o Apidog se mantenha atualizado com envios push para o repositório.
Quando a sincronização por webhook está ativada:
O Apidog regista um webhook no fornecedor Git ligado.
Apenas eventos push suportados são processados.
O Apidog verifica a assinatura ou o token do webhook antes de sincronizar.
Requisitos de permissão:
A instalação de um webhook normalmente requer permissão de administrador do repositório.
Enviar alterações requer permissão de escrita.
Se a instalação do webhook for ignorada, a sincronização manual continua disponível.
Se ignorou a instalação do webhook durante a criação do projeto, pode instalá-lo mais tarde a partir de Definições do projeto > Git e ramos.

Projetos Spec-first baseados em armazenamento#

Alguns projetos Spec-first podem utilizar o armazenamento interno do Apidog em vez de um repositório Git externo.
image.png
Estes projetos continuam a utilizar o espaço de trabalho Specs, a edição baseada em ficheiros, a validação, a pré-visualização e a gestão de ramos.
Os rótulos da interface são ligeiramente diferentes:
Git Pull aparece como Sync.
Commit & Push aparece como Save.
As informações do fornecedor Git e as definições de webhook externo ficam ocultas.

Notas e limitações#

O Modo Spec-first está atualmente em beta.
O espaço de trabalho Specs aparece apenas em projetos Spec-first.
Os projetos Spec-first não criam dados de API de exemplo.
O ficheiro de especificação é a fonte de verdade. As alterações devem ser efetuadas através do espaço de trabalho Specs ou sincronizadas através do Git.
A instalação do webhook pode falhar se não tiver permissões suficientes no repositório. Pode continuar a utilizar a sincronização manual se tiver acesso de escrita.
Modified at 2026-06-09 08:54:45
Previous
API de Protocolo Personalizado
Next
Visão geral
Built with