Apidog Docs
🇪🇸 Español
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇪🇸 Español
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇪🇸 Español
  • 🇺🇸 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 aprendizaje de Apidog
  • Primeros pasos
    • Introducción a Apidog
    • Conceptos básicos en Apidog
    • Navegación por Apidog
    • Inicio rápido
      • Descripción general
      • Crear un Endpoint
      • Realizar una petición
      • Añadir una aserción
      • Creación de escenarios de prueba
      • Compartir documentación de API
      • Explore Más
    • Migración a Apidog
      • Descripción general
      • Importación manual
      • Importación programada (Vincular fuentes de datos)
      • Opciones de importación
      • Exportar datos
      • Importar desde
        • Importar desde Postman
        • Importar especificación OpenAPI
        • Importar cURL
        • Importar archivos Markdown
        • Importar desde Insomnia
        • Importar desde apiDoc
        • Importar archivo .har
        • Importar WSDL
  • Datos de API mock
    • Descripción general
    • Smart Mock
    • Mock personalizado
    • Secuencia de prioridad de mock
    • Scripts de mock
    • Mock en la nube
    • Mock de Runner autoalojado
    • Idioma de mock (locales)
  • Cuenta y preferencias
    • Configuración de la cuenta
    • Generación de un token de acceso OpenAPI
    • Notificación
    • Configuración de idioma
    • Teclas de acceso rápido
    • Configuración del proxy de red
    • Copia de seguridad de los datos
    • Actualizar Apidog
    • Eliminar cuenta
    • Funciones experimentales
  • Enviar peticiones
    • Descripción general
    • Depuración de SSE
    • Cliente MCP
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP o WebService
    • GraphQL
    • gRPC
    • Usar agentes proxy de petición para la depuración
    • Crear peticiones
      • Historial de peticiones
      • Conceptos básicos de las peticiones
      • Parámetros y cuerpo
      • Encabezados de petición
      • Configuración de peticiones
      • Depurar peticiones
      • Guardar peticiones como endpoints
      • HTTP/2
    • Autenticación y autorización
      • Descripción general
      • Certificados de CA y de cliente
      • Tipos de autorización
      • Autenticación Digest
      • OAuth 1.0
      • OAuth 2.0
      • Autenticación Hawk
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • Respuesta y cookies
      • Visualización de respuestas de API
      • Gestión de cookies
      • Descripción general
  • Desarrollar y depurar APIs
    • Descripción general
    • Generación de peticiones
    • Envío de peticiones
    • Casos de depuración
    • Casos de prueba
    • Valores dinámicos
    • Validación de respuestas
    • Diseño primero vs. petición primero
    • Generación de código
    • Entornos y variables
      • Descripción general
      • Uso de variables
      • Gestión de entornos
    • Secretos de la bóveda
      • Descripción general
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • Módulos de valores dinámicos
      • Aerolínea
      • Animal
      • Color
      • Comercio
      • Empresa
      • Base de datos
      • Tipo de dato
      • Fecha
      • Finanzas
      • Comida
      • Git
      • Hacker
      • Helpers
      • Imagen
      • Internet
      • Ubicación
      • Lorem
      • Música
      • Número
      • Persona
      • Teléfono
      • Ciencia
      • String
      • Sistema
      • Vehículo
      • Word
    • Preprocesadores y postprocesadores
      • Descripción general
      • Aserción
      • Extraer variable
      • Esperar
      • Seguridad
      • Operaciones de base de datos
        • Descripción general
        • MySQL
        • MongoDB
        • Redis
        • Cliente Oracle
      • Uso de scripts
        • Descripción general
        • Scripts de preprocesador
        • Scripts de posprocesador
        • Scripts públicos
        • Referencia de scripts de Postman
        • Llamar a otros lenguajes de programación
        • Uso de bibliotecas JS
        • Visualización de respuestas
        • Ejemplos de scripts
          • Scripts de aserción
          • Uso de variables
          • Modificación de peticiones
          • Otros ejemplos
    • Depuración de APIs
      • Depurador de agentes de IA
      • Depurador A2A
  • Diseñar APIs
    • Descripción general
    • Crear un nuevo proyecto de API
    • Conceptos básicos de endpoints
    • Directrices de diseño de API
    • Módulo
    • Configurar múltiples ejemplos de cuerpo de petición
    • Componentes
    • Campos comunes
    • Parámetros globales
    • Historial de cambios del endpoint
    • Comentarios
    • Gestión de endpoints por lotes
    • API de protocolo personalizado
    • Modo Spec-first (Beta)
    • Esquemas de seguridad
      • Descripción general
      • Crear un esquema de seguridad
      • Usar el esquema de seguridad
      • Esquema de seguridad en la documentación en línea
    • Funciones avanzadas
      • Campos personalizados de endpoint
      • Escenarios de prueba asociados
      • Estado del endpoint
      • Apariencia de las listas de parámetros
      • Identificación única de endpoints
    • Schemas
      • Descripción general
      • Crear un nuevo esquema
      • Crear un esquema
      • Generar esquemas a partir de JSON, etc.
      • oneOf, allOf, anyOf
      • Uso de Discriminator
  • Pruebas de API
    • Descripción general
    • Escenarios de prueba
      • Crear un escenario de prueba
      • Pasar datos entre peticiones
      • Condiciones de control de flujo
      • Sincronizar datos desde endpoints y casos de endpoint
      • Importar endpoints y casos de endpoint desde otros proyectos
      • Exportar escenarios de prueba
    • Informes de prueba
      • Informes de prueba
    • Ejecutar escenarios de prueba
      • Ejecutar un escenario de prueba
      • Ejecutar escenarios de prueba por lotes
      • Pruebas basadas en datos
      • Datos de prueba compartidos
      • Tareas programadas
      • Gestionar el entorno de ejecución de API de otros proyectos
    • Suite de pruebas
      • Descripción general
      • Crear una suite de pruebas
      • Orquestar suite de pruebas
      • Ejecutar conjuntos de pruebas localmente
      • Ejecutar suites de prueba mediante CLI
      • Tareas programadas
    • Probar APIs
      • Pruebas de integración
      • Pruebas de rendimiento
      • Pruebas de extremo a extremo
      • Pruebas de regresión
      • Pruebas de contrato
    • Apidog CLI
      • Descripción general
      • Instalación y ejecución de Apidog CLI
      • Opciones de Apidog CLI
    • CI/CD
      • Descripción general
      • Integrar con Github Actions
      • Integrar con Gitlab
      • Integrar con Jenkins
      • Activar prueba mediante commit de Git
  • Publicar documentación de API
    • Descripción general
    • Tecnologías de API compatibles
    • Uso compartido rápido
    • Visualización de la documentación de API
    • Documentación de Markdown
    • Publicación de sitios de documentación
    • Página de inicio de sesión personalizada
    • Diseños personalizados
    • CSS, JavaScript, HTML personalizados
    • Dominio personalizado
    • Funciones de IA
    • Configuración de SEO
    • Configuración avanzada
      • Búsqueda en la documentación
      • Proxy CORS
      • Integración de Google Analytics
      • Configuración del árbol de carpetas
      • Configuración de visibilidad
      • Incrustación de valores en las URL de documentación
    • Versiones de API
      • Descripción general
      • Crear versiones de API
      • Publicación de versiones de API
      • Compartir endpoints con versiones de API
  • Ramas
    • Descripción general
    • Crear una rama de sprint
    • Prueba de APIs en una rama
    • Diseño de API en una rama
    • Fusionar ramas de sprint
    • Gestión de ramas de sprint
    • AI Branch (Beta)
  • Funciones de IA
    • Descripción general
    • Habilitación de funciones de IA
    • Generación de casos de prueba
    • Modificación de esquemas con IA
    • Comprobación de cumplimiento del endpoint
    • Comprobación de integridad de la documentación de API
    • Nomenclatura de campos con IA
    • Preguntas frecuentes
  • Servidor MCP de Apidog
    • Descripción general
    • Conectar un proyecto de Apidog a la IA
    • Conectar documentación publicada a la IA
    • Conectar archivos OpenAPI a la IA
  • Mejores prácticas
    • Gestión de firmas de API
    • Acceso a APIs protegidas con OAuth 2.0
    • Flujo de trabajo de colaboración
    • Gestión del estado de autenticación
  • Espacio sin conexión
    • Descripción general
  • Administración
    • Gestión de proyectos
      • Gestión de proyectos
      • Configuración de notificaciones
      • Gestión de miembros del proyecto
      • Recursos del proyecto
        • Conexión a la base de datos
        • Conexión con Git
    • Gestión de equipos
      • Gestión de equipos
      • Gestión de miembros del equipo
      • Actividades del equipo
      • Roles y permisos del equipo
      • Recursos del equipo
        • General Runner
        • Variables de equipo
        • Agente proxy de peticiones
      • Colaboraciones en tiempo real
        • Colaboración en equipo
    • Lista de verificación de incorporación
      • Conceptos básicos
      • Guía de incorporación
    • Gestión de la organización
      • Gestión de la organización
      • Rol y permisos de la organización
      • Gestión de planes
        • Administradores de facturación en organizaciones
      • Inicio de sesión único (SSO)
        • Descripción general de SSO
        • Configuración de Microsoft Entra ID
        • Configuración de Okta
        • Configuración de SSO para una organización
        • Gestión de cuentas de usuario
        • Asignar grupos a equipos
      • Aprovisionamiento SCIM
        • Introducción al aprovisionamiento SCIM
        • Microsoft Entra ID
        • Okta
      • Recursos de la organización
        • Runner autohospedado
  • Facturación
    • Descripción general
    • Créditos
    • Actualizar su plan
    • Métodos de pago alternativos
    • Gestión de suscripciones
    • Trasladar equipos de pago a organizaciones
  • Complementos
    • API Hub
    • Plugin Apidog Intellij IDEA
    • Extensión del navegador
      • Chrome
      • Microsoft Edge
    • Proxy de peticiones
      • Proxy de peticiones en la web
      • Proxy de petición en documentos compartidos
      • Proxy de peticiones en el cliente
  • Datos y seguridad
    • Almacenamiento y seguridad de datos
    • Privacidad y seguridad de los datos del usuario
    • Enrutamiento de peticiones y seguridad de datos
  • Referencias
    • Enfoque de diseño de API primero
    • Extensiones de la especificación OpenAPI de Apidog
    • JSONPath
    • XPath
    • Expresiones regulares
    • JSON Schema
    • Formato de archivo CSV
    • Instalación del entorno Java
    • Entorno de implementación de Runner
    • Sintaxis Markdown de Apidog
    • Extensiones Swagger de Apidog
      • Descripción general
      • x-apidog-folder
      • x-apidog-status
      • x-apidog-name
      • x-apidog-maintainer
    • Extensiones JSON Schema de Apidog
      • Descripción general
      • x-apidog-mock
      • x-apidog-orders
      • x-apidog-enum
  • Apidog Europa
    • Apidog Europe
  • Centro de soporte
  1. Uso de scripts

