Apidog Docs
🇰🇷 한국인
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇰🇷 한국인
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇰🇷 한국인
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
Learning Center
HomeSupport CenterAPI ReferencesDownloadChangelog
Learning Center
HomeSupport CenterAPI ReferencesDownloadChangelog
  1. 스크립트 사용
  • Apidog 학습 센터
  • 시작하기
    • Apidog 소개
    • Apidog의 기본 개념
    • Apidog 탐색하기
    • 빠른 시작
      • 개요
      • 엔드포인트 생성하기
      • 요청 만들기
      • 어서션 추가하기
      • 테스트 시나리오 생성
      • API 문서 공유
      • 더 알아보기
    • Apidog로 마이그레이션
      • 개요
      • 수동 가져오기
      • 예약 가져오기(데이터 소스 바인딩)
      • 가져오기 옵션
      • 데이터 내보내기
      • 가져오기
        • Postman에서 가져오기
        • OpenAPI Spec 가져오기
        • cURL 가져오기
        • Markdown 가져오기
        • Insomnia에서 가져오기
        • apiDoc에서 가져오기
        • .har 파일 가져오기
        • WSDL 가져오기
  • Mock API 데이터
    • 개요
    • 스마트 목
    • 사용자 지정 목
    • 목 우선순위 순서
    • 목 스크립트
    • 클라우드 목
    • Self-Hosted Runner Mock
    • 목 언어(로케일)
  • 계정 및 환경설정
    • 계정 설정
    • OpenAPI 액세스 토큰 생성
    • 알림
    • 언어 설정
    • 단축키
    • 네트워크 프록시 구성
    • 데이터 백업
    • Apidog 업데이트
    • 계정 삭제
    • 실험적 기능
  • 요청 보내기
    • 개요
    • SSE 디버깅
    • MCP 클라이언트
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP 또는 WebService
    • GraphQL
    • gRPC
    • 디버깅에 요청 프록시 에이전트 사용
    • 요청 만들기
      • 요청 기록
      • 요청 기본 사항
      • 매개변수 및 본문
      • 요청 헤더
      • 요청 설정
      • 요청 디버그
      • 요청을 엔드포인트로 저장하기
      • HTTP/2
    • 인증 및 권한 부여
      • 개요
      • CA 및 클라이언트 인증서
      • 인증 유형
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Hawk 인증
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • 응답 및 쿠키
      • API 응답 보기
      • 쿠키 관리
      • 개요
  • API 개발 및 디버깅
    • 개요
    • 요청 생성
    • 요청 보내기
    • 디버깅 케이스
    • 테스트 케이스
    • 동적 값
    • 응답 검증
    • 디자인 우선 vs 요청 우선
    • 코드 생성
    • 환경 및 변수
      • 개요
      • 변수 사용하기
      • 환경 관리
    • Vault 시크릿
      • 개요
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • 동적 값 모듈
      • Airline
      • 동물
      • 색상
      • Commerce
      • Company
      • 데이터베이스
      • Datatype
      • 날짜
      • 금융
      • Food
      • Git
      • Hacker
      • Helpers
      • Image
      • Internet
      • Location
      • Lorem
      • 음악
      • Number
      • Person
      • Phone
      • 과학
      • String
      • System
      • Vehicle
      • Word
    • 사전/사후 프로세서
      • 개요
      • 어서션
      • 변수 추출
      • Wait
      • 보안
      • 데이터베이스 작업
        • 개요
        • MySQL
        • MongoDB
        • Redis
        • Oracle Client
      • 스크립트 사용
        • 개요
        • 전처리 스크립트
        • 사후 처리 스크립트
        • Public Scripts
        • Postman 스크립트 참조
        • 다른 프로그래밍 언어 호출하기
        • JS 라이브러리 사용하기
        • 응답 시각화
        • 스크립트 예제
          • 어서션 스크립트
          • 변수 사용하기
          • 요청 수정하기
          • 기타 예시
    • API 디버깅
      • AI Agent Debugger
      • A2A Debugger
  • API 설계
    • 개요
    • 새 API 프로젝트 생성
    • 엔드포인트 기본 사항
    • API 설계 지침
    • 모듈
    • 여러 요청 본문 예시 구성
    • 컴포넌트
    • 공통 필드
    • 전역 매개변수
    • 엔드포인트 변경 이력
    • 댓글
    • 엔드포인트 일괄 관리
    • 사용자 지정 프로토콜 API
    • Spec-first 모드(Beta)
    • 보안 스키마
      • 개요
      • 보안 스키마 생성
      • 보안 스키마 사용
      • 온라인 문서의 보안 스키마
    • 고급 기능
      • 사용자 지정 엔드포인트 필드
      • 연결된 테스트 시나리오
      • 엔드포인트 상태
      • 매개변수 목록의 표시 방식
      • 엔드포인트 고유 식별
    • 스키마
      • 개요
      • 새 스키마 생성
      • 스키마 구축
      • JSON 등에서 스키마 생성
      • oneOf, allOf, anyOf
      • Discriminator 사용하기
  • API 테스트
    • 개요
    • 테스트 시나리오
      • 테스트 시나리오 생성
      • 요청 간 데이터 전달
      • 흐름 제어 조건
      • 엔드포인트 및 엔드포인트 케이스에서 데이터 동기화
      • 다른 프로젝트에서 엔드포인트 및 엔드포인트 케이스 가져오기
      • 테스트 시나리오 내보내기
    • 테스트 보고서
      • 테스트 보고서
    • 테스트 시나리오 실행
      • 테스트 시나리오 실행
      • 테스트 시나리오 일괄 실행
      • 데이터 기반 테스트
      • 공유 테스트 데이터
      • 예약 작업
      • 다른 프로젝트의 API 런타임 환경 관리
    • 테스트 스위트
      • 개요
      • 테스트 스위트 생성
      • 테스트 스위트 오케스트레이션
      • 로컬에서 테스트 스위트 실행
      • CLI를 통해 테스트 스위트 실행
      • 예약 작업
    • API 테스트
      • 통합 테스트
      • 성능 테스트
      • 엔드투엔드 테스트
      • 회귀 테스트
      • 계약 테스트
    • Apidog CLI
      • 개요
      • Apidog CLI 설치 및 실행
      • Apidog CLI 옵션
    • CI/CD
      • 개요
      • Github Actions와 통합
      • Gitlab과 통합
      • Jenkins와 통합하기
      • Git 커밋으로 테스트 트리거하기
  • API 문서 게시
    • 개요
    • 지원되는 API 기술
    • Quick Share
    • API 문서 보기
    • Markdown 문서
    • 문서 사이트 게시
    • 사용자 지정 로그인 페이지
    • 사용자 지정 레이아웃
    • 사용자 지정 CSS, JavaScript, HTML
    • 사용자 지정 도메인
    • AI 기능
    • SEO 설정
    • 고급 설정
      • 문서 검색
      • CORS 프록시
      • Google Analytics 통합
      • 폴더 트리 설정
      • 가시성 설정
      • 문서 URL에 값 임베드하기
    • API 버전
      • 개요
      • API 버전 생성
      • API 버전 게시
      • API 버전별 엔드포인트 공유
  • 브랜치
    • 개요
    • 스프린트 브랜치 생성
    • 브랜치에서 API 테스트하기
    • 브랜치에서 API 설계하기
    • 스프린트 브랜치 병합
    • 스프린트 브랜치 관리
    • AI Branch(베타)
  • AI 기능
    • 개요
    • AI 기능 활성화
    • 테스트 케이스 생성
    • AI로 스키마 수정하기
    • 엔드포인트 규정 준수 검사
    • API 문서 완성도 검사
    • AI 기반 필드 명명
    • 자주 묻는 질문
  • Apidog MCP 서버
    • 개요
    • AI에 Apidog 프로젝트 연결
    • 게시된 문서를 AI에 연결하기
    • OpenAPI 파일을 AI에 연결하기
  • 모범 사례
    • API 서명 처리
    • OAuth 2.0으로 보호되는 API에 접근하기
    • 협업 워크플로
    • 인증 상태 관리
  • 오프라인 공간
    • 개요
  • Apidog Europe
    • Apidog Europe
  • 관리
    • 프로젝트 관리
      • 프로젝트 관리
      • 알림 설정
      • 프로젝트 멤버 관리
      • 프로젝트 리소스
        • 데이터베이스 연결
        • Git 연결
    • 팀 관리
      • 팀 관리
      • 팀 멤버 관리
      • 팀 활동
      • 팀 역할 및 권한
      • 팀 리소스
        • General Runner
        • 팀 변수
        • 요청 프록시 에이전트
      • 실시간 협업
        • 팀 협업
    • 온보딩 체크리스트
      • 기본 개념
      • 온보딩 가이드
    • 조직 관리
      • 조직 관리
      • 조직 역할 및 권한
      • 플랜 관리
        • 조직의 청구 관리자
      • Single Sign-On (SSO)
        • SSO 개요
        • Microsoft Entra ID 구성
        • Okta 구성하기
        • 조직에 대한 SSO 구성
        • 사용자 계정 관리
        • 그룹을 팀에 매핑하기
      • SCIM 프로비저닝
        • SCIM 프로비저닝 소개
        • Microsoft Entra ID
        • Okta
      • 조직 리소스
        • 셀프 호스팅 Runner
  • 청구
    • 개요
    • 크레딧
    • 플랜 업그레이드
    • 대체 결제 방법
    • 구독 관리
    • 유료 팀을 조직으로 이동하기
  • 애드온
    • API Hub
    • Apidog Intellij IDEA 플러그인
    • 브라우저 확장 프로그램
      • Chrome
      • Microsoft Edge
    • 요청 프록시
      • 웹에서의 요청 프록시
      • 공유 문서의 요청 프록시
      • 클라이언트의 요청 프록시
  • 데이터 및 보안
    • 데이터 저장 및 보안
    • 사용자 데이터 개인정보 보호 및 보안
    • 요청 라우팅 및 데이터 보안
  • 참조
    • API 설계 우선 접근 방식
    • Apidog OpenAPI 사양 확장
    • JSONPath
    • XPath
    • 정규 표현식
    • JSON Schema
    • CSV 파일 형식
    • Java 환경 설치
    • Runner 배포 환경
    • Apidog Markdown 구문
    • Apidog Swagger 확장
      • 개요
      • x-apidog-folder
      • x-apidog-status
      • x-apidog-name
      • x-apidog-maintainer
    • Apidog JSON Schema 확장
      • 개요
      • x-apidog-mock
      • x-apidog-orders
      • x-apidog-enum
  • 지원 센터
  1. 스크립트 사용

