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. Uso de scripts
  • 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. Uso de scripts

Referência de Scripts do Postman

O mecanismo de scripts do Apidog usa o objeto pm para acessar dados sobre a requisição, a resposta e as variáveis. Este método é compatível com o Postman.

Objeto pm#

O objeto pm tem as seguintes propriedades principais.
PropriedadeTipo de dadoDescrição
pm.info.eventNameStringO tipo de scripts que está em execução no momento (script de pré-processador ou script de pós-processador).
pm.info.iterationNumberO número da iteração atual (válido apenas em coleções de teste).
pm.info.iterationCountNumberO número total de iterações (válido apenas em coleções de teste).
pm.info.requestNameStringO nome da API atual em execução.
pm.info.requestIdStringO ID da API atual em execução.

Envio de requisições (pm.sendRequest)#

pm.sendRequest:Function
pm.sendRequest é usado para enviar requisições HTTP/HTTPS assíncronas em scripts.
Este método aceita um parâmetro de requisição compatível com o SDK de coleção e um parâmetro de função de callback. O callback tem 2 argumentos. O primeiro é um erro e o segundo é uma resposta compatível com o SDK de coleção. Veja mais informações na documentação do Collection SDK.
Você pode usá-lo tanto em scripts de pré-processador quanto de pós-processador.
Para obter mais referências, visite:
Estrutura de Request JSON
Estrutura de Response

pm.variables#

pm.variables: veja a documentação do Variable SDK aqui.
Variáveis locais. A prioridade das diferentes variáveis é a seguinte:
Local Variables > Environment Variables > Global Variables Shared within Project > Global Variables Shared within Team.
pm.variables.has(variableName:String):function → Boolean: Verifica se uma variável temporária existe.
pm.variables.get(variableName:String):function → *: obtém uma variável temporária.
pm.variables.set(variableName:String, variableValue:String):function → void: define uma variável temporária.
pm.variables.replaceIn(variableName:String):function: Substitui "variáveis dinâmicas" dentro de uma string (por exemplo, {{variable_name}}) por valores reais. Exemplo:
// Define a string containing a dynamic variable
let stringWithVariable = "Hello, {{username}}";

// Use the replaceIn method to replace the {{username}} placeholder
let realValueString = pm.variables.replaceIn(stringWithVariable);

// Output the replaced value
console.log(realValueString); // Output: "Hello, john_doe"
pm.variables.replaceInAsync(variableName:String):function: Substitui "expressões de valor dinâmico" dentro de uma string (por exemplo, {{$person.fullName}}) por valores reais. Este método retorna uma Promise, portanto você precisa usar await ao chamá-lo. Exemplo:
// Define a string containing a dynamic value expression
let stringWithVariable = "Hello, {{$person.fullName}}";

// Use the replaceInAsync method to replace the {{$person.fullName}}
let realValueString = await pm.variables.replaceInAsync(stringWithVariable);
pm.variables.toObject():function → Object: obtém todas as variáveis locais como objetos.

pm.iterationData#

pm.iterationData:
Variáveis de dados de teste
Atualmente, não oferecemos suporte à definição de variáveis de dados de teste diretamente em scripts, pois os dados de teste são gerenciados separadamente. No entanto, você pode acessar as variáveis em scripts conforme mostrado abaixo:
pm.iterationData.has(variableName:String):function → Boolean: Verifica se uma variável de teste existe.
pm.iterationData.get(variableName:String):function → *: obtém uma variável de teste.
pm.iterationData.replaceIn(variableName:String):function: substitui variáveis dinâmicas em uma string por seus valores reais, por exemplo, {{variable_name}}.
pm.iterationData.toObject():function → Object: obtém todas as variáveis locais como objetos.

pm.environment#