Referencia de scripts de Postman

El motor de scripting de Apidog utiliza el objeto pm para acceder a datos sobre la petición, la respuesta y las variables. Este método es compatible con Postman.

Objeto pm#

El objeto pm tiene las siguientes propiedades principales.
PropiedadTipo de datosDescripción
pm.info.eventNameStringEl tipo de scripts que se está ejecutando actualmente (script de preprocesador o script de postprocesador).
pm.info.iterationNumberEl número de la iteración actual (solo válido en colecciones de prueba).
pm.info.iterationCountNumberEl número total de iteraciones (solo válido en colecciones de prueba).
pm.info.requestNameStringEl nombre de la API actual en ejecución.
pm.info.requestIdStringEl ID de la API actual en ejecución.

Enviar peticiones (pm.sendRequest)#

pm.sendRequest:Function
pm.sendRequest se utiliza para enviar peticiones HTTP/HTTPS asíncronas en scripts.
Este método acepta un parámetro de petición compatible con collection SDK y un parámetro de función de callback. El callback tiene 2 argumentos. El primero es un error y el segundo es una respuesta compatible con collection SDK. Consulte más información en la documentación de Collection SDK.
Puede usarlo tanto en scripts de preprocesador como de postprocesador.
Para obtener más referencias, visite:
Estructura de Request JSON
Estructura de Response