Postman 스크립트 참조

Apidog의 스크립팅 엔진은 pm 객체를 사용하여 요청, 응답 및 변수에 관한 데이터에 접근합니다. 이 방식은 Postman과 호환됩니다.

pm 객체#

pm 객체에는 다음과 같은 주요 속성이 있습니다.
속성데이터 유형설명
pm.info.eventNameString현재 실행 중인 스크립트의 유형입니다(전처리기 스크립트 또는 후처리기 스크립트).
pm.info.iterationNumber현재 반복 횟수입니다(테스트 컬렉션에서만 유효합니다).
pm.info.iterationCountNumber전체 반복 횟수입니다(테스트 컬렉션에서만 유효합니다).
pm.info.requestNameString현재 실행 중인 API의 이름입니다.
pm.info.requestIdString현재 실행 중인 API의 ID입니다.

요청 보내기(pm.sendRequest)#

pm.sendRequest:Function
pm.sendRequest는 스크립트에서 비동기 HTTP/HTTPS 요청을 보내는 데 사용됩니다.
이 메서드는 Collection SDK와 호환되는 요청 매개변수와 콜백 함수 매개변수를 허용합니다. 콜백에는 2개의 인수가 있습니다. 첫 번째는 오류이고 두 번째는 Collection SDK와 호환되는 응답입니다. 자세한 내용은 Collection SDK documentation을 참조하십시오.
전처리기 및 후처리기 스크립트 모두에서 사용할 수 있습니다.
더 많은 참조 자료는 다음을 방문해 주십시오.
Request JSON 구조
Response 구조