pm.environment.name:String: o nome do ambiente.
pm.environment.has(variableName:String):function → Boolean: Verifica se uma variável de ambiente existe.
pm.environment.get(variableName:String):function → *: obtém uma variável de ambiente.
pm.environment.set(variableName:String, variableValue:String):function: define uma variável de ambiente.
pm.environment.replaceIn(variableName:String):function: substitui variáveis dinâmicas em uma string por seus valores reais, por exemplo, {{variable_name}}.
pm.environment.toObject():function → Object: obtém todas as variáveis locais como objetos.
pm.environment.unset(variableName:String):function: remove a definição de uma variável de ambiente.
pm.environment.clear():function: limpa todas as variáveis de ambiente no ambiente atual.
DICA: as operações mencionadas acima leem e gravam apenas valores atuais; elas não leem nem gravam valores remotos.

pm.moduleVariables#

pm.moduleVariables: Object
Usado para gerenciar o Valor atual de variáveis em nível de módulo.
pm.moduleVariables.has(variableName: String): function → Boolean
Verifica se uma variável de módulo específica existe.
pm.moduleVariables.get(variableName: String): function → *
Recupera o valor de uma variável de módulo específica.
pm.moduleVariables.set(variableName: String, variableValue: String): function
Define o valor de uma variável de módulo específica.
pm.moduleVariables.replaceIn(variableName: String): function
Substitui placeholders {{variable}} dentro de uma string por seus valores reais.
pm.moduleVariables.toObject(): function → Object
Retorna todas as variáveis de módulo como um objeto de chave-valor.
pm.moduleVariables.unset(variableName: String): function
Exclui uma variável de módulo específica.
pm.moduleVariables.clear(): function
Limpa todas as variáveis de módulo dentro do módulo atual.
Exemplo:
Nota de compatibilidade:
pm.collectionVariables funciona da mesma forma que pm.moduleVariables e pode ser usado de modo intercambiável.

pm.globals#

pm.globals.has(variableName:String):function → Boolean: Verifica se uma variável global existe.
pm.globals.get(variableName:String,variableScope:String):function → *: obtém uma variável global. Use 'PROJECT' (padrão) ou 'TEAM' para especificar o escopo da variável.
pm.globals.set(variableName:String,variableValue:String, variableScope:String):function: define uma variável global. Use 'PROJECT' (padrão) ou 'TEAM' para especificar o escopo da variável.
pm.globals.replaceIn(variableName:String):function: substitui variáveis dinâmicas em uma string por seus valores reais, por exemplo, {{variable_name}}.
Para obter o valor de um parâmetro de requisição que contém uma variável em scripts de pré-processador, use pm.globals.replaceIn para substituir a variável pelo valor real.
pm.globals.toObject():function → Object: obtém todas as variáveis globais como objetos.
pm.globals.unset(variableName:String,variableScope:String):function: remove a definição de uma variável global. Use 'PROJECT' (padrão) ou 'TEAM' para especificar o escopo da variável.
pm.globals.clear():function: limpa todas as variáveis globais no ambiente atual.
TIP
1.
Todas as operações acima afetam apenas current values, não initial values.
2.
Ao usar set com o escopo 'TEAM', ele atualizará apenas o valor atual de uma variável de equipe existente. Se a variável de equipe não existir, ela não será criada. Em vez disso, a variável será tratada como uma variável local.

pm.request#

pm.request: veja a documentação do Request SDK aqui.
request é o objeto de requisição da API. No script de pré-processador, é a requisição que será enviada. No script de pós-processador, é a requisição que já foi enviada.
request inclui as seguintes informações:
pm.request.url:Url: a URL da requisição atual.
pm.request.getBaseUrl(): Recupera BASE URL selecionada pelo ambiente de execução atual. Este recurso é compatível após a versão 2.1.39.
pm.request.headers:HeaderList: a lista de cabeçalhos da requisição atual.
pm.request.method:String: o método da requisição atual, como GET, POST etc.
pm.request.body: RequestBody: o corpo da requisição atual.
pm.request.headers.add({ key: headerName:String, value: headerValue:String}):function: Adiciona um cabeçalho com uma chave, headerName, na requisição atual.
pm.request.headers.remove(headerName:String):function: Exclui um cabeçalho com uma chave, headerName, na requisição atual.
pm.request.headers.upsert({ key: headerName:String, value: headerValue:String}):function: Faz upsert de um cabeçalho com uma chave, headerName, na requisição atual. Se a chave já existir, ela será modificada.
A API a seguir só pode ser usada em postprocessor scripts.

