ePA (건강 데이터 export) API (v2)
ePA API는 DiGA(WELT Insomnia DTx)의 현재(active) cycle 건강 데이터를 독일 전자건강기록(ePA, elektronische Patientenakte) 으로 내보내는 v2 endpoint 묶음입니다. 데이터는 FHIR/MIO Bundle 로 직렬화되며, ePA 전송은 fbeta ePA-Service(/send-document/)를 경유합니다.
핵심
- 공통 경로: 모든 endpoint 는
/v2/health-data/export하위에 있고 Swagger 태그는Health Data입니다. - 두 채널:
LOCAL(사용자 직접 다운로드용 PDF/XML)과EPA(ePA 실제 전송). 두 채널 모두 동일한 현재 cycle 데이터를 사용합니다. - 포맷:
pdf|xml.xml은 ePA 정본(MIO Bundle) 직렬화 결과입니다. local 은 기본pdf, epa 는 기본xml. - 시각 표기: 응답의 모든 시각은 unix timestamp(ms, 13자리).
인증 정책 (v2 공통)
- 모든 endpoint 는 유효한
Authorization: Bearer <accessToken>(JwtAuthGuard)을 요구합니다. POST /epa전송은 KVNR 연동 + ACTIVE eID(GesundheitsID) 링크 + FdV DiGA 접근 승인이 모두 충족돼야 하며, 미충족 시409 CONFLICT입니다. 전송 단계 실패는200 status=FAILED로 매핑됩니다.
엔드포인트
| 엔드포인트 | Method / Path | 설명 |
|---|---|---|
| 로컬 export | POST .../local | 현재 cycle 데이터를 PDF/XML 로 생성해 1분 signed URL 반환 |
| ePA 전송 | POST .../epa | 현재 cycle 데이터를 ePA 로 즉시 전송 |
| 최신 export 기록 조회 | GET .../local/latest, GET .../epa/latest | 채널별 최신 export 기록 1건 (없으면 null) |
| ePA 주기 export 스케줄 | POST .../epa/schedule, POST .../epa/schedule/cancel, GET .../epa/schedule | 14일 주기 자동 export 설정/취소/조회 |