pm.variables#

pm.variables: 여기에서 Variable SDK 문서를 확인하십시오.
로컬 변수입니다. 서로 다른 변수의 우선순위는 다음과 같습니다.
Local Variables > Environment Variables > Global Variables Shared within Project > Global Variables Shared within Team.
pm.variables.has(variableName:String):function → Boolean: 임시 변수가 존재하는지 확인합니다.
pm.variables.get(variableName:String):function → *: 임시 변수를 가져옵니다.
pm.variables.set(variableName:String, variableValue:String):function → void: 임시 변수를 설정합니다.
pm.variables.replaceIn(variableName:String):function: 문자열 내의 "동적 변수"(예: {{variable_name}})를 실제 값으로 대체합니다. 예:
// 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: 문자열 내의 "동적 값 표현식"(예: {{$person.fullName}})을 실제 값으로 대체합니다. 이 메서드는 Promise를 반환하므로 호출할 때 await를 사용해야 합니다. 예:
// 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: 모든 로컬 변수를 객체로 가져옵니다.

pm.iterationData#

pm.iterationData:
테스트 데이터 변수
현재 테스트 데이터는 별도로 관리되므로 스크립트에서 테스트 데이터 변수를 직접 설정하는 것은 지원하지 않습니다. 그러나 아래와 같이 스크립트에서 변수에 접근할 수 있습니다.
pm.iterationData.has(variableName:String):function → Boolean: 테스트 변수가 존재하는지 확인합니다.
pm.iterationData.get(variableName:String):function → *: 테스트 변수를 가져옵니다.
pm.iterationData.replaceIn(variableName:String):function: 문자열의 동적 변수를 실제 값으로 대체합니다. 예: {{variable_name}}.
pm.iterationData.toObject():function → Object: 모든 로컬 변수를 객체로 가져옵니다.