pm.variables#

pm.variables: consulte la documentación de Variable SDK aquí.
Variables locales. La prioridad de las diferentes variables es la siguiente:
Variables locales > Variables de entorno > Variables globales compartidas dentro del proyecto > Variables globales compartidas dentro del equipo.
pm.variables.has(variableName:String):function → Boolean: Compruebe si existe una variable temporal.
pm.variables.get(variableName:String):function → *: obtenga una variable temporal.
pm.variables.set(variableName:String, variableValue:String):function → void: establezca una variable temporal.
pm.variables.replaceIn(variableName:String):function: Sustituye las "variables dinámicas" dentro de una cadena (por ejemplo, {{variable_name}}) por valores reales. Ejemplo:
// 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: Sustituye las "expresiones de valor dinámico" dentro de una cadena (por ejemplo, {{$person.fullName}}) por valores reales. Este método devuelve una Promise, por lo que debe usar await al llamarlo. Ejemplo:
// 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: obtenga todas las variables locales como objetos.

pm.iterationData#

pm.iterationData:
Variables de datos de prueba
Actualmente no admitimos la configuración de variables de datos de prueba directamente en scripts, ya que los datos de prueba se gestionan por separado. Sin embargo, puede acceder a las variables en scripts como se muestra a continuación:
pm.iterationData.has(variableName:String):function → Boolean: Compruebe si existe una variable de prueba.
pm.iterationData.get(variableName:String):function → *: obtenga una variable de prueba.
pm.iterationData.replaceIn(variableName:String):function: sustituya variables dinámicas en una cadena por sus valores reales, por ejemplo, {{variable_name}}.
pm.iterationData.toObject():function → Object: obtenga todas las variables locales como objetos.