pm.response#

pm.response: veja a documentação do Response SDK aqui.
Use pm.response para acessar informações da resposta retornada em scripts de pós-processador.
pm.response inclui as seguintes informações:
pm.response.code:Number
pm.response.status:String
pm.response.headers:HeaderList
pm.response.responseTime:Number
pm.response.responseSize:Number
pm.response.text():Function → String
pm.response.json():Function → Object

pm.cookies#

pm.cookies: veja a documentação do CookieList SDK aqui.
Cookies é a lista de cookies no nome de domínio da requisição atual.
pm.cookies.has(cookieName:String):Function → Boolean
Verifica se o valor do cookie de um cookieName existe.
pm.cookies.get(cookieName:String):Function → String
Obtém o valor do cookie a partir de cookieName.
pm.cookies.toObject:Function → Object
Obtém todos os cookies no domínio atual como um objeto.
pm.cookies.jar().clear(pm.request.url)
Limpa todos os cookies.
TIP
pm.cookies é o cookie retornado após a requisição da API, não o cookie enviado pela requisição da API.

pm.test#

Esta função é usada para afirmar se um resultado atende às expectativas.
O exemplo abaixo pode ser usado para determinar se uma resposta está correta.
Você pode executar um teste assíncrono usando done (um parâmetro opcional) em uma função de callback.
pm.test.index():Function → Number
Obtém o número total de testes de uma localização específica.

pm.expect#

pm.expect é um método de assertiva. Veja a documentação da biblioteca BDD ChaiJS expects aqui.
Este método foi projetado para fazer assertivas de dados na resposta ou em variáveis. Para ver mais exemplos de pm.expect, visite exemplos da biblioteca de assertivas.

pm.response.to.have.*#

pm.response.to.have.status(code:Number)
pm.response.to.have.status(reason:String)
pm.response.to.have.header(key:String)
pm.response.to.have.header(key:String, optionalValue:String)
pm.response.to.have.body()
pm.response.to.have.body(optionalValue:String)
pm.response.to.have.body(optionalValue:RegExp)
pm.response.to.have.jsonBody()
pm.response.to.have.jsonBody(optionalExpectEqual:Object)
pm.response.to.have.jsonBody(optionalExpectPath:String)
pm.response.to.have.jsonBody(optionalExpectPath:String, optionalValue:*)
pm.response.to.have.jsonSchema(schema:Object)
pm.response.to.have.jsonSchema(schema:Object, ajvOptions:Object)

pm.response.to.be.*#

Você pode usar o pm.response.to.be integrado para assertivas rápidas.
pm.response.to.be.info
Verifica se o código de status é 1XX.
pm.response.to.be.success
Verifica se o código de status é 2XX.
pm.response.to.be.redirection
Verifica se o código de status é 3XX.
pm.response.to.be.clientError
Verifica se o código de status é 4XX.
pm.response.to.be.serverError
Verifica se o código de status é 5XX.
pm.response.to.be.error
Verifica se o código de status é 4XX ou 5XX.
pm.response.to.be.ok
Verifica se o código de status é 200.
pm.response.to.be.accepted
Verifica se o código de status é 202.
pm.response.to.be.badRequest
Verifica se o código de status é 400.
pm.response.to.be.unauthorized
Verifica se o código de status é 401.
pm.response.to.be.forbidden
Verifica se o código de status é 403.
pm.response.to.be.notFound
Verifica se o código de status é 404.
pm.response.to.be.rateLimited
Verifica se o código de status é 429.
Modified at 2026-06-11 10:21:25
Previous
Scripts Públicos
Next
Chamando Outras Linguagens de Programação
Built with