pm.environment#

pm.environment.name:String: 환경 이름입니다.
pm.environment.has(variableName:String):function → Boolean: 환경 변수가 존재하는지 확인합니다.
pm.environment.get(variableName:String):function → *: 환경 변수를 가져옵니다.
pm.environment.set(variableName:String, variableValue:String):function: 환경 변수를 설정합니다.
pm.environment.replaceIn(variableName:String):function: 문자열의 동적 변수를 실제 값으로 대체합니다. 예: {{variable_name}}.
pm.environment.toObject():function → Object: 모든 로컬 변수를 객체로 가져옵니다.
pm.environment.unset(variableName:String):function: 환경 변수 설정을 해제합니다.
pm.environment.clear():function: 현재 환경 아래의 모든 환경 변수를 지웁니다.
팁: 위에서 언급한 작업은 현재 값만 읽고 쓰며, 원격 값은 읽거나 쓰지 않습니다.

pm.moduleVariables#

pm.moduleVariables: Object
모듈 수준 변수의 Current Value를 관리하는 데 사용됩니다.
pm.moduleVariables.has(variableName: String): function → Boolean
특정 모듈 변수가 존재하는지 확인합니다.
pm.moduleVariables.get(variableName: String): function → *
특정 모듈 변수의 값을 검색합니다.
pm.moduleVariables.set(variableName: String, variableValue: String): function
특정 모듈 변수의 값을 설정합니다.
pm.moduleVariables.replaceIn(variableName: String): function
문자열 내의 {{variable}} 자리 표시자를 실제 값으로 대체합니다.
pm.moduleVariables.toObject(): function → Object
모든 모듈 변수를 키-값 객체로 반환합니다.
pm.moduleVariables.unset(variableName: String): function
특정 모듈 변수를 삭제합니다.
pm.moduleVariables.clear(): function
현재 모듈 내의 모든 모듈 변수를 지웁니다.
예:
호환성 참고:
pm.collectionVariables는 pm.moduleVariables와 동일한 방식으로 작동하며 서로 바꿔 사용할 수 있습니다.

pm.globals#

pm.globals.has(variableName:String):function → Boolean: 전역 변수가 존재하는지 확인합니다.
pm.globals.get(variableName:String,variableScope:String):function → *: 전역 변수를 가져옵니다. 변수의 범위를 지정하려면 'PROJECT'(기본값) 또는 'TEAM'을 사용하십시오.
pm.globals.set(variableName:String,variableValue:String, variableScope:String):function: 전역 변수를 설정합니다. 변수의 범위를 지정하려면 'PROJECT'(기본값) 또는 'TEAM'을 사용하십시오.
pm.globals.replaceIn(variableName:String):function: 문자열의 동적 변수를 실제 값으로 대체합니다. 예: {{variable_name}}.
전처리기 스크립트에서 변수를 포함하는 요청 매개변수의 값을 가져오려면 pm.globals.replaceIn을 사용하여 변수를 실제 값으로 대체하십시오.
pm.globals.toObject():function → Object: 모든 전역 변수를 객체로 가져옵니다.
pm.globals.unset(variableName:String,variableScope:String):function: 전역 변수 설정을 해제합니다. 변수의 범위를 지정하려면 'PROJECT'(기본값) 또는 'TEAM'을 사용하십시오.
pm.globals.clear():function: 현재 환경 아래의 모든 전역 변수를 지웁니다.
TIP
1.
위의 모든 작업은 initial values가 아니라 current values에만 영향을 줍니다.
2.
'TEAM' 범위로 set을 사용할 경우 기존 팀 변수의 현재 값만 업데이트합니다. 팀 변수가 존재하지 않으면 생성되지 않습니다. 대신 해당 변수는 로컬 변수로 처리됩니다.