pm.environment#

pm.environment.name:String: el nombre del entorno.
pm.environment.has(variableName:String):function → Boolean: Compruebe si existe una variable de entorno.
pm.environment.get(variableName:String):function → *: obtenga una variable de entorno.
pm.environment.set(variableName:String, variableValue:String):function: establezca una variable de entorno.
pm.environment.replaceIn(variableName:String):function: sustituya variables dinámicas en una cadena por sus valores reales, por ejemplo, {{variable_name}}.
pm.environment.toObject():function → Object: obtenga todas las variables locales como objetos.
pm.environment.unset(variableName:String):function: quite una variable de entorno.
pm.environment.clear():function: borre todas las variables de entorno del entorno actual.
CONSEJO: las operaciones mencionadas anteriormente solo leen y escriben valores actuales; no leen ni escriben valores remotos.

pm.moduleVariables#

pm.moduleVariables: Object
Se utiliza para gestionar el valor actual de las variables de nivel de módulo.
pm.moduleVariables.has(variableName: String): function → Boolean
Comprueba si existe una variable de módulo específica.
pm.moduleVariables.get(variableName: String): function → *
Recupera el valor de una variable de módulo específica.
pm.moduleVariables.set(variableName: String, variableValue: String): function
Establece el valor de una variable de módulo específica.
pm.moduleVariables.replaceIn(variableName: String): function
Sustituye los marcadores de posición {{variable}} dentro de una cadena por sus valores reales.
pm.moduleVariables.toObject(): function → Object
Devuelve todas las variables de módulo como un objeto clave-valor.
pm.moduleVariables.unset(variableName: String): function
Elimina una variable de módulo específica.
pm.moduleVariables.clear(): function
Borra todas las variables de módulo dentro del módulo actual.
Ejemplo:
Nota de compatibilidad:
pm.collectionVariables funciona de la misma manera que pm.moduleVariables y puede usarse indistintamente.

pm.globals#

pm.globals.has(variableName:String):function → Boolean: Compruebe si existe una variable global.
pm.globals.get(variableName:String,variableScope:String):function → *: obtenga una variable global. Use 'PROJECT' (predeterminado) o 'TEAM' para especificar el ámbito de la variable.
pm.globals.set(variableName:String,variableValue:String, variableScope:String):function: establezca una variable global. Use 'PROJECT' (predeterminado) o 'TEAM' para especificar el ámbito de la variable.
pm.globals.replaceIn(variableName:String):function: sustituya variables dinámicas en una cadena por sus valores reales, por ejemplo, {{variable_name}}.
Para obtener el valor de un parámetro de petición que contiene una variable en scripts de preprocesador, use pm.globals.replaceIn para sustituir la variable por el valor real.
pm.globals.toObject():function → Object: obtenga todas las variables globales como objetos.
pm.globals.unset(variableName:String,variableScope:String):function: quite una variable global. Use 'PROJECT' (predeterminado) o 'TEAM' para especificar el ámbito de la variable.
pm.globals.clear():function: borre todas las variables globales del entorno actual.
TIP
1.
Todas las operaciones anteriores afectan solo a los valores actuales, no a los valores iniciales.
2.
Al usar set con el ámbito 'TEAM', solo se actualizará el valor actual de una variable de equipo existente. Si la variable de equipo no existe, no se creará. En su lugar, la variable se tratará como una variable local.

