인증
1. 4대보험 EDI 세션 등록fourinsure. session. login
MCP 도구 이름 fourinsure__session__login
POSThttps://api.xdata.kr/v1/jobsX-Env-Scope: sandbox
샌드박스입니다. 실제 기관을 호출하지 않는 모의 응답이며 일일 한도가 없습니다.
사업장 공동인증서와 NPKI 자격으로 4대사회보험 정보연계센터 EDI 세션을 등록합니다.
- 콘솔에서 발급한 API 키와 등록한 공동인증서가 필요합니다. 정식 환경은 유료 플랜을 이용 중일 때만 호출할 수 있습니다.
- sandbox 환경에서는 실제 기관에 접속하지 않습니다. result.data 에는 mock: true 와 보낸 params 를 그대로 담은 params_echo 가 오고, 업무 응답 필드는 오지 않습니다.
- params 는 빈 객체로 보내도 호출됩니다. 콘솔에 등록한 공동인증서로 로그인하며, 사용할 인증서는 account_link_id 로 지정합니다.
Request
| 순번 | 변수명 | 필수 | 설명 |
|---|---|---|---|
| Authorization | Y | API 자격증명입니다. client_id 와 client_secret 을 콜론으로 이어 Base64 로 인코딩해 보냅니다. | |
| X- | Y | 호출 환경입니다.
| |
| Idempotency- | Y | 재시도 식별 키입니다. 같은 키와 같은 본문으로 다시 호출하면 기존 작업이 그대로 반환됩니다. ASCII 문자만 사용하며 UUID v4 를 권장합니다. 고객 정보는 넣지 않습니다. | |
| Content- | Y | 요청 본문 형식입니다.
| |
| X- | N | 추적 아이디입니다. 지정하지 않으면 서버가 발급합니다. |
| 순번 | 변수명 | 타입 | 길이 | 필수 | 설명 |
|---|---|---|---|---|---|
| provider | string | - | Y | 호출할 기관입니다.
| |
| action | string | - | Y | 호출할 작업입니다.
| |
| account_ | string | 36 | N | 등록한 자격증명을 가리키는 아이디입니다. 이 API 는 자격증명 없이도 호출할 수 있습니다. | |
| params | object | - | Y | 작업 파라미터입니다. 아래 params 파라미터 표의 필수 항목을 채워 보냅니다. | |
| encrypted_ | object | - | N | 민감한 params 값을 RSA-OAEP-256 으로 암호화해 담는 객체입니다. 서버가 복호화해 params 에 합칩니다. 같은 이름을 params 와 함께 쓰지 않습니다. |
| 순번 | 변수명 | 타입 | 필수 | 설명 |
|---|---|---|---|---|
| auth_ | string | N | 인증 방식. 별칭 provider. 기본 npki_anysign — 이 라우트는 콘솔에 등록한 공동인증서로만 로그인합니다 |
bash
curl --request POST \
--url 'https://api.xdata.kr/v1/jobs' \
--header 'Authorization: Basic {base64(client_id:client_secret)}' \
--header 'X-Env-Scope: sandbox' \
--header 'Idempotency-Key: demo-login-001' \
--header 'Content-Type: application/json' \
--data '{
"provider": "fourinsure",
"action": "fourinsure.session.login",
"params": {}
}'Response
- Job 이 성공하면 세션이 저장된 것입니다(저장에 실패하면 Job 이 실패로 끝납니다). 이후 업무 API 는 같은 account_link_id 로 호출합니다.
| 순번 | 변수명 | 설명 |
|---|---|---|
| success | 요청 처리 성공 여부 | |
| API_ | 세션 식별자 — 이 호출의 account_link_id 와 같은 값 | |
| auth_ | 인증 방식 — Job 로그인은 등록한 공동인증서(npki_anysign) | |
| authenticated | 인증 완료 여부 | |
| csrf_ | CSRF 토큰 존재 여부 | |
| cookie_ | 저장된 쿠키 수 | |
| generation_ | 세션 생성 상태 | |
| session_ | 세션 저장 여부 | |
| provider_ | 공급자 세션 저장 여부 |
json
// result.data
{
"success": true,
"API_KEY": "...",
"auth_provider": "npki_anysign",
"authenticated": true,
"csrf_token_present": true,
"cookie_count": 12,
"generation_status": "generated",
"session_registered": true,
"provider_session_registered": true
}| 순번 | 오류 코드 | 발생 조건 |
|---|---|---|
| PROVIDER_ | 로그인 실패 — 기관 로그인에 실패했습니다. 인증서와 사업장 정보를 확인합니다. |