개발자용 API 간편인증 통합조회

간편인증 조회 API
사용자 승인 한 번으로 공공·금융 자료를 받으세요.

이름·생년월일·휴대전화번호와 간편인증 방식만 보내면, 사용자가 카카오·토스·PASS로 한 번 승인하고 공공·금융 기관의 자료를 표준화된 JSON으로 받습니다. 가입·공동인증서·추가 앱 설치가 필요 없습니다.

서비스·시스템에 연동하는 기업·개발자용 API입니다. 개인이 자기 정보를 조회하는 화면이 아닙니다.

  • 69개별 조회 상품
  • 15묶음 조회 상품
  • 1회인증으로 끝
  • 24시간결과 재조회

비교

왜 간편인증 조회인가요

본인 확인은 사용자가 직접

이름·생년월일·휴대전화번호를 보내면 사용자의 간편인증 앱으로 승인 요청이 갑니다. 승인해야만 자료가 열리므로, 서비스는 주민등록번호나 공동인증서를 보관할 필요가 없습니다.

승인은 한 번, 조회는 여러 건

인증 승인 뒤에는 결과 조회를 반복해도 다시 승인받지 않습니다. 여러 항목이 필요하면 묶음 상품으로 한 번에 받는 편이 빠릅니다.

실패·대기는 과금되지 않음

과금은 인증요청이 실제 발송된 시점과 결과가 처음 제공된 시점 두 번뿐입니다. 대기·조회 중·만료·실패 응답과 같은 결과의 재조회는 청구되지 않습니다.

결과는 표준 JSON

기관마다 다른 표기를 항목 이름·형식·시각(한국시간)까지 맞춰 내려줍니다. 원본 화면 파싱이나 코드값 사전 없이 바로 저장·표시할 수 있습니다.

묶음 조회 15종

여러 항목을 한 번 인증으로

묶음에 담긴 조회는 승인 한 번으로 함께 받습니다. 묶음은 필요한 조회를 한 응답에 모아 주고, 대부분의 묶음은 결과 단가가 30% 싸집니다. 민원서류 통합조회처럼 받을 조회를 직접 고르는 묶음은 고른 조회 단가의 합으로 과금합니다.

통합조회 패키지 · 14종

차량 통합이력조회

자동차 · 14종을 한 응답에

30% 할인
488P 결과 1회 · 인증 20P 별도 따로 호출 840P → 352P 절약
전체 구성 보기 · 10종 더 보기
선택형 통합조회 · 9종

개인 국세 통합조회

국세 · 9종 중 골라서 한 응답에

조합 선택
조회별 합산 결과 1회 · 인증 20P 별도 고른 조회 단가의 합 · 인증은 1회
전체 구성 보기 · 5종 더 보기
선택형 통합조회 · 15종

사업자 국세 통합조회

국세 · 15종 중 골라서 한 응답에

조합 선택
조회별 합산 결과 1회 · 인증 20P 별도 고른 조회 단가의 합 · 인증은 1회
전체 구성 보기 · 11종 더 보기
선택형 통합조회 · 17종

민원서류 통합조회

민원서류 · 17종 중 골라서 한 응답에

조합 선택
조회별 합산 결과 1회 · 인증 20P 별도 고른 조회 단가의 합 · 인증은 1회
전체 구성 보기 · 13종 더 보기

개별 조회 69종

업무별 조회 상품

필요한 항목만 골라 호출하세요. 모든 상품이 같은 인증 절차와 같은 응답 규격을 씁니다.

국세30

자동차16

부동산3

연동 절차

연동은 네 단계

  1. 1. 조회 인증 요청/rest/req_* 로 이름·생년월일·휴대전화번호·인증방식을 보냅니다. transactionId 를 즉시 받습니다.
  2. 2. 사용자 승인사용자가 간편인증 앱에서 승인합니다. 유효시간은 5분입니다.
  3. 3. 정보 조회같은 transactionId 를 /rest/get_* 로 반복 조회합니다. 대기·조회 중에는 과금되지 않습니다.
  4. 4. 정보 제공결과가 준비되면 표준 JSON 으로 반환합니다. 24시간 동안 재조회할 수 있습니다.