pm.request#

pm.request: consulte la documentación de Request SDK aquí.
request es el objeto de petición de API. En el script de preprocesador, es la petición que se enviará. En el script de postprocesador, es la petición que ya se ha enviado.
request incluye la siguiente información:
pm.request.url:Url: la URL de la petición actual.
pm.request.getBaseUrl(): Recupera la BASE URL seleccionada por el entorno de tiempo de ejecución actual. Esta función es compatible a partir de la versión 2.1.39.
pm.request.headers:HeaderList: la lista de encabezados de la petición actual.
pm.request.method:String: el método de la petición actual, como GET, POST, etc.
pm.request.body: RequestBody: el cuerpo de la petición actual.
pm.request.headers.add({ key: headerName:String, value: headerValue:String}):function: Añada un encabezado con una clave, headerName, en la petición actual.
pm.request.headers.remove(headerName:String):function: Elimine un encabezado con una clave, headerName, en la petición actual.
pm.request.headers.upsert({ key: headerName:String, value: headerValue:String}):function: Haga upsert de un encabezado con una clave, headerName, en la petición actual. Si la clave ya existe, se modificará.
La siguiente API solo puede usarse en scripts de postprocesador.

pm.response#

pm.response: consulte la documentación de Response SDK aquí.
Use pm.response para acceder a la información de respuesta devuelta en scripts de postprocesador.
pm.response incluye la siguiente información:
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: consulte la documentación de CookieList SDK aquí.
Cookies es la lista de cookies bajo el nombre de dominio de la petición actual.
pm.cookies.has(cookieName:String):Function → Boolean
Compruebe si existe el valor de cookie de un cookieName.
pm.cookies.get(cookieName:String):Function → String
Obtenga el valor de cookie de cookieName.
pm.cookies.toObject:Function → Object
Obtenga todas las cookies del dominio actual como un objeto.
pm.cookies.jar().clear(pm.request.url)
Borre todas las cookies.
TIP
pm.cookies es la cookie devuelta después de la petición de API, no la cookie enviada por la petición de API.

pm.test#

Esta función se utiliza para afirmar si un resultado cumple las expectativas.
El siguiente ejemplo puede usarse para determinar si una respuesta es correcta.
Puede ejecutar una prueba asíncrona usando done (un parámetro opcional) en una función de callback.
pm.test.index():Function → Number
Obtenga el número total de pruebas desde una ubicación específica.

pm.expect#

pm.expect es un método de aserción. Consulte aquí la documentación de la biblioteca BDD expects de ChaiJS.
Este método está diseñado para afirmar datos en la respuesta o en variables. Para obtener más ejemplos de pm.expect, visite ejemplos de biblioteca de aserciones.

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.*#

Puede usar el pm.response.to.be integrado para aserciones rápidas.
pm.response.to.be.info
Compruebe si el código de estado es 1XX.
pm.response.to.be.success
Compruebe si el código de estado es 2XX.
pm.response.to.be.redirection
Compruebe si el código de estado es 3XX.
pm.response.to.be.clientError
Compruebe si el código de estado es 4XX.
pm.response.to.be.serverError
Compruebe si el código de estado es 5XX.
pm.response.to.be.error
Compruebe si el código de estado es 4XX o 5XX.
pm.response.to.be.ok
Compruebe si el código de estado es 200.
pm.response.to.be.accepted
Compruebe si el código de estado es 202.
pm.response.to.be.badRequest
Compruebe si el código de estado es 400.
pm.response.to.be.unauthorized
Compruebe si el código de estado es 401.
pm.response.to.be.forbidden
Compruebe si el código de estado es 403.
pm.response.to.be.notFound
Compruebe si el código de estado es 404.
pm.response.to.be.rateLimited
Compruebe si el código de estado es 429.
Modified at 2026-06-09 08:52:14
Previous
Scripts públicos
Next
Llamar a otros lenguajes de programación
Built with