pm.request#

pm.request: 여기에서 Request SDK 문서를 확인하십시오.
request는 API 요청 객체입니다. 전처리기 스크립트에서는 전송될 요청입니다. 후처리기 스크립트에서는 이미 전송된 요청입니다.
request에는 다음 정보가 포함됩니다.
pm.request.url:Url: 현재 요청의 URL입니다.
pm.request.getBaseUrl(): 현재 런타임 환경에서 선택한 BASE URL을 검색합니다. 이 기능은 버전 2.1.39 이후부터 지원됩니다.
pm.request.headers:HeaderList: 현재 요청의 헤더 목록입니다.
pm.request.method:String: GET, POST 등 현재 요청의 메서드입니다.
pm.request.body: RequestBody: 현재 요청의 본문입니다.
pm.request.headers.add({ key: headerName:String, value: headerValue:String}):function: 현재 요청에 headerName 키를 가진 헤더를 추가합니다.
pm.request.headers.remove(headerName:String):function: 현재 요청에서 headerName 키를 가진 헤더를 삭제합니다.
pm.request.headers.upsert({ key: headerName:String, value: headerValue:String}):function: 현재 요청에서 headerName 키를 가진 헤더를 업서트합니다. 키가 이미 존재하면 수정됩니다.
다음 API는 postprocessor scripts에서만 사용할 수 있습니다.

pm.response#

pm.response: 여기에서 Response SDK documentation 을 확인하십시오.
후처리기 스크립트에서 반환 응답 정보에 접근하려면 pm.response를 사용하십시오.
pm.response에는 다음 정보가 포함됩니다.
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: 여기에서 CookieList SDK documentation을 확인하십시오.
Cookies는 현재 요청의 도메인 이름 아래에 있는 쿠키 목록입니다.
pm.cookies.has(cookieName:String):Function → Boolean
cookieName의 쿠키 값이 존재하는지 확인합니다.
pm.cookies.get(cookieName:String):Function → String
cookieName에서 쿠키 값을 가져옵니다.
pm.cookies.toObject:Function → Object
현재 도메인 아래의 모든 쿠키를 객체로 가져옵니다.
pm.cookies.jar().clear(pm.request.url)
모든 쿠키를 지웁니다.
TIP
pm.cookies는 API 요청이 보낸 쿠키가 아니라 API 요청 이후 반환된 쿠키입니다.

pm.test#

이 함수는 결과가 기대를 충족하는지 어서션하는 데 사용됩니다.
아래 예제는 응답이 올바른지 판단하는 데 사용할 수 있습니다.
콜백 함수에서 done(선택적 매개변수)을 사용하여 비동기 테스트를 실행할 수 있습니다.
pm.test.index():Function → Number
특정 위치의 전체 테스트 수를 가져옵니다.

pm.expect#

pm.expect는 어서션 메서드입니다. 여기에서 ChaiJS expects BDD 라이브러리 문서를 확인하십시오.
이 메서드는 응답 또는 변수의 데이터를 어서션하도록 설계되었습니다. 더 많은 pm.expect 예제를 보려면 Assertion library examples를 방문하십시오.

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

빠른 어서션을 위해 기본 제공 pm.response.to.be를 사용할 수 있습니다.
pm.response.to.be.info
상태 코드가 1XX인지 확인합니다.
pm.response.to.be.success
상태 코드가 2XX인지 확인합니다.
pm.response.to.be.redirection
상태 코드가 3XX인지 확인합니다.
pm.response.to.be.clientError
상태 코드가 4XX인지 확인합니다.
pm.response.to.be.serverError
상태 코드가 5XX인지 확인합니다.
pm.response.to.be.error
상태 코드가 4XX 또는 5XX인지 확인합니다.
pm.response.to.be.ok
상태 코드가 200인지 확인합니다.
pm.response.to.be.accepted
상태 코드가 202인지 확인합니다.
pm.response.to.be.badRequest
상태 코드가 400인지 확인합니다.
pm.response.to.be.unauthorized
상태 코드가 401인지 확인합니다.
pm.response.to.be.forbidden
상태 코드가 403인지 확인합니다.
pm.response.to.be.notFound
상태 코드가 404인지 확인합니다.
pm.response.to.be.rateLimited
상태 코드가 429인지 확인합니다.
Modified at 2026-06-09 08:53:32
Previous
Public Scripts
Next
다른 프로그래밍 언어 호출하기
Built with