요금

쓰는 만큼만, 실패는 무료

기본은 1년이고, 1년을 넘길 때마다 1년 기준 단가의 50%만 더합니다(2년 1.5배, 3년 2배). 조회범위(연수·월수)는 인증 요청할 때 options 로 정합니다. 상품별 정확한 단가와 응답 필드는 각 상품의 개발가이드에 있습니다.

요금과 포인트 자세히

이용 자격·동의

이용 조건

연동 예제

인증키는 Authorization: Bearer 헤더로 보냅니다. 서버에서만 호출하고 인증키를 브라우저·앱에 넣지 마세요.

cURL
curl -X POST "https://apick.app/rest/req_health_checkup" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  --form-string "name=홍길동" \
  --form-string "birthDate=19900101" \
  --form-string "phone=01011112222" \
  --form-string "authProvider=kakao"
Node.js (18 이상)
const form = new FormData();
form.append("name", "홍길동");
form.append("birthDate", "19900101");
form.append("phone", "01011112222");
form.append("authProvider", "kakao");

const response = await fetch("https://apick.app/rest/req_health_checkup", {
  method: "POST",
  headers: { Authorization: "Bearer " + process.env.APICK_API_KEY },
  body: form,
});
const { data, api } = await response.json();
if (data.error) throw new Error(data.error); // 실패는 과금되지 않습니다
console.log(data, api.cost);

응답 예시

{
  "data": {
    "schemaVersion": "1.0",
    "transactionId": "9f2c4a7b1d8e35c60a4f7b2d1e9c803a",
    "product": "health_checkup",
    "status": "AUTH_REQUESTED",
    "resultAvailable": false,
    "charged": true,
    "sources": [],
    "message": "인증 대기중입니다.",
    "expiresAt": "2026-09-20T05:24:07+09:00",
    "success": 1
  },
  "api": {
    "success": true,
    "cost": 20,
    "ms": 1284
  }
}

인증 요청 응답 예시입니다. 사용자가 승인한 뒤 같은 transactionId로 결과 조회 API(/rest/get_*)를 호출하면 표준 JSON 결과를 받습니다.

오류 해결

HTTP 상태 → api.success → data.error → api.cost 순서로 확인하세요. 실패 응답은 과금되지 않습니다.

  • AUTH_REJECTED · AUTH_EXPIREDHTTP 200

    사용자가 승인을 거절했거나 5분 안에 승인하지 않았습니다. 자동으로 다시 요청하지 말고 사용자에게 안내하세요.

  • AUTH_WAITING · COLLECTINGHTTP 200

    아직 결과가 없습니다. 간격을 두고 같은 transactionId로 결과를 조회하세요. 과금되지 않습니다.

  • 무료 포인트로 사용할 수 없는 서비스입니다.HTTP 200

    최소 1회 충전(결제) 후 이용할 수 있는 API입니다. 충전 후 같은 요청을 다시 보내세요.

  • 유효하지 않은 API키 입니다.HTTP 401

    Authorization: Bearer 헤더의 인증키를 확인하세요. 인증키는 마이페이지에서 확인합니다.

  • 허용되지 않은 IP주소 입니다.HTTP 401

    마이페이지의 허용 IP 설정과 요청을 보내는 서버 IP를 확인하세요.

  • 사용 가능한 포인트이 부족합니다.HTTP 200

    HTTP 200이어도 data.error가 있으면 실패입니다. 포인트를 충전한 뒤 다시 요청하세요. 이 응답은 과금되지 않습니다.

전체 응답 항목과 오류 코드는 개발 문서에 있습니다.

키 발급 → 예제 실행 → 첫 성공까지 몇 분이면 됩니다.

한 번 붙여 두면 계속 쓰는 조회 인프라

인증·과금·재시도·만료를 서버가 처리합니다. 필요한 상품의 엔드포인트만 호출하세요.