본문 바로가기

로그인이 필요합니다.

로그인 페이지로 이동하시겠습니까?

확인

서비스 준비중입니다.

KOFA / DEVELOPMENT

API 개발 현황

기획서의 필요 데이터와 실제 HTTP 응답을 페이지별로 대조합니다.

개발 목록으로
기획서 10페이지 92API·조회 항목 120완료 92확인필요 24프론트에서 검증 4실제 HTTP 861건

검증 서버: [http://kofafilm.archivecenter.or.kr, http://localhost:4100, http://localhost:4101, http://localhost:61978] · 기록 생성 2026-10-28 00:05:10

완료는 아래 대조 범위의 필요 데이터가 제공된 항목입니다. 확인필요는 누락·미매핑·기획 차이·HTTP 실패·성공 표본 미검증이 남은 항목입니다. 프론트에서 검증은 메일·Any-ID 관련 검증을 프론트에서 진행하는 항목이며 완료와 구분합니다. HTTP 200만으로 완료를 판정하지 않습니다.

검토한 PDF 원본 파일명·페이지 수
상태 필터표시 120개 항목

페이지 아래의 API를 펼치면 실제 조회 시각·URL·조회 객체 1건, PDF 근거와 논의 내용을 볼 수 있습니다.

기관소개›소식

10개 페이지 · 12개 항목
기관소개 소식의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

뉴스·공지 목록

/intro/news/notice

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 2개

GET공지사항 목록 검색·페이징 조회
/api/v1/intro/news/notice
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 20페이지

HTTP 조회 시각: 2026-10-15T13:01:36.689629+09:00

http://localhost:4100/api/v1/intro/news/notice

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 5810,
  "title": "[프레더릭 와이즈먼 회고전] 관객 투...",
  "createdAt": "20260521161727",
  "viewCount": 304,
  "categoryCode": "CNP02002",
  "categoryName": "시네마테크KOFA"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
20페이지제목items[].title
["[프레더릭 와이즈먼 회고전] 관객 투표 실시", "5월 27일(수) 영화 상영 미운영 안내", "한국영상자료원 직원 사칭 사기 주의 안내(한국영상자료원은 대리구매를 통한 선입금을 요청하지 않습니다.)", "[한국영상자료원 학술행사] '아리랑 100년과 한국영화의 미래' 개최 안내", "[휴관] 2026년 5월 1일(금) 노동절 휴관 안내", "[휴관] 한국영화박물관 휴관 안내(4/28~5/7)", "한국영상자료원 방문객 차량 승용차 5부제 시행 안내", "공영주차장 승용차 5부제 시행 안내", "한국영상자료원 사칭 악성 메일 주의 안내", "21일(토) <마이애미 바이스> 강연 취소 공지"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지작성일items[].createdAt
["20260521161727", "20260521161255", "20260521105445", "20260508143328", "20260430091821", "20260415120436", "20260407143415", "20260407135737", "20260401141809", "20260320094458"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지조회수items[].viewCount
[304, 134, 60, 136, 203, 625, 1326, 331, 587, 491]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지조회 건수·10건 페이징totalElements / size
[650, 10]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지분류items[].categoryCode
["CNP02002", "CNP02002", "CNP02001", "CNP02001", "CNP02001", "CNP02003", "CNP02001", "CNP02002", "CNP02001", "CNP02002"]

CMS 분류 코드. 공지사항은 CNP02, 채용은 CRT01, 사전정보공표는 CDC02 계열. 코드명은 categoryName.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지분류명items[].categoryName
["시네마테크KOFA", "시네마테크KOFA", "전체기관", "전체기관", "전체기관", "한국영화박물관", "전체기관", "시네마테크KOFA", "전체기관", "시네마테크KOFA"]

categoryCode를 TB_COM_CD.CD_NM으로 조회한 분류명. 코드명 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 15건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/notice

{}

2026-10-15T13:01:36.689629+09:00HTTP 결과 기록307
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=title&keyword=%ED%94%84%EB%A0%88%EB%8D%94%EB%A6%AD&size=3

{}

2026-10-15T13:01:37.062958+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치29
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=all&keyword=%ED%94%84%EB%A0%88%EB%8D%94%EB%A6%AD&size=3

{}

2026-10-15T13:01:37.091722+09:00일치: 요청 페이지 크기 일치44
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=content&keyword=%EC%95%88%EB%85%95%ED%95%98%EC%84%B8%EC%9A%94&size=3

{}

2026-10-15T13:01:37.135852+09:00일치: 요청 페이지 크기 일치62
GET
200
http://localhost:4100/api/v1/intro/news/notice?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:37.345699+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.38
GET
200
http://localhost:4100/api/v1/intro/news/notice?keyword=%25_

{}

2026-10-15T13:01:37.384147+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.36
GET
200
http://localhost:4100/api/v1/intro/news/notice?page=2

{}

2026-10-15T13:01:37.419691+09:00일치: 요청 페이지 번호 일치148
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02001

{}

2026-10-15T13:01:39.599741+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치168
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02001&searchField=title&keyword=%EC%98%81%ED%99%94

{}

2026-10-15T13:01:39.767675+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치 / 일치: 제목 검색어와 실제 제목 일치254
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02002

{}

2026-10-15T13:01:40.021810+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치179
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02002&searchField=title&keyword=%EC%98%81%ED%99%94

{}

2026-10-15T13:01:40.200406+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치 / 일치: 제목 검색어와 실제 제목 일치253
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02003

{}

2026-10-15T13:01:40.453905+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치188
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02003&searchField=title&keyword=%EC%98%81%ED%99%94

{}

2026-10-15T13:01:40.641967+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치 / 일치: 제목 검색어와 실제 제목 일치405
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02004

{}

2026-10-15T13:01:41.046657+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치100
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02004&searchField=title&keyword=%EC%98%81%ED%99%94

{}

2026-10-15T13:01:41.146642+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.287
GET공지사항 기관 분류 조회
/api/v1/intro/news/notice/categories
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 20페이지

HTTP 조회 시각: 2026-10-16T16:33:12.397515+09:00

http://localhost:4100/api/v1/intro/news/notice/categories

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "code": "CNP02001",
  "name": "전체기관",
  "parentCode": null,
  "sortOrder": 1
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
20페이지공지 분류 선택값[].code / [].name
["CNP02001", "CNP02002", "CNP02003", "CNP02004", "전체기관", "시네마테크KOFA", "한국영화박물관", "영상도서관"]

공통코드 값. TB_COM_CD.CD_ID. 해당 API의 코드 입력값으로 사용. / 공통코드 표시명. TB_COM_CD.CD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/notice/categories

{}

2026-10-16T16:33:12.397515+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.14

뉴스·공지 상세

/intro/news/notice/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET공지사항 상세·본문·첨부·인접 글 조회
/api/v1/intro/news/notice/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 21페이지

HTTP 조회 시각: 2026-10-16T18:41:25.425118+09:00

http://localhost:4100/api/v1/intro/news/notice/5810

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 5810,
    "title": "[프레더릭 와이즈먼 회고전] 관객 투...",
    "bodyHtml": "안녕하세요 시네마테크KOFA입니다.\n...",
    "createdAt": "20260521161727",
    "viewCount": 304,
    "categoryCode": "CNP02002",
    "categoryName": "시네마테크KOFA"
  },
  "attachments": [
    {
      "id": 12932,
      "name": "찌오2 2.png",
      "extension": "png",
      "size": 5874,
      "url": "/api/v1/files/notice..."
    }
  ],
  "previous": null,
  "next": {
    "id": 5809,
    "title": "5월 27일(수) 영화 상영 미운영 ..."
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
21페이지상세 제목article.title
["[프레더릭 와이즈먼 회고전] 관객 투표 실시"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지상세 본문article.bodyHtml
["안녕하세요 시네마테크KOFA입니다.\n<br>\n<br>\n 2026년 2월 16일, 현대 다큐멘터리의 거장 프레더릭 와이즈먼 감독이 별세하였습니다.&nbsp;\n<br>\n<br>\n 한국영상자료원과 DMZ국제다큐멘터리영화제는 고인을 추모하며, 2025년부터 '서울아트시네마', '영화의전당' 등에서 이어온 와이즈먼 전작전을 갈무리하는 최종 회고전을 공동으로 개최합니다.\n<br>\n<br>\n 이번 기획전은 감독의 방대한 세계를 다시금 조망하기 위해 추천작과 관객이 직접 뽑은 '다시 보고 싶은 와이즈먼 영화' 3편을 선정하여 상영하고자 합니다.&nbsp;\n<br>\n<br>\n<br><a href=\"https://forms.gle/5nSFQP3zpN1MCkWq9\"><span style=\"font-size:26px;\"></span><span style=\"font-size:24px;\"></span><strong><span style=\"font-size:28px;\">[투표하기](클릭)</span></strong></a><span style=\"font-size:20px;\"></span>\n<br>\n<br>\n<br><b>[프로그램 내역]</b>\n<br>\n - 기간: 2026년 7월 9일(목) ~ 7월 22일\n<br>\n - 장소:&nbsp; 한국영상자료원 시네마테크KOFA\n<br>\n - 주최: 한국영상자료원, DMZ국제다큐멘터리영화제\n<br>\n<br><b>[투표안내]</b>\n<br>\n - 기간: 2026년 5월 21일(목) ~ 6월 3일\n<br>\n - 발표: 2026년 6월 9일"]

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지작성일article.createdAt
["20260521161727"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지조회수article.viewCount
[304]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지첨부 다운로드attachments
[[{"id": 12932, "name": "찌오2 2.png", "extension": "png", "size": 5874, "url": "/api/v1/files/notice/5810/12932/download"}]]

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

제공
21페이지이전 글previous
[null]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
21페이지다음 글next
[{"id": 5809, "title": "5월 27일(수) 영화 상영 미운영 안내"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지분류article.categoryName
["시네마테크KOFA"]

categoryCode를 TB_COM_CD.CD_NM으로 조회한 분류명. 코드명 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지첨부 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/notice/5806

{}

2026-10-16T18:41:25.663815+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.73
GET
200
http://localhost:4100/api/v1/intro/news/notice/5809

{}

2026-10-16T18:41:25.586700+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.71
GET
200
http://localhost:4100/api/v1/intro/news/notice/5810

{}

2026-10-16T18:41:25.425118+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.157

보도자료 목록

/intro/news/press

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET보도자료 목록 검색·페이징 조회
/api/v1/intro/news/press
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 22페이지

HTTP 조회 시각: 2026-10-15T13:01:37.567357+09:00

http://localhost:4100/api/v1/intro/news/press

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 9,
  "title": "한국영상자료원, 90년 전 금강산 담...",
  "createdAt": "20260909112046",
  "viewCount": 0
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
22페이지제목items[].title
["한국영상자료원, 90년 전 금강산 담은 기록영상 최초 공개", "[보도자료] “사랑”은 왜 한국영화 제목에 가장 많이 등장했을까 한국영화박물관 신규 기획전시 ‘제목전(展)’ 8일(금) 개막", "[보도자료] 한국영상자료원, ‘시대를 건너온 인생 영화’ 청소년 고전영화 입문 가이드 공개", "[보도자료] 한국영상자료원, 홍상수 감독 데뷔 30주년 기념 ‘홍상수 전작전 인트로덕션’ 열린다", "한국영상자료원, 제46회 장애인의 날 기념 배리어프리 상영회 개최", "한국영상자료원 기획전 '트립 시네마', 영화가 감각을 흔드는 방법을 탐구하다", "[보도자료] 범죄 누아르의 계보 조망, ‘멜빌 x 만 x 레픈’ 기획전 개최", "[보도자료] 현재 주목받는 베트남 감독들의 영화가 한자리에!", "[보도자료] 미국 국립문서기록관리청 2관 등 주요 아카이브 소장 한국 관련 기록영상 223점 공개", "[보도자료] 한국 독립영화의 출발을 조명하다, '영화서클' 특별전 개최"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지작성일items[].createdAt
["20260909112046", "20260514091856", "20260514091730", "20260420153410", "20260406112949", "20260401083222", "20260304164203", "20260304163859", "20260128083339", "20260120083950"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지조회수items[].viewCount
[0, 83, 82, 287, 118, 199, 228, 182, 210, 326]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지조회 건수·10건 페이징totalElements / size
[606, 10]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/press

{}

2026-10-15T13:01:37.567357+09:00HTTP 결과 기록29
GET
200
http://localhost:4100/api/v1/intro/news/press?searchField=title&keyword=%ED%95%9C%EA%B5%AD%EC%98%81%EC%83%81%EC%9E%90%EB%A3%8C%EC%9B%90&size=3

{}

2026-10-15T13:01:37.637337+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치18
GET
200
http://localhost:4100/api/v1/intro/news/press?searchField=all&keyword=%ED%95%9C%EA%B5%AD%EC%98%81%EC%83%81%EC%9E%90%EB%A3%8C%EC%9B%90&size=3

{}

2026-10-15T13:01:37.655180+09:00일치: 요청 페이지 크기 일치22
GET
200
http://localhost:4100/api/v1/intro/news/press?searchField=content&keyword=%ED%95%9C%EB%B0%98%EB%8F%84&size=3

{}

2026-10-15T13:01:37.677710+09:00일치: 요청 페이지 크기 일치29
GET
200
http://localhost:4100/api/v1/intro/news/press?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:37.790081+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.38
GET
200
http://localhost:4100/api/v1/intro/news/press?keyword=%25_

{}

2026-10-15T13:01:37.827735+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.29
GET
200
http://localhost:4100/api/v1/intro/news/press?page=2

{}

2026-10-15T13:01:37.856638+09:00일치: 요청 페이지 번호 일치23

보도자료 상세

/intro/news/press/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET보도자료 상세·본문·첨부·인접 글 조회
/api/v1/intro/news/press/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 23페이지

HTTP 조회 시각: 2026-10-16T18:41:25.837751+09:00

http://localhost:4100/api/v1/intro/news/press/787

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 787,
    "title": "[보도자료]한국영상자료원, 8·15 ...",
    "bodyHtml": "<div style=\"text-ali...",
    "createdAt": "20220921140645",
    "viewCount": 426
  },
  "attachments": [
    {
      "id": 12770,
      "name": "보도자료_한국영상자료원_815 온라인...",
      "extension": "pdf",
      "size": 346602,
      "url": "/api/v1/files/press/..."
    }
  ],
  "previous": {
    "id": 785,
    "title": "[보도자료]현대 SF 영화의 원형을 ..."
  },
  "next": {
    "id": 788,
    "title": "[보도자료]거문고와 기타로 재탄생한 ..."
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
23페이지상세 제목article.title
["[보도자료]한국영상자료원, 8·15 광복 77주년 기념하여 1945년 9월 해방 직후 기록영상 5편 VOD 첫 공개"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
23페이지상세 본문article.bodyHtml
["<div style=\"text-align: center;\"><img alt=\"\" src=\"/upload/editorimage/95838f9f-6059-4054-87fa-c34063c4a660.jpg\" /><br />\r\n<strong>▲ 고화질 VOD 첫 공개되는 &lt;경성 비행장&gt; 속 여의도 비행장</strong></div>\r\n<br />\r\n<span style=\"color:#2c3e50;\"><strong>한국영상자료원(원장 김홍준, 이하 &lsquo;영상자료원&rsquo;)은 8&middot;15 광복절을 기념하기 위하여 12일(금)부터 온라인 기획전을 통해 해방 직후 조선을 담은 기록영상 5편을 처음 공개한다.</strong></span> 온라인 VOD 기획전 &lsquo;미군이 기록한 1945년 9월의 해방 조선&rsquo;은 미국 국립문서기록관리청(NARA)으로부터 수집한 영상으로 <u>여의도비행장과 성조기 게양식, 항복문서 조인식 등 해방 직후 한반도의 모습을 고화질로 확인할 수 있다.</u> 한반도에 상륙한 연합군을 맞이하며 새로운 희망을 꿈꾸던 해방 조선의 당시의 모습을 확인하며 광복절의 의미와 역사를 되새겨 보고자 한다.<br />\r\n<br />\r\n<strong>□ 생생한 화질 속에 되살아나는 1945년 9월의 한반도 첫 공개</strong><br />\r\n&lsquo;미군이 기록한 1945년 9월의 해방 조선&rsquo; 기획전은 8.15 광복 77주년을 맞아 그간 제한적으로 공개되었던 기록영상 5편을 온라인 VOD로 일반 대중에게 처음으로 공개한다는 점에서 큰 의의가 있다.&nbsp;<br />\r\n&lt;경성 비행장&gt; 등 다섯 편의 기록영상은 영상자료원이 미국 국립문서기록관리청(NARA)으로부터 고려대학교 한국사연구소와 함께 수집했다. <u><strong>그간 저화질 상태로 일부에게만 제한적으로 공개되었던 해당 영상은 이번 온라인 기획전을 통해 국민 누구나 시공간의 제약 없이 고화질 화면으로 시청할 수 있게 되었다.</strong></u><br />\r\n공개 영상은 일본군의 항복문서 조인식(1945년 9월 9일)을 시작으로 38선 이남 한반도에 주둔하게 된 미군이 기록한 영상 중 &lsquo;1945년 9월&rsquo;이라는 특정 시점을 담은 영상으로 해방 조선에 주둔한 미군의 존재가 가시화하기 시작한 시기의 풍경을 영상으로 직접 확인할 수 귀중한 사료이다. 편집이 되지 않은 푸티지이기에 극영화로 치면 NG필름 같은 영상으로 오히려 한반도에 상륙한 연합군을 환영하며 새로운 희망을 꿈꾸는 당시 조선 사람들의 표정을 더욱 생동감 있게 전달한다."]

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
23페이지작성일article.createdAt
["20220921140645"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
23페이지조회수article.viewCount
[426]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
23페이지첨부 다운로드attachments
[[{"id": 12770, "name": "보도자료_한국영상자료원_815 온라인 VOD기획전_0811.pdf", "extension": "pdf", "size": 346602, "url": "/api/v1/files/press/787/12770/download"}]]

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

제공
23페이지이전 글previous
[{"id": 785, "title": "[보도자료]현대 SF 영화의 원형을 제시한  ‘1950년대 SF 몬스터 특별전’ 개최"}]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
23페이지다음 글next
[{"id": 788, "title": "[보도자료]거문고와 기타로 재탄생한 1922년 무성영화  8월 6일,7일 &lt;노스페라투 - 현絃의 그림자> 한국영상자료원 최초 상연"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
23페이지첨부 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/press/787

{}

2026-10-16T18:41:25.837751+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.41
GET
200
http://localhost:4100/api/v1/intro/news/press/779

{}

2026-10-16T18:41:25.795440+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.37
GET
200
http://localhost:4100/api/v1/intro/news/press/9

{}

2026-10-16T18:41:25.741945+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.49

채용공고 목록

/intro/news/recruit

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET채용공고 목록 검색·페이징 조회
/api/v1/intro/news/recruit
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 24페이지

HTTP 조회 시각: 2026-10-15T13:01:37.879463+09:00

http://localhost:4100/api/v1/intro/news/recruit

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 735,
  "title": "[채용/서류] 한국영상자료원 2026...",
  "createdAt": "20260520134834",
  "viewCount": 258,
  "categoryCode": "CRT01001",
  "categoryName": "공고"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
24페이지제목items[].title
["[채용/서류] 한국영상자료원 2026년 제3차 채용 서류전형 결과 및 이후 전형 안내", "[채용/서류] 한국영상자료원 2026년 제2차 채용 서류전형 결과 및 이후 전형 안내", "한국영상자료원 2026년 제3차 채용 공고(명예의전당·영상박물관 통합운영 분야 기간제계약직 7명)", "한국영상자료원 2026년 제2차 채용 공고(정규직 1명, 체험형청년인턴 2명, 기간제계약직 5명)", "[채용/최종] 한국영상자료원 2026년 제1차 채용 최종 결과 발표", "한국영상자료원 2026년 제1차 채용 공고(체험형청년인턴 2명, 기간제계약직 8명)", "[채용/최종] 한국영상자료원 NCS기반 제3차 채용형청년인턴 1인, 기간제계약직 1인 블라인드 채용 최종 결과 발표", "[채용/서류] 한국영상자료원 NCS기반 제3차 채용형청년인턴 1인, 기간제계약직 1인 블라인드 채용 서류전형 결과 및 필기전형(채용형청년인턴) / 면접전형(기간제계약직) 안내", "한국영상자료원 NCS기반 제3차 채용형청년인턴 1인, 기간제계약직 1인 블라인드 채용 공고", "[채용/최종] 한국영상자료원 제2차 정규직(일반직) 2인, 정규직(공무직) 1인, 채용형청년인턴 2인 블라인드 채용 최종 합격 및 예비 합격 후보자 발표"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
24페이지작성일items[].createdAt
["20260520134834", "20260520134723", "20260423103005", "20260423102700", "20260402191359", "20260225111257", "20250903171731", "20250808171416", "20250718102226", "20250714113032"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
24페이지조회수items[].viewCount
[258, 134, 2503, 3760, 632, 5835, 1931, 1583, 5192, 1957]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
24페이지조회 건수·10건 페이징totalElements / size
[732, 10]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
24페이지분류items[].categoryCode
["CRT01001", null, null, null, null, null, null, null, null, null]

CMS 분류 코드. 공지사항은 CNP02, 채용은 CRT01, 사전정보공표는 CDC02 계열. 코드명은 categoryName.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
24페이지분류명items[].categoryName
["공고", null, null, null, null, null, null, null, null, null]

categoryCode를 TB_COM_CD.CD_NM으로 조회한 분류명. 코드명 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/recruit

{}

2026-10-15T13:01:37.879463+09:00HTTP 결과 기록33
GET
200
http://localhost:4100/api/v1/intro/news/recruit?searchField=title&keyword=%EC%B1%84%EC%9A%A9&size=3

{}

2026-10-15T13:01:37.967771+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치29
GET
200
http://localhost:4100/api/v1/intro/news/recruit?searchField=all&keyword=%EC%B1%84%EC%9A%A9&size=3

{}

2026-10-15T13:01:37.996794+09:00일치: 요청 페이지 크기 일치38
GET
200
http://localhost:4100/api/v1/intro/news/recruit?searchField=content&keyword=%ED%95%9C%EA%B5%AD%EC%98%81%EC%83%81%EC%9E%90%EB%A3%8C%EC%9B%90&size=3

{}

2026-10-15T13:01:38.035128+09:00일치: 요청 페이지 크기 일치29
GET
200
http://localhost:4100/api/v1/intro/news/recruit?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:38.160819+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.37
GET
200
http://localhost:4100/api/v1/intro/news/recruit?keyword=%25_

{}

2026-10-15T13:01:38.197880+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.30
GET
200
http://localhost:4100/api/v1/intro/news/recruit?page=2

{}

2026-10-15T13:01:38.227968+09:00일치: 요청 페이지 번호 일치27

채용공고 상세

/intro/news/recruit/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET채용공고 상세·본문·첨부·인접 글 조회
/api/v1/intro/news/recruit/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 25페이지

HTTP 조회 시각: 2026-10-16T18:41:26.005296+09:00

http://localhost:4100/api/v1/intro/news/recruit/630

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 630,
    "title": "한국영상자료원 2026년 제3차 채용...",
    "bodyHtml": "<p class=\"0\"><span s...",
    "createdAt": "20260423103005",
    "viewCount": 2503,
    "categoryCode": null,
    "categoryName": null
  },
  "attachments": [
    {
      "id": 1725,
      "name": "2026년 제3차 채용 공고문.pdf",
      "extension": "pdf",
      "size": 225238,
      "url": "/api/v1/files/recrui..."
    },
    {
      "id": 1726,
      "name": "2026년 제3차 채용 직무기술서 및...",
      "extension": "zip",
      "size": 154357,
      "url": "/api/v1/files/recrui..."
    },
    {
      "id": 1727,
      "name": "채용 이의 신청서, 응시자 편의 제공...",
      "extension": "zip",
      "size": 262879,
      "url": "/api/v1/files/recrui..."
    }
  ],
  "previous": {
    "id": 734,
    "title": "[채용/서류] 한국영상자료원 2026..."
  },
  "next": {
    "id": 629,
    "title": "한국영상자료원 2026년 제2차 채용..."
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
25페이지상세 제목article.title
["한국영상자료원 2026년 제3차 채용 공고(명예의전당·영상박물관 통합운영 분야 기간제계약직 7명)"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
25페이지상세 본문article.bodyHtml
["<p class=\"0\"><span style=\"text-autospace:none\"><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">1. </span></span><span style=\"font-family:맑은 고딕\">채용인원 </span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">: </span></span><span style=\"font-family:맑은 고딕\">기간제계약직 </span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">7</span></span><span style=\"font-family:맑은 고딕\">명</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"> </span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\"><br />\r\n2. </span></span><span style=\"font-family:맑은 고딕\">채용분야 </span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\">&nbsp; 가</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">. </span></span><span style=\"font-family:맑은 고딕\">대중문화 자료 조사</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">&middot;</span></span><span style=\"font-family:맑은 고딕\">수집 분야 기간제계약직</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">경력</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">/</span></span><span style=\"font-family:맑은 고딕\">학위</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) 3</span></span><span style=\"font-family:맑은 고딕\">명</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\">&nbsp; 나</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">. </span></span><span style=\"font-family:맑은 고딕\">대중문화인 구술 채록 분야 기간제계약직</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">경력</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">/</span></span><span style=\"font-family:맑은 고딕\">학위</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) 1</span></span><span style=\"font-family:맑은 고딕\">명</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\">&nbsp; 다</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">. </span></span><span style=\"font-family:맑은 고딕\">대중문화인 구술 영상 편집 분야 기간제계약직</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">경력</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">/</span></span><span style=\"font-family:맑은 고딕\">학위</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) 1</span></span><span style=\"font-family:맑은 고딕\">명</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\">&nbsp; 라</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">. </span></span><span style=\"font-family:맑은 고딕\">경영지원</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">계약</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) </span></span><span style=\"font-family:맑은 고딕\">기간제계약직</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">경력</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) 1</span></span><span style=\"font-family:맑은 고딕\">명</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\">&nbsp; 마</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">. </span></span><span style=\"font-family:맑은 고딕\">경영지원</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">회계</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) </span></span><span style=\"font-family:맑은 고딕\">기간제계약직</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">장애</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) 1</span></span><span style=\"font-family:맑은 고딕\">명</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"> </span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\"><br />\r\n3. </span></span><span style=\"font-family:맑은 고딕\">응시원서 접수기간 </span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">: 2026.4.23.(</span></span><span style=\"font-family:맑은 고딕\">목</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) ~ 2026.5.8.(</span></span><span style=\"font-family:맑은 고딕\">금</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">) 14:00 </span></span><span style=\"font-family:맑은 고딕\">까지</span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"> </span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\"><br />\r\n4. </span></span><span style=\"font-family:맑은 고딕\">응시원서 접수방법 </span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">: </span></span><span style=\"font-family:맑은 고딕\">온라인 응시원서 작성 및 접수 </span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">(</span></span><span style=\"font-family:맑은 고딕\">한국영상자료원 채용홈페이지 </span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\"><a href=\"https://koreafilm.brms.kr\">https://koreafilm.brms.kr</a>)</span></span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"> </span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\"><br />\r\n※ </span></span><span style=\"font-family:맑은 고딕\">응시자격 요건</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">근로조건</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">전형방법</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">전형일정 등 채용관련 세부내용은 첨부된 채용공고문을 참고하시기 바랍니다</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">.</span></span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">※ </span></span><span style=\"font-family:맑은 고딕\">채용직무별 요구되는 능력단위</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">직무수행내용</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">필요지식</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">필요기술</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">, </span></span><span style=\"font-family:맑은 고딕\">직무수행태도 등은 첨부된 직무기술서를 참고하시기 바랍니다</span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">.</span></span></span></p>\r\n\r\n<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">※ </span></span><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">본 채용은 한국영상자료원 </span></span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">2026</span></span><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">년 제</span></span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">2</span></span><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">차 채용과 중복 지원이 불가하며</span></span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">, </span></span><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">전형 일정이 동일합니다</span></span><span lang=\"EN-US\" style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:-0.3pt\">. </span></span></span></p>\r\n\r\n<div class=\"hwp_editor_board_content\" data-hjsonver=\"1.0\" data-jsonlen=\"12401\" id=\"hwpEditorBoardContent\"></div>\r\n"]

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
25페이지작성일article.createdAt
["20260423103005"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
25페이지조회수article.viewCount
[2503]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
25페이지첨부 다운로드attachments
[[{"id": 1725, "name": "2026년 제3차 채용 공고문.pdf", "extension": "pdf", "size": 225238, "url": "/api/v1/files/recruit/630/1725/download"}, {"id": 1726, "name": "2026년 제3차 채용 직무기술서 및 자격사항 평가점수 환산 기준표.Zip", "extension": "zip", "size": 154357, "url": "/api/v1/files/recruit/630/1726/download"}, {"id": 1727, "name": "채용 이의 신청서, 응시자 편의 제공 신청서 등.Zip", "extension": "zip", "size": 262879, "url": "/api/v1/files/recruit/630/1727/download"}]]

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

제공
25페이지이전 글previous
[{"id": 734, "title": "[채용/서류] 한국영상자료원 2026년 제2차 채용 서류전형 결과 및 이후 전형 안내"}]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
25페이지다음 글next
[{"id": 629, "title": "한국영상자료원 2026년 제2차 채용 공고(정규직 1명, 체험형청년인턴 2명, 기간제계약직 5명)"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
25페이지첨부 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/recruit/630

{}

2026-10-16T18:41:26.005296+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.52
GET
200
http://localhost:4100/api/v1/intro/news/recruit/734

{}

2026-10-16T18:41:25.953180+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.46
GET
200
http://localhost:4100/api/v1/intro/news/recruit/735

{}

2026-10-16T18:41:25.884163+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.62

입찰공고 목록

/intro/news/bid

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET입찰공고 목록 검색·페이징 조회
/api/v1/intro/news/bid
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 26페이지

HTTP 조회 시각: 2026-10-15T13:01:38.255490+09:00

http://localhost:4100/api/v1/intro/news/bid

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 1033,
  "title": "명예의전당/영상박물관 통합운영 기본계...",
  "createdAt": "20260511143405",
  "viewCount": 81
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
26페이지제목items[].title
["명예의전당/영상박물관 통합운영 기본계획 수립 연구용역 입찰 공고", "2026년 우수영상물 다국어자막 DVD 자막 번역 사업 입찰공고", "2026년 영상콘텐츠 소스데이터 아카이브 구축 사업 입찰 공고", "대중문화 아카이브 중장기 수집 전략 연구용역 입찰 공고", "대중문화 아카이브 중장기 수집 전략 연구용역 입찰 공고", "2026년 대중문화인(영화·가요·방송) 구술채록 용역 사업 입찰 공고", "소액수의 견적제출 안내공고(한국영상자료원 파주보존센터 노후 자동제어시스템 교체)", "영화필름 음향 스캐너 시스템 구축 사업 입찰 공고", "영상자료정보관리시스템 고도화(3차)(서비스포털 개발) 사업 입찰 재공고", "소액수의 견적제출 안내공고(한국영상자료원 파주보존센터 노후 자동제어시스템 교체)"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
26페이지작성일items[].createdAt
["20260511143405", "20260506160951", "20260504131656", "20260430163147", "20260423133705", "20260420162302", "20260420151345", "20260420141050", "20260417104600", "20260413154353"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
26페이지조회수items[].viewCount
[81, 58, 85, 77, 117, 163, 17, 13, 43, 47]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
26페이지조회 건수·10건 페이징totalElements / size
[389, 10]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/bid

{}

2026-10-15T13:01:38.255490+09:00HTTP 결과 기록26
GET
200
http://localhost:4100/api/v1/intro/news/bid?searchField=title&keyword=%EB%AA%85%EC%98%88%EC%9D%98%EC%A0%84%EB%8B%B9&size=3

{}

2026-10-15T13:01:38.322501+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치15
GET
200
http://localhost:4100/api/v1/intro/news/bid?searchField=all&keyword=%EB%AA%85%EC%98%88%EC%9D%98%EC%A0%84%EB%8B%B9&size=3

{}

2026-10-15T13:01:38.337891+09:00일치: 요청 페이지 크기 일치30
GET
200
http://localhost:4100/api/v1/intro/news/bid?searchField=content&keyword=%EB%B6%99%EC%9E%84%EA%B3%BC&size=3

{}

2026-10-15T13:01:38.368233+09:00일치: 요청 페이지 크기 일치30
GET
200
http://localhost:4100/api/v1/intro/news/bid?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:38.475081+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.39
GET
200
http://localhost:4100/api/v1/intro/news/bid?keyword=%25_

{}

2026-10-15T13:01:38.514473+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.37
GET
200
http://localhost:4100/api/v1/intro/news/bid?page=2

{}

2026-10-15T13:01:38.551188+09:00일치: 요청 페이지 번호 일치23

입찰공고 상세

/intro/news/bid/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET입찰공고 상세·본문·첨부·인접 글 조회
/api/v1/intro/news/bid/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 27페이지

HTTP 조회 시각: 2026-10-16T18:41:26.149617+09:00

http://localhost:4100/api/v1/intro/news/bid/1031

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 1031,
    "title": "2026년 영상콘텐츠 소스데이터 아카...",
    "bodyHtml": "<p class=\"0\"><span s...",
    "createdAt": "20260504131656",
    "viewCount": 85
  },
  "attachments": [
    {
      "id": 2103,
      "name": "입찰공고서(국가+수평+3207+324...",
      "extension": "hwp",
      "size": 122880,
      "url": "/api/v1/files/bid/10..."
    },
    {
      "id": 2104,
      "name": "2026년 제안요청서_영상콘텐츠 소스...",
      "extension": "hwpx",
      "size": 528071,
      "url": "/api/v1/files/bid/10..."
    }
  ],
  "previous": {
    "id": 1032,
    "title": "2026년 우수영상물 다국어자막 DV..."
  },
  "next": {
    "id": 1128,
    "title": "대중문화 아카이브 중장기 수집 전략 ..."
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
27페이지상세 제목article.title
["2026년 영상콘텐츠 소스데이터 아카이브 구축 사업 입찰 공고"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
27페이지상세 본문article.bodyHtml
["<p class=\"0\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\">붙임과 같은 내용으로 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">「</span></span></span><span lang=\"EN-US\" style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">2026</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\">년 영상콘텐츠 소스데이터 아카이브 구축 사업</span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">」 </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\">입찰 공고를 게시합니다</span></span><span lang=\"EN-US\" style=\"font-size:12.0pt\"><span style=\"font-family:맑은 고딕\"><span style=\"letter-spacing:0pt\">.</span></span></span></span></p>\r\n\r\n<div class=\"hwp_editor_board_content\" data-hjsonver=\"1.0\" data-jsonlen=\"7615\" id=\"hwpEditorBoardContent\">\r\n<p class=\"0\"><strong><span style=\"text-autospace:none\"><span style=\"font-family:함초롬바탕\">조달청 </span><span lang=\"EN-US\" style=\"letter-spacing:0pt\">URL:<a href=\"https://www.g2b.go.kr/link/PNPE027_01/single/?bidPbancNo=R26BK01501047&amp;bidPbancOrd=000\">https://www.g2b.go.kr/link/PNPE027_01/single/?bidPbancNo=R26BK01501047&amp;bidPbancOrd=000 </a></span></span></strong></p>\r\n\r\n<div class=\"hwp_editor_board_content\" data-hjsonver=\"1.0\" data-jsonlen=\"5347\" id=\"hwpEditorBoardContent\"></div>\r\n</div>\r\n"]

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
27페이지작성일article.createdAt
["20260504131656"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
27페이지조회수article.viewCount
[85]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
27페이지첨부 다운로드attachments
[[{"id": 2103, "name": "입찰공고서(국가+수평+3207+3244+3243+3276).hwp", "extension": "hwp", "size": 122880, "url": "/api/v1/files/bid/1031/2103/download"}, {"id": 2104, "name": "2026년 제안요청서_영상콘텐츠 소스데이터 아카이브 구축 사업(최종).hwpx", "extension": "hwpx", "size": 528071, "url": "/api/v1/files/bid/1031/2104/download"}]]

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

제공
27페이지이전 글previous
[{"id": 1032, "title": "2026년 우수영상물 다국어자막 DVD 자막 번역 사업 입찰공고"}]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
27페이지다음 글next
[{"id": 1128, "title": "대중문화 아카이브 중장기 수집 전략 연구용역 입찰 공고"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
27페이지첨부 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/bid/1031

{}

2026-10-16T18:41:26.149617+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.35
GET
200
http://localhost:4100/api/v1/intro/news/bid/1032

{}

2026-10-16T18:41:26.107195+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.36
GET
200
http://localhost:4100/api/v1/intro/news/bid/1033

{}

2026-10-16T18:41:26.063771+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.37

설문조사 목록

/intro/news/polls

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET진행 중인 설문 목록 조회
/api/v1/intro/news/polls
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기존 빈 결과 미검증 해소. 새 PDF28페이지의 진행 중 목록·기간·제목 매핑 확인.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 28페이지

HTTP 조회 시각: 2026-10-19T17:47:27.973500+09:00

http://localhost:4100/api/v1/intro/news/polls

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "id": 200,
  "title": "순번 변경 테스트",
  "startsAt": "20261015000000",
  "endsAt": "20261031000000",
  "entryCode": "CSV01002"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
28페이지진행 중 설문 목록배열
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
28페이지진행 중 설문 목록검토 범위
HTTP 200: 진행 중 설문 200번 1건, 기간20261015~20261031

SurveyMapper: TB_SRVY_EXMN의 SRVY_TTL/SRVY_BGNG_DT/SRVY_END_DT, CCM04001·현재 진행기간 조건, 시작일 DESC.

기존 빈 결과 미검증 해소. 새 PDF28페이지의 진행 중 목록·기간·제목 매핑 확인.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/polls

{}

2026-10-19T17:47:27.973500+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.272
GET
200
http://localhost:4100/api/v1/intro/news/polls

{}

2026-10-19T14:00:44.338795+09:00일치: 진행 중 공개 설문 목록 조회55
GET
200
http://localhost:4100/api/v1/intro/news/polls

{}

2026-10-16T16:33:12.028956+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.8

설문조사 참여·상세

/intro/news/polls/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 2개

GET설문 상세·문항·선택지 조회
/api/v1/intro/news/polls/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

조회 매핑 확인. POST /api/v1/intro/news/polls/{id}/responses에서 객관식 단일·복수 및 주관식100자 실제 저장201·Oracle 원문 대조 완료.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 29페이지

HTTP 조회 시각: 2026-10-19T17:47:28.246162+09:00

http://localhost:4100/api/v1/intro/news/polls/200

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "survey": {
    "id": 200,
    "title": "순번 변경 테스트",
    "startsAt": "20261015000000",
    "endsAt": "20261031000000",
    "summary": "<p>순번 변경 테스트<br></p>",
    "serviceStatusCode": "CCM04001",
    "entryCode": "CSV01002"
  },
  "questions": [
    {
      "id": 1302,
      "title": "설문조사 등록테스트_질문1",
      "kind": "text",
      "required": false,
      "options": [],
      "number": "1",
      "summary": "답변을 입력해주세요",
      "answerCode": "CSV02002",
      "multipleChoiceCode": null,
      "requiredCode": "CSV04002",
      "privacyCode": "CSV05002"
    },
    {
      "id": 1303,
      "title": "설문조사 등록테스트_질문2",
      "kind": "radio",
      "required": false,
      "options": [
        {
          "id": 7160,
          "questionId": 1303,
          "surveyId": 200,
          "number": "1",
          "inputTypeCode": "CSV06001",
          "title": "그렇다"
        },
        {
          "id": 7161,
          "questionId": 1303,
          "surveyId": 200,
          "number": "2",
          "inputTypeCode": "CSV06001",
          "title": "아니다"
        }
      ],
      "number": "2",
      "summary": null,
      "answerCode": "CSV02001",
      "multipleChoiceCode": "CSV03001",
      "requiredCode": "CSV04002",
      "privacyCode": "CSV05002"
    },
    {
      "id": 1304,
      "title": "설문조사 등록테스트_질문3",
      "kind": "checkbox",
      "required": false,
      "options": [
        {
          "id": 7162,
          "questionId": 1304,
          "surveyId": 200,
          "number": "1",
          "inputTypeCode": "CSV06001",
          "title": "그렇다"
        },
        {
          "id": 7163,
          "questionId": 1304,
          "surveyId": 200,
          "number": "2",
          "inputTypeCode": "CSV06001",
          "title": "약간 그렇다"
        },
        {
          "id": 7164,
          "questionId": 1304,
          "surveyId": 200,
          "number": "3",
          "inputTypeCode": "CSV06001",
          "title": "보통이다"
        },
        {
          "id": 7165,
          "questionId": 1304,
          "surveyId": 200,
          "number": "4",
          "inputTypeCode": "CSV06001",
          "title": "약간 그렇지 않다"
        },
        {
          "id": 7166,
          "questionId": 1304,
          "surveyId": 200,
          "number": "5",
          "inputTypeCode": "CSV06001",
          "title": "그렇지 않다"
        }
      ],
      "number": "3",
      "summary": null,
      "answerCode": "CSV02001",
      "multipleChoiceCode": "CSV03002",
      "requiredCode": "CSV04002",
      "privacyCode": "CSV05002"
    },
    {
      "id": 1305,
      "title": "이벤트 개인정보",
      "kind": "text",
      "required": false,
      "options": [],
      "number": "4",
      "summary": "개인정보가 포함되어있습니다.",
      "answerCode": "CSV02002",
      "multipleChoiceCode": null,
      "requiredCode": "CSV04002",
      "privacyCode": "CSV05001"
    }
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
29페이지설문 제목·기간·안내·문항·선택지survey / questions
[{"id": 200, "title": "순번 변경 테스트", "startsAt": "20261015000000", "endsAt": "20261031000000", "summary": "<p>순번 변경 테스트<br></p>", "serviceStatusCode": "CCM04001", "entryCode": "CSV01002"}, [{"id": 1302, "title": "설문조사 등록테스트_질문1", "kind": "text", "required": false, "options": [], "number": "1", "summary": "답변을 입력해주세요", "answerCode": "CSV02002", "multipleChoiceCode": null, "requiredCode": "CSV04002", "privacyCode": "CSV05002"}, {"id": 1303, "title": "설문조사 등록테스트_질문2", "kind": "radio", "required": false, "options": [{"id": 7160, "questionId": 1303, "surveyId": 200, "number": "1", "inputTypeCode": "CSV06001", "title": "그렇다"}, {"id": 7161, "questionId": 1303, "surveyId": 200, "number": "2", "inputTypeCode": "CSV06001", "title": "아니다"}], "number": "2", "summary": null, "answerCode": "CSV02001", "multipleChoiceCode": "CSV03001", "requiredCode": "CSV04002", "privacyCode": "CSV05002"}, {"id": 1304, "title": "설문조사 등록테스트_질문3", "kind": "checkbox", "required": false, "options": [{"id": 7162, "questionId": 1304, "surveyId": 200, "number": "1", "inputTypeCode": "CSV06001", "title": "그렇다"}, {"id": 7163, "questionId": 1304, "surveyId": 200, "number": "2", "inputTypeCode": "CSV06001", "title": "약간 그렇다"}, {"id": 7164, "questionId": 1304, "surveyId": 200, "number": "3", "inputTypeCode": "CSV06001", "title": "보통이다"}, {"id": 7165, "questionId": 1304, "surveyId": 200, "number": "4", "inputTypeCode": "CSV06001", "title": "약간 그렇지 않다"}, {"id": 7166, "questionId": 1304, "surveyId": 200, "number": "5", "inputTypeCode": "CSV06001", "title": "그렇지 않다"}], "number": "3", "summary": null, "answerCode": "CSV02001", "multipleChoiceCode": "CSV03002", "requiredCode": "CSV04002", "privacyCode": "CSV05002"}, {"id": 1305, "title": "이벤트 개인정보", "kind": "text", "required": false, "options": [], "number": "4", "summary": "개인정보가 포함되어있습니다.", "answerCode": "CSV02002", "multipleChoiceCode": null, "requiredCode": "CSV04002", "privacyCode": "CSV05001"}]]

설문 기본 정보와 CMS 원본 상태·참여 코드. / 설문 문항 목록. 문항별 질문 형식·필수 여부·보기 포함.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지설문 제목·기간·안내·문항·선택지검토 범위
실제 GET200: 설문200의4문항(주관식2·단일1·복수1), 보기7개 확인.

SurveyResponseMapper: TB_SRVY_EXMN, TB_SRVY_QSTN, TB_SRVY_QITEM. kind=text/radio/checkbox, required=CSV04001, options를 질문ID로 연결.

조회 매핑 확인. POST /api/v1/intro/news/polls/{id}/responses에서 객관식 단일·복수 및 주관식100자 실제 저장201·Oracle 원문 대조 완료.

제공
검색·필터 등 실제 HTTP 요청 5건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/polls/200

{}

2026-10-19T17:47:28.246162+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.54
GET
200
http://localhost:4100/api/v1/intro/news/polls/200

{}

2026-10-19T14:00:44.393993+09:00일치: 설문200 문항4개·보기7개 조회37
GET
200
http://localhost:4100/api/v1/intro/news/polls/200

{}

2026-10-16T16:33:42.072922+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.49
GET
404
http://localhost:4100/api/v1/intro/news/polls/199

{}

2026-10-16T16:33:12.086114+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.18
GET
404
http://localhost:4100/api/v1/intro/news/polls/198

{}

2026-10-16T16:33:12.042993+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.38
POST설문 응답 제출·저장
/api/v1/intro/news/polls/{id}/responses
HTTP 201 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

PDF29페이지의 객관식 단일·복수 및 주관식100자 응답 제출·CMS 저장 검증 완료. 주관식 보기ID=NULL, 내용100자, 전체 답변의 동일 참여자4를 실제 Oracle 조회로 확인. 필수 문항은 단위검증 완료이며 현재 공개 설문은 모두 선택. CMS 추가 입력형 보기(CSV06002)는 구현·단위검증했으나 현재 공개 설문에 표본 없어 해당 변형의 실제 HTTP 성공은 미검증.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 29페이지

HTTP 조회 시각: 2026-10-19T19:03:38.821540+09:00

http://localhost:4100/api/v1/intro/news/polls/200/responses

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "surveyId": 200,
  "participantId": 4,
  "answerCount": 4
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
29페이지제출 설문 IDsurveyId
[200]

TB_SRVY_ANS.SRVY_EXMN_ID

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지한 제출을 묶는 참여자 IDparticipantId
[4]

SEQ_TB_SRVY_ANS_SRVY_PTCP_ID → TB_SRVY_ANS.SRVY_PTCP_ID

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지저장 답변 행 수answerCount
[4]

선택 보기별 INSERT 성공 행 수. 실제 DB 3행

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지설문 제출검토 범위
기존 객관식 HTTP17건·3행 증거 유지. 후속 GET200 2건, POST400 4건, POST201 1건. 로컬 로그인 API200 및 Swagger 화면 로그인200 확인. 주관식 혼합 제출201(설문200·참여자4·답변4행).

CMS TB_SRVY_ANS와 기존 참여자/답변 시퀀스. 사용자 확정: 주관식 SRVY_QITEM_ID=NULL, SRVY_ANS_CN=답변 내용. 실제 CMS NULLABLE=Y 확인. 참여자4로 단일·복수·주관식100자 총4행 저장 및 문항·보기·본문 원문 대조.

PDF29페이지의 객관식 단일·복수 및 주관식100자 응답 제출·CMS 저장 검증 완료. 주관식 보기ID=NULL, 내용100자, 전체 답변의 동일 참여자4를 실제 Oracle 조회로 확인. 필수 문항은 단위검증 완료이며 현재 공개 설문은 모두 선택. CMS 추가 입력형 보기(CSV06002)는 구현·단위검증했으나 현재 공개 설문에 표본 없어 해당 변형의 실제 HTTP 성공은 미검증.

제공
검색·필터 등 실제 HTTP 요청 20건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
201
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T19:03:38.821540+09:00일치: 주관식100자와 객관식 단일·복수 혼합 제출201·답변4행
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T19:03:38.695082+09:00일치: 동일 주관식 문항 중복 거절
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T19:03:38.657581+09:00일치: 주관식에 입력형 보기 전달 거절
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T19:03:38.619283+09:00일치: 주관식에 보기ID 전달 거절
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T19:03:38.574983+09:00일치: 주관식101자 거절
POST
201
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:50.095143+09:00일치: 객관식 단일·복수 제출201 및 Oracle 답변3행·참여자3 대조93
POST
404
http://localhost:4100/api/v1/intro/news/polls/198/responses

{}

2026-10-19T14:00:50.073053+09:00일치: 기간 종료 설문 제출 거절22
POST
404
http://localhost:4100/api/v1/intro/news/polls/199/responses

{}

2026-10-19T14:00:50.051876+09:00일치: 비공개 설문 제출 거절21
POST
503
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.990432+09:00일치: 주관식 보기ID 미확정: 전체 저장 전50361
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.955575+09:00일치: 미선택 보기의 입력내용 거절35
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.920366+09:00일치: 선택형 보기의 입력내용 거절35
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.884794+09:00일치: 주관식101자 거절36
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.850760+09:00일치: 같은 문항 중복 제출 거절34
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.815739+09:00일치: 다른 문항 ID 거절35
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.780505+09:00일치: 다른 문항의 보기 거절35
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.744302+09:00일치: 복수선택 동일 보기 중복 거절36
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.707097+09:00일치: 단일선택 보기2개 거절37
POST
400
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.663524+09:00일치: 존재하지 않는 보기 거절44
POST
403
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:49.654032+09:00일치: CSRF 미전송 제출 거절9
POST
401
http://localhost:4100/api/v1/intro/news/polls/200/responses

{}

2026-10-19T14:00:44.431075+09:00일치: 회원 설문 비로그인 제출 거절57

기관소개›사회적 가치

2개 페이지 · 2개 항목
기관소개 사회적 가치의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

기부금 실적

/intro/social-value/donations

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET기부금 실적 목록 검색·페이징 조회
/api/v1/intro/social-value/donations
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 38페이지

HTTP 조회 시각: 2026-10-15T13:01:38.574275+09:00

http://localhost:4100/api/v1/intro/social-value/donations

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 9,
  "title": "2025년 기부금 모금액 및 활용실적...",
  "createdAt": "20260413095219",
  "viewCount": 0
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
38페이지제목items[].title
["2025년 기부금 모금액 및 활용실적 명세서.txt", "2024년 기부금 모금액 및 활용실적 명세서.txt"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
38페이지작성일items[].createdAt
["20260413095219", "20250423145112"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
38페이지조회수items[].viewCount
[0, 0]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
38페이지조회 건수·10건 페이징totalElements / size
[2, 10]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 6건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/social-value/donations

{}

2026-10-15T13:01:38.574275+09:00HTTP 결과 기록16
GET
200
http://localhost:4100/api/v1/intro/social-value/donations?searchField=title&keyword=%EA%B8%B0%EB%B6%80%EA%B8%88&size=3

{}

2026-10-15T13:01:38.625832+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치15
GET
200
http://localhost:4100/api/v1/intro/social-value/donations?searchField=all&keyword=%EA%B8%B0%EB%B6%80%EA%B8%88&size=3

{}

2026-10-15T13:01:38.640937+09:00일치: 요청 페이지 크기 일치34
GET
200
http://localhost:4100/api/v1/intro/social-value/donations?searchField=content&keyword=%EA%B8%B0%EB%B6%80%EA%B8%88&size=3

{}

2026-10-15T13:01:38.675277+09:00일치: 요청 페이지 크기 일치14
GET
200
http://localhost:4100/api/v1/intro/social-value/donations?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:38.728843+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.48
GET
200
http://localhost:4100/api/v1/intro/social-value/donations?keyword=%25_

{}

2026-10-15T13:01:38.776805+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.20

기부금 실적 상세

/intro/social-value/donations/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET기부금 실적 상세·첨부·인접 글 조회
/api/v1/intro/social-value/donations/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 39페이지

HTTP 조회 시각: 2026-10-16T18:41:26.225439+09:00

http://localhost:4100/api/v1/intro/social-value/donations/6

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 6,
    "title": "2024년 기부금 모금액 및 활용실적...",
    "bodyHtml": "2024년 기부금 모금액 및 활용실적...",
    "createdAt": "20250423145112",
    "viewCount": 0
  },
  "attachments": [],
  "previous": {
    "id": 9,
    "title": "2025년 기부금 모금액 및 활용실적..."
  },
  "next": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
39페이지상세 제목article.title
["2024년 기부금 모금액 및 활용실적 명세서.txt"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
39페이지상세 본문article.bodyHtml
["2024년 기부금 모금액 및 활용실적 명세서.txt"]

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
39페이지작성일article.createdAt
["20250423145112"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
39페이지조회수article.viewCount
[0]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
39페이지첨부 다운로드attachments
[[]]

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

값 없음
39페이지이전 글previous
[{"id": 9, "title": "2025년 기부금 모금액 및 활용실적 명세서.txt"}]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
39페이지다음 글next
[null]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
39페이지첨부 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/social-value/donations/6

{}

2026-10-16T18:41:26.225439+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.25
GET
200
http://localhost:4100/api/v1/intro/social-value/donations/9

{}

2026-10-16T18:41:26.191799+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.28

기관소개›경영 공시

2개 페이지 · 2개 항목
기관소개 경영 공시의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

자율공시 목록

/intro/management-disclosure/voluntary

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET자율공시 목록 검색·페이징 조회
/api/v1/intro/management-disclosure/voluntary
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-26 14:35:23펼치기접기
완료

CMS SORT_SEQ 오름차순(미지정 마지막) → ID 내림차순 적용. 등록일 정렬 제외. 공개 전체 데이터 및 검색·페이지 경계·내용 검색를 실제 DB HTTP로 대조. DB 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 42페이지

HTTP 조회 시각: 2026-10-26T14:35:22.704075+09:00

http://localhost:4100/api/v1/intro/management-disclosure/voluntary?size=3&page=1

조회 조건: {"size": 3, "page": 1}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "items": [
    {
      "id": 201,
      "title": "성범죄 경력자 취업 점검 확인 결과 ...",
      "createdAt": "20251219094455",
      "viewCount": 0,
      "summary": "2025년 성범죄 경력자 취업 점검 ...",
      "timing": "2025년 12월~ 2026년 11월",
      "cycle": "12개월",
      "method": "홈페이지",
      "department": "경영관리팀"
    },
    {
      "id": 182,
      "title": "경영목표, 예산 및 운영계획",
      "createdAt": "20161027181432",
      "viewCount": 0,
      "summary": "사업계획서 및 예산서",
      "timing": "3월",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "정책기획팀"
    },
    {
      "id": 191,
      "title": "결산서",
      "createdAt": "20161027181432",
      "viewCount": 0,
      "summary": "결산서",
      "timing": "3월",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "경영기획부 "
    }
  ],
  "page": 1,
  "size": 3,
  "totalElements": 5,
  "totalPages": 2,
  "hasPrevious": false,
  "hasNext": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
42페이지공개업무items[].title
["성범죄 경력자 취업 점검 확인 결과 공개", "경영목표, 예산 및 운영계획", "결산서"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
42페이지공개내용items[].summary
["2025년 성범죄 경력자 취업 점검 확인 결과 공개", "사업계획서 및 예산서", "결산서"]

정보공개 내용 요약. TB_INFO_RLS.RLS_CN. 상세 본문과 별도 항목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
42페이지시기items[].timing
["2025년 12월~ 2026년 11월", "3월", "3월"]

공개 시기. TB_INFO_RLS.TMNG_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
42페이지주기items[].cycle
["12개월", "매년", "매년"]

공개 주기. TB_INFO_RLS.CYCLE_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
42페이지방법items[].method
["홈페이지", "홈페이지", "홈페이지"]

공개 방법. TB_INFO_RLS.MTHD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
42페이지담당부서items[].department
["경영관리팀", "정책기획팀", "경영기획부 "]

담당 부서명. TB_INFO_RLS.TKCG_DEPT_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 13건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary

{}

2026-10-15T13:01:38.797088+09:00HTTP 결과 기록21
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?searchField=title&keyword=%EC%84%B1%EB%B2%94%EC%A3%84&size=3

{}

2026-10-15T13:01:38.887864+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치17
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?searchField=all&keyword=%EC%84%B1%EB%B2%94%EC%A3%84&size=3

{}

2026-10-15T13:01:38.904416+09:00일치: 요청 페이지 크기 일치16
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?searchField=content&keyword=%EC%84%B1%EB%B2%94%EC%A3%84&size=3

{}

2026-10-15T13:01:38.920334+09:00일치: 요청 페이지 크기 일치17
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:38.937059+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.17
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?keyword=%25_

{}

2026-10-15T13:01:38.954015+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.15
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?size=100&page=1

{}

2026-10-26T14:35:22.596400+09:00공개 전체 ID 순서와 정렬 후 페이징·전체 건수 일치108
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?size=3&page=1

{}

2026-10-26T14:35:22.704075+09:00작은 페이지 경계와 마지막 페이지 순서 일치17
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?size=3&page=2

{}

2026-10-26T14:35:22.721344+09:00작은 페이지 경계와 마지막 페이지 순서 일치16
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?size=3&page=2

{}

2026-10-26T14:35:22.737258+09:00작은 페이지 경계와 마지막 페이지 순서 일치17
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?searchField=title&keyword=%ED%98%84%ED%99%A9&size=100

{}

2026-10-26T14:35:22.754241+09:00제목 검색 결과 ID 순서 및 전체 건수 일치38
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?searchField=content&keyword=20&size=100

{}

2026-10-26T14:35:22.791937+09:00공개내용 검색 정렬·전체 건수 일치33
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary?keyword=%EA%B2%80%EC%83%89%EA%B2%B0%EA%B3%BC%EC%97%86%EB%8A%94%EA%B2%80%EC%A6%9Dxyz&size=10

{}

2026-10-26T14:35:22.825254+09:00검색 결과 없음 HTTP20031

자율공시 상세

/intro/management-disclosure/voluntary/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET자율공시 상세·첨부·인접 글 조회
/api/v1/intro/management-disclosure/voluntary/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-26 14:35:23펼치기접기
완료

CMS SORT_SEQ 오름차순(미지정 마지막) → ID 내림차순 적용. 등록일 정렬 제외. 공개 전체 목록 기준 첫·중간·페이지 경계·마지막의 이전·다음 ID를 실제 DB HTTP로 대조. DB 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 43페이지

HTTP 조회 시각: 2026-10-26T14:35:22.856264+09:00

http://localhost:4100/api/v1/intro/management-disclosure/voluntary/201

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 201,
    "title": "성범죄 경력자 취업 점검 확인 결과 ...",
    "bodyHtml": "<div class=\"kmdb-edi...",
    "createdAt": "20251219094455",
    "viewCount": 0,
    "summary": "2025년 성범죄 경력자 취업 점검 ...",
    "timing": "2025년 12월~ 2026년 11월",
    "cycle": "12개월",
    "method": "홈페이지",
    "department": "경영관리팀"
  },
  "attachments": [],
  "previous": null,
  "next": {
    "id": 182,
    "title": "경영목표, 예산 및 운영계획"
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
43페이지상세 내용article.bodyHtml
"<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">2025년 한국영상자료원 성범죄 취업 점검, 확인 결과를 공개합니다. \n<p class=\"1\" style=\"text-align:center\"><span style=\"line-height:160%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"font-size:18.0pt\"><span style=\"font-family:한양견고딕\"><span style=\"letter-spacing:-0.6pt\">2025</span></span></span><span style=\"font-size:18.0pt\"><span style=\"font-family:한양견고딕\"><span style=\"letter-spacing:-0.6pt\">년 성범죄 경력자 취업 점검&nbsp;</span></span></span><span style=\"font-size:18.0pt\"><span style=\"font-family:한양견고딕\"><span style=\"letter-spacing:-0.6pt\">확인결과 공개</span></span></span></span></span></span></p>\n<p class=\"1\" style=\"text-align:center\"><span style=\"line-height:160%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"> <span style=\"font-size:18.0pt\"><span style=\"font-family:한양견고딕\"><span style=\"letter-spacing:-0.6pt\">(</span></span></span><span style=\"font-size:18.0pt\"><span style=\"font-family:한양견고딕\"><span style=\"letter-spacing:-0.6pt\">한국영상자료원</span></span></span><span style=\"font-size:18.0pt\"><span style=\"font-family:한양견고딕\"><span style=\"letter-spacing:-0.6pt\">)</span></span></span></span></span></span></p>\n<p class=\"1\" style=\"text-align:center\"><span style=\"line-height:160%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"> <span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">『</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">아동&nbsp;</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">청소년의 성보호에 관한 법률</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">』</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">제</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">57</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">조 제</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">6</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.1pt\">항 및 같은 법 시</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.2pt\">행령 제</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.2pt\">27</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.2pt\">조에 </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-0.3pt\">따라</span></span></span> <span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-1.1pt\">아동 </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-1.1pt\">&nbsp;</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-1.1pt\">청소년 관련 기관 등에 대하여 실시한 성범죄 경력자 취업 점검&nbsp;</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-1.1pt\">확인 결과를</span></span></span> <span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-1.0pt\">공개합니다</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:궁서체\"><span style=\"letter-spacing:-1.0pt\">.</span></span></span> </span></span></span></p>\n<p class=\"0\" style=\"margin-right:5.1pt; text-align:right\"><span style=\"font-size:12.0pt\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"> </span></span></span>&nbsp;</p>\n<p class=\"0\" style=\"text-align:right\"><span style=\"word-break:keep-all\"><span style=\"layout-grid-mode:both\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">2025</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">년 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">11</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">월</span></span></span></span></span></p>\n<p class=\"1\"><span style=\"font-size:6.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"> </span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-family:HY헤드라인M\"><span style=\"letter-spacing:0pt\">□ </span></span><span style=\"font-family:HY헤드라인M\">점검 개요</span></span></span></p>\n<p class=\"1\"><span style=\"font-size:3.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"> </span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 담당 부처 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">: </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">한국영상자료원 경영관리팀 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">(</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">연락처 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">: 02-3153-2013)</span></span></span></span></span></p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 점검 기간 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">: 2025.1. ~ 2025.11.</span></span></span></span></span></p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 기관 유형 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">: “</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">청소년성보호법</span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">” 56</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">조 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">1</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">항 각호</span></span></span></span></p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 점검 결과 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">: </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">총 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">1</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">개소 중 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">1</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">개소</span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">(5</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">명</span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">) </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">점검 완료</span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">/ </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">총 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">0</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">명 적발</span></span></span></span></p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 공개 장소 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:HCI Poppy\"><span style=\"letter-spacing:0pt\">: </span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">한국영상자료원 홈페이지 </span></span></span></span></p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 공개 기간 </span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\"><span style=\"letter-spacing:0pt\">:</span></span></span> <span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\"><span style=\"letter-spacing:0pt\">2025.12. ~ 2026.11. (12</span></span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">개월간</span></span><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\"><span style=\"letter-spacing:0pt\">)</span></span></span></span></span></p>\n<p class=\"1\" style=\"margin-left:35.3pt\"><span style=\"font-size:10.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.7pt\"> </span></span></span></span>&nbsp;</p>\n<p class=\"1\" style=\"margin-left:35.3pt\"><span style=\"font-size:10.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.7pt\"><span style=\"color:#0000ff\"> </span></span></span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-family:HY헤드라인M\"><span style=\"letter-spacing:0pt\">□ </span></span><span style=\"font-family:HY헤드라인M\">점검 결과 세부 내역 </span></span></span></p>\n<p class=\"1\"><span style=\"font-size:3.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"> </span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 총 괄</span></span></span></span></p>\n<p class=\"1\"><span style=\"font-size:10.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.3pt\"><span style=\"font-style:italic\"><span style=\"color:#ff0000\"></span></span></span></span></span></span>&nbsp;</p>\n<table style=\"border-collapse:collapse; table-layout:fixed; border-top:none; border-left:none; border-bottom:none; border-right:none; border:solid #000000 0.56pt\" summary=\"1\">\n <caption>\n  1\n </caption>\n <tbody>\n  <tr>\n   <td colspan=\"2\" style=\"width:120.65pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">기관유형</span></span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">(56</span></span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">조</span></span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">1</span></span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">항</span></span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">)</span></span></span></span></span></span></p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">기관총수</span></span></span></span></span></span></p></td>\n   <td style=\"width:56.90pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">점검기관수</span></span></span></span></span></span></p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">점검인원</span></span></span></span></span></span></p></td>\n   <td style=\"width:47.46pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">적발기관</span></span></span></span></span></span></p></td>\n   <td style=\"width:53.12pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">적발인원</span></span></span></span></span></span></p></td>\n   <td style=\"width:58.78pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-1.2pt\">조치결과</span></span></span></span></span></span></p></td>\n   <td style=\"width:36.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:0.00pt 0.00pt 0.00pt 0.00pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:47.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:-0.8pt\">비고</span></span></span></span></span></span></p></td>\n  </tr>\n  <tr>\n   <td colspan=\"2\" style=\"width:120.65pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:15.65pt\"><span style=\"font-family:돋움체\"><span style=\"font-weight:bold\">총 계</span></span></span></span></span></span></p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:15.65pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:56.90pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:15.65pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:15.65pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:47.46pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"color:#0000ff\"><span style=\"height:15.65pt\"> </span></span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:53.12pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"color:#0000ff\"><span style=\"height:15.65pt\"> </span></span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:58.78pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"font-size:8.0pt\"><span style=\"line-height:80%\"><span style=\"text-autospace:none\"><span style=\"color:#0000ff\"><span style=\"height:15.65pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:36.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:15.65pt\"> </span></span></span></span>&nbsp;</p></td>\n  </tr>\n  <tr>\n   <td rowspan=\"2\" style=\"width:41.93pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.64pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\"><span style=\"font-weight:bold\">5</span></span></span><span style=\"font-family:돋움체\"><span style=\"font-weight:bold\">호</span></span></span></span></span></span></p></td>\n   <td style=\"width:78.72pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"font-weight:bold\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:none; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-family:함초롬바탕\"><span style=\"letter-spacing:-0.5pt\">1</span></span></span></span></span></span></p></td>\n   <td style=\"width:56.90pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-family:함초롬바탕\"><span style=\"letter-spacing:-0.5pt\">1</span></span></span></span></span></span></p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:none; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-family:함초롬바탕\"><span style=\"letter-spacing:-0.5pt\">5</span></span></span></span></span></span></p></td>\n   <td style=\"width:47.46pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-family:함초롬바탕\"><span style=\"letter-spacing:-0.5pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:53.12pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-family:함초롬바탕\"><span style=\"letter-spacing:-0.5pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:58.78pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-size:9.0pt\"><span style=\"font-family:함초롬바탕\">해당없음</span></span></span></span></span></span></p></td>\n   <td style=\"width:36.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"> </span></span></span></span>&nbsp;</p></td>\n  </tr>\n  <tr>\n   <td style=\"width:78.72pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"><span style=\"font-family:돋움체\"><span style=\"font-weight:bold\">소 계</span></span></span></span></span></span></p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:none; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:56.90pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:54.07pt; border-top:solid #000000 0.56pt; border-left:none; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:47.46pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:53.12pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:right; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.5pt\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:58.78pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"font-size:9.0pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"> </span></span></span></span></span>&nbsp;</p></td>\n   <td style=\"width:36.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:80%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:12.82pt\"> </span></span></span></span>&nbsp;</p></td>\n  </tr>\n </tbody>\n</table>\n<p class=\"1\"><span style=\"font-size:3.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.3pt\"><span style=\"font-style:italic\"><span style=\"color:#ff0000\"> </span></span></span></span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"font-size:10.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"letter-spacing:-0.3pt\"><span style=\"font-weight:bold\"> </span></span></span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"font-size:6.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"> </span></span></span>&nbsp;</p>\n<p class=\"1\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"><span style=\"font-size:12.0pt\"><span style=\"font-family:휴먼명조\">ㅇ 취업제한 대상자 적발기관 세부내역</span></span></span></span></p>\n<p class=\"1\"><span style=\"font-size:15.0pt\"><span style=\"line-height:160%\"><span style=\"text-autospace:none\"></span></span></span>&nbsp;</p>\n<table style=\"border-collapse:collapse; table-layout:fixed; border-top:none; border-left:none; border-bottom:none; border-right:none; border:solid #000000 0.56pt\" summary=\"1\">\n <caption>\n  1\n </caption>\n <tbody>\n  <tr>\n   <td style=\"width:19.29pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">연번</span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">기관유형</span></span></span></span></span></p>\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">(56</span></span><span style=\"font-family:돋움체\">조 </span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">1</span></span><span style=\"font-family:돋움체\">항</span><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">)</span></span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">시도</span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">시군구</span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">기관명</span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">취업 제한 대상자 유형</span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">적발일자</span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:90%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:52.82pt\"><span style=\"font-family:돋움체\">조치결과</span></span></span></span></span></p></td>\n  </tr>\n  <tr>\n   <td style=\"width:19.29pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">1</span></span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\">해당없음</span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n  </tr>\n  <tr>\n   <td style=\"width:19.29pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">2</span></span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\">해당없음</span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:62.48pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n   <td style=\"width:68.14pt; border-top:solid #000000 0.56pt; border-left:solid #000000 0.56pt; border-bottom:solid #000000 0.56pt; border-right:solid #000000 0.56pt\">\n    <p class=\"0\" style=\"text-align:center; padding:-0.01pt -0.01pt -0.01pt -0.01pt\"><span style=\"line-height:100%\"><span style=\"word-break:keep-all\"><span style=\"text-autospace:none\"><span style=\"height:25.65pt\"><span style=\"font-family:돋움체\"><span style=\"letter-spacing:0pt\">-</span></span></span></span></span></span></p></td>\n  </tr>\n </tbody>\n</table>\n<div class=\"hwp_editor_board_content\">\n &nbsp;\n</div></div>"

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
43페이지이전 글previous
[null]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
43페이지다음 글next
[{"id": 185, "title": "수의계약정보"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
43페이지보도자료 상세를 따르는 첨부파일 클릭 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 6건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary/201

{}

2026-10-16T18:41:26.310634+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.52
GET
404
http://localhost:4100/api/v1/intro/management-disclosure/voluntary/97

{}

2026-10-16T17:52:28.428172+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.32
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary/201

{}

2026-10-26T14:35:22.856264+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치179
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary/191

{}

2026-10-26T14:35:23.035114+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치49
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary/184

{}

2026-10-26T14:35:23.083879+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치41
GET
200
http://localhost:4100/api/v1/intro/management-disclosure/voluntary/185

{}

2026-10-26T14:35:23.124639+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치37

기관소개›정보 공개

3개 페이지 · 6개 항목
기관소개 정보 공개의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

사전정보공개 목록

/intro/information-disclosure/proactive

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 2개

GET사전정보공개 목록 검색·페이징 조회
/api/v1/intro/information-disclosure/proactive
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-26 14:26:58펼치기접기
완료

CMS TB_INFO_RLS.SORT_SEQ 오름차순(미지정 마지막) → REG_DT 내림차순 → INFO_RLS_ID 내림차순 적용. 공개 91건 전건 정렬·검색·분류·분야·페이지 경계를 실제 DB HTTP로 검증. DB 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 47페이지

HTTP 조회 시각: 2026-10-26T14:26:58.055172+09:00

http://localhost:4100/api/v1/intro/information-disclosure/proactive?page=1&size=10

조회 조건: {"page": 1, "size": 10}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "items": [
    {
      "id": 180,
      "title": "도서 발간 목록",
      "createdAt": "20161027181453",
      "viewCount": 0,
      "categoryCode": "CDC02001004",
      "categoryName": "연구",
      "summary": "발간년도, 저자, 주요내용",
      "timing": "발생시",
      "cycle": "수시",
      "method": "홈페이지",
      "department": "학예연구팀"
    },
    {
      "id": 177,
      "title": "한국 고전영화 디지털 화면복원 현황",
      "createdAt": "20161027181453",
      "viewCount": 0,
      "categoryCode": "CDC02001001",
      "categoryName": "보존기술",
      "summary": "영화제명, 감독, 제작연도, 작업연도...",
      "timing": "3월",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "디지털복원팀"
    },
    {
      "id": 176,
      "title": "시네마테크KOFA 운영현황",
      "createdAt": "20161027181453",
      "viewCount": 0,
      "categoryCode": "CDC02001003",
      "categoryName": "시네마테크",
      "summary": "시네마테크KOFA 운영현황",
      "timing": "3월",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "프로그램팀"
    },
    {
      "id": 171,
      "title": "독립아카이브 수집현황",
      "createdAt": "20161027181453",
      "viewCount": 0,
      "categoryCode": "CDC02001002",
      "categoryName": "수집",
      "summary": "수집 영화 편수,목록,작품정보",
      "timing": "3월 ",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "수집카탈로깅팀"
    },
    {
      "id": 161,
      "title": "홍보관, 전시관, 박물관 등 현황",
      "createdAt": "20161027181452",
      "viewCount": 0,
      "categoryCode": "CDC02002006",
      "categoryName": "홍보/대외협력",
      "summary": "명칭, 소재지, 규모, 주요시설, 운...",
      "timing": "3월 ",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "학예연구팀"
    },
    {
      "id": 152,
      "title": "개인정보 처리(보호)방침",
      "createdAt": "20161027181452",
      "viewCount": 0,
      "categoryCode": "CDC02002005",
      "categoryName": "정보화",
      "summary": "개인정보처리 목적, 개인정보 처리 및...",
      "timing": "개정시",
      "cycle": "수시",
      "method": "홈페이지",
      "department": "정보자원팀"
    },
    {
      "id": 120,
      "title": "계약심사 현황",
      "createdAt": "20161027181435",
      "viewCount": 0,
      "categoryCode": "CDC02002004",
      "categoryName": "인사/총무/회계",
      "summary": "분야(전산, 토목, 건축 등), 유형...",
      "timing": "변경시",
      "cycle": "수시",
      "method": "홈페이지",
      "department": "경영관리팀"
    },
    {
      "id": 114,
      "title": "법률고문 현황",
      "createdAt": "20161027181434",
      "viewCount": 0,
      "categoryCode": "CDC02002003",
      "categoryName": "법원/노무",
      "summary": "법률고문명(법무법인 및 개인), 위촉...",
      "timing": "3월",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "경영지원팀"
    },
    {
      "id": 194,
      "title": "임직원 행동강령 및 지침",
      "createdAt": "20161027181433",
      "viewCount": 0,
      "categoryCode": "CDC02002001",
      "categoryName": "감사/윤리",
      "summary": "윤리헌장, 윤리강령, 행동강령",
      "timing": "개정시",
      "cycle": "수시",
      "method": "홈페이지",
      "department": "감사"
    },
    {
      "id": 103,
      "title": "부서별 주요 계획",
      "createdAt": "20161027181433",
      "viewCount": 0,
      "categoryCode": "CDC02002002",
      "categoryName": "기획/재정",
      "summary": "사업명, 사업개요, 주요내용, 추진계...",
      "timing": "1월",
      "cycle": "매년",
      "method": "홈페이지",
      "department": "전략기획팀"
    }
  ],
  "page": 1,
  "size": 10,
  "totalElements": 91,
  "totalPages": 10,
  "hasPrevious": false,
  "hasNext": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
47페이지공개업무items[].title
["도서 발간 목록", "한국 고전영화 디지털 화면복원 현황", "시네마테크KOFA 운영현황", "독립아카이브 수집현황", "홍보관, 전시관, 박물관 등 현황", "개인정보 처리(보호)방침", "계약심사 현황", "법률고문 현황", "임직원 행동강령 및 지침", "부서별 주요 계획"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지공개내용items[].summary
["발간년도, 저자, 주요내용", "영화제명, 감독, 제작연도, 작업연도 등", "시네마테크KOFA 운영현황", "수집 영화 편수,목록,작품정보", "명칭, 소재지, 규모, 주요시설, 운영기간, 운영예산, 인원, 운영시간 및 이용방법", "개인정보처리 목적, 개인정보 처리 및 보유현황, 제3자제공, 위탁현황 등", "분야(전산, 토목, 건축 등), 유형(공사, 설계변경, 용역, 설비 등), 요청기관, 심사요청액, 심사액, 절감액, 우수사례", "법률고문명(법무법인 및 개인), 위촉기간, 주요경력, 수당 등 지급방법 및 지급액", "윤리헌장, 윤리강령, 행동강령", "사업명, 사업개요, 주요내용, 추진계획 "]

정보공개 내용 요약. TB_INFO_RLS.RLS_CN. 상세 본문과 별도 항목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지시기items[].timing
["발생시", "3월", "3월", "3월 ", "3월 ", "개정시", "변경시", "3월", "개정시", "1월"]

공개 시기. TB_INFO_RLS.TMNG_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지주기items[].cycle
["수시", "매년", "매년", "매년", "매년", "수시", "수시", "매년", "수시", "매년"]

공개 주기. TB_INFO_RLS.CYCLE_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지방법items[].method
["홈페이지", "홈페이지", "홈페이지", "홈페이지", "홈페이지", "홈페이지", "홈페이지", "홈페이지", "홈페이지", "홈페이지"]

공개 방법. TB_INFO_RLS.MTHD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지담당부서items[].department
["학예연구팀", "디지털복원팀", "프로그램팀", "수집카탈로깅팀", "학예연구팀", "정보자원팀", "경영관리팀", "경영지원팀", "감사", "전략기획팀"]

담당 부서명. TB_INFO_RLS.TKCG_DEPT_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지구분items[].categoryName
["연구", "보존기술", "시네마테크", "수집", "홍보/대외협력", "정보화", "인사/총무/회계", "법원/노무", "감사/윤리", "기획/재정"]

categoryCode를 TB_COM_CD.CD_NM으로 조회한 분류명. 코드명 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 29건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive

{}

2026-10-15T13:01:38.969020+09:00HTTP 결과 기록89
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?searchField=title&keyword=DVD&size=3

{}

2026-10-15T13:01:39.112992+09:00일치: 요청 페이지 크기 일치 / 일치: 제목 검색어와 실제 제목 일치25
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?searchField=all&keyword=DVD&size=3

{}

2026-10-15T13:01:39.138297+09:00일치: 요청 페이지 크기 일치24
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?searchField=content&keyword=%EB%B0%9C%EA%B0%84%EB%85%84%EB%8F%84&size=3

{}

2026-10-15T13:01:39.162265+09:00일치: 요청 페이지 크기 일치22
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?keyword=ZZZNORESULT20261015

{}

2026-10-15T13:01:39.238251+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.106
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?keyword=%25_

{}

2026-10-15T13:01:39.344354+09:00미검증: 빈 결과. 필터의 비어 있지 않은 일치 표본은 미검증.16
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?page=2

{}

2026-10-15T13:01:39.360716+09:00일치: 요청 페이지 번호 일치38
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=business

{}

2026-10-15T13:01:41.459949+09:00HTTP 결과 기록52
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=business&categoryCode=CDC02001001

{}

2026-10-15T13:01:41.511660+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치56
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=business&categoryCode=CDC02001002

{}

2026-10-15T13:01:41.567212+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치50
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=business&categoryCode=CDC02001003

{}

2026-10-15T13:01:41.617268+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치85
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=business&categoryCode=CDC02001004

{}

2026-10-15T13:01:41.702355+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치50
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support

{}

2026-10-15T13:01:41.752904+09:00HTTP 결과 기록50
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002001

{}

2026-10-15T13:01:41.802721+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치56
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002002

{}

2026-10-15T13:01:41.858650+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치146
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002003

{}

2026-10-15T13:01:42.004711+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치51
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002004

{}

2026-10-15T13:01:42.056174+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치138
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002005

{}

2026-10-15T13:01:42.194626+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치49
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002006

{}

2026-10-15T13:01:42.243700+09:00일치: 요청 분류 코드 또는 확인된 하위 분류 소속 일치52
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?size=100

{}

2026-10-26T14:26:57.646645+09:00CMS 공개 91건과 SORT_SEQ→등록일→ID 순서 전건 일치409
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?page=1&size=10

{}

2026-10-26T14:26:58.055172+09:00페이지 1: CMS 정렬 후 페이징 일치60
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?page=2&size=10

{}

2026-10-26T14:26:58.115139+09:00페이지 2: CMS 정렬 후 페이징 일치61
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?page=10&size=10

{}

2026-10-26T14:26:58.176043+09:00페이지 10: CMS 정렬 후 페이징 일치49
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&size=100

{}

2026-10-26T14:26:58.224837+09:00검색·필터 결과와 CMS 기준 정렬 일치90
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=business&size=100

{}

2026-10-26T14:26:58.315038+09:00검색·필터 결과와 CMS 기준 정렬 일치61
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?categoryCode=CDC02002004&size=100

{}

2026-10-26T14:26:58.376098+09:00검색·필터 결과와 CMS 기준 정렬 일치87
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?searchField=title&keyword=%ED%98%84%ED%99%A9&size=100

{}

2026-10-26T14:26:58.463560+09:00검색·필터 결과와 CMS 기준 정렬 일치91
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?field=support&categoryCode=CDC02002004&keyword=%ED%98%84%ED%99%A9&searchField=title&size=100

{}

2026-10-26T14:26:58.554496+09:00검색·필터 결과와 CMS 기준 정렬 일치81
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive?searchField=title&keyword=%EC%A0%95%EB%A0%AC%EC%97%86%EB%8A%94%ED%91%9C%EB%B3%B8xyz&size=10

{}

2026-10-26T14:26:58.635644+09:00검색·필터 결과와 CMS 기준 정렬 일치40
GET사전정보공개 분류 조회
/api/v1/intro/information-disclosure/proactive/categories
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 47페이지

HTTP 조회 시각: 2026-10-15T13:01:41.433776+09:00

http://localhost:4100/api/v1/intro/information-disclosure/proactive/categories

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "code": "CDC02001001",
  "name": "보존기술",
  "parentCode": "CDC02001",
  "sortOrder": 1
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
47페이지공표 분류 선택값[].code / [].name / [].parentCode
["CDC02001001", "CDC02002001", "CDC02001002", "CDC02002002", "CDC02001003", "CDC02002003", "CDC02001004", "CDC02002004", "CDC02002005", "CDC02002006", "보존기술", "감사/윤리", "수집", "기획/재정", "시네마테크", "법원/노무", "연구", "인사/총무/회계", "정보화", "홍보/대외협력", "CDC02001", "CDC02002", "CDC02001", "CDC02002", "CDC02001", "CDC02002", "CDC02001", "CDC02002", "CDC02002", "CDC02002"]

공통코드 값. TB_COM_CD.CD_ID. 해당 API의 코드 입력값으로 사용. / 공통코드 표시명. TB_COM_CD.CD_NM. / 상위 공통코드. TB_COM_CD.UP_CD_ID. 상위 코드가 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive/categories

{}

2026-10-15T13:01:41.433776+09:00HTTP 결과 기록26

사전정보공개 상세

/intro/information-disclosure/proactive/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET사전정보공개 상세·첨부·인접 글 조회
/api/v1/intro/information-disclosure/proactive/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-26 14:26:58펼치기접기
완료

CMS TB_INFO_RLS.SORT_SEQ 오름차순(미지정 마지막) → REG_DT 내림차순 → INFO_RLS_ID 내림차순 적용. 공개 전체 목록 순서에 따른 이전·다음 글을 첫 글·중간·페이지 경계·마지막 글에서 실제 DB HTTP로 검증. DB 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 48페이지

HTTP 조회 시각: 2026-10-26T14:26:58.833675+09:00

http://localhost:4100/api/v1/intro/information-disclosure/proactive/181

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 181,
    "title": "DVD 발간 목록",
    "bodyHtml": null,
    "createdAt": "20161027181453",
    "viewCount": 0,
    "categoryCode": "CDC02001004",
    "categoryName": "연구",
    "summary": "발간년도, DVD정보, 주요내용",
    "timing": "발생시",
    "cycle": "수시",
    "method": "홈페이지",
    "department": "학예연구팀"
  },
  "attachments": [],
  "previous": {
    "id": 103,
    "title": "부서별 주요 계획"
  },
  "next": {
    "id": 178,
    "title": "한국 고전영화 디지털화 현황"
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
48페이지상세 내용article.bodyHtml
null

상세 본문. CMS 본문에 에디터 치환을 적용한 HTML. 원천 본문이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
48페이지이전 글previous
[null]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
48페이지다음 글next
[{"id": 180, "title": "도서 발간 목록"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
48페이지보도자료 상세를 따르는 첨부파일 클릭 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 6건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive/181

{}

2026-10-16T18:41:26.368473+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.53
GET
404
http://localhost:4100/api/v1/intro/information-disclosure/proactive/613

{}

2026-10-16T17:52:28.465009+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.24
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive/180

{}

2026-10-26T14:26:58.675320+09:00공개 전체 목록과 상세 이전·다음 ID 일치93
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive/103

{}

2026-10-26T14:26:58.768749+09:00공개 전체 목록과 상세 이전·다음 ID 일치65
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive/181

{}

2026-10-26T14:26:58.833675+09:00공개 전체 목록과 상세 이전·다음 ID 일치59
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/proactive/151

{}

2026-10-26T14:26:58.892615+09:00공개 전체 목록과 상세 이전·다음 ID 일치50

사업실명제

/intro/information-disclosure/project-real-name

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 3개

GET사업실명제 목록 검색·페이징 조회
/api/v1/intro/information-disclosure/project-real-name
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-26 14:35:23펼치기접기
완료

CMS SORT_SEQ 오름차순(미지정 마지막) → ID 내림차순 적용. 등록일 정렬 제외. 공개 전체 데이터 및 검색·페이지 경계·연도 필터를 실제 DB HTTP로 대조. DB 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 49페이지

HTTP 조회 시각: 2026-10-26T14:35:23.321327+09:00

http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?size=3&page=1

조회 조건: {"size": 3, "page": 1}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "items": [
    {
      "id": 99,
      "title": "독립영화아카이브 구축",
      "createdAt": "20260225145755",
      "viewCount": 0,
      "serialNumber": "2026-15",
      "selectionCriteria": "가",
      "statusCode": "CDC03001",
      "statusName": "진행",
      "documentRegisteredYn": "Y"
    },
    {
      "id": 98,
      "title": "영화사료 조사 사업",
      "createdAt": "20260225145731",
      "viewCount": 0,
      "serialNumber": "2026-14",
      "selectionCriteria": "가, 라",
      "statusCode": "CDC03001",
      "statusName": "진행",
      "documentRegisteredYn": "Y"
    },
    {
      "id": 97,
      "title": "찾아가는 영화관 운영",
      "createdAt": "20260225145657",
      "viewCount": 0,
      "serialNumber": "2026-13",
      "selectionCriteria": "가, 라",
      "statusCode": "CDC03001",
      "statusName": "진행",
      "documentRegisteredYn": "Y"
    }
  ],
  "page": 1,
  "size": 3,
  "totalElements": 152,
  "totalPages": 51,
  "hasPrevious": false,
  "hasNext": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
49페이지사업명items[].title
["독립영화아카이브 구축", "영화사료 조사 사업", "찾아가는 영화관 운영"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
49페이지일련번호items[].serialNumber
["2026-15", "2026-14", "2026-13"]

사업실명제 순번명. TB_BIZ_RLNM.SN_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
49페이지선정기준items[].selectionCriteria
["가", "가, 라", "가, 라"]

사업 선정 기준명. TB_BIZ_RLNM.SLCTN_CRTR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
49페이지진행상태items[].statusName
["진행", "진행", "진행"]

사업 진행 상태 코드에 해당하는 TB_COM_CD.CD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
49페이지사업내역서 등록여부items[].documentRegisteredYn
["Y", "Y", "Y"]

사업내역서 등록 여부. TB_BIZ_RLNM.BIZ_DSCTN_REG_YN의 Y/N 원문.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
49페이지등록일items[].createdAt
["20260225145755", "20260225145731", "20260225145657"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
49페이지사업내역서 다운로드attachments
대표 성공 표본에 해당 값 없음

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

값 없음
49페이지사업내역서 다운로드검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 19건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?year=2023

{}

2026-10-16T16:33:12.002588+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.21
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?year=2024

{}

2026-10-16T16:33:11.975093+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.22
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?year=2025

{}

2026-10-16T16:33:11.946997+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.22
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?year=2026

{}

2026-10-16T16:33:11.914900+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.27
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?page=2

{}

2026-10-16T16:33:11.889965+09:00일치: 응답 페이징 번호가 요청과 일치20
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?keyword=%25_

{}

2026-10-16T16:33:11.872898+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.12
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?keyword=ZZZNORESULT20261015

{}

2026-10-16T16:33:11.853269+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.15
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?searchField=all&keyword=%EB%8F%85%EB%A6%BD%EC%98%81%ED%99%94%EC%95%84%EC%B9%B4%EC%9D%B4%EB%B8%8C&size=3

{}

2026-10-16T16:33:11.827037+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.21
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?searchField=title&keyword=%EB%8F%85%EB%A6%BD%EC%98%81%ED%99%94%EC%95%84%EC%B9%B4%EC%9D%B4%EB%B8%8C&size=3

{}

2026-10-16T16:33:11.792890+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.28
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name

{}

2026-10-16T16:33:11.698619+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.35
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?size=100&page=1

{}

2026-10-26T14:35:23.162094+09:00공개 전체 ID 순서와 정렬 후 페이징·전체 건수 일치112
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?size=100&page=2

{}

2026-10-26T14:35:23.273934+09:00공개 전체 ID 순서와 정렬 후 페이징·전체 건수 일치47
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?size=3&page=1

{}

2026-10-26T14:35:23.321327+09:00작은 페이지 경계와 마지막 페이지 순서 일치21
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?size=3&page=2

{}

2026-10-26T14:35:23.342742+09:00작은 페이지 경계와 마지막 페이지 순서 일치19
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?size=3&page=51

{}

2026-10-26T14:35:23.361603+09:00작은 페이지 경계와 마지막 페이지 순서 일치23
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?searchField=title&keyword=%EC%82%AC%EC%97%85&size=100

{}

2026-10-26T14:35:23.384759+09:00제목 검색 결과 ID 순서 및 전체 건수 일치48
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?year=2026&size=100

{}

2026-10-26T14:35:23.432664+09:00등록연도 필터 정렬·전체 건수 일치40
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?year=2025&size=100

{}

2026-10-26T14:35:23.472349+09:00등록연도 필터 정렬·전체 건수 일치28
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name?keyword=%EA%B2%80%EC%83%89%EA%B2%B0%EA%B3%BC%EC%97%86%EB%8A%94%EA%B2%80%EC%A6%9Dxyz&size=10

{}

2026-10-26T14:35:23.500872+09:00검색 결과 없음 HTTP20043
GET사업실명제 연도 필터 조회
/api/v1/intro/information-disclosure/project-real-name/years
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 49페이지

HTTP 조회 시각: 2026-10-15T13:01:42.295308+09:00

http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/years

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
2026
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
49페이지사업실명제 등록연도 선택값[]
[2026, 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016]

사업실명제 등록연도 목록: CMS 사업실명제 조회 SQL의 REG_DT에서 추출한 연도. 응답 루트 정수 배열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/years

{}

2026-10-15T13:01:42.295308+09:00HTTP 결과 기록21
GET사업실명제 상세·첨부·인접 글 조회
/api/v1/intro/information-disclosure/project-real-name/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-26 14:35:23펼치기접기
완료

CMS SORT_SEQ 오름차순(미지정 마지막) → ID 내림차순 적용. 등록일 정렬 제외. 공개 전체 목록 기준 첫·중간·페이지 경계·마지막의 이전·다음 ID를 실제 DB HTTP로 대조. DB 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 49페이지

HTTP 조회 시각: 2026-10-26T14:35:23.544347+09:00

http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/99

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 99,
    "title": "독립영화아카이브 구축",
    "bodyHtml": null,
    "createdAt": "20260225145755",
    "viewCount": 0,
    "serialNumber": "2026-15",
    "selectionCriteria": "가",
    "statusCode": "CDC03001",
    "statusName": "진행",
    "documentRegisteredYn": "Y"
  },
  "attachments": [
    {
      "id": 2744,
      "name": "(15번) 독립영화아카이브 구축_수집...",
      "extension": "hwp",
      "size": 121344,
      "url": "/api/v1/files/projec..."
    }
  ],
  "previous": null,
  "next": {
    "id": 98,
    "title": "영화사료 조사 사업"
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
49페이지사업실명제 상세·첨부article / attachments
[{"id": 99, "title": "독립영화아카이브 구축", "bodyHtml": null, "createdAt": "20260225145755", "viewCount": 0, "serialNumber": "2026-15", "selectionCriteria": "가", "statusCode": "CDC03001", "statusName": "진행", "documentRegisteredYn": "Y"}, [{"id": 2744, "name": "(15번) 독립영화아카이브 구축_수집팀.hwp", "extension": "hwp", "size": 121344, "url": "/api/v1/files/project-real-name/99/2744/download"}]]

TB_MLT_ATCH_FILE의 공개 게시물 첨부. url은 /api/v1/files/{source}/{contentId}/{attachmentId}/download.

파일 다운로드 API 구현완료. 실제 NAS 다운로드 검증은 서버 배포·/data 마운트 후 별도.

제공
49페이지사업실명제 상세·첨부검토 범위
실제 게시판 GET200,13개 첨부 URL이 공용 다운로드 API로 연결. 임시 파일의 실제 HTTP200·바이트·파일명은 AttachmentDownloadIntegrationTest로 검증. 로컬 /data 미마운트 다운로드는503.

각 Intro 첨부 조회의 메뉴·공개·소유 조건 유지. attachments[].url은 GET /api/v1/files/{source}/{contentId}/{attachmentId}/download. AttachmentDownloadService는 kofa.files.mount-path(기본 /data)의 NAS 파일을 읽어 원본 파일명·바이트를 응답.

다운로드 API 구현완료로 반영. 서버 배포 후 /data 마운트와 파일 배치 상태에서 실제 NAS 다운로드 검증은 별도이며 이미 성공했다고 표시하지 않음. 기존 /m2/doc 공개 경로를 추가로 만들 필요 없음.

제공
검색·필터 등 실제 HTTP 요청 5건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/99

{}

2026-10-16T18:41:26.256287+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.49
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/99

{}

2026-10-26T14:35:23.544347+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치66
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/97

{}

2026-10-26T14:35:23.610655+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치52
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/96

{}

2026-10-26T14:35:23.662683+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치51
GET
200
http://localhost:4100/api/v1/intro/information-disclosure/project-real-name/4

{}

2026-10-26T14:35:23.713849+09:00목록의 첫·중간·페이지 경계·끝에서 상세 이전/다음 일치40

기관소개›이용·문의

4개 페이지 · 6개 항목
기관소개 이용·문의의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

FAQ

/intro/inquiry/faq

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 2개

GETFAQ 질문·답변 검색 조회
/api/v1/intro/faq
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

조회 데이터 및 두 검색 범위 양성 표본 확인. 기존 완료 판정 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 51, 54, 55페이지

HTTP 조회 시각: 2026-10-16T16:33:12.458080+09:00

http://localhost:4100/api/v1/intro/faq?searchField=content&keyword=%ED%9A%8C%EC%9B%90

조회 조건: {"searchField": "content", "keyword": "회원"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 41,
  "categoryCode": "CNF03001007",
  "categoryName": "홈페이지 이용",
  "title": "온라인 회원증 이용방법을 알고 싶습니...",
  "bodyHtml": "한국영상자료원(또는 KMDb)의 온라..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
51페이지카테고리items[].categoryName
["홈페이지 이용", "한국영화박물관", "홈페이지 이용", "홈페이지 이용"]

FAQ 분류 표시명. TB_COM_CD.CD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
51페이지질문items[].title
["온라인 회원증 이용방법을 알고 싶습니다", "박물관 교육프로그램 참가 방법을 알려주세요", "아이디나 비밀번호를 잊어버렸어요", "뉴스레터를 해지하고 싶습니다"]

FAQ 질문 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
51페이지답변 본문items[].bodyHtml
["한국영상자료원(또는 KMDb)의 온라인 회원에 가입하시면, 온라인 회원증이 발급됩니다.&nbsp;<br />\r\n<br />\r\n모바일 홈페이지<a href=\"http://www.koreafilm.or.kr\">(www.koreafilm.or.kr</a>) 메인 페이지에 들어가시면, 우측 하단에 &#39;회원증&#39; 플로팅 배너가 설치되어 있습니다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/7f177381-7660-4f06-9f4d-2d38d09bd73a.png\" /><br />\r\n<br />\r\n클릭하시면, (로그인 후) 회원증 페이지로 바로 진입하실 수 있습니다(로그인하실 때 &#39;자동 로그인&#39; 체크박스를 체크해주시면 로그인이 유지됩니다! TIP!!). 그러면 회원 번호와 바코드를 보실 수 있는데요,&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/e2cf4867-e1e1-468b-902d-05ca2f603f97.png\" /><br />\r\n<br />\r\n이 바코드를 이용해서 시네마테크KOFA, 한국영화박물관, 영상도서관 모두 회원 정보로 출입이 가능합니다. 현재(2018.09.)는 영상도서관을 제외하고 회원 정보와 반드시 연동할 필요는 없지만, 앞으로 회원 정보로 티켓 발권을 하시는 분들께 혜택을 개발할 예정입니다.&nbsp;<br />\r\n<br />\r\n<a href=\"https://www.koreafilm.or.kr/mypage/membership\">마이페이지 &gt; 회원증</a><br />\r\n<br />\r\n&nbsp;", "박물관 교육프로그램은 온라인 예약제로 운영하고 있습니다.<br />\r\n한국영상자료원 홈페이지 온라인 회원 가입 후, 박물관의 해당 교육 프로그램 페이지 내에서 신청하신 후 참여하실 수 있습니다.<br />\r\n유아부터 성인까지 다양한 교육프로그램을 운영 중이니 많은 관심 부탁드립니다.<br />\r\n<br />\r\n<a href=\"https://www.koreafilm.or.kr/museum/education\">한국영화박물관 &gt; 교육</a><a href=\"https://www.koreafilm.or.kr/museum/education/current\">&nbsp;</a>", "한국영상자료원, KMDb 웹사이트에 로그인하실 수 있는 아이디와 비밀번호를 분실하신 경우에는 아이디, &nbsp;비밀번호 찾기 페이지에서 본인인증이나 이메일 인증 방식으로 찾으실 수 있습니다.<br />\r\n<br />\r\n본인인증이 잘 안되시는 분들은 이메일 인증으로도 시도해보시기 바랍니다.&nbsp;<br />\r\n<br />\r\n<a href=\"/member/find/id\">회원정보찾기</a>", "뉴스레터는 기본적으로 회원에 가입하신 분들 중 뉴스레터 수신 동의에 체크하신 분들에게만 발송됩니다. 회원이신 경우 로그인 후, 회원정보변경 페이지에 들어가신 후 뉴스레터 수신 동의를 해지하시면 됩니다.&nbsp;<br />\r\n<br />\r\n<a href=\"https://www.koreafilm.or.kr/mypage/check\">마이페이지 &gt; 내정보관리(로그인 필요)</a>"]

FAQ 답변 본문. 에디터 치환을 적용한 HTML.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
54, 55페이지문의 작성 중 FAQ 검색searchField / keyword
대표 성공 표본에 해당 값 없음

입력 조회 조건: searchField — `all`(기본)=제목+내용, `title`=제목, `content`=내용. 소문자로 전송합니다. 사전정보공개/자율공시의 content는 공개내용(RLS_CN)입니다. / 입력 조회 조건: keyword — 검색어. 최대 100자, 생략/빈 문자열이면 전체. searchField와 함께 사용하며 `%`, `_`는 임의 전체검색 코드가 아닙니다. / 입력 조회 조건: categoryCode — 생략하면 전체 조회. 전체를 나타내는 `ALL`이나 공통코드 그룹 ID를 대신 넣지 않습니다. CNF03 하위 질문분류: `CNF03001001`=시네마테크KOFA, `CNF03001002`=한국영화박물관, `CNF03001003`=영상도서관, `CNF03001004`=자료이용, `CNF03001005`=극장 대관, `CNF03001006`=찾아가는 영화관, `CNF03001007`=홈페이지 이용, `CNF03001008`=기타 문의사항. `GET /api/v1/intro/faq/categories`의 code를 사용합니다. / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다. / 입력 조회 조건: size — 페이지당 개수 `1~100`. 기본값은 Swagger의 기본값 표시를 따릅니다(일반 목록 10, 발간물 8, 웹진 발간호 5).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
51, 54, 55페이지FAQ 제목/내용 검색·분류·본문·조회건수검토 범위
title/content=회원 각각HTTP200, FAQ41의제목·bodyHtml·분류·전체건수 수신

FaqMapper: TB_FAQ의 분류·제목·본문, 검색 scope와 count. FAQ 입력은100자 제한.

조회 데이터 및 두 검색 범위 양성 표본 확인. 기존 완료 판정 유지.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/faq?searchField=content&keyword=%ED%9A%8C%EC%9B%90

{}

2026-10-16T16:33:12.458080+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.25
GET
200
http://localhost:4100/api/v1/intro/faq?searchField=title&keyword=%ED%9A%8C%EC%9B%90

{}

2026-10-16T16:33:12.417610+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.34
GETFAQ 분류 조회
/api/v1/intro/faq/categories
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

새 PDF의 해당 페이지를 대조했습니다. 이 항목의 기존 HTTP 증거와 확인 범위는 아래에 보존합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 51페이지

HTTP 조회 시각: 2026-10-16T16:33:12.489836+09:00

http://localhost:4100/api/v1/intro/faq/categories

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "code": "CNF03001001",
  "name": "시네마테크KOFA",
  "parentCode": "CNF03001",
  "sortOrder": 1
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
51페이지FAQ 분류 선택값[].code / [].name
["CNF03001001", "CNF03001002", "CNF03001003", "CNF03001004", "CNF03001005", "CNF03001006", "CNF03001007", "CNF03001008", "시네마테크KOFA", "한국영화박물관", "영상도서관", "자료이용", "극장 대관", "찾아가는 영화관", "홈페이지 이용", "기타 문의사항"]

공통코드 값. TB_COM_CD.CD_ID. 해당 API의 코드 입력값으로 사용. / 공통코드 표시명. TB_COM_CD.CD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/faq/categories

{}

2026-10-16T16:33:12.489836+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.12

1:1 문의 내역

/intro/inquiry/history

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET본인 1:1 문의 내역 검색·조회
/api/v1/intro/inquiries
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

로그인 본인 목록 HTTP200, 등록한 23830의 분류명/제목/등록일/접수완료 상태·건수/페이징 확인. all+keyword 필터로 동일 행 조회. 미답변 answer/answeredAt=null은 DB 원문도 null이며 답변 완료 분기는 상세 항목에 별도 미검증 기록.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 52, 53페이지

HTTP 조회 시각: 2026-10-19T01:19:48.357728+00:00

http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 23830,
  "categoryCode": "COI01001013",
  "categoryName": "기타 문의사항",
  "title": "[API테스트 20261019] 문의...",
  "content": null,
  "createdAt": "20261019101350",
  "statusCode": "COI02001",
  "statusName": "접수완료",
  "answer": null,
  "answeredAt": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
52, 53페이지본인 문의 목록·답변items
[[{"id": 23830, "categoryCode": "COI01001013", "categoryName": "기타 문의사항", "title": "[API테스트 20261019] 문의 저장 검증", "content": null, "createdAt": "20261019101350", "statusCode": "COI02001", "statusName": "접수완료", "answer": null, "answeredAt": null}]]

현재 페이지의 조회 결과 목록. 결과가 없으면 빈 배열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
52, 53페이지본인 문의 목록·답변검토 범위
2026-10-19 실제 배포 서버 HTTP; browser-http.json / independent-http.json / db-read-only.json 참조. HTTP200

InquiryMapper.find/count: TB_INQRY.RGTR_ID=로그인회원, INQRY_SE_CD COI01001 하위. 제목/내용 검색·등록일 DESC·페이징.

로그인 본인 목록 HTTP200, 등록한 23830의 분류명/제목/등록일/접수완료 상태·건수/페이징 확인. all+keyword 필터로 동일 행 조회. 미답변 answer/answeredAt=null은 DB 원문도 null이며 답변 완료 분기는 상세 항목에 별도 미검증 기록.

제공
검색·필터 등 실제 HTTP 요청 8건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries

{}

2026-10-19T01:19:48.357728+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.98
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries?searchField=all&keyword=API%ED%85%8C%EC%8A%A4%ED%8A%B8%2020261019&page=1&size=10

{}

2026-10-19T01:16:19.329Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries?searchField=all&page=1&size=10

{}

2026-10-19T01:16:14.963Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
200
http://localhost:4100/api/v1/intro/inquiries?page=2

{}

2026-10-16T16:33:12.354512+09:00일치: 응답 페이징 번호가 요청과 일치26
GET
200
http://localhost:4100/api/v1/intro/inquiries?searchField=content&keyword=%EB%AC%B8%EC%9D%98

{}

2026-10-16T16:33:12.310463+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.37
GET
200
http://localhost:4100/api/v1/intro/inquiries?searchField=title&keyword=%EB%AC%B8%EC%9D%98

{}

2026-10-16T16:33:12.272620+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.32
GET
200
http://localhost:4100/api/v1/intro/inquiries?searchField=all&keyword=%EB%AC%B8%EC%9D%98

{}

2026-10-16T16:33:12.223998+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.44
GET
200
http://localhost:4100/api/v1/intro/inquiries

{}

2026-10-16T16:33:12.109070+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.53

1:1 문의 등록

/intro/inquiry/form

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 2개

POST본인 1:1 문의 등록
/api/v1/intro/inquiries
HTTP 201 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

실제 Oracle 저장 HTTP201(id=23830), 본인 목록·제목 검색·상세 HTTP200 및 SVC.TB_INQRY 읽기 전용 SELECT로 분류/제목/본문/등록자/일시 일치 확인. 테스트 문의 1건 생성.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 54페이지

HTTP 조회 시각: 2026-10-19T01:14:00.555Z

http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "id": 23830
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
54페이지문의 등록없음
대표 성공 표본에 해당 값 없음

입력 조회 조건: searchField — `all`(기본)=제목+내용, `title`=제목, `content`=내용. 소문자로 전송합니다. 사전정보공개/자율공시의 content는 공개내용(RLS_CN)입니다. / 입력 조회 조건: keyword — 검색어. 최대 100자, 생략/빈 문자열이면 전체. searchField와 함께 사용하며 `%`, `_`는 임의 전체검색 코드가 아닙니다. / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다. / 입력 조회 조건: size — 페이지당 개수 `1~100`. 기본값은 Swagger의 기본값 표시를 따릅니다(일반 목록 10, 발간물 8, 웹진 발간호 5).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
54페이지문의 등록검토 범위
2026-10-19 실제 배포 서버 HTTP; browser-http.json / independent-http.json / db-read-only.json 참조. HTTP201 저장 후 HTTP200 재조회

InquiryController.POST→InquiryRegistrationService 기존 로그인·분류·제목40/본문1000 검증→InquiryRegistrationStoreImpl의 svcDataSource/MyBatis→KOFA_SVC.TB_INQRY. SEQ_TB_INQRY_INQRY_ID,RGTR_ID=로그인MBR_ID,REG_DT는SYSDATE. 처리상태/조회수/신규여부는 확인된 DB 기본값.

실제 Oracle 저장 HTTP201(id=23830), 본인 목록·제목 검색·상세 HTTP200 및 SVC.TB_INQRY 읽기 전용 SELECT로 분류/제목/본문/등록자/일시 일치 확인. 테스트 문의 1건 생성.

제공
검색·필터 등 실제 HTTP 요청 5건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
201
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries

{}

2026-10-19T01:14:00.555Z일치: 등록 HTTP201 ID를 본인 GET 및 읽기 전용 Oracle SELECT에서 재확인0
POST
400
http://localhost:4100/api/v1/intro/inquiries

{"Content-Type": "application/json", "X-CSRF-TOKEN": "[REDACTED]"}

2026-10-16T18:40:12.379691+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.6
POST
401
http://localhost:4100/api/v1/intro/inquiries

{"Content-Type": "application/json", "X-CSRF-TOKEN": "[REDACTED]"}

2026-10-16T18:40:12.367733+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.8
POST
403
http://localhost:4100/api/v1/intro/inquiries

{"Content-Type": "application/json"}

2026-10-16T18:40:12.353760+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.10
OPTIONS
200
http://localhost:4100/api/v1/intro/inquiries

{}

2026-10-16T16:33:12.387896+09:00지원 메서드 확인만; 업무 저장 미실행3
GET문의 분류 조회
/api/v1/intro/inquiries/categories
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

로그인 미검증 해소. PDF54페이지의 분류12개와 실제 코드 목록 비교 확인.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 54페이지

HTTP 조회 시각: 2026-10-19T01:13:28.519Z

http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries/categories

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "code": "COI01001001",
  "name": "시네마테크KOFA",
  "parentCode": "COI01001",
  "sortOrder": 1
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
54페이지문의 분류 선택값[].code / [].name
["COI01001001", "COI01001002", "COI01001003", "COI01001004", "COI01001006", "COI01001007", "COI01001008", "COI01001009", "COI01001010", "COI01001011", "COI01001012", "COI01001013", "시네마테크KOFA", "한국영화박물관", "영상도서관", "극장 대관", "자료 이용", "홈페이지 이용", "기관지 및 홍보 문의", "채용 문의", "교육 문의", "수집, 기증 문의", "발간물 및 블루레이", "기타 문의사항"]

공통코드 값. TB_COM_CD.CD_ID. 해당 API의 코드 입력값으로 사용. / 공통코드 표시명. TB_COM_CD.CD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
54페이지문의 분류 선택값검토 범위
mrdevello1 로그인 후 HTTP200:12개 분류 code/name 수신

InquiryMapper.categories: TB_COM_CD.UP_CD_ID=COI01001, USE_YN=Y, SORT_SEQ 정렬.

로그인 미검증 해소. PDF54페이지의 분류12개와 실제 코드 목록 비교 확인.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries/categories

{}

2026-10-19T01:13:28.519Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
200
http://localhost:4100/api/v1/intro/inquiries/categories

{}

2026-10-16T16:33:12.167066+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.22

1:1 문의 상세

/intro/inquiry/history/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf

API·조회 항목 1개

GET본인 문의 상세·답변 조회
/api/v1/intro/inquiries/{id}
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

본인 문의23830 이번 로컬 HTTP200. 제목/본문/분류/접수상태 정상, 관리자답변/처리일 원천null 유지. 관리자 답변을 등록하는 홈페이지 API는 없어 답변 완료 표본은 미검증.

KOFA2_DE304_KOFA홈페이지_화면정의서(기관소개)_v1.3.pdf · PDF 53페이지

HTTP 조회 시각: 2026-10-19T02:01:51.124045+00:00

http://localhost:4100/api/v1/intro/inquiries/23830

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "id": 23830,
  "categoryCode": "COI01001013",
  "categoryName": "기타 문의사항",
  "title": "[API테스트 20261019] 문의...",
  "content": "개발 검증용 테스트 데이터입니다. 실...",
  "createdAt": "20261019101350",
  "statusCode": "COI02001",
  "statusName": "접수완료",
  "answer": null,
  "answeredAt": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
53페이지본인 문의 답변 상세title / content / answer / answeredAt
["[API테스트 20261019] 문의 저장 검증", "개발 검증용 테스트 데이터입니다. 실제 문의가 아니므로 답변 및 업무 처리를 진행하지 마세요. Swagger 로그인 세션의 API 저장과 본인 조회를 검증합니다.", null, null]

문의 제목. TB_INQRY.INQRY_TTL. / 문의 내용. TB_INQRY.INQRY_CN. / 관리자 답변 내용. TB_INQRY.PRCS_CN. 답변이 없으면 null. / 관리자 처리일시. TB_INQRY.PRCS_DT 원문 문자열. 미처리 시 null.

본인 상세 HTTP200 및 본문 확인. 관리자 답변·처리일은 원천도 null이며 답변 완료 표본만 미검증입니다.

확인필요
53페이지본인 문의 답변 상세검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

InquiryMapper.findById: TB_INQRY.INQRY_TTL/INQRY_CN/REG_DT/PRCS_STTS_CD/PRCS_CN/PRCS_DT. RGTR_ID=로그인회원 소유권 조건.

본인 문의23830 이번 로컬 HTTP200. 제목/본문/분류/접수상태 정상, 관리자답변/처리일 원천null 유지. 관리자 답변을 등록하는 홈페이지 API는 없어 답변 완료 표본은 미검증.

확인필요
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/inquiries/23830

{}

2026-10-19T02:01:51.124045+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.145
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries/23830

{}

2026-10-19T01:19:48.192410+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.164
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/intro/inquiries/23830

{}

2026-10-19T01:16:34.482Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
404
http://localhost:4100/api/v1/intro/inquiries/1

{}

2026-10-16T16:33:12.193705+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.25

마이페이지›MY KOFA

5개 페이지 · 7개 항목
마이페이지 MY KOFA의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

MY KOFA

/mypage/membership

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 1개

POST본인 회원증 정보 조회
/api/v1/mypage/membership
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

현재 로그인 회원 HTTP200: memberNo=2026-1-7373, name=미스터디벨로. 읽기 전용 SVC.TB_KOFA_MBR.MBR_MNG_NO/MBR_NM과 정확히 일치. 회원번호 null이라는 이전 결과를 최신 원문으로 교체. 바코드는 반환된 회원번호를 프론트에서 표시하는 범위이며 이번 테스트로 번호를 생성/변경하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 4페이지

HTTP 조회 시각: 2026-10-19T01:19:48.525756+00:00

http://kofafilm.archivecenter.or.kr/api/v1/mypage/membership

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "memberNo": "2026-1-7373",
  "name": "미스터디벨로"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4페이지회원명name
["미스터디벨로"]

로그인 회원명. TB_KOFA_MBR.MBR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지회원번호memberNo
["2026-1-7373"]

회원번호. SVC의 TB_KOFA_MBR.MBR_MNG_NO를 그대로 반환합니다. 로그인 아이디(memberId)와 다릅니다. DB에 회원번호가 없으면 null이며 아이디로 대체하거나 임의 발급하지 않습니다. 값이 있을 때 회원번호·바코드 표시에 사용합니다.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지바코드memberNo
["2026-1-7373"]

회원번호. SVC의 TB_KOFA_MBR.MBR_MNG_NO를 그대로 반환합니다. 로그인 아이디(memberId)와 다릅니다. DB에 회원번호가 없으면 null이며 아이디로 대체하거나 임의 발급하지 않습니다. 값이 있을 때 회원번호·바코드 표시에 사용합니다.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지회원명·회원번호·바코드검토 범위
2026-10-19 실제 배포 서버 HTTP; browser-http.json / independent-http.json / db-read-only.json 참조. HTTP200

MypageMainMapper: SVC.TB_KOFA_MBR.MBR_MNG_NO→memberNo,MBR_NM→name. 2026-10-19 읽기 전용 DB SELECT 및 배포 서버 HTTP200 일치.

현재 로그인 회원 HTTP200: memberNo=2026-1-7373, name=미스터디벨로. 읽기 전용 SVC.TB_KOFA_MBR.MBR_MNG_NO/MBR_NM과 정확히 일치. 회원번호 null이라는 이전 결과를 최신 원문으로 교체. 바코드는 반환된 회원번호를 프론트에서 표시하는 범위이며 이번 테스트로 번호를 생성/변경하지 않음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/membership

{}

2026-10-19T01:19:48.525756+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.25
POST
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/membership

{}

2026-10-19T01:12:50.050Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
POST
200
http://localhost:4100/api/v1/mypage/membership

{"X-CSRF-TOKEN": "[REDACTED]", "Content-Type": "application/json"}

2026-10-16T16:40:22.069160+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.14

희망자료 신청 내역

/mypage/history/wish

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 1개

GET본인 희망자료 신청 내역 검색·조회
/api/v1/mypage/wish-materials
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

본인 목록 HTTP200에서 23832/23831 2건의 제목·신청일·접수완료 코드명·최신순/건수/페이징 확인. keyword=비디오 신청 검증은 23831만 1건 반환. 원천 행 Oracle 읽기 전용 SELECT 일치. 기존 월9회 정책은 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 12페이지

HTTP 조회 시각: 2026-10-19T12:44:23.722319+09:00

http://localhost:4100/api/v1/mypage/wish-materials

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 23834,
  "title": "[API테스트 20261019] 저장...",
  "requestedAt": "20261019104215",
  "statusCode": "COI02001",
  "statusName": "접수완료"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
12페이지제목items[].title
["[API테스트 20261019] 저장 연결 도서", "[API테스트 20261019] 저장 연결 비디오", "[API테스트 20261019] 도서 신청 검증", "[API테스트 20261019] 비디오 신청 검증"]

희망자료 신청 제목. INQRY_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지신청일items[].requestedAt
["20261019104215", "20261019104214", "20261019101653", "20261019101647"]

신청 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지상태items[].statusName
["접수완료", "접수완료", "접수완료", "접수완료"]

신청 처리 상태 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지제목검색·페이징keyword / page
[1]

입력 조회 조건: keyword — 신청 제목 검색. 최대 100자. 로그인 회원 본인 신청 목록에만 적용합니다. / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지제목 / 신청일 / 상태 / 제목검색·페이징검토 범위
2026-10-19 실제 배포 서버 HTTP; browser-http.json / independent-http.json / db-read-only.json 참조. HTTP200

WishMaterialMapper: TB_INQRY 본인RGTR_ID·희망자료분류 필터,제목검색·REG_DT최신순·페이징.

본인 목록 HTTP200에서 23832/23831 2건의 제목·신청일·접수완료 코드명·최신순/건수/페이징 확인. keyword=비디오 신청 검증은 23831만 1건 반환. 원천 행 Oracle 읽기 전용 SELECT 일치. 기존 월9회 정책은 유지.

제공
검색·필터 등 실제 HTTP 요청 13건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/wish-materials

{}

2026-10-19T12:44:23.722319+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.146
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?page=1

{}

2026-10-19T01:42:15.647570+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.45
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?keyword=%5BAPI%ED%85%8C%EC%8A%A4%ED%8A%B8%2020261019%5D%20%EC%A0%80%EC%9E%A5%20%EC%97%B0%EA%B2%B0%20%EB%8F%84%EC%84%9C

{}

2026-10-19T01:42:15.601603+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.46
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?page=1

{}

2026-10-19T01:42:15.202150+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.295
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?keyword=%5BAPI%ED%85%8C%EC%8A%A4%ED%8A%B8%2020261019%5D%20%EC%A0%80%EC%9E%A5%20%EC%97%B0%EA%B2%B0%20%EB%B9%84%EB%94%94%EC%98%A4

{}

2026-10-19T01:42:15.131581+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.70
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials

{}

2026-10-19T01:19:48.457045+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.68
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials?keyword=%EB%B9%84%EB%94%94%EC%98%A4%20%EC%8B%A0%EC%B2%AD%20%EA%B2%80%EC%A6%9D&page=1

{}

2026-10-19T01:17:07.277Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials?page=1

{}

2026-10-19T01:17:06.601Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?page=2

{}

2026-10-16T16:40:21.889455+09:00일치: 응답 페이징 번호가 요청과 일치50
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?keyword=%25_

{}

2026-10-16T16:40:21.835106+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.46
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?keyword=ZZZNORESULT

{}

2026-10-16T16:40:21.756030+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.71
GET
200
http://localhost:4100/api/v1/mypage/wish-materials?keyword=%EC%98%81%ED%99%94

{}

2026-10-16T16:40:21.691126+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.59
GET
200
http://localhost:4100/api/v1/mypage/wish-materials

{}

2026-10-16T16:40:21.530881+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.150

희망자료 신청

/mypage/wish

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 3개

POST희망자료 신청 등록(기존 요청)
/api/v1/mypage/wish-materials
HTTP 201 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

VIDEO 23831·BOOK 23832 각각 실제 HTTP201, 월 신청수 1→2 및 monthlyLimit=9 반환. 본인 목록/제목검색/상세200과 Oracle TB_INQRY 원문 일치. 제목·감독/제조사 또는 저자/출판사·구매URL 저장 확인. 월9회 경계 실DB 도달은 미실행(불필요한 7건 추가 등록 안 함), 기존 자동검증과 구분. 별도 /wish-applications는 503으로 새 항목에 기록.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 16, 17, 18페이지

HTTP 조회 시각: 2026-10-19T01:16:54.036Z

http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "id": 23832,
  "requestedAt": "20261019101653",
  "monthlyCount": 2,
  "monthlyLimit": 9
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
16, 17, 18페이지희망자료 신청 저장·월9회소스상 구현
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
16, 17, 18페이지희망자료 신청 저장·월9회검토 범위
2026-10-19 실제 배포 서버 HTTP; browser-http.json / independent-http.json / db-read-only.json 참조. HTTP201 저장 후 HTTP200 재조회

WishMaterialServiceImpl/등록Store: TB_INQRY에 신청내용 저장,월9회 제한.

VIDEO 23831·BOOK 23832 각각 실제 HTTP201, 월 신청수 1→2 및 monthlyLimit=9 반환. 본인 목록/제목검색/상세200과 Oracle TB_INQRY 원문 일치. 제목·감독/제조사 또는 저자/출판사·구매URL 저장 확인. 월9회 경계 실DB 도달은 미실행(불필요한 7건 추가 등록 안 함), 기존 자동검증과 구분. 별도 /wish-applications는 503으로 새 항목에 기록.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
201
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials

{}

2026-10-19T01:16:54.036Z일치: 등록 HTTP201 ID를 본인 GET 및 읽기 전용 Oracle SELECT에서 재확인0
POST
201
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials

{}

2026-10-19T01:16:47.228Z일치: 등록 HTTP201 ID를 본인 GET 및 읽기 전용 Oracle SELECT에서 재확인0
OPTIONS
200
http://localhost:4100/api/v1/mypage/wish-materials

{}

2026-10-16T16:40:22.031853+09:00지원 메서드 확인만; 업무 저장 미실행1
POST유형별 희망자료 신청 등록(별도 요청 형식)
/api/v1/mypage/wish-applications
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

이전 배포 서버503 원인이던 실제 저장 누락 해결. 로컬 Java21 dev 실DB에서 video/book 모두 정상 저장 후 본인 재조회·DB 원문 일치. 응답은 기존 HTTP200 {id,redirectUrl} 유지. 월9회 공유와10번째 거절은 자동 테스트 검증, 실제 DB를9건까지 채우지 않음. 배포 서버는 다음 배포 후 반영.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 16, 17, 18페이지

HTTP 조회 시각: 2026-10-19T01:42:15.497427+00:00

http://localhost:4100/api/v1/mypage/wish-applications

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "id": 23834,
  "redirectUrl": "/mypage/history/wish..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
16, 17, 18페이지유형별 희망자료 신청 등록(별도 요청 형식)검토 범위
2026-10-19 localhost:4100 실DB HTTP: video 200(id23833), book 200(id23834); 본인 상세/제목검색/목록200. 비로그인401/CSRF누락403/type=VIDEO400. Oracle 원문 일치.

WishApplicationStoreImpl→WishMaterialRegistrationStore.create→svcDataSource/MyBatis WishMaterialMapper. SVC.TB_INQRY.INQRY_ID=시퀀스, INQRY_SE_CD=COI01002001, INQRY_TTL=title, INQRY_CN=유형/감독·저자/제조사·출판사/구매URL, RGTR_ID=로그인 MBR_ID, REG_DT=한국시간, PRCS_STTS_CD=COI02001. 기존 API와 같은 회원 잠금/월9회/트랜잭션 공유.

이전 배포 서버503 원인이던 실제 저장 누락 해결. 로컬 Java21 dev 실DB에서 video/book 모두 정상 저장 후 본인 재조회·DB 원문 일치. 응답은 기존 HTTP200 {id,redirectUrl} 유지. 월9회 공유와10번째 거절은 자동 테스트 검증, 실제 DB를9건까지 채우지 않음. 배포 서버는 다음 배포 후 반영.

제공
검색·필터 등 실제 HTTP 요청 6건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
200
http://localhost:4100/api/v1/mypage/wish-applications

{}

2026-10-19T01:42:15.497427+00:00일치: 실제 등록 ID·redirectUrl 및 본인 상세/검색/목록200, 읽기 전용 Oracle SELECT와 일치80
POST
200
http://localhost:4100/api/v1/mypage/wish-applications

{}

2026-10-19T01:42:14.891040+00:00일치: 실제 등록 ID·redirectUrl 및 본인 상세/검색/목록200, 읽기 전용 Oracle SELECT와 일치120
POST
400
http://localhost:4100/api/v1/mypage/wish-applications

{}

2026-10-19T01:42:14.883688+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.7
POST
403
http://localhost:4100/api/v1/mypage/wish-applications

{}

2026-10-19T01:42:14.875232+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.8
POST
401
http://localhost:4100/api/v1/mypage/wish-applications

{}

2026-10-19T01:42:10.377424+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.20
POST
503
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-applications

{}

2026-10-19T01:19:50.446825+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.1259
GET희망자료 신청 전 보유자료 통합 JSON 검색
/api/v1/mypage/wish-materials/holdings
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-27 17:46:48펼치기접기
완료

사용자 확정: 희망자료 보유자료 확인도 CIP02 IP 필터 적용. 실제 이용자의 요청 안에서 자료검색 서비스를 직접 호출하여 내부 HTTP의 로컬 주소로 판정하던 오류 수정. 실제 DB HTTP: 관외 0건·영상도서관 1건·분원 1건으로 동일 자료검색 결과와 일치. 공개 자료를 검색한 관외 성공 응답을 대표 표본으로 사용. 회원 인증은 테스트 전용 세션이며 실계정 로그인·DB 쓰기 없음. 기존 검색·10건 페이징·DTO 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 14, 15페이지

HTTP 조회 시각: 검증 종료 2026-10-27 17:45:35 KST (개별 요청 시작 시각 미수집)

http://localhost:61978/api/v1/mypage/wish-materials/holdings?keyword=%EC%98%81%ED%99%94

조회 조건: {"keyword":"영화"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 2417048,
  "title": "영화소식 ",
  "image": "/images/logo.png",
  "person": null,
  "year": "1988년",
  "thirdMetadata": null,
  "format": "연속간행물",
  "personLabel": "저자",
  "thirdLabel": "출판사"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
14, 15페이지자료 식별자·자료명items[].id / items[].title
[1216124, 1216785, 1242719, 1244702, 1247946, 1216498, 1217308, 1236067, 1239004, 1240369, "영화 전태일", "영화같은 인생", "영화 전태일", "영화 강박관념 여자들", "영화판", "슬픈 영화", "(극영화)팔만대장경", "여고 졸업반(영화명 골뱅이 실명제)", "내 영화의 주인공", "좋아서 만든 영화"]

AMS TB_DATA.DATA_ID/DATA_TTL. 제목 및 기존 연관 영화 제목 조건을 재사용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지자료 이미지items[].image
"/images/logo.png"

TB_DATA.THMB_M_FILE_PATH_NM → THMB_S_FILE_PATH_NM → RPRS_IMG_ORGNL_FILE_PATH_NM 우선. 기존 catalog.imageUrl 적용, 원천 미등록 시 도서관 기본 이미지.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지감독 또는 저자items[].person / items[].personLabel
["박광수", null, "박광수", "정흥순", "허철, 정지영", "이한욱", "유승현", "석도원", "장길수", "고달우, 김모모", "감독", "감독", "감독", "감독", "감독", "감독", "감독", "감독", "감독", "감독"]

VD/SC: TB_INFO_DATA_REL → TB_MOVIE_CRD.CRD_NM(감독 IN017001001, 공개 크레딧). DC: TB_DATA_PRDCR.PRDCR_NM(ROLE_EXPLN=저자). personLabel=감독/저자.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지생산연도items[].year
"1988년"

TB_DATA.PRDCTN_YMD 앞4자리+년. 미입력·4자리 미만은 빈 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지러닝타임·제작사·출판사items[].thirdMetadata / items[].thirdLabel
[null, null, "이유영(각색)", "정흥순(감독)", "정지영/허철(각본),허철/정지영(감독),아우라 픽쳐스(제작사)", null, "유승현(각본),유승현(감독),(주)프로덕션 세양(제작사)", "박경희(각본),한덕규,석도원(감독),킴스엔터테인먼트㈜64(제작사)", "송민호(각본),장길수(감독),(주)시네마 서비스(제작사)", "고달우(각본),고달우,김모모(감독),알만한 사람들(제작사)", "제작사", "제작사", "제작사", "제작사", "제작사", "제작사", "제작사", "제작사", "제작사", "제작사"]

VD: TB_DATA.REPY_HR+분. SC: TB_DATA.PRDCR_CN. DC: TB_DATA_PRDCR.PRDCR_NM(ROLE_EXPLN=발행처). thirdLabel은 러닝타임/제작사/출판사.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지매체 형태items[].format
"연속간행물"

TB_DATA.MED_TYPE_CN, 원천 미입력은 빈 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지통합 건수·10건 페이징totalElements / page / size / totalPages / hasPrevious / hasNext
[6512, 1, 10, 652, false, true]

상암 PT010009/공개 DT009001·2·3/미삭제 TB_PSSN_DATA 소장자료. VD→SC→DC 유형별 총건수 합산과 기존 서비스의10건 페이징.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
14, 15페이지희망자료 신청 전 보유자료 통합 JSON 검색검토 범위
localhost:4100 실제 DB HTTP200. 영화 검색 시 VD0+SC20+DC6492=6512. 1·2페이지 ID 순서, 마지막652페이지2건/653페이지0건, 검색어100/101자 경계, 인증 및 페이지 범위 검증.

WishMaterialController.holdings → MypageWishService.holdings → LibrarySearchService → LibrarySearchQueryServiceImpl → LibraryCatalogService. AMS TB_DATA/TB_PSSN_DATA 공개·상암·미삭제 조건과 기존 자료 메타데이터/이미지 조회 재사용.

PDF14~15 보유자료 검색의 JSON API 추가 완료. 로그인 세션, keyword100자/빈 검색0건, VD→SC→DC 통합10건 페이징 유지. 실제 AMS 조회에서 기존 유형별 API의 합계·페이지 ID 순서 일치. 등록·기소장 판본 차단·이전연도 정책·답변부서는 이번 변경 범위가 아님. 비디오 양성 표본은 영화/기생충 검색에 없어 0건 응답과 자동 테스트로 구분. CIP02 조회 범위는 실제 요청 IP 기준이며 보유자료 확인에도 적용 확정.

제공
추가 협의 2026-10-27 (PMS #806)페이지보유자료 확인 IP 필터items / totalElements
같은 자료: 관외 0건, 영상도서관 1건, 분원 1건. 공개 자료 관외 양성 조회도 성공.

TB_COM_CD CIP02 → 요청 IP → LibraryCatalogService 공통 소장본/공개 서비스 조건

사용자 확정: 희망자료 보유자료 확인도 CIP02 IP 필터 적용. 실제 이용자의 요청 안에서 자료검색 서비스를 직접 호출하여 내부 HTTP의 로컬 주소로 판정하던 오류 수정. 실제 DB HTTP: 관외 0건·영상도서관 1건·분원 1건으로 동일 자료검색 결과와 일치. 공개 자료를 검색한 관외 성공 응답을 대표 표본으로 사용. 회원 인증은 테스트 전용 세션이며 실계정 로그인·DB 쓰기 없음. 기존 검색·10건 페이징·DTO 유지.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:61978/api/v1/mypage/wish-materials/holdings?keyword=%EC%98%81%ED%99%94

{"X-Cip02-Test-Request":"true"}

검증 종료 2026-10-27 17:45:35 KST (개별 요청 시작 시각 미수집)실제 embedded HTTP·SVC 조회. 테스트 전용 ROLE_USER 세션, 관외 IP fixture. 공개 자료 양성 응답. 개별 시작 시각·소요시간 미수집; DB 데이터 변경 없음.

희망자료 신청 · 보유자료 확인

/mypage/wish

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 1개

GET비디오·시나리오·문헌자료 검색
/api/v1/library/materials
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-27 17:19:48펼치기접기
완료

CIP02 접속 IP 필터 적용: 영상도서관·분원은 방문열람(DT009001) 포함, 관외는 공개 소장본 또는 유효 공개 VOD가 있는 자료만 조회. 전체 건수·유형별 건수·페이징·소장처 동일 조건. 실제 SVC DB HTTP 검증 완료. 이 표본은 관외 응답이며 관내 전용 자료 원문·목록을 정적 예시에 노출하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 14, 15페이지

HTTP 조회 시각: 2026-10-27T17:17:40.693498+09:00

http://localhost:4100/api/v1/library/materials?type=DC&page=1

조회 조건: {"type": "DC", "page": 1}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 57092,
  "type": "LITERATURE",
  "title": "CINEMA 4D R18 1부",
  "productionDate": "2017****",
  "runtime": null,
  "mediaFormat": "도서",
  "materialKind": "연구기술",
  "creators": "CgLover(저자),Nstart(발...",
  "imageUrl": null,
  "holding": "PT010009 [583/Q7(별치)...",
  "directors": null,
  "author": "CgLover",
  "publisher": "Nstart",
  "rating": null,
  "kmdbPath": "/db/documents/57092"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
14, 15페이지희망자료 신청 전 보유자료명 검색items[].title
["CINEMA 4D R18 1부", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 "]

자료명. TB_DATA.DATA_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
14, 15페이지희망자료 신청 전 보유자료명 검색items[].title
["CINEMA 4D R18 1부", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 "]

자료명. TB_DATA.DATA_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
추가 요구사항 · PMS #806 / 사용자 확정페이지IP별 자료 목록·건수items / totalElements / materialTypes[].count
{"outside": {"VD": 2, "SC": 0, "DC": 14822}, "libraryAndBranches": {"VD": 22, "SC": 8079, "DC": 30624}}

SVC TB_COM_CD(CIP02) ADD_CN 및 TB_PSSN_DATA.RLS_SE_CD, 공개 비디오 예외는 TB_DATA_SRVC의 공개·기간·위치 코드. 같은 자료의 공개 소장본이 있으면 유지.

일반 서버는 getRemoteAddr만 사용. X-Forwarded-For·클라이언트 관내 파라미터는 권한을 부여하지 않음. 30초 코드 캐시; 실패 시 관외. 허용 IP HTTP는 테스트 전용 서버주소 fixture이며 실기 네트워크 연결을 가장하지 않음.

제공
검색·필터 등 실제 HTTP 요청 16건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/materials?type=literature&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-19T12:32:12.672786+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.1160
GET
200
http://localhost:4100/api/v1/library/materials?type=scenario&title=%EC%98%81%ED%99%94&page=2

{}

2026-10-19T12:32:11.150369+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.1521
GET
200
http://localhost:4100/api/v1/library/materials?type=scenario&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-19T12:32:09.547214+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.1602
GET
200
http://localhost:4100/api/v1/library/materials?type=video&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-19T12:32:08.560291+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.986
GET
200
http://localhost:4100/api/v1/library/materials?type=literature&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-20T16:54:23.899374+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.1008
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=2

{}

2026-10-20T16:54:29.163576+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.527
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=2

{}

2026-10-20T16:54:29.690773+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.433
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=2

{}

2026-10-20T16:54:30.123912+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.502
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=1

{}

2026-10-20T16:54:31.268759+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.449
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=1

{}

2026-10-20T16:54:31.717496+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.439
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=1

{}

2026-10-20T16:54:32.156690+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.452
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%82%AC%EB%9E%91&director=%EA%B9%80&sort=year

{}

2026-10-20T16:54:32.608447+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.4207
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&writer=%EA%B9%80

{}

2026-10-20T16:54:36.815996+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.783
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&author=%EA%B9%80

{}

2026-10-20T16:54:37.598819+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.665
GET
200
http://localhost:4100/api/v1/library/materials?type=DC&page=1

{}

2026-10-27T17:17:40.693498+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.940
GET
200
http://localhost:4100/api/v1/library/materials?type=DC&page=2

{}

2026-10-27T17:17:41.633332+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.683

희망자료 신청 상세

/mypage/history/wish/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 1개

GET본인 희망자료 신청 상세 조회
/api/v1/mypage/wish-materials/{id}
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

답변 담당부서 매핑·REST 응답키·기존 SSR 전달 보완 완료. 현재 테스트 계정4건은 미답변이라 null이 DB와 일치함을 HTTP 검증. CMS 읽기전용 조회에서 기존 타 회원 희망자료10건의 부서명이 확인되지만 해당 회원 로그인으로 HTTP 양성 응답은 미검증. 확인필요는 매핑 미정이 아니라 부서명·답변이 있는 본인 상세의 HTTP 성공 표본 부족이다. 사용자/부서코드가 없으면 null 유지, 현재 부서이며 답변 당시 스냅샷은 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 13페이지

HTTP 조회 시각: 2026-10-19T12:44:23.868264+09:00

http://localhost:4100/api/v1/mypage/wish-materials/23834

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "id": 23834,
  "title": "[API테스트 20261019] 저장...",
  "requestedAt": "20261019104215",
  "statusCode": "COI02001",
  "statusName": "접수완료",
  "content": "구분 : 도서\n저자 : 테스트 저자\n...",
  "answer": null,
  "answeredAt": null,
  "replyDepartment": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
13페이지희망자료 신청 상세title / requestedAt / statusName / content / answer / answeredAt
["[API테스트 20261019] 저장 연결 도서", "20261019104215", "접수완료", "구분 : 도서\n저자 : 테스트 저자\n출판사 : 테스트 출판사\n판매처 URL : https://example.com/api-test-fixed-book", null, null]

희망자료 신청 제목. INQRY_TTL. / 신청 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss). / 신청 처리 상태 공통코드명. / 희망자료 신청 내용. INQRY_CN. / 관리자 처리 답변. PRCS_CN. 미답변이면 null. / 관리자 처리일시. PRCS_DT 원문 문자열. 미처리이면 null.

본인 상세 HTTP200 및 본문 확인. 관리자 답변·처리일은 원천도 null이며 답변 완료 표본만 미검증입니다.

확인필요
13페이지답변 담당부서replyDepartment
[null]

CMS WAR 확정: TB_INQRY.PRCR_ID → KOFA_CMS.TB_USER.USER_ID/DEPT_CD → TB_COM_CD(CUR02). 다중 코드는 CMS의 ||| 경계·CD_ID순 LISTAGG 유지. SVC는 TB_USER 조회권한 없음. 현재 등록 부서명이며 당시 부서 스냅샷은 없음.

매핑 및 응답키 구현·HTTP200 확인. 본인4건은 처리자/답변/부서 원천null. DB에는 부서가 조회되는10건 존재하나 다른 회원의 세션을 임의로 만들지 않아 부서명 포함 HTTP 양성 표본은 미검증.

값 없음
13페이지희망자료 신청 상세검토 범위
2026-10-19 로컬 실DB HTTP12건. 본인23834/23833/23832/23831 상세200 및 replyDepartment=null, 원천 PRCR_ID/답변/처리일null 일치. 비로그인401·다른 문의분류/없는ID404·SSR200·Swagger200.

SVC WishMaterialMapper.findById로 본인 범위 확인 후 CMS WishMaterialMapper.findReplyDepartment. TB_INQRY.PRCR_ID → TB_USER.USER_ID/DEPT_CD → TB_COM_CD(CD_GROUP_ID=CUR02). CMS WAR DataApply.xml은 PRCR_ID=sessionUserId 저장, User.xml은 ||| 구분 다중 부서를 LISTAGG(CD_NM)으로 조회. 실제 권한상 CMS 연결 필요.

답변 담당부서 매핑·REST 응답키·기존 SSR 전달 보완 완료. 현재 테스트 계정4건은 미답변이라 null이 DB와 일치함을 HTTP 검증. CMS 읽기전용 조회에서 기존 타 회원 희망자료10건의 부서명이 확인되지만 해당 회원 로그인으로 HTTP 양성 응답은 미검증. 확인필요는 매핑 미정이 아니라 부서명·답변이 있는 본인 상세의 HTTP 성공 표본 부족이다. 사용자/부서코드가 없으면 null 유지, 현재 부서이며 답변 당시 스냅샷은 없음.

확인필요
검색·필터 등 실제 HTTP 요청 17건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
404
http://localhost:4100/api/v1/mypage/wish-materials/999999999

{}

2026-10-19T12:44:24.110175+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.33
GET
404
http://localhost:4100/api/v1/mypage/wish-materials/23830

{}

2026-10-19T12:44:24.088177+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.22
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23831

{}

2026-10-19T12:44:24.061646+09:00일치: replyDepartment 키 존재·미답변 원천 null 일치. 처리자 ID 비노출.26
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23832

{}

2026-10-19T12:44:24.029521+09:00일치: replyDepartment 키 존재·미답변 원천 null 일치. 처리자 ID 비노출.32
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23833

{}

2026-10-19T12:44:23.992636+09:00일치: replyDepartment 키 존재·미답변 원천 null 일치. 처리자 ID 비노출.37
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23834

{}

2026-10-19T12:44:23.868264+09:00일치: replyDepartment 키 존재·미답변 원천 null 일치. 처리자 ID 비노출.124
GET
401
http://localhost:4100/api/v1/mypage/wish-materials/23834

{}

2026-10-19T12:44:19.316032+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.37
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23834

{}

2026-10-19T12:32:41.639507+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.147
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23834

{}

2026-10-19T02:01:51.269465+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.96
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23834

{}

2026-10-19T01:42:15.577496+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.23
GET
200
http://localhost:4100/api/v1/mypage/wish-materials/23833

{}

2026-10-19T01:42:15.011443+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.120
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials/23832

{}

2026-10-19T01:19:48.161358+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.31
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials/23831

{}

2026-10-19T01:19:48.055777+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.105
GET
401
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials/23832

{}

2026-10-19T01:17:54.808Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
503
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials/23832

{}

2026-10-19T01:17:41.120Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
503
http://kofafilm.archivecenter.or.kr/api/v1/mypage/wish-materials/23831

{}

2026-10-19T01:17:36.479Z실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.0
GET
404
http://localhost:4100/api/v1/mypage/wish-materials/1

{}

2026-10-16T16:40:21.949285+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.55

마이페이지›이용내역

5개 페이지 · 10개 항목
마이페이지 이용내역의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

시네마테크KOFA 예매 내역

/mypage/history/reservation/cinematheque

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 2개

GET본인 시네마테크 예매 내역 조회
/api/v1/mypage/history/reservation/cinematheque
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 6페이지

HTTP 조회 시각: 2026-10-19T02:01:51.365703+00:00

http://localhost:4100/api/v1/mypage/history/reservation/cinematheque

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지영화명items[].productName
대표 성공 표본에 해당 값 없음

문화인이 저장한 상품명. GDS_NM. 연결 콘텐츠 제목과 다를 수 있음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지포스터items[].content.imageUrl
대표 성공 표본에 해당 값 없음

연결 콘텐츠 대표 이미지 경로. 미등록 시 null.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지상영일items[].useDayText
대표 성공 표본에 해당 값 없음

이용일 내용 원문. UTZTN_DAY_CN. 날짜로 재해석하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지상영시간items[].useTimeText
대표 성공 표본에 해당 값 없음

이용시간 내용 원문. UTZTN_HR_CN.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지상영관items[].placeName
대표 성공 표본에 해당 값 없음

문화인이 저장한 장소명. PLC_NM.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지좌석items[].seatText
대표 성공 표본에 해당 값 없음

좌석번호 내용 원문 문자열. SEAT_NO_CN. 파싱하지 않고 그대로 전달.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지매수items[].reservedQuantity
대표 성공 표본에 해당 값 없음

예약수량. RSVT_QTY.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지상태items[].status
대표 성공 표본에 해당 값 없음

API 표시 상태. 시네마테크는 RESERVED/WATCHED, 영상도서관은 COMPLETED. 공통으로 AWAITING_PAYMENT/CANCEL_REQUESTED/CANCELLED/UNKNOWN 가능. 미관람 상태는 현재 산정하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지상태/연도·페이징 및 건수totalElements / items
[0, []]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 현재 페이지의 조회 결과 목록. 결과가 없으면 빈 배열.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지영화명 / 포스터 / 상영일 / 상영시간 / 상영관 / 좌석 / 매수 / 상태 / 상태/연도·페이징 및 건수검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql: SVC.TB_RSVT.MBR_ID_CN=회원PK,RSV_SE_CD별분기. LINK_ID는SCFM_ID/EXHB_ID/EDU_ID,대관은TB_RSVT정보·RNTL_RSVT_ID. 좌석원문,검표량·예약상태,교육종료일판정.

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque

{}

2026-10-19T02:01:51.365703+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.138
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/cinematheque

{}

2026-10-19T01:19:48.551312+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분165
GET
400
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?status=NOT_WATCHED

{}

2026-10-16T16:41:03.276433+09:00미검증: 해당 조건의 정상 조회 응답8
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?page=2

{}

2026-10-16T16:40:18.131646+09:00일치: 응답 페이징 번호가 요청과 일치79
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?year=2026&status=RESERVED

{}

2026-10-16T16:40:18.037717+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.84
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?year=2026

{}

2026-10-16T16:40:17.940867+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.87
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?status=CANCELLED

{}

2026-10-16T16:40:17.851624+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.79
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?status=WATCHED

{}

2026-10-16T16:40:17.771978+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.71
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque?status=RESERVED

{}

2026-10-16T16:40:17.685305+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.79
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque

{}

2026-10-16T16:40:17.469856+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.165
GET시네마테크 예매 내역 연도 필터 조회
/api/v1/mypage/history/reservation/cinematheque/years
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 6페이지

HTTP 조회 시각: 2026-10-19T02:01:51.504075+00:00

http://localhost:4100/api/v1/mypage/history/reservation/cinematheque/years

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지예약 연도 선택값[]
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
6페이지예약 연도 선택값검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql.years는 본인TB_RSVT.RSVT_DT의연도; 도서관은별도LibraryUsageHistoryMapper 원천.

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque/years

{}

2026-10-19T02:01:51.504075+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.29
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/cinematheque/years

{}

2026-10-19T01:19:48.717899+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분45
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/cinematheque/years

{}

2026-10-16T16:40:17.641336+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.37

한국영화박물관 예매 내역

/mypage/history/reservation/museum

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 2개

GET본인 박물관 예매 내역 조회
/api/v1/mypage/history/reservation/museum
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 7페이지

HTTP 조회 시각: 2026-10-19T02:01:51.533761+00:00

http://localhost:4100/api/v1/mypage/history/reservation/museum

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
7페이지전시명items[].productName
대표 성공 표본에 해당 값 없음

문화인이 저장한 상품명. GDS_NM. 연결 콘텐츠 제목과 다를 수 있음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지배너items[].content.imageUrl
대표 성공 표본에 해당 값 없음

연결 콘텐츠 대표 이미지 경로. 미등록 시 null.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지이용일items[].useDayText
대표 성공 표본에 해당 값 없음

이용일 내용 원문. UTZTN_DAY_CN. 날짜로 재해석하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지인원items[].reservedQuantity
대표 성공 표본에 해당 값 없음

예약수량. RSVT_QTY.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지개인/단체items[].visitorType
대표 성공 표본에 해당 값 없음

박물관 개인·단체 표시용 필드. 원천 구분 매핑이 미확정이라 현재 null. 확인이 필요한 데이터.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지상태items[].status
대표 성공 표본에 해당 값 없음

API 표시 상태. RESERVED=예약완료, WATCHED=관람(검표수량>0), AWAITING_PAYMENT=입금대기, CANCEL_REQUESTED=취소요청, CANCELLED=취소, UNKNOWN=미확인 상태. 미관람 상태는 현재 산정하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지상태/연도·페이징 및 건수totalElements / items
[0, []]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 현재 페이지의 조회 결과 목록. 결과가 없으면 빈 배열.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지전시명 / 배너 / 이용일 / 인원 / 개인/단체 / 상태 / 상태/연도·페이징 및 건수검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql: SVC.TB_RSVT.MBR_ID_CN=회원PK,RSV_SE_CD별분기. LINK_ID는SCFM_ID/EXHB_ID/EDU_ID,대관은TB_RSVT정보·RNTL_RSVT_ID. 좌석원문,검표량·예약상태,교육종료일판정.

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum

{}

2026-10-19T02:01:51.533761+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.53
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/museum

{}

2026-10-19T01:19:48.764041+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분1278
GET
400
http://localhost:4100/api/v1/mypage/history/reservation/museum?status=NOT_WATCHED

{}

2026-10-16T16:41:03.290031+09:00미검증: 해당 조건의 정상 조회 응답3
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum?page=2

{}

2026-10-16T16:40:18.743270+09:00일치: 응답 페이징 번호가 요청과 일치73
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum?year=2026&status=RESERVED

{}

2026-10-16T16:40:18.658858+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.74
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum?year=2026

{}

2026-10-16T16:40:18.576945+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.72
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum?status=CANCELLED

{}

2026-10-16T16:40:18.502099+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.67
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum?status=WATCHED

{}

2026-10-16T16:40:18.425251+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.70
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum?status=RESERVED

{}

2026-10-16T16:40:18.351057+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.68
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum

{}

2026-10-16T16:40:18.221918+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.84
GET박물관 예매 내역 연도 필터 조회
/api/v1/mypage/history/reservation/museum/years
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 7페이지

HTTP 조회 시각: 2026-10-19T02:01:51.587564+00:00

http://localhost:4100/api/v1/mypage/history/reservation/museum/years

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
7페이지예약 연도 선택값[]
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
7페이지예약 연도 선택값검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql.years는 본인TB_RSVT.RSVT_DT의연도; 도서관은별도LibraryUsageHistoryMapper 원천.

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum/years

{}

2026-10-19T02:01:51.587564+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.26
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/museum/years

{}

2026-10-19T01:19:50.042880+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분41
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/museum/years

{}

2026-10-16T16:40:18.310954+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.34

교육프로그램 신청 내역

/mypage/history/reservation/education

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 2개

GET본인 교육 신청 내역 조회
/api/v1/mypage/history/reservation/education
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-19T02:01:51.613769+00:00

http://localhost:4100/api/v1/mypage/history/reservation/education

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지교육명items[].productName
대표 성공 표본에 해당 값 없음

문화인이 저장한 상품명. GDS_NM. 연결 콘텐츠 제목과 다를 수 있음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
8페이지이미지items[].content.imageUrl
대표 성공 표본에 해당 값 없음

교육 대표 이미지 경로. 미등록 시 null.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
8페이지이용일items[].useDayText
대표 성공 표본에 해당 값 없음

이용일 내용 원문. UTZTN_DAY_CN. 날짜로 재해석하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
8페이지상태items[].status
대표 성공 표본에 해당 값 없음

API 표시 상태. APPLIED=신청완료, EDUCATION_ENDED=EDU_END_YMD 기준 교육종료, AWAITING_PAYMENT=입금대기, CANCEL_REQUESTED=취소요청, CANCELLED=취소, UNKNOWN=미확인 상태.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
8페이지상태/연도·페이징 및 건수totalElements / items
[0, []]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 현재 페이지의 조회 결과 목록. 결과가 없으면 빈 배열.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
8페이지교육명 / 이미지 / 이용일 / 상태 / 상태/연도·페이징 및 건수검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql: SVC.TB_RSVT.MBR_ID_CN=회원PK,RSV_SE_CD별분기. LINK_ID는SCFM_ID/EXHB_ID/EDU_ID,대관은TB_RSVT정보·RNTL_RSVT_ID. 좌석원문,검표량·예약상태,교육종료일판정.

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education

{}

2026-10-19T02:01:51.613769+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.116
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/education

{}

2026-10-19T01:19:50.085923+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분86
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education?page=2

{}

2026-10-16T16:40:19.579186+09:00일치: 응답 페이징 번호가 요청과 일치116
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education?year=2026&status=APPLIED

{}

2026-10-16T16:40:19.467901+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.101
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education?year=2026

{}

2026-10-16T16:40:19.362374+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.97
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education?status=CANCELLED

{}

2026-10-16T16:40:19.250407+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.106
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education?status=EDUCATION_ENDED

{}

2026-10-16T16:40:19.130715+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.111
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education?status=APPLIED

{}

2026-10-16T16:40:19.012148+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.108
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education

{}

2026-10-16T16:40:18.827219+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.120
GET교육 신청 내역 연도 필터 조회
/api/v1/mypage/history/reservation/education/years
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-19T02:01:51.730614+00:00

http://localhost:4100/api/v1/mypage/history/reservation/education/years

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지예약 연도 선택값[]
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
8페이지예약 연도 선택값검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql.years는 본인TB_RSVT.RSVT_DT의연도; 도서관은별도LibraryUsageHistoryMapper 원천.

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education/years

{}

2026-10-19T02:01:51.730614+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.34
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/education/years

{}

2026-10-19T01:19:50.172776+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분44
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/education/years

{}

2026-10-16T16:40:18.957521+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.45

대관 이용 내역

/mypage/history/reservation/theater

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 2개

GET본인 대관 이용 내역 조회
/api/v1/mypage/history/reservation/theater
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-19T02:01:51.765112+00:00

http://localhost:4100/api/v1/mypage/history/reservation/theater

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지대관명items[].productName
대표 성공 표본에 해당 값 없음

문화인이 저장한 상품명. GDS_NM. 연결 콘텐츠 제목과 다를 수 있음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
9페이지예약IDitems[].rentalReservationId
대표 성공 표본에 해당 값 없음

문화인 대여예약 식별자. TB_RSVT.RNTL_RSVT_ID. 별도 CMS 대관 테이블로 조인하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
9페이지신청일시items[].rentalApplicationText
대표 성공 표본에 해당 값 없음

대여 신청일시 내용 원문. RNTL_APLY_DT_CN.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
9페이지승인상태items[].rentalApprovalStatusCode
대표 성공 표본에 해당 값 없음

문화인 대관승인 원본 코드. 0=심사전, 1=승인, 2=입금대기, 3=취소요청중, 4=승인불가, 5=휴면삭제, 6=취소.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
9페이지상태/연도·페이징 및 건수totalElements / items
[0, []]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 현재 페이지의 조회 결과 목록. 결과가 없으면 빈 배열.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
9페이지대관명 / 예약ID / 신청일시 / 승인상태 / 상태/연도·페이징 및 건수검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql: SVC.TB_RSVT.MBR_ID_CN=회원PK,RSV_SE_CD별분기. LINK_ID는SCFM_ID/EXHB_ID/EDU_ID,대관은TB_RSVT정보·RNTL_RSVT_ID. 좌석원문,검표량·예약상태,교육종료일판정.

기존 로그인 실패 분류 해소. 행필드·상태별양성표본은 없음. 미관람판정과박물관개인/단체는 기존사용자확인보류를유지; 새PDF6~7에도요구가남아있음. 문화인팝업은프론트담당. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 12건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater

{}

2026-10-19T02:01:51.765112+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.72
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/theater

{}

2026-10-19T01:19:50.217251+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분70
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?page=2

{}

2026-10-16T16:40:20.584800+09:00일치: 응답 페이징 번호가 요청과 일치74
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?year=2026&status=PENDING_REVIEW

{}

2026-10-16T16:40:20.493933+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.83
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?year=2026

{}

2026-10-16T16:40:20.411270+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.76
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?status=CANCELLED

{}

2026-10-16T16:40:20.328087+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.77
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?status=REJECTED

{}

2026-10-16T16:40:20.236966+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.80
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?status=CANCEL_REQUESTED

{}

2026-10-16T16:40:20.131881+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.93
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?status=AWAITING_PAYMENT

{}

2026-10-16T16:40:20.031430+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.91
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?status=APPROVED

{}

2026-10-16T16:40:19.936622+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.83
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater?status=PENDING_REVIEW

{}

2026-10-16T16:40:19.846996+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.79
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater

{}

2026-10-16T16:40:19.705254+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.80
GET대관 이용 내역 연도 필터 조회
/api/v1/mypage/history/reservation/theater/years
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-19T02:01:51.838083+00:00

http://localhost:4100/api/v1/mypage/history/reservation/theater/years

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지예약 연도 선택값[]
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
9페이지예약 연도 선택값검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql.years는 본인TB_RSVT.RSVT_DT의연도; 도서관은별도LibraryUsageHistoryMapper 원천.

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater/years

{}

2026-10-19T02:01:51.838083+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.38
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/reservation/theater/years

{}

2026-10-19T01:19:50.287957+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분40
GET
200
http://localhost:4100/api/v1/mypage/history/reservation/theater/years

{}

2026-10-16T16:40:19.794971+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.43

영상도서관 열람 이력

/mypage/history/library

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 2개

GET본인 영상도서관 이용 내역 조회
/api/v1/mypage/history/library
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

이미지·유형·자료명·열람일 양성 표본 미검증. 새PDF10은무한스크롤10개와하단페이지네이션을함께기재: 프론트방식 확인, API page/size지원과구분. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다. 2026-10-20 SVC 전환 검증: 조회 연결은 SVC로 변경했습니다. 이번 실행의 비로그인 HTTP401 경계만 확인했으며, 회원 성공 HTTP 표본은 이전 검증 기록을 유지합니다. 변경 후 자료 SELECT는 별도의 SVC 읽기 전용 검증으로 확인합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 10페이지

HTTP 조회 시각: 2026-10-19T02:01:51.876794+00:00

http://localhost:4100/api/v1/mypage/history/library

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
10페이지자료명items[].productName
대표 성공 표본에 해당 값 없음

문화인이 저장한 상품명. GDS_NM. 연결 콘텐츠 제목과 다를 수 있음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
10페이지이미지items[].content.imageUrl
대표 성공 표본에 해당 값 없음

연결 콘텐츠 대표 이미지 경로. 미등록 시 null.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
10페이지이용일items[].useDayText
대표 성공 표본에 해당 값 없음

이용일 내용 원문. UTZTN_DAY_CN. 날짜로 재해석하지 않음.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
10페이지상태/연도·페이징 및 건수totalElements / items
[0, []]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 현재 페이지의 조회 결과 목록. 결과가 없으면 빈 배열.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
10페이지자료명 / 이미지 / 이용일 / 상태/연도·페이징 및 건수검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

LibraryUsageHistoryMapper의 본인 소유 열람조회 및 title키워드. 목록PageResult10개씩 제공.

이미지·유형·자료명·열람일 양성 표본 미검증. 새PDF10은무한스크롤10개와하단페이지네이션을함께기재: 프론트방식 확인, API page/size지원과구분. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/library

{}

2026-10-19T02:01:51.876794+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.73
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/library

{}

2026-10-19T01:19:50.328976+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분74
GET
200
http://localhost:4100/api/v1/mypage/history/library?keyword=ZZZNORESULT

{}

2026-10-16T16:40:21.391067+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.133
GET
200
http://localhost:4100/api/v1/mypage/history/library?keyword=%EC%98%81%ED%99%94

{}

2026-10-16T16:40:21.246695+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.133
GET
200
http://localhost:4100/api/v1/mypage/history/library?page=2

{}

2026-10-16T16:40:21.154584+09:00일치: 응답 페이징 번호가 요청과 일치81
GET
200
http://localhost:4100/api/v1/mypage/history/library?year=2026&status=COMPLETED

{}

2026-10-16T16:40:21.065909+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.78
GET
200
http://localhost:4100/api/v1/mypage/history/library?year=2026

{}

2026-10-16T16:40:20.980501+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.76
GET
200
http://localhost:4100/api/v1/mypage/history/library?status=CANCELLED

{}

2026-10-16T16:40:20.898552+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.74
GET
200
http://localhost:4100/api/v1/mypage/history/library?status=COMPLETED

{}

2026-10-16T16:40:20.811487+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.77
GET
200
http://localhost:4100/api/v1/mypage/history/library

{}

2026-10-16T16:40:20.667852+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.80
GET영상도서관 이용 내역 연도 조회
/api/v1/mypage/history/library/years
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 10페이지

HTTP 조회 시각: 2026-10-19T02:01:51.950418+00:00

http://localhost:4100/api/v1/mypage/history/library/years

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
[]
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
10페이지예약 연도 선택값[]
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

인증된 HTTP200 빈 목록/연도 응답. 개별 이력 행의 실제 값 검증은 표본이 필요합니다.

확인필요
10페이지예약 연도 선택값검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ReservationHistorySql.years는 본인TB_RSVT.RSVT_DT의연도; 도서관은별도LibraryUsageHistoryMapper 원천.

인증 미검증은 해소. 본인 이력이 없어 연도 값·정렬 양성 표본은 미검증. 2026-10-19 배포 서버 독립 인증 HTTP 세션에서도 목록/연도 HTTP200, 본인 이력은 여전히 0건. 홈페이지 INSERT API가 없는 문화인 예매/도서관 이력을 직접 SQL로 생성하지 않음. 이번 로컬 실DB 재검증도 본인 목록/연도200, 결과0건/[]이다. 문화인 예약·도서관 이력을 생성하는 홈페이지 API가 없으므로 임의 SQL이나 임시 입력 API로 표본을 만들지 않았다.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/history/library/years

{}

2026-10-19T02:01:51.950418+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.33
GET
200
http://kofafilm.archivecenter.or.kr/api/v1/mypage/history/library/years

{}

2026-10-19T01:19:50.404034+00:00일치: 인증된 본인 조회 HTTP200. 이력/연도 빈 값은 행 필드 검증과 구분42
GET
200
http://localhost:4100/api/v1/mypage/history/library/years

{}

2026-10-16T16:40:20.757747+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.44

마이페이지›회원정보

3개 페이지 · 4개 항목
마이페이지 회원정보의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

내 정보 수정

/mypage/edit

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 2개

GET본인 회원정보 조회
/api/v1/mypage/profile
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

일반회원 조회 필드 양성 표본 확인. 성별 수정은 기존 사용자 결정대로 제외. 어린이/외국인 양성 표본은 별도 필요.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 20, 21, 22페이지

HTTP 조회 시각: 2026-10-19T02:01:50.971681+00:00

http://localhost:4100/api/v1/mypage/profile

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "memberId": "mrdevello1",
  "name": "미스터디벨로",
  "birthDate": "20000101",
  "mobileNo": "01012341234",
  "email": "mrdevello1@mrdevello...",
  "emailMarketingConsent": false,
  "smsMarketingConsent": false,
  "foreigner": false,
  "child": false
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
20페이지이름name
["미스터디벨로"]

회원명. MBR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지생년월일birthDate
["20000101"]

생년월일. BRDT 원문 문자열(yyyyMMdd).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지회원IDmemberId
["mrdevello1"]

회원 아이디. TB_KOFA_MBR.MBR_ID. 회원번호(MBR_MNG_NO)와 다름.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지휴대전화mobileNo
["01012341234"]

휴대전화번호. MBL_TELNO.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지이메일email
["mrdevello1@mrdevello.com"]

이메일 주소. EML_ADDR.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지이메일 수신 동의emailMarketingConsent
[false]

이메일 마케팅 수신 동의 여부. EML_RCPTN_AGRE_YN을 boolean으로 변환.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지SMS 수신 동의smsMarketingConsent
[false]

SMS 마케팅 수신 동의 여부. SMS_RCPTN_AGRE_YN을 boolean으로 변환.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지외국인 여부foreigner
[false]

외국인 회원 여부. FRGNR_YN='Y'이면 true.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
20페이지어린이 여부child
[false]

어린이 회원 여부. BRDT 기준 현재 만 14세 미만이면 true. 미래·파싱 불가 생년월일은 false.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지어린이 이름·생년월일소스상 구현
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
22페이지외국인 국가코드·이메일 유지소스상 구현
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
20, 21, 22페이지이름 / 생년월일 / 회원ID / 휴대전화 / 이메일 / 이메일 수신 동의 / SMS 수신 동의 / 외국인 여부 / 어린이 여부 / 어린이 이름·생년월일 / 외국인 국가코드·이메일 유지검토 범위
HTTP200: mrdevello1·미스터디벨로·20000101·전화/메일·수신동의·foreigner=false·child=false.

MemberProfileMapper: SVC.TB_KOFA_MBR.MBR_ID/MBR_NM/BRDT/MBL_TELNO/EML_ADDR/수신동의/FRGNR_YN; 생년월일로child 계산.

일반회원 조회 필드 양성 표본 확인. 성별 수정은 기존 사용자 결정대로 제외. 어린이/외국인 양성 표본은 별도 필요.

제공
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-19T02:01:50.971681+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.11
GET
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-19T02:01:50.944791+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.10
GET
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-19T02:01:50.897648+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.21
GET
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-16T16:40:17.424526+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.40
POST본인 회원정보 수정
/api/v1/mypage/profile
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

mrdevello1 휴대전화번호를 API로 변경200→GET 실제 값 확인→같은 API로 원래 값 복구200→GET 전체 프로필 동일 확인. 읽기 전용 DB에서도 원래 전화/이메일/수신동의 확인. API 자동 수정시각은 테스트 시각으로 남음.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 20페이지

HTTP 조회 시각: 2026-10-19T02:01:50.955019+00:00

http://localhost:4100/api/v1/mypage/profile

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "updated": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
20페이지회원정보 저장소스상 구현
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
20페이지회원정보 저장검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

MemberProfileServiceImpl/MemberProfileMapper: TB_KOFA_MBR의 전화·메일·마케팅수신, 비밀번호 또는 탈퇴상태 갱신.

mrdevello1 휴대전화번호를 API로 변경200→GET 실제 값 확인→같은 API로 원래 값 복구200→GET 전체 프로필 동일 확인. 읽기 전용 DB에서도 원래 전화/이메일/수신동의 확인. API 자동 수정시각은 테스트 시각으로 남음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-19T02:01:50.955019+00:00일치: 회원정보 실제 변경·GET값 확인 후 같은 API로 원래 값 복구16
POST
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-19T02:01:50.919248+00:00일치: 회원정보 실제 변경·GET값 확인 후 같은 API로 원래 값 복구25
OPTIONS
200
http://localhost:4100/api/v1/mypage/profile

{}

2026-10-16T16:40:22.025238+09:00지원 메서드 확인만; 업무 저장 미실행2

비밀번호 변경

/mypage/password

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 1개

POST로그인 회원 비밀번호 변경
/api/v1/mypage/password
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기존 비밀번호 재사용400(PASSWORD_REUSED), 임시 비밀번호 변경200·새 비밀번호 로그인200, 원래 비밀번호 로그인401(실패횟수1) 확인. 임시 비밀번호 로그인으로 실패횟수 초기화 후 원래 비밀번호로 복구200·최종 로그인200. 원문 비밀번호/해시/임시값은 증거에 저장하지 않음. 비밀번호 변경일은 API 감사기록대로 현재시각.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 23페이지

HTTP 조회 시각: 2026-10-19T02:01:51.087382+00:00

http://localhost:4100/api/v1/mypage/password

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "changed": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
23페이지새 비밀번호 변경소스상 구현
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
23페이지새 비밀번호 변경검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

MemberProfileServiceImpl/MemberProfileMapper: TB_KOFA_MBR의 전화·메일·마케팅수신, 비밀번호 또는 탈퇴상태 갱신.

기존 비밀번호 재사용400(PASSWORD_REUSED), 임시 비밀번호 변경200·새 비밀번호 로그인200, 원래 비밀번호 로그인401(실패횟수1) 확인. 임시 비밀번호 로그인으로 실패횟수 초기화 후 원래 비밀번호로 복구200·최종 로그인200. 원문 비밀번호/해시/임시값은 증거에 저장하지 않음. 비밀번호 변경일은 API 감사기록대로 현재시각.

제공
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
200
http://localhost:4100/api/v1/mypage/password

{}

2026-10-19T02:01:51.087382+00:00일치: 새 비밀번호로 로그인 성공 후 기존 비밀번호로 복구·로그인 성공 확인16
POST
200
http://localhost:4100/api/v1/mypage/password

{}

2026-10-19T02:01:50.997226+00:00일치: 새 비밀번호로 로그인 성공 후 기존 비밀번호로 복구·로그인 성공 확인16
POST
400
http://localhost:4100/api/v1/mypage/password

{}

2026-10-19T02:01:50.982827+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.14
OPTIONS
200
http://localhost:4100/api/v1/mypage/password

{}

2026-10-16T16:40:22.010217+09:00지원 메서드 확인만; 업무 저장 미실행2

회원 탈퇴

/mypage/withdrawal

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf

API·조회 항목 1개

POST본인 확인 후 회원 탈퇴
/api/v1/mypage/withdrawal
HTTP 200 · 지원 메서드 확인만확인 항목 2개최신 업데이트: 변경일 미기록펼치기접기
확인필요

저장 로직 존재와 실제 저장 성공 검증은 구분. DB 값 변경을 하지 않아 성공·오류 저장 응답은 이번 HTTP 미검증. 비밀번호/재가입조건분기존재. PDF의모든정보삭제와현재상태변경방식의의미/보존범위는추가확인필요. 임의로개인정보를삭제하거나회원정책을바꾸지않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(마이페이지)_v1.2.pdf · PDF 24페이지

HTTP 조회 시각: 2026-10-16T16:40:22.018133+09:00

http://localhost:4100/api/v1/mypage/withdrawal

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "textExcerpt": ""
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
24페이지현재 비밀번호 확인 후 탈퇴소스상 구현
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

이번 HTTP 요청에서 정상 업무 응답을 얻지 못했습니다.

확인필요
24페이지현재 비밀번호 확인 후 탈퇴검토 범위
OPTIONS200 지원메서드 확인만; 실제 저장 미실행.

MemberProfileServiceImpl/MemberProfileMapper: TB_KOFA_MBR의 전화·메일·마케팅수신, 비밀번호 또는 탈퇴상태 갱신.

저장 로직 존재와 실제 저장 성공 검증은 구분. DB 값 변경을 하지 않아 성공·오류 저장 응답은 이번 HTTP 미검증.

확인필요
24페이지현재비밀번호 확인·탈퇴후로그아웃·동일아이디재가입불가·모든정보삭제문구검토 범위
쓰기미실행. 코드검토만.

ProfileService의현재비밀번호해시검사. Mapper는USE_YN=N/MBR_STTS_CD/WHDWL_DT갱신, 개인필드삭제SQL없음. 아이디중복COUNT는탈퇴포함.

비밀번호/재가입조건분기존재. PDF의모든정보삭제와현재상태변경방식의의미/보존범위는추가확인필요. 임의로개인정보를삭제하거나회원정책을바꾸지않음.

확인필요
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
OPTIONS
200
http://localhost:4100/api/v1/mypage/withdrawal

{}

2026-10-16T16:40:22.018133+09:00지원 메서드 확인만; 업무 저장 미실행2

소장자료›자료관

3개 페이지 · 5개 항목
소장자료 자료관의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

소장자료관

/holdings

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf

API·조회 항목 1개

GET소장자료 검색·정렬·페이징 조회
/api/v1/holdings
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-23 11:30:08펼치기접기
완료

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf · PDF 4, 5, 6, 7, 8페이지

HTTP 조회 시각: 2026-10-23T11:25:33.877541+09:00

http://localhost:4100/api/v1/holdings

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 988,
  "title": "기생충",
  "donorName": "봉준호",
  "donationDate": "20261010",
  "materialType": "의상|||소품",
  "imageUrl": "http://kofafilm.arch...",
  "imageDescription": "123",
  "movieId": 857044,
  "movieName": "기생충",
  "movieManagementNo": "K17748",
  "holdingTypeCode": "CRC02001",
  "holdingTypeName": "기증자료"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4페이지자료명items[].title
["기생충"]

소장자료명. PSSN_CLLCTN_NM.

제공
4페이지자료유형items[].materialType
["의상|||소품"]

CMS에 등록한 자료유형 값. 별도 화면분류 카테고리와 다름.

제공
4페이지대표이미지items[].imageUrl
["http://kofafilm.archivecenter.or.kr/m2/img/25/e9/25e940f9d2ac725a1472666b07b3170d_S.webp"]

대표 이미지의 절대 URL. KMDb 이미지 경로 규칙 적용. 값이 없거나 지원하지 않는 경로이면 null. 파일 실존 여부는 검사하지 않음.

제공
4페이지기증자명items[].donorName
["봉준호"]

기증자명. DNR_NM.

제공
4페이지기증/수집 일자 원천items[].donationDate
["20261010"]

기증일 원문 문자열. 불완전 날짜(예: 2025****)를 보정하지 않음.

제공
4페이지전체개수·12개 페이징totalElements / size
[1, 12]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

제공
4페이지기증/수집/의상소품 분류·탭별 개수holdingTypeCode / holdingTypeName / totalElements
CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

TB_PSSN_CLLCTN.PSSN_CLLCTN_SE_CD → CRC02 공통코드명. 자료유형 PSSN_CLLCTN_TYPE_CN과 구분. holdingTypeCode 조회 totalElements가 유형별 건수. 기존 이관번호·소장구분 추정 분류 제거.

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

제공
4, 5, 6, 7, 8페이지기증/수집/의상소품구분·탭별건수·뱃지·유형검토 범위
CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

TB_PSSN_CLLCTN.PSSN_CLLCTN_SE_CD → CRC02 공통코드명. 자료유형 PSSN_CLLCTN_TYPE_CN과 구분. holdingTypeCode 조회 totalElements가 유형별 건수. 기존 이관번호·소장구분 추정 분류 제거.

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

제공
4, 5, 6, 7, 8페이지CMS 소장 유형과 TEMP 제외holdingTypeCode / holdingTypeName
CRC02001 / 기증자료

TB_PSSN_CLLCTN.PSSN_CLLCTN_SE_CD, TB_COM_CD(CD_GROUP_ID=CRC02).CD_NM

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

제공
검색·필터 등 실제 HTTP 요청 14건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/holdings

{}

2026-10-20T10:34:10.394909+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음1553
GET
200
http://localhost:4100/api/v1/holdings?keyword=%EC%98%81%ED%99%94

{}

2026-10-16T16:44:57.259804+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.213
GET
200
http://localhost:4100/api/v1/holdings?sort=title

{}

2026-10-16T16:44:56.605222+09:00일치: 제목 오름차순 실제 비교648
GET
200
http://localhost:4100/api/v1/holdings

{}

2026-10-16T16:44:28.206686+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.748
GET
200
http://localhost:4100/api/v1/holdings

{}

2026-10-23T11:25:33.877541+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.327
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=CRC02001

{}

2026-10-23T11:25:34.204526+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.45
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=CRC02002

{}

2026-10-23T11:25:34.249861+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.22
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=CRC02003

{}

2026-10-23T11:25:34.272161+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.17
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=TEMP

{}

2026-10-23T11:25:34.288834+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.17
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=NOT_A_CODE

{}

2026-10-23T11:25:34.306015+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.51
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=CRC02001&keyword=%EA%B8%B0%EC%83%9D%EC%B6%A9&sort=title

{}

2026-10-23T11:25:34.357154+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.39
GET
200
http://localhost:4100/api/v1/holdings?page=2

{}

2026-10-23T11:25:34.395810+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.37
GET
200
http://localhost:4100/api/v1/holdings?holdingTypeCode=CRC02001&keyword=%25_%5C

{}

2026-10-23T11:25:34.432377+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.36
GET
400
http://localhost:4100/api/v1/holdings?page=0

{}

2026-10-23T11:25:34.791064+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.11

소장자료 상세

/holdings/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf

API·조회 항목 1개

GET소장자료 상세·본문·인접 자료 조회
/api/v1/holdings/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-23 11:30:08펼치기접기
완료

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf · PDF 5, 6, 7페이지

HTTP 조회 시각: 2026-10-23T11:25:34.468437+09:00

http://localhost:4100/api/v1/holdings/988

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "material": {
    "id": 988,
    "title": "기생충",
    "donorName": "봉준호",
    "donationDate": "20261010",
    "materialType": "의상|||소품",
    "imageUrl": "http://kofafilm.arch...",
    "imageDescription": "123",
    "movieId": 857044,
    "movieName": "기생충",
    "movieManagementNo": "K17748",
    "holdingTypeCode": "CRC02001",
    "holdingTypeName": "기증자료"
  },
  "bodyHtml": "<div class=\"kmdb-edi...",
  "previous": null,
  "next": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
5페이지제목material.title
["기생충"]

소장자료명. PSSN_CLLCTN_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지자료유형material.materialType
["의상|||소품"]

CMS에 등록한 자료유형 값. 별도 화면분류 카테고리와 다름.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지기증자material.donorName
["봉준호"]

기증자명. DNR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지날짜 원천material.donationDate
["20261010"]

기증일 원문 문자열. 불완전 날짜(예: 2025****)를 보정하지 않음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지영화명material.movieName
["기생충"]

연결된 AMS 영화명. 미연결 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지영화식별자material.movieManagementNo
["K17748"]

연결된 AMS 영화 관리번호. 미연결 시 null. 자료관 게시물 ID와 다름.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지에디터 본문bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><p>기생충</p>\n<p>의상</p>\n<p>입니다.</p></div>"]

소장자료관 소개 본문 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지이전자료previous
[null]

선택한 keyword·sort 결과 안의 이전 게시물. 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
5페이지다음자료next
[null]

선택한 keyword·sort 결과 안의 다음 게시물. 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
5, 6, 7페이지본문·자료유형·기증일원문·이전/다음·KMDb식별자검토 범위
CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

TB_PSSN_CLLCTN.PSSN_CLLCTN_SE_CD → CRC02 공통코드명. 자료유형 PSSN_CLLCTN_TYPE_CN과 구분. holdingTypeCode 조회 totalElements가 유형별 건수. 기존 이관번호·소장구분 추정 분류 제거.

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

제공
4, 5, 6, 7, 8페이지CMS 소장 유형과 TEMP 제외holdingTypeCode / holdingTypeName
CRC02001 / 기증자료

TB_PSSN_CLLCTN.PSSN_CLLCTN_SE_CD, TB_COM_CD(CD_GROUP_ID=CRC02).CD_NM

CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.

제공
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/holdings/924

{}

2026-10-20T10:34:10.395225+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음936
GET
200
http://localhost:4100/api/v1/holdings/924

{}

2026-10-20T10:28:05.812839+09:00일치: 실제 DB 조회 HTTP200 / 일치: CMS 파일 링크의 미변환 상대경로 없음 / 일치: /m2 파일 링크 1건 확인1035
GET
200
http://localhost:4100/api/v1/holdings/924

{}

2026-10-16T16:44:56.528227+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.69
GET
200
http://localhost:4100/api/v1/holdings/988

{}

2026-10-23T11:25:34.468437+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.81
GET
200
http://localhost:4100/api/v1/holdings/988?holdingTypeCode=CRC02001&keyword=%EA%B8%B0%EC%83%9D%EC%B6%A9&sort=title

{}

2026-10-23T11:25:34.549757+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.50
GET
404
http://localhost:4100/api/v1/holdings/988?holdingTypeCode=CRC02002

{}

2026-10-23T11:25:34.599644+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.167
GET
404
http://localhost:4100/api/v1/holdings/450

{}

2026-10-23T11:25:34.766640+09:00CMS WAR RecordForm/Record.xml 및 실제 DB 확인: PSSN_CLLCTN_SE_CD(CRC02)로 소장 유형을 조회·분류. CRC02001=기증자료, CRC02002=수집자료, CRC02003=의상소품. 사용자 합의로 TEMP는 공개 전체/건수/상세/이전·다음 제외, DB 수정 없음. 실제 HTTP14건 통과. 현재 공개 조회는 기증자료1·수집자료0·의상소품0건; 수집/의상 비어 있지 않은 실제 응답 표본은 없음. Oracle 가상행 SELECT로 3유형·이전/다음·페이징·TEMP 제외 검증5건 통과.24

기증자 목록

/holdings/donors

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf

API·조회 항목 3개

GET기증자 목록·기증 건수 조회
/api/v1/holdings/donors
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-28 00:05:10펼치기접기
완료

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음. 2026-10-27 화면 연동: 기증자 페이지의 미상 칩을 dateStatus=UNKNOWN에 연결하고 이름 검색·페이징에 조건 유지, 전체·정상 연대 선택 시 해제. 실제 SVC 화면/API HTTP14건으로 미상27건과 검색·전환을 대조. 1920/1024/375 화면 확인. 기증자 화면 성능 개선: 연대 선택지는 기증일 중복을 먼저 제거한 뒤 같은 날짜 규칙으로 검증하고, 현재 목록의 기증자 누적 내역은 일괄 조회합니다. 10명 기준 조회 최대 24회→5회. 실제 SVC DB HTTP의 2020년대 화면 5.61초→2.30초, 미상 4.96초→2.10초. API JSON·화면 필터/목록/누적 내역/페이징 결과 동일. 캐시·DB 데이터 변경 없음. 배포 후 서버 속도는 별도 확인 필요. 건수·목록 SQL 통합: GROUP BY 결과의 COUNT(*) OVER()로 목록과 전체 건수를 함께 조회합니다. 결과가 있으면 별도 건수 조회 없이 처리하고, 첫 페이지 무결과는 0건, 이후 빈 페이지는 추가 건수 조회로 실제 totalElements와 요청 page를 유지합니다. 이름·연대·연도·미상·원천 날짜별 행·정렬·10건 페이징·DTO 유지. 실제 SVC HTTP 30조건 전후 일치. 전체 SSR 3.64초→2.24초, 2020년대 SSR 2.15초→1.52초(로컬 표본). 일반 SSR 5SQL→4SQL. DB 데이터·서버 설정 변경 없음. 기증자 비동기 연동: 첫 진입·새로고침은 전체 연대/연도 선택지와 첫 목록을 SSR로 제공합니다. 이후 이름·연대·연도·미상·페이지 이동은 GET /fragments/holdings/donors의 text/html 응답으로 목록·페이지네이션·누적 팝업만 교체합니다. 연대 선택지는 페이지 수명 동안 재조회하지 않으며 새로고침 시 갱신됩니다. 정상 비동기 조회는 3SQL, SSR은 4SQL. 기존 공개 JSON DTO·빈 페이지 전체건수 유지. 실제 DB HTTP24건·10조건 SSR동일성, 뒤로가기·연속요청·오류/재시도·1920/1024/375 화면 검증. DB 데이터·배포 서버 설정 변경 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-28T00:00:44.937232+09:00

http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN

조회 조건: {"dateStatus":"UNKNOWN"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "donorType": "PERSON",
  "donorId": 911394,
  "donorName": "작가 주동운",
  "donationDate": "미상",
  "materials": [
    {
      "typeCode": "PS",
      "typeName": "포스터",
      "count": 2
    }
  ],
  "totalCount": 2
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지기증자명items[].donorName
"작가 주동운"

기증자명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지기증일items[].donationDate
"미상"

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
9페이지자료별 유형·건수items[].materials
[{"typeCode": "PS", "typeName": "포스터", "count": 2}]

자료유형별 기증자료 건수 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지합계items[].totalCount
2

자료유형별 건수의 합계.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지연대·연도 필터decade/year
대표 성공 표본에 해당 값 없음

입력 조회 조건: name — 기증자명 부분 검색. 최대 100자. 생략=전체. keyword가 아니라 name 키를 사용합니다. / 입력 조회 조건: decade — 기증 연대 시작연도 정수. 예: `2020`=2020~2029년. 1900~2100 사이 10의 배수만 허용합니다. 생략=전체. `/api/v1/holdings/donors/filters`의 decades를 사용합니다. / 입력 조회 조건: year — 기증 연도 정수(1900~2100). 생략=전체. decade와 함께 보내면 그 연대 안의 연도여야 합니다. `/donors/filters?decade=2020`의 years에서 선택합니다. / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
9페이지기증자명·기증연대/연도필터·10개페이징검토 범위
대표 성공 표본에 해당 값 없음

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
사용자 추가 요청 2026-10-27 (KOFA-254)페이지잘못된 기증일 미상 분류donationDate / dateStatus / unknownAvailable
실제 DB 전체 1785건 / 미상 27건; 전체 미상 페이징 및 정상 연대 HTTP 검증

TB_OBTN_INCDNT.OBTN_YMD

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
검색·필터 등 실제 HTTP 요청 36건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4101/api/v1/holdings/donors

{}

2026-10-27T23:15:36.350611+09:00수정 전과 전체 JSON 일치1584
GET
200
http://localhost:4101/api/v1/holdings/donors?page=2

{}

2026-10-27T23:15:37.935526+09:00수정 전과 전체 JSON 일치1230
GET
200
http://localhost:4101/api/v1/holdings/donors?page=179

{}

2026-10-27T23:15:39.167075+09:00수정 전과 전체 JSON 일치1224
GET
200
http://localhost:4101/api/v1/holdings/donors?page=180

{}

2026-10-27T23:15:40.392542+09:00수정 전과 전체 JSON 일치2239
GET
200
http://localhost:4101/api/v1/holdings/donors?page=100000

{}

2026-10-27T23:15:42.632782+09:00수정 전과 전체 JSON 일치2214
GET
200
http://localhost:4101/api/v1/holdings/donors?decade=2020

{}

2026-10-27T23:15:44.849064+09:00수정 전과 전체 JSON 일치525
GET
200
http://localhost:4101/api/v1/holdings/donors?decade=2020&page=2

{}

2026-10-27T23:15:45.374190+09:00수정 전과 전체 JSON 일치509
GET
200
http://localhost:4101/api/v1/holdings/donors?decade=2020&page=21

{}

2026-10-27T23:15:45.884173+09:00수정 전과 전체 JSON 일치493
GET
200
http://localhost:4101/api/v1/holdings/donors?decade=2020&page=22

{}

2026-10-27T23:15:46.378505+09:00수정 전과 전체 JSON 일치782
GET
200
http://localhost:4101/api/v1/holdings/donors?decade=2020&year=2026

{}

2026-10-27T23:15:47.161622+09:00수정 전과 전체 JSON 일치430
GET
200
http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN

{}

2026-10-27T23:15:47.591628+09:00수정 전과 전체 JSON 일치507
GET
200
http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN&page=2

{}

2026-10-27T23:15:48.099019+09:00수정 전과 전체 JSON 일치496
GET
200
http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN&page=3

{}

2026-10-27T23:15:48.595793+09:00수정 전과 전체 JSON 일치470
GET
200
http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN&page=4

{}

2026-10-27T23:15:49.067008+09:00수정 전과 전체 JSON 일치720
GET
200
http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN&decade=2020

{}

2026-10-27T23:15:49.787350+09:00수정 전과 전체 JSON 일치45
GET
200
http://localhost:4101/api/v1/holdings/donors?name=%EC%9D%B4%EC%9D%98%ED%98%84_%ED%85%8C%EC%8A%A4%ED%8A%B8123%7C%7C%7C

{}

2026-10-27T23:15:49.832929+09:00수정 전과 전체 JSON 일치449
GET
200
http://localhost:4101/api/v1/holdings/donors?dateStatus=UNKNOWN&name=%EC%9E%91%EA%B0%80%20%EC%A3%BC%EB%8F%99%EC%9A%B4

{}

2026-10-27T23:15:50.283907+09:00수정 전과 전체 JSON 일치506
GET
200
http://localhost:4101/api/v1/holdings/donors?name=KofaNoMatch928573

{}

2026-10-27T23:15:50.790111+09:00수정 전과 전체 JSON 일치26
GET
200
http://localhost:4101/api/v1/holdings/donors?name=KofaNoMatch928573&page=2

{}

2026-10-27T23:15:50.816325+09:00수정 전과 전체 JSON 일치67
GET
200
http://localhost:4101/api/v1/holdings/donors?name=%25

{}

2026-10-27T23:15:50.884336+09:00수정 전과 전체 JSON 일치16
GET
200
http://localhost:4101/api/v1/holdings/donors?name=_

{}

2026-10-27T23:15:50.901140+09:00수정 전과 전체 JSON 일치442
GET
200
http://localhost:4101/api/v1/holdings/donors?name=%5C

{}

2026-10-27T23:15:51.345310+09:00수정 전과 전체 JSON 일치17
GET
400
http://localhost:4101/api/v1/holdings/donors?dateStatus=BAD

{}

2026-10-27T23:15:52.267809+09:00잘못된 조건의 HTTP 400 유지156
GET
400
http://localhost:4101/api/v1/holdings/donors?decade=2020&year=2019

{}

2026-10-27T23:15:52.424807+09:00잘못된 조건의 HTTP 400 유지13
GET
200
http://localhost:4101/fragments/holdings/donors

{"Accept":"text/html"}

2026-10-28T00:00:19.614688+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일1419
GET
200
http://localhost:4101/fragments/holdings/donors?decade=2020

{"Accept":"text/html"}

2026-10-28T00:00:22.706265+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일616
GET
200
http://localhost:4101/fragments/holdings/donors?decade=2020&year=2026

{"Accept":"text/html"}

2026-10-28T00:00:24.890039+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일587
GET
200
http://localhost:4101/fragments/holdings/donors?dateStatus=UNKNOWN

{"Accept":"text/html"}

2026-10-28T00:00:27.093721+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일654
GET
200
http://localhost:4101/fragments/holdings/donors?dateStatus=UNKNOWN&page=2

{"Accept":"text/html"}

2026-10-28T00:00:29.392034+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일670
GET
200
http://localhost:4101/fragments/holdings/donors?dateStatus=UNKNOWN&page=3

{"Accept":"text/html"}

2026-10-28T00:00:31.833672+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일778
GET
200
http://localhost:4101/fragments/holdings/donors?dateStatus=UNKNOWN&page=4

{"Accept":"text/html"}

2026-10-28T00:00:34.452986+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일751
GET
200
http://localhost:4101/fragments/holdings/donors?dateStatus=UNKNOWN&keyword=%EC%9E%91%EA%B0%80%20%EC%A3%BC%EB%8F%99%EC%9A%B4

{"Accept":"text/html"}

2026-10-28T00:00:36.773261+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일595
GET
200
http://localhost:4101/fragments/holdings/donors?keyword=KofaNoMatch928573

{"Accept":"text/html"}

2026-10-28T00:00:38.376528+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일15
GET
200
http://localhost:4101/fragments/holdings/donors?page=100000

{"Accept":"text/html"}

2026-10-28T00:00:41.793096+09:00화면 비동기 HTML: SSR 목록/페이징/누적 팝업과 동일2232
GET
400
http://localhost:4101/fragments/holdings/donors?decade=2020&year=2019

{"Accept":"text/html"}

2026-10-28T00:00:44.024981+09:00잘못된 입력의 기존 HTTP400 유지15
GET
400
http://localhost:4101/fragments/holdings/donors?dateStatus=BAD

{"Accept":"text/html"}

2026-10-28T00:00:44.039696+09:00잘못된 입력의 기존 HTTP400 유지10
GET기증자 누적 기증 현황 조회
/api/v1/holdings/donors/{donorType}/{donorId}/summary
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-27 18:30:34펼치기접기
완료

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음. 2026-10-27 화면 연동: 기증자 페이지의 미상 칩을 dateStatus=UNKNOWN에 연결하고 이름 검색·페이징에 조건 유지, 전체·정상 연대 선택 시 해제. 실제 SVC 화면/API HTTP14건으로 미상27건과 검색·전환을 대조. 1920/1024/375 화면 확인.

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-27T17:34:46.344859+09:00

http://localhost:4100/api/v1/holdings/donors/PERSON/911394/summary

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "donorType": "PERSON",
  "donorId": 911394,
  "donorName": "작가 주동운",
  "firstDonationDate": "미상",
  "lastDonationDate": "미상",
  "materials": [
    {
      "typeCode": "PS",
      "typeName": "포스터",
      "count": 2
    }
  ],
  "totalCount": 2
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지최초 기증일firstDonationDate
"미상"

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
9페이지최근 기증일lastDonationDate
"미상"

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
9페이지유형별 누적 건수materials
[{"typeCode": "PS", "typeName": "포스터", "count": 2}]

자료유형별 기증자료 건수 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지누적 합계totalCount
2

자료유형별 건수의 합계.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지누적기증툴팁 이름·최초/최근일·유형별건수·합계검토 범위
대표 성공 표본에 해당 값 없음

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
사용자 추가 요청 2026-10-27 (KOFA-254)페이지잘못된 기증일 미상 분류donationDate / dateStatus / unknownAvailable
실제 DB 전체 1785건 / 미상 27건; 전체 미상 페이징 및 정상 연대 HTTP 검증

TB_OBTN_INCDNT.OBTN_YMD

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/holdings/donors/PERSON/911394/summary

{}

2026-10-27T17:34:46.344859+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지246
GET
200
http://localhost:4100/api/v1/holdings/donors/PERSON/911426/summary

{}

2026-10-27T17:34:46.591412+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지219
GET
200
http://localhost:4100/api/v1/holdings/donors/PERSON/911427/summary

{}

2026-10-27T17:34:46.811223+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지225
GET
200
http://localhost:4100/api/v1/holdings/donors/PERSON/911437/summary

{}

2026-10-27T17:34:47.036404+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지219
GET
200
http://localhost:4100/api/v1/holdings/donors/PERSON/912780/summary

{}

2026-10-27T17:34:47.256360+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지251
GET
200
http://localhost:4100/api/v1/holdings/donors/GROUP/902066/summary

{}

2026-10-27T17:34:47.508404+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지234
GET
200
http://localhost:4100/api/v1/holdings/donors/GROUP/902174/summary

{}

2026-10-27T17:34:47.742607+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지226
GET
200
http://localhost:4100/api/v1/holdings/donors/GROUP/902394/summary

{}

2026-10-27T17:34:47.970646+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지228
GET
200
http://localhost:4100/api/v1/holdings/donors/GROUP/902422/summary

{}

2026-10-27T17:34:48.200616+09:00일치: 미상 날짜가 있는 기증자도 요약 조회 가능하고 자료 합계 유지237
GET기증자 연대·연도 필터 조회
/api/v1/holdings/donors/filters
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-27 21:52:07펼치기접기
완료

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음. 2026-10-27 화면 연동: 기증자 페이지의 미상 칩을 dateStatus=UNKNOWN에 연결하고 이름 검색·페이징에 조건 유지, 전체·정상 연대 선택 시 해제. 실제 SVC 화면/API HTTP14건으로 미상27건과 검색·전환을 대조. 1920/1024/375 화면 확인. 기증자 화면 성능 개선: 연대 선택지는 기증일 중복을 먼저 제거한 뒤 같은 날짜 규칙으로 검증하고, 현재 목록의 기증자 누적 내역은 일괄 조회합니다. 10명 기준 조회 최대 24회→5회. 실제 SVC DB HTTP의 2020년대 화면 5.61초→2.30초, 미상 4.96초→2.10초. API JSON·화면 필터/목록/누적 내역/페이징 결과 동일. 캐시·DB 데이터 변경 없음. 배포 후 서버 속도는 별도 확인 필요.

KOFA2_DE304_KOFA홈페이지_화면정의서(소장자료)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-27T17:34:16.976761+09:00

http://localhost:4100/api/v1/holdings/donors/filters

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "decades": [
    2020,
    2010,
    2000,
    1990,
    1980,
    1920
  ],
  "years": [],
  "unknownAvailable": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지기증 연대·연도 선택값decades / years
{
  "decades": [
    2020,
    2010,
    2000,
    1990,
    1980,
    1920
  ],
  "years": [],
  "unknownAvailable": true
}

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
9페이지기증연대내림차순·선택연대의연도오름차순검토 범위
{
  "decades": [
    2020,
    2010,
    2000,
    1990,
    1980,
    1920
  ],
  "years": [],
  "unknownAvailable": true
}

SVC TB_OBTN_INCDNT.OBTN_YMD: YYYYMMDD 형식·달력 유효성·1900~2100년 검증 후 정상 날짜 또는 미상.

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
사용자 추가 요청 2026-10-27 (KOFA-254)페이지잘못된 기증일 미상 분류donationDate / dateStatus / unknownAvailable
실제 DB 전체 1785건 / 미상 27건; 전체 미상 페이징 및 정상 연대 HTTP 검증

TB_OBTN_INCDNT.OBTN_YMD

기증일은 8자리 숫자·실제 달력 날짜·기존 연도 범위 1900~2100을 모두 만족해야 합니다. 나머지는 미상으로 반환하며 전체·유형별 건수에서 제외하지 않습니다. 미상은 최신순 마지막에 표시하고 dateStatus=UNKNOWN으로 별도 조회합니다. DB 원본 변경 없음.

제공
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/holdings/donors/filters

{}

2026-10-27T17:34:16.976761+09:00일치: 정상 기증일의 연대만 노출하며 unknownAvailable=true2231
GET
200
http://localhost:4100/api/v1/holdings/donors/filters?decade=2020

{}

2026-10-27T17:34:19.209623+09:00일치: 선택 연대의 정상 연도만 노출2220
GET
200
http://localhost:4100/api/v1/holdings/donors/filters?decade=2010

{}

2026-10-27T17:34:22.336209+09:00일치: 선택 연대의 정상 연도만 노출2203
GET
200
http://localhost:4100/api/v1/holdings/donors/filters?decade=2000

{}

2026-10-27T17:34:25.921355+09:00일치: 선택 연대의 정상 연도만 노출2210
GET
200
http://localhost:4100/api/v1/holdings/donors/filters?decade=1990

{}

2026-10-27T17:34:29.648172+09:00일치: 선택 연대의 정상 연도만 노출2311
GET
200
http://localhost:4100/api/v1/holdings/donors/filters?decade=1980

{}

2026-10-27T17:34:33.100188+09:00일치: 선택 연대의 정상 연도만 노출2242
GET
200
http://localhost:4100/api/v1/holdings/donors/filters?decade=1920

{}

2026-10-27T17:34:36.268287+09:00일치: 선택 연대의 정상 연도만 노출2251

시네마테크KOFA›상영

6개 페이지 · 7개 항목
시네마테크KOFA 상영의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

상영 프로그램 목록

/cinematheque/programs

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf

API·조회 항목 1개

GET상영 프로그램 검색·필터·페이징 조회
/api/v1/cinematheque/programs
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기존완료판정유지. null이미지/제작연도등은원천표본없음과API누락구분.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 7페이지

HTTP 조회 시각: 2026-10-19T02:04:13.778340+00:00

http://localhost:4100/api/v1/cinematheque/programs

조회 조건: {}

조회 결과 JSON · 객체 1건

page.items[0] · 문자열 값은 최대 20자 표시
{
  "id": 2800,
  "title": "8월 프로그래머의 초이스",
  "group": "상설전",
  "status": "종료",
  "posterUrl": null,
  "events": [],
  "filmCount": "6편",
  "dates": [
    "2026-08-20 (목)",
    "~",
    "2026-08-31(월)"
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
7페이지프로그램명page.items[].title
["8월 프로그래머의 초이스", "6월 프로그래머의 초이스", "시네마테크KOFA 5월 키즈시네마", "5·18 민주화운동 기념 특별 상영: 기억의 계승과 시선의 확장", "5월 프로그래머의 초이스", "홍상수 전작전: 인트로덕션", "제5회 마포구 노동인권영화 공동체 상영회", "2026 장애인의 날, 배리어프리영화 특별상영회", "트립 시네마: 물질, 접속, 조립", "3월 프로그래머의 초이스"]

프로그램명. PRGRM_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지그룹page.items[].group
["상설전", "상설전", "키즈시네마", "특별상영", "상설전", "기획전", "공동주최", "배리어프리 영화 정기 상영", "기획전", "상설전"]

프로그램 유형 공통코드명. CCP01 계열. 요청용 코드값은 groups[].code.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지상태page.items[].status
["종료", "종료", "종료", "종료", "종료", "종료", "종료", "종료", "종료", "종료"]

프로그램 기간 기준 표시명. 진행 중/예정/종료. ProgramStatus의 label.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지포스터page.items[].posterUrl
[null, "/img/mig/programManage/8a0d63ec-f8e5-4e0a-8c69-7366ac503d43_L.webp", "/img/mig/programManage/fc7c4c72-f4d5-4a5e-a1a7-e4684875ff48_L.webp", "/img/mig/programManage/d267b917-16d8-473c-90b6-5a723da2f280_L.webp", "/img/mig/programManage/018de072-b261-47c1-a686-483722b006d6_L.webp", "/img/mig/programManage/f34fc65a-3fd5-4d5a-964d-07827fc3b4fc_L.webp", "/img/mig/programManage/55946710-a35b-490a-9afb-fd93eb754e9b_L.webp", "/img/mig/programManage/47109f5a-5708-4c18-afa8-311323760ce1_L.webp", "/img/mig/programManage/150c3eb0-66d4-4cb7-a416-17344da620b3_L.webp", "/img/mig/programManage/1a6cb714-01a5-4d1e-b136-7fb6ea1a53f2_L.webp"]

CMS 프로그램 대표첨부 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지부대행사page.items[].events
[[], [], [], [], [], [], [], [], [], []]

프로그램 연관 행사 유형 공통코드명 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
7페이지상영작수page.items[].filmCount
["6편", "2편", "1편", "2편", "2편", "34편", "1편", "1편", "20편", "1편"]

삭제되지 않은 연결 SCFM_ID를 중복 제거한 상영작 수 표시 문자열. 예: 5편.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지기간page.items[].dates
[["2026-08-20 (목)", "~", "2026-08-31(월)"], ["2026-07-31 (금)"], ["2026-05-20 (수)", "~", "2026-05-23(토)"], ["2026-05-16 (토)"], ["2026-05-05 (화)", "~", "2026-06-06(토)"], ["2026-05-02 (토)", "~", "2026-06-13(토)"], ["2026-04-25 (토)"], ["2026-04-18 (토)"], ["2026-04-08 (수)", "~", "2026-04-30(목)"], ["2026-03-20 (금)", "~", "2026-03-25(수)"]]

프로그램 시작일·종료일 표시 문자열 배열. 복수일이면 시작일, ~, 종료일 순.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지프로그램명·연도·월·그룹·상태필터/상영작수/포스터/페이징검토 범위
all/ongoing/upcoming/ended,키워드,그룹·연월·페이지 조건 HTTP200.

ScreeningProgramMapper: TB_PRGRM의명칭/기간/그룹/공개코드CCM04001, TB_PRGRM_MOVIE 유효부모상영작 count,공개행사코드·대표첨부.

기존완료판정유지. null이미지/제작연도등은원천표본없음과API누락구분.

제공
검색·필터 등 실제 HTTP 요청 17건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/programs

{}

2026-10-19T02:04:13.778340+00:00일치: 영문 상태 라벨/국문 기존 상태 유지 및 실제 DB HTTP200813
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01003&year=2026&month=8

{}

2026-10-16T16:47:15.397391+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.141
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01002&year=2026&month=8

{}

2026-10-16T16:47:15.218181+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.169
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01001&year=2026&month=8

{}

2026-10-16T16:47:15.068919+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.140
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=ongoing

{}

2026-10-16T16:47:14.911752+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.148
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01003&year=2026

{}

2026-10-16T16:47:09.585094+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.140
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01002&year=2026

{}

2026-10-16T16:47:09.404508+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.174
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01001&year=2026

{}

2026-10-16T16:47:09.156422+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.236
GET
200
http://localhost:4100/api/v1/cinematheque/programs?page=2

{}

2026-10-16T16:47:08.894864+09:00일치: 응답 페이징 번호가 요청과 일치250
GET
200
http://localhost:4100/api/v1/cinematheque/programs?year=2026&month=10

{}

2026-10-16T16:47:08.728732+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.155
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=%25_

{}

2026-10-16T16:47:08.574978+09:00미검증: 제목 검색어가 반환 제목에 포함142
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=ZZZNORESULT

{}

2026-10-16T16:47:08.416610+09:00미검증: 제목 검색어가 반환 제목에 포함150
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=%EC%98%81%ED%99%94

{}

2026-10-16T16:47:08.142208+09:00일치: 제목 검색어가 반환 제목에 포함264
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=ended

{}

2026-10-16T16:47:07.893980+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.239
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=upcoming

{}

2026-10-16T16:47:07.723205+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.158
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=all

{}

2026-10-16T16:47:07.502492+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.211
GET
200
http://localhost:4100/api/v1/cinematheque/programs

{}

2026-10-16T16:47:07.168318+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.328

상영 프로그램 상세

/cinematheque/programs/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf

API·조회 항목 1개

GET프로그램 소개·행사·섹션별 상영작 조회
/api/v1/cinematheque/programs/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

섹션 매핑 데이터 확인. 프로그램의 섹션 구분과 상영작에 연결된 개별 단편은 별도 관계이며 단편 상세는12페이지 항목에서 검증. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-20T16:54:26.631329+09:00

http://localhost:4100/api/v1/cinematheque/programs/2800

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "programId": 2800,
  "programType": "상설전",
  "title": "8월 프로그래머의 초이스",
  "status": "종료",
  "period": "2026-08-20(목) ~ 2026...",
  "theater": "시네마테크KOFA 2관",
  "bannerUrl": null,
  "introductionHtml": "&lt;사랑할 땐 누구나 최악이 된다...",
  "events": [],
  "sections": [
    {
      "sectionId": 240,
      "title": "섹션2",
      "headingTitle": "섹션2",
      "movies": [
        {
          "screeningMovieId": 10445,
          "title": "센티멘탈 밸류",
          "directorName": "요아킴 트리에",
          "productionYear": null,
          "runtime": "134분",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": null,
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        }
      ]
    },
    {
      "sectionId": 241,
      "title": "단편섹션1",
      "headingTitle": "단편섹션1",
      "movies": [
        {
          "screeningMovieId": 10446,
          "title": "소설 윤동주",
          "directorName": null,
          "productionYear": null,
          "runtime": "0분",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": null,
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        },
        {
          "screeningMovieId": 10447,
          "title": "찰리 채플린 4 단편모음집",
          "directorName": "찰리 채플린",
          "productionYear": null,
          "runtime": "55분",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": null,
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        }
      ]
    },
    {
      "sectionId": 242,
      "title": "단편섹션222",
      "headingTitle": "단편섹션222",
      "movies": [
        {
          "screeningMovieId": 10448,
          "title": "호프",
          "directorName": "나홍진",
          "productionYear": null,
          "runtime": "161분",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": "http://kofafilm.arch...",
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        }
      ]
    }
  ],
  "unsectionedMovies": [],
  "selectedSectionId": null,
  "emptyMovies": false,
  "eventTypes": []
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지그룹programType
["상설전"]

프로그램 유형 공통코드명. PRGRM_TYPE_CD의 표시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지프로그램명title
["8월 프로그래머의 초이스"]

프로그램명. PRGRM_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지진행상태status
["종료"]

프로그램 기간 기준 표시값. 예정/진행/종료.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지기간period
["2026-08-20(목) ~ 2026-08-31(월)"]

프로그램 기간 표시 문자열. yyyy-MM-dd(요일) ~ yyyy-MM-dd(요일).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지장소theater
["시네마테크KOFA 2관"]

연결 상영회차의 상영관 공통코드명을 중복 제거 후 · 로 합친 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지배너bannerUrl
[null]

프로그램 대표첨부 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지소개 본문introductionHtml
["&lt;사랑할 땐 누구나 최악이 된다&gt;(2021)을 통해 현대인의 사랑과 불안을 섬세하게 포착했던 요하임 트리에 감독의 화제작 &lt;센티멘탈 밸류&gt;를 &#39;8월 프로그래머의 초이스&#39;로 선정했다. 어머니의 죽음 이후 오랫동안 단절되었던 영화감독 아버지와 배우 딸이 자전적 영화 촬영을 계기로 재회하며 겪는 감정의 파고를 다룬 이 영화에는 가족의 유산과 예술, 그리고 기억의 무게에 대한 감독의 깊이 있는 통찰이 녹아 있다. &lt;사랑할 땐 누구나 최악이 된다&gt;로 칸영화제 여우주연상을 수상했던 레나테 레인스베와 명배우 스텔란 스카스카드가 빚어내는 복잡하고도 섬세한 부녀 연기, 그리고 트리에 감독 특유의 세련된 미장센과 묵직한 감정선이 돋보이는 매력적인 영화이다.&nbsp;"]

프로그램 소개 HTML. PRGRM_INTRO_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지부대행사events
[[]]

연결 회차의 행사 목록. 내용은 contentText 원문으로 제공.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지상영작 구분sections
[[{"sectionId": 240, "title": "섹션2", "headingTitle": "섹션2", "movies": [{"screeningMovieId": 10445, "title": "센티멘탈 밸류", "directorName": "요아킴 트리에", "productionYear": null, "runtime": "134분", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": null, "media": "", "eventTypes": [], "englishSubtitle": false}]}, {"sectionId": 241, "title": "단편섹션1", "headingTitle": "단편섹션1", "movies": [{"screeningMovieId": 10446, "title": "소설 윤동주", "directorName": null, "productionYear": null, "runtime": "0분", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": null, "media": "", "eventTypes": [], "englishSubtitle": false}, {"screeningMovieId": 10447, "title": "찰리 채플린 4 단편모음집", "directorName": "찰리 채플린", "productionYear": null, "runtime": "55분", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": null, "media": "", "eventTypes": [], "englishSubtitle": false}]}, {"sectionId": 242, "title": "단편섹션222", "headingTitle": "단편섹션222", "movies": [{"screeningMovieId": 10448, "title": "호프", "directorName": "나홍진", "productionYear": null, "runtime": "161분", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2025/09/16/01/pstr_20250916000000000_319782_S.jpg", "media": "", "eventTypes": [], "englishSubtitle": false}]}]]

프로그램의 상영작 섹션 목록과 섹션별 영화 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지구분 없는 상영작unsectionedMovies
[[]]

섹션이 지정되지 않은 연결 상영작 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지제목·상태/그룹·기간·장소·배너·소개·행사·섹션별상영작검토 범위
대표 성공 표본에 해당 값 없음

ProgramDetailService/Query: TB_PRGRM.PRGRM_INTRO_CN,TB_PRGRM_MOVIE_SE 섹션,TB_PRGRM_MOVIE,회차행사목록.

섹션 매핑 데이터 확인. 프로그램의 섹션 구분과 상영작에 연결된 개별 단편은 별도 관계이며 단편 상세는12페이지 항목에서 검증. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 5건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{}

2026-10-20T10:34:10.395329+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음399
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{}

2026-10-19T02:04:15.237650+00:00일치: 영문 상태 라벨/국문 기존 상태 유지 및 실제 DB HTTP200333
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{}

2026-10-16T16:47:21.589744+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.144
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{}

2026-10-16T16:47:09.735686+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.173
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{}

2026-10-20T16:54:26.631329+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.452

상영 프로그램 상세 - 캘린더

/cinematheque/programs/{id}/schedule

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf

API·조회 항목 1개

GET선택 프로그램 월간 상영일정 조회
/api/v1/cinematheque/programs/{id}/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

경로ID와제목/기간·회차범위대응확인.선택필터는공통상영일정과동일. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-20T16:54:27.083085+09:00

http://localhost:4100/api/v1/cinematheque/programs/2800/schedule

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "program": {
    "id": 2800,
    "title": "8월 프로그래머의 초이스",
    "startsOn": "2026-08-20",
    "endsOn": "2026-08-31"
  },
  "schedule": {
    "view": "month",
    "content": "film",
    "date": "2026-10-20",
    "referenceDate": "2026-10-20",
    "periodStart": "2026-10-01",
    "periodEnd": "2026-10-31",
    "periodLabel": "2026년 10월",
    "previousDate": "2026-09-01",
    "nextDate": "2026-11-01",
    "previousEnabled": false,
    "nextEnabled": false,
    "empty": true,
    "monthWeekCount": 5,
    "previousMonthWeekCount": 5,
    "nextMonthWeekCount": 5,
    "criteria": {
      "view": "month",
      "date": "2026-10-20",
      "content": "film",
      "programId": "2800",
      "rating": "",
      "eventType": "",
      "englishSubtitles": false
    },
    "days": [
      {
        "date": "2026-09-27",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-09-28",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-09-29",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-09-30",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-01",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-02",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-03",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-04",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-05",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-06",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-07",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-08",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-09",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-10",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-11",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-12",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-13",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-14",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-15",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-16",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-17",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-18",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-19",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-20",
        "weekday": "화",
        "closed": false,
        "today": true,
        "selected": true,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-21",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-22",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-23",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-24",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-25",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-26",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-27",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-28",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-29",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-30",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-10-31",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": false,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      }
    ],
    "weeks": [
      [
        {
          "date": "2026-09-27",
          "weekday": "일",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": true,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-09-28",
          "weekday": "월",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": true,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-09-29",
          "weekday": "화",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": true,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-09-30",
          "weekday": "수",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": true,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-01",
          "weekday": "목",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-02",
          "weekday": "금",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-03",
          "weekday": "토",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        }
      ],
      [
        {
          "date": "2026-10-04",
          "weekday": "일",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-05",
          "weekday": "월",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-06",
          "weekday": "화",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-07",
          "weekday": "수",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-08",
          "weekday": "목",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-09",
          "weekday": "금",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-10",
          "weekday": "토",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        }
      ],
      [
        {
          "date": "2026-10-11",
          "weekday": "일",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-12",
          "weekday": "월",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-13",
          "weekday": "화",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-14",
          "weekday": "수",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-15",
          "weekday": "목",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-16",
          "weekday": "금",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-17",
          "weekday": "토",
          "closed": false,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        }
      ],
      [
        {
          "date": "2026-10-18",
          "weekday": "일",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-19",
          "weekday": "월",
          "closed": true,
          "today": false,
          "selected": false,
          "past": true,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-20",
          "weekday": "화",
          "closed": false,
          "today": true,
          "selected": true,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-21",
          "weekday": "수",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-22",
          "weekday": "목",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-23",
          "weekday": "금",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-24",
          "weekday": "토",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        }
      ],
      [
        {
          "date": "2026-10-25",
          "weekday": "일",
          "closed": true,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-26",
          "weekday": "월",
          "closed": true,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-27",
          "weekday": "화",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-28",
          "weekday": "수",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-29",
          "weekday": "목",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-30",
          "weekday": "금",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        },
        {
          "date": "2026-10-31",
          "weekday": "토",
          "closed": false,
          "today": false,
          "selected": false,
          "past": false,
          "outside": false,
          "screeningCount": 0,
          "reservable": false,
          "screenings": []
        }
      ]
    ],
    "programBands": [],
    "programBandWeeks": [
      [],
      [],
      [],
      [],
      []
    ],
    "filterOptions": {
      "programs": [],
      "ratings": [
        {
          "value": "CCP10003",
          "label": "12세이상관람가"
        },
        {
          "value": "CCP10004",
          "label": "15세이상관람가"
        },
        {
          "value": "CCP10005",
          "label": "청소년관람불가"
        }
      ],
      "events": []
    },
    "appliedFilters": [
      {
        "name": "programId",
        "label": "선택 조건"
      }
    ]
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지프로그램명program.title
["8월 프로그래머의 초이스"]

프로그램명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지시작일program.startsOn
["2026-08-20"]

프로그램 시작일. yyyy-MM-dd.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지종료일program.endsOn
["2026-08-31"]

프로그램 종료일. yyyy-MM-dd. 종료일 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지특정프로그램고정타이틀/기간/월간상영일정검토 범위
대표 성공 표본에 해당 값 없음

ScreeningProgramScheduleService가경로programId로고정,공통ScheduleService조회.

경로ID와제목/기간·회차범위대응확인.선택필터는공통상영일정과동일.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800/schedule

{}

2026-10-16T16:47:09.917323+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.123
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800/schedule

{}

2026-10-20T16:54:27.083085+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.184

상영작 목록·검색

/cinematheque/movies

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf

API·조회 항목 1개

GET상영작 제목·감독 검색과 상태별 목록 조회
/api/v1/cinematheque/movies
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

검색범위보완정상유지. PDF의검색시상태전체선택은프론트가status=all로전송해야함. API는명시한상태조건을임의해제하지않으므로Swagger사용설명보강. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 10페이지

HTTP 조회 시각: 2026-10-20T16:54:27.266746+09:00

http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=director&page=2

조회 조건: {"status": "all", "keyword": "김", "searchField": "director", "page": "2"}

조회 결과 JSON · 객체 1건

page.items[0] · 문자열 값은 최대 20자 표시
{
  "id": 625,
  "title": "엄마의 사랑은 끝이 없어라",
  "director": "김정구",
  "year": "",
  "runtime": "10분",
  "rating": null,
  "medium": "",
  "events": [],
  "subtitles": [],
  "programId": 1297,
  "program": "김정구 감독의 독립영화",
  "period": "2005-09-23 ~ 2005-09...",
  "posterUrl": null,
  "status": "상영 종료",
  "ratingLabel": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
10페이지제목page.items[].title
["엄마의 사랑은 끝이 없어라", "약혼녀", "토지", "충녀", "뉴머신 우뢰매 (제5탄)", "하녀", "혈맥", "니가 잘나 일색이냐", "Super Daddy Wonder Mom", "안녕, 사요나라"]

상영작 제목. MOVIE_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지감독page.items[].director
["김정구", "김수용", "김수용", "김기영A", "조명화/총감독:김청기", "김기영A", "김수용", "김수용", "김기라", "김태일, 카토 쿠미코"]

감독명. DRC_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지제작연도page.items[].year
["", "", "", "", "", "", "", "", "", ""]

제작연도 표시 문자열. FBCTN_YR에 년을 추가. 미등록 시 빈 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지러닝타임page.items[].runtime
["10분", "108분", "142분", "115분", "81분", "108분", "81분", "94분", "0분", "107분"]

러닝타임 표시 문자열. SCRG_HR에 분을 추가. 미등록 시 빈 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지관람등급page.items[].ratingLabel
[null, null, null, null, null, null, null, null, null, null]

관람등급 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지상영매체page.items[].medium
["", "", "", "", "", "", "", "", "", ""]

연결 회차의 상영매체 공통코드명을 쉼표로 합친 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지행사page.items[].events
[[], [], [], [], [], [], [], [], [], []]

연결 회차의 행사 유형 공통코드명 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지관련 프로그램page.items[].program
["김정구 감독의 독립영화", "10월 클래식 한국영화 릴레이", "허장강, 그 두번째 이야기", "욕망예찬: 김기영, 스즈키 세이준, 이마무라 쇼헤이의 작품들", "12월 청소년을 위한 특별상영회", "김기영傳", "12월 클래식 한국영화 릴레이", "1월 클래식 한국영화 릴레이", "9월 해피투게더, 독립영화", "서울독립영화제 2005 수상작 순회전"]

연결 프로그램명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지기간page.items[].period
["2005-09-23 ~ 2005-09-23", "2005-10-18 ~ 2005-10-21", "2005-11-19 ~ 2005-11-27", "2005-11-08 ~ 2005-11-13", "2005-12-24 ~ 2005-12-24", "2005-12-13 ~ 2005-12-16", "2005-12-06 ~ 2005-12-09", "2006-01-03 ~ 2006-01-31", "2006-09-21 ~ 2006-09-21", "2005-09-28 ~ 2005-10-01"]

프로그램 기간 문자열. 시작일 ~ 종료일. 미등록 시 빈 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지포스터page.items[].posterUrl
[null, "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2014/03/25/01/pstr_20140325000000000_270074_S.jpg", "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2006/10/10/01/pstr_20061010000000000_252237_S.jpg", "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2014/04/02/01/pstr_20140402000000000_269003_S.jpg", null, null, "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2014/03/25/01/pstr_20140325000000000_271580_S.jpg", "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2014/03/25/01/pstr_20140325000000000_283383_S.jpg", null, null]

AMS 영화 관리번호로 조회한 포스터 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지상태page.items[].status
["상영 종료", "상영 종료", "상영 종료", "상영 종료", "상영 종료", "상영 종료", "상영 종료", "상영 종료", "상영 종료", "상영 종료"]

회차 일정을 기준으로 계산한 상영 상태 표시명. 상영 중/상영 예정/상영 종료.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지검색 범위 전체/제목/감독 선택searchField / keyword
대표 성공 표본에 해당 값 없음

입력 조회 조건: keyword — 상영작 제목 또는 감독명 부분 검색, 최대 100자. searchField로 범위를 선택합니다. 생략/빈 문자열이면 전체. `%`, `_`는 와일드카드가 아닌 문자로 검색합니다. / 입력 조회 조건: status — `all`=전체, `now`(기본)=상영 중, `upcoming`=상영 예정, `ended`=상영 종료. 소문자로 전달합니다. 프로그램의 ongoing과 다릅니다. / 입력 조회 조건: searchField — `all`(기본)=제목(MOVIE_NM)+감독명(DRC_NM), `title`=제목만, `director`=감독명만. 앞뒤 공백 제거·소문자 정규화. 생략·빈 값·그 외 값은 기존 동작과 같이 all로 조회합니다. 목록·totalElements·statusCounts 모두 같은 검색 범위를 적용합니다. / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다. / 입력 조회 조건: size — 페이지당 개수. 이 API는 `10`만 허용합니다. 기본값 `10`.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지전체/제목/감독검색·상영상태·영화정보·관련프로그램·건수검토 범위
대표 성공 표본에 해당 값 없음

MovieSearchCondition.searchField→ScreeningMovieMapper에서MOVIE_NM/DRC_NM별LIKE; count/statusCounts같은scope.

검색범위보완정상유지. PDF의검색시상태전체선택은프론트가status=all로전송해야함. API는명시한상태조건을임의해제하지않으므로Swagger사용설명보강. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 24건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=director&page=2

{}

2026-10-20T10:34:10.794826+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음415
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=director&page=2

{}

2026-10-16T16:47:20.861067+09:00일치: 응답 페이징 번호가 요청과 일치 / 일치: 상영작 director 검색 범위에 실제 값이 일치257
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=ended&keyword=%EA%B9%80&searchField=director

{}

2026-10-16T16:47:20.484795+09:00일치: 상영작 director 검색 범위에 실제 값이 일치364
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=upcoming&keyword=%EA%B9%80&searchField=director

{}

2026-10-16T16:47:20.211037+09:00미검증: 상영작 director 검색 범위에 실제 값이 일치261
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=now&keyword=%EA%B9%80&searchField=director

{}

2026-10-16T16:47:19.949073+09:00미검증: 상영작 director 검색 범위에 실제 값이 일치256
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=title&page=2

{}

2026-10-16T16:47:19.727815+09:00일치: 응답 페이징 번호가 요청과 일치 / 일치: 상영작 title 검색 범위에 실제 값이 일치209
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=ended&keyword=%EA%B9%80&searchField=title

{}

2026-10-16T16:47:19.384966+09:00일치: 상영작 title 검색 범위에 실제 값이 일치333
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=upcoming&keyword=%EA%B9%80&searchField=title

{}

2026-10-16T16:47:19.154087+09:00미검증: 상영작 title 검색 범위에 실제 값이 일치222
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=now&keyword=%EA%B9%80&searchField=title

{}

2026-10-16T16:47:18.886573+09:00미검증: 상영작 title 검색 범위에 실제 값이 일치263
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=unknown

{}

2026-10-16T16:47:18.619219+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.257
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=

{}

2026-10-16T16:47:18.350720+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.260
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=all

{}

2026-10-16T16:47:18.080254+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.260
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=director

{}

2026-10-16T16:47:17.807555+09:00일치: 상영작 director 검색 범위에 실제 값이 일치267
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=title

{}

2026-10-16T16:47:17.603400+09:00일치: 상영작 title 검색 범위에 실제 값이 일치193
GET
200
http://localhost:4100/api/v1/cinematheque/movies?page=2&status=all

{}

2026-10-16T16:47:12.790112+09:00일치: 응답 페이징 번호가 요청과 일치713
GET
200
http://localhost:4100/api/v1/cinematheque/movies?keyword=%25_&status=all

{}

2026-10-16T16:47:12.667294+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.118
GET
200
http://localhost:4100/api/v1/cinematheque/movies?keyword=ZZZNORESULT&status=all

{}

2026-10-16T16:47:12.538618+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.118
GET
200
http://localhost:4100/api/v1/cinematheque/movies?keyword=%EA%B9%80&status=all

{}

2026-10-16T16:47:12.255391+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.272
GET
200
http://localhost:4100/api/v1/cinematheque/movies?keyword=%EC%98%81%ED%99%94&status=all

{}

2026-10-16T16:47:12.076144+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.168
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=ended

{}

2026-10-16T16:47:11.588765+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.479
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=upcoming

{}

2026-10-16T16:47:11.235521+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.342
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=now

{}

2026-10-16T16:47:10.820111+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.404
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all

{}

2026-10-16T16:47:10.047977+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.762
GET
200
http://localhost:4100/api/v1/cinematheque/movies?status=all&keyword=%EA%B9%80&searchField=director&page=2

{}

2026-10-20T16:54:27.266746+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.482

상영작 상세

/cinematheque/movies/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf

API·조회 항목 1개

GET상영작 정보·줄거리·회차·행사 조회
/api/v1/cinematheque/movies/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

확인된CMS매핑유지. KMDb상세·문화인팝업조립은기존결정대로프론트. null필드와실제이미지부재는별도원천표본문제로기록. 단편 상세 API 보완 완료. 5007의 합계85분,6206의 합계64분 확인. 10349는 부모28분과 달리 하위3편이 모두DB0이므로 합계0분 반환. 현재 표본의 일부 감독/연도/색채/영화연결ID 및 하위 상영매체는 DB미등록으로 빈값이며 추정 보충하지 않음. KMDb 연결은 프론트 담당. 상영매체 양성 표본은 없어 코드명/중복제거는 단위 테스트로 추가 확인. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 11, 12페이지

HTTP 조회 시각: 2026-10-20T16:54:27.749271+09:00

http://localhost:4100/api/v1/cinematheque/movies/6206

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "title": "개막식+개막작",
  "englishTitle": null,
  "imageUrl": null,
  "kmdbUrl": null,
  "ratingIcon": "all",
  "ratingLabel": "전체 관람가",
  "facts": [
    {
      "label": "러닝타임",
      "value": "64분",
      "wide": false,
      "rating": false
    },
    {
      "label": "관람등급",
      "value": "전체 관람가",
      "wide": false,
      "rating": true
    },
    {
      "label": "상영매체",
      "value": null,
      "wide": false,
      "rating": false
    }
  ],
  "synopsisHtml": "제 11회 대한민국대학영화제&nbsp...",
  "screenings": [
    {
      "id": 13944,
      "date": "2016-10-21(금) 19:00",
      "venue": "시네마테크KOFA 1관",
      "badges": [],
      "status": "CLOSED",
      "bookingLabel": "예매 종료",
      "available": false,
      "bookingHref": "/booking/culture/mov..."
    }
  ],
  "events": [],
  "programs": [
    {
      "url": "/cinematheque/progra...",
      "title": "제11회 대한민국대학영화제",
      "status": "종료",
      "imageUrl": "/img/mig/programMana...",
      "type": "기획전",
      "eventTypes": [],
      "count": "47편",
      "period": "2016-10-21(금) ~ 2016..."
    }
  ],
  "id": 6206,
  "programId": 2156,
  "movieId": null,
  "movieMngNo": null,
  "posterUrl": null,
  "shorts": [
    {
      "title": "일등급이다",
      "englishTitle": "The first grade ",
      "kmdbUrl": null,
      "facts": [
        {
          "label": "감독",
          "value": "이정호",
          "wide": false,
          "rating": false
        },
        {
          "label": "제작연도",
          "value": "2013",
          "wide": false,
          "rating": false
        },
        {
          "label": "러닝타임",
          "value": "26분",
          "wide": false,
          "rating": false
        }
      ],
      "synopsis": "자식에게 신세 지는 것이 싫어 요양원...",
      "id": 10459,
      "movieId": null,
      "movieMngNo": null
    },
    {
      "title": "좁은 길",
      "englishTitle": "The Strait Gate",
      "kmdbUrl": null,
      "facts": [
        {
          "label": "감독",
          "value": "손민영",
          "wide": false,
          "rating": false
        },
        {
          "label": "제작연도",
          "value": "2015",
          "wide": false,
          "rating": false
        },
        {
          "label": "러닝타임",
          "value": "38분",
          "wide": false,
          "rating": false
        }
      ],
      "synopsis": "택배 배달부인 수철은 배달 사고로 인...",
      "id": 10460,
      "movieId": null,
      "movieMngNo": null
    }
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
11페이지상영작명title
["개막식+개막작"]

상영작 국문 제목. CMS MOVIE_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지영문명englishTitle
[null]

상영작 영문 제목. MOVIE_ENG_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
11페이지대표이미지imageUrl
[null]

CMS 상영작 대표첨부 이미지 경로. posterUrl과 별도 원천.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
11페이지영화 상세 식별자movieMngNo
[null]

연결된 영화 관리번호. MOVIE_MNG_NO. 포스터 조회에 사용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
11페이지감독·배우·색채·등급·러닝타임·화면비facts
[[{"label": "러닝타임", "value": "64분", "wide": false, "rating": false}, {"label": "관람등급", "value": "전체 관람가", "wide": false, "rating": true}, {"label": "상영매체", "value": null, "wide": false, "rating": false}]]

감독·출연·제작연도·러닝타임·색채·화면비 등 상세 정보의 label/value 목록. 상영작 구성에 따라 항목이 다름.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지회차screenings
[[{"id": 13944, "date": "2016-10-21(금) 19:00", "venue": "시네마테크KOFA 1관", "badges": [], "status": "CLOSED", "bookingLabel": "예매 종료", "available": false, "bookingHref": "/booking/culture/movie?id=0"}]]

해당 SCFM_ID의 연결 상영회차와 예매 표시 상태 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지줄거리synopsisHtml
["제 11회 대한민국대학영화제&nbsp;개막식+개막작"]

CMS 시놉시스 SYNPS_CN에 에디터 치환을 적용한 HTML.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지부대행사events
[[]]

상영작에 연결된 행사 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
11페이지관련 프로그램programs
[[{"url": "/cinematheque/programs/2156", "title": "제11회 대한민국대학영화제", "status": "종료", "imageUrl": "/img/mig/programManage/8333778b-ff02-493d-b09f-cd1e4f77e067_L.webp", "type": "기획전", "eventTypes": [], "count": "47편", "period": "2016-10-21(금) ~ 2016-10-23(일)"}]]

상영작에 연결된 관련 프로그램 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지상영작상세·영문명·감독·출연·색채·등급·러닝타임·화면비·회차·줄거리·행사검토 범위
대표 성공 표본에 해당 값 없음

ScreeningMovieMapper TB_PRGRM_MOVIE.MOVIE_NM/MOVIE_ENG_NM/DRC_NM/PRFM_NM/COLR_CD/VWNG_GRD_CD/SCRG_HR/SCRN_RT_CD와CMS코드명,회차/행사/AMS포스터보완.

확인된CMS매핑유지. KMDb상세·문화인팝업조립은기존결정대로프론트. null필드와실제이미지부재는별도원천표본문제로기록.

제공
12페이지단편1개·여러개: 제목/영문명·감독·연도·러닝타임·색채·시놉시스·합계·상영매체검토 범위
대표 성공 표본에 해당 값 없음

현재 CMS WAR Program.xml selectWorksList: TB_PRGRM_MOVIE.UP_SCFM_ID=부모 SCFM_ID, DEL_YN=N, SORT_SEQ순. 단편 분류CCP03002. API detailShorts는 동일 PRGRM_ID/부모 공개조건도 유지. 상단은 하위 SCRG_HR 합계, 관람등급은 부모 VWNG_GRD_CD, 상영매체는 TB_PRGRM_SCSCHDL_SHFM.SCRG_MEDIA_CD→CCP08 코드명. 개별 id는 하위 SCFM_ID이며 SHFM_ID가 아님.

단편 상세 API 보완 완료. 5007의 합계85분,6206의 합계64분 확인. 10349는 부모28분과 달리 하위3편이 모두DB0이므로 합계0분 반환. 현재 표본의 일부 감독/연도/색채/영화연결ID 및 하위 상영매체는 DB미등록으로 빈값이며 추정 보충하지 않음. KMDb 연결은 프론트 담당. 상영매체 양성 표본은 없어 코드명/중복제거는 단위 테스트로 추가 확인.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
404
http://localhost:4100/api/v1/cinematheque/movies/99999999

{}

2026-10-16T18:08:30.313332+09:00일치: 개별 단편 ID/존재하지 않는 ID를 부모 상세로 조회하면 기존 404 유지21
GET
404
http://localhost:4100/api/v1/cinematheque/movies/10590

{}

2026-10-16T18:08:30.247098+09:00일치: 개별 단편 ID/존재하지 않는 ID를 부모 상세로 조회하면 기존 404 유지61
GET
200
http://localhost:4100/api/v1/cinematheque/movies/156

{}

2026-10-16T18:08:30.098930+09:00일치: 실제 DB 조회 HTTP200 / 일치: 일반 상영작 기존 빈 shorts 배열 유지137
GET
200
http://localhost:4100/api/v1/cinematheque/movies/6206

{}

2026-10-16T18:08:29.985246+09:00일치: 실제 DB 조회 HTTP200 / 일치: 하위 SCFM_ID, SORT_SEQ/SCFM_ID 순서와 개수 일치 / 일치: 단편10459 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10459 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 단편10460 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10460 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 상단 러닝타임이 독립 SQL SUM(SCRG_HR)와 일치: 64분103
GET
200
http://localhost:4100/api/v1/cinematheque/movies/5007

{}

2026-10-16T18:08:29.868123+09:00일치: 실제 DB 조회 HTTP200 / 일치: 하위 SCFM_ID, SORT_SEQ/SCFM_ID 순서와 개수 일치 / 일치: 단편10455 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10455 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 단편10456 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10456 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 상단 러닝타임이 독립 SQL SUM(SCRG_HR)와 일치: 85분107
GET
200
http://localhost:4100/api/v1/cinematheque/movies/10446

{}

2026-10-16T18:08:29.724373+09:00일치: 실제 DB 조회 HTTP200 / 일치: 하위 SCFM_ID, SORT_SEQ/SCFM_ID 순서와 개수 일치 / 일치: 단편10597 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10597 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 단편10598 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10598 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 단편10599 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10599 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 상단 러닝타임이 독립 SQL SUM(SCRG_HR)와 일치: 0분134
GET
200
http://localhost:4100/api/v1/cinematheque/movies/10349

{}

2026-10-16T18:08:29.615562+09:00일치: 실제 DB 조회 HTTP200 / 일치: 하위 SCFM_ID, SORT_SEQ/SCFM_ID 순서와 개수 일치 / 일치: 단편10589 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10589 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 단편10590 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10590 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 단편10591 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10591 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 상단 러닝타임이 독립 SQL SUM(SCRG_HR)와 일치: 0분102
GET
200
http://localhost:4100/api/v1/cinematheque/movies/9944

{}

2026-10-16T18:08:29.479642+09:00일치: 실제 DB 조회 HTTP200 / 일치: 하위 SCFM_ID, SORT_SEQ/SCFM_ID 순서와 개수 일치 / 일치: 단편10581 제목·영문명·시놉시스·영화ID·관리번호 DB 원문 일치 / 일치: 단편10581 정보 항목·공통코드명·미입력 항목 제외 일치 / 일치: 상단 러닝타임이 독립 SQL SUM(SCRG_HR)와 일치: 0분129
GET
200
http://localhost:4100/api/v1/cinematheque/movies/6206

{}

2026-10-20T16:54:27.749271+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.279

상영일정

/cinematheque/schedule

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf

API·조회 항목 2개

GET주간·월간 상영일정과 프로그램 띠 조회
/api/v1/cinematheque/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

조회/필터구조와새기획4~6페이지필드확인. 과거회차예매closed만실제표본검증. future오픈경계는이번에시간변조/DB수정으로재현하지않음. 기간밖회차노출과CMS활성코드는기존결정유지. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 4, 5, 6페이지

HTTP 조회 시각: 2026-10-20T16:54:28.028804+09:00

http://localhost:4100/api/v1/cinematheque/schedule?date=2026-08-01

조회 조건: {"date": "2026-08-01"}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "view": "week",
  "content": "film",
  "date": "2026-08-01",
  "referenceDate": "2026-10-20",
  "periodStart": "2026-07-26",
  "periodEnd": "2026-08-01",
  "periodLabel": "2026년 7월 26일 (일) ~ 2...",
  "previousDate": "2026-07-25",
  "nextDate": "2026-08-08",
  "previousEnabled": false,
  "nextEnabled": true,
  "empty": false,
  "monthWeekCount": 6,
  "previousMonthWeekCount": 5,
  "nextMonthWeekCount": 6,
  "criteria": {
    "view": "week",
    "date": "2026-08-01",
    "content": "film",
    "programId": "",
    "rating": "",
    "eventType": "",
    "englishSubtitles": false
  },
  "days": [
    {
      "date": "2026-07-26",
      "weekday": "일",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-07-27",
      "weekday": "월",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-07-28",
      "weekday": "화",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 1,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10085,
          "filmId": 10443,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "르누아르",
          "rating": "12",
          "director": "하야카와 치에",
          "year": null,
          "runtime": "120",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2799,
          "program": "6월 프로그래머의 초이스",
          "events": [],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-07-23T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-28(화) 19:00",
          "ratingLabel": "12세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-07-29",
      "weekday": "수",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-07-30",
      "weekday": "목",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-07-31",
      "weekday": "금",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-08-01",
      "weekday": "토",
      "closed": false,
      "today": false,
      "selected": true,
      "past": true,
      "outside": true,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    }
  ],
  "weeks": [
    [
      {
        "date": "2026-07-26",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-07-27",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-07-28",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 1,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10085,
            "filmId": 10443,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "르누아르",
            "rating": "12",
            "director": "하야카와 치에",
            "year": null,
            "runtime": "120",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2799,
            "program": "6월 프로그래머의 초이스",
            "events": [],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-07-23T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-28(화) 19:00",
            "ratingLabel": "12세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-07-29",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-07-30",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-07-31",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-08-01",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": true,
        "past": true,
        "outside": true,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      }
    ]
  ],
  "programBands": [
    {
      "programId": 2799,
      "title": "6월 프로그래머의 초이스",
      "startsOn": "2026-07-31",
      "endsOn": "2026-07-31"
    }
  ],
  "programBandWeeks": [
    [
      {
        "programId": 2799,
        "title": "6월 프로그래머의 초이스",
        "start": 6,
        "end": 7,
        "row": 1,
        "tone": "green",
        "href": "/cinematheque/progra..."
      }
    ]
  ],
  "filterOptions": {
    "programs": [
      {
        "value": "2799",
        "label": "6월 프로그래머의 초이스"
      }
    ],
    "ratings": [
      {
        "value": "CCP10003",
        "label": "12세이상관람가"
      },
      {
        "value": "CCP10004",
        "label": "15세이상관람가"
      },
      {
        "value": "CCP10005",
        "label": "청소년관람불가"
      }
    ],
    "events": []
  },
  "appliedFilters": []
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4페이지주간/월간view
["week"]

일정 보기 방식. week=주간, month=월간.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지주간 시작·종료periodLabel
["2026년 7월 26일 (일) ~ 2026년 8월 1일 (토)"]

조회 기간의 화면 표시 문구.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지이전 가능previousEnabled
[false]

이전 기간 이동 활성 여부. 현재 월 이전으로 이동하는지 등 서비스 규칙 반영.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지다음 가능nextEnabled
[true]

다음 기간에 조회 가능한 회차가 있는지에 따른 이동 활성 여부.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지프로그램/등급/행사 필터옵션filterOptions
[{"programs": [{"value": "2799", "label": "6월 프로그래머의 초이스"}], "ratings": [{"value": "CCP10003", "label": "12세이상관람가"}, {"value": "CCP10004", "label": "15세이상관람가"}, {"value": "CCP10005", "label": "청소년관람불가"}], "events": []}]

현재 선택 가능한 프로그램·관람등급·행사 필터 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지일별 날짜·휴관·상영수days
[[{"date": "2026-07-26", "weekday": "일", "closed": true, "today": false, "selected": false, "past": true, "outside": false, "screeningCount": 0, "reservable": false, "screenings": []}, {"date": "2026-07-27", "weekday": "월", "closed": true, "today": false, "selected": false, "past": true, "outside": false, "screeningCount": 0, "reservable": false, "screenings": []}, {"date": "2026-07-28", "weekday": "화", "closed": false, "today": false, "selected": false, "past": true, "outside": false, "screeningCount": 1, "reservable": false, "screenings": [{"screeningId": 10085, "filmId": 10443, "time": "19:00", "venue": "시네마테크KOFA 2관", "title": "르누아르", "rating": "12", "director": "하야카와 치에", "year": null, "runtime": "120", "format": null, "posterUrl": "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2025/08/28/01/pstr_20250828000000000_320331_S.jpg", "programId": 2799, "program": "6월 프로그래머의 초이스", "events": [], "englishSubtitles": true, "reservationStatus": "closed", "reservationOpensAt": "2026-07-23T11:00:00", "reservationLabel": "예매 종료", "filmHref": "/cinematheque/movies/10443", "programHref": "/cinematheque/programs/2799", "dateTimeLabel": "2026-07-28(화) 19:00", "ratingLabel": "12세이상관람가", "bookingHref": "/booking/culture/movie?id=0"}]}, {"date": "2026-07-29", "weekday": "수", "closed": false, "today": false, "selected": false, "past": true, "outside": false, "screeningCount": 0, "reservable": false, "screenings": []}, {"date": "2026-07-30", "weekday": "목", "closed": false, "today": false, "selected": false, "past": true, "outside": false, "screeningCount": 0, "reservable": false, "screenings": []}, {"date": "2026-07-31", "weekday": "금", "closed": false, "today": false, "selected": false, "past": true, "outside": false, "screeningCount": 0, "reservable": false, "screenings": []}, {"date": "2026-08-01", "weekday": "토", "closed": false, "today": false, "selected": true, "past": true, "outside": true, "screeningCount": 0, "reservable": false, "screenings": []}]]

달력에 표시할 날짜 목록. 월간은 첫·마지막 주를 채우는 이전·다음 달 날짜도 포함.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지상영시간days[].screenings[].time
["19:00"]

상영 시작시각. HH:mm.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지제목days[].screenings[].title
["르누아르"]

CMS 상영작 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지상영관days[].screenings[].venue
["시네마테크KOFA 2관"]

상영관 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지관람등급days[].screenings[].ratingLabel
["12세이상관람가"]

관람등급 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지감독days[].screenings[].director
["하야카와 치에"]

CMS 감독명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지제작연도days[].screenings[].year
[null]

CMS 제작연도 원문 문자열. FBCTN_YR. 년 접미사 없음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
4페이지러닝타임days[].screenings[].runtime
["120"]

CMS 러닝타임 원문 문자열. SCRG_HR. 분 접미사 없음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지상영매체days[].screenings[].format
[null]

회차 상영매체명을 중복 제거 후 · 로 합친 문자열. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
4페이지포스터days[].screenings[].posterUrl
["http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2025/08/28/01/pstr_20250828000000000_320331_S.jpg"]

회차 조회에서 제공하는 대표첨부 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지영어자막days[].screenings[].englishSubtitles
[true]

영어자막(CCP09002)이 제공되는 회차인지 여부.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지예매상태days[].screenings[].reservationStatus
["closed"]

예매 표시 상태. upcoming=오픈전, available=예매가능, closed=마감, unavailable=준비중. 상영 15분 전 마감과 CMS 예매상태·연계 ID 반영.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지예매오픈일시days[].screenings[].reservationOpensAt
["2026-07-23T11:00:00"]

예매 오픈 로컬 일시. CMS 값이 없으면 상영 5일 전 11시로 계산. ISO 로컬 일시, 시간대 오프셋 없음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4, 5, 6페이지주간/월간상영·회차별행사·자막·관람등급·예매상태·프로그램띠검토 범위
대표 성공 표본에 해당 값 없음

ScreeningScheduleMapper/ScreeningCmsSql: TB_PRGRM_SCSCHDL.SCRG_DT/THTR_CD/SBTLS_LANG_CD_CN/RSV_BGNG_DT/INTG_RSV_ID, TB_PRGRM_MOVIE, TB_PRGRM, 회차행사. ScheduleService 휴관일요일·월요일,기존예매마감15분전/오픈D-5일11시.

조회/필터구조와새기획4~6페이지필드확인. 과거회차예매closed만실제표본검증. future오픈경계는이번에시간변조/DB수정으로재현하지않음. 기간밖회차노출과CMS활성코드는기존결정유지. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?date=2026-08-01

{}

2026-10-20T10:34:11.209489+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음329
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?eventType=CCP09001

{}

2026-10-16T16:47:14.807007+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.98
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?rating=CCM11001

{}

2026-10-16T16:47:14.693484+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.102
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?englishSubtitles=false

{}

2026-10-16T16:47:14.552271+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.132
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?englishSubtitles=true

{}

2026-10-16T16:47:14.405599+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.134
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?date=2026-08-01

{}

2026-10-16T16:47:14.149537+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.246
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=week&date=2026-10-15

{}

2026-10-16T16:47:13.791716+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.140
GET
200
http://localhost:4100/api/v1/cinematheque/schedule

{}

2026-10-16T16:47:13.647971+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.139
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?date=2026-08-01

{}

2026-10-20T16:54:28.028804+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.377
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-06-12

{}

2026-10-20T16:54:28.405605+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.758
GET주간·월간 상영일정과 프로그램 띠 조회 · 월간
/api/v1/cinematheque/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

조회/필터구조와새기획4~6페이지필드확인. 과거회차예매closed만실제표본검증. future오픈경계는이번에시간변조/DB수정으로재현하지않음. 기간밖회차노출과CMS활성코드는기존결정유지. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(시네마테크)_v1.2.pdf · PDF 4, 5, 6페이지

HTTP 조회 시각: 2026-10-20T16:54:28.405605+09:00

http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-06-12

조회 조건: {"view": "month", "date": "2026-06-12"}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "view": "month",
  "content": "film",
  "date": "2026-06-12",
  "referenceDate": "2026-10-20",
  "periodStart": "2026-06-01",
  "periodEnd": "2026-06-30",
  "periodLabel": "2026년 6월",
  "previousDate": "2026-05-01",
  "nextDate": "2026-07-01",
  "previousEnabled": false,
  "nextEnabled": true,
  "empty": false,
  "monthWeekCount": 5,
  "previousMonthWeekCount": 6,
  "nextMonthWeekCount": 5,
  "criteria": {
    "view": "month",
    "date": "2026-06-12",
    "content": "film",
    "programId": "",
    "rating": "",
    "eventType": "",
    "englishSubtitles": false
  },
  "days": [
    {
      "date": "2026-05-31",
      "weekday": "일",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": true,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-01",
      "weekday": "월",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-02",
      "weekday": "화",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10016,
          "filmId": 10385,
          "time": "14:00",
          "venue": "시네마테크KOFA 2관",
          "title": "풀잎들",
          "rating": "15",
          "director": "홍상수",
          "year": null,
          "runtime": "66",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-28T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-02(화) 14:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10013,
          "filmId": 10384,
          "time": "16:30",
          "venue": "시네마테크KOFA 2관",
          "title": "그 후",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "92",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-28T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-02(화) 16:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10018,
          "filmId": 10382,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "당신자신과 당신의 것",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "86",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-28T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-02(화) 19:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-03",
      "weekday": "수",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-04",
      "weekday": "목",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10019,
          "filmId": 10381,
          "time": "14:30",
          "venue": "시네마테크KOFA 2관",
          "title": "클레어의 카메라",
          "rating": "15",
          "director": "홍상수",
          "year": null,
          "runtime": "68",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-30T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-04(목) 14:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10017,
          "filmId": 10383,
          "time": "16:30",
          "venue": "시네마테크KOFA 2관",
          "title": "밤의 해변에서 혼자",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "101",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-30T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-04(목) 16:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10021,
          "filmId": 10379,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "자유의 언덕",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "66",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-30T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-04(목) 19:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-05",
      "weekday": "금",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10024,
          "filmId": 10376,
          "time": "13:00",
          "venue": "시네마테크KOFA 2관",
          "title": "다른 나라에서 + 리스트",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "118",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-31T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-05(금) 13:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10020,
          "filmId": 10380,
          "time": "16:00",
          "venue": "시네마테크KOFA 2관",
          "title": "지금은맞고그때는틀리다",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "121",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-31T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-05(금) 16:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10022,
          "filmId": 10378,
          "time": "18:30",
          "venue": "시네마테크KOFA 2관",
          "title": "우리 선희",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "88",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-05-31T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-05(금) 18:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-06",
      "weekday": "토",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10027,
          "filmId": 10371,
          "time": "13:00",
          "venue": "시네마테크KOFA 2관",
          "title": "밤과 낮",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "144",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-01T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-06(토) 13:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10077,
          "filmId": 10439,
          "time": "17:30",
          "venue": "시네마테크KOFA 2관",
          "title": "춘향뎐",
          "rating": "12",
          "director": "임권택",
          "year": null,
          "runtime": "136",
          "format": null,
          "posterUrl": null,
          "programId": 2796,
          "program": "5월 프로그래머의 초이스",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-01T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-06(토) 17:30",
          "ratingLabel": "12세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-07",
      "weekday": "일",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-08",
      "weekday": "월",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-09",
      "weekday": "화",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10023,
          "filmId": 10377,
          "time": "14:00",
          "venue": "시네마테크KOFA 2관",
          "title": "누구의 딸도 아닌 해원",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "89",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-04T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-09(화) 14:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10025,
          "filmId": 10375,
          "time": "16:30",
          "venue": "시네마테크KOFA 2관",
          "title": "북촌방향",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "79",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-04T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-09(화) 16:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10073,
          "filmId": 10374,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "하하하",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "115",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-04T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-09(화) 19:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-10",
      "weekday": "수",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10072,
          "filmId": 10373,
          "time": "16:00",
          "venue": "시네마테크KOFA 2관",
          "title": "잘 알지도 못하면서",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "126",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-05T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-10(수) 16:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10071,
          "filmId": 10372,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "옥희의 영화 + 첩첩산중 ",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "112",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-05T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-10(수) 19:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-11",
      "weekday": "목",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10082,
          "filmId": 10370,
          "time": "13:30",
          "venue": "시네마테크KOFA 2관",
          "title": "해변의 여인",
          "rating": "15",
          "director": "홍상수",
          "year": null,
          "runtime": "127",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-06T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-11(목) 13:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10070,
          "filmId": 10369,
          "time": "16:30",
          "venue": "시네마테크KOFA 2관",
          "title": "극장전",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "89",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-06T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-11(목) 16:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10069,
          "filmId": 10368,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "여자는 남자의 미래다",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "87",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-06T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-11(목) 19:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-12",
      "weekday": "금",
      "closed": false,
      "today": false,
      "selected": true,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10068,
          "filmId": 10367,
          "time": "13:00",
          "venue": "시네마테크KOFA 2관",
          "title": "생활의 발견",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "115",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-07T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-12(금) 13:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10067,
          "filmId": 10366,
          "time": "16:00",
          "venue": "시네마테크KOFA 2관",
          "title": "오!수정",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "126",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-07T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-12(금) 16:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10066,
          "filmId": 10365,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "강원도의 힘",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "108",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-07T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-12(금) 19:00",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-13",
      "weekday": "토",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10011,
          "filmId": 10389,
          "time": "13:00",
          "venue": "시네마테크KOFA 1관",
          "title": "당신 얼굴 앞에서",
          "rating": "15",
          "director": "홍상수",
          "year": null,
          "runtime": "86",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-08T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-13(토) 13:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 10065,
          "filmId": 10364,
          "time": "16:30",
          "venue": "시네마테크KOFA 2관",
          "title": "돼지가 우물에 빠진 날",
          "rating": "19",
          "director": "홍상수",
          "year": null,
          "runtime": "116",
          "format": null,
          "posterUrl": null,
          "programId": 2791,
          "program": "홍상수 전작전: 인트로덕션",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-08T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-13(토) 16:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": "/booking/culture/mov..."
        }
      ]
    },
    {
      "date": "2026-06-14",
      "weekday": "일",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-15",
      "weekday": "월",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-16",
      "weekday": "화",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 42,
          "filmId": 63,
          "time": "15:00",
          "venue": "시네마테크KOFA 2관",
          "title": "절망은 없다",
          "rating": null,
          "director": "전조명",
          "year": "1968",
          "runtime": "90",
          "format": "D-Cinema(4K)",
          "posterUrl": "http://kofafilm.arch...",
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-11T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-16(화) 15:00",
          "ratingLabel": "상영등급 없음",
          "bookingHref": null
        },
        {
          "screeningId": 54,
          "filmId": 71,
          "time": "18:00",
          "venue": "시네마테크KOFA 1관",
          "title": "자이언트",
          "rating": "15",
          "director": "조지 스티븐스",
          "year": "1956",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-11T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-16(화) 18:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-17",
      "weekday": "수",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 40,
          "filmId": 61,
          "time": "11:30",
          "venue": "시네마테크KOFA 1관",
          "title": "<겨울의 길목>(1989),<뫼비우스...",
          "rating": "all",
          "director": null,
          "year": null,
          "runtime": null,
          "format": "D-Cinema(4K) · D-Cin...",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [
            "GV",
            "강연",
            "이벤트"
          ],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-12T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-17(수) 11:30",
          "ratingLabel": "전체 관람가",
          "bookingHref": null
        },
        {
          "screeningId": 66,
          "filmId": 77,
          "time": "15:30",
          "venue": "시네마테크KOFA 2관",
          "title": "영화를 만들기 위해 필요한 것은 총이...",
          "rating": "all",
          "director": "산티아고 세인",
          "year": "2026",
          "runtime": null,
          "format": "D-Cinema",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-12T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-17(수) 15:30",
          "ratingLabel": "전체 관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-18",
      "weekday": "목",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 38,
          "filmId": 59,
          "time": "14:30",
          "venue": "시네마테크KOFA 1관",
          "title": "쉬리",
          "rating": "15",
          "director": "강제규",
          "year": "1999",
          "runtime": "125",
          "format": "D-Cinema(4K)",
          "posterUrl": "http://kofafilm.arch...",
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [
            "GV"
          ],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-13T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-18(목) 14:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 60,
          "filmId": 74,
          "time": "19:00",
          "venue": "시네마테크KOFA 1관",
          "title": "네트워크",
          "rating": "15",
          "director": "시드니 루멧",
          "year": "1976",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-13T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-18(목) 19:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-19",
      "weekday": "금",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 10084,
          "filmId": 10443,
          "time": "14:00",
          "venue": "시네마테크KOFA 2관",
          "title": "르누아르",
          "rating": "12",
          "director": "하야카와 치에",
          "year": null,
          "runtime": "120",
          "format": null,
          "posterUrl": "http://kofafilm.arch...",
          "programId": 2799,
          "program": "6월 프로그래머의 초이스",
          "events": [],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-14T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-19(금) 14:00",
          "ratingLabel": "12세이상관람가",
          "bookingHref": "/booking/culture/mov..."
        },
        {
          "screeningId": 36,
          "filmId": 57,
          "time": "17:00",
          "venue": "시네마테크KOFA 1관",
          "title": "그해 겨울은 따뜻했네",
          "rating": "12",
          "director": "배창호",
          "year": "1984",
          "runtime": "121",
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [
            "GV",
            "강연"
          ],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-14T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-19(금) 17:00",
          "ratingLabel": "12세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-20",
      "weekday": "토",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 37,
          "filmId": 58,
          "time": "13:30",
          "venue": "시네마테크KOFA 1관",
          "title": "남부군",
          "rating": "12",
          "director": "정지영",
          "year": "1990",
          "runtime": "160",
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-15T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-20(토) 13:30",
          "ratingLabel": "12세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 45,
          "filmId": 66,
          "time": "17:00",
          "venue": "시네마테크KOFA 2관",
          "title": "한반도 북쪽의 절경 금강산",
          "rating": "all",
          "director": "-",
          "year": "1939",
          "runtime": "8",
          "format": "mov",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [
            "강연"
          ],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-15T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-20(토) 17:00",
          "ratingLabel": "전체 관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-21",
      "weekday": "일",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-22",
      "weekday": "월",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-23",
      "weekday": "화",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 39,
          "filmId": 60,
          "time": "15:00",
          "venue": "시네마테크KOFA 1관",
          "title": "알포인트",
          "rating": "15",
          "director": "공수창",
          "year": "2004",
          "runtime": "108",
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [
            "GV",
            "공연",
            "이벤트"
          ],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-18T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-23(화) 15:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 52,
          "filmId": 70,
          "time": "18:30",
          "venue": "시네마테크KOFA 1관",
          "title": "공포의 보수",
          "rating": "15",
          "director": "앙리 조르주 클루조",
          "year": "1953",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-18T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-23(화) 18:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-24",
      "weekday": "수",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 50,
          "filmId": 69,
          "time": "14:00",
          "venue": "시네마테크KOFA 2관",
          "title": "안개 낀 부두",
          "rating": "15",
          "director": "마르셀 카르네",
          "year": "1938",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-19T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-24(수) 14:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 35,
          "filmId": 56,
          "time": "16:30",
          "venue": "시네마테크KOFA 1관",
          "title": "비무장지대",
          "rating": "all",
          "director": "박상호",
          "year": "1965",
          "runtime": "62",
          "format": "D-Cinema(4K)",
          "posterUrl": "http://kofafilm.arch...",
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [
            "이벤트"
          ],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-19T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-24(수) 16:30",
          "ratingLabel": "전체 관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-25",
      "weekday": "목",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 1,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 16297,
          "filmId": 60,
          "time": "11:10",
          "venue": "시네마테크KOFA 1관",
          "title": "알포인트",
          "rating": "15",
          "director": "공수창",
          "year": "2004",
          "runtime": "108",
          "format": "16mm",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-20T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-25(목) 11:10",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-06-26",
      "weekday": "금",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-27",
      "weekday": "토",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-28",
      "weekday": "일",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-29",
      "weekday": "월",
      "closed": true,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 0,
      "reservable": false,
      "screenings": []
    },
    {
      "date": "2026-06-30",
      "weekday": "화",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": false,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 41,
          "filmId": 62,
          "time": "13:30",
          "venue": "시네마테크KOFA 2관",
          "title": "빙점",
          "rating": "19",
          "director": "김수용",
          "year": "1967",
          "runtime": "88",
          "format": "D-Cinema(4K)",
          "posterUrl": "http://kofafilm.arch...",
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-25T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-30(화) 13:30",
          "ratingLabel": "청소년관람불가",
          "bookingHref": null
        },
        {
          "screeningId": 58,
          "filmId": 73,
          "time": "16:00",
          "venue": "시네마테크KOFA 2관",
          "title": "완다",
          "rating": "15",
          "director": "바바라 로든",
          "year": "1970",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-25T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-30(화) 16:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 67,
          "filmId": 77,
          "time": "18:30",
          "venue": "시네마테크KOFA 2관",
          "title": "영화를 만들기 위해 필요한 것은 총이...",
          "rating": "all",
          "director": "산티아고 세인",
          "year": "2026",
          "runtime": null,
          "format": "D-Cinema",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-25T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-06-30(화) 18:30",
          "ratingLabel": "전체 관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-07-01",
      "weekday": "수",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": true,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 43,
          "filmId": 64,
          "time": "13:30",
          "venue": "시네마테크KOFA 2관",
          "title": "딸만 셋이요",
          "rating": "12",
          "director": "이성구",
          "year": "1972",
          "runtime": "90",
          "format": "D-Cinema(4K)",
          "posterUrl": "http://kofafilm.arch...",
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-26T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-01(수) 13:30",
          "ratingLabel": "12세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 44,
          "filmId": 65,
          "time": "16:00",
          "venue": "시네마테크KOFA 2관",
          "title": "쥐띠부인",
          "rating": "all",
          "director": "곽정환",
          "year": "1972",
          "runtime": "102",
          "format": "D-Cinema(4K)",
          "posterUrl": "http://kofafilm.arch...",
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-26T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-01(수) 16:00",
          "ratingLabel": "전체 관람가",
          "bookingHref": null
        },
        {
          "screeningId": 62,
          "filmId": 75,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "서커스 텐트",
          "rating": "15",
          "director": "고빈단 아라빈단",
          "year": "1978",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-26T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-01(수) 19:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-07-02",
      "weekday": "목",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": true,
      "screeningCount": 2,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 55,
          "filmId": 71,
          "time": "14:30",
          "venue": "시네마테크KOFA 1관",
          "title": "자이언트",
          "rating": "15",
          "director": "조지 스티븐스",
          "year": "1956",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-27T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-02(목) 14:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 48,
          "filmId": 68,
          "time": "19:00",
          "venue": "시네마테크KOFA 2관",
          "title": "엑스타시",
          "rating": "15",
          "director": "구스타브 마하티",
          "year": "1933",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-27T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-02(목) 19:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-07-03",
      "weekday": "금",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": true,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 46,
          "filmId": 67,
          "time": "13:30",
          "venue": "시네마테크KOFA 2관",
          "title": "세 악당",
          "rating": "15",
          "director": "존 포드",
          "year": "1926",
          "runtime": "92",
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": true,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-28T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-03(금) 13:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 63,
          "filmId": 75,
          "time": "13:30",
          "venue": "시네마테크KOFA 2관",
          "title": "서커스 텐트",
          "rating": "15",
          "director": "고빈단 아라빈단",
          "year": "1978",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-28T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-03(금) 13:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 64,
          "filmId": 76,
          "time": "16:30",
          "venue": "시네마테크KOFA 2관",
          "title": "대학입시를 거부한 소년",
          "rating": "12",
          "director": "서진량",
          "year": "1979",
          "runtime": null,
          "format": "D-Cinema",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-28T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-03(금) 16:30",
          "ratingLabel": "12세이상관람가",
          "bookingHref": null
        }
      ]
    },
    {
      "date": "2026-07-04",
      "weekday": "토",
      "closed": false,
      "today": false,
      "selected": false,
      "past": true,
      "outside": true,
      "screeningCount": 3,
      "reservable": false,
      "screenings": [
        {
          "screeningId": 56,
          "filmId": 72,
          "time": "13:00",
          "venue": "시네마테크KOFA 1관",
          "title": "동경 방랑자",
          "rating": "15",
          "director": "스즈키 세이준",
          "year": "1966",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-29T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-04(토) 13:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 51,
          "filmId": 69,
          "time": "15:30",
          "venue": "시네마테크KOFA 2관",
          "title": "안개 낀 부두",
          "rating": "15",
          "director": "마르셀 카르네",
          "year": "1938",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-29T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-04(토) 15:30",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        },
        {
          "screeningId": 61,
          "filmId": 74,
          "time": "18:00",
          "venue": "시네마테크KOFA 1관",
          "title": "네트워크",
          "rating": "15",
          "director": "시드니 루멧",
          "year": "1976",
          "runtime": null,
          "format": "D-Cinema(4K)",
          "posterUrl": null,
          "programId": 19,
          "program": "기획전 등록 테스트",
          "events": [],
          "englishSubtitles": false,
          "reservationStatus": "closed",
          "reservationOpensAt": "2026-06-29T11:00:00",
          "reservationLabel": "예매 종료",
          "filmHref": "/cinematheque/movies...",
          "programHref": "/cinematheque/progra...",
          "dateTimeLabel": "2026-07-04(토) 18:00",
          "ratingLabel": "15세이상관람가",
          "bookingHref": null
        }
      ]
    }
  ],
  "weeks": [
    [
      {
        "date": "2026-05-31",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-01",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-02",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10016,
            "filmId": 10385,
            "time": "14:00",
            "venue": "시네마테크KOFA 2관",
            "title": "풀잎들",
            "rating": "15",
            "director": "홍상수",
            "year": null,
            "runtime": "66",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-28T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-02(화) 14:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10013,
            "filmId": 10384,
            "time": "16:30",
            "venue": "시네마테크KOFA 2관",
            "title": "그 후",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "92",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-28T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-02(화) 16:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10018,
            "filmId": 10382,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "당신자신과 당신의 것",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "86",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-28T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-02(화) 19:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-03",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-04",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10019,
            "filmId": 10381,
            "time": "14:30",
            "venue": "시네마테크KOFA 2관",
            "title": "클레어의 카메라",
            "rating": "15",
            "director": "홍상수",
            "year": null,
            "runtime": "68",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-30T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-04(목) 14:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10017,
            "filmId": 10383,
            "time": "16:30",
            "venue": "시네마테크KOFA 2관",
            "title": "밤의 해변에서 혼자",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "101",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-30T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-04(목) 16:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10021,
            "filmId": 10379,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "자유의 언덕",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "66",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-30T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-04(목) 19:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-05",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10024,
            "filmId": 10376,
            "time": "13:00",
            "venue": "시네마테크KOFA 2관",
            "title": "다른 나라에서 + 리스트",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "118",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-31T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-05(금) 13:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10020,
            "filmId": 10380,
            "time": "16:00",
            "venue": "시네마테크KOFA 2관",
            "title": "지금은맞고그때는틀리다",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "121",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-31T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-05(금) 16:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10022,
            "filmId": 10378,
            "time": "18:30",
            "venue": "시네마테크KOFA 2관",
            "title": "우리 선희",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "88",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-05-31T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-05(금) 18:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-06",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10027,
            "filmId": 10371,
            "time": "13:00",
            "venue": "시네마테크KOFA 2관",
            "title": "밤과 낮",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "144",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-01T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-06(토) 13:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10077,
            "filmId": 10439,
            "time": "17:30",
            "venue": "시네마테크KOFA 2관",
            "title": "춘향뎐",
            "rating": "12",
            "director": "임권택",
            "year": null,
            "runtime": "136",
            "format": null,
            "posterUrl": null,
            "programId": 2796,
            "program": "5월 프로그래머의 초이스",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-01T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-06(토) 17:30",
            "ratingLabel": "12세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      }
    ],
    [
      {
        "date": "2026-06-07",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-08",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-09",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10023,
            "filmId": 10377,
            "time": "14:00",
            "venue": "시네마테크KOFA 2관",
            "title": "누구의 딸도 아닌 해원",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "89",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-04T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-09(화) 14:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10025,
            "filmId": 10375,
            "time": "16:30",
            "venue": "시네마테크KOFA 2관",
            "title": "북촌방향",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "79",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-04T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-09(화) 16:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10073,
            "filmId": 10374,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "하하하",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "115",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-04T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-09(화) 19:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-10",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10072,
            "filmId": 10373,
            "time": "16:00",
            "venue": "시네마테크KOFA 2관",
            "title": "잘 알지도 못하면서",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "126",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-05T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-10(수) 16:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10071,
            "filmId": 10372,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "옥희의 영화 + 첩첩산중 ",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "112",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-05T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-10(수) 19:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-11",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10082,
            "filmId": 10370,
            "time": "13:30",
            "venue": "시네마테크KOFA 2관",
            "title": "해변의 여인",
            "rating": "15",
            "director": "홍상수",
            "year": null,
            "runtime": "127",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-06T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-11(목) 13:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10070,
            "filmId": 10369,
            "time": "16:30",
            "venue": "시네마테크KOFA 2관",
            "title": "극장전",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "89",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-06T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-11(목) 16:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10069,
            "filmId": 10368,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "여자는 남자의 미래다",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "87",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-06T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-11(목) 19:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-12",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": true,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10068,
            "filmId": 10367,
            "time": "13:00",
            "venue": "시네마테크KOFA 2관",
            "title": "생활의 발견",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "115",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-07T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-12(금) 13:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10067,
            "filmId": 10366,
            "time": "16:00",
            "venue": "시네마테크KOFA 2관",
            "title": "오!수정",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "126",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-07T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-12(금) 16:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10066,
            "filmId": 10365,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "강원도의 힘",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "108",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-07T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-12(금) 19:00",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      },
      {
        "date": "2026-06-13",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10011,
            "filmId": 10389,
            "time": "13:00",
            "venue": "시네마테크KOFA 1관",
            "title": "당신 얼굴 앞에서",
            "rating": "15",
            "director": "홍상수",
            "year": null,
            "runtime": "86",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-08T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-13(토) 13:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 10065,
            "filmId": 10364,
            "time": "16:30",
            "venue": "시네마테크KOFA 2관",
            "title": "돼지가 우물에 빠진 날",
            "rating": "19",
            "director": "홍상수",
            "year": null,
            "runtime": "116",
            "format": null,
            "posterUrl": null,
            "programId": 2791,
            "program": "홍상수 전작전: 인트로덕션",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-08T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-13(토) 16:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": "/booking/culture/mov..."
          }
        ]
      }
    ],
    [
      {
        "date": "2026-06-14",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-15",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-16",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 42,
            "filmId": 63,
            "time": "15:00",
            "venue": "시네마테크KOFA 2관",
            "title": "절망은 없다",
            "rating": null,
            "director": "전조명",
            "year": "1968",
            "runtime": "90",
            "format": "D-Cinema(4K)",
            "posterUrl": "http://kofafilm.arch...",
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-11T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-16(화) 15:00",
            "ratingLabel": "상영등급 없음",
            "bookingHref": null
          },
          {
            "screeningId": 54,
            "filmId": 71,
            "time": "18:00",
            "venue": "시네마테크KOFA 1관",
            "title": "자이언트",
            "rating": "15",
            "director": "조지 스티븐스",
            "year": "1956",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-11T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-16(화) 18:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-17",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 40,
            "filmId": 61,
            "time": "11:30",
            "venue": "시네마테크KOFA 1관",
            "title": "<겨울의 길목>(1989),<뫼비우스...",
            "rating": "all",
            "director": null,
            "year": null,
            "runtime": null,
            "format": "D-Cinema(4K) · D-Cin...",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [
              "GV",
              "강연",
              "이벤트"
            ],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-12T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-17(수) 11:30",
            "ratingLabel": "전체 관람가",
            "bookingHref": null
          },
          {
            "screeningId": 66,
            "filmId": 77,
            "time": "15:30",
            "venue": "시네마테크KOFA 2관",
            "title": "영화를 만들기 위해 필요한 것은 총이...",
            "rating": "all",
            "director": "산티아고 세인",
            "year": "2026",
            "runtime": null,
            "format": "D-Cinema",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-12T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-17(수) 15:30",
            "ratingLabel": "전체 관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-18",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 38,
            "filmId": 59,
            "time": "14:30",
            "venue": "시네마테크KOFA 1관",
            "title": "쉬리",
            "rating": "15",
            "director": "강제규",
            "year": "1999",
            "runtime": "125",
            "format": "D-Cinema(4K)",
            "posterUrl": "http://kofafilm.arch...",
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [
              "GV"
            ],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-13T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-18(목) 14:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 60,
            "filmId": 74,
            "time": "19:00",
            "venue": "시네마테크KOFA 1관",
            "title": "네트워크",
            "rating": "15",
            "director": "시드니 루멧",
            "year": "1976",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-13T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-18(목) 19:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-19",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 10084,
            "filmId": 10443,
            "time": "14:00",
            "venue": "시네마테크KOFA 2관",
            "title": "르누아르",
            "rating": "12",
            "director": "하야카와 치에",
            "year": null,
            "runtime": "120",
            "format": null,
            "posterUrl": "http://kofafilm.arch...",
            "programId": 2799,
            "program": "6월 프로그래머의 초이스",
            "events": [],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-14T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-19(금) 14:00",
            "ratingLabel": "12세이상관람가",
            "bookingHref": "/booking/culture/mov..."
          },
          {
            "screeningId": 36,
            "filmId": 57,
            "time": "17:00",
            "venue": "시네마테크KOFA 1관",
            "title": "그해 겨울은 따뜻했네",
            "rating": "12",
            "director": "배창호",
            "year": "1984",
            "runtime": "121",
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [
              "GV",
              "강연"
            ],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-14T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-19(금) 17:00",
            "ratingLabel": "12세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-20",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 37,
            "filmId": 58,
            "time": "13:30",
            "venue": "시네마테크KOFA 1관",
            "title": "남부군",
            "rating": "12",
            "director": "정지영",
            "year": "1990",
            "runtime": "160",
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-15T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-20(토) 13:30",
            "ratingLabel": "12세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 45,
            "filmId": 66,
            "time": "17:00",
            "venue": "시네마테크KOFA 2관",
            "title": "한반도 북쪽의 절경 금강산",
            "rating": "all",
            "director": "-",
            "year": "1939",
            "runtime": "8",
            "format": "mov",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [
              "강연"
            ],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-15T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-20(토) 17:00",
            "ratingLabel": "전체 관람가",
            "bookingHref": null
          }
        ]
      }
    ],
    [
      {
        "date": "2026-06-21",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-22",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-23",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 39,
            "filmId": 60,
            "time": "15:00",
            "venue": "시네마테크KOFA 1관",
            "title": "알포인트",
            "rating": "15",
            "director": "공수창",
            "year": "2004",
            "runtime": "108",
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [
              "GV",
              "공연",
              "이벤트"
            ],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-18T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-23(화) 15:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 52,
            "filmId": 70,
            "time": "18:30",
            "venue": "시네마테크KOFA 1관",
            "title": "공포의 보수",
            "rating": "15",
            "director": "앙리 조르주 클루조",
            "year": "1953",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-18T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-23(화) 18:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-24",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 50,
            "filmId": 69,
            "time": "14:00",
            "venue": "시네마테크KOFA 2관",
            "title": "안개 낀 부두",
            "rating": "15",
            "director": "마르셀 카르네",
            "year": "1938",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-19T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-24(수) 14:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 35,
            "filmId": 56,
            "time": "16:30",
            "venue": "시네마테크KOFA 1관",
            "title": "비무장지대",
            "rating": "all",
            "director": "박상호",
            "year": "1965",
            "runtime": "62",
            "format": "D-Cinema(4K)",
            "posterUrl": "http://kofafilm.arch...",
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [
              "이벤트"
            ],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-19T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-24(수) 16:30",
            "ratingLabel": "전체 관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-25",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 1,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 16297,
            "filmId": 60,
            "time": "11:10",
            "venue": "시네마테크KOFA 1관",
            "title": "알포인트",
            "rating": "15",
            "director": "공수창",
            "year": "2004",
            "runtime": "108",
            "format": "16mm",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-20T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-25(목) 11:10",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-06-26",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-27",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      }
    ],
    [
      {
        "date": "2026-06-28",
        "weekday": "일",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-29",
        "weekday": "월",
        "closed": true,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 0,
        "reservable": false,
        "screenings": []
      },
      {
        "date": "2026-06-30",
        "weekday": "화",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": false,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 41,
            "filmId": 62,
            "time": "13:30",
            "venue": "시네마테크KOFA 2관",
            "title": "빙점",
            "rating": "19",
            "director": "김수용",
            "year": "1967",
            "runtime": "88",
            "format": "D-Cinema(4K)",
            "posterUrl": "http://kofafilm.arch...",
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-25T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-30(화) 13:30",
            "ratingLabel": "청소년관람불가",
            "bookingHref": null
          },
          {
            "screeningId": 58,
            "filmId": 73,
            "time": "16:00",
            "venue": "시네마테크KOFA 2관",
            "title": "완다",
            "rating": "15",
            "director": "바바라 로든",
            "year": "1970",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-25T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-30(화) 16:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 67,
            "filmId": 77,
            "time": "18:30",
            "venue": "시네마테크KOFA 2관",
            "title": "영화를 만들기 위해 필요한 것은 총이...",
            "rating": "all",
            "director": "산티아고 세인",
            "year": "2026",
            "runtime": null,
            "format": "D-Cinema",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-25T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-06-30(화) 18:30",
            "ratingLabel": "전체 관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-07-01",
        "weekday": "수",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 43,
            "filmId": 64,
            "time": "13:30",
            "venue": "시네마테크KOFA 2관",
            "title": "딸만 셋이요",
            "rating": "12",
            "director": "이성구",
            "year": "1972",
            "runtime": "90",
            "format": "D-Cinema(4K)",
            "posterUrl": "http://kofafilm.arch...",
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-26T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-01(수) 13:30",
            "ratingLabel": "12세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 44,
            "filmId": 65,
            "time": "16:00",
            "venue": "시네마테크KOFA 2관",
            "title": "쥐띠부인",
            "rating": "all",
            "director": "곽정환",
            "year": "1972",
            "runtime": "102",
            "format": "D-Cinema(4K)",
            "posterUrl": "http://kofafilm.arch...",
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-26T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-01(수) 16:00",
            "ratingLabel": "전체 관람가",
            "bookingHref": null
          },
          {
            "screeningId": 62,
            "filmId": 75,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "서커스 텐트",
            "rating": "15",
            "director": "고빈단 아라빈단",
            "year": "1978",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-26T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-01(수) 19:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-07-02",
        "weekday": "목",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 2,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 55,
            "filmId": 71,
            "time": "14:30",
            "venue": "시네마테크KOFA 1관",
            "title": "자이언트",
            "rating": "15",
            "director": "조지 스티븐스",
            "year": "1956",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-27T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-02(목) 14:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 48,
            "filmId": 68,
            "time": "19:00",
            "venue": "시네마테크KOFA 2관",
            "title": "엑스타시",
            "rating": "15",
            "director": "구스타브 마하티",
            "year": "1933",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-27T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-02(목) 19:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-07-03",
        "weekday": "금",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 46,
            "filmId": 67,
            "time": "13:30",
            "venue": "시네마테크KOFA 2관",
            "title": "세 악당",
            "rating": "15",
            "director": "존 포드",
            "year": "1926",
            "runtime": "92",
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": true,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-28T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-03(금) 13:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 63,
            "filmId": 75,
            "time": "13:30",
            "venue": "시네마테크KOFA 2관",
            "title": "서커스 텐트",
            "rating": "15",
            "director": "고빈단 아라빈단",
            "year": "1978",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-28T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-03(금) 13:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 64,
            "filmId": 76,
            "time": "16:30",
            "venue": "시네마테크KOFA 2관",
            "title": "대학입시를 거부한 소년",
            "rating": "12",
            "director": "서진량",
            "year": "1979",
            "runtime": null,
            "format": "D-Cinema",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-28T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-03(금) 16:30",
            "ratingLabel": "12세이상관람가",
            "bookingHref": null
          }
        ]
      },
      {
        "date": "2026-07-04",
        "weekday": "토",
        "closed": false,
        "today": false,
        "selected": false,
        "past": true,
        "outside": true,
        "screeningCount": 3,
        "reservable": false,
        "screenings": [
          {
            "screeningId": 56,
            "filmId": 72,
            "time": "13:00",
            "venue": "시네마테크KOFA 1관",
            "title": "동경 방랑자",
            "rating": "15",
            "director": "스즈키 세이준",
            "year": "1966",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-29T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-04(토) 13:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 51,
            "filmId": 69,
            "time": "15:30",
            "venue": "시네마테크KOFA 2관",
            "title": "안개 낀 부두",
            "rating": "15",
            "director": "마르셀 카르네",
            "year": "1938",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-29T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-04(토) 15:30",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          },
          {
            "screeningId": 61,
            "filmId": 74,
            "time": "18:00",
            "venue": "시네마테크KOFA 1관",
            "title": "네트워크",
            "rating": "15",
            "director": "시드니 루멧",
            "year": "1976",
            "runtime": null,
            "format": "D-Cinema(4K)",
            "posterUrl": null,
            "programId": 19,
            "program": "기획전 등록 테스트",
            "events": [],
            "englishSubtitles": false,
            "reservationStatus": "closed",
            "reservationOpensAt": "2026-06-29T11:00:00",
            "reservationLabel": "예매 종료",
            "filmHref": "/cinematheque/movies...",
            "programHref": "/cinematheque/progra...",
            "dateTimeLabel": "2026-07-04(토) 18:00",
            "ratingLabel": "15세이상관람가",
            "bookingHref": null
          }
        ]
      }
    ]
  ],
  "programBands": [
    {
      "programId": 2791,
      "title": "홍상수 전작전: 인트로덕션",
      "startsOn": "2026-05-02",
      "endsOn": "2026-06-13"
    },
    {
      "programId": 2796,
      "title": "5월 프로그래머의 초이스",
      "startsOn": "2026-05-05",
      "endsOn": "2026-06-06"
    },
    {
      "programId": 2799,
      "title": "6월 프로그래머의 초이스",
      "startsOn": "2026-07-31",
      "endsOn": "2026-07-31"
    },
    {
      "programId": 19,
      "title": "기획전 등록 테스트",
      "startsOn": "2026-10-15",
      "endsOn": "2026-10-31"
    }
  ],
  "programBandWeeks": [
    [
      {
        "programId": 2791,
        "title": "홍상수 전작전: 인트로덕션",
        "start": 1,
        "end": 8,
        "row": 1,
        "tone": "green",
        "href": "/cinematheque/progra..."
      },
      {
        "programId": 2796,
        "title": "5월 프로그래머의 초이스",
        "start": 1,
        "end": 8,
        "row": 2,
        "tone": "red",
        "href": "/cinematheque/progra..."
      }
    ],
    [
      {
        "programId": 2791,
        "title": "홍상수 전작전: 인트로덕션",
        "start": 1,
        "end": 8,
        "row": 1,
        "tone": "green",
        "href": "/cinematheque/progra..."
      }
    ],
    [],
    [],
    []
  ],
  "filterOptions": {
    "programs": [
      {
        "value": "2791",
        "label": "홍상수 전작전: 인트로덕션"
      },
      {
        "value": "2796",
        "label": "5월 프로그래머의 초이스"
      },
      {
        "value": "2799",
        "label": "6월 프로그래머의 초이스"
      },
      {
        "value": "19",
        "label": "기획전 등록 테스트"
      }
    ],
    "ratings": [
      {
        "value": "CCP10003",
        "label": "12세이상관람가"
      },
      {
        "value": "CCP10004",
        "label": "15세이상관람가"
      },
      {
        "value": "CCP10005",
        "label": "청소년관람불가"
      }
    ],
    "events": [
      {
        "value": "CCP04001",
        "label": "GV"
      },
      {
        "value": "CCP04002",
        "label": "강연"
      },
      {
        "value": "CCP04003",
        "label": "공연"
      },
      {
        "value": "CCP04004",
        "label": "이벤트"
      }
    ]
  },
  "appliedFilters": []
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지월간 프로그램 밴드programBands
[[{"programId": 2791, "title": "홍상수 전작전: 인트로덕션", "startsOn": "2026-05-02", "endsOn": "2026-06-13"}, {"programId": 2796, "title": "5월 프로그래머의 초이스", "startsOn": "2026-05-05", "endsOn": "2026-06-06"}, {"programId": 2799, "title": "6월 프로그래머의 초이스", "startsOn": "2026-07-31", "endsOn": "2026-07-31"}, {"programId": 19, "title": "기획전 등록 테스트", "startsOn": "2026-10-15", "endsOn": "2026-10-31"}]]

조회 기간에 표시할 프로그램 기간 막대의 원본 정보.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지월간 표시월·이전/다음월periodLabel / previousDate / nextDate
["2026년 6월", "2026-05-01", "2026-07-01"]

조회 기간의 화면 표시 문구. / 이전 주·월 이동에 사용할 date 값. / 다음 주·월 이동에 사용할 date 값.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지월간 달력 날짜·휴관days[].date / days[].closed
["2026-05-31", "2026-06-01", "2026-06-02", "2026-06-03", "2026-06-04", "2026-06-05", "2026-06-06", "2026-06-07", "2026-06-08", "2026-06-09", "2026-06-10", "2026-06-11", "2026-06-12", "2026-06-13", "2026-06-14", "2026-06-15", "2026-06-16", "2026-06-17", "2026-06-18", "2026-06-19", "2026-06-20", "2026-06-21", "2026-06-22", "2026-06-23", "2026-06-24", "2026-06-25", "2026-06-26", "2026-06-27", "2026-06-28", "2026-06-29", "2026-06-30", "2026-07-01", "2026-07-02", "2026-07-03", "2026-07-04", true, true, false, false, false, false, false, true, true, false, false, false, false, false, true, true, false, false, false, false, false, true, true, false, false, false, false, false, true, true, false, false, false, false, false]

달력 날짜. yyyy-MM-dd. / 서비스의 휴관일 표시 규칙에 따른 값. 현재 일요일·월요일이면 true. 회차 존재 여부와 별개.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지월간 상영일시·제목·상영관days[].screenings[].time / days[].screenings[].title / days[].screenings[].venue
["14:00", "16:30", "19:00", "14:30", "16:30", "19:00", "13:00", "16:00", "18:30", "13:00", "17:30", "14:00", "16:30", "19:00", "16:00", "19:00", "13:30", "16:30", "19:00", "13:00", "16:00", "19:00", "13:00", "16:30", "15:00", "18:00", "11:30", "15:30", "14:30", "19:00", "14:00", "17:00", "13:30", "17:00", "15:00", "18:30", "14:00", "16:30", "11:10", "13:30", "16:00", "18:30", "13:30", "16:00", "19:00", "14:30", "19:00", "13:30", "13:30", "16:30", "13:00", "15:30", "18:00", "풀잎들", "그 후", "당신자신과 당신의 것", "클레어의 카메라", "밤의 해변에서 혼자", "자유의 언덕", "다른 나라에서 + 리스트", "지금은맞고그때는틀리다", "우리 선희", "밤과 낮", "춘향뎐", "누구의 딸도 아닌 해원", "북촌방향", "하하하", "잘 알지도 못하면서", "옥희의 영화 + 첩첩산중 ", "해변의 여인", "극장전", "여자는 남자의 미래다", "생활의 발견", "오!수정", "강원도의 힘", "당신 얼굴 앞에서", "돼지가 우물에 빠진 날", "절망은 없다", "자이언트", "<겨울의 길목>(1989),<뫼비우스의 딸>(1981),<동시에>(1998),<부속품>(1986),<지리멸렬>(1994)", "영화를 만들기 위해 필요한 것은 총이 전부다", "쉬리", "네트워크", "르누아르", "그해 겨울은 따뜻했네", "남부군", "한반도 북쪽의 절경 금강산", "알포인트", "공포의 보수", "안개 낀 부두", "비무장지대", "알포인트", "빙점", "완다", "영화를 만들기 위해 필요한 것은 총이 전부다", "딸만 셋이요", "쥐띠부인", "서커스 텐트", "자이언트", "엑스타시", "세 악당", "서커스 텐트", "대학입시를 거부한 소년", "동경 방랑자", "안개 낀 부두", "네트워크", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 2관", "시네마테크KOFA 1관", "시네마테크KOFA 2관", "시네마테크KOFA 1관"]

상영 시작시각. HH:mm. / CMS 상영작 제목. / 상영관 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지월간 예매·영어자막·부대행사days[].screenings[].reservationStatus / days[].screenings[].englishSubtitles / days[].screenings[].events
["closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", "closed", false, false, false, false, false, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, false, false, false, true, true, true, false, false, false, false, true, true, false, false, false, false, false, false, false, false, true, false, false, false, false, false, [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], ["GV", "강연", "이벤트"], [], ["GV"], [], [], ["GV", "강연"], [], ["강연"], ["GV", "공연", "이벤트"], [], [], ["이벤트"], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []]

예매 표시 상태. upcoming=오픈전, available=예매가능, closed=마감, unavailable=준비중. 상영 15분 전 마감과 CMS 예매상태·연계 ID 반영. / 영어자막(CCP09002)이 제공되는 회차인지 여부. / 행사 유형 공통코드명 목록. 행사 등록순 기준 중복 제거.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4, 5, 6페이지주간/월간상영·회차별행사·자막·관람등급·예매상태·프로그램띠검토 범위
대표 성공 표본에 해당 값 없음

ScreeningScheduleMapper/ScreeningCmsSql: TB_PRGRM_SCSCHDL.SCRG_DT/THTR_CD/SBTLS_LANG_CD_CN/RSV_BGNG_DT/INTG_RSV_ID, TB_PRGRM_MOVIE, TB_PRGRM, 회차행사. ScheduleService 휴관일요일·월요일,기존예매마감15분전/오픈D-5일11시.

조회/필터구조와새기획4~6페이지필드확인. 과거회차예매closed만실제표본검증. future오픈경계는이번에시간변조/DB수정으로재현하지않음. 기간밖회차노출과CMS활성코드는기존결정유지. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 13건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-06-12

{}

2026-10-20T10:34:11.331639+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음588
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-06-12

{}

2026-10-16T16:47:21.128968+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.442
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&content=program&date=2026-08-20

{}

2026-10-16T16:47:17.248113+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.319
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20&englishSubtitles=false

{}

2026-10-16T16:47:16.884550+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.352
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20&englishSubtitles=true

{}

2026-10-16T16:47:16.641295+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.232
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20&programId=2800

{}

2026-10-16T16:47:16.368108+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.261
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20&rating=CCP10005

{}

2026-10-16T16:47:16.214261+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.142
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20&rating=CCP10004

{}

2026-10-16T16:47:16.072697+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.129
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20&rating=CCP10003

{}

2026-10-16T16:47:15.885368+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.180
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-08-20

{}

2026-10-16T16:47:15.550102+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.325
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-10-15

{}

2026-10-16T16:47:13.940169+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.198
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?date=2026-08-01

{}

2026-10-20T16:54:28.028804+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.377
GET
200
http://localhost:4100/api/v1/cinematheque/schedule?view=month&date=2026-06-12

{}

2026-10-20T16:54:28.405605+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.758

영상도서관›자료검색

3개 페이지 · 3개 항목
영상도서관 자료검색의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

비디오 자료 검색

/library/search/video

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf

API·조회 항목 1개

GET비디오·시나리오·문헌자료 검색
/api/v1/library/materials
HTTP 200 · JSON확인 항목 1개최신 업데이트: 2026-10-27 17:19:48펼치기접기
확인필요

CIP02 접속 IP 필터 적용: 영상도서관·분원은 방문열람(DT009001) 포함, 관외는 공개 소장본 또는 유효 공개 VOD가 있는 자료만 조회. 전체 건수·유형별 건수·페이징·소장처 동일 조건. 실제 SVC DB HTTP 검증 완료. 이 표본은 관외 응답이며 관내 전용 자료 원문·목록을 정적 예시에 노출하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf · PDF 4, 5, 6페이지

HTTP 조회 시각: 2026-10-27T17:17:38.904558+09:00

http://localhost:4100/api/v1/library/materials?type=VD&page=1

조회 조건: {"type": "VD", "page": 1}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 1210295,
  "type": "VIDEO",
  "title": "글로리아 벨",
  "productionDate": "2019****",
  "runtime": null,
  "mediaFormat": "DVD",
  "materialKind": "본편",
  "creators": "소니픽쳐스(제조사),마루기획(주)(비...",
  "imageUrl": null,
  "holding": "PT010009 [22331]",
  "directors": "세바스찬 렐리오",
  "author": null,
  "publisher": null,
  "rating": null,
  "kmdbPath": "/db/videos/1210295"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지VIDEO 제목items[].title
["글로리아 벨", "귀여운 여도적"]

자료명. TB_DATA.DATA_TTL.

제공
6페이지VIDEO 관람등급items[].rating
[null, null]

자료 관람등급의 TB_COM_CD 코드명.

응답 키는 존재하지만 조회한 DB 표본의 값이 비어 있습니다. 미매핑으로 단정하지 않습니다.

값 없음
6페이지VIDEO 감독items[].directors
["세바스찬 렐리오", "끌로드 밀러"]

연결 영화의 공개 감독 크레딧명 목록을 쉼표로 합친 문자열. 없으면 null.

제공
6페이지VIDEO 제작연도items[].productionDate
["2019****", "2022****"]

제작일자. PRDCTN_YMD 원문 문자열. 불완전 날짜를 보정하지 않음.

제공
6페이지VIDEO 러닝타임items[].runtime
[null, null]

재생시간. REPY_HR 원문 문자열. 숫자 변환·단위 추가 없이 전달.

응답 키는 존재하지만 조회한 DB 표본의 값이 비어 있습니다. 미매핑으로 단정하지 않습니다.

값 없음
6페이지VIDEO 매체규격items[].mediaFormat
["DVD", "DVD"]

매체유형 내용. MED_TYPE_CN.

제공
6페이지VIDEO 소장처/배가정보items[].holding
["PT010009 [22331]", "PT010009 [26303]"]

공개 가능한 영상도서관 소장 위치 코드(PT010009)와 선반번호를 합친 문자열. 위치 표시명이 아님.

제공
6페이지VIDEO 대표이미지items[].imageUrl
[null, null]

AMS 중형→소형→원본 대표 이미지 경로를 KMDb 절대 URL로 변환. 지원 경로가 없으면 null.

응답 키는 존재하지만 조회한 DB 표본의 값이 비어 있습니다. 미매핑으로 단정하지 않습니다.

값 없음
6페이지VIDEO KMDb 상세 식별경로items[].kmdbPath
["/db/videos/1210295", "/db/videos/1212851"]

KMDb 자료 상세의 상대 경로. /db/videos/{DATA_ID}, /db/scenarios/{DATA_ID}, /db/documents/{DATA_ID}.

제공
4페이지VIDEO 전체건수/10개totalElements / size
{"totalElements": 2, "size": 10, "page": 1}

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

제공
6페이지소장처 사용자 표시명items[].holding
["PT010009 [22331]", "PT010009 [26303]"]

공개 가능한 영상도서관 소장 위치 코드(PT010009)와 선반번호를 합친 문자열. 위치 표시명이 아님.

PDF6페이지: 배가번호 제공, 소장처 한글명 없음

확인필요
4, 5, 6페이지비디오 자료명/연결영화명·감독·출연 AND 검색, 정확도/제목/연도 정렬, 관람등급·러닝타임·매체규격·소장처검토 범위
2026-10-27 CIP02 SVC 실제 DB: 일반 로컬 HTTP34건, 영상도서관·세 분원·관외 서버주소 fixture HTTP42건. 관내 자료 표본은 이 공개 현황에 게시하지 않음.

LibraryCatalogService: AMS TB_DATA.DATA_TTL/PRDCTN_YMD/REPY_HR/MED_TYPE_CN, TB_INFO_DATA_REL+TB_MOVIE, TB_MOVIE_CRD, TB_PSSN_DATA의 소장처·배가정보. 비공개 DT009004 제외.

자료명/검색·정렬은 구현. 실제1120356 runtime/rating/imageUrl=null은 원천 표본 없음. holding=PT010009 [12422]는 장소 코드 원문으로 반환하므로 소장처 명칭 제공 또는 프론트 변환 범위 확인. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

확인필요
추가 요구사항 · PMS #806 / 사용자 확정페이지IP별 자료 목록·건수items / totalElements / materialTypes[].count
{"outside": {"VD": 2, "SC": 0, "DC": 14822}, "libraryAndBranches": {"VD": 22, "SC": 8079, "DC": 30624}}

SVC TB_COM_CD(CIP02) ADD_CN 및 TB_PSSN_DATA.RLS_SE_CD, 공개 비디오 예외는 TB_DATA_SRVC의 공개·기간·위치 코드. 같은 자료의 공개 소장본이 있으면 유지.

일반 서버는 getRemoteAddr만 사용. X-Forwarded-For·클라이언트 관내 파라미터는 권한을 부여하지 않음. 30초 코드 캐시; 실패 시 관외. 허용 IP HTTP는 테스트 전용 서버주소 fixture이며 실기 네트워크 연결을 가장하지 않음.

제공
검색·필터 등 실제 HTTP 요청 23건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=2

{}

2026-10-20T10:34:11.538264+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음684
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=2

{}

2026-10-16T17:01:55.068324+09:00일치: 응답 페이징 번호가 요청과 일치471
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=ZZZNORESULT

{}

2026-10-16T17:01:53.802511+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1260
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%98%81%ED%99%94&performer=%EA%B9%80

{}

2026-10-16T17:01:51.176443+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.2615
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&performer=%EA%B9%80

{}

2026-10-16T17:01:49.703460+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1462
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%98%81%ED%99%94&director=%EA%B9%80

{}

2026-10-16T17:01:48.380358+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1318
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&director=%EA%B9%80

{}

2026-10-16T17:01:47.210279+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1160
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%98%81%ED%99%94&sort=year

{}

2026-10-16T17:01:46.171013+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1026
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%98%81%ED%99%94&sort=title

{}

2026-10-16T17:01:44.999880+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1159
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%98%81%ED%99%94&sort=relevance

{}

2026-10-16T17:01:43.700585+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1289
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO

{}

2026-10-16T17:01:42.861751+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.832
GET
200
http://localhost:4100/api/v1/library/materials?type=literature&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-20T16:54:23.899374+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.1008
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=2

{}

2026-10-20T16:54:29.163576+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.527
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=2

{}

2026-10-20T16:54:29.690773+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.433
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=2

{}

2026-10-20T16:54:30.123912+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.502
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=1

{}

2026-10-20T16:54:31.268759+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.449
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=1

{}

2026-10-20T16:54:31.717496+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.439
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=1

{}

2026-10-20T16:54:32.156690+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.452
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%82%AC%EB%9E%91&director=%EA%B9%80&sort=year

{}

2026-10-20T16:54:32.608447+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.4207
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&writer=%EA%B9%80

{}

2026-10-20T16:54:36.815996+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.783
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&author=%EA%B9%80

{}

2026-10-20T16:54:37.598819+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.665
GET
200
http://localhost:4100/api/v1/library/materials?type=VD&page=1

{}

2026-10-27T17:17:38.904558+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.798
GET
200
http://localhost:4100/api/v1/library/materials?type=VD&page=2

{}

2026-10-27T17:17:39.702767+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.449

시나리오 자료 검색

/library/search/scenario

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf

API·조회 항목 1개

GET비디오·시나리오·문헌자료 검색
/api/v1/library/materials
HTTP 200 · JSON확인 항목 1개최신 업데이트: 2026-10-27 17:19:48펼치기접기
확인필요

CIP02 접속 IP 필터 적용: 영상도서관·분원은 방문열람(DT009001) 포함, 관외는 공개 소장본 또는 유효 공개 VOD가 있는 자료만 조회. 전체 건수·유형별 건수·페이징·소장처 동일 조건. 실제 SVC DB HTTP 검증 완료. 이 표본은 관외 응답이며 관내 전용 자료 원문·목록을 정적 예시에 노출하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf · PDF 4, 5, 6페이지

HTTP 조회 시각: 2026-10-27T17:17:40.152102+09:00

http://localhost:4100/api/v1/library/materials?type=SC&page=1

조회 조건: {"type": "SC", "page": 1}

조회 결과 JSON · 객체 1건

조회 가능한 목록이 비어 있어 대표 객체 없음 · 문자열 값은 최대 20자 표시
null
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지SCENARIO 제목items[].title
[]

자료명. TB_DATA.DATA_TTL.

제공
6페이지SCENARIO 감독items[].directors
[]

연결 영화의 공개 감독 크레딧명 목록을 쉼표로 합친 문자열. 없으면 null.

제공
6페이지SCENARIO 제작연도items[].productionDate
[]

제작일자. PRDCTN_YMD 원문 문자열. 불완전 날짜를 보정하지 않음.

응답 키는 존재하지만 조회한 DB 표본의 값이 비어 있습니다. 미매핑으로 단정하지 않습니다.

값 없음
6페이지SCENARIO 제작사 후보 원문items[].creators
[]

자료 생산자 내용. PRDCR_CN. directors·author와 별도 항목.

조건 type=SCENARIO

확인필요
6페이지SCENARIO 매체유형items[].mediaFormat
[]

매체유형 내용. MED_TYPE_CN.

제공
6페이지SCENARIO 대표이미지items[].imageUrl
[]

AMS 중형→소형→원본 대표 이미지 경로를 KMDb 절대 URL로 변환. 지원 경로가 없으면 null.

응답 키는 존재하지만 조회한 DB 표본의 값이 비어 있습니다. 미매핑으로 단정하지 않습니다.

값 없음
4페이지SCENARIO 전체건수/10개totalElements / size
{"totalElements": 0, "size": 10, "page": 1}

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

제공
6페이지시나리오 제작사items[].creators
[]

자료 생산자 내용. PRDCR_CN. directors·author와 별도 항목.

PDF6페이지: 제작사 전용 필드 없음. creators를 제작사로 확정 매핑할 근거 미확정

확인필요
4, 5, 6페이지시나리오 자료명/영화명·감독·각본/각색 검색, 제목·제작연도·제작사·매체유형검토 범위
2026-10-27 CIP02 SVC 실제 DB: 일반 로컬 HTTP34건, 영상도서관·세 분원·관외 서버주소 fixture HTTP42건. 관내 자료 표본은 이 공개 현황에 게시하지 않음.

AMS TB_DATA.PRDCR_CN을 creators로 그대로 전달. 실제1214138 creators=김유준(감독),1251375는 각본·감독·제작사 혼합. 감독/각본/각색 검색은 TB_MOVIE_CRD.

creators 전체를 제작사로 표시할 근거 없음. PDF6의 제작사 전용 응답 값과 역할별 추출 기준 확인. null 데이터는 임의 생성하지 않음.

확인필요
추가 요구사항 · PMS #806 / 사용자 확정페이지IP별 자료 목록·건수items / totalElements / materialTypes[].count
{"outside": {"VD": 2, "SC": 0, "DC": 14822}, "libraryAndBranches": {"VD": 22, "SC": 8079, "DC": 30624}}

SVC TB_COM_CD(CIP02) ADD_CN 및 TB_PSSN_DATA.RLS_SE_CD, 공개 비디오 예외는 TB_DATA_SRVC의 공개·기간·위치 코드. 같은 자료의 공개 소장본이 있으면 유지.

일반 서버는 getRemoteAddr만 사용. X-Forwarded-For·클라이언트 관내 파라미터는 권한을 부여하지 않음. 30초 코드 캐시; 실패 시 관외. 허용 IP HTTP는 테스트 전용 서버주소 fixture이며 실기 네트워크 연결을 가장하지 않음.

제공
검색·필터 등 실제 HTTP 요청 24건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=2

{}

2026-10-16T17:02:06.378433+09:00일치: 응답 페이징 번호가 요청과 일치468
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&title=ZZZNORESULT

{}

2026-10-16T17:02:04.900798+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1467
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&title=%EC%98%81%ED%99%94&writer=%EA%B9%80

{}

2026-10-16T17:02:03.893988+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.995
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&writer=%EA%B9%80

{}

2026-10-16T17:02:03.093629+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.791
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&title=%EC%98%81%ED%99%94&director=%EA%B9%80

{}

2026-10-16T17:02:01.723424+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1362
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&director=%EA%B9%80

{}

2026-10-16T17:02:00.810769+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.901
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&title=%EC%98%81%ED%99%94&sort=year

{}

2026-10-16T17:01:59.185234+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1615
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&title=%EC%98%81%ED%99%94&sort=title

{}

2026-10-16T17:01:57.628204+09:00미검증: Oracle NLSSORT KOREAN_M 정렬 SQL 확인. Python 유니코드 순서와 달라 문자열 단순 비교로 검증하지 않음.1547
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&title=%EC%98%81%ED%99%94&sort=relevance

{}

2026-10-16T17:01:56.026701+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1595
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO

{}

2026-10-16T17:01:55.548269+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.468
GET
200
http://localhost:4100/api/v1/library/materials?type=literature&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-20T16:54:23.899374+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.1008
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=2

{}

2026-10-20T16:54:29.163576+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.527
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=2

{}

2026-10-20T16:54:29.690773+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.433
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=2

{}

2026-10-20T16:54:30.123912+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.502
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=1

{}

2026-10-20T16:54:31.268759+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.449
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=1

{}

2026-10-20T16:54:31.717496+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.439
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=1

{}

2026-10-20T16:54:32.156690+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.452
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%82%AC%EB%9E%91&director=%EA%B9%80&sort=year

{}

2026-10-20T16:54:32.608447+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.4207
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&writer=%EA%B9%80

{}

2026-10-20T16:54:36.815996+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.783
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&author=%EA%B9%80

{}

2026-10-20T16:54:37.598819+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.665
GET
200
http://localhost:4100/api/v1/library/materials?type=SC&page=1

{}

2026-10-27T17:17:40.152102+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.275
GET
200
http://localhost:4100/api/v1/library/materials?type=SC&page=2

{}

2026-10-27T17:17:40.427082+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.266
GET
200
http://localhost:4100/api/v1/library/materials?type=SC&visitAccess=1&internalLibraryAccess=true

{X-Forwarded-For=123.140.196.56}

2026-10-27T17:17:42.316223+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.249
GET
200
http://localhost:4100/api/v1/library/materials?type=SC&visitAccess=1&internalLibraryAccess=true

{Forwarded=for=123.140.196.56}

2026-10-27T17:17:42.564962+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.241

문헌자료 검색

/library/search/literature

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf

API·조회 항목 1개

GET비디오·시나리오·문헌자료 검색
/api/v1/library/materials
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-27 17:19:48펼치기접기
완료

CIP02 접속 IP 필터 적용: 영상도서관·분원은 방문열람(DT009001) 포함, 관외는 공개 소장본 또는 유효 공개 VOD가 있는 자료만 조회. 전체 건수·유형별 건수·페이징·소장처 동일 조건. 실제 SVC DB HTTP 검증 완료. 이 표본은 관외 응답이며 관내 전용 자료 원문·목록을 정적 예시에 노출하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf · PDF 4, 5, 6페이지

HTTP 조회 시각: 2026-10-27T17:17:40.693498+09:00

http://localhost:4100/api/v1/library/materials?type=DC&page=1

조회 조건: {"type": "DC", "page": 1}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 57092,
  "type": "LITERATURE",
  "title": "CINEMA 4D R18 1부",
  "productionDate": "2017****",
  "runtime": null,
  "mediaFormat": "도서",
  "materialKind": "연구기술",
  "creators": "CgLover(저자),Nstart(발...",
  "imageUrl": null,
  "holding": "PT010009 [583/Q7(별치)...",
  "directors": null,
  "author": "CgLover",
  "publisher": "Nstart",
  "rating": null,
  "kmdbPath": "/db/documents/57092"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지LITERATURE 제목items[].title
["CINEMA 4D R18 1부", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 ", "NeGA / 네가 "]

자료명. TB_DATA.DATA_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지LITERATURE 저자items[].author
["CgLover", null, null, null, null, null, null, null, null, null]

자료 생산자 중 역할이 저자인 이름들을 쉼표로 합친 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지LITERATURE 발행연도items[].productionDate
["2017****", "19980701", "19980801", "19980901", "19981001", "19981101", "19981201", "19990101", "19990201", "19990301"]

제작일자. PRDCTN_YMD 원문 문자열. 불완전 날짜를 보정하지 않음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지LITERATURE 출판사items[].publisher
["Nstart", null, null, null, null, null, null, null, null, null]

자료 생산자 중 역할이 발행처인 이름들을 쉼표로 합친 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지LITERATURE 대표이미지items[].imageUrl
[null, null, null, null, null, null, null, null, null, null]

AMS 중형→소형→원본 대표 이미지 경로를 KMDb 절대 URL로 변환. 지원 경로가 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
4페이지LITERATURE 전체건수/10개totalElements / size
{"totalElements": 14822, "size": 10, "page": 1}

현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4, 5, 6페이지문헌자료명·저자 검색, 발행연도·출판사·10건 페이징검토 범위
2026-10-27 CIP02 SVC 실제 DB: 일반 로컬 HTTP34건, 영상도서관·세 분원·관외 서버주소 fixture HTTP42건. 관내 자료 표본은 이 공개 현황에 게시하지 않음.

AMS TB_DATA.DATA_TTL/PRDCTN_YMD, TB_DATA_PRDCR ROLE_EXPLN=저자/발행처. 영화 제목 검색은 문헌에 확장하지 않음. title=영화/author=김 AND 조회43790 확인.

자료명·저자 AND 검색, 세 정렬, 빈검색·page2 응답 확인. 일부 author/imageUrl null은 키 누락이 아닌 원천 값 없음. 이미지 기본 표시는 프론트 담당.

제공
추가 요구사항 · PMS #806 / 사용자 확정페이지IP별 자료 목록·건수items / totalElements / materialTypes[].count
{"outside": {"VD": 2, "SC": 0, "DC": 14822}, "libraryAndBranches": {"VD": 22, "SC": 8079, "DC": 30624}}

SVC TB_COM_CD(CIP02) ADD_CN 및 TB_PSSN_DATA.RLS_SE_CD, 공개 비디오 예외는 TB_DATA_SRVC의 공개·기간·위치 코드. 같은 자료의 공개 소장본이 있으면 유지.

일반 서버는 getRemoteAddr만 사용. X-Forwarded-For·클라이언트 관내 파라미터는 권한을 부여하지 않음. 30초 코드 캐시; 실패 시 관외. 허용 IP HTTP는 테스트 전용 서버주소 fixture이며 실기 네트워크 연결을 가장하지 않음.

제공
검색·필터 등 실제 HTTP 요청 20건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=2

{}

2026-10-16T17:02:13.072866+09:00일치: 응답 페이징 번호가 요청과 일치618
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&title=ZZZNORESULT

{}

2026-10-16T17:02:12.356174+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.705
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&title=%EC%98%81%ED%99%94&author=%EA%B9%80

{}

2026-10-16T17:02:11.968378+09:00일치: 저자 검색어가 실제 author에 포함381
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&author=%EA%B9%80

{}

2026-10-16T17:02:10.875863+09:00일치: 저자 검색어가 실제 author에 포함1081
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&title=%EC%98%81%ED%99%94&sort=year

{}

2026-10-16T17:02:09.695670+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1173
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&title=%EC%98%81%ED%99%94&sort=title

{}

2026-10-16T17:02:08.517227+09:00미검증: Oracle NLSSORT KOREAN_M 정렬 SQL 확인. Python 유니코드 순서와 달라 문자열 단순 비교로 검증하지 않음.1174
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&title=%EC%98%81%ED%99%94&sort=relevance

{}

2026-10-16T17:02:07.353048+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.1159
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE

{}

2026-10-16T17:02:06.852035+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.494
GET
200
http://localhost:4100/api/v1/library/materials?type=literature&title=%EC%98%81%ED%99%94&page=1

{}

2026-10-20T16:54:23.899374+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.1008
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=2

{}

2026-10-20T16:54:29.163576+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.527
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=2

{}

2026-10-20T16:54:29.690773+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.433
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=2

{}

2026-10-20T16:54:30.123912+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.502
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&page=1

{}

2026-10-20T16:54:31.268759+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.449
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&page=1

{}

2026-10-20T16:54:31.717496+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.439
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&page=1

{}

2026-10-20T16:54:32.156690+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.452
GET
200
http://localhost:4100/api/v1/library/materials?type=VIDEO&title=%EC%82%AC%EB%9E%91&director=%EA%B9%80&sort=year

{}

2026-10-20T16:54:32.608447+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.4207
GET
200
http://localhost:4100/api/v1/library/materials?type=SCENARIO&writer=%EA%B9%80

{}

2026-10-20T16:54:36.815996+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.783
GET
200
http://localhost:4100/api/v1/library/materials?type=LITERATURE&author=%EA%B9%80

{}

2026-10-20T16:54:37.598819+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.665
GET
200
http://localhost:4100/api/v1/library/materials?type=DC&page=1

{}

2026-10-27T17:17:40.693498+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.940
GET
200
http://localhost:4100/api/v1/library/materials?type=DC&page=2

{}

2026-10-27T17:17:41.633332+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.683

영상도서관›테마컬렉션

2개 페이지 · 3개 항목
영상도서관 테마컬렉션의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

테마컬렉션 목록

/library/collection/theme

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf

API·조회 항목 1개

GET테마컬렉션 목록 조회
/api/v1/library/theme-collections
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

목록과 페이지2 확인. 배너 null은 실제 표본 값 없음. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다. 현재 공개 조건에 맞는 SVC 컬렉션은 4건이며 기존 AMS 직접 조회의 6건과 다릅니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-20T16:54:30.625589+09:00

http://localhost:4100/api/v1/library/theme-collections

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 25,
  "title": "2025년 영상도서관 신착 비디오",
  "descriptionHtml": "영상도서관에 새로 들어 온 비디오<b...",
  "bannerImageUrl": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지제목items[].title
["2025년 영상도서관 신착 비디오", "기록영상 컬렉션", "독립예술영화 컬렉션", "크라이테리언 컬렉션"]

테마컬렉션명. CLLCTN_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지설명items[].descriptionHtml
["영상도서관에 새로 들어 온 비디오<br>\r\n최신 영화부터 깊이 있는 전문 자료까지! 영화 애호가와 연구자들을 위한 다양한 자료를 소개합니다.", "영상도서관에서만 볼 수 있는 기록영상<br>\r\nKMDb 기록영상 컬렉션에 속하지만 활용 조건 등의 사유로 온라인 공개가 제한되는 기록영상들을 영상도서관에 방문하여 DVD/VOD로 열람할 수 있습니다.<br>\r\n<br>\r\n<strong>▶ 1950년 이전 조선, 한국 관련 기록영상컬렉션</strong><br>\r\n대한제국기에서 1950년 이전까지 한국을 촬영했거나 한국과 관련된 주제를 담은 기록영상들입니다.<br>그 중, 고베 플래닛필름아카이브 컬렉션은 다음 조건에 따라 열람이 허용됩니다.<br>\r\n<br>\r\n&nbsp;&nbsp;&nbsp;<u># 고베 플래닛필름아카이브 컬렉션</u><br>\r\n&nbsp;&nbsp;&nbsp;한국영상자료원과 고려대학교 한국사연구소가 공동으로 수집한 한국 근현대사 관련 자료<br>\r\n&nbsp;&nbsp;&nbsp;※ 자료 수집 조건에 따라 연구 목적의 열람만 허용됩니다.<br>\r\n&nbsp;&nbsp;&nbsp;※ 자료 열람 신청서 작성 후 열람 가능하오니 방문 전 문의 바랍니다.<br>\r\n<br>\r\n<strong>▶ 미국 NA II 기록영상 컬렉션 (1)</strong><br>\r\n2022년 한국영상자료원이 미국 National Archives 2관에서 수집한 한국 관련 기록영상으로서, 대부분 6.25전쟁 발발 시점부터 1950년대 중반까지 한반도 지역에서 촬영된 기록영상들입니다.", "색다른 시선과 독특한 감성을 담은 국내외 독립예술영화<br>\r\n영상도서관에서 개성 넘치는 작품들을 만나보세요.<br>\r\n<br>\r\n※ 독립예술영화 인정은 영화진흥위원회 심사 기준에 따릅니다.", "유서 깊은 고전영화와 예술영화를 만나는 시간<br>\r\n감독 해설, 인터뷰 등 풍부한 서플먼트(supplement)가 매력인 크라이테리언 컬렉션(The Criterion Collection)을 소개합니다.<br>\r\n영상도서관에서 작품이 깊이를 경험해보세요.<br>\r\n<br>\r\n\r\n※ 상세 구분은 비디오(디스크) 제조 연도를 기준으로 합니다."]

컬렉션 소개 내용. CLLCTN_EXPLN 원문 HTML.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지배너items[].bannerImageUrl
[null, null, null, null]

컬렉션 대표 이미지 절대 URL. 대형→중형→원본 경로 우선. 지원하는 원천 경로가 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지5개 페이징size
[5]

한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지배너·제목·설명·5건 페이징검토 범위
대표 성공 표본에 해당 값 없음

AMS TB_CLLCTN.CLLCTN_ID/CLLCTN_NM/CLLCTN_EXPLN 및 대표 이미지 매핑은 LibraryCatalogService.collections. 실제25 등4건, size5.

목록과 페이지2 확인. 배너 null은 실제 표본 값 없음.

제공
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/theme-collections?page=2

{}

2026-10-16T17:02:13.733351+09:00일치: 응답 페이징 번호가 요청과 일치13
GET
200
http://localhost:4100/api/v1/library/theme-collections

{}

2026-10-16T17:02:13.701850+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.24
GET
200
http://localhost:4100/api/v1/library/theme-collections

{}

2026-10-20T16:54:30.625589+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.34
GET
200
http://localhost:4100/api/v1/library/theme-collections?page=1

{}

2026-10-20T16:54:38.263564+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.37

테마컬렉션 상세

/library/collection/theme/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf

API·조회 항목 2개

GET테마컬렉션 상세·분류 조회
/api/v1/library/theme-collections/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-27 17:19:48펼치기접기
완료

CIP02 접속 IP 필터 적용: 영상도서관·분원은 방문열람(DT009001) 포함, 관외는 공개 소장본 또는 유효 공개 VOD가 있는 자료만 조회. 전체 건수·유형별 건수·페이징·소장처 동일 조건. 실제 SVC DB HTTP 검증 완료. 이 표본은 관외 응답이며 관내 전용 자료 원문·목록을 정적 예시에 노출하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-27T17:17:43.736690+09:00

http://localhost:4100/api/v1/library/theme-collections/14

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 루트 · 1건 · 문자열 값은 최대 20자 표시
{
  "collection": {
    "id": 14,
    "title": "기록영상 컬렉션",
    "descriptionHtml": "영상도서관에서만 볼 수 있는 기록영상...",
    "bannerImageUrl": null
  },
  "classifications": [
    {
      "id": 111,
      "name": "고베 플래닛필름아카이브 컬렉션"
    },
    {
      "id": 107,
      "name": "미국 NA II 기록영상 컬렉션"
    }
  ],
  "materialTypes": []
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지컬렉션 소개collection.descriptionHtml
"영상도서관에서만 볼 수 있는 기록영상<br>\r\nKMDb 기록영상 컬렉션에 속하지만 활용 조건 등의 사유로 온라인 공개가 제한되는 기록영상들을 영상도서관에 방문하여 DVD/VOD로 열람할 수 있습니다.<br>\r\n<br>\r\n<strong>▶ 1950년 이전 조선, 한국 관련 기록영상컬렉션</strong><br>\r\n대한제국기에서 1950년 이전까지 한국을 촬영했거나 한국과 관련된 주제를 담은 기록영상들입니다.<br>그 중, 고베 플래닛필름아카이브 컬렉션은 다음 조건에 따라 열람이 허용됩니다.<br>\r\n<br>\r\n&nbsp;&nbsp;&nbsp;<u># 고베 플래닛필름아카이브 컬렉션</u><br>\r\n&nbsp;&nbsp;&nbsp;한국영상자료원과 고려대학교 한국사연구소가 공동으로 수집한 한국 근현대사 관련 자료<br>\r\n&nbsp;&nbsp;&nbsp;※ 자료 수집 조건에 따라 연구 목적의 열람만 허용됩니다.<br>\r\n&nbsp;&nbsp;&nbsp;※ 자료 열람 신청서 작성 후 열람 가능하오니 방문 전 문의 바랍니다.<br>\r\n<br>\r\n<strong>▶ 미국 NA II 기록영상 컬렉션 (1)</strong><br>\r\n2022년 한국영상자료원이 미국 National Archives 2관에서 수집한 한국 관련 기록영상으로서, 대부분 6.25전쟁 발발 시점부터 1950년대 중반까지 한반도 지역에서 촬영된 기록영상들입니다."

컬렉션 소개 내용. CLLCTN_EXPLN 원문 HTML.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지상세 구분 필터classifications
[{"id": 111, "name": "고베 플래닛필름아카이브 컬렉션"}, {"id": 107, "name": "미국 NA II 기록영상 컬렉션"}]

선택 가능한 사용 중인 직계 하위 분류 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지유형별 건수materialTypes
[]

컬렉션 연결자료의 유형별 공개 가능 소장자료 수. 비공개 자료는 제외.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
9페이지소개·등록순 상세 구분·자료유형 및 건수검토 범위
2026-10-27 CIP02 SVC 실제 DB: 일반 로컬 HTTP34건, 영상도서관·세 분원·관외 서버주소 fixture HTTP42건. 관내 자료 표본은 이 공개 현황에 게시하지 않음.

AMS TB_CLLCTN 상하위 컬렉션과 TB_CLLCTN_REL. 실제25 classifications 2025년1월.., materialTypes는 공개 가능한 소장자료 범위 기준.

소개·구분 데이터는 제공. 공개 자료0건으로 비존재 유형 필터를 숨길 수 있음.

제공
추가 요구사항 · PMS #806 / 사용자 확정페이지IP별 자료 목록·건수items / totalElements / materialTypes[].count
{"outside": {"VD": 2, "SC": 0, "DC": 14822}, "libraryAndBranches": {"VD": 22, "SC": 8079, "DC": 30624}}

SVC TB_COM_CD(CIP02) ADD_CN 및 TB_PSSN_DATA.RLS_SE_CD, 공개 비디오 예외는 TB_DATA_SRVC의 공개·기간·위치 코드. 같은 자료의 공개 소장본이 있으면 유지.

일반 서버는 getRemoteAddr만 사용. X-Forwarded-For·클라이언트 관내 파라미터는 권한을 부여하지 않음. 30초 코드 캐시; 실패 시 관외. 허용 IP HTTP는 테스트 전용 서버주소 fixture이며 실기 네트워크 연결을 가장하지 않음.

제공
검색·필터 등 실제 HTTP 요청 8건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/theme-collections/14

{}

2026-10-16T17:02:14.375531+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.19
GET
200
http://localhost:4100/api/v1/library/theme-collections/25

{}

2026-10-16T17:02:13.752681+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.61
GET
200
http://localhost:4100/api/v1/library/theme-collections/14

{}

2026-10-20T16:54:30.659364+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.62
GET
200
http://localhost:4100/api/v1/library/theme-collections/14

{}

2026-10-27T17:17:43.736690+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.86
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials

{}

2026-10-27T17:17:43.822551+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.168
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=VD

{}

2026-10-27T17:17:43.990736+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.212
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=SC

{}

2026-10-27T17:17:44.202822+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.173
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=DC

{}

2026-10-27T17:17:44.376329+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.138
GET테마컬렉션 자료 필터·페이징 조회
/api/v1/library/theme-collections/{id}/materials
HTTP 200 · JSON확인 항목 1개최신 업데이트: 2026-10-27 17:19:48펼치기접기
확인필요

CIP02 접속 IP 필터 적용: 영상도서관·분원은 방문열람(DT009001) 포함, 관외는 공개 소장본 또는 유효 공개 VOD가 있는 자료만 조회. 전체 건수·유형별 건수·페이징·소장처 동일 조건. 실제 SVC DB HTTP 검증 완료. 이 표본은 관외 응답이며 관내 전용 자료 원문·목록을 정적 예시에 노출하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(영상도서관)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-27T17:17:43.822551+09:00

http://localhost:4100/api/v1/library/theme-collections/14/materials

조회 조건: {}

조회 결과 JSON · 객체 1건

조회 가능한 목록이 비어 있어 대표 객체 없음 · 문자열 값은 최대 20자 표시
null
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지컬렉션 자료명items[].title
[]

자료명. TB_DATA.DATA_TTL.

응답 스키마의 키는 확인했으나 이번 조회의 빈 배열·null 부모 객체 때문에 실제 필드 값은 미검증입니다.

확인필요
9페이지컬렉션 자료 유형·개수·페이징items[].type / totalElements / size
[]

API 자료유형. VIDEO/SCENARIO/LITERATURE. / 현재 검색·필터 조건에 맞는 전체 결과 건수. / 한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음.

응답 스키마의 키는 확인했으나 이번 조회의 빈 배열·null 부모 객체 때문에 실제 필드 값은 미검증입니다.

확인필요
9페이지구분·유형 필터·자료 카드·정렬·10건 페이징검토 범위
2026-10-27 CIP02 SVC 실제 DB: 일반 로컬 HTTP34건, 영상도서관·세 분원·관외 서버주소 fixture HTTP42건. 관내 자료 표본은 이 공개 현황에 게시하지 않음.

TB_CLLCTN_REL→TB_DATA→TB_PSSN_DATA. 공개 RLS_SE_CD DT009001/002/003만 허용. 이전 사용자 결정: 비공개 자료 제외.

14/25번 로컬 실제 HTTP200 빈 목록 재확인. 공개 도서관 자료 생성/컬렉션 연결 홈페이지 API가 없어 임의 SQL 또는 비공개 노출로 표본을 만들지 않았다. 공개 연결 자료가 있는 컬렉션 성공 행 검증은 남음.

확인필요
추가 요구사항 · PMS #806 / 사용자 확정페이지IP별 자료 목록·건수items / totalElements / materialTypes[].count
{"outside": {"VD": 2, "SC": 0, "DC": 14822}, "libraryAndBranches": {"VD": 22, "SC": 8079, "DC": 30624}}

SVC TB_COM_CD(CIP02) ADD_CN 및 TB_PSSN_DATA.RLS_SE_CD, 공개 비디오 예외는 TB_DATA_SRVC의 공개·기간·위치 코드. 같은 자료의 공개 소장본이 있으면 유지.

일반 서버는 getRemoteAddr만 사용. X-Forwarded-For·클라이언트 관내 파라미터는 권한을 부여하지 않음. 30초 코드 캐시; 실패 시 관외. 허용 IP HTTP는 테스트 전용 서버주소 fixture이며 실기 네트워크 연결을 가장하지 않음.

제공
검색·필터 등 실제 HTTP 요청 24건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials

{}

2026-10-19T02:01:52.063272+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.41
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials

{}

2026-10-19T02:01:51.983789+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.79
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?classificationId=107

{}

2026-10-16T17:02:14.723140+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.36
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?classificationId=111

{}

2026-10-16T17:02:14.671505+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.43
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?sort=year

{}

2026-10-16T17:02:14.596919+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.67
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?sort=title

{}

2026-10-16T17:02:14.551700+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.39
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=LITERATURE

{}

2026-10-16T17:02:14.513528+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.32
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=SCENARIO

{}

2026-10-16T17:02:14.475448+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.31
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=VIDEO

{}

2026-10-16T17:02:14.438275+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.31
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials

{}

2026-10-16T17:02:14.401321+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.32
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?classificationId=99

{}

2026-10-16T17:02:14.297115+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.72
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?classificationId=105

{}

2026-10-16T17:02:14.219752+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.72
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?sort=year

{}

2026-10-16T17:02:14.139521+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.72
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?sort=title

{}

2026-10-16T17:02:14.069429+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.62
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?type=LITERATURE

{}

2026-10-16T17:02:14.022172+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.40
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?type=SCENARIO

{}

2026-10-16T17:02:13.973430+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.41
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials?type=VIDEO

{}

2026-10-16T17:02:13.913887+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.51
GET
200
http://localhost:4100/api/v1/library/theme-collections/25/materials

{}

2026-10-16T17:02:13.821323+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.84
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials

{}

2026-10-20T16:54:30.721696+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.134
GET
200
http://localhost:4100/api/v1/library/theme-collections/14

{}

2026-10-27T17:17:43.736690+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.86
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials

{}

2026-10-27T17:17:43.822551+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.168
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=VD

{}

2026-10-27T17:17:43.990736+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.212
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=SC

{}

2026-10-27T17:17:44.202822+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.173
GET
200
http://localhost:4100/api/v1/library/theme-collections/14/materials?type=DC

{}

2026-10-27T17:17:44.376329+09:00실제 로컬 HTTP 관외 응답. SVC 실제 DB 기대 결과와 일치.138

콘텐츠›웹진

3개 페이지 · 3개 항목
콘텐츠 웹진의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

웹진 목록

/content/webzine

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET웹진 발간호 목록 조회
/api/v1/content/webzine
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

첫 공개 Special 선택은 기존 합의.94 대표192, 제목 일치. thumbnailUrl=null은 실제 대표이미지 표본 없음.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 4페이지

HTTP 조회 시각: 2026-10-19T12:49:12.081102+09:00

http://localhost:4100/api/v1/content/webzine

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 98,
  "issueName": "TES #03",
  "alias": "2026년 테스트 특집호 #3",
  "publicationMonth": "202610",
  "representativeArticleId": 204,
  "title": "작은 화분의 시간: 선인장 사진 에세...",
  "thumbnailUrl": "/img/05/f6/05f676000...",
  "imageDescription": "대표이미지: 선인장 화분 사진"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4페이지발간호items[].issueName
["TES #03", "Vol. 16", "Vol. 15", "특집호 #02", "Vol. 14"]

발간호명. WBZN_PBLCN_NOUM_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지발간연월items[].publicationMonth
["202610", "202603", "202601", "202512", "202511"]

발간년월. WBZN_PBLCN_YM 원문 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지대표 Special 제목items[].title
["작은 화분의 시간: 선인장 사진 에세이 (수정 테스트)", "그리고 나는 평생 유명해지고 싶었다", "In Memoriam 영화라는 존재, 안성기", "한국고전영화 유튜브, 100만의 이유", "음악이 기억을 데려오는 순간들"]

대표 Special 기사 제목. 발간호명은 issueName으로 별도 제공. 대표 기사가 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지배너items[].thumbnailUrl
["/img/05/f6/05f67600069fa0d12ca38feb4560e99c_M.webp", null, null, null, null]

대표 Special 기사의 대표첨부 중형 썸네일. 이미지가 없으면 null이며 다른 기사 이미지로 대체하지 않음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지발간호·월·첫 공개 Special 제목/배너·5건 페이징검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

TB_WBZN_PBLCN WBZN_PBLCN_NOUM_NM/WBZN_PBLCN_YM, TB_WBZN.WBZN_TTL/RPRS_ATCH_FILE_ID. 공개 CWZ01001을 SORT_SEQ ASC NULLS LAST,WBZN_ID ASC 첫건.

첫 공개 Special 선택은 기존 합의.94 대표192, 제목 일치. thumbnailUrl=null은 실제 대표이미지 표본 없음.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/webzine

{}

2026-10-19T12:49:12.081102+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.80
GET
200
http://localhost:4100/api/v1/content/webzine?page=2

{}

2026-10-16T17:03:29.670990+09:00일치: 응답 페이징 번호가 요청과 일치16
GET
200
http://localhost:4100/api/v1/content/webzine

{}

2026-10-16T17:03:29.635106+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.31

웹진 발간호 상세

/content/webzine/issues/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET웹진 발간호와 수록 기사 조회
/api/v1/content/webzine/issues/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

작성자는 사용자 결정으로 기획 범위에서 제외했다. 웹진 author 응답·임시 문구·화면 표시를 제거했으며 더 이상 원천 확인필요로 표시하지 않는다. 기존 부제(summary=subtitle) 매핑과 미입력 null은 유지하며 실제 HTTP로 검증했다.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 5페이지

HTTP 조회 시각: 2026-10-19T12:49:12.161606+09:00

http://localhost:4100/api/v1/content/webzine/issues/94

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "issue": {
    "id": 94,
    "issueName": "Vol. 16",
    "alias": "2026년 3/4월 웹진",
    "publicationMonth": "202603",
    "representativeArticleId": 192,
    "title": "그리고 나는 평생 유명해지고 싶었다",
    "thumbnailUrl": null,
    "imageDescription": null
  },
  "articles": [
    {
      "id": 192,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01001",
      "categoryName": "Special",
      "title": "그리고 나는 평생 유명해지고 싶었다",
      "summary": "기획전 < MELVILLE x MAN...",
      "subtitle": "기획전 < MELVILLE x MAN...",
      "registeredAt": "20260323112834",
      "viewCount": 716,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 191,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01002",
      "categoryName": "Focus",
      "title": "고전에 진심인 사람들",
      "summary": "금동현 영화평론가와 박혜진 민음사 편...",
      "subtitle": "금동현 영화평론가와 박혜진 민음사 편...",
      "registeredAt": "20260323112814",
      "viewCount": 3498,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 190,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01003",
      "categoryName": "Interview",
      "title": "과거를 끊임없이 현재화하는 곳",
      "summary": "모은영 한국영상자료원 신임 원장",
      "subtitle": "모은영 한국영상자료원 신임 원장",
      "registeredAt": "20260323112752",
      "viewCount": 661,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 189,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01004",
      "categoryName": "Collection",
      "title": "1996년 영화잡지에는 무엇이 실려 ...",
      "summary": "월간<스크린>으로 보는 30년 전 한...",
      "subtitle": "월간<스크린>으로 보는 30년 전 한...",
      "registeredAt": "20260323112733",
      "viewCount": 415,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 188,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01005",
      "categoryName": "News",
      "title": "서울의 밤, 뉴욕을 밝히다",
      "summary": "미국 현대미술관(MoMA)에서 성황리...",
      "subtitle": "미국 현대미술관(MoMA)에서 성황리...",
      "registeredAt": "20260323112712",
      "viewCount": 386,
      "thumbnailUrl": null,
      "imageDescription": null
    }
  ],
  "previous": {
    "id": 93,
    "issueName": "Vol. 15",
    "alias": "2026년 1/2월 웹진",
    "publicationMonth": "202601",
    "representativeArticleId": 187,
    "title": "In Memoriam 영화라는 존재,...",
    "thumbnailUrl": null,
    "imageDescription": null
  },
  "next": {
    "id": 98,
    "issueName": "TES #03",
    "alias": "2026년 테스트 특집호 #3",
    "publicationMonth": "202610",
    "representativeArticleId": 204,
    "title": "작은 화분의 시간: 선인장 사진 에세...",
    "thumbnailUrl": "/img/05/f6/05f676000...",
    "imageDescription": "대표이미지: 선인장 화분 사진"
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
5페이지기사 제목articles[].title
["그리고 나는 평생 유명해지고 싶었다", "고전에 진심인 사람들", "과거를 끊임없이 현재화하는 곳", "1996년 영화잡지에는 무엇이 실려 있었을까", "서울의 밤, 뉴욕을 밝히다"]

웹진 기사 제목. WBZN_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지카테고리articles[].categoryName
["Special", "Focus", "Interview", "Collection", "News"]

기사 분류 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지부제articles[].subtitle
["기획전 < MELVILLE x MANN x REFN >\r\n장 피에르 멜빌, 마이클 만, 니콜라스 윈딩 레픈", "금동현 영화평론가와 박혜진 민음사 편집자의 고전을 대하는 태도에 관하여", "모은영 한국영상자료원 신임 원장", "월간<스크린>으로 보는 30년 전 한국영화의 풍경", "미국 현대미술관(MoMA)에서 성황리에 열린 기획전 ‘서울의 밤 - 한국영화에 대한 개인적인 기억들’"]

사용자 확정 원천: CMS TB_WBZN.WBZN_SMRY_CN → summary/subtitle.

실제 HTTP에서 subtitle와 summary 일치 확인. 미입력 시 null.

제공
5페이지등록일articles[].registeredAt
["20260323112834", "20260323112814", "20260323112752", "20260323112733", "20260323112712"]

기사 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
5페이지이미지articles[].thumbnailUrl
[null, null, null, null, null]

기사의 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
5페이지기사 카테고리·제목·소제목·등록일·이전/다음호검토 범위
실제 DB HTTP: 발간호 목록200·94호 상세200·기사188/192 상세200. 상세·발간호 목록·관련 기사 author 키 없음, subtitle=summary 검증. Swagger200 및 author 속성 없음 확인.

ContentModels.ArticleRow/ArticleItem의 웹진 author 제거, WebzineMapper의 null AUTHOR 선택 제거, 임시 문구·화면 작성자 표시 제거. 부제는 TB_WBZN.WBZN_SMRY_CN→summary/subtitle 유지.

작성자는 사용자 결정으로 기획 범위에서 제외했다. 웹진 author 응답·임시 문구·화면 표시를 제거했으며 더 이상 원천 확인필요로 표시하지 않는다. 기존 부제(summary=subtitle) 매핑과 미입력 null은 유지하며 실제 HTTP로 검증했다.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/webzine/issues/94

{}

2026-10-19T12:49:12.161606+09:00일치: 발간호 모든 기사에 author 키 없음, subtitle=summary 유지143
GET
200
http://localhost:4100/api/v1/content/webzine/issues/94

{}

2026-10-16T18:44:38.938868+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.64

웹진 기사 상세

/content/webzine/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET웹진 기사 상세·본문 조회
/api/v1/content/webzine/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

작성자는 사용자 결정으로 기획 범위에서 제외했다. 웹진 author 응답·임시 문구·화면 표시를 제거했으며 더 이상 원천 확인필요로 표시하지 않는다. 기존 부제(summary=subtitle) 매핑과 미입력 null은 유지하며 실제 HTTP로 검증했다.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 6페이지

HTTP 조회 시각: 2026-10-19T12:49:12.305115+09:00

http://localhost:4100/api/v1/content/webzine/188

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 188,
    "issueId": 94,
    "issueName": "Vol. 16",
    "publicationMonth": "202603",
    "categoryCode": "CWZ01005",
    "categoryName": "News",
    "title": "서울의 밤, 뉴욕을 밝히다",
    "summary": "미국 현대미술관(MoMA)에서 성황리...",
    "subtitle": "미국 현대미술관(MoMA)에서 성황리...",
    "registeredAt": "20260323112712",
    "viewCount": 386,
    "thumbnailUrl": null,
    "imageDescription": null
  },
  "bodyHtml": "<div class=\"kmdb-edi...",
  "relatedArticles": [
    {
      "id": 192,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01001",
      "categoryName": "Special",
      "title": "그리고 나는 평생 유명해지고 싶었다",
      "summary": "기획전 < MELVILLE x MAN...",
      "subtitle": "기획전 < MELVILLE x MAN...",
      "registeredAt": "20260323112834",
      "viewCount": 716,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 191,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01002",
      "categoryName": "Focus",
      "title": "고전에 진심인 사람들",
      "summary": "금동현 영화평론가와 박혜진 민음사 편...",
      "subtitle": "금동현 영화평론가와 박혜진 민음사 편...",
      "registeredAt": "20260323112814",
      "viewCount": 3498,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 190,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01003",
      "categoryName": "Interview",
      "title": "과거를 끊임없이 현재화하는 곳",
      "summary": "모은영 한국영상자료원 신임 원장",
      "subtitle": "모은영 한국영상자료원 신임 원장",
      "registeredAt": "20260323112752",
      "viewCount": 661,
      "thumbnailUrl": null,
      "imageDescription": null
    },
    {
      "id": 189,
      "issueId": 94,
      "issueName": "Vol. 16",
      "publicationMonth": "202603",
      "categoryCode": "CWZ01004",
      "categoryName": "Collection",
      "title": "1996년 영화잡지에는 무엇이 실려 ...",
      "summary": "월간<스크린>으로 보는 30년 전 한...",
      "subtitle": "월간<스크린>으로 보는 30년 전 한...",
      "registeredAt": "20260323112733",
      "viewCount": 415,
      "thumbnailUrl": null,
      "imageDescription": null
    }
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지제목article.title
["서울의 밤, 뉴욕을 밝히다"]

웹진 기사 제목. WBZN_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지부제article.subtitle
["미국 현대미술관(MoMA)에서 성황리에 열린 기획전 ‘서울의 밤 - 한국영화에 대한 개인적인 기억들’"]

사용자 확정 원천: CMS TB_WBZN.WBZN_SMRY_CN → summary/subtitle.

실제 HTTP에서 subtitle와 summary 일치 확인. 미입력 시 null.

제공
6페이지조회수article.viewCount
[386]

기사 조회수. INQ_CNT. 미등록 시 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지본문bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><div style=\"text-align: center;\"><strong><span style=\"font-size:36px;\">서울의 밤, 뉴욕을 밝히다</span></strong></div>\r\n\r\n<div style=\"text-align: center;\"><span style=\"font-size:20px;\">미국 현대미술관(MoMA)에서 성황리에 열린 기획전 ‘서울의 밤 - 한국영화에 대한 개인적인 기억들’</span></div>\r\n<br>\r\n<span style=\"font-size:14px;\">글, 사진: 오성지(한국영상자료원)</span><span style=\"font-size:16px;\"><br>\r\n<br>\r\n<img alt=\"뉴욕 MoMA 전경\" src=\"https://www.koreafilm.or.kr/upload/editorimage/f5328550-5312-494c-b3c2-ae396a341a0c.png\"></span><br>\r\n<span style=\"font-size:14px;\">*&nbsp;뉴욕 MoMA 전경</span><span style=\"font-size:16px;\"><br>\r\n<br>\r\n<span style=\"background-color:#efe0ff;\">“티켓이 너무 많이 나가서 작은 극장에서 400석 극장으로 옮겼어.” 그러더니, </span><strong><span style=\"background-color:#efe0ff;\">“티켓이 글쎄 500장이 나갔어.”</span></strong> 하루도 안 되서 또 다른 정보를 준다. 티켓 발급이 된 후에도 극장을 옮길 수 있나 신기했는데, 400석 극장에서 상영하는데 티켓이 500장 나갔다니 이건 또 뭔 말인지 싶었다. 여하튼 영화 상영일, 서울에서 오신 감독님과 함께 관객과의 대화를 진행하러 갔다. 그런데, 정말 관객들이 아주 긴 줄을 만들고 있었다. 같이 기획전을 준비한 데이브와 스티브는 ‘젊은 관객들이 이렇게 많이 오다니, 이건 뭐지?’ 하는 얼굴을 하고 있다. 윤가은 감독님 역시 놀라신 얼굴, &lt;세계의 주인&gt;(감독&nbsp;<span style=\"font-size:16px;\">윤가은,&nbsp;</span>2025)의 MoMA 첫 상영 모습이다.<br>\r\n<br>\r\n<img alt=\"MoMA 기획전 메인 이미지\" src=\"https://www.koreafilm.or.kr/upload/editorimage/7d53da98-1439-4f71-90a7-44e4be387f2e.png\"></span><br>\r\n<span style=\"font-size:14px;\">*&nbsp;MoMA 기획전 ‘서울의 밤 - 한국영화에 대한 개인적인 기억들(Seoul after Dark – Personal Memories of Korean Cinema)’ 메인 이미지</span><span style=\"font-size:16px;\"><br>\r\n&nbsp;<br>\r\n2월 4일부터 25일까지 미국 뉴욕 MoMA에서 장편영화 20편과 단편영화 4편이 상영된 ‘한국 영화 기획전’은 2025년 해외에서 한국 영화를 보다 적극적으로 소개하기 위해 준비된 여러 프로젝트의 일환이었다. 2025년은 이미 극장 일정이 꽉 차 있다고 해서 2026년 2월로 일정을 결정한 후, MoMA 측 담당자인 데이브 커와 어떤 한국 영화들을 뉴욕 관객, 특히 MOMA 관객에게 선보일까 궁리했다. 이미 2024년 뉴욕 링컨센터에서 ‘1960년대 한국 고전영화’가 소개되었고, 2026년에도 같은 곳에서 1970년대 영화들이 상영될 예정이어서 MoMA 프로그램은 조금 색다르길 원했다. 해외에서 항상 소개되는 ‘한국 영화 대표작’이 아닌 무언가 개인적인 기억과 애정이 들어가 있는 ‘사적인’ 영화였으면 해서 영화감독, 미술감독, 배우 등 영화인 8명에게 뉴욕 관객에게 소개하고 싶은 본인들이 작업한 영화 중 1~2편, 그리고 영상자료원이 복원한 영화 중 2~3편의 리스트를 받기로 했다. 물론 영상자료원과 MoMA도 각자의 리스트를 만들기로 했다. MoMA의 큐레이터인 데이브는 누아르 장르의 영화를 골랐고, 영상자료원은 단편영화를 선정했다. 감독들도 본인들이 애정하는 혹은 잘 알려지지 않아 이번 기회에 뉴욕 관객에게 보여주고 싶은 영화를 골랐다.<br>\r\n&nbsp;<br>\r\n결과적으로 재미있는 리스트와 나왔고, 프로그램명은 데이브가 ‘서울의 밤(Seoul after Dark)’을, 나는 ‘한국영화에 대한 개인적인 기억들(Personal Memories of Korean Cinema)”라고 제안해 결국 절충한 <strong><span style=\"background-color:#efe0ff;\">‘서울의 밤 - 한국영화에 대한 개인적인 기억들(Seoul after Dark – Personal Memories of Korean Cinema)’</span></strong>이라고 정했다. 해외 배급사가 있는 영화들은 MoMA 측에서 그리고 나머지 영화들은 영상자료원에서 상영 허가를 받기로 했다.<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/788b0544-9673-41c8-940a-9f70f017c702.png\"><br>\r\n<br>\r\n상영과 함께 여러 영화인을 초청하여 관객과의 대화를 진행하고 싶었으나 역시 예산 문제로 윤가은 감독님만 참석하기로 했고, 첫날 상영인 자료원 복원작 &lt;최후의 증인&gt;(감독 이두용, 1980)과 &lt;세계의 주인&gt; 관객과의 대화를 위해 필자가 첫 주 상영에 참석하기로 했다. 윤가은 감독님의 &lt;세계의 주인&gt;은 MoMA 측에서 깜짝 놀랄 정도로 관객이 많이 왔는데, 영화가 끝난 후에도 감독님께 질문하기 위해 많은 분이 남아 있었다. 또한 하명중 배우님이 주연한 &lt;최후의 증인&gt;과 &lt;화분&gt;(감독 하길종, 1972) 그리고 연출하신 &lt;태&gt;(하명중, 1986)가 상영되어 배우님이 너무 기뻐하셨고, 박찬욱 감독님의 &lt;아가씨&gt;와 &lt;박쥐&gt;가 2월 14일 밸런타인데이에 상영되어 관객들이 센스 있다며 즐거워했다. 유태오 배우님 역시 &lt;로그인 벨지움&gt;(감독 유태오, 2021)의 상영이 기쁘셨는지 본인 인스타에 홍보를 많이 해주셨다.<br>\r\n&nbsp;<br>\r\n<span style=\"font-size:16px;\"><img alt=\"대담\" src=\"https://www.koreafilm.or.kr/upload/editorimage/3e09f3ec-9f5c-4a21-b0b9-31f41d4b7ae6.png\"><br>\r\n* (왼쪽부터) 오성지 프로그래머, 통역, 윤가은 감독, 데이브 커 큐레이터</span><br>\r\n<br>\r\n아쉬웠던 것은 폭설로 인해 상영 일정이 몇 차례 변경되었고, 김지운 감독님의 &lt;달콤한 인생&gt;이 북미 배급사의 사정으로 공지 후에 취소되었다는 거다. 그러나 총 7,044명으로 다녀가 MoMA 측 이야기로는 매우 흡족한 스코어라고 한다. 거의 반년 동안 준비한 손이 많이 가는 프로그램이었지만 눈바람이 치는 추운 날씨에도 극장에 많은 관객이 찾아와 보람 있었고, 윤가은 감독님과의 관객과의 대화도 너무 즐거웠다. 무엇보다도 흔쾌히 리스트를 주신 8명의 감독님, 미술감독님, 배우님 정말 감사합니다!</span><br>\r\n&nbsp;\r\n<div style=\"border: 10px solid #8E44AD; border-radius: 20px; background-color: #ffffff; padding: 10px 40px; margin: 20px 30px;\">\r\n<div style=\"width: 100%; height: 10px; background-color: #ffffff; display: block; position: relative; top: -20px;\"><span style=\"font-size:16px;\">&nbsp;</span></div>\r\n\r\n<p data-ke-size=\"size16\" style=\"text-align: center;\"><span style=\"font-size:16px;\"><span style=\"font-size: 2em; font-weight: 800; color: #8E44AD;\">8인의 한국 영화 추천작 목록</span></span></p>\r\n\r\n<p data-ke-size=\"size16\" style=\"text-align: center;\"><span style=\"font-size:16px;\"><br>\r\n<strong>박찬욱 감독</strong><br>\r\n&lt;최후의 증인&gt;, &lt;태&gt;<br>\r\n<br>\r\n<strong>봉준호 감독</strong><br>\r\n&lt;꼬방동네 사람들&gt;, &lt;산산이 부서진 이름이여&gt;, &lt;과부춤&gt;, &lt;개그맨&gt;, &lt;화분&gt;<br>\r\n<br>\r\n<strong>홍상수 감독</strong><br>\r\n&lt;춘향뎐&gt;<br>\r\n<br>\r\n<strong>황동혁 감독</strong><br>\r\n&lt;오발탄&gt;, &lt;기쁜 우리 젊은 날&gt;<br>\r\n<br>\r\n<strong>이창동 감독</strong><br>\r\n&lt;달마가 동쪽으로 간 까닭은&gt;, &lt;바보들의 행진&gt;, &lt;휴일&gt;<br>\r\n<br>\r\n<strong>윤가은 감독</strong><br>\r\n&lt;낮은 목소리-아시아에서 여성으로 산다는 것&gt;<br>\r\n<br>\r\n<strong>류성희 미술감독</strong><br>\r\n&lt;하녀&gt;, &lt;지구를 지켜라&gt;<br>\r\n<br>\r\n<strong>유태오 배우 겸 감독</strong><br>\r\n&lt;접속&gt;, &lt;플란다스의 개&gt;, &lt;8월의 크리스마스&gt;<br>\r\n<br>\r\n<strong>한국영상자료원(KOFA)</strong><br>\r\n&lt;서울 7000&gt;, &lt;지리멸렬&gt;, &lt;우중 산책&gt;, &lt;슬픈 열대&gt;, &lt;2001 이매진&gt;<br>\r\n<br>\r\n<strong>MoMA (데이브 커)</strong><br>\r\n&lt;지옥화&gt;, &lt;인정사정 볼 것 없다&gt;, &lt;검은 머리&gt;,&lt;쉬리&gt;, &lt;살인의 추억&gt;, &lt;올드보이&gt;, &lt;달콤한 인생&gt;, &lt;추격자&gt;</span><span style=\"font-size:16px;\"></span></p>\r\n\r\n<div style=\"width: 100%; height: 10px; background-color: #ffffff; display: block; position: relative; bottom: -20px; margin: 0 auto;\"><span style=\"font-size:16px;\">&nbsp;</span></div>\r\n</div>\r\n\r\n<div class=\"box-bottom-btn\">&nbsp; <a class=\"btn-center cm-btn-m-6 btn-view-list\" href=\"https://www.moma.org/calendar/film/5880#events\">최종 상영작이 궁금하다면?</a></div>\r\n\r\n<div class=\"box-bottom-btn\">&nbsp; <a class=\"btn-center cm-btn-m-6 btn-view-list\" href=\"https://www.koreafilm.or.kr/webzine\">메인 페이지로 이동하기</a></div>\r\n</div>"]

웹진 기사 본문 HTML. WBZN_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지관련기사relatedArticles
[[{"id": 192, "issueId": 94, "issueName": "Vol. 16", "publicationMonth": "202603", "categoryCode": "CWZ01001", "categoryName": "Special", "title": "그리고 나는 평생 유명해지고 싶었다", "summary": "기획전 < MELVILLE x MANN x REFN >\r\n장 피에르 멜빌, 마이클 만, 니콜라스 윈딩 레픈", "subtitle": "기획전 < MELVILLE x MANN x REFN >\r\n장 피에르 멜빌, 마이클 만, 니콜라스 윈딩 레픈", "registeredAt": "20260323112834", "viewCount": 716, "thumbnailUrl": null, "imageDescription": null}, {"id": 191, "issueId": 94, "issueName": "Vol. 16", "publicationMonth": "202603", "categoryCode": "CWZ01002", "categoryName": "Focus", "title": "고전에 진심인 사람들", "summary": "금동현 영화평론가와 박혜진 민음사 편집자의 고전을 대하는 태도에 관하여", "subtitle": "금동현 영화평론가와 박혜진 민음사 편집자의 고전을 대하는 태도에 관하여", "registeredAt": "20260323112814", "viewCount": 3498, "thumbnailUrl": null, "imageDescription": null}, {"id": 190, "issueId": 94, "issueName": "Vol. 16", "publicationMonth": "202603", "categoryCode": "CWZ01003", "categoryName": "Interview", "title": "과거를 끊임없이 현재화하는 곳", "summary": "모은영 한국영상자료원 신임 원장", "subtitle": "모은영 한국영상자료원 신임 원장", "registeredAt": "20260323112752", "viewCount": 661, "thumbnailUrl": null, "imageDescription": null}, {"id": 189, "issueId": 94, "issueName": "Vol. 16", "publicationMonth": "202603", "categoryCode": "CWZ01004", "categoryName": "Collection", "title": "1996년 영화잡지에는 무엇이 실려 있었을까", "summary": "월간<스크린>으로 보는 30년 전 한국영화의 풍경", "subtitle": "월간<스크린>으로 보는 30년 전 한국영화의 풍경", "registeredAt": "20260323112733", "viewCount": 415, "thumbnailUrl": null, "imageDescription": null}]]

같은 발간호의 공개 기사 중 현재 기사를 제외한 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지제목·소제목·분류·호·일시·조회수·본문·동일호 기사(작성자 제외 확정)검토 범위
실제 DB HTTP: 발간호 목록200·94호 상세200·기사188/192 상세200. 상세·발간호 목록·관련 기사 author 키 없음, subtitle=summary 검증. Swagger200 및 author 속성 없음 확인.

ContentModels.ArticleRow/ArticleItem의 웹진 author 제거, WebzineMapper의 null AUTHOR 선택 제거, 임시 문구·화면 작성자 표시 제거. 부제는 TB_WBZN.WBZN_SMRY_CN→summary/subtitle 유지.

작성자는 사용자 결정으로 기획 범위에서 제외했다. 웹진 author 응답·임시 문구·화면 표시를 제거했으며 더 이상 원천 확인필요로 표시하지 않는다. 기존 부제(summary=subtitle) 매핑과 미입력 null은 유지하며 실제 HTTP로 검증했다.

제공
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/webzine/192

{}

2026-10-19T12:49:12.391836+09:00일치: 상세·관련 기사에 author 키 없음, subtitle=summary 유지81
GET
200
http://localhost:4100/api/v1/content/webzine/188

{}

2026-10-19T12:49:12.305115+09:00일치: 상세·관련 기사에 author 키 없음, subtitle=summary 유지87
GET
200
http://localhost:4100/api/v1/content/webzine/188

{}

2026-10-16T18:44:39.011614+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.54
GET
200
http://localhost:4100/api/v1/content/webzine/192

{}

2026-10-16T18:44:38.730419+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.203

콘텐츠›발간물

5개 페이지 · 7개 항목
콘텐츠 발간물의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

발간물―도서 목록

/content/publication/books

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 2개

GET도서 발간물 목록 조회
/api/v1/content/publication/books
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

실제 CMS 코드 사용 합의 유지. year/categoryCode/page2 HTTP200,producer 제공.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-16T17:03:29.808469+09:00

http://localhost:4100/api/v1/content/publication/books

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 79,
  "typeCode": "CPB02001",
  "categoryCode": "CPB02001003",
  "categoryName": "연구·보고서",
  "title": "목적지 홍콩: 한국영화와 중국어권 영...",
  "author": null,
  "producer": "한국영상자료원, 홍콩 시티대학교 창의...",
  "productionYear": "2025",
  "publicationDate": null,
  "thumbnailUrl": "/img/mig/publication...",
  "imageDescription": null,
  "planner": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지제목items[].title
["목적지 홍콩: 한국영화와 중국어권 영화의 조우", "영화문화 운동의 역사화 작업과 필름 아카이브", "신문기사로 본 조선영화 1935", "영화잡지 스크린 1984~1994", "한국영화 100선:'청춘의 십자로'부터 '헤어질 결심'까지", "신문기사로 본 조선영화 1934", "한국영화, 열정을 말하다", "위대한 유산:태흥영화 1984-2004"]

발간물 제목. BOOK_DVD_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지분류items[].categoryName
["연구·보고서", "연구·보고서", "일제강점기 영화자료총서", "아카이브 프리즘 총서", "아카이브 프리즘 총서", "일제강점기 영화자료총서", "한국영화사 구술총서", "전시·도록"]

세부분류 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지발행/제작년도items[].productionYear
["2025", "2024", "2024", "2024", "2024", "2023", "2023", "2022"]

제작연도. FBCTN_YR 원문 문자열. year 필터 기준.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지출시/발행일items[].publicationDate
[null, null, null, null, null, null, null, null]

발행일. PBLS_YMD 원문 문자열이며 제작연도와 별도 항목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지이미지items[].thumbnailUrl
["/img/mig/publicationBoard/95b885de-a8e3-4697-b90d-be26268e7a4c_M.webp", "/img/mig/publicationBoard/ed0645bf-6b37-4935-8740-649cc943c05d_M.webp", "/img/mig/publicationBoard/7fc0abf3-98a3-4449-93d0-67143b460f2f_M.webp", "/img/mig/publicationBoard/bf621012-25cd-40ef-a1f4-31279d8fb78b_M.webp", "/img/mig/publicationBoard/6f574645-00cb-4ee0-9e3f-5286996be4ff_M.webp", "/img/mig/publicationBoard/7303b22f-150c-4159-ba96-20b66172dd9f_M.webp", "/img/mig/publicationBoard/3cbb52fb-5a3e-47bc-8b05-44b9033d5d3b_M.webp", "/img/mig/publicationBoard/6c83b8fd-a59e-492e-9d93-8442af51bda9_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지목록 제작 정보items[].producer
["한국영상자료원, 홍콩 시티대학교 창의미디어학과, 아시아영화연구소(ACR Lab)", "한국영상자료원", "한국영상자료원", "한국영상자료원(KOFA)", "한국영상자료원", "한국영상자료원", "한국영상자료원", "한국영상자료원, 전주국제영화제"]

제작자명. PDCR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지목록 8건 페이징·총건수size / totalElements
[8, 92]

한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음. / 현재 검색·필터 조건에 맞는 전체 결과 건수.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지분류·제작연도 필터·제작정보·8건 페이징검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

TB_BOOK_DVD CLSF_SE_CD/DCLSF_CD/BOOK_DVD_TTL/PDCR_NM/FBCTN_YR, TB_COM_CD CPB02.

실제 CMS 코드 사용 합의 유지. year/categoryCode/page2 HTTP200,producer 제공.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001&year=2025

{}

2026-10-16T17:03:30.264933+09:00미검증: 반환 분류가 요청 분류 또는 하위 분류 / 미검증: 제작연도가 요청 연도와 일치56
GET
200
http://localhost:4100/api/v1/content/publication/books?year=2024

{}

2026-10-16T17:03:30.233043+09:00일치: 제작연도가 요청 연도와 일치24
GET
200
http://localhost:4100/api/v1/content/publication/books?year=2025

{}

2026-10-16T17:03:30.206665+09:00일치: 제작연도가 요청 연도와 일치18
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001003

{}

2026-10-16T17:03:30.148983+09:00일치: 반환 분류가 요청 분류 또는 하위 분류50
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001002

{}

2026-10-16T17:03:30.092080+09:00일치: 반환 분류가 요청 분류 또는 하위 분류50
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001001

{}

2026-10-16T17:03:30.035148+09:00일치: 반환 분류가 요청 분류 또는 하위 분류50
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001

{}

2026-10-16T17:03:29.971028+09:00일치: 반환 분류가 요청 분류 또는 하위 분류57
GET
200
http://localhost:4100/api/v1/content/publication/books?page=2

{}

2026-10-16T17:03:29.846672+09:00일치: 응답 페이징 번호가 요청과 일치34
GET
200
http://localhost:4100/api/v1/content/publication/books

{}

2026-10-16T17:03:29.808469+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.32
GET도서 분류·연도 필터 조회
/api/v1/content/publication/books/filters
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기획 예시와 CMS 코드명이 다른 항목은 사용자 합의대로 CMS 기준.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-16T17:03:29.924088+09:00

http://localhost:4100/api/v1/content/publication/books/filters

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "categories": [
    {
      "code": "CPB02001001",
      "name": "총서",
      "parentCode": "CPB02001",
      "sortOrder": 1
    },
    {
      "code": "CPB02001001001",
      "name": "일제강점기 영화자료총서",
      "parentCode": "CPB02001001",
      "sortOrder": 1
    },
    {
      "code": "CPB02001001002",
      "name": "FILMStory 총서",
      "parentCode": "CPB02001001",
      "sortOrder": 2
    },
    {
      "code": "CPB02001001003",
      "name": "일루미네이션 총서",
      "parentCode": "CPB02001001",
      "sortOrder": 3
    },
    {
      "code": "CPB02001001004",
      "name": "한국영화 자료총서",
      "parentCode": "CPB02001001",
      "sortOrder": 4
    },
    {
      "code": "CPB02001001005",
      "name": "한국영화사 구술총서",
      "parentCode": "CPB02001001",
      "sortOrder": 5
    },
    {
      "code": "CPB02001001006",
      "name": "아카이브 프리즘 총서",
      "parentCode": "CPB02001001",
      "sortOrder": 6
    },
    {
      "code": "CPB02001001007",
      "name": "우수영상물 다국어자막 DVD 컬렉션",
      "parentCode": "CPB02001001",
      "sortOrder": 7
    },
    {
      "code": "CPB02001002",
      "name": "단행본",
      "parentCode": "CPB02001",
      "sortOrder": 2
    },
    {
      "code": "CPB02001003",
      "name": "연구·보고서",
      "parentCode": "CPB02001",
      "sortOrder": 3
    },
    {
      "code": "CPB02001003001",
      "name": "해외 아카이브 연구",
      "parentCode": "CPB02001003",
      "sortOrder": 1
    },
    {
      "code": "CPB02001003002",
      "name": "KOFA Issue Paper",
      "parentCode": "CPB02001003",
      "sortOrder": 2
    },
    {
      "code": "CPB02001004",
      "name": "전시·도록",
      "parentCode": "CPB02001",
      "sortOrder": 4
    },
    {
      "code": "CPB02001005",
      "name": "기타",
      "parentCode": "CPB02001",
      "sortOrder": 5
    }
  ],
  "years": [
    2025,
    2024,
    2023,
    2022,
    2021,
    2020,
    2019,
    2018,
    2017,
    2016,
    2015,
    2014,
    2013,
    2012,
    2011,
    2010,
    2009,
    2008,
    2007,
    2006,
    2005,
    2004,
    2003
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지도서 분류·연도 선택값categories / years
[[{"code": "CPB02001001", "name": "총서", "parentCode": "CPB02001", "sortOrder": 1}, {"code": "CPB02001001001", "name": "일제강점기 영화자료총서", "parentCode": "CPB02001001", "sortOrder": 1}, {"code": "CPB02001001002", "name": "FILMStory 총서", "parentCode": "CPB02001001", "sortOrder": 2}, {"code": "CPB02001001003", "name": "일루미네이션 총서", "parentCode": "CPB02001001", "sortOrder": 3}, {"code": "CPB02001001004", "name": "한국영화 자료총서", "parentCode": "CPB02001001", "sortOrder": 4}, {"code": "CPB02001001005", "name": "한국영화사 구술총서", "parentCode": "CPB02001001", "sortOrder": 5}, {"code": "CPB02001001006", "name": "아카이브 프리즘 총서", "parentCode": "CPB02001001", "sortOrder": 6}, {"code": "CPB02001001007", "name": "우수영상물 다국어자막 DVD 컬렉션", "parentCode": "CPB02001001", "sortOrder": 7}, {"code": "CPB02001002", "name": "단행본", "parentCode": "CPB02001", "sortOrder": 2}, {"code": "CPB02001003", "name": "연구·보고서", "parentCode": "CPB02001", "sortOrder": 3}, {"code": "CPB02001003001", "name": "해외 아카이브 연구", "parentCode": "CPB02001003", "sortOrder": 1}, {"code": "CPB02001003002", "name": "KOFA Issue Paper", "parentCode": "CPB02001003", "sortOrder": 2}, {"code": "CPB02001004", "name": "전시·도록", "parentCode": "CPB02001", "sortOrder": 4}, {"code": "CPB02001005", "name": "기타", "parentCode": "CPB02001", "sortOrder": 5}], [2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003]]

발간물의 현재 사용 가능한 분류 공통코드 목록. categoryCode 입력에 사용. / 발간물 제작연도(FBCTN_YR) 필터에 사용할 연도 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지사용중 CMS 분류 트리·연도 내림차순검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

PublicationBookMapper/PublicationDvdMapper TB_COM_CD USE_YN=Y,SORT_SEQ, FBCTN_YR DISTINCT DESC.

기획 예시와 CMS 코드명이 다른 항목은 사용자 합의대로 CMS 기준.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/books/filters

{}

2026-10-16T17:03:29.924088+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.41

발간물―도서 상세

/content/publication/books/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET도서 발간물 상세·본문 조회
/api/v1/content/publication/books/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

필수 표시 키는 제공. 실제79/151 publicationDate=null 등은 원천 표본 없음으로 유지. 기존 확인필요였던 KMDb 원문보기는 사용자가 프론트 처리 확정하였으므로 백엔드 미구현 사유에서 제외. planner는 PDF 항목이 아니지만 이번 검토에서 DTO 삭제는 하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-16T17:03:29.886601+09:00

http://localhost:4100/api/v1/content/publication/books/79

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "publication": {
    "id": 79,
    "typeCode": "CPB02001",
    "categoryCode": "CPB02001003",
    "categoryName": "연구·보고서",
    "title": "목적지 홍콩: 한국영화와 중국어권 영...",
    "author": null,
    "producer": "한국영상자료원, 홍콩 시티대학교 창의...",
    "productionYear": "2025",
    "publicationDate": null,
    "thumbnailUrl": "/img/mig/publication...",
    "imageDescription": null,
    "planner": "확인이 필요한 데이터"
  },
  "purchaseUrl": null,
  "bodyHtml": "목적지 홍콩:한국영화와 중국어권 영화...",
  "authorHtml": "기획&nbsp;| 이상준,&nbsp;...",
  "contentsHtml": "<strong>컨퍼런스 일정<br /...",
  "kmdbUrl": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지제목publication.title
["목적지 홍콩: 한국영화와 중국어권 영화의 조우"]

발간물 제목. BOOK_DVD_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지저자publication.author
[null]

저자명. AUT_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
9페이지감독/제작자publication.producer
["한국영상자료원, 홍콩 시티대학교 창의미디어학과, 아시아영화연구소(ACR Lab)"]

제작자명. PDCR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지기획자publication.planner
[null]

기획자 표시용 필드. 원천 컬럼 매핑이 확인되지 않아 현재 SQL은 null 반환. 확인이 필요한 데이터.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
9페이지내용bodyHtml
["목적지 홍콩:한국영화와 중국어권 영화의 조우(Destination Hong Kong : South Korean cinema&#39;s Encounter with Chinese-Langauge Cinemas)는&nbsp;한국영상자료원과 홍콩 시티대학교가 동아시아 영화 연구 교류의 자리를 마련하기 위하여 한국-홍콩 합작영화를 주제로 2025년 5월 16일~17일 2일간 공동 개최한 국제 컨퍼런스. 1950년대부터 21세기까지 홍콩, 대만, 싱가포르, 중국을 포함한 영화 네트워크가 한국영화에 어떤 영향을 미쳤는지 탐구하고 있다. 유럽, 북미, 한국, 아시아 영화연구자들이 모여 한국과 홍콩의 합작영화, 화교의 디아스포라 감각, 80년대 후반 한국 극장가의 홍콩영화 유행, 홍콩영화 원작-한국영화 리메이크 작품의 비교, 홍콩영화 스타들에 대해 연구한 결과를 발표하고 이에 대한 시각과 견해를 공유하고자 마련됐다.<br />\r\n<br />\r\n본 책자는 영문이며, 참가자들의 발표 초록이 담겨 있다.&nbsp;"]

발간물 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지저자/감독 소개authorHtml
["기획&nbsp;| 이상준,&nbsp;정종화<br />\r\n진행 | Helena Hiu Yung CHUNG, 윤서연, 신재영<br />\r\n컨퍼런스 코디네이터 | Portia CHEUNG, Hok Him IU, Fion NG, Malina SIU<br />\r\n프로그램 디자이너&nbsp;| Shovel CHAN, Jeannie Yu Kwan ZHONG&nbsp;"]

저자 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지차례/DVD정보contentsHtml
["<strong>컨퍼런스 일정<br />\r\n개최사</strong> | 이상준 홍콩시티대학교 교수, 김홍준 한국영상자료원장, 정종화 한국영상자료원 학예연구팀장<br />\r\n<br />\r\n<strong>강연 및 발표<br />\r\n키노트 1</strong><br />\r\n중국-한국 스크린 역사 속 불확실한 미지의 존재: 최국인, 신장 지구, &lt;용의 해&gt;를 중심으로  | 크리스 베리(킹스 칼리지 런던)<br />\r\n<strong>키노트 2</strong><br />\r\n황홀한 기억: 나와 홍콩영화의조우, 1966년부터 1989년까지 | 김홍준(한국영상자료원)<br />\r\n<br />\r\n<strong>패널 1: 전후 한국과 중국어권 합작 영화</strong><br />\r\n한국영화인 강범구를 통해 본 1960년대 한국-대만 영화 교류사 | 정종화(한국영상자료원)<br />\r\n한국 홍콩 합작 멜로 속 여성 캐릭터의 민족 수행-&lt;이국정원&gt;과 &lt;사랑의 스잔나&gt;를 중심으로 | 윤서연(한국영상자료원)<br />\r\n자유의 꾀꼬리:정형의 스타덤-1960년대 영광영업공사의 한국 홍콩 합작영화 4편을 중심으로 | 제시카 시우인 영(홍콩 링난대)<br />\r\n&lt;반혼녀&gt;와 신상옥-최은희의 기구한 운명: 홍콩에서의 영화모험 | 케니 응(홍콩 뱁티스트대)<br />\r\n<br />\r\n<strong>패널 2: 아시아 영화 경계 허물기</strong><br />\r\n한자문화권 동아시아의 &#39;엑센트 차이니즈 시네마&#39;: 장률의 &lt;야나가와&gt; 등 트랜스내셔널 영화 제작 이론화 | 클로에 윈시안 장 (미국 서던캘리포니아대)<br />\r\n소속감의 한계를 질문하기: 현대 한국영화 속 화교 연구 | 김소혜(홍콩대)    <br />\r\n경계 위의 여성 동성애:&lt;녹야&gt;와 &lt;블루 송&gt;의 한중 퀴어의 조우 | 앤디 주 (네덜란드 암스테르담대) <br />\r\n<br />\r\n<strong>패널 3: 장르, 리메이크, 조우</strong><br />\r\n중국 로맨틱 TV 드라마 속 한국 남성 스타와 한류 남성성의 현지화 | 엘레인 청(영국 카디프대) <br />\r\n한중 영화 합작의 산업 및 정책적 측면:&lt;제 3의 사랑&gt;을 중심으로 | 김수현(일본 교토대)<br />\r\n액션! 대만 갱스터 영화 부활과 한국영화인-문화와의 연결 | 팅-우 초(대만 국립정치대)<br />\r\n포스트 정동인가 새로운 사후세계인가?:&lt;마약전쟁&gt;과 &lt;독전&gt;을 통해 본 홍콩 누아르의 공명 | 박은지(부산대 영화연구소) <br />\r\n<br />\r\n<strong>패널 4: 한국-홍콩 합작을 재고하기</strong><br />\r\n호금전의 남한 산악영화를 재평가하기 | 스테판 테오(독립연구자, 영화사가)<br />\r\n전사, 스파이, 쿵후 마스터, 정창화 감독과 트랜스내셔널 영화 제작자의 탄생 | 이상준(홍콩 시티대) <br />\r\n냉전에서 다른 냉전으로:한국-홍콩 합작의 과거를 통해 미래를 바라보기 | 샘 호(영화연구자)"]

목차 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지원문 연결kmdbUrl
[null]

KMDb 연결 주소 표시용 필드. 현재 DB 연결 매핑이 없어 null. 프론트 연결 규격 별도 확인 필요.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
9페이지제목·저자/감독·제작연도·발간일/출시일·본문·소개·목차검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

TB_BOOK_DVD AUT_NM/FBCTN_YR/PBLS_YMD/BOOK_DVD_CN/AUT_DRC_INTRO_CN/TOC_DVD_CN. PRCHS_URL_CN은 구매 URL. planner는 CAST NULL.

필수 표시 키는 제공. 실제79/151 publicationDate=null 등은 원천 표본 없음으로 유지. 기존 확인필요였던 KMDb 원문보기는 사용자가 프론트 처리 확정하였으므로 백엔드 미구현 사유에서 제외. planner는 PDF 항목이 아니지만 이번 검토에서 DTO 삭제는 하지 않음.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/books/79

{}

2026-10-16T17:03:29.886601+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.32

발간물―블루레이·DVD 목록

/content/publication/dvds

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 2개

GET블루레이·DVD 발간물 목록 조회
/api/v1/content/publication/dvds
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

실제 CMS 코드 사용 합의 유지. year/categoryCode/page2 HTTP200,producer 제공.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-16T17:03:30.329043+09:00

http://localhost:4100/api/v1/content/publication/dvds

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 151,
  "typeCode": "CPB02002",
  "categoryCode": "CPB02002001",
  "categoryName": "블루레이컬렉션",
  "title": "유현목 컬렉션: <오발탄> <김약국의...",
  "author": "유현목",
  "producer": "기획:한국영상자료원 제작:블루키노",
  "productionYear": "2025",
  "publicationDate": null,
  "thumbnailUrl": "/img/mig/publication...",
  "imageDescription": null,
  "planner": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지제목items[].title
["유현목 컬렉션: <오발탄> <김약국의 딸들>", "이명세 컬렉션: <나의 사랑 나의 신부> <첫사랑>", "<난장이가 쏘아올린 작은공>(1981)", "신동헌 애니메이션 컬렉션: <홍길동>, <호피와 차돌바위>", "<살인마>(1965)", "강태웅 애니메이션 컬렉션: <흥부와 놀부>, <콩쥐팥쥐>", "<돌아오지 않는 해병>(1963)", "<그들도 우리처럼>(1990)"]

발간물 제목. BOOK_DVD_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지분류items[].categoryName
["블루레이컬렉션", "블루레이컬렉션", "블루레이컬렉션", "블루레이컬렉션", "블루레이컬렉션", "블루레이컬렉션", "블루레이컬렉션", "블루레이컬렉션"]

세부분류 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지발행/제작년도items[].productionYear
["2025", "2024", "2024", "2023", "2023", "2023", "2023", "2023"]

제작연도. FBCTN_YR 원문 문자열. year 필터 기준.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지출시/발행일items[].publicationDate
[null, null, null, null, null, null, null, null]

발행일. PBLS_YMD 원문 문자열이며 제작연도와 별도 항목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지이미지items[].thumbnailUrl
["/img/mig/publicationBoard/372c40ab-276b-44d1-9956-b0de0804abc2_M.webp", "/img/mig/publicationBoard/6e70caca-1a21-48ae-ab1d-4e91740e5c0e_M.webp", "/img/mig/publicationBoard/af8a7fad-78a8-4a8a-81e9-13df2c532891_M.webp", "/img/mig/publicationBoard/5bf1b651-1d23-41d3-808f-f1ed48f947a4_M.webp", "/img/mig/publicationBoard/ac5642dd-e89c-429b-a6ba-f5f45629f7a6_M.webp", "/img/mig/publicationBoard/b684fa84-d835-48d3-af4f-cb5b7bb07d86_M.webp", "/img/mig/publicationBoard/ec76ab19-9ba4-49dc-b486-a46d3b15fd98_M.webp", "/img/mig/publicationBoard/718589ec-88ad-4e99-9548-cbed218f44ee_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지목록 제작 정보items[].producer
["기획:한국영상자료원 제작:블루키노", "기획:한국영상자료원 제작:블루키노", "기획:한국영상자료원 제작:블루키노", "블루키노", "블루키노", "블루키노", "블루키노", "블루키노"]

제작자명. PDCR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지목록 8건 페이징·총건수size / totalElements
[8, 80]

한 페이지에 조회하는 최대 건수. 마지막 페이지의 실제 items 개수와 다를 수 있음. / 현재 검색·필터 조건에 맞는 전체 결과 건수.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지분류·제작연도 필터·제작정보·8건 페이징검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

TB_BOOK_DVD CLSF_SE_CD/DCLSF_CD/BOOK_DVD_TTL/PDCR_NM/FBCTN_YR, TB_COM_CD CPB02.

실제 CMS 코드 사용 합의 유지. year/categoryCode/page2 HTTP200,producer 제공.

제공
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/dvds?categoryCode=CPB02002001&year=2025

{}

2026-10-16T17:03:30.608091+09:00일치: 반환 분류가 요청 분류 또는 하위 분류 / 일치: 제작연도가 요청 연도와 일치44
GET
200
http://localhost:4100/api/v1/content/publication/dvds?year=2024

{}

2026-10-16T17:03:30.584067+09:00일치: 제작연도가 요청 연도와 일치17
GET
200
http://localhost:4100/api/v1/content/publication/dvds?year=2025

{}

2026-10-16T17:03:30.557671+09:00일치: 제작연도가 요청 연도와 일치19
GET
200
http://localhost:4100/api/v1/content/publication/dvds?categoryCode=CPB02002002

{}

2026-10-16T17:03:30.504962+09:00일치: 반환 분류가 요청 분류 또는 하위 분류44
GET
200
http://localhost:4100/api/v1/content/publication/dvds?categoryCode=CPB02002001

{}

2026-10-16T17:03:30.450962+09:00일치: 반환 분류가 요청 분류 또는 하위 분류46
GET
200
http://localhost:4100/api/v1/content/publication/dvds?page=2

{}

2026-10-16T17:03:30.355660+09:00일치: 응답 페이징 번호가 요청과 일치18
GET
200
http://localhost:4100/api/v1/content/publication/dvds

{}

2026-10-16T17:03:30.329043+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.18
GET블루레이·DVD 분류·연도 필터 조회
/api/v1/content/publication/dvds/filters
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기획 예시와 CMS 코드명이 다른 항목은 사용자 합의대로 CMS 기준.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-16T17:03:30.412097+09:00

http://localhost:4100/api/v1/content/publication/dvds/filters

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "categories": [
    {
      "code": "CPB02002001",
      "name": "블루레이컬렉션",
      "parentCode": "CPB02002",
      "sortOrder": 1
    },
    {
      "code": "CPB02002002",
      "name": "감독 컬렉션",
      "parentCode": "CPB02002",
      "sortOrder": 2
    }
  ],
  "years": [
    2025,
    2024,
    2023,
    2022,
    2021,
    2020,
    2019,
    2018,
    2017,
    2016,
    2015,
    2014,
    2013,
    2012,
    2011,
    2010,
    2009,
    2008,
    2007,
    2006,
    2005,
    2004
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지DVD 분류·연도 선택값categories / years
[[{"code": "CPB02002001", "name": "블루레이컬렉션", "parentCode": "CPB02002", "sortOrder": 1}, {"code": "CPB02002002", "name": "감독 컬렉션", "parentCode": "CPB02002", "sortOrder": 2}], [2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004]]

발간물의 현재 사용 가능한 분류 공통코드 목록. categoryCode 입력에 사용. / 발간물 제작연도(FBCTN_YR) 필터에 사용할 연도 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지사용중 CMS 분류 트리·연도 내림차순검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

PublicationBookMapper/PublicationDvdMapper TB_COM_CD USE_YN=Y,SORT_SEQ, FBCTN_YR DISTINCT DESC.

기획 예시와 CMS 코드명이 다른 항목은 사용자 합의대로 CMS 기준.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/dvds/filters

{}

2026-10-16T17:03:30.412097+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.32

발간물―블루레이·DVD 상세

/content/publication/dvds/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET블루레이·DVD 발간물 상세·본문 조회
/api/v1/content/publication/dvds/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

필수 표시 키는 제공. 실제79/151 publicationDate=null 등은 원천 표본 없음으로 유지. 기존 확인필요였던 KMDb 원문보기는 사용자가 프론트 처리 확정하였으므로 백엔드 미구현 사유에서 제외. planner는 PDF 항목이 아니지만 이번 검토에서 DTO 삭제는 하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 10페이지

HTTP 조회 시각: 2026-10-16T17:03:30.381075+09:00

http://localhost:4100/api/v1/content/publication/dvds/151

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "publication": {
    "id": 151,
    "typeCode": "CPB02002",
    "categoryCode": "CPB02002001",
    "categoryName": "블루레이컬렉션",
    "title": "유현목 컬렉션: <오발탄> <김약국의...",
    "author": "유현목",
    "producer": "기획:한국영상자료원 제작:블루키노",
    "productionYear": "2025",
    "publicationDate": null,
    "thumbnailUrl": "/img/mig/publication...",
    "imageDescription": null,
    "planner": "확인이 필요한 데이터"
  },
  "purchaseUrl": null,
  "bodyHtml": "한국영상자료원이 한국영화사의 지성을 ...",
  "authorHtml": null,
  "contentsHtml": "&lt;오발탄&gt;, &lt;김약국...",
  "kmdbUrl": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
10페이지제목publication.title
["유현목 컬렉션: <오발탄> <김약국의 딸들>"]

발간물 제목. BOOK_DVD_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지저자publication.author
["유현목"]

저자명. AUT_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지감독/제작자publication.producer
["기획:한국영상자료원 제작:블루키노"]

제작자명. PDCR_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지기획자publication.planner
[null]

기획자 표시용 필드. 원천 컬럼 매핑이 확인되지 않아 현재 SQL은 null 반환. 확인이 필요한 데이터.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지내용bodyHtml
["한국영상자료원이 한국영화사의 지성을 상징하는 거목 유현목의 대표작 &lt;오발탄&gt;(1961)과 &lt;김약국의 딸들&gt;(1963)을 블루레이로 담은 &lsquo;유현목 컬렉션&rsquo;을 출시했다. 한국영상자료원이 기획하고 블루키노가 제작한 37번째 블루레이 타이틀이다.&nbsp;<br />\r\n<br />\r\n유현목은 한국영화사에서 가장 중요한 감독 중 한 명이자, 당대 최고의 지성으로 평가받는다. 그는 1956년 &lt;교차로&gt;로 데뷔한 이래 &lt;말미잘&gt;(1994)까지 38년간 총 43편의 작품을 남겼다. 그의 영화 목록은 &lt;오발탄&gt;으로 대표되는 사회비판적 문예영화를 비롯해, 멜로드라마, 코미디, 반공&bull;계몽 영화에 이르기까지 다방면에 걸쳐 있지만, 어떤 영화에서건 현실에 대한 깊은 고민을 놓지 않으면서 부조리한 세계 속 인간의 고난과 구원과 같은 근본적인 질문을 탐구하는 일관성을 보여준다.유현목은 한국 리얼리즘의 거장이라 불리지만, 실제 그의 영화들은 유럽 모더니즘 영화의 영향을 받아 형식주의적 경향이 강한 복합적인 면모를 띤다. 유현목 스스로 &quot;나는 논리로서 사고하기보다 영상으로 사고한다&quot;고 말했을 만큼, 그는 영화 언어를 통해 자신의 작품 세계를 구축하려 했던 작가였다. 비평가들은 그를 &quot;한국영화의 숭고한 작가정신의 상징&quot;(김종원), &quot;한국영화를 예술의 차원으로 끌어올린 감독&quot;(변인식) 등으로 평가하며 그의 영화사적 지위를 공고히 했다. 실존과 소외, 신과 인간의 갈등, 분단의 비극 등 묵직한 주제를 끊임없이 탐구하며 한국 영화의 정신적 깊이를 더한 그는, 그 자체로 한국영화사를 상징하는 이름으로 기억된다. &nbsp;&nbsp;<br />\r\n<br />\r\n&lt;오발탄&gt;은 수십 년간 한국영화 걸작 목록에서 부동의 1위를 차지하며 &#39;한국의 &lt;시민 케인&gt;&#39;으로 불려온 작품이다. 성실하지만 무력한 가장 철호(김진규)와 현실 타개를 위해 범죄를 택하는 동생 영호(최무룡)를 통해 전후 세대의 좌절과 고통을 심도 있게 조명하는 이 영화는 전쟁 후 피폐해진 1950년대 한국 사회의 총체적인 아노미와 빈곤, 사회 문제 등을 한 가족의 비극 속에 고스란히 녹여냈다. 당시 군사정부는 영화가 현실과 동떨어진 비참한 이야기라며 상영을 금지했지만, 이 사건은 오히려 &lt;오발탄&gt;을 시대의 저항 정신을 상징하는 작품으로 만들었다. &lt;오발탄&gt;의 매력은 단순한 현실 고발을 넘어선 미학적 성취에 있다. 유현목 감독은 프레임 속 프레임, 주관적 쇼트, 재즈와 국악이 뒤섞인 사운드 디자인 등 실험적인 영화 언어를 통해 인물의 내면과 부조리한 현실을 감각적으로 표현했다. 이러한 형식주의적 스타일은 관객이 서사에 온전히 몰입하는 것을 방해하며 영화의 숨은 의미를 성찰하게 만든다. 이에, 영화사가 이영일은 &lt;오발탄&gt;에 대해 &ldquo;한국 리얼리즘 영화의 결정을 이룩하였고 리얼리즘 영화의 한계를 탈출시키는 한 작품&rdquo;이라 평했다. 리얼리즘의 한계를 넘어선 이 걸작은 시대를 초월하는 철저한 비극성과 미학적 세련됨으로 오늘날까지도 각 시대마다 새롭게 재발견되고 있다.<br />\r\n<br />\r\n박경리 작가의 동명 소설을 원작으로 한 이 영화는 구한말부터 1930년대까지 한 가문의 몰락사를 통해 격동의 시대를 담아낸 유현목 감독의 대표작이다. &quot;비상 먹은 자손은 피 말라 죽는다&quot;는 샤머니즘적 저주로 시작하는 영화는 운명론적인 서사를 펼쳐 보이며, 김약국(김동원) 집안 네 딸들의 비극적인 삶을 통해 전근대적 가치와 근대적 변화가 충돌하며 빚어내는 파국을 그린다. 이 영화는 유현목 감독의 종교에 대한 깊은 성찰을 엿볼 수 있는 작품이기도 하다. 무고한 인물들이 고통받는 상황에서 신이 침묵하는 실존주의적 주제를 샤머니즘과 기독교 모두에 투영하며 질문을 던진다. 원작과 달리 영화에서는 기독교 신자인 딸들이 살아남아 아버지의 세계를 계승하듯 고향에 남는 결말을 보여주는데, 이는 단절이 아닌 화합을 통해 근대로 나아가고자 했던 감독의 독자적인 세계관을 확인할 수 있는 지점이다.&nbsp;<br />\r\n<br />\r\n이번 블루레이 구성에서 가장 눈에 띄는 점은 유현목 감독의 친필 메모가 수록된 &lt;오발탄&gt; 시나리오북이 별책으로 수록되었다는 것이다. 전체적으로 완성작에 비해 양이 많고 촬영진행일정표가 첨부된 것으로 보아 영화 촬영을 위해 유현목 감독이 직접 사용한 버전으로 보인다. 이번 블루레이에는 한국영상자료원이 수년간에 걸쳐 복원한 고화질 영상 소스가 사용되었다. 특히 &lt;오발탄&gt;은 세계적으로도 유례가 드문, 영화 전체의 영어 자막을 제거하는 고난도 작업을 통해 복원되어 그 가치를 더한다. 또한 &lt;김약국의 딸들&gt;은 한국영상자료원이 2024년 오리지널 네거티브 필름을 4K로 복원한 버전으로 유현목 감독의 정교한 미장센을 선명하게 확인할 수 있다. 영화평론가 정성일의 &lt;오발탄&gt; 코멘터리는 이 영화를 완전히 새롭게 해석할 수 있게 하며, 김일란 감독, 손희정 평론가, 영상자료원 조준형이 참여한 &lt;김약국의 딸들&gt; 코멘터리는 이 영화가 특히 여성사의 측면에서 어떤 장점이 있는지를 분석한다. 소책자에는 조준형 선임연구원의 감독론 및 작품론이 수록되어 실존주의라는 키워드를 통해 유현목의 복잡하고 깊이 있는 영화 세계를 이해하는 데 큰 도움을 줄 것이다.<br />\r\n&nbsp;"]

발간물 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지저자/감독 소개authorHtml
[null]

저자 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지차례/DVD정보contentsHtml
["&lt;오발탄&gt;, &lt;김약국의 딸들&gt;<br />\r\n본편 자막: 한국어, 영어, 일어<br />\r\n화면: 1080P FULL HD 16:9 <br />\r\n오디오: Korean DOLBY DIGITAL MONO<br />\r\n등급: 15세 이상 관람가<br />\r\n<br />\r\nSpecial Features<br />\r\n- &lt;오발탄&gt; 음성해설: 정성일(영화평론가, 영화감독)<br />\r\n- &lt;김약국의 딸들&gt; 음성해설: 김일란(영화감독) 손희정(영화평론가) 조준형(영상자료원)<br />\r\n- &lt;오발탄&gt;, &lt;김약국의 딸들&gt; 복원 전후 영상 <br />\r\n- 이미지 자료모음 <br />\r\n- &lt;오발탄&gt; 시나리오 레플리카<br />\r\n<br />\r\n소책자<br />\r\n- 블루레이 복원노트, 한국영상자료원 디지털복원팀<br />\r\n- 실존주의로 본 유현목의 영화세계, 조준형(영상자료원)<br />\r\n- &lt;오발탄&gt;은 어떻게 오늘날까지 걸작으로 남았을까, 조준형<br />\r\n- 김약국의 딸들: 샤머니즘의 전근대에서 개신교의 근대로?, 조준형"]

목차 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지원문 연결kmdbUrl
[null]

KMDb 연결 주소 표시용 필드. 현재 DB 연결 매핑이 없어 null. 프론트 연결 규격 별도 확인 필요.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
10페이지제목·저자/감독·제작연도·발간일/출시일·본문·소개·목차검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

TB_BOOK_DVD AUT_NM/FBCTN_YR/PBLS_YMD/BOOK_DVD_CN/AUT_DRC_INTRO_CN/TOC_DVD_CN. PRCHS_URL_CN은 구매 URL. planner는 CAST NULL.

필수 표시 키는 제공. 실제79/151 publicationDate=null 등은 원천 표본 없음으로 유지. 기존 확인필요였던 KMDb 원문보기는 사용자가 프론트 처리 확정하였으므로 백엔드 미구현 사유에서 제외. planner는 PDF 항목이 아니지만 이번 검토에서 DTO 삭제는 하지 않음.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/dvds/151

{}

2026-10-16T17:03:30.381075+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.24

발간물―기관지 목록

/content/publication/magazine

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET기관지 발간 목록 조회
/api/v1/content/publication/magazine
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

2026-10-21 KOFA-248 수정·실제 HTTP 검증: CMS DB상 기관지61/첨부12956의 img/mig/webzine PDF는 없고 실제 서버 파일은 doc/mig/webzine에 있음을 확인. 기관지에 한해 원래 파일이 없을 때 같은 NAS의 확인된 이관 경로 조회. 서버 실제 PDF의 로컬 임시 NAS 복사본+실제 CMS DB로 HTTP200, 원본명 아카이브 프리즘_15호.pdf, 14,534,843 bytes, SHA-256 원본 일치. 타 기관지/미등록 첨부404, /m2/doc 정적 미공개404. DB·서버 설정·배포 변경 없음. 배포 서버는 수정 전404이며 WAR 반영 후 재검증 필요.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 11페이지

HTTP 조회 시각: 2026-10-21T09:38:17.992448+00:00

http://localhost:4101/api/v1/content/publication/magazine?size=1

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 61,
  "title": "아카이브 프리즘 #15",
  "subtitle": "필름 아카이브 투데이 Vol. 3 ",
  "publicationDate": "20231231",
  "registeredAt": "20231231000000",
  "thumbnailUrl": "http://kofafilm.arch...",
  "imageDescription": "필름 아카이브 투데이 Vol. 3&n...",
  "attachmentId": 12956,
  "downloadUrl": "/api/v1/files/magazi..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
11페이지기관지명items[].title
["아카이브 프리즘 #15", "아카이브 프리즘 #14", "아카이브 프리즘 #13", "아카이브 프리즘 #12", "아카이브 프리즘 #11", "아카이브 프리즘 #10", "아카이브 프리즘 #9", "아카이브 프리즘 #8"]

잡지 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지제목/부제items[].subtitle
["필름 아카이브 투데이 Vol. 3&nbsp;", "한국영화의 가요들", "한국영화의 장소들", "대사극장 - 한국영화를 만든 대사 100", "필름 아카이브 투데이 Vol.2", "포스터 이슈 - 2000년 이후 한국영화 포스터", "리와인드 - 비디오 시대의 어휘들", "필모그래피-윤여정"]

사용자 확정 원천: CMS TB_WBZN.WBZN_SMRY_CN → summary/subtitle.

실제 HTTP에서 subtitle와 summary 일치 확인. 미입력 시 null.

제공
11페이지발행일items[].publicationDate
["20231231", "20231030", "20230831", "20230615", "20221230", "20221122", "20220730", "20220430"]

잡지 발행일. CMS 원문 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지등록일items[].registeredAt
["20231231000000", "20231030000000", "20230831000000", "20230615000000", "20221230000000", "20221122000000", "20220730000000", "20220430000000"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지대표이미지items[].thumbnailUrl
["http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2024/03/07/9ce59cca-15e8-4c90-8b84-7571ce3722e5_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2023/11/28/180a7bb5-521f-498d-92ef-2563440fbab8_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2023/09/12/8ba09c2d-98bd-40c8-8927-246f322fdd40_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2023/08/11/8fd036df-d194-494d-bd4b-0d615a8a8a7d_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2023/02/17/25734951-6600-437a-839e-bc00cc15c4d5_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2022/11/22/537cb3a5-075d-4fa4-88f2-618ef75b9ed4_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2022/08/18/5962cdc2-ed35-4b28-8133-4aeac95011ee_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/webzine/2022/06/03/7920d34f-f24e-4ff3-ad27-bc5501b38d6c_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지원문 첨부 IDitems[].attachmentId
[12956, 12955, 12953, 12962, 12964, 12961, 12954, 12960]

TB_MLT_ATCH_FILE.MENU_ID=66/CONTS_ID=TB_INST_PBLC.INST_PBLC_ID/ATCH_FILE_ID. 원문 파일은 downloadUrl로 다운로드. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
11페이지기관지 제목·부제·등록일·이미지·PDF 다운로드검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조. 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

TB_INST_PBLC INST_PBLC_TTL/INST_PBLC_SBTTL/REG_DT/RPRS_ATCH_FILE_ID, TB_MLT_ATCH_FILE MENU_ID66/CONTS_ID/ATCH_FILE_ID. 실제41 attachmentId215. TB_RPRS_ATCH_FILE.ATCH_FILE_PATH_NM/STRG_FILE_NM 원본 확인. TB_MLT_ATCH_FILE.ATCH_FILE_PATH_NM/STRG_FILE_NM 결합, MENU_ID=66. AttachmentSource.MAGAZINE 및 기존 /data 다운로드 처리 재사용.

2026-10-21 KOFA-248 수정·실제 HTTP 검증: CMS DB상 기관지61/첨부12956의 img/mig/webzine PDF는 없고 실제 서버 파일은 doc/mig/webzine에 있음을 확인. 기관지에 한해 원래 파일이 없을 때 같은 NAS의 확인된 이관 경로 조회. 서버 실제 PDF의 로컬 임시 NAS 복사본+실제 CMS DB로 HTTP200, 원본명 아카이브 프리즘_15호.pdf, 14,534,843 bytes, SHA-256 원본 일치. 타 기관지/미등록 첨부404, /m2/doc 정적 미공개404. DB·서버 설정·배포 변경 없음. 배포 서버는 수정 전404이며 WAR 반영 후 재검증 필요.

제공
11페이지기관지 PDF 다운로드(KOFA-248)items[].downloadUrl
GET /api/v1/files/magazine/61/12956/download → HTTP200 / PDF 14,534,843 bytes

TB_INST_PBLC.INST_PBLC_ID + TB_MLT_ATCH_FILE.MENU_ID=66/CONTS_ID/ATCH_FILE_ID/ATCH_FILE_PATH_NM/ORGNL_FILE_NM. 파일 누락 시 확인된 doc/mig/webzine 이관 경로 조회.

2026-10-21 KOFA-248 수정·실제 HTTP 검증: CMS DB상 기관지61/첨부12956의 img/mig/webzine PDF는 없고 실제 서버 파일은 doc/mig/webzine에 있음을 확인. 기관지에 한해 원래 파일이 없을 때 같은 NAS의 확인된 이관 경로 조회. 서버 실제 PDF의 로컬 임시 NAS 복사본+실제 CMS DB로 HTTP200, 원본명 아카이브 프리즘_15호.pdf, 14,534,843 bytes, SHA-256 원본 일치. 타 기관지/미등록 첨부404, /m2/doc 정적 미공개404. DB·서버 설정·배포 변경 없음. 배포 서버는 수정 전404이며 WAR 반영 후 재검증 필요.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4101/api/v1/content/publication/magazine?size=1

{}

2026-10-21T09:38:17.992448+00:00일치: 실제 CMS DB 목록 조회327
GET
200
http://localhost:4101/api/v1/files/magazine/61/12956/download

{}

2026-10-21T09:38:18.319231+00:00일치: 실제 서버 PDF+CMS DB로 다운로드200, 원본 SHA-256 일치50
GET
404
http://localhost:4101/api/v1/files/magazine/60/12956/download

{}

2026-10-21T09:38:18.369360+00:00일치: 다른 기관지·미등록 첨부·doc 정적 접근404 유지26
GET
404
http://localhost:4101/api/v1/files/magazine/61/999999999/download

{}

2026-10-21T09:38:18.394941+00:00일치: 다른 기관지·미등록 첨부·doc 정적 접근404 유지16
GET
404
http://localhost:4101/m2/doc/mig/webzine/2024/03/07/45347e50-4c94-48ce-9f6f-53a2df7e0bb9.pdf

{}

2026-10-21T09:38:18.410654+00:00일치: 다른 기관지·미등록 첨부·doc 정적 접근404 유지114
GET
200
http://localhost:4100/api/v1/content/publication/magazine

{}

2026-10-20T10:34:11.919472+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음47
GET
200
http://localhost:4100/api/v1/content/publication/magazine

{}

2026-10-19T02:04:16.037264+00:00일치: CMS 대표첨부 원본 파일명으로 이미지 절대 URL 및 다운로드 URL 반환79
GET
200
http://localhost:4100/api/v1/content/publication/magazine?page=2

{}

2026-10-16T17:03:30.688059+09:00일치: 응답 페이징 번호가 요청과 일치15
GET
200
http://localhost:4100/api/v1/content/publication/magazine

{}

2026-10-16T17:03:30.659642+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.22

콘텐츠›아카이브 기술

2개 페이지 · 2개 항목
콘텐츠 아카이브 기술의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

아카이브 기술 목록

/content/archivetechnology

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET아카이브 기술 목록 조회
/api/v1/content/archivetechnology
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

제목·등록일·이미지 키와 페이징 제공. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 13페이지

HTTP 조회 시각: 2026-10-20T10:34:11.948281+09:00

http://localhost:4100/api/v1/content/archivetechnology

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 18,
  "title": "한국영상자료원 필름 보존 기술",
  "subtitle": "한 편의 영화가 보존실로 들어오기까지",
  "registeredAt": "20260916173126",
  "thumbnailUrl": "http://kofafilm.arch...",
  "imageDescription": "필름 보존 기술 대표 이미지"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
13페이지제목items[].title
["한국영상자료원 필름 보존 기술", "필름 보존 기술"]

보존기술 게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지등록일items[].registeredAt
["20260916173126", "20260901110414"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지이미지items[].thumbnailUrl
["http://kofafilm.archivecenter.or.kr/m2/img/dc/f3/dcf30fdb99a2a633d309b8d1e48fca1e_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/75/ac/75aceeeb940f2a9d22bcd986124d4142_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지이미지·제목·등록일·10건 페이징검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조. 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

TB_ARCV_TECH 및 대표첨부. 실제18 목록 및page2 HTTP200.

제목·등록일·이미지 키와 페이징 제공. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/archivetechnology

{}

2026-10-20T10:34:11.948281+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음21
GET
200
http://localhost:4100/api/v1/content/archivetechnology?page=2

{}

2026-10-16T17:03:30.726715+09:00일치: 응답 페이징 번호가 요청과 일치13
GET
200
http://localhost:4100/api/v1/content/archivetechnology

{}

2026-10-16T17:03:30.708469+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.13

아카이브 기술 상세

/content/archivetechnology/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 1개

GET아카이브 기술 본문·인접 글 조회
/api/v1/content/archivetechnology/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

목록의 실제 공개18로 상세200. 과거 표본19는404이며500 아님. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 14페이지

HTTP 조회 시각: 2026-10-20T10:34:11.966579+09:00

http://localhost:4100/api/v1/content/archivetechnology/18

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 18,
    "title": "한국영상자료원 필름 보존 기술",
    "subtitle": "한 편의 영화가 보존실로 들어오기까지",
    "registeredAt": "20260916173126",
    "bodyHtml": "<div class=\"kmdb-edi...",
    "thumbnailUrl": "http://kofafilm.arch...",
    "imageDescription": "필름 보존 기술 대표 이미지"
  },
  "previous": null,
  "next": {
    "id": 2,
    "title": "필름 보존 기술"
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
14페이지본문article.bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">\n\n<iframe allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\" frameborder=\"0\" src=\"https://www.youtube.com/embed/zBFmzN9daDI\" title=\"YouTube video\"></iframe>\n\n<p>오늘날의 디지털 시대에도 필름은 보존성에 있어 현존하는 가장 안정적인 영상매체입니다. 이러한 필름을 보존하기 위해 한국영상자료원에서는 다양한 아날로그 필름 작업들이 이뤄지고 있습니다. 필름 보존관리, 필름 심화보수, 필름 인화/현상 파트들은 각기 독립적인 듯 보이지만 유기적인 관계를 지니며 필름 보존이라는 하나의 목표를 향해 나아가고 있습니다.</p>\n\n<h2 class=\"kmdb-editor-heading-2\">필름 보존관리</h2>\n\n\n<p>필름 보존 환경 관리, 최초 입수된 필름의 점검 및 기초 보존처리, 기보유 필름의 주기적 관리, 초산화증후군 필름 관리 등 필름을 보호하고 간수하기 위한 전방위적 작업들이 모두 포함됩니다.</p>\n<div class=\"kmdb-editor-button-row\">\n<a class=\"kmdb-editor-button kmdb-editor-button--large kmdb-editor-button--light kmdb-editor-button--arrow-right kmdb-editor-button--full\" href=\"https://www.kmdb.or.kr/vod/player2?movieId=A&amp;movieSeq=12283&amp;mulId=58947&amp;fileId=98365&amp;levelClss=A&amp;userId=\" title=\"이동\">필름 보존관리 현황 소개(토크#1) 영상 보러가기</a><a class=\"kmdb-editor-button kmdb-editor-button--large kmdb-editor-button--light kmdb-editor-button--arrow-right kmdb-editor-button--full\" href=\"https://www.koreafilm.or.kr/kofa/news/webzine/BC_0000061393?page=2&amp;keyWord=%EC%83%81%EC%83%81&amp;keyField=all\" title=\"이동\">초산화 필름 보존관리 관련 해외 교류 웹진 보러가기</a>\n</div>\n\n<h3 class=\"kmdb-editor-heading-3\">필름 이원 보존 &amp; 환경 관리</h3>\n\n<p>한국영화의 안정적인 보존을 위해 상암 본원과 파주보존센터 두 곳에서 필름을 이원 보존 하고 있습니다. 동일한 영화에 대해서 필름의 종류에 따라 구분 배치하고 있으며 상암에는 포지티브 필름을, 파주에는 네거티브 필름을 보관합니다. 모든 보존실은 필름이 반영구적으로 보존될 수 있는 기준치에 맞게 24시간 일정한 온도와 습도로 운영됩니다.</p>\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"상암 필름 보존고\" aria-label=\"상암 필름 보존고 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_sangam_storage.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    포지티브 필름전용 총 5개실 (5℃/30% 2개실, 15℃/30% 3개실)\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"파주 필름 보존고\" aria-label=\"파주 필름 보존고 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_paju_storage.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    네거티브 필름전용 총 10개실 (5℃/30% 10개실)\n   </figcaption>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"동일 영화 같은 장면 포지티브 필름\" aria-label=\"동일 영화 같은 장면 포지티브 필름 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_positive.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    동일 영화 같은 장면 포지티브 필름\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"동일 영화 같은 장면 네거티브 필름\" aria-label=\"동일 영화 같은 장면 네거티브 필름 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_negative.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    동일 영화 같은 장면 네거티브 필름\n   </figcaption>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-4\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Master Positive\" aria-label=\"Master Positive 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_mp_film.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Master Positive\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Release Print\" aria-label=\"Release Print 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_rp_film.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Release Print\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Original Negative\" aria-label=\"Original Negative 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_on_film.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Original Negative\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Dupe Negative\" aria-label=\"Dupe Negative 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/dual_film_env/dual_dn_film.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Dupe Negative\n   </figcaption>\n</figure>\n</div>\n\n<p>필름은 광학 복사 원리에 의해 필연적으로 ‘네가티브-&gt;포지티브’ 또는 ‘포지티브-&gt;네가티브’로의 복사만 가능합니다. 따라서 촬영장에서 최초로 촬영된 원본 필름(ON)에서부터 극장에 영사용으로 배포되던 프린트(RP)를 만들기까지 여러 중간 과정물이 생기게 됩니다.(MP, DN)</p>\n\n<h3 class=\"kmdb-editor-heading-3\">입수 필름 점검 및 보존처리 과정</h3>\n\n<p>입수 필름 점검 및 보존처리 과정은 한국영상자료원으로 입수된 필름의 정체를 파악하고 물리적, 화학적 상태를 기록하며 보존적 예방조치가 이뤄지는 중요한 단계입니다. 외부에서 유입된 필름의 경우 실제 담겨 있는 영화와 다른 제명이 기록된 캔에 담겨 있기도 하고, 훼손 및 오염이 심각한 경우가 많아 면밀한 검수가 요구됩니다. 해당 점검 정보는 이후 심화 보수나 인화/현상 작업 시 중요한 참고 데이터가 되기도 합니다.</p>\n\n<div class=\"kmdb-editor-image-grid-4\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"기본분류\" aria-label=\"기본분류 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_classify.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    1. 기본분류\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"이물질 분리 및 작업대 거치\" aria-label=\"이물질 분리 및 작업대 거치 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_clean_mount.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    2. 이물질 분리 및 작업대 거치\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"제명, 규격, 화면비율 등 확인\" aria-label=\"제명, 규격, 화면비율 등 확인 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_check_specs.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    3. 제명, 규격, 화면비율 등 확인\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"길이 측정(프레임 단위)\" aria-label=\"길이 측정(프레임 단위) 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_length_frames.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    4. 길이 측정(프레임 단위)\n   </figcaption>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-4\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"기본 보수\" aria-label=\"기본 보수 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_repair_before.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"기본 보수\" aria-label=\"기본 보수 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_repair_after.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    ⬇ 5. 기본 보수\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"보존용품 적용\" aria-label=\"보존용품 적용 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_apply_supplies.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    6. 보존용품 적용\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"데이터 입력 및 라벨 부착\" aria-label=\"데이터 입력 및 라벨 부착 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_data_label.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    7. 데이터 입력 및 라벨 부착\n   </figcaption>\n</figure>\n</div>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"보존고 배가\" aria-label=\"보존고 배가 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_inspection_preservation/inspect_storage.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n   8. 보존고 배가\n  </figcaption>\n</figure>\n\n\n<h3 class=\"kmdb-editor-heading-3\">초산화 필름 관리</h3>\n\n<p>필름 초산화 현상이란 아세테이트(acetate) 재질 필름에서 관찰되는 현상으로서 습기와 열에 의해 발생되는 화학적 반응입니다. 해당 반응의 결과로 초산이 형성되면서 필름 베이스 층의 가수분해가 빠르게 진행되며 젤라틴 층에도 영향을 미쳐 필름의 물리적, 화학적 손상이 가속화됩니다. 한번 시작된 초산화를 없애는 것은 불가능에 가까우며 낮은 온도 보관, 주기적인 환기, 초산화방지약품 사용 등으로 진행을 억제하는 수 밖에 없습니다.</p>\n\n<div class=\"kmdb-editor-image-grid-3\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"초산화필름1\" aria-label=\"초산화필름1 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_sample_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"초산화필름2\" aria-label=\"초산화필름2 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_sample_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"초산화필름3\" aria-label=\"초산화필름3 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_sample_3.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n<p>현재, 한국영상자료원에서는 초산화방지약품으로 코닥사의 몰레큘러시브(Molecular Sieve)를 사용하고 있습니다. 필름의 규격 및 길이에 따라 제조사에서 권장하는 양의 약품을 투입하고 있으며 보존 환경 5℃/30% 기준 5~10년 주기로 약품을 교체합니다.</p>\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"몰레큘러시브 내부 모습\" aria-label=\"몰레큘러시브 내부 모습 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_molecul_sieve_inside.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    몰레큘러시브 내부 모습\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"몰레큘러시브 투입 예시\" aria-label=\"몰레큘러시브 투입 예시 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_molecul_sieve_insert.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    몰레큘러시브 투입 예시\n   </figcaption>\n</figure>\n</div>\n\n<p>체계적인 필름 초산화 관리를 위해서는, 필름마다 차이를 보이는 초산화 정도를 분류해야 합니다. 초산화가 심한 필름일수록 조치가 시급하며 유사시 디지털화나 인화/현상의 대상으로 선정해야 할 수도 있습니다. 또한, 초산화 정도가 약한 필름일지라도 상태가 악화될 수 있기 때문에 지속적인 모니터링이 필요합니다. 이를 위해 한국영상자료원에서는 초산화등급확인용지(AD-Strips)를 활용하여 보존용 필름의 초산화 레벨을 파악하고 있습니다.</p>\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"AD-Strips 사용 예시\" aria-label=\"AD-Strips 사용 예시 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_adstrips_example.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    AD-Strips 사용 예시\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"초산화 레벨 캔부착 예시\" aria-label=\"초산화 레벨 캔부착 예시 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_can_attachment.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    초산화 레벨 캔부착 예시\n   </figcaption>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-4\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Level 0\" aria-label=\"Level 0 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_level_0.JPG\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Level 0\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Level 1\" aria-label=\"Level 1 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_level_1.JPG\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Level 1\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Level 2\" aria-label=\"Level 2 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_level_2.JPG\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Level 2\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Level 3\" aria-label=\"Level 3 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/vinegar_syndrome/vinegar_level_3.JPG\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Level 3\n   </figcaption>\n</figure>\n</div>\n\n\n<h3 class=\"kmdb-editor-heading-3\">국가등록문화유산 지정필름 관리</h3>\n\n<p>한국영상자료원 파주보존센터에는 국가유산청 심의를 거쳐 국가등록문화유산으로 지정된 영화 필름 12벌이 보존돼있습니다. 과거 영화의 매체로서만 소비되던 필름이 한 시대의 문화적 맥락을 종합적으로 담고 있는 소중한 국가유산으로 인정받고 있습니다. 해당 필름들은 매년 상·하반기에 정기 육안 점검을 받고, 5년에 한 번씩 리와인드, 수축도 측정, 색농도 측정, 산화도 측정 등의 정밀 점검을 받으며 관리됩니다.</p>\n\n<div class=\"kmdb-editor-image-grid-4\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"heritage_mimong\" aria-label=\"heritage_mimong 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_mimong.jpeg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"heritage_wedding_day\" aria-label=\"heritage_wedding_day 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_wedding_day.jpeg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"heritage_home_of_heart\" aria-label=\"heritage_home_of_heart 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_home_of_heart.jpeg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"heritage_prosecutor_teacher\" aria-label=\"heritage_prosecutor_teacher 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_prosecutor_teacher.jpeg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-3\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"리와인드\" aria-label=\"리와인드 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_rewind.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    리와인드\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"수축도 측정\" aria-label=\"수축도 측정 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_shrinkage_test.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    수축도 측정\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"색농도 측정\" aria-label=\"색농도 측정 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/heritage_film_mgmt/heritage_color_density_test.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    색농도 측정\n   </figcaption>\n</figure>\n</div>\n\n\n<table class=\"kmdb-editor-table kmdb-editor-table--gray\" summary=\"문화재 등록 현황표\">\n<caption>\n   문화재 등록 현황표\n  </caption>\n<colgroup>\n<col width=\"17%\"/>\n<col width=\"33%\"/>\n<col width=\"15%\"/>\n<col width=\"35%\"/>\n</colgroup>\n<thead>\n<tr>\n<th scope=\"col\">문화재 등록번호</th>\n<th scope=\"col\">영화명</th>\n<th scope=\"col\">제작년도</th>\n<th scope=\"col\">필름형태</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>제342호</td>\n<td>미몽(죽음의 자장가)</td>\n<td>1936</td>\n<td>35mm RP 7권</td>\n</tr>\n<tr>\n<td>제343호</td>\n<td>자유만세</td>\n<td>1946</td>\n<td>35mm DN 6권, SN 6권</td>\n</tr>\n<tr>\n<td>제344호</td>\n<td>검사와 여선생</td>\n<td>1948</td>\n<td>35mm DN 4권, SN 4권</td>\n</tr>\n<tr>\n<td>제345호</td>\n<td>마음의 고향</td>\n<td>1949</td>\n<td>35mm DN 4권, SN 4권</td>\n</tr>\n<tr>\n<td>제346호</td>\n<td>피아골</td>\n<td>1955</td>\n<td>35mm ON 11권, SN 11권</td>\n</tr>\n<tr>\n<td>제347호</td>\n<td>자유부인</td>\n<td>1956</td>\n<td>35mm ON 12권, SN 12권</td>\n</tr>\n<tr>\n<td>제348호</td>\n<td>시집가는 날(일명:맹진사댁 경사)</td>\n<td>1956</td>\n<td>35mm ON 9권, SN 9권</td>\n</tr>\n<tr>\n<td>제488호</td>\n<td>청춘의 십자로</td>\n<td>1934</td>\n<td>35mm ON 7권</td>\n</tr>\n<tr>\n<td>제861호</td>\n<td>낙동강</td>\n<td>1952</td>\n<td>16mm ON 2권, SN 2권</td>\n</tr>\n<tr>\n<td>제862호</td>\n<td>돈</td>\n<td>1958</td>\n<td>35mm ON 15권, SN 14권</td>\n</tr>\n<tr>\n<td>제863호</td>\n<td>하녀</td>\n<td>1960</td>\n<td>35mm ON 11권, SN 10권</td>\n</tr>\n<tr>\n<td>제864호</td>\n<td>성춘향</td>\n<td>1961</td>\n<td>35mm ON 10권, SN 9권</td>\n</tr>\n</tbody>\n</table>\n\n\n<h2 class=\"kmdb-editor-heading-2\">필름 심화보수</h2>\n\n\n\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수 메인\" aria-label=\"필름보수 메인 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/10.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n\n<p>손상된 필름을 원형에 가깝게 회복시켜, 영화의 물리적 수명을 연장하고 보존성을 향상시키는 중요한 과정입니다. 적극적 보수를 통해 열화, 오염, 물리적 손상 등 다양한 요인에 의해 필름 상태가 악화되는 것을 막을 수 있습니다. 특히, 필름을 새로운 필름으로 복사하거나(인화/현상) 디지털 복원을 위한 스캔 작업을 할 때, 물리적 상태가 불안정한 필름은 자칫 더 큰 훼손을 초래할 수 있습니다. 따라서 프레임 단위의 정밀한 필름 보수가 반드시 필요합니다. 해당 심화보수 작업은 고도의 집중력과 숙련도를 요하며 한편의 작품을 마무리 짓는데 한 달 이상이 소요되기도 합니다.</p>\n\n<h3 class=\"kmdb-editor-heading-3\">필름 훼손 유형</h3>\n\n\n<div class=\"kmdb-editor-image-grid-3\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"경화\" aria-label=\"경화 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    경화\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"곰팡이\" aria-label=\"곰팡이 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/3.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    곰팡이\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"끊어짐\" aria-label=\"끊어짐 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/4.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    끊어짐\n   </figcaption>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-3\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"스크래치\" aria-label=\"스크래치 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/5.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    스크래치\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"영사기 램프 열화\" aria-label=\"영사기 램프 열화 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/6.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    영사기 램프 열화\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"이물질, 오염테이프\" aria-label=\"이물질, 오염테이프 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    이물질, 오염테이프\n   </figcaption>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-3\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"탈선\" aria-label=\"탈선 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/7.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    탈선\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"퍼포레이션 손상\" aria-label=\"퍼포레이션 손상 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/8.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    퍼포레이션 손상\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"화면 손상\" aria-label=\"화면 손상 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_damage_types/9.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    화면 손상\n   </figcaption>\n</figure>\n</div>\n\n\n<h3 class=\"kmdb-editor-heading-3\">필름 보수 전/후 모습</h3>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전1\" aria-label=\"필름보수전1 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/1_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후1\" aria-label=\"필름보수후1 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/1_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전2\" aria-label=\"필름보수전2 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/2_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후2\" aria-label=\"필름보수후2 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/2_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전3\" aria-label=\"필름보수전3 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/3_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후3\" aria-label=\"필름보수후3 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/3_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전4\" aria-label=\"필름보수전4 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/4_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후4\" aria-label=\"필름보수후4 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/4_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전5\" aria-label=\"필름보수전5 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/5_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후5\" aria-label=\"필름보수후5 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/5_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전6\" aria-label=\"필름보수전6 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/6_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후6\" aria-label=\"필름보수후6 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/6_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전7\" aria-label=\"필름보수전7 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/7_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후7\" aria-label=\"필름보수후7 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/7_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수전8\" aria-label=\"필름보수전8 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/8_1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름보수후8\" aria-label=\"필름보수후8 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film_repair_before_after/8_2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n</div>\n\n\n<h2 class=\"kmdb-editor-heading-2\">필름 인화/현상</h2>\n\n\n\n<figure class=\"kmdb-editor-image\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"필름인화현상 메인\" aria-label=\"필름인화현상 메인 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/color-grading/3.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n</figure>\n\n<p>필름의 잠재적인 이미지를 가시적인 이미지로 변환하는 핵심적인 역할을 수행합니다. 이곳에서는 색보정, 인화, 조약, 현상 등 필름 보존 및 복원을 위한 다양한 기술 공정이 진행됩니다. 필름 보존관리에 있어 해당 작업은 필수적이면서도 혁신적입니다. 초산화나 물리적 훼손이 심한 필름을 새로운 필름으로 재탄생시킬 수 있을 뿐 아니라 원본이 디지털인 영화도 필름으로 만들어낼 수 있어 보존성을 높일 수 있기 때문입니다.</p>\n\n<h3 class=\"kmdb-editor-heading-3\">필름 색보정</h3>\n\n<p>필름 색보정은 인화 과정에서 특정 색상의 광량을 조절하여 필름의 색감과 노출을 조정하는 작업입니다. 이는 시간이 지나 변색되거나 손상된 필름의 색감을 복원하여 제작 당시의 본래 색감을 정확히 재현하는 데 중점을 둡니다.</p>\n\n<div class=\"kmdb-editor-image-grid-2\">\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"색보정기\" aria-label=\"색보정기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/color-grading/1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    색보정기\n   </figcaption>\n</figure>\n<figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"색보정기 작업 예시\" aria-label=\"색보정기 작업 예시 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/color-grading/2.png\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    색보정기 작업 예시\n   </figcaption>\n</figure>\n</div>\n\n\n<h3 class=\"kmdb-editor-heading-3\">필름 인화</h3>\n\n<p>필름 인화는 하나의 필름에 담긴 이미지를 다른 필름에 복사하는 과정입니다. 원본 필름(네거티브)의 이미지를 새로운 필름(포지티브)에 옮기거나, 반대로 포지티브 필름을 복사해 네거티브 필름을 만드는 작업이 모두 포함됩니다. 이는 원본 필름을 보호하고 상영용, 추가 보존용 필름을 제작하는 데 필수적인 공정입니다.</p>\n\n<div class=\"kmdb-editor-image-grid-4\"><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"Oxberry 인화기\" aria-label=\"Oxberry 인화기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-printing/1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    Oxberry 인화기\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"건식 인화기\" aria-label=\"건식 인화기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-printing/2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    건식 인화기\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"습식 인화기\" aria-label=\"습식 인화기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-printing/3.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    습식 인화기\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"건식 인화기 라이트 박스 내부\" aria-label=\"건식 인화기 라이트 박스 내부 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-printing/4.png\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    건식 인화기 라이트 박스 내부\n   </figcaption>\n</figure></div>\n\n\n\n\n\n<h3 class=\"kmdb-editor-heading-3\">필름 조약</h3>\n\n<p>필름 조약(調藥)은 현상 약품의 정확한 비율을 조제하는 과정입니다. 필름의 종류와 상태에 따라 화학 약품의 농도를 정밀하게 맞춤으로써, 주기적인 분석을 통해 농도를 일관되게 유지하여 필름 현상의 품질을 결정하고 원본 이미지를 안정적으로 복원하는 데 기여합니다.</p>\n\n<div class=\"kmdb-editor-image-grid-4\"><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"실험실\" aria-label=\"실험실 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/chemistry-prep/1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    실험실\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"실험실 작업 예시\" aria-label=\"실험실 작업 예시 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/chemistry-prep/2.png\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    실험실 작업 예시\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"조약실\" aria-label=\"조약실 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/chemistry-prep/3.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    조약실\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"은 회수기\" aria-label=\"은 회수기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/chemistry-prep/4.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    은 회수기\n   </figcaption>\n</figure></div>\n\n\n\n\n\n<h3 class=\"kmdb-editor-heading-3\">필름 현상</h3>\n\n<p>필름 현상은 빛에 노출된 필름의 잠재적인 이미지를 눈으로 볼 수 있는 실제 이미지로 바꾸는 작업입니다. 여러 화학 약품을 순차적으로 처리하여 필름 감광층에 반응을 일으키고, 이를 통해 이미지를 영구적으로 정착시켜 필름의 손상을 막습니다.</p>\n\n<div class=\"kmdb-editor-image-grid-3\"><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"네가 현상기\" aria-label=\"네가 현상기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-processing/1.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    네가 현상기\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"포지 현상기\" aria-label=\"포지 현상기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-processing/2.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    포지 현상기\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"흑백 현상기\" aria-label=\"흑백 현상기 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-processing/3.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    흑백 현상기\n   </figcaption>\n</figure></div><div class=\"kmdb-editor-image-grid-3\"><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"암실 작업 사진\" aria-label=\"암실 작업 사진 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-processing/4.jpg\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    암실 작업 사진\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"현상기 내부 상단 촬영\" aria-label=\"현상기 내부 상단 촬영 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-processing/5.png\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    현상기 내부 상단 촬영\n   </figcaption>\n</figure><figure class=\"kmdb-editor-image-caption\">\n<span class=\"kmdb-editor-image-zoom\"><img alt=\"약품층, 건조박스를 통과한 직후의 상이 발현된 필름\" aria-label=\"약품층, 건조박스를 통과한 직후의 상이 발현된 필름 크게 보기\" src=\"https://www.koreafilm.or.kr/static/pc/images/archivetechnology/film-processing/6.png\"/><span aria-hidden=\"true\" class=\"kmdb-editor-image-zoom__label\">클릭시 확대</span></span>\n<figcaption>\n    약품층, 건조박스를 통과한 직후의 상이 발현된 필름\n   </figcaption>\n</figure></div>\n\n\n\n\n\n\n\n\n<h3 class=\"kmdb-editor-heading-3\">인화/현상 장비 현황표</h3>\n\n\n<table class=\"kmdb-editor-table kmdb-editor-table--gray\" summary=\"인화/현상 장비 현황표\">\n<caption>\n   인화/현상 장비 현황표\n  </caption>\n<colgroup>\n<col width=\"33%\"/>\n<col width=\"67%\"/>\n</colgroup>\n<thead>\n<tr>\n<th scope=\"col\">필름종류</th>\n<th scope=\"col\">작업</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<th scope=\"row\">16mm</th>\n<td>컬러 현상(Color processing), 흑백 현상(BW processing)</td>\n</tr>\n<tr>\n<th rowspan=\"2\" scope=\"row\">35mm</th>\n<td>컬러 현상(Color processing), 흑백 현상(BW processing), 컬러 인화(Color printing), 흑백 인화(BW printing)</td>\n</tr>\n</tbody>\n</table>\n\n\n<table class=\"kmdb-editor-table kmdb-editor-table--gray\" summary=\"인화/현상 장비 현황표\">\n<caption>\n   인화/현상 장비 현황표\n  </caption>\n<colgroup>\n<col width=\"33%\"/>\n<col width=\"33%\"/>\n<col width=\"33%\"/>\n</colgroup>\n<thead>\n<tr>\n<th scope=\"col\">장비종류</th>\n<th scope=\"col\">이름</th>\n<th scope=\"col\">특이사항</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>인화기</td>\n<td>CTM</td>\n<td>습식인화기</td>\n</tr>\n<tr>\n<td>인화기</td>\n<td>BHP</td>\n<td>건식 밀착 인화기</td>\n</tr>\n<tr>\n<td>인화기</td>\n<td>Oxberry</td>\n<td>특수효과 인화기</td>\n</tr>\n<tr>\n<td>현상기</td>\n<td>Calder</td>\n<td>Negative 현상기</td>\n</tr>\n<tr>\n<td>현상기</td>\n<td>Calder</td>\n<td>Positive 현상기</td>\n</tr>\n<tr>\n<td>현상기</td>\n<td>Calder</td>\n<td>BW 현상기</td>\n</tr>\n<tr>\n<td>색보정기</td>\n<td>Color Master</td>\n<td></td>\n</tr>\n<tr>\n<td>2K 스캐너</td>\n<td>Spirit 2K</td>\n<td>현상 작업 검수용</td>\n</tr>\n</tbody>\n</table>\n</div>\n"]

보존기술 상세 본문 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
14페이지제목article.title
["한국영상자료원 필름 보존 기술"]

보존기술 게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
14페이지등록일article.registeredAt
["20260916173126"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
14페이지이전previous
[null]

이전 게시물 id·제목. 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
14페이지다음next
[{"id": 2, "title": "필름 보존 기술"}]

다음 게시물 id·제목. 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
14페이지제목·등록일·본문·이전/다음검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조. 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

ArchiveTechnologyMapper: TB_ARCV_TECH.ARCV_TECH_CN, 등록일과 인접 글 조회.

목록의 실제 공개18로 상세200. 과거 표본19는404이며500 아님. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/archivetechnology/18

{}

2026-10-20T10:34:11.966579+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음60
GET
200
http://localhost:4100/api/v1/content/archivetechnology/18

{}

2026-10-16T17:05:04.584201+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.47
GET
404
http://localhost:4100/api/v1/content/archivetechnology/19

{}

2026-10-16T17:03:30.745079+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.45

콘텐츠›온라인 전시

1개 페이지 · 2개 항목
콘텐츠 온라인 전시의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

Google Arts & Culture

/content/gac

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf

API·조회 항목 2개

GETGAC 온라인 전시 태그별 목록 조회
/api/v1/content/gac
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

태그 필터와 page2 HTTP200. 외부 URL로 이동은 프론트 담당.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 16, 17페이지

HTTP 조회 시각: 2026-10-16T17:03:30.795399+09:00

http://localhost:4100/api/v1/content/gac

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 39,
  "title": "<오발탄>의 시간들",
  "typeName": "Google Arts & Cultur...",
  "tagCode": "COC02001",
  "tagName": "유현목",
  "externalUrl": "https://artsandcultu...",
  "thumbnailUrl": "/img/mig/exhibitionO...",
  "imageDescription": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
16, 17페이지전시명items[].title
["<오발탄>의 시간들", "유현목의 오프 스크린", "포스터로 보는 유현목의 영화 세계", "한국영상자료원 50년의 기록 2007~현재", "한국영상자료원 50년의 기록 1990~2007", "한국영상자료원 50년의 기록 1974~1990", "한국영화 x 포스터 디자인 ④ - 1990년대", "한국영화 x 포스터 디자인 ③ - 1980년대", "한국영화 x 포스터 디자인 ②  - 1970년대", "한국영화 x 포스터 디자인 ① - 1960년대"]

온라인 콘텐츠 제목. ONLN_CONTS_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
16, 17페이지칩items[].typeName
["Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture"]

온라인 콘텐츠 유형 코드(COC01)에 해당하는 표시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
16, 17페이지태그items[].tagName
["유현목", "유현목", "유현목", null, null, null, null, null, null, null]

tagCode의 공통코드 표시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
16, 17페이지썸네일items[].thumbnailUrl
["/img/mig/exhibitionOnline/6b618e8a-b582-467a-a7da-4d9540955c06_M.webp", "/img/mig/exhibitionOnline/2019299d-1a57-4fff-aa24-bd4e37009fcb_M.webp", "/img/mig/exhibitionOnline/08cc565a-a8ac-4417-87aa-040afa0383d1_M.webp", "/img/mig/exhibitionOnline/6633204c-cd3b-472d-8999-c7999136b2b8_M.webp", "/img/mig/exhibitionOnline/498ceea4-4489-4338-baee-c573e14669cf_M.webp", "/img/mig/exhibitionOnline/795f3742-61df-4c2a-9d1e-7a4d05bdf198_M.webp", "/img/mig/exhibitionOnline/e863bdc1-61b6-4d13-be16-9b8a081fddcf_M.webp", "/img/mig/exhibitionOnline/859d12ec-8a1a-45c1-9f1c-71eefd999391_M.webp", "/img/mig/exhibitionOnline/fe68b638-ed03-4bea-ad96-f8a837d2a794_M.webp", "/img/mig/exhibitionOnline/9b2495b4-90a6-4c7f-8a8a-503e74a2aca8_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
16, 17페이지외부 URLitems[].externalUrl
["https://artsandculture.google.com/story/VgUx_mXt4JZA7A?hl=ko", "https://artsandculture.google.com/story/IwXRITM-T4a9zA?hl=ko", "https://artsandculture.google.com/story/TwWB7suA-fV-_A?hl=ko", "https://artsandculture.google.com/story/HwXhI4sS4yPHEg?hl=ko", "https://artsandculture.google.com/story/jwWhdTfzvtZpBg", "https://artsandculture.google.com/story/zwUxOCtLE70ZIA", "https://artsandculture.google.com/story/VQUhz3x9L9dXNg", "https://artsandculture.google.com/story/HwXhoBH1YHkiUw", "https://artsandculture.google.com/story/LQVh2R44ArVsSw", "https://artsandculture.google.com/story/QQXxIMHGrQcFWA"]

CMS에 등록된 외부 콘텐츠 주소. ONLN_CONTS_URL_CN.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
16, 17페이지분류칩·이미지·제목·태그·외부 URL·단일 태그 검색·10건 페이징검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

온라인전시 매퍼의 CMS 데이터, 실제39/tagCodeCOC02001.

태그 필터와 page2 HTTP200. 외부 URL로 이동은 프론트 담당.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/gac?tagCode=COC02001

{}

2026-10-16T17:03:30.875594+09:00일치: 반환 태그가 요청 태그와 일치36
GET
200
http://localhost:4100/api/v1/content/gac?page=2

{}

2026-10-16T17:03:30.827713+09:00일치: 응답 페이징 번호가 요청과 일치22
GET
200
http://localhost:4100/api/v1/content/gac

{}

2026-10-16T17:03:30.795399+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.27
GETGAC 온라인 전시 태그 조회
/api/v1/content/gac/tags
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

코드 목록 실제200.

KOFA2_DE304_KOFA홈페이지_화면정의서(콘텐츠)_v1.2.pdf · PDF 16, 17페이지

HTTP 조회 시각: 2026-10-16T17:03:30.855454+09:00

http://localhost:4100/api/v1/content/gac/tags

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "code": "COC02001",
  "name": "유현목",
  "parentCode": null,
  "sortOrder": 1
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
16페이지온라인전시 태그 선택값[].code / [].name
["COC02001", "유현목"]

공통코드 값. TB_COM_CD.CD_ID. 해당 API의 코드 입력값으로 사용. / 공통코드 표시명. TB_COM_CD.CD_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
16, 17페이지사용중 단일 태그 선택값검토 범위
실제 HTTP 200. 검색/분류/연도/태그/page2는 아래 요청 이력 참조.

TB_COM_CD COC02의 코드·코드명·사용여부/정렬 기준.

코드 목록 실제200.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/gac/tags

{}

2026-10-16T17:03:30.855454+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.14

한국영화박물관›전시

3개 페이지 · 3개 항목
한국영화박물관 전시의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

상설전시

/museum/exhibition/permanent

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf

API·조회 항목 1개

GET상설전시 소개·본문 조회
/api/v1/museum/exhibitions/permanent
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

2026-10-19 사용자 결정: 초기 영화로의 초대 탭 데이터 요구를 검토 범위에서 제외. 현재 CMS 공개 상설전시 한국영화를 보다(249)의 제목·장소·배너·본문 실제 HTTP200 확인. 공개 데이터 건수에 맞춘 배열 응답으로 검토 범위 완료.

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf · PDF 4, 5페이지

HTTP 조회 시각: 2026-10-19T12:16:49.337506+09:00

http://localhost:4100/api/v1/museum/exhibitions/permanent

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "exhibition": {
    "id": 249,
    "title": "한국영화를 보다",
    "subtitle": "우리 영화 100년의 기억",
    "location": "한국영화박물관 상설전시실",
    "startDate": "2016-10-19",
    "endDate": "2026-10-30",
    "imageUrl": "/img/mig/exhibitionM...",
    "imageDescription": "한국영화를보다",
    "status": "진행 중"
  },
  "year": 2016,
  "bannerUrl": "/img/mig/exhibitionM...",
  "bodyHtml": "<div class=\"kmdb-edi...",
  "integratedReservationId": null,
  "bookingEnabled": false
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4페이지전시 제목[].exhibition.title
["한국영화를 보다"]

전시 제목. EXHB_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지장소[].exhibition.location
["한국영화박물관 상설전시실"]

전시장소명. EXHB_PLC_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지대표 배너[].bannerUrl
["/img/mig/exhibitionManage/95399d19-0b16-4b72-9b11-f49eb6cb2743_L.webp"]

CMS 대표첨부 대형 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4페이지본문[].bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><div class=\"box-museum-detail-top type-2\" style=\"padding-top:0;border-top:0\">\n <div class=\"detail-wrap\" style=\"padding-top:0;\">\n  <p class=\"txt-1\">한국영화박물관에는 영화매체가 처음 우리나라에 들어와서 오늘날 한국영화가 전 세계에 한류의 바람을 일으키기까지 우리 영화 100년의 기억들이 숨쉬고 있습니다. 이곳에서 한국영화의 지난 역사를 눈으로 보고, 귀로 듣고, 직접 체험할 수 있습니다. 111111</p>\n  <p class=\"txt-1 gap-2\">한국영화박물관은 상설전시와 기획전시로 나뉘어 연중 전시프로그램을 운영하고 있습니다. 상설전시는 한국영화사를 세부주제별로 14개의 섹션으로 나누어 전시하고 있습니다</p>\n </div>\n</div>\n<div class=\"box-museum-detail-8\">\n <p class=\"title-1\">영화의 탄생</p>\n <p class=\"txt-1\">한국영화의 탄생 이전 프랑스 뤼미에르 형제를 비롯한 미국의 에디슨, 독일의 슈클라다노프스키 형제 등이 영화를 발명하고 상영한 세계의 영화 발명 및 상영에 관한 내용과 나라별로 영화의 탄생 시기 등을 알아봅니다.</p>\n <p class=\"title-1\">신기한 경험의 시작, 활동사진 조선에 오다</p>\n <div class=\"img-1\">\n  <img alt=\"| 활동사진이 조선에 들어온 경로와 과정\" src=\"/static/pc/images/img/img_museum_detail_4_2.jpg\">\n  <p class=\"img-caption\">| 활동사진이 조선에 들어온 경로와 과정</p>\n </div>\n <p class=\"txt-1\">미국의 여행가 버튼 홈즈를 통해 활동사진이 처음 조선에 들어온 경로와 버튼 홈즈가 촬영한 활동사진을 고종에게 보여주고 이후<br>\n   대중에게 공개되는 과정을 설명하고 있습니다. 1900년대 초기 영상물을 통해 당시 우리나라의 생활상과 사회상을 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">한국영화 100년의 시간</p>\n <ul class=\"img-2\">\n  <li><img alt=\"| 한국영화 100년의 시간 입구의 모습 \" src=\"/static/pc/images/img/img_museum_detail_4_3.jpg\">\n   <p class=\"img-caption\">| &lt;한국영화 100년의 시간&gt; 입구의 모습</p></li>\n  <li><img alt=\"| 한국영화사 연표의 일부\" src=\"/static/pc/images/img/img_museum_detail_4_4.jpg\">\n   <p class=\"img-caption\">| 한국영화사 연표의 일부</p></li>\n </ul>\n <p class=\"txt-1\">한국영화의 탄생 시기부터 최근에 이르기까지 연표를 통해 한국영화 역사의 흐름을 볼 수 있습니다.</p>\n <p class=\"title-1\">근대, 식민, 조선영화</p>\n <div class=\"img-1\">\n  <img alt=\"| 초기 한국영화 시나리오와 촬영용 카메라\" src=\"/static/pc/images/img/img_museum_detail_4_5.jpg\">\n  <p class=\"img-caption\">| 초기 한국영화 시나리오와 촬영용 카메라</p>\n </div>\n <p class=\"txt-1\">1900년대 초기부터 1945년 해방 이전까지, 최초의 조선영화의 등장과 영화인들의 활동, 일제 식민지하에서의 조선영화의 체제 등을 알아보고 당시 제작된 작품의 영상물과 스틸사진 등을 직접 확인할 수 있는 공간입니다.</p>\n <p class=\"title-1\">해방과 전쟁</p>\n <div class=\"img-1\">\n  <img alt=\"| 집없는 천사(1941) 등을 촬영했던 김학성 촬영감독이 6.25전쟁 당시 정훈국 소속으로 전쟁 현장을 촬영했던 카메라와 착용 군복\" src=\"/static/pc/images/img/img_museum_detail_4_6.jpg\">\n  <p class=\"img-caption\">| &lt;집없는 천사&gt;(1941) 등을 촬영했던 김학성 촬영감독이 6.25전쟁 당시 정훈국 소속으로 전쟁 현장을 촬영했던 카메라와 착용 군복</p>\n </div>\n <p class=\"txt-1\">일제 식민지와 6.25 전쟁을 겪으면서 폐허가 된 당시 영화제작 환경과 시스템을 극복하고 한국영화의 명맥을 이어가고자 하는 영화인들의 활동과 작품을 살펴볼 수 있는 공간입니다.</p>\n <p class=\"title-1\">매혹과 혼돈</p>\n <div class=\"img-1\">\n  <img alt=\"| 1950년대 작품 시나리오와 수도영화사에서 사용했던 촬영용 카메라 \" src=\"/static/pc/images/img/img_museum_detail_4_7.jpg\">\n  <p class=\"img-caption\">| 1950년대 작품 시나리오와 수도영화사에서 사용했던 촬영용 카메라</p>\n </div>\n <p class=\"txt-1\">1950년대, 한국전쟁으로 인한 파괴와 빈곤, 무질서와 반공 이데올로기의 강화, 미국 소비문화의 급속한 확산 등으로 혼란기를 맞은 한국사회가 그대로 투영된 한국영화의 작품 경향을 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">한국영화 르네상스</p>\n <div class=\"img-1\">\n  <img alt=\"| 한국영화 르네상스 섹션 전경  \" src=\"/static/pc/images/img/img_museum_detail_4_8.jpg\">\n  <p class=\"img-caption\">| &lt;한국영화 르네상스&gt; 섹션 전경</p>\n </div>\n <p class=\"txt-1\">1960년대는 한국영화의 황금기로 이 시기에 만들어졌던 작품들과 서울 시내 개봉관의 정보와 당시 제작 편수와 관람객 수 등의 관련 정보를 확인할 수 있습니다.</p>\n <p class=\"title-1\">청년문화의 시대</p>\n <div class=\"img-1\">\n  <img alt=\"| 청년문화의 시대 섹션 전경 \" src=\"/static/pc/images/img/img_museum_detail_4_9.jpg\">\n  <p class=\"img-caption\">| &lt;청년문화의 시대&gt; 섹션 전경</p>\n </div>\n <p class=\"txt-1\">1970년대 불황기를 맞은 한국영화계에는 이를 극복하기 위한 신인감독들의 등장과 기존 감독들의 지속적인 활동 등을 청년문화를 대표하는 작품과 소장자료 등을 통해 확인할 수 있습니다.</p>\n <p class=\"title-1\">변화의 바람</p>\n <div class=\"img-1\">\n  <img alt=\"| 1980년대 영화의 포스터들 \" src=\"/static/pc/images/img/img_museum_detail_4_10.jpg\">\n  <p class=\"img-caption\">| 1980년대 영화의 포스터들</p>\n </div>\n <p class=\"txt-1\">불황이 더 깊어진 1980년대 영화계의 작품 경향과 이를 극복하기 위한 다양한 분야의 영화 활동 등을 당시 사회상과 더불어 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">영상문화의 폭발</p>\n <div class=\"img-1\">\n  <img alt=\"| 1990년대를 대표하는 영상매체인 비디오테이프와 DVD \" src=\"/static/pc/images/img/img_museum_detail_4_11.jpg\">\n  <p class=\"img-caption\">| 1990년대를 대표하는 영상매체인 비디오테이프와 DVD</p>\n </div>\n <p class=\"txt-1\">1990년대에 들어서 홈비디오 시장이 확대되고 케이블 TV가 출범하는 등 미디어 부분의 새로운 환경 변화에 따라 멀티플렉스 극장, 블록버스터 영화, 대기업의 영화시장 참여 등 영화산업이 발달하였습니다. 이에 변모하는 한국영화의 모습을 볼 수 있습니다.</p>\n <p class=\"title-1\">아카이브</p>\n <div class=\"img-1\">\n  <img alt=\"| 포스터를 찾아보고 영화음악까지 즐길 수 있는 아카이브  \" src=\"/static/pc/images/img/img_museum_detail_4_12.jpg\">\n  <p class=\"img-caption\">| 포스터를 찾아보고 영화음악까지 즐길 수 있는 아카이브</p>\n </div>\n <p class=\"txt-1\">영상자료는 영화필름 외에 포스터와 영화음악 등이 있습니다. 이곳에서는 미디어테이블을 통해 연대별 주요 영화작품, 감독, 배우 등을 검색하여 정보를 볼 수 있으며, 포스터와 영화음악 등을 검색하여 보고 듣는 등 직접적인 감상을 할 수 있습니다.</p>\n <p class=\"title-1\">한국영화 100선</p>\n <div class=\"img-1\">\n  <img alt=\"| 한국영화 100선으로 선정된 101편의 작품 하이라이트 영상 \" src=\"/static/pc/images/img/img_museum_detail_4_13.jpg\">\n  <p class=\"img-caption\">| &lt;한국영화 100선&gt;으로 선정된 101편의 작품 하이라이트 영상</p>\n </div>\n <p class=\"txt-1\">한국영화 초창기부터 2012년까지 개봉한 현재 필름이나 콘텐츠가 남아있는 장편영화 중, 한국영화사를 대표하는 작품, 당대의 대중 의식을 반영하였거나 한국사회의 독특한 맥락에서 제작되어 사전 연구 가치가 높은 작품, 장르적 혹은 예술적 완성도가 높은 작품 등 한국영화를 대표할 만한 작품 100편을 선정하여 주요 장면의 영상물과 영화 타이틀을 함께 전시하였습니다.</p>\n <p class=\"title-1\">애니메이션</p>\n <div class=\"img-1\">\n  <img alt=\"| 시각적 놀이기구인 매직랜턴과 대형 조에트로프, 애니메이션 스탠드\" src=\"/static/pc/images/img/img_museum_detail_4_14.jpg\">\n  <p class=\"img-caption\">| 시각적 놀이기구인 매직랜턴과 대형 조에트로프, 애니메이션 스탠드</p>\n </div>\n <p class=\"txt-1\">영화 탄생 이전의 시각적 놀이기구, 아날로그 방식의 애니메이션 제작 기구 애니메이션 스탠드 등이 전시되어 애니메이션의 원리를 살펴볼 수 있으며, 특히 &lt;소중한 날의 꿈&gt;의 애니메이션 제작과정을 통해 애니메이션의 기획에서부터 상영까지의 단계별 내용을 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">영화인</p>\n <div class=\"img-1\">\n  <img alt=\"| 영화인들이 수상한 주요영화제 및 영화상의 트로피\" src=\"/static/pc/images/img/img_museum_detail_4_15.jpg\">\n  <p class=\"img-caption\">| 영화인들이 수상한 주요영화제 및 영화상의 트로피</p>\n </div>\n <p class=\"txt-1\">한국영화 100선의 작품에 출연 또는 연출, 스태프 등으로 참여하였거나 국내외 영화제에서 수상 경력이 있는 영화인들을 기리는 섹션입니다. 영화인들의 주요 필모그래피와 연출 노트, 소장품 및 각종 영화제 트로피 등을 보실 수 있습니다.</p>\n</div></div>"]

전시 본문 HTML. EXHB_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
4, 5페이지공개 상설전시 제목·배너·기간·장소·본문검토 범위
2026-10-19 실제 HTTP200·공개 상설전시1건. docs/백엔드/permanent-exhibition-review-2026-10-19/http.json

CMS TB_EXHB: EXHB_ID=249, EXHB_TYPE_CD=CEH01002, DEL_YN=N, SRVC_STTS_CD=CCM04001. 제목 EXHB_TTL, 장소 EXHB_PLC_NM, 본문 EXHB_CN 및 대표첨부 THMB_L_FILE_PATH_NM. 실제 CMS SELECT 및 국문/영문 Host HTTP 결과 대조.

2026-10-19 사용자 결정: 초기 영화로의 초대 탭 데이터 요구를 검토 범위에서 제외. 현재 CMS 공개 상설전시 한국영화를 보다(249)의 제목·장소·배너·본문 실제 HTTP200 확인. 공개 데이터 건수에 맞춘 배열 응답으로 검토 범위 완료.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/exhibitions/permanent

{}

2026-10-19T12:16:49.337506+09:00일치: 공개 상설전시249의 제목·장소·배너·본문 제공, 실제 CMS 공개건수1건 일치105
GET
200
http://localhost:4100/api/v1/museum/exhibitions/permanent

{}

2026-10-16T17:05:16.551009+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.18

기획전시

/museum/exhibition/special

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf

API·조회 항목 1개

GET기획전시 검색·연도별 목록 조회
/api/v1/museum/exhibitions/special
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

중복 제외 API 보완완료. 실제 진행 전시 양성 표본은 없으므로 그 상황의 실DB 확인은 미실행. current 없음·검색·연도 필터 및 공개 조건은 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf · PDF 6페이지

HTTP 조회 시각: 2026-10-19T02:04:15.817685+00:00

http://localhost:4100/api/v1/museum/exhibitions/special

조회 조건: {}

조회 결과 JSON · 객체 1건

page.items[0] · 문자열 값은 최대 20자 표시
{
  "id": 286,
  "title": "제목전(展) ",
  "subtitle": "텍스트, 타이포그래피, 무빙 이미지",
  "location": " 기획전시실",
  "startDate": "2026-05-08",
  "endDate": "2026-08-29",
  "imageUrl": "/img/mig/exhibitionM...",
  "imageDescription": null,
  "status": "종료"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6페이지진행 중 대표 전시current
[null]

현재 진행 중인 기획전시 중 시작일이 가장 최근인 1건. 없으면 null. 하단 page 검색 목록과 별도 조회.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
6페이지전시 제목page.items[].title
["제목전(展) ", "셀 위를 달려라, 길동!", "영화문고", "Moving Portraits 너의 얼굴", "대사극장: 한국영화를 만든 위대한 대사들", "씬의 설계", "지금 우리 좀비는: 21세기 K-좀비 연대기", "위대한 유산: 태흥영화 1984-2004", "정훈이만화,<br>영화와 뒹굴뒹굴<br>25년", "21세기한국영화<br> 웰메이드 영화의 시대"]

전시 제목. EXHB_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지부제page.items[].subtitle
["텍스트, 타이포그래피, 무빙 이미지", null, "영화 출판과 읽기의 연대기, 1980년 이후", "2024년 기획전시 Ⅱ", "2024년 기획전시 Ⅰ", "2023년 기획전시 Ⅰ", "2022년 기획전시 Ⅱ", "2022년 기획전시 Ⅰ", "2021년 기획전시 Ⅱ", "2021년 기획전시Ⅰ"]

전시 부제. EXHB_SBTTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지전시 장소page.items[].location
[" 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실"]

전시장소명. EXHB_PLC_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지전시 기간page.items[].startDate / page.items[].endDate
["2026-05-08", "2025-05-02", "2024-11-08", "2024-07-19", "2024-01-16", "2023-07-28", "2022-10-21", "2022-04-14", "2021-09-14", "2021-02-26", "2026-08-29", "2025-08-30", "2025-03-01", "2024-09-28", "2024-06-01", "2023-11-18", "2023-06-24", "2022-09-25", "2022-03-27", "2021-08-29"]

전시 시작일. EXHB_BGNG_YMD를 yyyy-MM-dd로 변환. 변환 불가 시 null. / 전시 종료일. EXHB_END_YMD를 yyyy-MM-dd로 변환. 값이 없거나 변환 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지대표 이미지page.items[].imageUrl
["/img/mig/exhibitionManage/af22b168-d5ed-42b4-97f4-084669b37ac7_M.webp", "/img/mig/exhibitionManage/cfeab086-7e24-4398-9ac8-a4539aa49585_M.webp", "/img/mig/exhibitionManage/0a24f45e-a7ab-45ee-9025-6e7f04bdfb61_M.webp", "/img/mig/exhibitionManage/d74988c4-262b-4920-b699-8c428de59954_M.webp", "/img/mig/exhibitionManage/754962a1-dfdb-43ed-a2a2-c4ba2675098b_M.webp", "/img/mig/exhibitionManage/7e11ed41-f88b-4b77-979f-5a7c4d378b7c_M.webp", "/img/mig/exhibitionManage/8dccf24f-8630-47c9-b13c-969bb65d7847_M.webp", "/img/mig/exhibitionManage/b3eab0d7-5fd5-43d5-b3da-16e68c4fba74_M.webp", "/img/mig/exhibitionManage/eaceca0a-1153-4469-832f-224197c4b0ff_M.webp", "/img/mig/exhibitionManage/39a8218b-2cba-438f-9b3c-3a03c1ba307e_M.webp"]

CMS 대표첨부의 공개 가능한 썸네일 경로. 미등록·지원 불가 경로이면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지상태page.items[].status
["종료", "종료", "종료", "종료", "종료", "종료", "종료", "종료", "종료", "종료"]

전시 기간 기준 표시 상태. 예정/진행 중/종료의 Mapper 계산값. 기간 판별 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지연도 선택값years
[[2026, 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008]]

기획전시 시작연도 필터 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지총 개수·페이징page.totalElements / page.totalPages
[40, 4]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 전체 페이지 수. totalElements/size를 올림한 값이며 결과가 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
6페이지제목·연도·복합 검색·2페이지keyword/year/page
대표 성공 표본에 해당 값 없음

입력 조회 조건: keyword — 전시 제목 부분 검색. 최대 100자, 생략/빈 문자열이면 전체. / 입력 조회 조건: year — 전시 시작일(EXHB_BGNG_YMD)의 연도 정수(1~9999). 생략=전체. 목록 years 반환값을 사용합니다. / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다. / 입력 조회 조건: size — 페이지당 개수. 이 API는 `10`만 허용합니다. 기본값 `10`.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
6페이지진행전시 강조·제목 검색·연도 필터·상단과 목록 중복 제외·10건 페이징검토 범위
실제 기본/제목+연도/page2/빈검색 GET200. 현재DB current=null. 강조 전시가 있는 상황은21건 fixture에서2페이지/총20건/중복없음 검증.

SpecialExhibitionServiceImpl이 current EXHB_ID를 Search.excludedExhibitionId로 전달. find/count 모두 E.EXHB_ID != 제외ID 조건을 페이징 전에 적용.

중복 제외 API 보완완료. 실제 진행 전시 양성 표본은 없으므로 그 상황의 실DB 확인은 미실행. current 없음·검색·연도 필터 및 공개 조건은 유지.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special

{}

2026-10-19T02:04:15.817685+00:00일치: 영문 상태 라벨/국문 기존 상태 유지 및 실제 DB HTTP200132
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=no-match-4-api-test

{}

2026-10-16T18:40:12.218182+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.56
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?page=2

{}

2026-10-16T18:40:12.175494+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.36
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=%EC%A0%9C%EB%AA%A9&year=2026

{}

2026-10-16T18:40:12.107940+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.60
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special

{}

2026-10-16T18:40:12.039135+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.62
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=ZZZNORESULT20261015

{}

2026-10-16T17:05:16.795878+09:00미검증: 제목 검색어가 반환 제목에 포함56
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=%EC%98%81%ED%99%94&year=2025

{}

2026-10-16T17:05:16.711098+09:00미검증: 전시 시작연도가 요청 연도와 일치 / 미검증: 제목 검색어가 반환 제목에 포함30
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?year=2025

{}

2026-10-16T17:05:16.647474+09:00일치: 전시 시작연도가 요청 연도와 일치56
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=%EC%98%81%ED%99%94

{}

2026-10-16T17:05:16.574633+09:00일치: 제목 검색어가 반환 제목에 포함66

기획전시 상세

/museum/exhibition/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf

API·조회 항목 1개

GET기획전시 상세·발행 본문 조회
/api/v1/museum/exhibitions/special/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기존 사용자 합의: 예매 연결은 프론트, 배너는 대표첨부 대형. bookingEnabled 키 제공 확인.

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf · PDF 7페이지

HTTP 조회 시각: 2026-10-16T17:05:17.841196+09:00

http://localhost:4100/api/v1/museum/exhibitions/special/286

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "exhibition": {
    "id": 286,
    "title": "제목전(展) ",
    "subtitle": "텍스트, 타이포그래피, 무빙 이미지",
    "location": " 기획전시실",
    "startDate": "2026-05-08",
    "endDate": "2026-08-29",
    "imageUrl": "/img/mig/exhibitionM...",
    "imageDescription": null,
    "status": "종료"
  },
  "year": 2026,
  "bannerUrl": "/img/mig/exhibitionM...",
  "bodyHtml": "<div style=\"text-ali...",
  "integratedReservationId": null,
  "bookingEnabled": false
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
7페이지제목·부제·장소·기간·상태exhibition
[{"id": 286, "title": "제목전(展) ", "subtitle": "텍스트, 타이포그래피, 무빙 이미지", "location": " 기획전시실", "startDate": "2026-05-08", "endDate": "2026-08-29", "imageUrl": "/img/mig/exhibitionManage/af22b168-d5ed-42b4-97f4-084669b37ac7_M.webp", "imageDescription": null, "status": "종료"}]

전시 기본 정보.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지전시 시작연도year
[2026]

전시 시작일의 연도. 시작일을 판별할 수 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지대형 배너bannerUrl
["/img/mig/exhibitionManage/af22b168-d5ed-42b4-97f4-084669b37ac7_L.webp"]

CMS 대표첨부 대형 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지본문bodyHtml
["<div style=\"text-align: center;\"><strong>제목전(展) &ndash; 텍스트, 타이포그래피, 무빙 이미지&nbsp;</strong>똠얌꿍, 슌사쿠, 国, 國, 纳, 陆海铃, 宍倉紗弥, 髙橋, 﨑, 𠮷野, 辻, 齋藤<br />\r\n<strong>On Title &ndash; Text, Typography, Moving Images</strong></div>\r\n<br />\r\n사람이든 사물이든, 어떤 대상을 맞닥뜨릴 때 가장 먼저 마주하는 것이 바로 &lsquo;이름&rsquo;이다. 이름은 그 대상을 인식하는 가장 짧고도 강력한 언어다. 그렇기에 우리는 이름을 짓는 데 적지 않은 시간과 에너지를 들인다.<br />\r\n<br />\r\n수십 억의 예산과 수많은 인력이 투입되는 영화에서 제목은 어떠한 의미를 지닐까. 영화 제목은 영화가 품고 있는 세계의 다성적 측면들을 한 줄, 혹은 한 단어로 응축한 결과물이다. 제목은 스크린이 열리기도 전에, 관객으로 하여금 영화의 본질을 상상하면서 자신만의 예고편을 머릿속에서 상영하게 한다.&nbsp;<br />\r\n<br />\r\n또한 제목은 그 자체로 특정 시대를 반영하는 징후이자, 대중의 감각을 드러내는 기호다. 한자가 섞인 고풍스러운 문어체가 스크린을 지배했던 시대가 있는가 하면, 정체불명의 외래어가 &lsquo;세련&rsquo;의 징표처럼 불려 나온 시대가 있었고, 생활의 요청을 반영하는 나른한 구어체 제목이 풍미하기도 했다. 곧 제목 짓기의 변천사는 한국 사회의 문화 트렌드, 변덕스러운 대중의 감성을 반영해 왔다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/61642390-600d-4220-822c-84d57cb82b4f.png\" /><br />\r\n<br />\r\n&lt;제목전(展) &ndash; 텍스트, 타이포그래피, 무빙 이미지&gt;는 1919년부터 2025년까지 공개된 한국영화 8,400여 편의 제목을 다양한 키워드로 재배열하고 분석해 한국영화를 바라보는 새로운 레퍼런스를 제시한다. 가장 빈번하게 등장하는 단어를 통해 시대별 정서와 서사의 흐름을 읽어내고, 한국영화사를 대표하는 배우의 필모그래피를 제목의 관점에서 조명한다. 또한 젠더, 색채, 문장 구조 등 여러 층위의 필터를 가져와 한국영화사를 새로운 관점으로 바라보고자 한다.&nbsp;<br />\r\n&nbsp;<br />\r\n제목이 지닌 조형적 미학에도 주목한다. 오프닝 시퀀스 속 제목의 움직임, 포스터와 전단에서 마주하는 다양한 제목 서체와 디자인은 영화의 정서를 시각적으로 구현하는 장치인 동시에 그 자체로 한글의 아름다움을 증명한다. 전시실 벽면을 가득 채운 자유롭게 생동하는 레터링과 캘리그래피, 동시대 감독과 그래픽 디자이너가 각자의 시선으로 재해석한 애니메이션과 영상 작업은, 익숙한 영화 제목에 새로운 호흡을 불어넣는다.<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/2ca3bedf-d875-477d-8093-985cfe42d25c.png\" /><br />\r\n<br />\r\n&lt;제목전(展) &ndash; 텍스트, 타이포그래피, 무빙 이미지&gt;는 정지된 텍스트로 존재하던 영화 제목을 다시 움직이게 하고, 새로이 읽히도록 하는 것을 넘어 &lsquo;경험&rsquo;의 대상으로 확장한다. 이름은 더 이상 부르는 것에 머무르지 않는다. 이곳에서 제목은, 다시 살아 움직인다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>한국영화 제목 속 단어 빈도 1919-2025</strong><br />\r\n<br />\r\n역대 한국영화 8,436편의 제목에 등장하는 단어를 빈도 기준으로 100위까지 산출해 보면 한국영화가 어떤 정서, 서사 구조에 기대어 지난 시기를 통과해 왔는지 추론할 수 있다. 다양한 시각과 기준으로 해석 가능한 이 통계가 표면적으로 말해주는 몇 가지 층위를 살펴보면 한국영화의 전체 그림이 보인다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/69dff7f5-e6aa-4e83-ae6e-d4c93febef73.png\" /><br />\r\n<em><strong>&lsquo;사랑&rsquo;의 한국영화&nbsp;</strong></em><br />\r\n한 세기 넘는 동안 한국영화 제목에서 가장 많이 등장한 단어는 단연 &lsquo;사랑&rsquo;이다. 2위와 적지 않은 차이를 벌리며 빈도 1위를 차지한 &lsquo;사랑&rsquo;이 감정과 관계에 속하는 어휘인 것을 떠올리면, 한국영화가 관계 중심 서사와 멜로드라마를 축으로 발전돼 왔음을 짐작할 수 있다. 빈도 100위 안에는 &lsquo;사랑&rsquo;과 짝이 될 수 있는 감정 어휘(이별, 슬픔, 눈물, 행복, 욕망)와 관계 어휘(연애, 안녕, 이별, 연인, 유혹, 로맨스)도 상당수다. &lsquo;사랑&rsquo; 주변에 포진한 이들 어휘군은 한국영화의 정서가 상당 부분 어떤 대상에 대한 연모와 헌신 따위의 감정으로 채워져 있음을 증거한다.&nbsp;<br />\r\n<br />\r\n<em><strong>&lsquo;여자&rsquo;와 &lsquo;남자&rsquo;</strong></em><br />\r\n빈도 2위를 차지한 &lsquo;여자&rsquo; 외에 빈도 100위 안에는 여성을 지칭하는 어휘가 10개 있다. 순서대로 여인(50회), 부인(48), 딸(46), 엄마(38), 소녀(33), 어머니(28), 아내(26), 그녀(24), 처녀(19), 아가씨(16) 등이다. 이에 반해 남성 어휘(남자, 사나이, 아들, 아빠, 소년, 미스터)의 총합은 231회로 여성 어휘의 46%에 불과하다. 한국영화 서사 속에서 여성 어휘는 여성 중심의 신파와 멜로드라마, 성역할을 강조하는 가족 드라마, 애욕에 관한 성애영화를 중심으로 70-80년대 크게 유행했다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/95886b2d-9c93-4770-8248-fbed53fc5053.png\" /><br />\r\n<em><strong>&lsquo;밤&rsquo;과 &lsquo;청춘&rsquo;의 군상</strong></em><br />\r\n빈도와 시기별 분포에 의하면 시대를 불문하고 한국영화에서 &lsquo;밤&rsquo;은 유흥과 탈선(&lt;토요일은 밤이 없다&gt;), 이별(&lt;비오는 밤에 떠나고 싶다&gt;), 낭만(&lt;여수 밤바다&gt;)의 시간인 동시에 무법자들이 판치는 범죄의 시간(&lt;밤차로 온 사나이&gt;)으로 그려졌다. &lt;청춘의 십자로&gt;(1934)까지 거슬러 올라가는 &lsquo;청춘&rsquo;의 경우, &lt;맨발의 청춘&gt;(1964) 전후 청춘영화의 흐름 속에서 최고점을 찍은 어휘로 질풍노도의 시기를 통과하는 군상들의 이야기가 60-70년대 주요 서사였음을 말해준다.&nbsp;<br />\r\n<br />\r\n<em><strong>&lsquo;왕&rsquo;과 &lsquo;길&rsquo;, 권력과 이동의 서사&nbsp;</strong></em><br />\r\n&lsquo;왕&rsquo;이 빈도 5위를 차지한 것은 &lt;세종대왕&gt;(1978), &lt;왕의 남자&gt;(2005) 등을 위시한 역사 드라마에 &lt;가수왕&gt;(1975), &lt;마약왕&gt;(2018)처럼 &lsquo;왕&rsquo;의 의미를 전유한 영화를 합한 결과다(후자가 더 많다). 둘 다 권력과 정상을 의미하는 한편 정치와 투쟁, 인고의 노력 같은 것들을 상징하면서, 한국영화가 비중 있게 채택한 인물 유형으로 이해할 수 있다. &lsquo;길&rsquo;은 &lt;삼포가는 길&gt;(1975), &lt;나그네는 길에서도 쉬지 않는다&gt;(1988)에서처럼 여정과 이동의 서사로 설명할 수 있는 어휘로 식민의 역사와 도시화를 경험한 한국인의 심성을 울리는 키워드로 빈도 9위에 올랐다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>마초들의 명령 - 누아르 세계의 언어 관습&nbsp;</strong><br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/6531319b-4239-493a-bb1a-2c71c1920bda.png\" /><br />\r\n<br />\r\n&lsquo;급행열차를 타라&rsquo; &lsquo;인간사표를 써라&rsquo; 등 명령형 종결 어미를 사용한 서술형 제목은 60년대 중반부터 70년대 초반까지 충무로에서 활발히 제작되었던 활극 액션영화 또는 &lsquo;대륙물&rsquo;이라 불리던 장르를 기원으로 한다. 당시 한국영화계는 김묵, 설태호, 박노식, 이만희 등을 필두로 한 &lsquo;다찌마리&rsquo; 액션이 붐을 이루었는데 만주를 배경으로 서부극 형식을 흉내 낸 영화들, 도시를 배경으로 암흑가 사내들이 등장하는 범죄 누아르풍 영화들이었다. &lsquo;쇠사슬을 끊어라&rsquo; &lsquo;쟉크를 채워라&rsquo; 따위의 강인한 명령형 제목은 특유의 남성성을 강조하는 단어들(주먹, 검은 장갑, 쇠사슬 등)과 결합하여 남자의 숙명을 암시하면서 관객들의 뇌리에 각인되었다. 인간사표, 지옥행, 쟉크 등 비유적인 표현을 활용하거나, 범죄 세계의 언어 습관을 반영하여 장르에 대한 기대감을 고조시키는 효과를 겨냥했다. 60-70년대 액션 &lsquo;방화&rsquo;의 추억이 깃든 제목들이다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>돌아오기 위해서는 떠나야 한다&nbsp;</strong><br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/60235689-aa3a-436a-9452-b957c12045da.png\" /><br />\r\n<br />\r\n다찌마리 장르의 수많은 &lsquo;돌아온&rsquo; 시리즈에는 굴곡진 근현대사의 여러 국면에서 오직 살아남기 위해 고향을 떠날 수밖에 없었던 사람들의 눈물이 있다. 경제적으로 힘든 연인을 돕기 위해 외항선 선원이 되어 떠난 박노식이 바다에 버려졌다가 살아 돌아온 임권택 감독의 &lt;돌아온 왼손잡이&gt;(1968), 불량하기 그지없는 신흥 건달들을 정리하고 새로운 질서를 세우기 위해 다시 명동에 모인 &lt;돌아온 팔도사나이&gt;(1969), 무법자 상하이 박과 대결하기 위해 박노식이 방랑의 길을 떠나는 김효천 감독의 &lt;돌아온 방랑자&gt;(1970), 신성일이 아버지의 원수를 갚기 위해 부산으로 돌아온 &lt;돌아온 항구의 사나이&gt;(1970), &lsquo;발차기로 싸대기를 때리는 배우&rsquo; 차리 셸이 만주 하얼빈의 정의를 바로 세우기 위해 나팔바지 휘날리며 돌아오는 이두용 감독의 &lt;돌아온 외다리&gt;(1974)와 &lt;속 돌아온 외다리&gt;(1974), 모범수로 출소해 돌아온 신성일이 새 삶을 시작하려는 임권택 감독의 &lt;돌아온 자와 떠나야 할 자&gt;(1972) 등.&nbsp;<br />\r\n때리면 &lsquo;으악&rsquo; 하고 쓰러진다고 하여 종종 &lsquo;으악새 영화&rsquo;라 멸시받으며 불렸던 이 장르가, 어쩌면 그 어떤 사실주의 영화보다 당대의 역사와 현실을 더 잘 반영하고 있는 것인지도 모른다. 함께 살기 위해, 무언가를 바로 잡기 위해 돌아온 사람은 아름답다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>제목, 시대정신이 여성을 부르는 방식&nbsp;</strong><br />\r\n<em>한국영화 제목에 등장하는 여성 표식은 몇 가지 반복적인 호명 체계로 묶인다. 제목 속 여성은 개인이기보다 관계, 연령, 계급, 성적 규범, 직업, 환상, 정동, 예외성의 범주 안에서 먼저 정의된다. 다시 말해 영화 제목은 여성을 한 사람으로 부르기 전에 사회적으로 이미 의미화된 존재로 배치한다.</em> &ndash; 심혜경<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/47969db3-d09d-4b4b-aaba-000969dbdf05.png\" /><br />\r\n<br />\r\n한국영화 제목에서 여성 어휘가 남성 어휘를 종류는 물론 편수에서 압도하는 것은 한국영화 산업의 특성과 문화적 관습이 겹쳐진 결과로 해석할 수 있다. 한국에 영화가 들어온 이래 반세기 이상 한국영화는 신파, 멜로드라마를 통해 여성 인물의 희생과 고난을 테마로 한 이야기를 줄기차게 선보였고, 70-80년대 성애영화 대부분도 여성 캐릭터를 성적으로 대상화하는 방식으로 대중에게 호소했으므로 제목에 여성 어휘가 더 많이 호출되는 것은 당연한 것이었다. &lsquo;산딸기&rsquo; &lsquo;장미&rsquo;처럼 여성을 은유하는 단어까지 포괄하면 여성 어휘는 더욱 늘어난다. 감상의 대상으로서 여성 인물을 전시하는 식의 서사 전략이 90년대 이전 한국영화의 큰 흐름을 형성하면서 온갖 종류의 상징을 통해 여성 지칭 어휘를 늘려간 것이 한국영화의 한 모습이다.<br />\r\n<br />\r\n<br />\r\n<strong>제목의 영화들&nbsp;</strong><br />\r\n<br />\r\n산업, 미학의 부흥기를 맞은 2000년대 이후 한국영화의 위상은 제목의 변화로도 설명할 수 있다. 이전까지 단순지시형&middot;명사형이 관행처럼 보편화돼 쓰였다면 여기에서 벗어나 문장형 제목이 증가한 현상은 그 징후 중 하나다. 정보 전달을 넘어서는 단어의 창의적 조합으로 눈길을 끄는 문장형 제목은 때때로 영화보다 제목 그 자체로 기억된다. &lt;고양이를 부탁해&gt;(2001), &lt;박수칠 때 떠나라&gt;(2005)의 사례에서 보듯 한국어의 입말 습성을 도입하며 다의적인 맥락을 환기하는 제목이 있는가 하면, &lt;질투는 나의 힘&gt;(2003), &lt;살인의 추억&gt;(2003), &lt;찬실이는 복도 많지&gt;(2020), &lt;헤어질 결심&gt;(2022)처럼 호응 관계에 있는 단어의 충돌을 통해 아이러니와 역설을 생성하기도 한다. &lt;지금은맞고그때는틀리다&gt;(2015), &lt;우리는 천국에 갈 순 없지만 사랑은 할 수 있겠지&gt;(2024) 같은 긴 문장 제목은 즉각적으로 해독되지 않는 의미의 모호함으로 호기심을 불러 일으킨다. 이들 중 일부는 스크린 밖으로 나와 유행어처럼 쓰이면서 당대의 심리적 지형을 대변하는 &lsquo;시대의 언어&rsquo;가 되기도 한다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/9d031b54-5eb5-40b2-9f82-2f6267de2a5b.png\" /><br />\r\n<br />\r\n<strong>이만희와 김기영의 제목들&nbsp;</strong><br />\r\n<br />\r\n&lsquo;귀로&rsquo; &lsquo;원점&rsquo; &lsquo;휴일&rsquo; &lsquo;생명&rsquo; 등 1966년부터 1968년 사이 만들어진, 플롯을 짐작하기 어려운 이만희 감독의 &lsquo;제목&rsquo;은 당시 내용 묘사 중심이었던 영화 제목과 뚜렷하게 구별되는 추상성을 띤다. 단순한 현실 재현이 아니라 인간의 원초적인 소외감을 그리려 했던 감독의 미학적 태도가 드러나는 대목이다. 필름이 유실된 전설의 영화 &lt;만추&gt;도 이 계열에 속하는 제목이다.&nbsp;<br />\r\n&lsquo;충녀(蟲女)&rsquo; &lsquo;화녀(火女)&rsquo; 등 기이한 형태의 조어를 제목으로 삼아 온 김기영 감독의 &lsquo;하녀&rsquo;는 그때나 지금이나 보통명사이지만 한자 특유의 &lsquo;상형성&rsquo;을 감춘 지극히 김기영다운 제목이다. &lsquo;아래 하(下)&rsquo;를 가진 &lsquo;하녀(下女)&rsquo;는 중산층 동식의 가정과 여공인 조경희의 &lsquo;아래&rsquo;에 존재하며, 가사가 이뤄지는 아래층에 머물다가 위층으로 상승을 시도하지만 결국에는 동식의 발에 매달려 마치 한자 &lsquo;下&rsquo;처럼 머리와 팔을 아래로 축 늘어뜨리고 계단에서 죽는 인물이다. 김기영이 포착하고 싶었던 이 형상은 이미 제목에 상징적으로 그려져 있다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>한 글자 제목 &ndash; 인상을 남기는 데 충분한 한 글자&nbsp;</strong><br />\r\n<br />\r\n자음과 모음이 음절 단위로 묶이는 한글의 구조적 특성을 활용한 제목 유형, 때문에 영어나 일본어에 견줘 한 글자만으로도 의미와 소리를 압축해 전달하는 데 용이하다. 글자 하나에 영화의 정체성을 응축하여 소통에 문제가 없고 오히려 짧지만 강한 인상을 남긴다. 이를테면 &lsquo;돈&rsquo;은 자본주의, 욕망, 생존, 타락의 이미지와 연결되고, &lsquo;꿈&rsquo;은 비현실, 영원, 갈망을 연상시켜 기대와 호기심을 형성한다.<br />\r\n영화사적으로 보면 한 글자 제목의 상당수가 2회 이상 반복해 서로 다른 시대에 나타나는 사례를 발견할 수 있다. &lsquo;길&rsquo;이란 제목이 5회로 최다를 기록했고, &lsquo;꿈&rsquo;과 &lsquo;숨&rsquo; &lsquo;형&rsquo; &lsquo;흙&rsquo;이 3회, &lsquo;딸&rsquo; &lsquo;돈&rsquo; &lsquo;별&rsquo; &lsquo;정&rsquo;이 각각 2회씩 등장한다. 이 같은 제목들은 한국인의 문화와 정서를 지배하는 단어들로 서로 다른 시대에 반복적으로 탐구되는 주제와도 관련이 깊다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/adaebe36-aec5-451d-855f-0492b0560c0c.png\" /><br />\r\n<br />\r\n<br />\r\n<strong>색채의 제목들 &ndash; 컬러가 말해주는 것들</strong><br />\r\n<br />\r\n역대 한국영화 제목에서 색채 관련 어휘를 추출해 분류하면 단연 검정 계열이 많다. 순서대로 검정(96회), 흰색(33회), 빨강(33회), 녹색(25회), 파랑(14회), 노랑(6회), 분홍(6회) 순이다. 검정 계열은 &lsquo;흑&rsquo;(예: 이두용 감독의 &lt;흑야&gt;), &lsquo;검은&rsquo;(예: 이만희 감독의 &lt;검은 머리&gt;), &lsquo;블랙&rsquo;(예: 정지영 감독의 &lt;블랙잭&gt;) 단어를 포괄한 것이다. 검정은 암흑과 범죄, 죽음을 상징하는 색으로 무술영화와 누아르 영화의 정조를 표현하는 어휘로 주로 쓰였다. &lsquo;누아르(noir)&rsquo;란 말도 프랑스어로 &lsquo;검다&rsquo;라는 뜻이다.&nbsp;<br />\r\n일부 영화는 제목 속 색채 어휘로 영화가 무엇을 말하고자 하는지 힌트를 제공한다. &lt;초록물고기&gt;가 한 사례로 사라진 것들에 대한 상실과 비애, 돌아갈 수 없는 운명의 메타포로 &lsquo;초록&rsquo;이란 단어를 썼다. 이 제목에서 방점은 &lsquo;물고기&rsquo;가 아니라 &lsquo;초록&rsquo;에 찍힌다.<br />\r\n<br />\r\n<br />\r\n<strong>타이틀의 안성기&nbsp;&ndash; 170개의 삶이 구축한 한국영화&nbsp;</strong><br />\r\n<br />\r\n한 배우의 필모그래피를 제목만으로 읽는 일은 어떤 의미에서 그가 통과한 시대의 어휘를 복원하는 작업이다. 안성기(1952-2026)가 출연한 약 170여 편의 영화 제목을 연대순으로 늘어놓으면, 거기에는 한국영화가 세계를 명명해 온 방식의 변천이 고스란히 새겨져 있다. 안성기의 제목들을 더듬는 일은 곧 한국영화의 &lsquo;말&rsquo;이 어떻게 자라났는지를 추적하는 일도 된다.&nbsp;<br />\r\n한국영화가 세계를 부르는 방식이 바뀔 때마다 안성기는 그 제목이 약속한 세계를 자신의 몸으로 실현했다. 1919년 〈의리적 구토〉 이래 지금껏 이어지는 한국영화 제목의 망망대해에서, 안성기가 지나간 170여 개의 제목은 한 사람의 족적으로는 거의 불가능해 보이는 하나의 물길을 만들었다. 감정, 역사, 이미지를 수렴하는 제목들의 변천 속에 한국영화의 성장이 있고, 그 성장의 한가운데에 안성기가 있었다.<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/62ccc930-4246-4ea6-a18e-58cb4b20469d.png\" /><br />\r\n<br />\r\n<br />\r\n<strong>흥행 영화 제목과 캘리그래피&nbsp;</strong><br />\r\n<br />\r\n역대 흥행 1위 영화 &lt;명량&gt;이 보여주듯, 서사와 장르를 분명히 하고 간단명료한 명사형 제목을 특징으로 하는 천만영화의 제목들은 흥행 산업에서 제목의 역할에 대해 많은 것을 시사한다. 에둘러 말하거나 감정에 호소하는 게 아니라 단호하면서도 기억에 남을 것. 이것이 25편의 역대 한국 천만영화에서 추려낸 &lsquo;제목의 조건&rsquo;이다.&nbsp;<br />\r\n제목 디자인의 추세적인 흐름도 눈여겨볼 만하다. 여기 소개한 5편의 영화를 비롯해, 장르를 불문한 영화에서 붓글씨 기반의 캘리그래피 제목이 광범위하게 쓰였다. 그 수가 너무 많아 무분별한 느낌을 주지만, 현대 한국영화의 호소력 있는 제목 서체로서 캘리그래피의 위상은 여전하다. 캘리그래피 제목의 최신 사례는 &lt;왕과 사는 남자&gt;(2026)이다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>레터링&amp;캘리그래피&nbsp;</strong><br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/a23b171a-c40f-4784-82e9-326dd0f2c194.png\" /><br />\r\n<br />\r\n영화 제목이 흥미로운 이유 중 하나는 그 모양이 똑같은 게 하나도 없다는 것이다. 개봉을 앞두고 이를 알리기 위한 단계에서 무명의 작화가들은 영화의 매력을 품은 글자를 일일이 그려 포스터, 신문 광고, 전단 등에 담아 대중에게 선보였다. 그 양상은 천차만별이었으나 제목 글자는 그 내용과 무드를 알려주는 영화의 &lsquo;얼굴&rsquo;로 길거리 곳곳에서 사람들의 눈길을 끄는 역할을 수행했다. 90년대 이전 영화라는 매체의 편재성을 감안하면, 방방곡곡 어느 어귀에 무수히 나붙어 일종의 &lsquo;글자 풍경&rsquo;을 이루던 영화 제목들은, 당대 사회의 모습을 투영하는 디자인 유산으로 평가받는 것이 마땅하다 하겠다. 일제강점기 조선영화의 여명기부터 한국영화의 위상이 극적으로 달라진 2020년대까지 제목 조형의 연대기에 등재될 만한 일련의 글자를 수집해 펼쳐 보았다. 조형적인 규칙에 따라 작성한 레터링부터 손글씨 기반의 일회성 글자인 캘리그래피까지 두루 포괄한 이 목록은 텍스트로서 제목의 의미 못지않게 그 영화의 정수를 담은 또 하나의 정체성이라 할 만하다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>인상의 제목들 - 한국영화 0010(이상화)</strong><br />\r\n2000년부터 2010년까지의 한국영화 속 인상적인 모습들을 담았습니다. 제가 태어나기 전 시대의 와닿지 않는 영화들보다는, 빈약하게나마 생각과 감정을 가지고 있던 어린 시절의 영화들에 더 끌렸습니다.모든 것을 농담으로 소비하곤 하는 MZ세대는 아직까지도 &lsquo;밈&rsquo;과 &lsquo;짤&rsquo;이라는 이름으로 그 시절을 이야기합니다. 한편으로는 OTT, 디지털 4K 복원, 그리고 이를 기념하는 현대적인 디자인의 포스터를 통해 그때 영화를 다시 만나기도 합니다. 돌아가고 싶으면서도 결코 돌아가고 싶지 않은, 그 시절의 장면을 수없이 바라봅니다.&nbsp;<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/4bd6664f-07a4-4396-9536-8b764aee519a.png\" />&nbsp;<br />\r\n<br />\r\n<strong>뉴 타이틀 - 워커힐에서 만납시다(한병아)</strong><br />\r\n1966년은 전후 한국 사회가 산업화의 물결 속에서 도시 소비문화로 진입하던 격변의 시기였다. 소달구지와 자동차가 공존하던 서울의 거리 풍경은 과거와 미래가 교차하는 상징적인 공간이었다. 이러한 시대적 맥락을 바탕으로 영화 &lt;워커힐에서 만납시다&gt;(한형모, 1966)의 타이틀 시퀀스를 애니메이션으로 작업해 보았다.&nbsp;<br />\r\n당시 변두리였던 워커힐의 화려한 스포트라이트와 빅밴드 공연을 영화의 소재로 사용한 것은 우리 사회가 처음으로 &lsquo;소비&rsquo;와 &lsquo;오락&rsquo;을 욕망으로 긍정하기 시작했음을 보여주는 기록이다. 전후의 상흔과 근대적 활기가 뒤섞인 60년대 한국의 미학을 시각적으로 재구성하여 대중문화의 태동기에 담긴 생경한 에너지를 즐겁게 담아내고자 했다.<br />\r\n<br />\r\n<br />\r\n<strong>시네마토그래프 타이틀(김태양)</strong><br />\r\n로베르 브레송은 소리와 영상의 절제된 결합을 통한 영화만의 고유한 언어를 &lsquo;시네마토그래프&rsquo;라고 말했습니다. 그에 따르면 절제된 영화 언어는 관객의 상상력을 자극하여 관객이 능동적으로 영화를 보게 합니다. 영화 타이틀 시퀀스 역시 소리와 텍스트, 영상의 결합을 통해 관객으로 하여금 스크린에 펼쳐질 영화를 적극적으로 상상하게 합니다. 한국영화의 창의적인 타이틀의 세계로 여러분을 초대합니다.<br />\r\n<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/22b650f4-5a22-42d1-860f-0a8a52ac23ff.png\" /><br />\r\n<br />\r\n<strong>스크린의 꽃(양으뜸)</strong><br />\r\n한국영화 중에서 제목에 꽃(花), 향기와 관련된 단어나 인물 이름이 포함된 작품을 수집하고,&nbsp;연도나 감독 등의 배경 정보는 제거한 채 제목만을 슬라이드쇼 형식으로 제시한다.&nbsp;<br />\r\n여기에 대조군으로 나무(木)와 관련된 단어나 지명이 포함된 영화 제목을 병치해,&nbsp;&#39;꽃&#39;의 이미지를 통해 여성에게 덧씌워지는 특정한 프레이밍과 시선을, 그리고 &lsquo;나무&rsquo;라는&nbsp;<br />\r\n남성적 기표가 &lsquo;꽃&rsquo;과는 어떻게 다르게 대상화되는지를 드러내고자 한다.&nbsp;<br />\r\n<br />\r\n<br />\r\n<strong>레터링88(오렌지 슬라이스 타입)</strong><br />\r\n1926년부터 2026년까지 한국 관객들의 가슴에 남는 인상적인 한국영화 제목 레터링 88편을 소개한다.<br />\r\n<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/34f19a0a-b63b-4b4f-8fe1-bc9d822f7a83.png\" /><br />\r\n<br />\r\n<strong>제목의 시</strong><br />\r\n<br />\r\n&lt;제목의 시&gt;는 1919년부터 2025년까지 극장 개봉한 한국영화 8400여 편 중 282편의 영화 제목을 특정 기준으로 추출해 만든 10편의 시 연작이다. 개별 시는 60-70년대의 사랑에 대한 통념을 보여주거나(사랑 그리고 죽는 연습), 영화계에서 바라보는 여성/남성의 유형적 단면을 나열하기도 하며(여자를 찾습니다, 바보들의 행진), 특정 지역에 대한 선입견/환상을 드러내기도 한다(서울이 좋다지만, 도시의 사냥꾼). 시의 각 행은 문맥적으로 연결되면서 특정한 심상을 만들며, 연결점이 없던 영화들은 하나의 시로 묶이게 된다.<br />\r\n<br />\r\n<br />\r\n<img alt=\"\" src=\"/upload/editorimage/3612be2c-7b80-4fe6-8129-ee83fb7d6ac3.png\" />"]

전시 본문 HTML. EXHB_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지문화인 식별자integratedReservationId
[null]

통합예매 연계 ID. INTG_RSV_ID. 전시 EXHB_ID와 다름. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
7페이지예매 버튼 활성화bookingEnabled
[false]

전시 상태가 진행 중일 때 true. 현재 전시 상태에 따른 표시 플래그이며 문화인 예매 가능 여부를 실시간 확인한 값은 아님.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
7페이지제목·부제·상태·시작연도·대형배너·기간·장소·본문·예매활성키검토 범위
실제 HTTP 200. 존재하지 않는 과거표본1은404, 공개 목록에서 찾은286/343은 상세200.

TB_EXHB와 대표첨부 THMB_L_FILE_PATH_NM. 실제286 제목전(展),year2026,종료,bannerUrl L.webp,bookingEnabled=false.

기존 사용자 합의: 예매 연결은 프론트, 배너는 대표첨부 대형. bookingEnabled 키 제공 확인.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special/286

{}

2026-10-16T17:05:17.841196+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.28
GET
404
http://localhost:4100/api/v1/museum/exhibitions/special/1

{}

2026-10-16T17:05:16.856397+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.32

한국영화박물관›교육

2개 페이지 · 3개 항목
한국영화박물관 교육의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

교육 프로그램 목록

/museum/education

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf

API·조회 항목 2개

GET교육 프로그램 검색·상태·대상 필터 조회
/api/v1/museum/education
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

keyword/대상5종/모집상태3종/page2/빈검색 모두200,반환 상태·대상 일치.

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-16T17:05:16.422027+09:00

http://localhost:4100/api/v1/museum/education

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 343,
  "title": "[2020~21년생 단체] 반짝이는 ...",
  "status": "모집 마감",
  "recruitmentStatusCode": "CED01004",
  "targetCode": "CED02001",
  "targetName": "어린이",
  "groupCode": "CED03002",
  "groupName": "단체",
  "startDate": "2026-06-11",
  "endDate": "2026-07-23",
  "imageUrl": "/img/mig/educationMa...",
  "imageDescription": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지교육 제목items[].title
["[2020~21년생 단체] 반짝이는 나에게 주는 상(6~7월)", "[초등 5학년 이상 단체] 박물관 전시 도슨트 예약 해설(6월)", "[초등3~6학년] 고전영화북클럽-한국단편문학", "시니어 영화 토론 클럽", "KMDb 프린트 스테이션", "[초등 5학년 이상 단체] 박물관 전시 도슨트 예약 해설(5월) ", "KOFA 영화비평총서 필자 강연", "[2020~21년생 단체] 반짝이는 나에게 주는 상(4~5월)", "[14~16세 단체] 티키무비타카", "시리즈 강좌 <영화+장소>"]

교육명. EDU_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지모집 상태items[].status
["모집 마감", "모집 중", "모집 마감", "모집 마감", "모집 마감", "모집 마감", "모집 마감", "모집 마감", "모집 마감", "모집 마감"]

모집 상태 표시값. 모집 예정/모집 중/모집 마감. CMS 모집상태 코드와 자동모집 기간을 반영하며 판별 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지교육 대상items[].targetName
["어린이", "기타", "어린이", "성인", "기타", "기타", "성인", "어린이", "청소년", "성인"]

교육 대상의 공통코드명. EDU_TRGT_CN 설명문이 아님.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지단체 여부items[].groupName
["단체", "단체", "개인", "개인", "개인", "단체", "개인", "단체", "단체", "개인"]

개인·단체 구분 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지교육 기간items[].startDate / items[].endDate
["2026-06-11", "2026-06-02", "2026-05-30", "2026-05-08", "2026-05-05", "2026-05-02", "2026-04-21", "2026-04-16", "2026-04-01", "2026-03-25", "2026-07-23", "2026-06-30", "2026-06-27", "2026-06-05", "2026-05-05", "2026-05-30", "2026-04-23", "2026-05-28", "2026-06-12", "2026-04-05"]

교육 시작일. EDU_BGNG_YMD를 yyyy-MM-dd로 변환. 변환 불가 시 null. / 교육 종료일. EDU_END_YMD를 yyyy-MM-dd로 변환. 변환 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지대표 이미지items[].imageUrl
["/img/mig/educationManage/4818710a-95b3-48df-b7c6-d010ef4e33e4_M.webp", "/img/mig/educationManage/98cd89a6-df2a-43e9-ae17-35fcb8f632ea_M.webp", "/img/mig/educationManage/bfd3071b-fbb4-45c6-bfe2-47f0b65a617a_M.webp", "/img/mig/educationManage/088375ab-ad17-466b-b570-bb466758138e_M.webp", "/img/mig/educationManage/545ff6e4-2d50-4d48-9357-023ce320e5c1_M.webp", "/img/mig/educationManage/efa3921e-6a4b-4785-986a-763ee9a1badd_M.webp", "/img/mig/educationManage/9b6d987f-3b2e-4d41-b4c9-f9f8acdf37a3_M.webp", "/img/mig/educationManage/d2a84865-4d88-45e1-b169-5387990c030c_M.webp", "/img/mig/educationManage/11552da9-a5a5-4cd2-93be-6182a627e56c_M.webp", "/img/mig/educationManage/359bca84-711e-4f92-a312-b875b8f4502f_M.webp"]

CMS 대표첨부 중형→대형→소형 공개 가능 경로. 미등록·지원 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지총 개수·페이징totalElements / totalPages
[80, 8]

현재 검색·필터 조건에 맞는 전체 결과 건수. / 전체 페이지 수. totalElements/size를 올림한 값이며 결과가 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지제목·모집상태 3종·대상 5종·복합·2페이지keyword/status/target/page
대표 성공 표본에 해당 값 없음

입력 조회 조건: keyword — 교육명 부분 검색. 최대 100자, 생략/빈 문자열이면 전체. / 입력 조회 조건: status — `모집 예정`, `모집 중`, `모집 마감`. 생략/빈 문자열=전체. `/api/v1/museum/education/filters` statuses[].value를 전달합니다. code(CED01002 등)나 공백 없는 label(모집중)이 아닙니다. 예: status=모집 중. / 입력 조회 조건: target — `어린이`, `청소년`, `성인`, `가족`, `기타`. 생략/빈 문자열=전체. `/api/v1/museum/education/filters` targets[].value를 사용합니다. CED02 코드가 아니라 한글 value입니다. 예: target=성인(CED02003 대응). / 입력 조회 조건: page — 1부터 시작하는 페이지 번호. 기본값 `1`. 코드값이 아닌 정수입니다. / 입력 조회 조건: size — 페이지당 개수. 이 API는 `10`만 허용합니다. 기본값 `10`.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
9페이지제목 검색·모집상태·대상 필터·개인/단체·10건 페이징검토 범위
실제 HTTP 200. 존재하지 않는 과거표본1은404, 공개 목록에서 찾은286/343은 상세200.

TB_EDU EDU_NM/EDU_RCRT_STTS_CD/EDU_TRGT_CD/GRP_SE_CD/EDU_BGNG_YMD/EDU_END_YMD, TB_COM_CD CED01/02/03 코드명.

keyword/대상5종/모집상태3종/page2/빈검색 모두200,반환 상태·대상 일치.

제공
검색·필터 등 실제 HTTP 요청 12건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/education?status=%EB%AA%A8%EC%A7%91+%EB%A7%88%EA%B0%90

{}

2026-10-16T17:06:16.637314+09:00일치: 교육 status 필터가 실제 응답과 일치522
GET
200
http://localhost:4100/api/v1/museum/education?status=%EB%AA%A8%EC%A7%91+%EC%98%88%EC%A0%95

{}

2026-10-16T17:06:16.609256+09:00미검증: 교육 status 필터가 실제 응답과 일치22
GET
200
http://localhost:4100/api/v1/museum/education?status=%EB%AA%A8%EC%A7%91+%EC%A4%91

{}

2026-10-16T17:06:16.536781+09:00일치: 교육 status 필터가 실제 응답과 일치66
GET
200
http://localhost:4100/api/v1/museum/education?keyword=ZZZNORESULT20261015

{}

2026-10-16T17:05:17.695863+09:00미검증: 제목 검색어가 반환 제목에 포함73
GET
200
http://localhost:4100/api/v1/museum/education?page=2

{}

2026-10-16T17:05:17.655853+09:00일치: 응답 페이징 번호가 요청과 일치33
GET
200
http://localhost:4100/api/v1/museum/education?target=%EA%B8%B0%ED%83%80

{}

2026-10-16T17:05:17.595698+09:00일치: 교육 target 필터가 실제 응답과 일치52
GET
200
http://localhost:4100/api/v1/museum/education?target=%EA%B0%80%EC%A1%B1

{}

2026-10-16T17:05:17.558349+09:00일치: 교육 target 필터가 실제 응답과 일치30
GET
200
http://localhost:4100/api/v1/museum/education?target=%EC%84%B1%EC%9D%B8

{}

2026-10-16T17:05:17.415099+09:00일치: 교육 target 필터가 실제 응답과 일치135
GET
200
http://localhost:4100/api/v1/museum/education?target=%EC%B2%AD%EC%86%8C%EB%85%84

{}

2026-10-16T17:05:17.346955+09:00일치: 교육 target 필터가 실제 응답과 일치62
GET
200
http://localhost:4100/api/v1/museum/education?target=%EC%96%B4%EB%A6%B0%EC%9D%B4

{}

2026-10-16T17:05:17.147806+09:00일치: 교육 target 필터가 실제 응답과 일치191
GET
200
http://localhost:4100/api/v1/museum/education?keyword=%EC%98%81%ED%99%94

{}

2026-10-16T17:05:16.892610+09:00일치: 제목 검색어가 반환 제목에 포함249
GET
200
http://localhost:4100/api/v1/museum/education

{}

2026-10-16T17:05:16.422027+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.77
GET교육 상태·대상 선택지 조회
/api/v1/museum/education/filters
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

검색 전 /filters 응답의 value 사용. 코드명·사용여부·정렬 반영.

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf · PDF 9페이지

HTTP 조회 시각: 2026-10-16T17:05:16.504900+09:00

http://localhost:4100/api/v1/museum/education/filters

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "statuses": [
    {
      "value": "모집 중",
      "label": "모집중",
      "code": "CED01002"
    },
    {
      "value": "모집 예정",
      "label": "모집예정",
      "code": "CED01003"
    },
    {
      "value": "모집 마감",
      "label": "모집마감",
      "code": "CED01004"
    }
  ],
  "targets": [
    {
      "value": "어린이",
      "label": "어린이",
      "code": "CED02001"
    },
    {
      "value": "청소년",
      "label": "청소년",
      "code": "CED02002"
    },
    {
      "value": "성인",
      "label": "성인",
      "code": "CED02003"
    },
    {
      "value": "가족",
      "label": "가족",
      "code": "CED02004"
    },
    {
      "value": "기타",
      "label": "기타",
      "code": "CED02005"
    }
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
9페이지모집 상태·대상 선택값statuses / targets
[[{"value": "모집 중", "label": "모집중", "code": "CED01002"}, {"value": "모집 예정", "label": "모집예정", "code": "CED01003"}, {"value": "모집 마감", "label": "모집마감", "code": "CED01004"}], [{"value": "어린이", "label": "어린이", "code": "CED02001"}, {"value": "청소년", "label": "청소년", "code": "CED02002"}, {"value": "성인", "label": "성인", "code": "CED02003"}, {"value": "가족", "label": "가족", "code": "CED02004"}, {"value": "기타", "label": "기타", "code": "CED02005"}]]

교육 모집 상태 필터 목록. 각 value를 status에 전송. / 교육 대상 필터 목록. 각 value를 target에 전송.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
9페이지실제 CMS 모집상태·대상 선택지검토 범위
실제 HTTP 200. 존재하지 않는 과거표본1은404, 공개 목록에서 찾은286/343은 상세200.

MuseumEducationMapper.codes: TB_COM_CD USE_YN=Y,SORT_SEQ. CED01002/3/4,CED02001..5.

검색 전 /filters 응답의 value 사용. 코드명·사용여부·정렬 반영.

제공
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/education/filters

{}

2026-10-16T17:05:16.504900+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.40

교육 프로그램 상세

/museum/education/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf

API·조회 항목 1개

GET교육 프로그램 상세·모집 정보 조회
/api/v1/museum/education/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

교육 상세 capacity 실제 컬럼 연결 및 HTTP 실값 검증 완료. 미입력 시 null 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(한국영화박물관)_v1.2.pdf · PDF 10페이지

HTTP 조회 시각: 2026-10-16T18:40:11.834239+09:00

http://localhost:4100/api/v1/museum/education/343

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "education": {
    "id": 343,
    "title": "[2020~21년생 단체] 반짝이는 ...",
    "status": "모집 마감",
    "recruitmentStatusCode": "CED01004",
    "targetCode": "CED02001",
    "targetName": "어린이",
    "groupCode": "CED03002",
    "groupName": "단체",
    "startDate": "2026-06-11",
    "endDate": "2026-07-23",
    "imageUrl": "/img/mig/educationMa...",
    "imageDescription": null
  },
  "schedule": "2026.6~7월 중 목요일",
  "capacity": "2020~21년생 학급(팀당 15~2...",
  "cost": "무료",
  "applicationPeriod": "5.12(화) 15:00부터/ 선착순",
  "bodyHtml": "<span style=\"font-si...",
  "integratedReservationId": 346,
  "bookingEnabled": false
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
10페이지목록 기본정보education
[{"id": 343, "title": "[2020~21년생 단체] 반짝이는 나에게 주는 상(6~7월)", "status": "모집 마감", "recruitmentStatusCode": "CED01004", "targetCode": "CED02001", "targetName": "어린이", "groupCode": "CED03002", "groupName": "단체", "startDate": "2026-06-11", "endDate": "2026-07-23", "imageUrl": "/img/mig/educationManage/4818710a-95b3-48df-b7c6-d010ef4e33e4_M.webp", "imageDescription": null}]

교육 기본 정보와 모집 상태·대상명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지교육 일정schedule
["2026.6~7월 중 목요일"]

교육 일정 안내 문구. EDU_SCHDL_CN. startDate/endDate와 별도 내용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지인원capacity
["2020~21년생 학급(팀당 15~28명 내외)"]

CMS 인원 입력 TB_EDU.EDU_TRGT_CN → capacity. 교육대상 코드와 별개.

실제 DB 원문과 HTTP 응답 일치. 미입력 시 null.

제공
10페이지교육비cost
["무료"]

교육 비용 안내 문구. EDU_CST_CN.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지신청 기간applicationPeriod
["5.12(화) 15:00부터/ 선착순"]

교육 신청기간 안내 문구. EDU_APLY_PRD_CN. 날짜 계산용 값이 아님.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지본문bodyHtml
["<span style=\"font-size:24px;\"><u><strong>[2020~21년생 단체] 교육프로그램 <span style=\"color:#f1c40f;\">&lt;반짝이는 나에게 주는 상&gt;</span>&nbsp;참가 학급 모집</strong></u></span><br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>교육 일정</strong></u>&nbsp;&nbsp;</span><br />\r\n2026.06.11(목)~07.23(목), 기간 중 목요일<br />\r\n<br />\r\n① 6.11(목)&nbsp; 10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"font-size:12px;\"><span style=\"color:#e74c3c;\"> [마감]</span></span>&nbsp;</span><br />\r\n② 6.18(목)&nbsp; 10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"font-size:12px;\"><span style=\"font-size:12px;\"><span style=\"color:#e74c3c;\"> [마감]</span></span>&nbsp;</span>&nbsp;</span><br />\r\n③ 6.25(목)&nbsp; 10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"font-size:12px;\"><span style=\"font-size:12px;\"><span style=\"color:#e74c3c;\"> [마감]</span></span>&nbsp;</span></span><br />\r\n<br />\r\n④ 7.2(목)&nbsp;&nbsp;10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"color:#e74c3c;\"> [마감]</span></span><br />\r\n⑤ 7.9(목)&nbsp;&nbsp;10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"font-size:12px;\"><span style=\"color:#e74c3c;\"> [마감]</span></span>&nbsp;</span><br />\r\n⑥ 7.16(목)&nbsp;&nbsp;10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"font-size:12px;\"><span style=\"color:#e74c3c;\"> [마감]</span></span>&nbsp;</span><br />\r\n⑦ 7.23(목)&nbsp;&nbsp;10:30~12:00<span style=\"font-size:12px;\"> (90분)<span style=\"font-size:12px;\"><span style=\"font-size:12px;\"><span style=\"color:#e74c3c;\"> [마감]</span></span>&nbsp;</span>&nbsp;</span><br />\r\n<br />\r\n* <u>회당 모두 동일한 내용으로 진행하며, 회당 1팀(15~28명 내외)만 참여</u><br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>교육 대상</strong></u></span>&nbsp; 2020~21년생 학급/ 회당 15~28명 내외 <span style=\"font-size:12px;\">(*동일한 단체에서 여러 회차 신청 가능)</span><br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>교육 장소</strong></u></span>&nbsp; 한국영화박물관 전시실 및 교육실<br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>교육비</strong></u>&nbsp;</span> 무료<br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>교육 내용</strong></u></span><br />\r\n박물관에 전시된 영화제 트로피를 살펴보며 &#39;상&#39;이 담고 있는 격려와 축하의 의미를 이해하고, 자신이 잘하는 것과 좋아하는 것을 떠올려 나에게 주는 상장과 트로피,왕관을 만들어 봅니다. 이를 통해 나의 장점을 발견하고 스스로를 응원하며, 서로의 멋진 모습을 소중하게 생각해 보아요.&nbsp;<br />\r\n<br />\r\nㅇ도입:&nbsp; 한국영화박물관 전시 관람하기<br />\r\nㅇ이해:&nbsp; 영화제 속 상의 의미와 종류 이해하기&nbsp;<br />\r\nㅇ심화:&nbsp; 내가 잘하는 것/좋아하는 것 표현하기, 나에게 주는 상(상장/트로피/왕관) 만들기&nbsp;&nbsp;<br />\r\nㅇ마무리:&nbsp; 나의 작품 소개 및 레드카펫 기념 촬영하기<br />\r\n<span style=\"font-size:12px;\">&nbsp;(*세부 운영 내용은 진행 상황에 따라 변경 가능함)</span><br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>신청 기간</strong></u></span>&nbsp; 5.12(화) 15:00부터 선착순/ 교육일 1주일 전 마감<br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><u><strong>신청 방법</strong></u></span><br />\r\n① 본 게시글 하단 &#39;교육프로그램 신청하기&#39; 클릭 후, <u>신청서에 <strong>단체 정보/교육일&amp;시간</strong> 등 작성</u>&nbsp;(*회원 가입 필요, 팝업창 허용, 신청 버튼은 접수 시작 시간에 표시됨)<br />\r\n② 신청서 작성 완료 시, &#39;카카오톡&#39;으로 신청 완료 알림 자동 발송&nbsp;<br />\r\n③ <u>신청서 도착 순서에 따라, 담당자가 신청 교사와 개별 연락하여&nbsp;<strong>교육 참여 일정을 최종 확정 후&nbsp;확정 안내 문자 발송</strong></u><br />\r\n④ 원하시는 교육일이 선착순에 의해 마감될 수도 있으며, 대기자는 신청 취소자 발생 시 대기 순번에 따라 개별 연락&nbsp;드림<br />\r\n<br />\r\n<span style=\"color:#f1c40f;\"><strong><u>참고 사항</u></strong></span><br />\r\nㅇ동일 ID로는 1회차만 신청 가능합니다. 한 기관에서 여러 회차 신청 시 각각 다른 ID로 신청해 주세요<br />\r\nㅇ신청서 작성 시 오기/누락에 대한 책임은 본인에게 있으며, 시간 조율을 원하실 경우 신청서 &#39;전달사항&#39;에 기입 바랍니다<br />\r\nㅇ신청서 작성 완료 시 받는 카카오톡 알림에 적힌 교육 일자는 해당 교육의 마지막 교육일<span style=\"font-size:12px;\">(2026-07-23(목))</span>이 자동으로 적혀 나갑니다. 신청자가 신청서에 작성한 교육일이 아니니 착오 없으시길 바랍니다<br />\r\nㅇ교육 취소 시에는 <u>교육일 7일 전 16:00까지</u> 담당자에게 알려주시기 바라며, 그 이후 취소/불참 시 해당 단체는 차후 교육 참여가 제한됩니다<br />\r\nㅇ교육 중 교육 과정 기록 및 홍보를 위한 사진 촬영이 있으며, 이에 동의하지 않을 경우 교육 참여가 제한됩니다<br />\r\n<br />\r\n문의:&nbsp; 02-3153-2067"]

교육 본문 HTML. EDU_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지문화인 식별자integratedReservationId
[346]

통합예매 연계 ID. INTG_RSV_ID. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지신청 버튼 활성화bookingEnabled
[false]

모집 상태가 모집 중이면 true. 문화인 예매 가능 여부를 실시간 확인한 값은 아님.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
10페이지대상코드명·일정·인원·비용·수업기간·신청기간·본문·예매활성검토 범위
실제342/343 GET200: 단체당10~35인 / 2020~21년생 학급(팀당15~28명 내외) 원문 일치.

CMS EducationForm 인원 입력 eduTrgtCn,TB_EDU.EDU_TRGT_CN→MuseumEducationMapper CAPACITY. 교육대상 EDU_TRGT_CD/코드명은 별도 유지.

교육 상세 capacity 실제 컬럼 연결 및 HTTP 실값 검증 완료. 미입력 시 null 유지.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/education/343

{}

2026-10-16T18:40:11.834239+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.30
GET
200
http://localhost:4100/api/v1/museum/education/342

{}

2026-10-16T18:40:11.635289+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.193
GET
404
http://localhost:4100/api/v1/museum/education/1

{}

2026-10-16T17:05:17.777492+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.57

영문 홈페이지›홈메인

1개 페이지 · 1개 항목
영문 홈페이지 홈메인의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

홈메인 조회

/main

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET정상 응답·구현 여부 확인 필요
/main
HTTP 200 · HTML확인 항목 1개최신 업데이트: 2026-10-22펼치기접기
확인필요

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 실제 영문 Host /main HTML200과 CMS 최신 소식5건 확인. real CMS 조회는 정상. PDF5페이지 외부채널 감독·제작연도는 External DTO에 없으며 홈용 JSON REST 계약도 없어 확인필요 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 4, 5페이지

HTTP 조회 시각: 2026-10-22T02:18:32.456223+00:00

http://localhost:4100/eng/main

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "extractedData": {
    "date": "2026-10-22",
    "todayEventCount": 0,
    "museumEducationAndExhibitionsExcluded": true
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4, 5페이지긴급공지·메인배너·외부채널HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4, 5페이지오늘의 일정·휴무HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4, 5페이지긴급공지·메인배너·오늘 일정·공지/보도 최신 5건·유관기관 링크검토 범위
2026-10-17 실제 HTTP 1건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json

SiteMainQueryServiceImpl→SiteMainMapper의 TB_NTC/TB_NSCVRG/TB_MSCRN_BNR/TB_MSCRN_OTSD_URL. 실제 HTML 원문 보관. External에는 감독/제작연도 키 없음.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 실제 영문 Host /main HTML200과 CMS 최신 소식5건 확인. real CMS 조회는 정상. PDF5페이지 외부채널 감독·제작연도는 External DTO에 없으며 홈용 JSON REST 계약도 없어 확인필요 유지.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/eng/main

{}

2026-10-22T02:18:32.456223+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.241
GET
200
http://localhost:4100/main

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.276567+09:00일치: HTTP 응답 상태 / 일치: 홈 최신 공지/보도 5건 존재 / 일치: CMS 실제 공지 제목이 홈에 표시165
GET
200
http://localhost:4100/main

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:40.361991+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.150

영문 홈페이지›상영

3개 페이지 · 3개 항목
영문 홈페이지 상영의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

상영 프로그램 목록

/cinematheque/programs

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET상영 프로그램 검색·필터·페이징 조회
/api/v1/cinematheque/programs
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 Host 실제 HTTP200에서 status=Ended 확인. Ongoing/Soon/Ended는 기존 메시지 리소스를 이용해 JSON 직렬화 시 번역한다. 국문 응답과 SSR 내부 상태값·기간 판정은 유지한다. 이전에 검증한 검색/필터/DB 원문 매핑도 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 12페이지

HTTP 조회 시각: 2026-10-19T02:04:14.592262+00:00

http://localhost:4100/api/v1/cinematheque/programs

조회 조건: {}

조회 결과 JSON · 객체 1건

page.items[0] · 문자열 값은 최대 20자 표시
{
  "id": 2800,
  "title": "Curator's Choice - A...",
  "group": "상설전",
  "status": "Ended",
  "posterUrl": null,
  "events": [],
  "filmCount": "6 films",
  "dates": [
    "2026-08-20 (Thu)",
    "~",
    "2026-08-31(Mon)"
  ]
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
12페이지프로그램 IDpage.items[].id
[2800, 2799, 2795, 2798, 2796, 2791, 2797, 2794, 2793, 2788]

프로그램 식별자. TB_PRGRM.PRGRM_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지제목page.items[].title
["Curator's Choice - August", "Curator's Choice - June", "Cinematheque KOFA: May Kids Cinema", "Special Screening for the May 18th Democratization Movement: Succession of Memory, Expansion of Vision", "Curator's Choice - May", "Hong Sangsoo Retrospective: Introduction", "2026 Labor Day Special: The 5th Community Film Screening on Labor & Human Rights", "Barrier-Free Film Screenings", "Trip Cinema: Substance, Interface, Assembly", "Curator's Choice - March"]

프로그램명. PRGRM_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지유형page.items[].group
["상설전", "상설전", "키즈시네마", "특별상영", "상설전", "기획전", "공동주최", "배리어프리 영화 정기 상영", "기획전", "상설전"]

프로그램 유형 공통코드명. CCP01 계열. 요청용 코드값은 groups[].code.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지상태page.items[].status
["Ended", "Ended", "Ended", "Ended", "Ended", "Ended", "Ended", "Ended", "Ended", "Ended"]

프로그램 기간 기준 표시명. 진행 중/예정/종료. ProgramStatus의 label.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지포스터page.items[].posterUrl
[null, "/img/mig/programManage/8a0d63ec-f8e5-4e0a-8c69-7366ac503d43_L.webp", "/img/mig/programManage/fc7c4c72-f4d5-4a5e-a1a7-e4684875ff48_L.webp", "/img/mig/programManage/d267b917-16d8-473c-90b6-5a723da2f280_L.webp", "/img/mig/programManage/018de072-b261-47c1-a686-483722b006d6_L.webp", "/img/mig/programManage/f34fc65a-3fd5-4d5a-964d-07827fc3b4fc_L.webp", "/img/mig/programManage/55946710-a35b-490a-9afb-fd93eb754e9b_L.webp", "/img/mig/programManage/47109f5a-5708-4c18-afa8-311323760ce1_L.webp", "/img/mig/programManage/150c3eb0-66d4-4cb7-a416-17344da620b3_L.webp", "/img/mig/programManage/1a6cb714-01a5-4d1e-b136-7fb6ea1a53f2_L.webp"]

CMS 프로그램 대표첨부 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지편수page.items[].filmCount
["6 films", "2 films", "1 film", "2 films", "2 films", "34 films", "1 film", "1 film", "20 films", "1 film"]

삭제되지 않은 연결 SCFM_ID를 중복 제거한 상영작 수 표시 문자열. 예: 5편.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지진행 기간page.items[].dates
[["2026-08-20 (Thu)", "~", "2026-08-31(Mon)"], ["2026-07-31 (Fri)"], ["2026-05-20 (Wed)", "~", "2026-05-23(Sat)"], ["2026-05-16 (Sat)"], ["2026-05-05 (Tue)", "~", "2026-06-06(Sat)"], ["2026-05-02 (Sat)", "~", "2026-06-13(Sat)"], ["2026-04-25 (Sat)"], ["2026-04-18 (Sat)"], ["2026-04-08 (Wed)", "~", "2026-04-30(Thu)"], ["2026-03-20 (Fri)", "~", "2026-03-25(Wed)"]]

프로그램 시작일·종료일 표시 문자열 배열. 복수일이면 시작일, ~, 종료일 순.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지총 개수page.totalElements
[1563]

현재 검색·필터 조건에 맞는 전체 결과 건수.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지연도 선택값availableYears
[[2026, 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003, 2002]]

프로그램 연도 필터로 사용할 수 있는 연도 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지상태별 개수statusCounts
[{"all": 1563, "ongoing": 0, "upcoming": 0, "ended": 1563}]

상태 필터별 프로그램 건수.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
12페이지제목 100자 검색, 연/월/그룹/상태 필터, 10건 페이징, 포스터·제목·기간·편수검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

ScreeningProgramMapper PRGRM_ENG_NM·TB_COM_CD.ENG_CD_NM,ProgramListService. ProgramStatus.label()은 국문 enum 고정값. StatusLabels.forJson 및 각 응답 레코드의 @JsonGetter(status), 기존 messages-cinematheque_en.properties.

영문 Host 실제 HTTP200에서 status=Ended 확인. Ongoing/Soon/Ended는 기존 메시지 리소스를 이용해 JSON 직렬화 시 번역한다. 국문 응답과 SSR 내부 상태값·기간 판정은 유지한다. 이전에 검증한 검색/필터/DB 원문 매핑도 유지.

제공
검색·필터 등 실제 HTTP 요청 14건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/programs

{"Host": "eng.localhost:4100"}

2026-10-19T02:04:14.592262+00:00일치: 영문 상태 라벨/국문 기존 상태 유지 및 실제 DB HTTP200645
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=ZZZNORESULT20261017

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:34.659274+09:00일치: HTTP 응답 상태 / 일치: 존재하지 않는 검색어 결과수167
GET
200
http://localhost:4100/api/v1/cinematheque/programs?page=2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:34.373025+09:00일치: HTTP 응답 상태 / 일치: 요청 페이지와 응답 페이지286
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=upcoming

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:34.214140+09:00일치: HTTP 응답 상태159
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=ongoing

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:34.054694+09:00일치: HTTP 응답 상태159
GET
200
http://localhost:4100/api/v1/cinematheque/programs?group=CCP01001

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:33.730838+09:00일치: HTTP 응답 상태 / 일치: CMS 그룹코드 필터 결과324
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=Curator&year=2026&month=8&status=ended

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:33.505708+09:00일치: HTTP 응답 상태 / 일치: 영문명 검색의 비어 있지 않은 양성 표본 / 일치: 영문 프로그램명 keyword 일치 / 일치: 종료 상태 필터 일치225
GET
200
http://localhost:4100/api/v1/cinematheque/programs

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.441792+09:00일치: HTTP 응답 상태 / 일치: CMS 원문과 표시 제목 일치 #2800 / 일치: CMS 원문과 표시 제목 일치 #2799 / 일치: CMS 원문과 표시 제목 일치 #2795 / 일치: CMS 원문과 표시 제목 일치 #2798 / 일치: CMS 원문과 표시 제목 일치 #2796 / 일치: CMS 원문과 표시 제목 일치 #2791 / 일치: CMS 원문과 표시 제목 일치 #2797 / 일치: CMS 원문과 표시 제목 일치 #2794 / 일치: CMS 원문과 표시 제목 일치 #2793 / 일치: CMS 원문과 표시 제목 일치 #2788 / 불일치: 영문 기획서의 상태 표시(Ongoing/Soon/Ended)277
GET
200
http://localhost:4100/api/v1/cinematheque/programs?page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:41.888135+09:00일치: 응답 페이징 번호가 요청과 일치273
GET
200
http://localhost:4100/api/v1/cinematheque/programs?status=ended

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:41.645346+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.235
GET
200
http://localhost:4100/api/v1/cinematheque/programs?year=2026&month=8

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:41.459829+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.178
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=Film

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:41.235349+09:00일치: 제목 검색어가 반환 제목에 포함216
GET
200
http://localhost:4100/api/v1/cinematheque/programs?keyword=%EC%98%81%ED%99%94

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:40.948111+09:00일치: 제목 검색어가 반환 제목에 포함275
GET
200
http://localhost:4100/api/v1/cinematheque/programs

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:40.539976+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.400

상영 프로그램 상세

/cinematheque/programs/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET프로그램 소개·행사·섹션별 상영작 조회
/api/v1/cinematheque/programs/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 Host 실제 HTTP200에서 status=Ended 확인. Ongoing/Soon/Ended는 기존 메시지 리소스를 이용해 JSON 직렬화 시 번역한다. 국문 응답과 SSR 내부 상태값·기간 판정은 유지한다. 이전에 검증한 검색/필터/DB 원문 매핑도 유지. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 13페이지

HTTP 조회 시각: 2026-10-20T16:54:30.856024+09:00

http://localhost:4100/api/v1/cinematheque/programs/2800

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "programId": 2800,
  "programType": "상설전",
  "title": "Curator's Choice - A...",
  "status": "Ended",
  "period": "2026-08-20(Thu) ~ 20...",
  "theater": "시네마테크KOFA 2관",
  "bannerUrl": null,
  "introductionHtml": "<div class=\"kmdb-edi...",
  "events": [],
  "sections": [
    {
      "sectionId": 240,
      "title": "Section2",
      "headingTitle": "Section2",
      "movies": [
        {
          "screeningMovieId": 10445,
          "title": "Sentimental Value",
          "directorName": "요아킴 트리에",
          "productionYear": null,
          "runtime": "134 min",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": null,
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        }
      ]
    },
    {
      "sectionId": 241,
      "title": "Short Film Section 1",
      "headingTitle": "Short Film Section 1",
      "movies": [
        {
          "screeningMovieId": 10446,
          "title": "소설 윤동주",
          "directorName": null,
          "productionYear": null,
          "runtime": "0 min",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": null,
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        },
        {
          "screeningMovieId": 10447,
          "title": "(Challi chaepeullin ...",
          "directorName": "찰리 채플린",
          "productionYear": null,
          "runtime": "55 min",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": null,
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        }
      ]
    },
    {
      "sectionId": 242,
      "title": "Section211",
      "headingTitle": "Section211",
      "movies": [
        {
          "screeningMovieId": 10448,
          "title": "Hope (Hopeu)",
          "directorName": "나홍진",
          "productionYear": null,
          "runtime": "161 min",
          "ratingLabel": "상영등급 없음",
          "ratingIconUrl": null,
          "posterUrl": "http://kofafilm.arch...",
          "media": "",
          "eventTypes": [],
          "englishSubtitle": false
        }
      ]
    }
  ],
  "unsectionedMovies": [],
  "selectedSectionId": null,
  "emptyMovies": false,
  "eventTypes": []
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
13페이지제목title
["Curator's Choice - August"]

프로그램명. PRGRM_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지기간period
["2026-08-20(Thu) ~ 2026-08-31(Mon)"]

프로그램 기간 표시 문자열. yyyy-MM-dd(요일) ~ yyyy-MM-dd(요일).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지상영관theater
["시네마테크KOFA 2관"]

연결 상영회차의 상영관 공통코드명을 중복 제거 후 · 로 합친 문자열.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지배너bannerUrl
[null]

프로그램 대표첨부 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
13페이지본문introductionHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">We have selected Joachim Trier’s highly anticipated&nbsp;<i data-index-in-node=\"52\" data-path-to-node=\"0\">Sentimental Value</i>—from the director who delicately captured modern love and anxiety in&nbsp;<i data-index-in-node=\"139\" data-path-to-node=\"0\">The Worst Person in the World</i>&nbsp;(2021)—as our 'August Curator’s Choice.' Exploring the emotional turbulence between a filmmaker father and his actress daughter, long-estranged since the mother's death, who reunite to shoot an autobiographical film, this work is deeply infused with the director's profound insights into family heritage, art, and the weight of memory. It is a captivating film highlighted by the complex and nuanced father-daughter performance crafted by Renate Reinsve—who won Best Actress at the Cannes Film Festival for&nbsp;<i data-index-in-node=\"679\" data-path-to-node=\"0\">The Worst Person in the World</i>—and acclaimed actor Stellan Skarsgård, all elevated by Trier’s signature sophisticated mise-en-scène and profound emotional depth.</div>"]

프로그램 소개 HTML. PRGRM_INTRO_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지섹션sections
[[{"sectionId": 240, "title": "Section2", "headingTitle": "Section2", "movies": [{"screeningMovieId": 10445, "title": "Sentimental Value", "directorName": "요아킴 트리에", "productionYear": null, "runtime": "134 min", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": null, "media": "", "eventTypes": [], "englishSubtitle": false}]}, {"sectionId": 241, "title": "Short Film Section 1", "headingTitle": "Short Film Section 1", "movies": [{"screeningMovieId": 10446, "title": "소설 윤동주", "directorName": null, "productionYear": null, "runtime": "0 min", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": null, "media": "", "eventTypes": [], "englishSubtitle": false}, {"screeningMovieId": 10447, "title": "(Challi chaepeullin 4 danpyeonmoeumjip)", "directorName": "찰리 채플린", "productionYear": null, "runtime": "55 min", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": null, "media": "", "eventTypes": [], "englishSubtitle": false}]}, {"sectionId": 242, "title": "Section211", "headingTitle": "Section211", "movies": [{"screeningMovieId": 10448, "title": "Hope (Hopeu)", "directorName": "나홍진", "productionYear": null, "runtime": "161 min", "ratingLabel": "상영등급 없음", "ratingIconUrl": null, "posterUrl": "http://kofafilm.archivecenter.or.kr/m1/svc/upload/pstr/2025/09/16/01/pstr_20250916000000000_319782_S.jpg", "media": "", "eventTypes": [], "englishSubtitle": false}]}]]

프로그램의 상영작 섹션 목록과 섹션별 영화 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
13페이지섹션 없는 상영작unsectionedMovies
[[]]

섹션이 지정되지 않은 연결 상영작 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
13페이지행사events
[[]]

연결 회차의 행사 목록. 내용은 contentText 원문으로 제공.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
13페이지제목·장소·배너·영문 소개·행사·섹션별 상영작검토 범위
대표 성공 표본에 해당 값 없음

ScreeningProgramMapper PRGRM_ENG_NM/PRGRM_INTRO_ENG_CN/SCFM_SE_ENG_NM/MOVIE_ENG_NM/DRC_ENG_NM. ProgramDetailService.status는 ProgramStatus의 국문 라벨. StatusLabels.forJson 및 각 응답 레코드의 @JsonGetter(status), 기존 messages-cinematheque_en.properties.

영문 Host 실제 HTTP200에서 status=Ended 확인. Ongoing/Soon/Ended는 기존 메시지 리소스를 이용해 JSON 직렬화 시 번역한다. 국문 응답과 SSR 내부 상태값·기간 판정은 유지한다. 이전에 검증한 검색/필터/DB 원문 매핑도 유지. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 8건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:11.969127+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음139
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{"Host": "eng.localhost:4100"}

2026-10-19T02:04:15.571389+00:00일치: 영문 상태 라벨/국문 기존 상태 유지 및 실제 DB HTTP200245
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2791

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.133708+09:00일치: HTTP 응답 상태 / 일치: 다른 실제 공개 프로그램 영문 제목228
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800?sectionId=241

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:34.981811+09:00일치: HTTP 응답 상태 / 일치: 섹션 선택값152
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800?sectionId=240

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:34.838007+09:00일치: HTTP 응답 상태 / 일치: 섹션 선택값144
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.718581+09:00일치: HTTP 응답 상태 / 일치: 프로그램 상세 영문 제목 / 일치: 영문 소개 원천 본문과 텍스트 일치 / 일치: 영문 섹션명 원천 / 일치: 연결 상영작 영문명/국문 대체 / 일치: 연결 상영작 감독 영문명/국문 대체 / 일치: 영문 섹션명 원천 / 일치: 연결 상영작 영문명/국문 대체 / 일치: 연결 상영작 감독 영문명/국문 대체 / 일치: 연결 상영작 영문명/국문 대체 / 일치: 연결 상영작 감독 영문명/국문 대체 / 일치: 영문 섹션명 원천 / 일치: 연결 상영작 영문명/국문 대체 / 일치: 연결 상영작 감독 영문명/국문 대체 / 불일치: 영문 기획서의 상태 표시(Ongoing/Soon/Ended)154
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.173593+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.182
GET
200
http://localhost:4100/api/v1/cinematheque/programs/2800

{"Host": "eng.localhost:4100"}

2026-10-20T16:54:30.856024+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.240

상영작 상세

/cinematheque/movies/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET영문 상영작 상세: 제목·영문명·기본정보·회차·줄거리·행사·관련 프로그램
/api/v1/cinematheque/movies/{id}
HTTP 200 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

신규 PDF 10페이지 추가. 영문명 키는 있으나 표본 값 없음. facts.label과 감독/행사 등 영문 표기 원천/번역 주체 확인. 단편 묶음(11페이지)은 제외. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지. 2026-10-20 SVC 전환 검증: AMS 직접 연결을 제거하고 SVC 시노님(AMS_LINK)으로 조회한 실제 HTTP200 응답으로 대표 JSON을 갱신했습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 10페이지

HTTP 조회 시각: 2026-10-20T16:54:31.095879+09:00

http://localhost:4100/api/v1/cinematheque/movies/156

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "title": "돌아온 사나이 (Returned Ma...",
  "englishTitle": null,
  "imageUrl": null,
  "kmdbUrl": null,
  "ratingIcon": null,
  "ratingLabel": null,
  "facts": [
    {
      "label": "감독",
      "value": "김수용",
      "wide": false,
      "rating": false
    },
    {
      "label": "관람등급",
      "value": null,
      "wide": false,
      "rating": true
    },
    {
      "label": "출연",
      "value": "김진규, 최은희, 이민, 엄앵란, 허...",
      "wide": true,
      "rating": false
    },
    {
      "label": "제작연도",
      "value": null,
      "wide": false,
      "rating": false
    },
    {
      "label": "러닝타임",
      "value": "91분",
      "wide": false,
      "rating": false
    },
    {
      "label": "색채",
      "value": null,
      "wide": false,
      "rating": false
    },
    {
      "label": "화면비",
      "value": null,
      "wide": false,
      "rating": false
    }
  ],
  "synopsisHtml": "박남우(김제규)는 일본인의 제약회사에...",
  "screenings": [
    {
      "id": 566,
      "date": "2005-05-06(금) 12:30",
      "venue": "",
      "badges": [],
      "status": "CLOSED",
      "bookingLabel": "예매 종료",
      "available": false,
      "bookingHref": "/booking/culture/mov..."
    }
  ],
  "events": [],
  "programs": [
    {
      "url": "/cinematheque/progra...",
      "title": "동북아시아 청춘영화전",
      "status": "종료",
      "imageUrl": "/img/mig/programMana...",
      "type": "기획전",
      "eventTypes": [],
      "count": "16편",
      "period": "2005-05-02(월) ~ 2005..."
    }
  ],
  "id": 156,
  "programId": 1225,
  "movieId": null,
  "movieMngNo": "K00605",
  "posterUrl": "http://kofafilm.arch...",
  "shorts": []
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
10페이지영문 상영작 상세: 제목·영문명·기본정보·회차·줄거리·행사·관련 프로그램검토 범위
대표 성공 표본에 해당 값 없음

ScreeningMovieMapper: TB_PRGRM_MOVIE.MOVIE_NM/MOVIE_ENG_NM/DRC_NM 등. 156번 실제 응답 englishTitle=null, facts.label은 감독/관람등급 등 국문.

신규 PDF 10페이지 추가. 영문명 키는 있으나 표본 값 없음. facts.label과 감독/행사 등 영문 표기 원천/번역 주체 확인. 단편 묶음(11페이지)은 제외. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/cinematheque/movies/156

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.208856+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음171
GET
200
http://localhost:4100/api/v1/cinematheque/movies/156

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:44.262100+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.135
GET
200
http://localhost:4100/api/v1/cinematheque/movies/156

{"Host": "eng.localhost:4100"}

2026-10-20T16:54:31.095879+09:00SVC 연결 전환 후 실제 DB HTTP200. 기존 조회 조건·응답 키 유지 확인. AMS 직접 접속 없음.173

영문 홈페이지›전시

3개 페이지 · 3개 항목
영문 홈페이지 전시의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

상설전시

/museum/exhibition/permanent

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET상설전시 소개·본문 조회
/api/v1/museum/exhibitions/permanent
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

2026-10-19 사용자 결정: 초기 영화로의 초대 탭 데이터 요구를 검토 범위에서 제외. 현재 CMS 공개 상설전시 한국영화를 보다(249)의 제목·장소·배너·본문 실제 HTTP200 확인. 공개 데이터 건수에 맞춘 배열 응답으로 검토 범위 완료.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 19, 20페이지

HTTP 조회 시각: 2026-10-19T12:16:49.445924+09:00

http://localhost:4100/api/v1/museum/exhibitions/permanent

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 배열[0] · 문자열 값은 최대 20자 표시
{
  "exhibition": {
    "id": 249,
    "title": "한국영화를 보다",
    "subtitle": "우리 영화 100년의 기억",
    "location": "한국영화박물관 상설전시실",
    "startDate": "2016-10-19",
    "endDate": "2026-10-30",
    "imageUrl": "/img/mig/exhibitionM...",
    "imageDescription": "한국영화를보다",
    "status": "Ongoing"
  },
  "year": 2016,
  "bannerUrl": "/img/mig/exhibitionM...",
  "bodyHtml": "<div class=\"kmdb-edi...",
  "integratedReservationId": null,
  "bookingEnabled": false
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
19, 20페이지전시 제목·기간·장소·배너·본문[].exhibition.title / [].exhibition.startDate / [].exhibition.endDate / [].exhibition.location / [].bannerUrl / [].bodyHtml
["한국영화를 보다", "2016-10-19", "2026-10-30", "한국영화박물관 상설전시실", "/img/mig/exhibitionManage/95399d19-0b16-4b72-9b11-f49eb6cb2743_L.webp", "<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><div class=\"box-museum-detail-top type-2\" style=\"padding-top:0;border-top:0\">\n <div class=\"detail-wrap\" style=\"padding-top:0;\">\n  <p class=\"txt-1\">한국영화박물관에는 영화매체가 처음 우리나라에 들어와서 오늘날 한국영화가 전 세계에 한류의 바람을 일으키기까지 우리 영화 100년의 기억들이 숨쉬고 있습니다. 이곳에서 한국영화의 지난 역사를 눈으로 보고, 귀로 듣고, 직접 체험할 수 있습니다. 111111</p>\n  <p class=\"txt-1 gap-2\">한국영화박물관은 상설전시와 기획전시로 나뉘어 연중 전시프로그램을 운영하고 있습니다. 상설전시는 한국영화사를 세부주제별로 14개의 섹션으로 나누어 전시하고 있습니다</p>\n </div>\n</div>\n<div class=\"box-museum-detail-8\">\n <p class=\"title-1\">영화의 탄생</p>\n <p class=\"txt-1\">한국영화의 탄생 이전 프랑스 뤼미에르 형제를 비롯한 미국의 에디슨, 독일의 슈클라다노프스키 형제 등이 영화를 발명하고 상영한 세계의 영화 발명 및 상영에 관한 내용과 나라별로 영화의 탄생 시기 등을 알아봅니다.</p>\n <p class=\"title-1\">신기한 경험의 시작, 활동사진 조선에 오다</p>\n <div class=\"img-1\">\n  <img alt=\"| 활동사진이 조선에 들어온 경로와 과정\" src=\"/static/pc/images/img/img_museum_detail_4_2.jpg\">\n  <p class=\"img-caption\">| 활동사진이 조선에 들어온 경로와 과정</p>\n </div>\n <p class=\"txt-1\">미국의 여행가 버튼 홈즈를 통해 활동사진이 처음 조선에 들어온 경로와 버튼 홈즈가 촬영한 활동사진을 고종에게 보여주고 이후<br>\n   대중에게 공개되는 과정을 설명하고 있습니다. 1900년대 초기 영상물을 통해 당시 우리나라의 생활상과 사회상을 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">한국영화 100년의 시간</p>\n <ul class=\"img-2\">\n  <li><img alt=\"| 한국영화 100년의 시간 입구의 모습 \" src=\"/static/pc/images/img/img_museum_detail_4_3.jpg\">\n   <p class=\"img-caption\">| &lt;한국영화 100년의 시간&gt; 입구의 모습</p></li>\n  <li><img alt=\"| 한국영화사 연표의 일부\" src=\"/static/pc/images/img/img_museum_detail_4_4.jpg\">\n   <p class=\"img-caption\">| 한국영화사 연표의 일부</p></li>\n </ul>\n <p class=\"txt-1\">한국영화의 탄생 시기부터 최근에 이르기까지 연표를 통해 한국영화 역사의 흐름을 볼 수 있습니다.</p>\n <p class=\"title-1\">근대, 식민, 조선영화</p>\n <div class=\"img-1\">\n  <img alt=\"| 초기 한국영화 시나리오와 촬영용 카메라\" src=\"/static/pc/images/img/img_museum_detail_4_5.jpg\">\n  <p class=\"img-caption\">| 초기 한국영화 시나리오와 촬영용 카메라</p>\n </div>\n <p class=\"txt-1\">1900년대 초기부터 1945년 해방 이전까지, 최초의 조선영화의 등장과 영화인들의 활동, 일제 식민지하에서의 조선영화의 체제 등을 알아보고 당시 제작된 작품의 영상물과 스틸사진 등을 직접 확인할 수 있는 공간입니다.</p>\n <p class=\"title-1\">해방과 전쟁</p>\n <div class=\"img-1\">\n  <img alt=\"| 집없는 천사(1941) 등을 촬영했던 김학성 촬영감독이 6.25전쟁 당시 정훈국 소속으로 전쟁 현장을 촬영했던 카메라와 착용 군복\" src=\"/static/pc/images/img/img_museum_detail_4_6.jpg\">\n  <p class=\"img-caption\">| &lt;집없는 천사&gt;(1941) 등을 촬영했던 김학성 촬영감독이 6.25전쟁 당시 정훈국 소속으로 전쟁 현장을 촬영했던 카메라와 착용 군복</p>\n </div>\n <p class=\"txt-1\">일제 식민지와 6.25 전쟁을 겪으면서 폐허가 된 당시 영화제작 환경과 시스템을 극복하고 한국영화의 명맥을 이어가고자 하는 영화인들의 활동과 작품을 살펴볼 수 있는 공간입니다.</p>\n <p class=\"title-1\">매혹과 혼돈</p>\n <div class=\"img-1\">\n  <img alt=\"| 1950년대 작품 시나리오와 수도영화사에서 사용했던 촬영용 카메라 \" src=\"/static/pc/images/img/img_museum_detail_4_7.jpg\">\n  <p class=\"img-caption\">| 1950년대 작품 시나리오와 수도영화사에서 사용했던 촬영용 카메라</p>\n </div>\n <p class=\"txt-1\">1950년대, 한국전쟁으로 인한 파괴와 빈곤, 무질서와 반공 이데올로기의 강화, 미국 소비문화의 급속한 확산 등으로 혼란기를 맞은 한국사회가 그대로 투영된 한국영화의 작품 경향을 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">한국영화 르네상스</p>\n <div class=\"img-1\">\n  <img alt=\"| 한국영화 르네상스 섹션 전경  \" src=\"/static/pc/images/img/img_museum_detail_4_8.jpg\">\n  <p class=\"img-caption\">| &lt;한국영화 르네상스&gt; 섹션 전경</p>\n </div>\n <p class=\"txt-1\">1960년대는 한국영화의 황금기로 이 시기에 만들어졌던 작품들과 서울 시내 개봉관의 정보와 당시 제작 편수와 관람객 수 등의 관련 정보를 확인할 수 있습니다.</p>\n <p class=\"title-1\">청년문화의 시대</p>\n <div class=\"img-1\">\n  <img alt=\"| 청년문화의 시대 섹션 전경 \" src=\"/static/pc/images/img/img_museum_detail_4_9.jpg\">\n  <p class=\"img-caption\">| &lt;청년문화의 시대&gt; 섹션 전경</p>\n </div>\n <p class=\"txt-1\">1970년대 불황기를 맞은 한국영화계에는 이를 극복하기 위한 신인감독들의 등장과 기존 감독들의 지속적인 활동 등을 청년문화를 대표하는 작품과 소장자료 등을 통해 확인할 수 있습니다.</p>\n <p class=\"title-1\">변화의 바람</p>\n <div class=\"img-1\">\n  <img alt=\"| 1980년대 영화의 포스터들 \" src=\"/static/pc/images/img/img_museum_detail_4_10.jpg\">\n  <p class=\"img-caption\">| 1980년대 영화의 포스터들</p>\n </div>\n <p class=\"txt-1\">불황이 더 깊어진 1980년대 영화계의 작품 경향과 이를 극복하기 위한 다양한 분야의 영화 활동 등을 당시 사회상과 더불어 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">영상문화의 폭발</p>\n <div class=\"img-1\">\n  <img alt=\"| 1990년대를 대표하는 영상매체인 비디오테이프와 DVD \" src=\"/static/pc/images/img/img_museum_detail_4_11.jpg\">\n  <p class=\"img-caption\">| 1990년대를 대표하는 영상매체인 비디오테이프와 DVD</p>\n </div>\n <p class=\"txt-1\">1990년대에 들어서 홈비디오 시장이 확대되고 케이블 TV가 출범하는 등 미디어 부분의 새로운 환경 변화에 따라 멀티플렉스 극장, 블록버스터 영화, 대기업의 영화시장 참여 등 영화산업이 발달하였습니다. 이에 변모하는 한국영화의 모습을 볼 수 있습니다.</p>\n <p class=\"title-1\">아카이브</p>\n <div class=\"img-1\">\n  <img alt=\"| 포스터를 찾아보고 영화음악까지 즐길 수 있는 아카이브  \" src=\"/static/pc/images/img/img_museum_detail_4_12.jpg\">\n  <p class=\"img-caption\">| 포스터를 찾아보고 영화음악까지 즐길 수 있는 아카이브</p>\n </div>\n <p class=\"txt-1\">영상자료는 영화필름 외에 포스터와 영화음악 등이 있습니다. 이곳에서는 미디어테이블을 통해 연대별 주요 영화작품, 감독, 배우 등을 검색하여 정보를 볼 수 있으며, 포스터와 영화음악 등을 검색하여 보고 듣는 등 직접적인 감상을 할 수 있습니다.</p>\n <p class=\"title-1\">한국영화 100선</p>\n <div class=\"img-1\">\n  <img alt=\"| 한국영화 100선으로 선정된 101편의 작품 하이라이트 영상 \" src=\"/static/pc/images/img/img_museum_detail_4_13.jpg\">\n  <p class=\"img-caption\">| &lt;한국영화 100선&gt;으로 선정된 101편의 작품 하이라이트 영상</p>\n </div>\n <p class=\"txt-1\">한국영화 초창기부터 2012년까지 개봉한 현재 필름이나 콘텐츠가 남아있는 장편영화 중, 한국영화사를 대표하는 작품, 당대의 대중 의식을 반영하였거나 한국사회의 독특한 맥락에서 제작되어 사전 연구 가치가 높은 작품, 장르적 혹은 예술적 완성도가 높은 작품 등 한국영화를 대표할 만한 작품 100편을 선정하여 주요 장면의 영상물과 영화 타이틀을 함께 전시하였습니다.</p>\n <p class=\"title-1\">애니메이션</p>\n <div class=\"img-1\">\n  <img alt=\"| 시각적 놀이기구인 매직랜턴과 대형 조에트로프, 애니메이션 스탠드\" src=\"/static/pc/images/img/img_museum_detail_4_14.jpg\">\n  <p class=\"img-caption\">| 시각적 놀이기구인 매직랜턴과 대형 조에트로프, 애니메이션 스탠드</p>\n </div>\n <p class=\"txt-1\">영화 탄생 이전의 시각적 놀이기구, 아날로그 방식의 애니메이션 제작 기구 애니메이션 스탠드 등이 전시되어 애니메이션의 원리를 살펴볼 수 있으며, 특히 &lt;소중한 날의 꿈&gt;의 애니메이션 제작과정을 통해 애니메이션의 기획에서부터 상영까지의 단계별 내용을 살펴볼 수 있습니다.</p>\n <p class=\"title-1\">영화인</p>\n <div class=\"img-1\">\n  <img alt=\"| 영화인들이 수상한 주요영화제 및 영화상의 트로피\" src=\"/static/pc/images/img/img_museum_detail_4_15.jpg\">\n  <p class=\"img-caption\">| 영화인들이 수상한 주요영화제 및 영화상의 트로피</p>\n </div>\n <p class=\"txt-1\">한국영화 100선의 작품에 출연 또는 연출, 스태프 등으로 참여하였거나 국내외 영화제에서 수상 경력이 있는 영화인들을 기리는 섹션입니다. 영화인들의 주요 필모그래피와 연출 노트, 소장품 및 각종 영화제 트로피 등을 보실 수 있습니다.</p>\n</div></div>"]

전시 제목. EXHB_TTL. / 전시 시작일. EXHB_BGNG_YMD를 yyyy-MM-dd로 변환. 변환 불가 시 null. / 전시 종료일. EXHB_END_YMD를 yyyy-MM-dd로 변환. 값이 없거나 변환 불가 시 null. / 전시장소명. EXHB_PLC_NM. / CMS 대표첨부 대형 이미지 경로. 미등록 시 null. / 전시 본문 HTML. EXHB_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
19, 20페이지공개 상설전시 제목·배너·기간·장소·본문검토 범위
2026-10-19 실제 HTTP200·공개 상설전시1건. docs/백엔드/permanent-exhibition-review-2026-10-19/http.json

CMS TB_EXHB: EXHB_ID=249, EXHB_TYPE_CD=CEH01002, DEL_YN=N, SRVC_STTS_CD=CCM04001. 제목 EXHB_TTL, 장소 EXHB_PLC_NM, 본문 EXHB_CN 및 대표첨부 THMB_L_FILE_PATH_NM. 실제 CMS SELECT 및 국문/영문 Host HTTP 결과 대조.

2026-10-19 사용자 결정: 초기 영화로의 초대 탭 데이터 요구를 검토 범위에서 제외. 현재 CMS 공개 상설전시 한국영화를 보다(249)의 제목·장소·배너·본문 실제 HTTP200 확인. 공개 데이터 건수에 맞춘 배열 응답으로 검토 범위 완료.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/exhibitions/permanent

{"Host": "eng.localhost:4100"}

2026-10-19T12:16:49.445924+09:00일치: 공개 상설전시249의 제목·장소·배너·본문 제공, 실제 CMS 공개건수1건 일치56
GET
200
http://localhost:4100/api/v1/museum/exhibitions/permanent

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.872697+09:00일치: HTTP 응답 상태 / 일치: 현재 상설전시 공개 원천 건수 / 일치: 상설 제목 원천/국문 대체 / 일치: 상설 본문 원천21
GET
200
http://localhost:4100/api/v1/museum/exhibitions/permanent

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.540527+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.18

기획전시

/museum/exhibition/special

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET기획전시 검색·연도별 목록 조회
/api/v1/museum/exhibitions/special
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 Host 실제 HTTP200에서 status=Ended 확인. Ongoing/Soon/Ended는 기존 메시지 리소스를 이용해 JSON 직렬화 시 번역한다. 국문 응답과 SSR 내부 상태값·기간 판정은 유지한다. 이전에 검증한 검색/필터/DB 원문 매핑도 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 21페이지

HTTP 조회 시각: 2026-10-19T02:04:15.949676+00:00

http://localhost:4100/api/v1/museum/exhibitions/special

조회 조건: {}

조회 결과 JSON · 객체 1건

page.items[0] · 문자열 값은 최대 20자 표시
{
  "id": 286,
  "title": "On Title",
  "subtitle": "Text, Typography, Mo...",
  "location": "Temporary Exhibition...",
  "startDate": "2026-05-08",
  "endDate": "2026-08-29",
  "imageUrl": "/img/mig/exhibitionM...",
  "imageDescription": null,
  "status": "Ended"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
21페이지기획전시 목록 제목·기간·장소·이미지page.items[].title / page.items[].startDate / page.items[].endDate / page.items[].location / page.items[].imageUrl
["On Title", "Run on the Cels, Gil-dong!", "Film Bookshop", "Moving Portraits", "Dialogue Cinema: Great Dialogues from Korean Movie", "Production Design", "All of Us are (Not) Zombies", "Great Expectations: Taehung Pictures 1984-2004", "정훈이만화,<br>영화와 뒹굴뒹굴<br>25년", "21세기한국영화<br> 웰메이드 영화의 시대", "2026-05-08", "2025-05-02", "2024-11-08", "2024-07-19", "2024-01-16", "2023-07-28", "2022-10-21", "2022-04-14", "2021-09-14", "2021-02-26", "2026-08-29", "2025-08-30", "2025-03-01", "2024-09-28", "2024-06-01", "2023-11-18", "2023-06-24", "2022-09-25", "2022-03-27", "2021-08-29", "Temporary Exhibition Hall", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "한국영화박물관 기획전시실", "/img/mig/exhibitionManage/af22b168-d5ed-42b4-97f4-084669b37ac7_M.webp", "/img/mig/exhibitionManage/cfeab086-7e24-4398-9ac8-a4539aa49585_M.webp", "/img/mig/exhibitionManage/0a24f45e-a7ab-45ee-9025-6e7f04bdfb61_M.webp", "/img/mig/exhibitionManage/d74988c4-262b-4920-b699-8c428de59954_M.webp", "/img/mig/exhibitionManage/754962a1-dfdb-43ed-a2a2-c4ba2675098b_M.webp", "/img/mig/exhibitionManage/7e11ed41-f88b-4b77-979f-5a7c4d378b7c_M.webp", "/img/mig/exhibitionManage/8dccf24f-8630-47c9-b13c-969bb65d7847_M.webp", "/img/mig/exhibitionManage/b3eab0d7-5fd5-43d5-b3da-16e68c4fba74_M.webp", "/img/mig/exhibitionManage/eaceca0a-1153-4469-832f-224197c4b0ff_M.webp", "/img/mig/exhibitionManage/39a8218b-2cba-438f-9b3c-3a03c1ba307e_M.webp"]

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
21페이지기획전시 검색·연도·목록 제목·배너·기간·장소·본문검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

SpecialExhibitionMapper title/filters/columns. EXHB_ENG_TTL 및 EXHB_BGNG_YMD,현재 제외 조건. SQL STATUS는 국문 CASE문. StatusLabels.forJson 및 각 응답 레코드의 @JsonGetter(status), 기존 messages-cinematheque_en.properties.

영문 Host 실제 HTTP200에서 status=Ended 확인. Ongoing/Soon/Ended는 기존 메시지 리소스를 이용해 JSON 직렬화 시 번역한다. 국문 응답과 SSR 내부 상태값·기간 판정은 유지한다. 이전에 검증한 검색/필터/DB 원문 매핑도 유지.

제공
검색·필터 등 실제 HTTP 요청 8건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special

{"Host": "eng.localhost:4100"}

2026-10-19T02:04:15.949676+00:00일치: 영문 상태 라벨/국문 기존 상태 유지 및 실제 DB HTTP20087
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=ZZZNORESULT20261017

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.478445+09:00일치: HTTP 응답 상태 / 일치: 없는 전시 검색어 결과수35
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?page=2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.436326+09:00일치: HTTP 응답 상태 / 일치: 전시 응답 페이지42
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?year=2026

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.401775+09:00일치: HTTP 응답 상태 / 일치: 전시 시작연도 필터34
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=On+Title

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.364962+09:00일치: HTTP 응답 상태 / 일치: 영문 전시 제목 검색 양성37
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.893376+09:00일치: HTTP 응답 상태 / 일치: CMS 원문과 표시 제목 일치 #286 / 일치: CMS 원문과 표시 제목 일치 #284 / 일치: CMS 원문과 표시 제목 일치 #283 / 일치: CMS 원문과 표시 제목 일치 #282 / 일치: CMS 원문과 표시 제목 일치 #281 / 일치: CMS 원문과 표시 제목 일치 #280 / 일치: CMS 원문과 표시 제목 일치 #278 / 일치: CMS 원문과 표시 제목 일치 #279 / 일치: CMS 원문과 표시 제목 일치 #277 / 일치: CMS 원문과 표시 제목 일치 #276 / 불일치: 영문 기획서의 상태 표시(Ongoing/Soon/Ended)39
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special?keyword=Film&year=2025

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.478225+09:00미검증: 전시 시작연도가 요청 연도와 일치 / 미검증: 제목 검색어가 반환 제목에 포함55
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.364113+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.106

기획전시 상세

/museum/exhibition/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET기획전시 상세·발행 본문 조회
/api/v1/museum/exhibitions/special/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 기획전시286번 상세200. 제목 On Title,부제 Text, Typography, Moving Images,장소 Temporary Exhibition Hall은 CMS 영문 컬럼과 일치. 영문본문 미등록으로 국문 대체 확인. PDF22의 제목·배너·기간·장소·본문 제공 완료.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 22페이지

HTTP 조회 시각: 2026-10-17T17:56:03.387422+09:00

http://localhost:4100/api/v1/museum/exhibitions/special/286

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "exhibition": {
    "id": 286,
    "title": "On Title",
    "subtitle": "Text, Typography, Mo...",
    "location": "Temporary Exhibition...",
    "startDate": "2026-05-08",
    "endDate": "2026-08-29",
    "imageUrl": "/img/mig/exhibitionM...",
    "imageDescription": null,
    "status": "종료"
  },
  "year": 2026,
  "bannerUrl": "/img/mig/exhibitionM...",
  "bodyHtml": "<div class=\"kmdb-edi...",
  "integratedReservationId": null,
  "bookingEnabled": false
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
22페이지제목exhibition.title
["On Title"]

전시 제목. EXHB_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지부제exhibition.subtitle
["Text, Typography, Moving Images"]

전시 부제. EXHB_SBTTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지상태exhibition.status
["종료"]

전시 기간 기준 표시 상태. 예정/진행 중/종료의 Mapper 계산값. 기간 판별 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지연도year
[2026]

전시 시작일의 연도. 시작일을 판별할 수 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지배너bannerUrl
["/img/mig/exhibitionManage/af22b168-d5ed-42b4-97f4-084669b37ac7_L.webp"]

CMS 대표첨부 대형 이미지 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지전시 기간exhibition.startDate / exhibition.endDate
["2026-05-08", "2026-08-29"]

전시 시작일. EXHB_BGNG_YMD를 yyyy-MM-dd로 변환. 변환 불가 시 null. / 전시 종료일. EXHB_END_YMD를 yyyy-MM-dd로 변환. 값이 없거나 변환 불가 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지장소exhibition.location
["Temporary Exhibition Hall"]

전시장소명. EXHB_PLC_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지본문bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><div style=\"text-align: center;\"><strong>제목전(展) – 텍스트, 타이포그래피, 무빙 이미지&nbsp;</strong>똠얌꿍, 슌사쿠, 国, 國, 纳, 陆海铃, 宍倉紗弥, 髙橋, 﨑, 𠮷野, 辻, 齋藤<br>\r\n<strong>On Title – Text, Typography, Moving Images</strong></div>\r\n<br>\r\n사람이든 사물이든, 어떤 대상을 맞닥뜨릴 때 가장 먼저 마주하는 것이 바로 ‘이름’이다. 이름은 그 대상을 인식하는 가장 짧고도 강력한 언어다. 그렇기에 우리는 이름을 짓는 데 적지 않은 시간과 에너지를 들인다.<br>\r\n<br>\r\n수십 억의 예산과 수많은 인력이 투입되는 영화에서 제목은 어떠한 의미를 지닐까. 영화 제목은 영화가 품고 있는 세계의 다성적 측면들을 한 줄, 혹은 한 단어로 응축한 결과물이다. 제목은 스크린이 열리기도 전에, 관객으로 하여금 영화의 본질을 상상하면서 자신만의 예고편을 머릿속에서 상영하게 한다.&nbsp;<br>\r\n<br>\r\n또한 제목은 그 자체로 특정 시대를 반영하는 징후이자, 대중의 감각을 드러내는 기호다. 한자가 섞인 고풍스러운 문어체가 스크린을 지배했던 시대가 있는가 하면, 정체불명의 외래어가 ‘세련’의 징표처럼 불려 나온 시대가 있었고, 생활의 요청을 반영하는 나른한 구어체 제목이 풍미하기도 했다. 곧 제목 짓기의 변천사는 한국 사회의 문화 트렌드, 변덕스러운 대중의 감성을 반영해 왔다.&nbsp;<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/61642390-600d-4220-822c-84d57cb82b4f.png\"><br>\r\n<br>\r\n&lt;제목전(展) – 텍스트, 타이포그래피, 무빙 이미지&gt;는 1919년부터 2025년까지 공개된 한국영화 8,400여 편의 제목을 다양한 키워드로 재배열하고 분석해 한국영화를 바라보는 새로운 레퍼런스를 제시한다. 가장 빈번하게 등장하는 단어를 통해 시대별 정서와 서사의 흐름을 읽어내고, 한국영화사를 대표하는 배우의 필모그래피를 제목의 관점에서 조명한다. 또한 젠더, 색채, 문장 구조 등 여러 층위의 필터를 가져와 한국영화사를 새로운 관점으로 바라보고자 한다.&nbsp;<br>\r\n&nbsp;<br>\r\n제목이 지닌 조형적 미학에도 주목한다. 오프닝 시퀀스 속 제목의 움직임, 포스터와 전단에서 마주하는 다양한 제목 서체와 디자인은 영화의 정서를 시각적으로 구현하는 장치인 동시에 그 자체로 한글의 아름다움을 증명한다. 전시실 벽면을 가득 채운 자유롭게 생동하는 레터링과 캘리그래피, 동시대 감독과 그래픽 디자이너가 각자의 시선으로 재해석한 애니메이션과 영상 작업은, 익숙한 영화 제목에 새로운 호흡을 불어넣는다.<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/2ca3bedf-d875-477d-8093-985cfe42d25c.png\"><br>\r\n<br>\r\n&lt;제목전(展) – 텍스트, 타이포그래피, 무빙 이미지&gt;는 정지된 텍스트로 존재하던 영화 제목을 다시 움직이게 하고, 새로이 읽히도록 하는 것을 넘어 ‘경험’의 대상으로 확장한다. 이름은 더 이상 부르는 것에 머무르지 않는다. 이곳에서 제목은, 다시 살아 움직인다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>한국영화 제목 속 단어 빈도 1919-2025</strong><br>\r\n<br>\r\n역대 한국영화 8,436편의 제목에 등장하는 단어를 빈도 기준으로 100위까지 산출해 보면 한국영화가 어떤 정서, 서사 구조에 기대어 지난 시기를 통과해 왔는지 추론할 수 있다. 다양한 시각과 기준으로 해석 가능한 이 통계가 표면적으로 말해주는 몇 가지 층위를 살펴보면 한국영화의 전체 그림이 보인다.&nbsp;<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/69dff7f5-e6aa-4e83-ae6e-d4c93febef73.png\"><br>\r\n<em><strong>‘사랑’의 한국영화&nbsp;</strong></em><br>\r\n한 세기 넘는 동안 한국영화 제목에서 가장 많이 등장한 단어는 단연 ‘사랑’이다. 2위와 적지 않은 차이를 벌리며 빈도 1위를 차지한 ‘사랑’이 감정과 관계에 속하는 어휘인 것을 떠올리면, 한국영화가 관계 중심 서사와 멜로드라마를 축으로 발전돼 왔음을 짐작할 수 있다. 빈도 100위 안에는 ‘사랑’과 짝이 될 수 있는 감정 어휘(이별, 슬픔, 눈물, 행복, 욕망)와 관계 어휘(연애, 안녕, 이별, 연인, 유혹, 로맨스)도 상당수다. ‘사랑’ 주변에 포진한 이들 어휘군은 한국영화의 정서가 상당 부분 어떤 대상에 대한 연모와 헌신 따위의 감정으로 채워져 있음을 증거한다.&nbsp;<br>\r\n<br>\r\n<em><strong>‘여자’와 ‘남자’</strong></em><br>\r\n빈도 2위를 차지한 ‘여자’ 외에 빈도 100위 안에는 여성을 지칭하는 어휘가 10개 있다. 순서대로 여인(50회), 부인(48), 딸(46), 엄마(38), 소녀(33), 어머니(28), 아내(26), 그녀(24), 처녀(19), 아가씨(16) 등이다. 이에 반해 남성 어휘(남자, 사나이, 아들, 아빠, 소년, 미스터)의 총합은 231회로 여성 어휘의 46%에 불과하다. 한국영화 서사 속에서 여성 어휘는 여성 중심의 신파와 멜로드라마, 성역할을 강조하는 가족 드라마, 애욕에 관한 성애영화를 중심으로 70-80년대 크게 유행했다.&nbsp;<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/95886b2d-9c93-4770-8248-fbed53fc5053.png\"><br>\r\n<em><strong>‘밤’과 ‘청춘’의 군상</strong></em><br>\r\n빈도와 시기별 분포에 의하면 시대를 불문하고 한국영화에서 ‘밤’은 유흥과 탈선(&lt;토요일은 밤이 없다&gt;), 이별(&lt;비오는 밤에 떠나고 싶다&gt;), 낭만(&lt;여수 밤바다&gt;)의 시간인 동시에 무법자들이 판치는 범죄의 시간(&lt;밤차로 온 사나이&gt;)으로 그려졌다. &lt;청춘의 십자로&gt;(1934)까지 거슬러 올라가는 ‘청춘’의 경우, &lt;맨발의 청춘&gt;(1964) 전후 청춘영화의 흐름 속에서 최고점을 찍은 어휘로 질풍노도의 시기를 통과하는 군상들의 이야기가 60-70년대 주요 서사였음을 말해준다.&nbsp;<br>\r\n<br>\r\n<em><strong>‘왕’과 ‘길’, 권력과 이동의 서사&nbsp;</strong></em><br>\r\n‘왕’이 빈도 5위를 차지한 것은 &lt;세종대왕&gt;(1978), &lt;왕의 남자&gt;(2005) 등을 위시한 역사 드라마에 &lt;가수왕&gt;(1975), &lt;마약왕&gt;(2018)처럼 ‘왕’의 의미를 전유한 영화를 합한 결과다(후자가 더 많다). 둘 다 권력과 정상을 의미하는 한편 정치와 투쟁, 인고의 노력 같은 것들을 상징하면서, 한국영화가 비중 있게 채택한 인물 유형으로 이해할 수 있다. ‘길’은 &lt;삼포가는 길&gt;(1975), &lt;나그네는 길에서도 쉬지 않는다&gt;(1988)에서처럼 여정과 이동의 서사로 설명할 수 있는 어휘로 식민의 역사와 도시화를 경험한 한국인의 심성을 울리는 키워드로 빈도 9위에 올랐다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>마초들의 명령 - 누아르 세계의 언어 관습&nbsp;</strong><br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/6531319b-4239-493a-bb1a-2c71c1920bda.png\"><br>\r\n<br>\r\n‘급행열차를 타라’ ‘인간사표를 써라’ 등 명령형 종결 어미를 사용한 서술형 제목은 60년대 중반부터 70년대 초반까지 충무로에서 활발히 제작되었던 활극 액션영화 또는 ‘대륙물’이라 불리던 장르를 기원으로 한다. 당시 한국영화계는 김묵, 설태호, 박노식, 이만희 등을 필두로 한 ‘다찌마리’ 액션이 붐을 이루었는데 만주를 배경으로 서부극 형식을 흉내 낸 영화들, 도시를 배경으로 암흑가 사내들이 등장하는 범죄 누아르풍 영화들이었다. ‘쇠사슬을 끊어라’ ‘쟉크를 채워라’ 따위의 강인한 명령형 제목은 특유의 남성성을 강조하는 단어들(주먹, 검은 장갑, 쇠사슬 등)과 결합하여 남자의 숙명을 암시하면서 관객들의 뇌리에 각인되었다. 인간사표, 지옥행, 쟉크 등 비유적인 표현을 활용하거나, 범죄 세계의 언어 습관을 반영하여 장르에 대한 기대감을 고조시키는 효과를 겨냥했다. 60-70년대 액션 ‘방화’의 추억이 깃든 제목들이다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>돌아오기 위해서는 떠나야 한다&nbsp;</strong><br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/60235689-aa3a-436a-9452-b957c12045da.png\"><br>\r\n<br>\r\n다찌마리 장르의 수많은 ‘돌아온’ 시리즈에는 굴곡진 근현대사의 여러 국면에서 오직 살아남기 위해 고향을 떠날 수밖에 없었던 사람들의 눈물이 있다. 경제적으로 힘든 연인을 돕기 위해 외항선 선원이 되어 떠난 박노식이 바다에 버려졌다가 살아 돌아온 임권택 감독의 &lt;돌아온 왼손잡이&gt;(1968), 불량하기 그지없는 신흥 건달들을 정리하고 새로운 질서를 세우기 위해 다시 명동에 모인 &lt;돌아온 팔도사나이&gt;(1969), 무법자 상하이 박과 대결하기 위해 박노식이 방랑의 길을 떠나는 김효천 감독의 &lt;돌아온 방랑자&gt;(1970), 신성일이 아버지의 원수를 갚기 위해 부산으로 돌아온 &lt;돌아온 항구의 사나이&gt;(1970), ‘발차기로 싸대기를 때리는 배우’ 차리 셸이 만주 하얼빈의 정의를 바로 세우기 위해 나팔바지 휘날리며 돌아오는 이두용 감독의 &lt;돌아온 외다리&gt;(1974)와 &lt;속 돌아온 외다리&gt;(1974), 모범수로 출소해 돌아온 신성일이 새 삶을 시작하려는 임권택 감독의 &lt;돌아온 자와 떠나야 할 자&gt;(1972) 등.&nbsp;<br>\r\n때리면 ‘으악’ 하고 쓰러진다고 하여 종종 ‘으악새 영화’라 멸시받으며 불렸던 이 장르가, 어쩌면 그 어떤 사실주의 영화보다 당대의 역사와 현실을 더 잘 반영하고 있는 것인지도 모른다. 함께 살기 위해, 무언가를 바로 잡기 위해 돌아온 사람은 아름답다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>제목, 시대정신이 여성을 부르는 방식&nbsp;</strong><br>\r\n<em>한국영화 제목에 등장하는 여성 표식은 몇 가지 반복적인 호명 체계로 묶인다. 제목 속 여성은 개인이기보다 관계, 연령, 계급, 성적 규범, 직업, 환상, 정동, 예외성의 범주 안에서 먼저 정의된다. 다시 말해 영화 제목은 여성을 한 사람으로 부르기 전에 사회적으로 이미 의미화된 존재로 배치한다.</em> – 심혜경<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/47969db3-d09d-4b4b-aaba-000969dbdf05.png\"><br>\r\n<br>\r\n한국영화 제목에서 여성 어휘가 남성 어휘를 종류는 물론 편수에서 압도하는 것은 한국영화 산업의 특성과 문화적 관습이 겹쳐진 결과로 해석할 수 있다. 한국에 영화가 들어온 이래 반세기 이상 한국영화는 신파, 멜로드라마를 통해 여성 인물의 희생과 고난을 테마로 한 이야기를 줄기차게 선보였고, 70-80년대 성애영화 대부분도 여성 캐릭터를 성적으로 대상화하는 방식으로 대중에게 호소했으므로 제목에 여성 어휘가 더 많이 호출되는 것은 당연한 것이었다. ‘산딸기’ ‘장미’처럼 여성을 은유하는 단어까지 포괄하면 여성 어휘는 더욱 늘어난다. 감상의 대상으로서 여성 인물을 전시하는 식의 서사 전략이 90년대 이전 한국영화의 큰 흐름을 형성하면서 온갖 종류의 상징을 통해 여성 지칭 어휘를 늘려간 것이 한국영화의 한 모습이다.<br>\r\n<br>\r\n<br>\r\n<strong>제목의 영화들&nbsp;</strong><br>\r\n<br>\r\n산업, 미학의 부흥기를 맞은 2000년대 이후 한국영화의 위상은 제목의 변화로도 설명할 수 있다. 이전까지 단순지시형·명사형이 관행처럼 보편화돼 쓰였다면 여기에서 벗어나 문장형 제목이 증가한 현상은 그 징후 중 하나다. 정보 전달을 넘어서는 단어의 창의적 조합으로 눈길을 끄는 문장형 제목은 때때로 영화보다 제목 그 자체로 기억된다. &lt;고양이를 부탁해&gt;(2001), &lt;박수칠 때 떠나라&gt;(2005)의 사례에서 보듯 한국어의 입말 습성을 도입하며 다의적인 맥락을 환기하는 제목이 있는가 하면, &lt;질투는 나의 힘&gt;(2003), &lt;살인의 추억&gt;(2003), &lt;찬실이는 복도 많지&gt;(2020), &lt;헤어질 결심&gt;(2022)처럼 호응 관계에 있는 단어의 충돌을 통해 아이러니와 역설을 생성하기도 한다. &lt;지금은맞고그때는틀리다&gt;(2015), &lt;우리는 천국에 갈 순 없지만 사랑은 할 수 있겠지&gt;(2024) 같은 긴 문장 제목은 즉각적으로 해독되지 않는 의미의 모호함으로 호기심을 불러 일으킨다. 이들 중 일부는 스크린 밖으로 나와 유행어처럼 쓰이면서 당대의 심리적 지형을 대변하는 ‘시대의 언어’가 되기도 한다.&nbsp;<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/9d031b54-5eb5-40b2-9f82-2f6267de2a5b.png\"><br>\r\n<br>\r\n<strong>이만희와 김기영의 제목들&nbsp;</strong><br>\r\n<br>\r\n‘귀로’ ‘원점’ ‘휴일’ ‘생명’ 등 1966년부터 1968년 사이 만들어진, 플롯을 짐작하기 어려운 이만희 감독의 ‘제목’은 당시 내용 묘사 중심이었던 영화 제목과 뚜렷하게 구별되는 추상성을 띤다. 단순한 현실 재현이 아니라 인간의 원초적인 소외감을 그리려 했던 감독의 미학적 태도가 드러나는 대목이다. 필름이 유실된 전설의 영화 &lt;만추&gt;도 이 계열에 속하는 제목이다.&nbsp;<br>\r\n‘충녀(蟲女)’ ‘화녀(火女)’ 등 기이한 형태의 조어를 제목으로 삼아 온 김기영 감독의 ‘하녀’는 그때나 지금이나 보통명사이지만 한자 특유의 ‘상형성’을 감춘 지극히 김기영다운 제목이다. ‘아래 하(下)’를 가진 ‘하녀(下女)’는 중산층 동식의 가정과 여공인 조경희의 ‘아래’에 존재하며, 가사가 이뤄지는 아래층에 머물다가 위층으로 상승을 시도하지만 결국에는 동식의 발에 매달려 마치 한자 ‘下’처럼 머리와 팔을 아래로 축 늘어뜨리고 계단에서 죽는 인물이다. 김기영이 포착하고 싶었던 이 형상은 이미 제목에 상징적으로 그려져 있다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>한 글자 제목 – 인상을 남기는 데 충분한 한 글자&nbsp;</strong><br>\r\n<br>\r\n자음과 모음이 음절 단위로 묶이는 한글의 구조적 특성을 활용한 제목 유형, 때문에 영어나 일본어에 견줘 한 글자만으로도 의미와 소리를 압축해 전달하는 데 용이하다. 글자 하나에 영화의 정체성을 응축하여 소통에 문제가 없고 오히려 짧지만 강한 인상을 남긴다. 이를테면 ‘돈’은 자본주의, 욕망, 생존, 타락의 이미지와 연결되고, ‘꿈’은 비현실, 영원, 갈망을 연상시켜 기대와 호기심을 형성한다.<br>\r\n영화사적으로 보면 한 글자 제목의 상당수가 2회 이상 반복해 서로 다른 시대에 나타나는 사례를 발견할 수 있다. ‘길’이란 제목이 5회로 최다를 기록했고, ‘꿈’과 ‘숨’ ‘형’ ‘흙’이 3회, ‘딸’ ‘돈’ ‘별’ ‘정’이 각각 2회씩 등장한다. 이 같은 제목들은 한국인의 문화와 정서를 지배하는 단어들로 서로 다른 시대에 반복적으로 탐구되는 주제와도 관련이 깊다.&nbsp;<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/adaebe36-aec5-451d-855f-0492b0560c0c.png\"><br>\r\n<br>\r\n<br>\r\n<strong>색채의 제목들 – 컬러가 말해주는 것들</strong><br>\r\n<br>\r\n역대 한국영화 제목에서 색채 관련 어휘를 추출해 분류하면 단연 검정 계열이 많다. 순서대로 검정(96회), 흰색(33회), 빨강(33회), 녹색(25회), 파랑(14회), 노랑(6회), 분홍(6회) 순이다. 검정 계열은 ‘흑’(예: 이두용 감독의 &lt;흑야&gt;), ‘검은’(예: 이만희 감독의 &lt;검은 머리&gt;), ‘블랙’(예: 정지영 감독의 &lt;블랙잭&gt;) 단어를 포괄한 것이다. 검정은 암흑과 범죄, 죽음을 상징하는 색으로 무술영화와 누아르 영화의 정조를 표현하는 어휘로 주로 쓰였다. ‘누아르(noir)’란 말도 프랑스어로 ‘검다’라는 뜻이다.&nbsp;<br>\r\n일부 영화는 제목 속 색채 어휘로 영화가 무엇을 말하고자 하는지 힌트를 제공한다. &lt;초록물고기&gt;가 한 사례로 사라진 것들에 대한 상실과 비애, 돌아갈 수 없는 운명의 메타포로 ‘초록’이란 단어를 썼다. 이 제목에서 방점은 ‘물고기’가 아니라 ‘초록’에 찍힌다.<br>\r\n<br>\r\n<br>\r\n<strong>타이틀의 안성기&nbsp;– 170개의 삶이 구축한 한국영화&nbsp;</strong><br>\r\n<br>\r\n한 배우의 필모그래피를 제목만으로 읽는 일은 어떤 의미에서 그가 통과한 시대의 어휘를 복원하는 작업이다. 안성기(1952-2026)가 출연한 약 170여 편의 영화 제목을 연대순으로 늘어놓으면, 거기에는 한국영화가 세계를 명명해 온 방식의 변천이 고스란히 새겨져 있다. 안성기의 제목들을 더듬는 일은 곧 한국영화의 ‘말’이 어떻게 자라났는지를 추적하는 일도 된다.&nbsp;<br>\r\n한국영화가 세계를 부르는 방식이 바뀔 때마다 안성기는 그 제목이 약속한 세계를 자신의 몸으로 실현했다. 1919년 〈의리적 구토〉 이래 지금껏 이어지는 한국영화 제목의 망망대해에서, 안성기가 지나간 170여 개의 제목은 한 사람의 족적으로는 거의 불가능해 보이는 하나의 물길을 만들었다. 감정, 역사, 이미지를 수렴하는 제목들의 변천 속에 한국영화의 성장이 있고, 그 성장의 한가운데에 안성기가 있었다.<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/62ccc930-4246-4ea6-a18e-58cb4b20469d.png\"><br>\r\n<br>\r\n<br>\r\n<strong>흥행 영화 제목과 캘리그래피&nbsp;</strong><br>\r\n<br>\r\n역대 흥행 1위 영화 &lt;명량&gt;이 보여주듯, 서사와 장르를 분명히 하고 간단명료한 명사형 제목을 특징으로 하는 천만영화의 제목들은 흥행 산업에서 제목의 역할에 대해 많은 것을 시사한다. 에둘러 말하거나 감정에 호소하는 게 아니라 단호하면서도 기억에 남을 것. 이것이 25편의 역대 한국 천만영화에서 추려낸 ‘제목의 조건’이다.&nbsp;<br>\r\n제목 디자인의 추세적인 흐름도 눈여겨볼 만하다. 여기 소개한 5편의 영화를 비롯해, 장르를 불문한 영화에서 붓글씨 기반의 캘리그래피 제목이 광범위하게 쓰였다. 그 수가 너무 많아 무분별한 느낌을 주지만, 현대 한국영화의 호소력 있는 제목 서체로서 캘리그래피의 위상은 여전하다. 캘리그래피 제목의 최신 사례는 &lt;왕과 사는 남자&gt;(2026)이다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>레터링&amp;캘리그래피&nbsp;</strong><br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/a23b171a-c40f-4784-82e9-326dd0f2c194.png\"><br>\r\n<br>\r\n영화 제목이 흥미로운 이유 중 하나는 그 모양이 똑같은 게 하나도 없다는 것이다. 개봉을 앞두고 이를 알리기 위한 단계에서 무명의 작화가들은 영화의 매력을 품은 글자를 일일이 그려 포스터, 신문 광고, 전단 등에 담아 대중에게 선보였다. 그 양상은 천차만별이었으나 제목 글자는 그 내용과 무드를 알려주는 영화의 ‘얼굴’로 길거리 곳곳에서 사람들의 눈길을 끄는 역할을 수행했다. 90년대 이전 영화라는 매체의 편재성을 감안하면, 방방곡곡 어느 어귀에 무수히 나붙어 일종의 ‘글자 풍경’을 이루던 영화 제목들은, 당대 사회의 모습을 투영하는 디자인 유산으로 평가받는 것이 마땅하다 하겠다. 일제강점기 조선영화의 여명기부터 한국영화의 위상이 극적으로 달라진 2020년대까지 제목 조형의 연대기에 등재될 만한 일련의 글자를 수집해 펼쳐 보았다. 조형적인 규칙에 따라 작성한 레터링부터 손글씨 기반의 일회성 글자인 캘리그래피까지 두루 포괄한 이 목록은 텍스트로서 제목의 의미 못지않게 그 영화의 정수를 담은 또 하나의 정체성이라 할 만하다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>인상의 제목들 - 한국영화 0010(이상화)</strong><br>\r\n2000년부터 2010년까지의 한국영화 속 인상적인 모습들을 담았습니다. 제가 태어나기 전 시대의 와닿지 않는 영화들보다는, 빈약하게나마 생각과 감정을 가지고 있던 어린 시절의 영화들에 더 끌렸습니다.모든 것을 농담으로 소비하곤 하는 MZ세대는 아직까지도 ‘밈’과 ‘짤’이라는 이름으로 그 시절을 이야기합니다. 한편으로는 OTT, 디지털 4K 복원, 그리고 이를 기념하는 현대적인 디자인의 포스터를 통해 그때 영화를 다시 만나기도 합니다. 돌아가고 싶으면서도 결코 돌아가고 싶지 않은, 그 시절의 장면을 수없이 바라봅니다.&nbsp;<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/4bd6664f-07a4-4396-9536-8b764aee519a.png\">&nbsp;<br>\r\n<br>\r\n<strong>뉴 타이틀 - 워커힐에서 만납시다(한병아)</strong><br>\r\n1966년은 전후 한국 사회가 산업화의 물결 속에서 도시 소비문화로 진입하던 격변의 시기였다. 소달구지와 자동차가 공존하던 서울의 거리 풍경은 과거와 미래가 교차하는 상징적인 공간이었다. 이러한 시대적 맥락을 바탕으로 영화 &lt;워커힐에서 만납시다&gt;(한형모, 1966)의 타이틀 시퀀스를 애니메이션으로 작업해 보았다.&nbsp;<br>\r\n당시 변두리였던 워커힐의 화려한 스포트라이트와 빅밴드 공연을 영화의 소재로 사용한 것은 우리 사회가 처음으로 ‘소비’와 ‘오락’을 욕망으로 긍정하기 시작했음을 보여주는 기록이다. 전후의 상흔과 근대적 활기가 뒤섞인 60년대 한국의 미학을 시각적으로 재구성하여 대중문화의 태동기에 담긴 생경한 에너지를 즐겁게 담아내고자 했다.<br>\r\n<br>\r\n<br>\r\n<strong>시네마토그래프 타이틀(김태양)</strong><br>\r\n로베르 브레송은 소리와 영상의 절제된 결합을 통한 영화만의 고유한 언어를 ‘시네마토그래프’라고 말했습니다. 그에 따르면 절제된 영화 언어는 관객의 상상력을 자극하여 관객이 능동적으로 영화를 보게 합니다. 영화 타이틀 시퀀스 역시 소리와 텍스트, 영상의 결합을 통해 관객으로 하여금 스크린에 펼쳐질 영화를 적극적으로 상상하게 합니다. 한국영화의 창의적인 타이틀의 세계로 여러분을 초대합니다.<br>\r\n<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/22b650f4-5a22-42d1-860f-0a8a52ac23ff.png\"><br>\r\n<br>\r\n<strong>스크린의 꽃(양으뜸)</strong><br>\r\n한국영화 중에서 제목에 꽃(花), 향기와 관련된 단어나 인물 이름이 포함된 작품을 수집하고,&nbsp;연도나 감독 등의 배경 정보는 제거한 채 제목만을 슬라이드쇼 형식으로 제시한다.&nbsp;<br>\r\n여기에 대조군으로 나무(木)와 관련된 단어나 지명이 포함된 영화 제목을 병치해,&nbsp;'꽃'의 이미지를 통해 여성에게 덧씌워지는 특정한 프레이밍과 시선을, 그리고 ‘나무’라는&nbsp;<br>\r\n남성적 기표가 ‘꽃’과는 어떻게 다르게 대상화되는지를 드러내고자 한다.&nbsp;<br>\r\n<br>\r\n<br>\r\n<strong>레터링88(오렌지 슬라이스 타입)</strong><br>\r\n1926년부터 2026년까지 한국 관객들의 가슴에 남는 인상적인 한국영화 제목 레터링 88편을 소개한다.<br>\r\n<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/34f19a0a-b63b-4b4f-8fe1-bc9d822f7a83.png\"><br>\r\n<br>\r\n<strong>제목의 시</strong><br>\r\n<br>\r\n&lt;제목의 시&gt;는 1919년부터 2025년까지 극장 개봉한 한국영화 8400여 편 중 282편의 영화 제목을 특정 기준으로 추출해 만든 10편의 시 연작이다. 개별 시는 60-70년대의 사랑에 대한 통념을 보여주거나(사랑 그리고 죽는 연습), 영화계에서 바라보는 여성/남성의 유형적 단면을 나열하기도 하며(여자를 찾습니다, 바보들의 행진), 특정 지역에 대한 선입견/환상을 드러내기도 한다(서울이 좋다지만, 도시의 사냥꾼). 시의 각 행은 문맥적으로 연결되면서 특정한 심상을 만들며, 연결점이 없던 영화들은 하나의 시로 묶이게 된다.<br>\r\n<br>\r\n<br>\r\n<img alt=\"\" src=\"https://www.koreafilm.or.kr/upload/editorimage/3612be2c-7b80-4fe6-8129-ee83fb7d6ac3.png\"></div>"]

전시 본문 HTML. EXHB_CN에 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지예매 버튼 활성 여부bookingEnabled
[false]

전시 상태가 진행 중일 때 true. 현재 전시 상태에 따른 표시 플래그이며 문화인 예매 가능 여부를 실시간 확인한 값은 아님.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
22페이지기획전시 상세 제목·배너·기간·장소·본문검토 범위
2026-10-17 실제 HTTP 1건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json

SpecialExhibitionMapper TB_EXHB.EXHB_ENG_TTL/EXHB_ENG_SBTTL/EXHB_PLC_ENG_NM/EXHB_ENG_CN,TB_RPRS_ATCH_FILE 대표 대형 배너.

영문 기획전시286번 상세200. 제목 On Title,부제 Text, Typography, Moving Images,장소 Temporary Exhibition Hall은 CMS 영문 컬럼과 일치. 영문본문 미등록으로 국문 대체 확인. PDF22의 제목·배너·기간·장소·본문 제공 완료.

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special/286

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.387422+09:00일치: HTTP 응답 상태 / 일치: 전시 상세 title 원천 / 일치: 전시 상세 subtitle 원천 / 일치: 전시 상세 location 원천 / 일치: 전시 상세 영문 본문 또는 국문 대체20
GET
200
http://localhost:4100/api/v1/museum/exhibitions/special/286

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:44.222679+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.31

영문 홈페이지›자료관

1개 페이지 · 1개 항목
영문 홈페이지 자료관의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

Rental Service - Restoration List

/holdings/rental-service/restoration-list

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET정상 응답·구현 여부 확인 필요
/holdings/rental-service/restoration-list
HTTP 200 · HTML확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

페이지 HTML 성공을 자료 조회 구현으로 보지 않음. 복원 대상 선정·영문/국문 영화명·감독 원천과 REST 계약 필요. 예시 299편을 실제 개수로 간주하지 않음. 2026-10-20 SVC 전환 검증: 복원작 조회 연결을 SVC로 전환했습니다. 실제 소스의 읽기 전용 트랜잭션·목록 SELECT로 검증하며, 페이지 이력 INSERT를 피하기 위해 이번 변경 후 SSR HTTP는 재실행하지 않습니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 25페이지

HTTP 조회 시각: 2026-10-16T16:59:40.528797+09:00

http://localhost:4100/holdings/rental-service/restoration-list?keyword=Shin&director=%EC%8B%A0%EC%83%81%EC%98%A5&decade=1960&page=2

조회 조건: {"keyword": "Shin", "director": "신상옥", "decade": "1960", "page": 2}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "textExcerpt": " \n \n \n   \n     \n    ..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
25페이지복원작 제목·감독·연도·형식·KMDb 식별자HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
25페이지제목/감독 검색·감독/연대 필터·복원영화명·감독·연도·러닝타임·페이징검토 범위
영문 Host로 HTTP 200. 상세 내용·검색 조건은 아래 요청 이력과 원문 참조.

CollectionPageController.rentalServiceRestorationList는 템플릿 이름만 반환. 검색 조건으로 실제 HTML 200이나 REST 경로/DB 조회 서비스가 연결되지 않음.

페이지 HTML 성공을 자료 조회 구현으로 보지 않음. 복원 대상 선정·영문/국문 영화명·감독 원천과 REST 계약 필요. 예시 299편을 실제 개수로 간주하지 않음.

확인필요
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/holdings/rental-service/restoration-list?keyword=Shin&director=%EC%8B%A0%EC%83%81%EC%98%A5&decade=1960&page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:40.528797+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증7
GET
200
http://localhost:4100/holdings/rental-service/restoration-list

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:40.516411+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.8

영문 홈페이지›발간물

4개 페이지 · 4개 항목
영문 홈페이지 발간물의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

발간물―도서 목록

/content/publication/books

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET도서 발간물 목록 조회
/api/v1/content/publication/books
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 도서 목록200. CMS 영문/공용 공개조건 CCM15001/CCM15003,영문 제목·제작정보·분류/연도 복합필터·page2 확인. 국문 대체는 기존 영문 사이트 규칙 적용. 필요 키와 실제 값 제공 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 28페이지

HTTP 조회 시각: 2026-10-20T10:34:12.026296+09:00

http://localhost:4100/api/v1/content/publication/books

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 218,
  "typeCode": "CPB02001",
  "categoryCode": "CPB02001001007",
  "categoryName": "Multilingual-subtitl...",
  "title": "Booklet: Maculinity ...",
  "author": null,
  "producer": "Korean Film Archive",
  "productionYear": "2025",
  "publicationDate": null,
  "thumbnailUrl": "http://kofafilm.arch...",
  "imageDescription": "218",
  "planner": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
28페이지자료 IDitems[].id
[218, 217, 83, 206, 81, 204, 86, 80]

도서/DVD 발간물 식별자. TB_BOOK_DVD.BOOK_DVD_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지제목items[].title
["Booklet: Maculinity on Screen 2", "Booklet: Religion on Screen", "Joseon Films in Newspaper Articles in 1935", "Booklet: Women on Screen 2", "Joseon Films in Newspaper Articles in 1934", "Booklet : Seoul on Screen", "Great Expectations : Taehung Pictures 1984-2004", "Joseon Films in Newspaper Articles in 1933"]

발간물 제목. BOOK_DVD_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지분류items[].categoryName
["Multilingual-subtitle DVD Collection", "Multilingual-subtitle DVD Collection", "Japanese Colonial Era Movie Data Series", "Multilingual-subtitle DVD Collection", "Japanese Colonial Era Movie Data Series", "Multilingual-subtitle DVD Collection", "Exhibition Catalogue", "Japanese Colonial Era Movie Data Series"]

세부분류 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지저자/감독items[].author
[null, null, null, null, null, null, null, null]

저자명. AUT_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
28페이지제작연도items[].productionYear
["2025", "2024", "2024", "2023", "2023", "2022", "2022", "2022"]

제작연도. FBCTN_YR 원문 문자열. year 필터 기준.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지이미지items[].thumbnailUrl
["http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/37bf0336-27a0-4e6c-9544-a58b945dd06d_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/cfb4a60c-7810-4706-b71f-8a1d7ac46fd3_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/7fc0abf3-98a3-4449-93d0-67143b460f2f_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/b356693e-fae1-4417-bdf6-aeae39f659af_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/7303b22f-150c-4159-ba96-20b66172dd9f_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/fbb88515-2a97-4436-96e4-86bb54041fd9_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/6c83b8fd-a59e-492e-9d93-8442af51bda9_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/6d292941-255e-49e1-86a5-6b725039b39b_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28, 29, 30페이지영문 발간물 분리 조회title / categoryName / bodyHtml
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
28페이지분류·연도 필터·8건 페이징·제목·제작 정보검토 범위
2026-10-17 실제 HTTP 6건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

PublicationBookMapper TB_BOOK_DVD.BOOK_DVD_ENG_TTL/AUT_ENG_NM/PDCR_ENG_NM,TB_COM_CD.ENG_CD_NM,SRVC_LANG_SE_CD.

영문 도서 목록200. CMS 영문/공용 공개조건 CCM15001/CCM15003,영문 제목·제작정보·분류/연도 복합필터·page2 확인. 국문 대체는 기존 영문 사이트 규칙 적용. 필요 키와 실제 값 제공 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/books

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.026296+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음39
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001007&year=2025

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.678131+09:00일치: HTTP 응답 상태 / 일치: 발간물 분류 필터 / 일치: 발간물 제작연도 필터57
GET
200
http://localhost:4100/api/v1/content/publication/books?page=2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.649676+09:00일치: HTTP 응답 상태 / 일치: 발간물 page228
GET
200
http://localhost:4100/api/v1/content/publication/books?year=2025

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.626550+09:00일치: HTTP 응답 상태 / 일치: 발간물 제작연도 필터23
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001007

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.565265+09:00일치: HTTP 응답 상태 / 일치: 발간물 분류 필터61
GET
200
http://localhost:4100/api/v1/content/publication/books

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.932767+09:00일치: HTTP 응답 상태 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #218 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #217 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #83 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #206 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #81 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #204 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #86 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #8026
GET
200
http://localhost:4100/api/v1/content/publication/books?categoryCode=CPB02001001

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.730164+09:00일치: 반환 분류가 요청 분류 또는 하위 분류77
GET
200
http://localhost:4100/api/v1/content/publication/books?year=2025

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.691078+09:00일치: 제작연도가 요청 연도와 일치33
GET
200
http://localhost:4100/api/v1/content/publication/books?page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.651084+09:00일치: 응답 페이징 번호가 요청과 일치34
GET
200
http://localhost:4100/api/v1/content/publication/books

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.564839+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.43

발간물―도서 상세

/content/publication/books/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET도서 발간물 상세·본문 조회
/api/v1/content/publication/books/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 도서218번 상세200. 제목·저자·제작정보·본문·소개·목차를 실제 CMS 원문과 대조 완료. 기존79번404는 영문 공개 대상에서 제외된 결과이며 목록에서 노출된218번으로 검증. KMDb 연결은 프론트 범위. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 29페이지

HTTP 조회 시각: 2026-10-20T10:34:12.064953+09:00

http://localhost:4100/api/v1/content/publication/books/218

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "publication": {
    "id": 218,
    "typeCode": "CPB02001",
    "categoryCode": "CPB02001001007",
    "categoryName": "Multilingual-subtitl...",
    "title": "Booklet: Maculinity ...",
    "author": null,
    "producer": "Korean Film Archive",
    "productionYear": "2025",
    "publicationDate": null,
    "thumbnailUrl": "http://kofafilm.arch...",
    "imageDescription": "218",
    "planner": null
  },
  "purchaseUrl": null,
  "bodyHtml": "<div class=\"kmdb-edi...",
  "authorHtml": "<div class=\"kmdb-edi...",
  "contentsHtml": "<div class=\"kmdb-edi...",
  "kmdbUrl": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
29페이지기본정보publication
[{"id": 218, "typeCode": "CPB02001", "categoryCode": "CPB02001001007", "categoryName": "Multilingual-subtitle DVD Collection", "title": "Booklet: Maculinity on Screen 2", "author": null, "producer": "Korean Film Archive", "productionYear": "2025", "publicationDate": null, "thumbnailUrl": "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/37bf0336-27a0-4e6c-9544-a58b945dd06d_M.webp", "imageDescription": "218", "planner": null}]

발간물 기본 정보.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지내용bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">This DVD box set of <strong><em>Maculinity on Screen 2</em></strong> is a product of a nonprofit collaboration between the Ministry of Culture, Sports, and Tourism, and Korean Film Archive. We hope this project helps overseas’ audiences to develop a richer understanding of Korean society and culture through Korean films. This project selects one theme each year, produces DVD sets with subtitles in seven languages, and distributes them free of charge to overseas diplomatic stations and research centers.Our goal is to increase the interest and understanding of enthusiasts and researchers alike regarding Korean culture, society, and history.<br>\r\n<br>\r\n<em><strong>Masculinity on Screen 2 - Understanding Star Persona through Films</strong></em>&nbsp;presents six landmark works that illuminate the multifaceted appeal of Korea’s legendary leading men: KIM Seung-ho in The Money (dir. KIM So-dong, 1958), SHIN Young-kyun in Rice (dir. SHIN Sang-ok, 1963), SHIN Seong-il in A Girl Who Looks Like the Sun (dir. LEE Man-hee, 1974), AHN Sung-ki in Our Joyful Young Days (dir. BAE Chang-ho, 1987), HAN Seok-kyu in The Gingko Bed (dir. KANG Je-kyu, 1995), and SONG Kang-ho in A Taxi Driver (dir. JANG Hun, 2017).<br>\r\n<br>\r\nThese actors not only established enduring archetypes within Korean cinema but also continually redefined them, enriching the screen with new and diverse representations of masculinity across generations. They<br>\r\nembodied the warm yet troubled father—struggling with inadequacy but devoted to his family; the resilient leader who forged a path through the hardships of postwar Korea; and the generous elder brother who offered strength and comfort to those around him. At other times, they appeared as figures of intellect and sensitivity desired by women, or as ordinary citizens who rose to become pivotal agents in the nation’s democratization. We invite cinephiles everywhere to experience the enduring charisma of these actors and, through them, to gain a deeper appreciation of the richness and complexity of Korean cinema.</div>"]

발간물 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지저자/감독 소개authorHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><strong>CHUNG Chong-hwa</strong><br>\r\nHead, Research &amp; Curation Team, Korean Film Archive<br>\r\n<strong>CHO Jun-hyoung</strong><br>\r\nSenior Researcher, Research &amp; Curation Team, Korean Film Archive<br>\r\n<strong>LEE Ho-geol</strong><br>\r\nPrincipal Researcher, Cinema &amp; Transmedia Institute, Dong-eui University<br>\r\n<strong>PARK Yu-hee</strong><br>\r\nProfessor, Department of Media &amp; Creative Writing, Korea University<br>\r\n<strong>KANG Seung-ryul</strong><br>\r\nProfessor, School of Northeast Asian Cultural Industries, Kwangwoon University<br>\r\n<strong>JEONG Min-ah</strong><br>\r\nProfessor, Department of Film &amp; Video, Sungkyul University<br>\r\n<strong>YOON Seo-yeon</strong><br>\r\nResearcher, Research &amp; Curation Team, Korean Film Archive</div>"]

저자 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지차례/DVD 정보contentsHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\"><strong>Booklet</strong><br>\r\nGreetings 4<br>\r\nIntroduction 11<br>\r\nKIM Seung-ho, The Money 25<br>\r\nSHING Young-kyun, Rice 53<br>\r\nSHIN Seong-il, A Girl Who Looks Like the Sunm 81<br>\r\nAHN Sung-gi, Our Joyful Young Days 109<br>\r\nHAN Seok-kyu, The Gingko Bed 139<br>\r\nSONG Kang-ho, A Taxi Driver 163<br>\r\nIndex 192</div>"]

목차 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
29페이지원문 연결kmdbUrl
[null]

KMDb 연결 주소 표시용 필드. 현재 DB 연결 매핑이 없어 null. 프론트 연결 규격 별도 확인 필요.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
29페이지제목·저자/감독·제작연도·발간일/출시일·본문·소개·목차검토 범위
2026-10-17 실제 HTTP 1건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

PublicationBookMapper BOOK_DVD_ID218. BOOK_DVD_ENG_TTL/ENG_BOOK_DVD_CN/AUT_DRC_INTRO_ENG_CN/TOC_DVD_ENG_CN와 응답 publication/bodyHtml/authorHtml/contentsHtml.

영문 도서218번 상세200. 제목·저자·제작정보·본문·소개·목차를 실제 CMS 원문과 대조 완료. 기존79번404는 영문 공개 대상에서 제외된 결과이며 목록에서 노출된218번으로 검증. KMDb 연결은 프론트 범위. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/books/218

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.064953+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음38
GET
200
http://localhost:4100/api/v1/content/publication/books/218

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.734956+09:00일치: HTTP 응답 상태 / 일치: 발간물 상세 title 원천 / 일치: 발간물 상세 author 원천 / 일치: 발간물 상세 producer 원천 / 일치: 발간물 상세 bodyHtml 원천 텍스트 / 일치: 발간물 상세 authorHtml 원천 텍스트 / 일치: 발간물 상세 contentsHtml 원천 텍스트24
GET
404
http://localhost:4100/api/v1/content/publication/books/79

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.959248+09:00일치: HTTP 응답 상태35
GET
200
http://localhost:4100/api/v1/content/publication/books/79

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.613171+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.33

발간물―블루레이·DVD 목록

/content/publication/dvds

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET블루레이·DVD 발간물 목록 조회
/api/v1/content/publication/dvds
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 DVD 목록200. 제목·제작정보·영문/공용 공개조건 및 분류·연도·복합필터·page2 실데이터 검증 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 28페이지

HTTP 조회 시각: 2026-10-20T10:34:12.103325+09:00

http://localhost:4100/api/v1/content/publication/dvds

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 151,
  "typeCode": "CPB02002",
  "categoryCode": "CPB02002001",
  "categoryName": "Blu-ray Collection",
  "title": "Yu Hyun-mok Collecti...",
  "author": "Yu Hyun-mok",
  "producer": "Korean Film Archive ...",
  "productionYear": "2025",
  "publicationDate": null,
  "thumbnailUrl": "http://kofafilm.arch...",
  "imageDescription": "151",
  "planner": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
28페이지자료 IDitems[].id
[151, 153, 138, 149, 136, 135, 134, 146]

도서/DVD 발간물 식별자. TB_BOOK_DVD.BOOK_DVD_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지제목items[].title
["Yu Hyun-mok Collection: Aimless Bullet(1961) The Daughters of Kim’s Pharmacy", "Lee Myung-se Collection: My Love, My Bride(1990) First Love(1993) ", "A Dwarf Launches a Little Ball(1981)", "A Bloodthirsty Killer(1965)", "The Marines Who Never Returned(1963)", "Black Republic(1990)", "A Hometown in Heart(1949)", "Burning Mountain(1967)"]

발간물 제목. BOOK_DVD_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지분류items[].categoryName
["Blu-ray Collection", "Blu-ray Collection", "Blu-ray Collection", "Blu-ray Collection", "Blu-ray Collection", "Blu-ray Collection", "Blu-ray Collection", "Blu-ray Collection"]

세부분류 공통코드명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지저자/감독items[].author
["Yu Hyun-mok", "Lee Myung-se", "Lee Won-se", "Lee Yong-min", "Lee Man-hee", "Park Kwang-su", "Yun Yong-gyu", "Kim Soo-yong"]

저자명. AUT_NM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지제작연도items[].productionYear
["2025", "2024", "2024", "2023", "2023", "2023", "2023", "2022"]

제작연도. FBCTN_YR 원문 문자열. year 필터 기준.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28페이지이미지items[].thumbnailUrl
["http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/372c40ab-276b-44d1-9956-b0de0804abc2_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/6e70caca-1a21-48ae-ab1d-4e91740e5c0e_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/af8a7fad-78a8-4a8a-81e9-13df2c532891_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/ac5642dd-e89c-429b-a6ba-f5f45629f7a6_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/ec76ab19-9ba4-49dc-b486-a46d3b15fd98_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/718589ec-88ad-4e99-9548-cbed218f44ee_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/39696edd-bb81-4339-8502-483fcc518a73_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/eb1fbd48-0ba0-4494-befd-f8813c0309b8_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
28, 29, 30페이지영문 발간물 분리 조회title / categoryName / bodyHtml
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
28페이지분류·연도 필터·8건 페이징·제목·제작 정보검토 범위
2026-10-17 실제 HTTP 6건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

PublicationDvdMapper TB_BOOK_DVD의 영문 제목/제작정보,언어공개조건,CLSF_SE_CD/DCLSF_CD,제작연도 필터.

영문 DVD 목록200. 제목·제작정보·영문/공용 공개조건 및 분류·연도·복합필터·page2 실데이터 검증 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/dvds

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.103325+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음27
GET
200
http://localhost:4100/api/v1/content/publication/dvds?categoryCode=CPB02002001&year=2025

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.881074+09:00일치: HTTP 응답 상태 / 일치: 발간물 분류 필터 / 일치: 발간물 제작연도 필터44
GET
200
http://localhost:4100/api/v1/content/publication/dvds?page=2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.861130+09:00일치: HTTP 응답 상태 / 일치: 발간물 page220
GET
200
http://localhost:4100/api/v1/content/publication/dvds?year=2025

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.841505+09:00일치: HTTP 응답 상태 / 일치: 발간물 제작연도 필터20
GET
200
http://localhost:4100/api/v1/content/publication/dvds?categoryCode=CPB02002001

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.795468+09:00일치: HTTP 응답 상태 / 일치: 발간물 분류 필터46
GET
200
http://localhost:4100/api/v1/content/publication/dvds

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:02.995184+09:00일치: HTTP 응답 상태 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #151 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #153 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #138 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #149 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #136 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #135 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #134 / 일치: 영문 또는 공용 공개 언어 / 일치: CMS 원문과 표시 제목 일치 #14620
GET
200
http://localhost:4100/api/v1/content/publication/dvds?categoryCode=CPB02002001

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.920242+09:00일치: 반환 분류가 요청 분류 또는 하위 분류48
GET
200
http://localhost:4100/api/v1/content/publication/dvds?year=2025

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.896830+09:00일치: 제작연도가 요청 연도와 일치17
GET
200
http://localhost:4100/api/v1/content/publication/dvds?page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.871325+09:00일치: 응답 페이징 번호가 요청과 일치19
GET
200
http://localhost:4100/api/v1/content/publication/dvds

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.815155+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.20

발간물―블루레이·DVD 상세

/content/publication/dvds/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET블루레이·DVD 발간물 상세·본문 조회
/api/v1/content/publication/dvds/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 DVD151번 상세200. 제목·저자/감독·제작정보·본문·소개·목차를 실제 CMS 영문 컬럼 또는 국문 대체 원문과 대조 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 30페이지

HTTP 조회 시각: 2026-10-20T10:34:12.108665+09:00

http://localhost:4100/api/v1/content/publication/dvds/151

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "publication": {
    "id": 151,
    "typeCode": "CPB02002",
    "categoryCode": "CPB02002001",
    "categoryName": "Blu-ray Collection",
    "title": "Yu Hyun-mok Collecti...",
    "author": "Yu Hyun-mok",
    "producer": "Korean Film Archive ...",
    "productionYear": "2025",
    "publicationDate": null,
    "thumbnailUrl": "http://kofafilm.arch...",
    "imageDescription": "151",
    "planner": null
  },
  "purchaseUrl": null,
  "bodyHtml": "<div class=\"kmdb-edi...",
  "authorHtml": null,
  "contentsHtml": "<div class=\"kmdb-edi...",
  "kmdbUrl": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
30페이지기본정보publication
[{"id": 151, "typeCode": "CPB02002", "categoryCode": "CPB02002001", "categoryName": "Blu-ray Collection", "title": "Yu Hyun-mok Collection: Aimless Bullet(1961) The Daughters of Kim’s Pharmacy", "author": "Yu Hyun-mok", "producer": "Korean Film Archive / Blue Kino", "productionYear": "2025", "publicationDate": null, "thumbnailUrl": "http://kofafilm.archivecenter.or.kr/m2/img/mig/publicationBoard/372c40ab-276b-44d1-9956-b0de0804abc2_M.webp", "imageDescription": "151", "planner": null}]

발간물 기본 정보.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
30페이지내용bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">The Korean Film Archive has released the “Yu Hyun-mok Collection”, featuring <em>Aimless Bullet</em> (1961) and<em> The Daughters of Kim’s Pharmacy</em> (1963), representative films of master director Yu Hyun-mok, who symbolizes the intellectual in Korean Cinema History. This is the 37th Blu-ray title planned by the Korean Film Archive and produced by Blue Kino.<br>\r\n<br>\r\nYu Hyun-mok is regarded as one of the most significant directors in Korean cinema history and one of the foremost intellectuals of his time. He made a total of 43 films over 38 years, since his debut with <em>Crossroads</em> in 1956, to <em>Mom, the Star and the Sea Anemone</em> in 1994. His filmography encompasses numerous genres, from socially critical literary films like <em>Aimless Bullet</em>, melodrama, comedy to anti-communist/enlightenment films. Yet, in all his films, he consistently explores fundamental questions, such as human suffering and salvation in an absurd world, while maintaining a profound contemplation of reality. While he is regarded as a master of Korean realism, his films are actually quite complex, influenced by European modernist films, and showing pronounced formalist tendencies. As Yu Hyun-mok himself stated, “I think in images rather than through logic.” As an auteur, he sought to construct his artistic world through film language. Critics have solidified his status in film history, hailing him as “a symbol of the sublime auteur sprit in Korean films” (Kim Jong-won), and “the director who elevated Korean cinema to the level of art” (Byun In-sik). He constantly explored weighty themes, such as existence and alienation, the conflict between God and humanity, the tragedy of the division of Korea, adding spiritual depth to Korean cinema. He is remembered as a symbol of Korean cinema itself.<br>\r\n<br>\r\n<em>Aimless Bullet</em> held the undisputed top spot on the list of the greatest Korean films for decades, earning the title of “The Korean <em>Citizen Kane</em>”. Through sincere yet powerless breadwinner, Cheol-ho (Kim Jin-kyu) and his younger brother, Yeong-ho (Choi Moo-ryong), who commits crime to escape his reality, the film profoundly illuminates the frustration and suffering of the post-war generation. It captures the total anomy, poverty and social issues plaguing the devastated society in the 1950s following the Korean war, through the tragedy of one family. The then military government had banned the screening of the film, deeming it a miserable storyline detached from reality. Ironically, this made Aimless Bullet a work that symbolized the spirit of resistance in that era. The appeal of <em>Aimless Bullet</em> lies in its aesthetic achievement, which transcends the mere denunciation of reality. Director Yu Hyun-mok employed experimental film language, including frame within frame, subjective shots, and a sound design blending jazz and traditional Korean music, to express the characters’ inner worlds and their absurd reality in a highly sensory manner. This formalist style prevents viewers from fully immersing themselves in the narrative, thus compelling them to reflect upon the film’s hidden meanings. Consequently, film historian Lee Young-il described <em>Aimless Bullet</em> as “a work that achieved the pinnacle of Korean realist film and exceeded the limitations of realist films”. This masterpiece, which transcends the limitation of realism, has continued to be rediscovered anew in every era to this day, owing to its thoroughly tragic nature and aesthetic sophistication, which both transcend time.<br>\r\n<br>\r\n<em>The Daughters of Kim’s Pharmacy</em> is based on the novel of the same name by author Park Kyung-ni, and this film is Yu Hyun-mok’s signature work, depicting the turbulent times from the late Joseon Dynasty to the 1930s through the downfall of a family. Beginning with the shamanistic curse, “Those who die from taking poison will see their descendants die in pain”, the film unfolds a fatalistic narrative. It depicts the catastrophic clash of pre-modern values and modern change, as embodied by the tragic lives of the four daughters of pharmacist Kim (Kim Dong-won). The film also offers a glimpse into director Yu’s profound reflection on religion. It projects the existentialist theme of God’s silence amidst the suffering of the innocent onto both shamanism and Christianity, leaving unanswered questions. Unlike the original novel, the film concludes with the Christian daughters surviving and remaining in their hometown, seemingly inheriting their father’s world. This ending reveals the director’s own worldview, seeking to advance towards modernity through unity rather than severance.<br>\r\n<br>\r\nThe most notable feature of this Blu-ray is the inclusion of a separate booklet containing the script of <em>Aimless Bullet</em>, with handwritten notes by Yu Hyun-mok. The volume is larger than the final film and the inclusion of a shooting schedule suggests that it was the one Yu Hyun-mok himself used for filming. The high-definition picture source, restored over several years by the Korean Film Archive, was used for this Blu-ray. <em>Aimless Bullet</em> is particularly noteworthy for its restoration, achieved through the exceptional challenging task of removing all the English subtitles from the entire film, which is a rare achievement even on a global scale. <em>The Daughters of Kim’s Pharmacy</em> is the version that was restored from the original negative film in 4K resolution in 2024 by the archive, allowing Yu Hyun-mok’s meticulous mise-en-scène to be seen with remarkable clarity. Film critic Chung Sung-ill’s commentary on Aimless Bullet offers a completely fresh interpretation of the film, while the commentary on <em>The Daughters of Kim’s Pharmacy</em> by director Kim Il-rhan, film critic Sohn Hee-jeong, and Senior researcher Cho Jun-hyoung from the archive, analyzes the film’s strengths from the perspective of women’s history. The booklet includes Cho-Jun-hyoung’s profile of the director and reviews of the films, which will greatly aid in understanding Yu Hyun-mok’s complex and profound cinematic world through the lens of existentialism.<br>\r\n&nbsp;</div>"]

발간물 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
30페이지저자/감독 소개authorHtml
[null]

저자 소개 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
30페이지차례/DVD 정보contentsHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">Special Features<br>\r\n- <em>Aimless Bullet</em> Commentary by Chung Sung-ill(Film Critic)<br>\r\n- <em>Daughters of Kim’s Pharmacy</em> Commentary by Kim Il-rhan(Film Director) Sohn Hee-jeong(Film Critic), Cho Jun-hyoung(Korean Film Archive)<br>\r\n- Digital Restoration : Before &amp; After<br>\r\n- Image Gallery<br>\r\n- Replica of the<em> Aimless Bullet</em> screenplay with Yu Hyun-mok’s handwritten notes <br>\r\n<br>\r\nBooklet<br>\r\n- \"Restoration Note\", The Digital Restoration Team at The Korean Film Archive<br>\r\n-  “Yu Hyun-mok’s Cinematic World through the Lens of Existentialism”, Cho Jun-hyoung<br>\r\n- \" How Did <em>Aimless Bulle</em>t Remain as a Masterpiece to This day?\", Cho Jun-hyoung<br>\r\n- \" <em>The Daughters of Kim’s Pharmac</em>y: From Shamanistic Pre-modernity to Protestant Modernity?”, Cho Jun-hyoung<br>\r\n </div>"]

목차 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
30페이지원문 연결kmdbUrl
[null]

KMDb 연결 주소 표시용 필드. 현재 DB 연결 매핑이 없어 null. 프론트 연결 규격 별도 확인 필요.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
30페이지제목·저자/감독·제작연도·발간일/출시일·본문·소개·목차검토 범위
2026-10-17 실제 HTTP 2건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

PublicationDvdMapper BOOK_DVD_ID151. BOOK_DVD_ENG_TTL/ENG_BOOK_DVD_CN/AUT_DRC_INTRO_ENG_CN/TOC_DVD_ENG_CN.

영문 DVD151번 상세200. 제목·저자/감독·제작정보·본문·소개·목차를 실제 CMS 영문 컬럼 또는 국문 대체 원문과 대조 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 4건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/publication/dvds/151

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.108665+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음28
GET
200
http://localhost:4100/api/v1/content/publication/dvds/151

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.924692+09:00일치: HTTP 응답 상태 / 일치: 발간물 상세 title 원천 / 일치: 발간물 상세 author 원천 / 일치: 발간물 상세 producer 원천 / 일치: 발간물 상세 bodyHtml 원천 텍스트 / 일치: 발간물 상세 authorHtml 원천 텍스트 / 일치: 발간물 상세 contentsHtml 원천 텍스트21
GET
200
http://localhost:4100/api/v1/content/publication/dvds/151

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.014968+09:00일치: HTTP 응답 상태36
GET
200
http://localhost:4100/api/v1/content/publication/dvds/151

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.842395+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.22

영문 홈페이지›아카이브 기술

2개 페이지 · 2개 항목
영문 홈페이지 아카이브 기술의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

아카이브 기술 목록

/content/archivetechnology

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET아카이브 기술 목록 조회
/api/v1/content/archivetechnology
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

아카이브 목록200. 실제18/2번 제목·부제 매핑,1건 페이징 및page2 확인. 영문 원천이 없는18번은 국문 대체,2번은 실제 영문 제목/본문 제공. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 31페이지

HTTP 조회 시각: 2026-10-20T10:34:12.130334+09:00

http://localhost:4100/api/v1/content/archivetechnology

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 18,
  "title": "한국영상자료원 필름 보존 기술",
  "subtitle": "한 편의 영화가 보존실로 들어오기까지",
  "registeredAt": "20260916173126",
  "thumbnailUrl": "http://kofafilm.arch...",
  "imageDescription": "필름 보존 기술 대표 이미지"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
31페이지IDitems[].id
[18, 2]

보존기술 게시물 식별자.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
31페이지제목items[].title
["한국영상자료원 필름 보존 기술", "Film Preservation Tech"]

보존기술 게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
31페이지등록일items[].registeredAt
["20260916173126", "20260901110414"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
31페이지이미지items[].thumbnailUrl
["http://kofafilm.archivecenter.or.kr/m2/img/dc/f3/dcf30fdb99a2a633d309b8d1e48fca1e_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/75/ac/75aceeeb940f2a9d22bcd986124d4142_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
31페이지제목·부제·대표이미지·10건 페이징검토 범위
2026-10-17 실제 HTTP 3건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

ArchiveTechnologyMapper TB_ARCV_TECH.ARCV_TECH_ENG_TTL/ARCV_TECH_ENG_SBTTL,REG_DT·페이지 조회.

아카이브 목록200. 실제18/2번 제목·부제 매핑,1건 페이징 및page2 확인. 영문 원천이 없는18번은 국문 대체,2번은 실제 영문 제목/본문 제공. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 6건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/archivetechnology

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.130334+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음229
GET
200
http://localhost:4100/api/v1/content/archivetechnology?page=2&size=1

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.962450+09:00일치: HTTP 응답 상태 / 일치: 아카이브 페이지 크기 / 일치: 아카이브 요청 페이지 / 일치: 아카이브 페이지 양성14
GET
200
http://localhost:4100/api/v1/content/archivetechnology?size=1

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.947072+09:00일치: HTTP 응답 상태 / 일치: 아카이브 페이지 크기 / 일치: 아카이브 요청 페이지 / 일치: 아카이브 페이지 양성15
GET
200
http://localhost:4100/api/v1/content/archivetechnology

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.050763+09:00일치: HTTP 응답 상태 / 일치: CMS 원문과 표시 제목 일치 #18 / 일치: CMS 원문과 표시 제목 일치 #217
GET
200
http://localhost:4100/api/v1/content/archivetechnology?page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.997959+09:00일치: 응답 페이징 번호가 요청과 일치13
GET
200
http://localhost:4100/api/v1/content/archivetechnology

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:42.976557+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.15

아카이브 기술 상세

/content/archivetechnology/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET아카이브 기술 본문·인접 글 조회
/api/v1/content/archivetechnology/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

아카이브 상세18번과2번200. 영문/국문대체 제목·부제·본문 및 이전/다음 매핑 확인. 이관 에디터의 이미지 확대 안내/버튼 장식은 본문 텍스트 대조에서 구분. 기획 필요 데이터 제공 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 32페이지

HTTP 조회 시각: 2026-10-20T10:34:12.136534+09:00

http://localhost:4100/api/v1/content/archivetechnology/2

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 2,
    "title": "Film Preservation Te...",
    "subtitle": "Koreafilm Film Prese...",
    "registeredAt": "20260901110414",
    "bodyHtml": "<div class=\"kmdb-edi...",
    "thumbnailUrl": "http://kofafilm.arch...",
    "imageDescription": "보존고"
  },
  "previous": {
    "id": 18,
    "title": "한국영상자료원 필름 보존 기술"
  },
  "next": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
32페이지본문article.bodyHtml
["<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">\n <p>ENG</p>\n</div>"]

보존기술 상세 본문 HTML. 에디터 치환 적용.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
32페이지이전글previous
[{"id": 18, "title": "한국영상자료원 필름 보존 기술"}]

이전 게시물 id·제목. 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
32페이지다음글next
[null]

다음 게시물 id·제목. 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
32페이지제목·등록일·본문·이전/다음검토 범위
2026-10-17 실제 HTTP 2건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

ArchiveTechnologyMapper TB_ARCV_TECH.ARCV_TECH_ENG_CN/ARCV_TECH_CN,공개 이전/다음. ArchiveTechnologyEditorHtml은 기존 이관 본문을 에디터 형식으로 변환.

아카이브 상세18번과2번200. 영문/국문대체 제목·부제·본문 및 이전/다음 매핑 확인. 이관 에디터의 이미지 확대 안내/버튼 장식은 본문 텍스트 대조에서 구분. 기획 필요 데이터 제공 완료. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 5건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/archivetechnology/2

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.136534+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음34
GET
200
http://localhost:4100/api/v1/content/archivetechnology/2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:35.991733+09:00일치: HTTP 응답 상태 / 일치: 아카이브 영문 제목/국문 대체 / 일치: 아카이브 영문 부제/국문 대체 / 일치: 아카이브 본문 원천 텍스트 / 일치: 아카이브 previous 제목30
GET
200
http://localhost:4100/api/v1/content/archivetechnology/18

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.067673+09:00일치: HTTP 응답 상태 / 일치: 아카이브 영문 제목/국문 대체 / 일치: 아카이브 영문 부제/국문 대체 / 일치: 아카이브 본문 원천 텍스트 / 일치: 아카이브 next 제목54
GET
200
http://localhost:4100/api/v1/content/archivetechnology/18

{"Host": "eng.localhost:4100"}

2026-10-16T17:00:01.920816+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.48
GET
404
http://localhost:4100/api/v1/content/archivetechnology/19

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.016268+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.21

영문 홈페이지›온라인 전시

1개 페이지 · 1개 항목
영문 홈페이지 온라인 전시의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

Google Arts & Culture

/content/gac

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GETGAC 온라인 전시 태그별 목록 조회
/api/v1/content/gac
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

GAC 목록200. CMS 제목·태그·외부URL 원문 일치 및 단일태그 COC02001,page2,size3 확인. 영문 미입력은 국문 대체. 외부 목적지 URL은 CMS 등록값 그대로 제공하며 임의로 hl을 변경하지 않음. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 33, 34페이지

HTTP 조회 시각: 2026-10-20T10:34:12.171041+09:00

http://localhost:4100/api/v1/content/gac

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 39,
  "title": "<오발탄>의 시간들",
  "typeName": "Google Arts & Cultur...",
  "tagCode": "COC02001",
  "tagName": "유현목",
  "externalUrl": "https://artsandcultu...",
  "thumbnailUrl": "http://kofafilm.arch...",
  "imageDescription": "오발탄"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
33, 34페이지제목items[].title
["<오발탄>의 시간들", "유현목의 오프 스크린", "포스터로 보는 유현목의 영화 세계", "한국영상자료원 50년의 기록 2007~현재", "한국영상자료원 50년의 기록 1990~2007", "한국영상자료원 50년의 기록 1974~1990", "한국영화 x 포스터 디자인 ④ - 1990년대", "한국영화 x 포스터 디자인 ③ - 1980년대", "한국영화 x 포스터 디자인 ②  - 1970년대", "한국영화 x 포스터 디자인 ① - 1960년대"]

온라인 콘텐츠 제목. ONLN_CONTS_TTL.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
33, 34페이지칩items[].typeName
["Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture", "Google Arts & Culture"]

온라인 콘텐츠 유형 코드(COC01)에 해당하는 표시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
33, 34페이지이미지items[].thumbnailUrl
["http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/6b618e8a-b582-467a-a7da-4d9540955c06_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/2019299d-1a57-4fff-aa24-bd4e37009fcb_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/08cc565a-a8ac-4417-87aa-040afa0383d1_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/6633204c-cd3b-472d-8999-c7999136b2b8_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/498ceea4-4489-4338-baee-c573e14669cf_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/795f3742-61df-4c2a-9d1e-7a4d05bdf198_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/e863bdc1-61b6-4d13-be16-9b8a081fddcf_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/859d12ec-8a1a-45c1-9f1c-71eefd999391_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/fe68b638-ed03-4bea-ad96-f8a837d2a794_M.webp", "http://kofafilm.archivecenter.or.kr/m2/img/mig/exhibitionOnline/9b2495b4-90a6-4c7f-8a8a-503e74a2aca8_M.webp"]

CMS 대표첨부 중형 썸네일 경로. 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
33, 34페이지태그items[].tagName
["유현목", "유현목", "유현목", null, null, null, null, null, null, null]

tagCode의 공통코드 표시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
33, 34페이지외부 URLitems[].externalUrl
["https://artsandculture.google.com/story/VgUx_mXt4JZA7A?hl=ko", "https://artsandculture.google.com/story/IwXRITM-T4a9zA?hl=ko", "https://artsandculture.google.com/story/TwWB7suA-fV-_A?hl=ko", "https://artsandculture.google.com/story/HwXhI4sS4yPHEg?hl=ko", "https://artsandculture.google.com/story/jwWhdTfzvtZpBg", "https://artsandculture.google.com/story/zwUxOCtLE70ZIA", "https://artsandculture.google.com/story/VQUhz3x9L9dXNg", "https://artsandculture.google.com/story/HwXhoBH1YHkiUw", "https://artsandculture.google.com/story/LQVh2R44ArVsSw", "https://artsandculture.google.com/story/QQXxIMHGrQcFWA"]

CMS에 등록된 외부 콘텐츠 주소. ONLN_CONTS_URL_CN.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
33, 34페이지제목·이미지·단일 태그 필터·외부 URL·10건 페이징검토 범위
2026-10-17 실제 HTTP 5건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json 공통 파일 제공: 로컬 NAS 경로2종 실제 HTTP90/90, 이미지 디코딩·원본 바이트 일치 검증. 배포 서버 검증과 구분.

GacExhibitionMapper TB_ONLN_CONTS.ONLN_CONTS_ENG_TTL/ONLN_CONTS_GROUP_CD/ONLN_CONTS_URL_CN와 TB_COM_CD.ENG_CD_NM.

GAC 목록200. CMS 제목·태그·외부URL 원문 일치 및 단일태그 COC02001,page2,size3 확인. 영문 미입력은 국문 대체. 외부 목적지 URL은 CMS 등록값 그대로 제공하며 임의로 hl을 변경하지 않음. 2026-10-20 이미지 도메인·NAS 정적 매핑 보완 완료: CMS /img·/m2/img, /upload·/m2/upload와 AMS /m1/svc를 설정 경로로 제공. 개발·운영 경로 구성의 로컬 실제 HTTP90건 통과. 서버 NAS 복사본 CMS 이미지10개·에디터PDF1개·AMS이미지1개 바이트 일치, doc·excel·etc 및 상위 경로 이동 접근 미노출 확인. 실제 배포 서버 설정 변경·WAR 배포 없음. 원천 파일 누락 CMS ID923·821, AMS K02813·K07315·K12480은 별도이며404 유지. KMDb 상세보기 도메인은 기존 유지.

제공
검색·필터 등 실제 HTTP 요청 8건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/content/gac

{"Host": "eng.localhost:4100"}

2026-10-20T10:34:12.171041+09:00일치: 실제 DB 조회 HTTP200 / 일치: 생성된 이미지 URL에 이전 KMDb /m1·/m2 도메인 없음38
GET
200
http://localhost:4100/api/v1/content/gac?size=3

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.095243+09:00일치: HTTP 응답 상태 / 일치: GAC size322
GET
200
http://localhost:4100/api/v1/content/gac?page=2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.069944+09:00일치: HTTP 응답 상태 / 일치: GAC page225
GET
200
http://localhost:4100/api/v1/content/gac?tagCode=COC02001

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.034851+09:00일치: HTTP 응답 상태 / 일치: GAC 태그 단일 필터35
GET
200
http://localhost:4100/api/v1/content/gac

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.121382+09:00일치: HTTP 응답 상태 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #39 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #38 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #37 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #36 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #35 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #34 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #33 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #32 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #31 / 일치: GAC 목적지 URL은 CMS 등록 원문 / 일치: CMS 원문과 표시 제목 일치 #3034
GET
200
http://localhost:4100/api/v1/content/gac?page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.124961+09:00일치: 응답 페이징 번호가 요청과 일치22
GET
200
http://localhost:4100/api/v1/content/gac?tagCode=COC02001

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.083791+09:00일치: 반환 태그가 요청 태그와 일치35
GET
200
http://localhost:4100/api/v1/content/gac

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.042776+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.35

영문 홈페이지›소식

2개 페이지 · 2개 항목
영문 홈페이지 소식의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

뉴스·공지 목록

/intro/news/notice

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET공지사항 목록 검색·페이징 조회
/api/v1/intro/news/notice
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 공지 목록200. 제목/내용/전체 검색,CNP02002 분류,page2,없는검색어 검증 완료. 공개 공지의 영문 제목/본문 양성 원천COUNT=0이어서 국문 대체 경로를 검증한 범위. 영문 미등록을 API 누락으로 분류하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 47페이지

HTTP 조회 시각: 2026-10-17T17:56:03.155673+09:00

http://localhost:4100/api/v1/intro/news/notice

조회 조건: {}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "id": 5810,
  "title": "[프레더릭 와이즈먼 회고전] 관객 투...",
  "createdAt": "20260521161727",
  "viewCount": 304,
  "categoryCode": "CNP02002",
  "categoryName": "KOFA"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
47페이지IDitems[].id
[5810, 5809, 5808, 5807, 5806, 5823, 5820, 5818, 5822, 5819]

게시물 식별자. 해당 목록 API에 대응하는 상세 API의 id로 사용. 게시판마다 원천 테이블이 다름.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지분류items[].categoryName
["KOFA", "KOFA", "News", "News", "News", "Museum", "News", "KOFA", "News", "KOFA"]

categoryCode를 TB_COM_CD.CD_NM으로 조회한 분류명. 코드명 미등록 시 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지제목items[].title
["[프레더릭 와이즈먼 회고전] 관객 투표 실시", "5월 27일(수) 영화 상영 미운영 안내", "한국영상자료원 직원 사칭 사기 주의 안내(한국영상자료원은 대리구매를 통한 선입금을 요청하지 않습니다.)", "[한국영상자료원 학술행사] '아리랑 100년과 한국영화의 미래' 개최 안내", "[휴관] 2026년 5월 1일(금) 노동절 휴관 안내", "[휴관] 한국영화박물관 휴관 안내(4/28~5/7)", "한국영상자료원 방문객 차량 승용차 5부제 시행 안내", "공영주차장 승용차 5부제 시행 안내", "한국영상자료원 사칭 악성 메일 주의 안내", "21일(토) &lt;마이애미 바이스> 강연 취소 공지"]

게시물 제목.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지작성일items[].createdAt
["20260521161727", "20260521161255", "20260521105445", "20260508143328", "20260430091821", "20260415120436", "20260407143415", "20260407135737", "20260401141809", "20260320094458"]

CMS 등록일시. REG_DT 원문 문자열(yyyyMMddHHmmss).

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지조회수items[].viewCount
[304, 134, 60, 136, 203, 626, 1326, 331, 587, 491]

CMS에 저장된 조회수. 값이 없으면 0.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
47페이지전체/제목/내용 검색·기관 분류·10건 페이징·제목·일시·조회수검토 범위
2026-10-17 실제 HTTP 7건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json

NoticeMapper NTC_ENG_TTL/NTC_ENG_CN 검색·INST_CD 분류. NoticeRow.localizedTitle. 영문 미입력 국문 대체는 docs/기준/rules/english-site.md의 기존 규칙.

영문 공지 목록200. 제목/내용/전체 검색,CNP02002 분류,page2,없는검색어 검증 완료. 공개 공지의 영문 제목/본문 양성 원천COUNT=0이어서 국문 대체 경로를 검증한 범위. 영문 미등록을 API 누락으로 분류하지 않음.

제공
검색·필터 등 실제 HTTP 요청 13건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/notice?keyword=ZZZNORESULT20261017

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.619958+09:00일치: HTTP 응답 상태 / 일치: 공지 검색 양성/없는값 구분52
GET
200
http://localhost:4100/api/v1/intro/news/notice?page=2

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.471623+09:00일치: HTTP 응답 상태 / 일치: 공지 page2148
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02002

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.293685+09:00일치: HTTP 응답 상태 / 일치: 공지 기관 분류코드 일치178
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=all&keyword=%EC%99%80%EC%9D%B4%EC%A6%88%EB%A8%BC

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.242031+09:00일치: HTTP 응답 상태 / 일치: 공지 검색 양성/없는값 구분52
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=content&keyword=%ED%88%AC%ED%91%9C

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.149704+09:00일치: HTTP 응답 상태 / 일치: 공지 검색 양성/없는값 구분92
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=title&keyword=%EC%99%80%EC%9D%B4%EC%A6%88%EB%A8%BC

{"Host": "eng.localhost:4100"}

2026-10-17T18:00:36.116960+09:00일치: HTTP 응답 상태 / 일치: 공지 검색 양성/없는값 구분 / 일치: 공지 제목 검색어 일치33
GET
200
http://localhost:4100/api/v1/intro/news/notice

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.155673+09:00일치: HTTP 응답 상태 / 일치: CMS 원문과 표시 제목 일치 #5810 / 일치: CMS 원문과 표시 제목 일치 #5809 / 일치: CMS 원문과 표시 제목 일치 #5808 / 일치: CMS 원문과 표시 제목 일치 #5807 / 일치: CMS 원문과 표시 제목 일치 #5806 / 일치: CMS 원문과 표시 제목 일치 #5823 / 일치: CMS 원문과 표시 제목 일치 #5820 / 일치: CMS 원문과 표시 제목 일치 #5818 / 일치: CMS 원문과 표시 제목 일치 #5822 / 일치: CMS 원문과 표시 제목 일치 #5819163
GET
200
http://localhost:4100/api/v1/intro/news/notice?page=2

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:44.077698+09:00일치: 응답 페이징 번호가 요청과 일치135
GET
200
http://localhost:4100/api/v1/intro/news/notice?categoryCode=CNP02001

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.906739+09:00일치: 반환 분류가 요청 분류 또는 하위 분류158
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=content&keyword=%EC%98%81%ED%99%94

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.728029+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.165
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=title&keyword=%EC%98%81%ED%99%94

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.585917+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.136
GET
200
http://localhost:4100/api/v1/intro/news/notice?searchField=all&keyword=%EC%98%81%ED%99%94

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.417647+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.158
GET
200
http://localhost:4100/api/v1/intro/news/notice

{"Host": "eng.localhost:4100"}

2026-10-16T16:59:43.153163+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.166

뉴스·공지 상세

/intro/news/notice/{id}

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf

API·조회 항목 1개

GET공지사항 상세·본문·첨부·인접 글 조회
/api/v1/intro/news/notice/{id}
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

영문 공지5810번 상세200. 제목·본문 국문 대체는 CMS 원문과 일치. 분류명,이전/다음,첨부12932 다운로드 URL 제공 확인. /data NAS 파일바이트 수신은 배포 환경 별도 검증(기존 구현 완료 합의 유지).

KOFA2_DE304_KOFA홈페이지_화면정의서(영문)_v1.1.pdf · PDF 48페이지

HTTP 조회 시각: 2026-10-17T17:56:03.319068+09:00

http://localhost:4100/api/v1/intro/news/notice/5810

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "article": {
    "id": 5810,
    "title": "[프레더릭 와이즈먼 회고전] 관객 투...",
    "bodyHtml": "<div class=\"kmdb-edi...",
    "createdAt": "20260521161727",
    "viewCount": 304,
    "categoryCode": "CNP02002",
    "categoryName": "KOFA"
  },
  "attachments": [
    {
      "id": 12932,
      "name": "찌오2 2.png",
      "extension": "png",
      "size": 5874,
      "url": "/api/v1/files/notice..."
    }
  ],
  "previous": null,
  "next": {
    "id": 5809,
    "title": "5월 27일(수) 영화 상영 미운영 ..."
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
48페이지기본정보article
[{"id": 5810, "title": "[프레더릭 와이즈먼 회고전] 관객 투표 실시", "bodyHtml": "<div class=\"kmdb-editor\" data-kmdb-editor-schema=\"1\">안녕하세요 시네마테크KOFA입니다.\n<br>\n<br>\n 2026년 2월 16일, 현대 다큐멘터리의 거장 프레더릭 와이즈먼 감독이 별세하였습니다.&nbsp;\n<br>\n<br>\n 한국영상자료원과 DMZ국제다큐멘터리영화제는 고인을 추모하며, 2025년부터 '서울아트시네마', '영화의전당' 등에서 이어온 와이즈먼 전작전을 갈무리하는 최종 회고전을 공동으로 개최합니다.\n<br>\n<br>\n 이번 기획전은 감독의 방대한 세계를 다시금 조망하기 위해 추천작과 관객이 직접 뽑은 '다시 보고 싶은 와이즈먼 영화' 3편을 선정하여 상영하고자 합니다.&nbsp;\n<br>\n<br>\n<br><a href=\"https://forms.gle/5nSFQP3zpN1MCkWq9\"><span style=\"font-size:26px;\"></span><span style=\"font-size:24px;\"></span><strong><span style=\"font-size:28px;\">[투표하기](클릭)</span></strong></a><span style=\"font-size:20px;\"></span>\n<br>\n<br>\n<br><b>[프로그램 내역]</b>\n<br>\n - 기간: 2026년 7월 9일(목) ~ 7월 22일\n<br>\n - 장소:&nbsp; 한국영상자료원 시네마테크KOFA\n<br>\n - 주최: 한국영상자료원, DMZ국제다큐멘터리영화제\n<br>\n<br><b>[투표안내]</b>\n<br>\n - 기간: 2026년 5월 21일(목) ~ 6월 3일\n<br>\n - 발표: 2026년 6월 9일</div>", "createdAt": "20260521161727", "viewCount": 304, "categoryCode": "CNP02002", "categoryName": "KOFA"}]

해당 게시물의 상세 데이터.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
48페이지이전글previous
[null]

이전 게시물의 id·제목. 이전 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
48페이지다음글next
[{"id": 5809, "title": "5월 27일(수) 영화 상영 미운영 안내"}]

다음 게시물의 id·제목. 다음 게시물이 없으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
48페이지첨부attachments
[[{"id": 12932, "name": "찌오2 2.png", "extension": "png", "size": 5874, "url": "/api/v1/files/notice/5810/12932/download"}]]

해당 게시물의 첨부파일 메타데이터 목록. 다운로드 URL은 포함하지 않음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
48페이지첨부 다운로드attachments
[[{"id": 12932, "name": "찌오2 2.png", "extension": "png", "size": 5874, "url": "/api/v1/files/notice/5810/12932/download"}]]

해당 게시물의 첨부파일 메타데이터 목록. 다운로드 URL은 포함하지 않음.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
48페이지분류·제목·일시·조회수·첨부 다운로드·본문·이전/다음검토 범위
2026-10-17 실제 HTTP 1건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json

NoticeMapper TB_NTC.NTC_ENG_TTL/NTC_ENG_CN/INST_CD,TB_MLT_ATCH_FILE 첨부. NoticeService localizedTitle/localizedBodyHtml. 공개영문 원천0건.

영문 공지5810번 상세200. 제목·본문 국문 대체는 CMS 원문과 일치. 분류명,이전/다음,첨부12932 다운로드 URL 제공 확인. /data NAS 파일바이트 수신은 배포 환경 별도 검증(기존 구현 완료 합의 유지).

제공
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/intro/news/notice/5810

{"Host": "eng.localhost:4100"}

2026-10-17T17:56:03.319068+09:00일치: HTTP 응답 상태 / 일치: 공지 상세 영문제목 또는 국문 대체 / 일치: 공지 상세 본문 원천 텍스트 / 일치: 첨부 공개 다운로드 URL 제공68
GET
200
http://localhost:4100/api/v1/intro/news/notice/5810

{"Host": "eng.localhost:4100"}

2026-10-16T18:43:14.220027+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.74

사이트공통›홈메인

1개 페이지 · 1개 항목
사이트공통 홈메인의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

홈메인 조회

/main

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf

API·조회 항목 1개

GET정상 응답·구현 여부 확인 필요
/main
HTTP 200 · HTML확인 항목 1개최신 업데이트: 2026-10-22펼치기접기
확인필요

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 국문 홈 HTML200,CMS 최신 소식5건 정상. real 조회 미구현은 해소됨. PDF5 (1-2-4) 외부채널 감독/제작연도는 External(title/quoteLines/image/url)에 없고 홈 JSON REST 계약도 없어 확인필요 유지.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 4, 5페이지

HTTP 조회 시각: 2026-10-22T02:16:17.722701+00:00

http://localhost:4100/main

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "extractedData": {
    "date": "2026-10-22",
    "todayEventCount": 0,
    "museumEducationAndExhibitionsExcluded": true
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4페이지긴급공지 내용HTML / main.urgentHtml
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4페이지메인배너 제목·설명·이미지·기간·URLHTML / main.banners
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4페이지현재 연·월·일·요일HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4, 5페이지오늘 일정 제목·유형·시간·장소·개수HTML / main.events
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4페이지최신 공지·보도 상위 5건HTML / main.notices
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4페이지최신 웹진 소배너HTML / main.smallBanners
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4페이지CMS 등록 소배너 이미지·URLHTML / main.smallBanners
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
5페이지외부채널 배너·명대사·영화·감독/연도·URLHTML / main.external
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
4, 5페이지긴급공지·메인배너·오늘 일정(프로그램 제외)·공지/보도 최신5·소배너·유관기관·무일정 외부채널검토 범위
2026-10-17 실제 HTTP 1건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json

SiteMainService→SiteMainQueryServiceImpl/SiteMainMapper. SSR 실제 소식5건. 외부채널 감독/제작연도 미매핑 및 JSON API 부재.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 국문 홈 HTML200,CMS 최신 소식5건 정상. real 조회 미구현은 해소됨. PDF5 (1-2-4) 외부채널 감독/제작연도는 External(title/quoteLines/image/url)에 없고 홈 JSON REST 계약도 없어 확인필요 유지.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/main

{}

2026-10-22T02:16:17.722701+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.729
GET
200
http://localhost:4100/main

{"Host": "localhost:4100"}

2026-10-17T17:56:03.407468+09:00일치: HTTP 응답 상태 / 일치: 홈 최신 공지/보도 5건 존재 / 일치: CMS 실제 공지 제목이 홈에 표시133
GET
200
http://localhost:4100/main

{}

2026-10-16T17:06:30.551020+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.88

사이트공통›통합 일정

1개 페이지 · 6개 항목
사이트공통 통합 일정의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

통합 일정 조회

/schedule

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf

API·조회 항목 6개

GET통합 일정 조회
/api/v1/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-22펼치기접기
완료

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-22T02:18:31.988354+00:00

http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=ALL

조회 조건: {"month": "2026-05", "date": "2026-05-20", "type": "ALL"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "type": "SCREENING",
  "id": 9994,
  "contentId": 10388,
  "programId": 2791,
  "title": "인트로덕션",
  "startDate": "2026-05-20",
  "endDate": "2026-05-20",
  "startTime": "13:00:00",
  "location": "시네마테크KOFA 1관",
  "integratedReservationId": 18016,
  "reservationStatus": "closed",
  "reservationOpensAt": "2026-05-15T11:00:00",
  "bookingEnabled": false,
  "menuName": null,
  "venue": null,
  "exhibitionCategory": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지현재 선택 월month
["2026-10"]

조회 달. yyyy-MM.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지선택 일selectedDate
["2026-10-16"]

선택한 날짜. yyyy-MM-dd.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지필터type
["ALL"]

적용된 일정 유형. ALL/SCREENING/PROGRAM/EDUCATION/EXHIBITION.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지날짜별 유형·개수days
[[{"date": "2026-10-01", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-02", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-03", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-04", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-05", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-06", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-07", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-08", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-09", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-10", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-11", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-12", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-13", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-14", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-15", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-16", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-17", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-18", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-19", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-20", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-21", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-22", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-23", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-24", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-25", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-26", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-27", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-28", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-29", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-30", "categories": ["EXHIBITION"], "count": 1}, {"date": "2026-10-31", "categories": ["EXHIBITION"], "count": 1}]]

조회 달의 모든 날짜별 유형·건수 목록.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지월·날짜·유형 필터·날짜별 개수month / selectedDate / type
["2026-10", "2026-10-16", "ALL"]

조회 달. yyyy-MM. / 선택한 날짜. yyyy-MM-dd. / 적용된 일정 유형. ALL/SCREENING/PROGRAM/EDUCATION/EXHIBITION.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지유형 우선 정렬items[].type
["EXHIBITION"]

일정 유형. SCREENING=상영회차, PROGRAM=프로그램, EDUCATION=교육, EXHIBITION=전시.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지대메뉴 이름·상세 링크items[].type / items[].contentId / items[].programId
["EXHIBITION", 249, null]

일정 유형. SCREENING=상영회차, PROGRAM=프로그램, EDUCATION=교육, EXHIBITION=전시. / 상세 페이지로 연결할 콘텐츠 식별자. 상영회차는 SCFM_ID, 다른 유형은 해당 콘텐츠 PK. / 연결 프로그램 식별자. 상영·프로그램 일정에 사용, 해당하지 않으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지월/선택일·유형별 달력/목록·시작시간 정렬·예약 활성/상태/오픈/연계ID검토 범위
실제 HTTP200. HTML은 JSON 업무 성공 증거와 구분.

IntegratedScheduleMapper: TB_PRGRM_SCSCHDL.SCRG_DT/INTG_RSV_ID/RSV_BGNG_DT, TB_PRGRM_MOVIE.MOVIE_NM/RSV_STTS_CD, TB_PRGRM.PRGRM_NM/BGNG_YMD/END_YMD,TB_EDU.EDU_NM/EDU_BGNG_YMD/EDU_END_YMD,TB_EXHB.EXHB_TTL/EXHB_PLC_NM/EXHB_BGNG_YMD/EXHB_END_YMD.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

제공
검색·필터 등 실제 HTTP 요청 16건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-22&type=ALL

{}

2026-10-22T02:16:16.979642+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.346
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-23&type=ALL

{}

2026-10-22T02:16:17.481569+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.44
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-24&type=ALL

{}

2026-10-22T02:16:17.525848+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.44
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-25&type=ALL

{}

2026-10-22T02:16:17.569459+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.43
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-26&type=ALL

{}

2026-10-22T02:16:17.612941+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.37
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-27&type=ALL

{}

2026-10-22T02:16:17.649567+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.37
GET
200
http://localhost:4100/api/v1/schedule?month=2027-01&date=2027-01-01&type=ALL

{}

2026-10-22T02:16:17.686745+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.36
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=ALL

{}

2026-10-22T02:18:31.988354+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.77
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=ALL

{"Host": "localhost:4100"}

2026-10-17T18:00:36.672691+09:00일치: HTTP 응답 상태41
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&date=2025-08-01

{}

2026-10-16T17:06:31.441923+09:00일치: selectedDate가 요청 일자와 일치39
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08

{}

2026-10-16T17:06:31.213145+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.41
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&date=2026-07-28

{}

2026-10-16T17:06:31.191604+09:00일치: selectedDate가 요청 일자와 일치16
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07

{}

2026-10-16T17:06:31.048593+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.16
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&date=2026-08-06

{}

2026-10-16T17:06:31.028403+09:00일치: selectedDate가 요청 일자와 일치15
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08

{}

2026-10-16T17:06:30.806352+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.17
GET
200
http://localhost:4100/api/v1/schedule

{}

2026-10-16T17:06:30.767025+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.34
GET통합 일정 조회
/api/v1/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-22펼치기접기
완료

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-22T02:18:32.065644+00:00

http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=SCREENING

조회 조건: {"month": "2026-05", "date": "2026-05-20", "type": "SCREENING"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "type": "SCREENING",
  "id": 9994,
  "contentId": 10388,
  "programId": 2791,
  "title": "인트로덕션",
  "startDate": "2026-05-20",
  "endDate": "2026-05-20",
  "startTime": "13:00:00",
  "location": "시네마테크KOFA 1관",
  "integratedReservationId": 18016,
  "reservationStatus": "closed",
  "reservationOpensAt": "2026-05-15T11:00:00",
  "bookingEnabled": false,
  "menuName": null,
  "venue": null,
  "exhibitionCategory": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지SCREENING IDitems[].id
[9994, 10026, 9997]

일정 원천 PK. 유형에 따라 SCSCHDL_ID/PRGRM_ID/EDU_ID/EXHB_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 상세용 콘텐츠 IDitems[].contentId
[10388, 10437, 10391]

상세 페이지로 연결할 콘텐츠 식별자. 상영회차는 SCFM_ID, 다른 유형은 해당 콘텐츠 PK.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 프로그램 IDitems[].programId
[2791, 2795, 2791]

연결 프로그램 식별자. 상영·프로그램 일정에 사용, 해당하지 않으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 제목items[].title
["인트로덕션", "마르셀, 신발 신은 조개", "탑"]

일정 제목. 유형별 상영작명·프로그램명·교육명·전시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 시작일items[].startDate
["2026-05-20", "2026-05-20", "2026-05-20"]

일정 시작일. yyyy-MM-dd.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 종료일items[].endDate
["2026-05-20", "2026-05-20", "2026-05-20"]

일정 종료일. yyyy-MM-dd. 원천 종료일이 없으면 서비스 조회 규칙에 따른 값.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 상영시간items[].startTime
["13:00:00", "15:00:00", "18:00:00"]

상영회차의 시작시간. HH:mm:ss. 시간 정보가 없는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 장소items[].location
["시네마테크KOFA 1관", "시네마테크KOFA 1관", "시네마테크KOFA 2관"]

상영관·교육·전시 장소 표시값. 원천에서 제공하지 않는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지SCREENING 상영 예매 버튼 상태·연결 식별자items[].bookingEnabled / items[].reservationStatus / items[].reservationOpensAt / items[].integratedReservationId
[false, false, false, "closed", "closed", "closed", "2026-05-15T11:00:00", "2026-05-15T11:00:00", "2026-05-15T11:00:00", 18016, 18017, 18018]

SCREENING의 예매 버튼 활성 여부. reservationStatus가 available이면 true, 그 외 상태이면 false. 프로그램·교육·전시는 null(이번에 해당 유형의 예매 정책을 추가하지 않음). / SCREENING의 예매 상태. closed=상영 15분 전부터 종료, unavailable=TB_PRGRM_MOVIE.RSV_STTS_CD가 CMS 활성 코드 CCM04001이 아니거나 예매 ID가 null, upcoming=오픈 전, available=예매 가능. 위 순서로 판단합니다. 다른 유형이면 null. / SCREENING의 예매 오픈 시각. TB_PRGRM_SCSCHDL.RSV_BGNG_DT(yyyyMMddHHmmss)를 한국시간 ISO 일시로 변환. 없거나 유효하지 않으면 기존 상영일정 API와 같이 상영 5일 전 11시. 다른 유형이면 null. / SCREENING의 문화인 연동 예매 ID. TB_PRGRM_SCSCHDL.INTG_RSV_ID 원문 숫자. 미등록 또는 다른 유형이면 null. 문화인 팝업 URL은 프론트에서 구성하며 외부 규격과 동일한 ID인지는 별도 확인이 필요합니다.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지월/선택일·유형별 달력/목록·시작시간 정렬·예약 활성/상태/오픈/연계ID검토 범위
실제 HTTP200. HTML은 JSON 업무 성공 증거와 구분.

IntegratedScheduleMapper: TB_PRGRM_SCSCHDL.SCRG_DT/INTG_RSV_ID/RSV_BGNG_DT, TB_PRGRM_MOVIE.MOVIE_NM/RSV_STTS_CD, TB_PRGRM.PRGRM_NM/BGNG_YMD/END_YMD,TB_EDU.EDU_NM/EDU_BGNG_YMD/EDU_END_YMD,TB_EXHB.EXHB_TTL/EXHB_PLC_NM/EXHB_BGNG_YMD/EXHB_END_YMD.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

제공
검색·필터 등 실제 HTTP 요청 10건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-22&type=SCREENING

{}

2026-10-22T02:16:17.451596+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.30
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=SCREENING

{}

2026-10-22T02:18:32.065644+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.61
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=SCREENING

{"Host": "localhost:4100"}

2026-10-17T18:00:36.784233+09:00일치: HTTP 응답 상태41
GET
200
http://localhost:4100/api/v1/schedule?month=2026-06&date=2026-06-12&type=SCREENING

{}

2026-10-16T17:06:31.486327+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치28
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&date=2025-08-01&type=SCREENING

{}

2026-10-16T17:06:31.306359+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치40
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&type=SCREENING

{}

2026-10-16T17:06:31.260197+09:00일치: 목록의 모든 type이 요청값과 일치40
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&date=2026-07-28&type=SCREENING

{}

2026-10-16T17:06:31.088022+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치13
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&type=SCREENING

{}

2026-10-16T17:06:31.070219+09:00미검증: 목록의 모든 type이 요청값과 일치13
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&date=2026-08-06&type=SCREENING

{}

2026-10-16T17:06:30.942590+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치13
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&type=SCREENING

{}

2026-10-16T17:06:30.920552+09:00미검증: 목록의 모든 type이 요청값과 일치17
GET통합 일정 조회
/api/v1/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-22펼치기접기
완료

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-22T02:18:32.127423+00:00

http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=PROGRAM

조회 조건: {"month": "2026-05", "date": "2026-05-20", "type": "PROGRAM"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "type": "PROGRAM",
  "id": 2791,
  "contentId": 2791,
  "programId": 2791,
  "title": "홍상수 전작전: 인트로덕션",
  "startDate": "2026-05-02",
  "endDate": "2026-06-13",
  "startTime": null,
  "location": null,
  "integratedReservationId": null,
  "reservationStatus": null,
  "reservationOpensAt": null,
  "bookingEnabled": null,
  "menuName": null,
  "venue": null,
  "exhibitionCategory": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지PROGRAM IDitems[].id
[2791, 2796, 2795]

일정 원천 PK. 유형에 따라 SCSCHDL_ID/PRGRM_ID/EDU_ID/EXHB_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지PROGRAM 상세용 콘텐츠 IDitems[].contentId
[2791, 2796, 2795]

상세 페이지로 연결할 콘텐츠 식별자. 상영회차는 SCFM_ID, 다른 유형은 해당 콘텐츠 PK.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지PROGRAM 프로그램 IDitems[].programId
[2791, 2796, 2795]

연결 프로그램 식별자. 상영·프로그램 일정에 사용, 해당하지 않으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지PROGRAM 제목items[].title
["홍상수 전작전: 인트로덕션", "5월 프로그래머의 초이스", "시네마테크KOFA 5월 키즈시네마"]

일정 제목. 유형별 상영작명·프로그램명·교육명·전시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지PROGRAM 시작일items[].startDate
["2026-05-02", "2026-05-05", "2026-05-20"]

일정 시작일. yyyy-MM-dd.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지PROGRAM 종료일items[].endDate
["2026-06-13", "2026-06-06", "2026-05-23"]

일정 종료일. yyyy-MM-dd. 원천 종료일이 없으면 서비스 조회 규칙에 따른 값.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지PROGRAM 상영시간items[].startTime
[null, null, null]

상영회차의 시작시간. HH:mm:ss. 시간 정보가 없는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지PROGRAM 장소items[].location
[null, null, null]

상영관·교육·전시 장소 표시값. 원천에서 제공하지 않는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지월/선택일·유형별 달력/목록·시작시간 정렬·예약 활성/상태/오픈/연계ID검토 범위
실제 HTTP200. HTML은 JSON 업무 성공 증거와 구분.

IntegratedScheduleMapper: TB_PRGRM_SCSCHDL.SCRG_DT/INTG_RSV_ID/RSV_BGNG_DT, TB_PRGRM_MOVIE.MOVIE_NM/RSV_STTS_CD, TB_PRGRM.PRGRM_NM/BGNG_YMD/END_YMD,TB_EDU.EDU_NM/EDU_BGNG_YMD/EDU_END_YMD,TB_EXHB.EXHB_TTL/EXHB_PLC_NM/EXHB_BGNG_YMD/EXHB_END_YMD.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-22&type=PROGRAM

{}

2026-10-22T02:16:17.421451+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.30
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=PROGRAM

{}

2026-10-22T02:18:32.127423+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.22
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=PROGRAM

{"Host": "localhost:4100"}

2026-10-17T18:00:36.889147+09:00일치: HTTP 응답 상태12
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&date=2025-08-01&type=PROGRAM

{}

2026-10-16T17:06:31.370094+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치10
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&type=PROGRAM

{}

2026-10-16T17:06:31.352817+09:00일치: 목록의 모든 type이 요청값과 일치11
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&date=2026-07-31&type=PROGRAM

{}

2026-10-16T17:06:31.120671+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치13
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&type=PROGRAM

{}

2026-10-16T17:06:31.105987+09:00미검증: 목록의 모든 type이 요청값과 일치10
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&date=2026-08-20&type=PROGRAM

{}

2026-10-16T17:06:30.975007+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치10
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&type=PROGRAM

{}

2026-10-16T17:06:30.959999+09:00미검증: 목록의 모든 type이 요청값과 일치10
GET통합 일정 조회
/api/v1/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-22펼치기접기
완료

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-22T02:18:32.150382+00:00

http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=EDUCATION

조회 조건: {"month": "2026-05", "date": "2026-05-20", "type": "EDUCATION"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "type": "EDUCATION",
  "id": 337,
  "contentId": 337,
  "programId": null,
  "title": "[14~16세 단체] 티키무비타카",
  "startDate": "2026-04-01",
  "endDate": "2026-06-12",
  "startTime": null,
  "location": null,
  "integratedReservationId": null,
  "reservationStatus": null,
  "reservationOpensAt": null,
  "bookingEnabled": null,
  "menuName": null,
  "venue": null,
  "exhibitionCategory": null
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지EDUCATION IDitems[].id
[337, 338, 325, 341]

일정 원천 PK. 유형에 따라 SCSCHDL_ID/PRGRM_ID/EDU_ID/EXHB_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EDUCATION 상세용 콘텐츠 IDitems[].contentId
[337, 338, 325, 341]

상세 페이지로 연결할 콘텐츠 식별자. 상영회차는 SCFM_ID, 다른 유형은 해당 콘텐츠 PK.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EDUCATION 프로그램 IDitems[].programId
[null, null, null, null]

연결 프로그램 식별자. 상영·프로그램 일정에 사용, 해당하지 않으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지EDUCATION 제목items[].title
["[14~16세 단체] 티키무비타카", "[2020~21년생 단체] 반짝이는 나에게 주는 상(4~5월)", "[초등 5학년 이상 단체] 박물관 전시 도슨트 예약 해설(5월) ", "시니어 영화 토론 클럽"]

일정 제목. 유형별 상영작명·프로그램명·교육명·전시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EDUCATION 시작일items[].startDate
["2026-04-01", "2026-04-16", "2026-05-02", "2026-05-08"]

일정 시작일. yyyy-MM-dd.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EDUCATION 종료일items[].endDate
["2026-06-12", "2026-05-28", "2026-05-30", "2026-06-05"]

일정 종료일. yyyy-MM-dd. 원천 종료일이 없으면 서비스 조회 규칙에 따른 값.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EDUCATION 상영시간items[].startTime
[null, null, null, null]

상영회차의 시작시간. HH:mm:ss. 시간 정보가 없는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지EDUCATION 장소items[].location
[null, null, null, null]

상영관·교육·전시 장소 표시값. 원천에서 제공하지 않는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지월/선택일·유형별 달력/목록·시작시간 정렬·예약 활성/상태/오픈/연계ID검토 범위
실제 HTTP200. HTML은 JSON 업무 성공 증거와 구분.

IntegratedScheduleMapper: TB_PRGRM_SCSCHDL.SCRG_DT/INTG_RSV_ID/RSV_BGNG_DT, TB_PRGRM_MOVIE.MOVIE_NM/RSV_STTS_CD, TB_PRGRM.PRGRM_NM/BGNG_YMD/END_YMD,TB_EDU.EDU_NM/EDU_BGNG_YMD/EDU_END_YMD,TB_EXHB.EXHB_TTL/EXHB_PLC_NM/EXHB_BGNG_YMD/EXHB_END_YMD.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

제공
검색·필터 등 실제 HTTP 요청 8건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-22&type=EDUCATION

{}

2026-10-22T02:16:17.325877+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.67
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=EDUCATION

{}

2026-10-22T02:18:32.150382+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.18
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=EDUCATION

{"Host": "localhost:4100"}

2026-10-17T18:00:36.933375+09:00일치: HTTP 응답 상태9
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&date=2025-08-01&type=EDUCATION

{}

2026-10-16T17:06:31.398289+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치8
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&type=EDUCATION

{}

2026-10-16T17:06:31.385644+09:00일치: 목록의 모든 type이 요청값과 일치7
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&date=2026-07-01&type=EDUCATION

{}

2026-10-16T17:06:31.153055+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치7
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&type=EDUCATION

{}

2026-10-16T17:06:31.138944+09:00일치: 목록의 모든 type이 요청값과 일치9
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&type=EDUCATION

{}

2026-10-16T17:06:30.990686+09:00미검증: 목록의 모든 type이 요청값과 일치8
GET통합 일정 조회
/api/v1/schedule
HTTP 200 · JSON확인 항목 0개최신 업데이트: 2026-10-22펼치기접기
완료

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-22T02:18:32.169062+00:00

http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=EXHIBITION

조회 조건: {"month": "2026-05", "date": "2026-05-20", "type": "EXHIBITION"}

조회 결과 JSON · 객체 1건

items[0] · 문자열 값은 최대 20자 표시
{
  "type": "EXHIBITION",
  "id": 283,
  "contentId": 283,
  "programId": null,
  "title": "영화문고",
  "startDate": "2024-11-08",
  "endDate": "2027-03-01",
  "startTime": null,
  "location": "한국영화박물관 기획전시실",
  "integratedReservationId": null,
  "reservationStatus": null,
  "reservationOpensAt": null,
  "bookingEnabled": null,
  "menuName": null,
  "venue": null,
  "exhibitionCategory": "SPECIAL"
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지EXHIBITION IDitems[].id
[249, 286]

일정 원천 PK. 유형에 따라 SCSCHDL_ID/PRGRM_ID/EDU_ID/EXHB_ID.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EXHIBITION 상세용 콘텐츠 IDitems[].contentId
[249, 286]

상세 페이지로 연결할 콘텐츠 식별자. 상영회차는 SCFM_ID, 다른 유형은 해당 콘텐츠 PK.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EXHIBITION 프로그램 IDitems[].programId
[null, null]

연결 프로그램 식별자. 상영·프로그램 일정에 사용, 해당하지 않으면 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지EXHIBITION 제목items[].title
["한국영화를 보다", "제목전(展) "]

일정 제목. 유형별 상영작명·프로그램명·교육명·전시명.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EXHIBITION 시작일items[].startDate
["2016-10-19", "2026-05-08"]

일정 시작일. yyyy-MM-dd.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EXHIBITION 종료일items[].endDate
[null, "2026-08-29"]

일정 종료일. yyyy-MM-dd. 원천 종료일이 없으면 서비스 조회 규칙에 따른 값.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지EXHIBITION 상영시간items[].startTime
[null, null]

상영회차의 시작시간. HH:mm:ss. 시간 정보가 없는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

값 없음
8페이지EXHIBITION 장소items[].location
["한국영화박물관 상설전시실", " 기획전시실"]

상영관·교육·전시 장소 표시값. 원천에서 제공하지 않는 유형은 null.

새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지월/선택일·유형별 달력/목록·시작시간 정렬·예약 활성/상태/오픈/연계ID검토 범위
실제 HTTP200. HTML은 JSON 업무 성공 증거와 구분.

IntegratedScheduleMapper: TB_PRGRM_SCSCHDL.SCRG_DT/INTG_RSV_ID/RSV_BGNG_DT, TB_PRGRM_MOVIE.MOVIE_NM/RSV_STTS_CD, TB_PRGRM.PRGRM_NM/BGNG_YMD/END_YMD,TB_EDU.EDU_NM/EDU_BGNG_YMD/EDU_END_YMD,TB_EXHB.EXHB_TTL/EXHB_PLC_NM/EXHB_BGNG_YMD/EXHB_END_YMD.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 2025-08 실자료 유형필터·날짜별 조회200.2026-06-12 상영10068 reservationStatus=closed,bookingEnabled=false,reservationOpensAt=2026-06-07T11:00:00,integratedReservationId=0. 현재 미래/예매가능 경계는 코드 및 기존 테스트 확인, DB/시간 변경 없이 검토.

제공
검색·필터 등 실제 HTTP 요청 9건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/schedule?month=2026-10&date=2026-10-22&type=EXHIBITION

{}

2026-10-22T02:16:17.392479+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.29
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=EXHIBITION

{}

2026-10-22T02:18:32.169062+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.18
GET
200
http://localhost:4100/api/v1/schedule?month=2026-05&date=2026-05-20&type=EXHIBITION

{"Host": "localhost:4100"}

2026-10-17T18:00:36.972897+09:00일치: HTTP 응답 상태8
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&date=2025-08-01&type=EXHIBITION

{}

2026-10-16T17:06:31.427743+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치9
GET
200
http://localhost:4100/api/v1/schedule?month=2025-08&type=EXHIBITION

{}

2026-10-16T17:06:31.411760+09:00일치: 목록의 모든 type이 요청값과 일치11
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&date=2026-07-01&type=EXHIBITION

{}

2026-10-16T17:06:31.178700+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치8
GET
200
http://localhost:4100/api/v1/schedule?month=2026-07&type=EXHIBITION

{}

2026-10-16T17:06:31.165487+09:00일치: 목록의 모든 type이 요청값과 일치8
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&date=2026-08-01&type=EXHIBITION

{}

2026-10-16T17:06:31.016110+09:00일치: 목록의 모든 type이 요청값과 일치 / 일치: selectedDate가 요청 일자와 일치8
GET
200
http://localhost:4100/api/v1/schedule?month=2026-08&type=EXHIBITION

{}

2026-10-16T17:06:31.003333+09:00일치: 목록의 모든 type이 요청값과 일치8
GET정상 응답·구현 여부 확인 필요
/schedule
HTTP 200 · HTML확인 항목 0개최신 업데이트: 2026-10-22펼치기접기
완료

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 일정 SSR 실DB HTTP200. 2026-05-20 전체/상영작/프로그램/교육/전시 5개 분류를 /api/v1/schedule 실제 응답과 제목·순서·선택값까지 대조 완료(전체12건). API 재사용을 통한 서버연결 정상. 별도 JSON API 신규 구현이 아닌 SSR 조회 완료로 표시.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 8페이지

HTTP 조회 시각: 2026-10-22T02:16:18.451994+00:00

http://localhost:4100/schedule?date=2026-10-22

조회 조건: {"date": "2026-10-22", "category": "all"}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "extractedData": {
    "itemTitles": [
      "기획전 등록 테스트",
      "상설전 등록 테스트",
      "임정혁테스트"
    ],
    "selectedDate": "2026-10-22",
    "eventCount": 3,
    "onlyProgramMarker": true
  }
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
8페이지기존 화면의 일정 표시extractedData.itemTitles
[["한국영화를 보다", "제목전(展)"]]

실제 HTTP HTML 결과영역에서 추출한 일정 제목. JSON API 응답 키가 아닌 검증용 분석값.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 새 PDF 대조 및 실제 HTTP 조회 확인. 빈 값은 원천 표본 없음과 구분합니다.

제공
8페이지프론트/SSR 일정 페이지와 실제 조회 경로 구분검토 범위
2026-10-17 실제 HTTP 11건 성공. DB SELECT 원문 비교; 쓰기 요청0건. 상세 증거: docs/백엔드/api-http-recheck-2026-10-17/http.json

SiteSchedulePageService→ServerApiClient GET /api/v1/schedule→IntegratedScheduleService 실DB 조회. HTML 선택영역의 실제 제목/순서를 JSON items와 비교. API source를 가리키는 extractedData는 검증용 HTML 분석값.

2026-10-22 CMS 휴관일 반영. TB_HLDY의 기관·지정방식·기간을 적용하고 교육도 박물관 휴관일에 제외. 실제 DB HTTP: 10/22 교육·전시0, 프로그램3; 도서관 휴관10/23~24 전체9 유지; 전체휴관10/25 및 월요일10/26은0; 개관10/27은9 복귀. 월간 days[].categories/count와 items, SSR 달력 도형·목록 일치. 홈 오늘 일정0 및 영문 공통 로직 확인. 매월 특정주 CHY03002는 사용자 요청으로 제외. DB 데이터·서버 설정·배포 변경 없음. 일정 SSR 실DB HTTP200. 2026-05-20 전체/상영작/프로그램/교육/전시 5개 분류를 /api/v1/schedule 실제 응답과 제목·순서·선택값까지 대조 완료(전체12건). API 재사용을 통한 서버연결 정상. 별도 JSON API 신규 구현이 아닌 SSR 조회 완료로 표시.

제공
검색·필터 등 실제 HTTP 요청 15건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/schedule?date=2026-10-22

{}

2026-10-22T02:16:18.451994+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.74
GET
200
http://localhost:4100/fragments/site/schedule?date=2026-10-23&category=exhibition

{}

2026-10-22T02:16:18.526254+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.34
GET
200
http://localhost:4100/schedule?date=2026-10-25

{}

2026-10-22T02:16:18.559995+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.57
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=all

{}

2026-10-22T02:18:32.187536+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.79
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=film

{}

2026-10-22T02:18:32.266879+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.70
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=program

{}

2026-10-22T02:18:32.337009+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.36
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=education

{}

2026-10-22T02:18:32.373807+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.49
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=exhibition

{}

2026-10-22T02:18:32.423027+00:00일치: 실제 CMS DB 휴관일 적용, 날짜·기관·type 및 SSR 결과 검증. 방문 이력 저장은 검증 프로세스에서만 제외.33
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=exhibition

{"Host": "localhost:4100"}

2026-10-17T18:00:36.980792+09:00일치: HTTP 응답 상태 / 일치: SSR 선택일 일정 제목/순서가 DB REST와 일치 / 일치: SSR 선택 카테고리19
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=education

{"Host": "localhost:4100"}

2026-10-17T18:00:36.942797+09:00일치: HTTP 응답 상태 / 일치: SSR 선택일 일정 제목/순서가 DB REST와 일치 / 일치: SSR 선택 카테고리20
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=program

{"Host": "localhost:4100"}

2026-10-17T18:00:36.901471+09:00일치: HTTP 응답 상태 / 일치: SSR 선택일 일정 제목/순서가 DB REST와 일치 / 일치: SSR 선택 카테고리21
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=film

{"Host": "localhost:4100"}

2026-10-17T18:00:36.825467+09:00일치: HTTP 응답 상태 / 일치: SSR 선택일 일정 제목/순서가 DB REST와 일치 / 일치: SSR 선택 카테고리54
GET
200
http://localhost:4100/schedule?date=2026-05-20&category=all

{"Host": "localhost:4100"}

2026-10-17T18:00:36.713963+09:00일치: HTTP 응답 상태 / 일치: SSR 선택일 일정 제목/순서가 DB REST와 일치 / 일치: SSR 선택 카테고리57
GET
200
http://localhost:4100/schedule

{"Host": "localhost:4100"}

2026-10-17T17:56:03.540620+09:00일치: HTTP 응답 상태72
GET
200
http://localhost:4100/schedule

{}

2026-10-16T17:06:30.668953+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.93

사이트공통›통합검색

1개 페이지 · 1개 항목
사이트공통 통합검색의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

사이트 통합검색 조회

/search

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf

API·조회 항목 1개

GET정상 응답·구현 여부 확인 필요
/search
HTTP 200 · HTML확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

HTML검색화면이 열려도 통합 DB검색 구현 아님. 검색 대상·기간기준 컬럼·유형별 REST 응답 계약 필요.

KOFA2_DE304_KOFA홈페이지_화면정의서(홈메인)_v1.2.pdf · PDF 15, 16, 17, 18페이지

HTTP 조회 시각: 2026-10-16T17:06:30.906727+09:00

http://localhost:4100/search?q=%ED%95%9C%EA%B5%AD%EC%98%81%ED%99%94&tab=post&sort=oldest&startDate=2025-01-01&endDate=2026-08-31

조회 조건: {"q": "한국영화", "tab": "post", "sort": "oldest", "startDate": "2025-01-01", "endDate": "2026-08-31"}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "textExcerpt": " \n \n   \n     \n     \n..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
15페이지메뉴/콘텐츠/게시글 합산·결과수·제목·발췌·경로HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
16페이지콘텐츠 분류·기간 필터·최신/오래된순·페이징HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
17페이지게시글 분류·기간 필터·최신/오래된순·페이징HTML
대표 성공 표본에 해당 값 없음

정확한 원천 컬럼 근거는 확인 필요. 응답 키·HTTP 값과 별도로 판단.

HTTP 응답은 HTML입니다. 해당 필요 데이터의 JSON API 응답·DTO를 확인하지 못했습니다.

확인필요
15, 16, 17, 18페이지메뉴/콘텐츠/게시글·대분류별/기간별 검색·개수·10건 페이징·하이라이트검토 범위
실제 HTTP200. HTML은 JSON 업무 성공 증거와 구분.

SiteSearchQueryServiceImpl.find는 real provider에서 빈 PageResult 고정. SiteSearchService 메뉴 원장은 있으나 업무 콘텐츠/게시글 DB 실조회는 미구현. 실제 q/category/tab/page HTML200.

HTML검색화면이 열려도 통합 DB검색 구현 아님. 검색 대상·기간기준 컬럼·유형별 REST 응답 계약 필요.

확인필요
검색·필터 등 실제 HTTP 요청 7건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/search?q=%ED%95%9C%EA%B5%AD%EC%98%81%ED%99%94&tab=post&sort=oldest&startDate=2025-01-01&endDate=2026-08-31

{}

2026-10-16T17:06:30.906727+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증10
GET
200
http://localhost:4100/search?q=ZZZNORESULT20261015

{}

2026-10-16T17:06:30.892065+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증10
GET
200
http://localhost:4100/search?q=%ED%95%9C%EA%B5%AD%EC%98%81%ED%99%94&tab=post&page=2

{}

2026-10-16T17:06:30.877881+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증9
GET
200
http://localhost:4100/search?q=%ED%95%9C%EA%B5%AD%EC%98%81%ED%99%94&tab=content

{}

2026-10-16T17:06:30.863877+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증9
GET
200
http://localhost:4100/search?q=%ED%95%9C%EA%B5%AD%EC%98%81%ED%99%94&category=menu

{}

2026-10-16T17:06:30.849275+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증10
GET
200
http://localhost:4100/search?q=%EC%98%81%ED%99%94

{}

2026-10-16T17:06:30.828575+09:00미검증: HTML 화면 응답만 확인, 업무 JSON 값 비교는 미검증16
GET
200
http://localhost:4100/search

{}

2026-10-16T17:06:30.643874+09:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.20

로그인·회원가입›인증·계정

8개 페이지 · 8개 항목
로그인·회원가입 인증·계정의 페이지별 API 현황
페이지API 목록 · 기획 데이터 상태

아이디 로그인,5회 실패

/member/login/id

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POST아이디 로그인,5회 실패·30분 제한
/api/v1/auth/login
HTTP 200 · JSON확인 항목 1개최신 업데이트: 2026-10-22 18:51:55펼치기접기
확인필요

현재 비밀번호 변경 테스트와 함께 실패 로그인401·failedLoginCount=1, 정상 로그인200 후 DB LGN_FAIL_NMTM=0/LGN_FAIL_DT=null 확인. 5회 실제 잠금·30분 경과 해제는 계정 잠금 부작용 때문에 이번 HTTP 미실행; 해당 경계는 자동 테스트와 구분. 2026-10-22 실제 DB HTTP: 정상 로그인 200 두 번에 HMPG/CCM14001 이력 0→1→2건. 미등록 계정401·CSRF누락403·세션연장200은 성공 이력 증가 없음. 5회 실패·30분 제한 자동 회귀 검증 통과.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 6, 7페이지

HTTP 조회 시각: 2026-10-22T18:49:53.743936+09:00

http://localhost:4100/api/v1/auth/login

조회 조건: {}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "authenticated": true,
  "memberId": "mrdevello1",
  "displayName": "미스터디벨로",
  "redirectUrl": "/",
  "anyidLinkCode": null,
  "identityRequired": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
6, 7페이지아이디 로그인,5회 실패·30분 제한검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

MemberAuthServiceImpl/MemberAuthMapper: MBR_ID/MBR_PSWD, LGN_FAIL_NMTM/LGN_FAIL_DT. 로그인 성공 시0/NULL 초기화,5회이상 잠금,30분경과 해제.

현재 비밀번호 변경 테스트와 함께 실패 로그인401·failedLoginCount=1, 정상 로그인200 후 DB LGN_FAIL_NMTM=0/LGN_FAIL_DT=null 확인. 5회 실제 잠금·30분 경과 해제는 계정 잠금 부작용 때문에 이번 HTTP 미실행; 해당 경계는 자동 테스트와 구분.

확인필요
6, 7페이지아이디 로그인 성공 이력 등록 (운영 결함 #721 보완)회원 로그인 이력
2026-10-22 실제 DB HTTP: 정상 로그인 200 두 번에 HMPG/CCM14001 이력 0→1→2건. 미등록 계정401·CSRF누락403·세션연장200은 성공 이력 증가 없음. 5회 실패·30분 제한 자동 회귀 검증 통과.

SVC TB_MBR_LGN_HSTRY: LGN_HSTRY_ID=SEQ_TB_MBR_LGN_HSTRY_LGN_HSTRY_ID.NEXTVAL, MBR_ID=인증 회원아이디, SITE_CD=HMPG, LGN_MTHD_CD=CCM14001, LGN_DT=DB시각(yyyyMMddHHmmss). CMS Statistics.xml selectLoginStat 집계와 일치.

PDF 로그인 범위와 별도로 접수된 운영 결함을 보완. 성공 이력 저장 확인 완료. 기존 5회 실제 잠금·30분 경과 HTTP 미검증 상태는 유지. API 경로·요청·응답 DTO 변경 없음.

확인필요
검색·필터 등 실제 HTTP 요청 12건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-19T02:01:51.105597+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.16
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-19T02:01:51.066516+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.18
POST
401
http://localhost:4100/api/v1/auth/login

{}

2026-10-19T02:01:51.036999+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.27
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-19T02:01:51.015985+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.17
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-19T02:01:50.831317+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.63
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-19T01:42:14.709370+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.163
POST
200
http://kofafilm.archivecenter.or.kr/api/v1/auth/login

{}

2026-10-19T01:19:47.982269+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.55
POST
403
http://localhost:4100/api/v1/auth/login

{}

2026-10-22T18:49:51.311379+09:00no-csrf: 홈페이지 성공 이력 0건; docs/백엔드/member-login-history-2026-10-22/http.json200
POST
401
http://localhost:4100/api/v1/auth/login

{}

2026-10-22T18:49:52.197597+09:00unknown-member: 홈페이지 성공 이력 0건; docs/백엔드/member-login-history-2026-10-22/http.json16
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-22T18:49:52.884072+09:00successful-login-1: 홈페이지 성공 이력 1건; docs/백엔드/member-login-history-2026-10-22/http.json148
POST
200
http://localhost:4100/api/v1/auth/login

{}

2026-10-22T18:49:53.743936+09:00successful-login-2: 홈페이지 성공 이력 2건; docs/백엔드/member-login-history-2026-10-22/http.json45
POST
200
http://localhost:4100/api/v1/auth/session/extend

{}

2026-10-22T18:49:54.498200+09:00session-extend: 홈페이지 성공 이력 2건; docs/백엔드/member-login-history-2026-10-22/http.json4

4~20자 영문 소문자

/member/join/general/regist

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

GET4~20자 영문 소문자·숫자 아이디 중복확인
/api/v1/member/join/id-availability
HTTP 200 · JSON확인 항목 0개최신 업데이트: 변경일 미기록펼치기접기
완료

기존/신규후보/잘못된형식 실제HTTP 확인. DB INSERT 없이 검증 완료.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 13, 17, 20페이지

HTTP 조회 시각: 2026-10-16T16:36:42.100740+09:00

http://localhost:4100/api/v1/member/join/id-availability?memberId=zzqa20261016

조회 조건: {"memberId": "zzqa20261016"}

조회 결과 JSON · 객체 1건

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "memberId": "zzqa20261016",
  "available": true
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
13, 17, 20페이지4~20자 영문 소문자·숫자 아이디 중복확인검토 범위
mrdevello1→200 available=false; zzqa20261016→200 true; NewUSER→400 INVALID_MEMBER_ID.

MemberJoinRules [a-z0-9]{4,20}; MemberIdAvailabilityMapper TB_KOFA_MBR.MBR_ID COUNT.

기존/신규후보/잘못된형식 실제HTTP 확인. DB INSERT 없이 검증 완료.

제공
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
GET
200
http://localhost:4100/api/v1/member/join/id-availability?memberId=zzqa20261016

{}

2026-10-16T16:36:42.100740+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.10
GET
400
http://localhost:4100/api/v1/member/join/id-availability?memberId=NewUSER

{}

2026-10-16T16:36:42.090435+09:00미검증: 해당 조건의 정상 조회 응답6
GET
200
http://localhost:4100/api/v1/member/join/id-availability?memberId=mrdevello1

{}

2026-10-16T16:36:42.051753+09:00미검증: 조회 조건을 전달한 HTTP200. 응답 필드만으로 조건 전체를 입증할 수 없어 SQL/MD와 구분.34

NI

/member/login

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POSTNI·DI 모두 있는 회원의 즉시로그인,CI동일성 확인 후 연동
/api/v1/auth/anyid/link
HTTP 성공 표본 없음 · 미실행확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
프론트에서 검증

프론트에서 검증: 메일·Any-ID 관련 검증을 이관합니다. PDF4페이지의 NI와DI 모두 존재 조건은 현재NI조회 분기와 차이. 외부 인증 성공과 저장은 별도검증 필요.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 4, 5페이지

HTTP 조회 시각: 업무 요청 미실행

HTTP 업무 성공 표본 없음

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
null
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
4, 5페이지NI·DI 모두 있는 회원의 즉시로그인,CI동일성 확인 후 연동검토 범위
실제 AnyID/NICE 인증 및 NI/DI저장 요청 미실행.

MemberLinkMapper.findByNi는 NI+USE_YN만 검사하고 DI존재 조건이 없음. MemberLinkService는 기존NI행이면 즉시로그인. NICE와 AnyID의CI비교 및 DI/NI저장 분기는 구현.

PDF4페이지의 NI와DI 모두 존재 조건은 현재NI조회 분기와 차이. 외부 인증 성공과 저장은 별도검증 필요.

프론트에서 검증
검색·필터 등 실제 HTTP 요청 0건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)

일반/어린이/외국인 가입과 AnyID연계 가입의 NI

/member/join/general/regist

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POST일반/어린이/외국인 가입과 AnyID연계 가입의 NI·DI 유지
/api/v1/member/join/{registrationType}
HTTP 400 · JSON확인 항목 3개최신 업데이트: 변경일 미기록펼치기접기
확인필요

프론트에서 검증: 메일·Any-ID 관련 검증을 이관합니다. 어린이 보호자DI의 AGT_IPIN 저장 로직 보완. 보호자 인증 세션DI 우선, 어린이의 이름/생년월일/휴대전화 유지, 성인 본인DI 저장 유지. MockMvc 전체 어린이 가입 흐름·등록 Store 전달·Mapper 바인딩 자동검증 완료. 실제 DB에 신규 회원을 생성하는 가입 성공 검증은 미실행. AnyID NI 저장·실인증 및 기타 미확정 범위는 기존 판정대로 유지. PDF20의40자와 서버30자 상한 차이,13의메일부분길이·선택성별 저장범위 확인 필요. 국가목록 REST가 필요한지도 프론트 계약 확인. 이번에 입력제한·저장정책을 변경하지 않음. 2026-10-21 회원번호 Java 전환: 가입 INSERT의 FNC_USER_NO 호출을 제거하고 SVC TB_KOFA_MBR_NO 행 잠금·별도 트랜잭션으로 번호를 계산·확정합니다. 클라이언트 요청 필드와 DI 매핑은 유지합니다. 현재 DB에 관리 테이블·초기 행이 없어 실제 신규 가입 성공 HTTP는 미검증입니다. 코드 반영만으로 완료 처리하지 않으며 DB 설치가 필요합니다.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 5, 11, 12, 13, 16, 17, 19, 20, 21페이지

HTTP 조회 시각: 2026-10-19T13:33:12.629267+09:00

http://localhost:4100/api/v1/member/join/child

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "message": "NICE 본인인증을 먼저 완료해주세요...",
  "code": "NICE_IDENTITY_REQUIR..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
5, 11, 12, 13, 16, 17, 19, 20, 21페이지일반/어린이/외국인 가입과 AnyID연계 가입의 NI·DI 유지검토 범위
실제 로컬 POST child: 보호자 인증·가입 선행 상태 없음으로400 NICE_IDENTITY_REQUIRED, 회원 INSERT 없음. Swagger/UI/현황 각200. 성공 가입의 DI 라우팅은 MockMvc 전체흐름·Store 캡처·Mapper 바인딩 자동검증이며 실DB INSERT 성공 검증과 구분.

MemberRegistrationMapper: 일반 본인DI→IPIN_DPCN_PRVN_NO, 어린이 보호자 인증 세션DI→AGT_IPIN(실DB 대리인아이핀번호 VARCHAR2(200)). 어린이 본인DI·외국인 두DI는null. ANYID_DPCN_PRVN_NO INSERT는 기존대로 없음. 가입정보/약관·14세·19세·해외접속 검증은 유지.

어린이 보호자DI의 AGT_IPIN 저장 로직 보완. 보호자 인증 세션DI 우선, 어린이의 이름/생년월일/휴대전화 유지, 성인 본인DI 저장 유지. MockMvc 전체 어린이 가입 흐름·등록 Store 전달·Mapper 바인딩 자동검증 완료. 실제 DB에 신규 회원을 생성하는 가입 성공 검증은 미실행. AnyID NI 저장·실인증 및 기타 미확정 범위는 기존 판정대로 유지.

확인필요
13, 20페이지외국인 휴대전화40자, 이메일 로컬64/도메인253, 선택 성별검토 범위
쓰기 요청 미실행. 현재 DTO와SQL·검증식 확인.

RegistrationService 외국인 mobileNo<=30; 이메일전체<=320만 검사(로컬/도메인별검사 없음). Registration DTO/INSERT에 성별 없음. MemberCountryCatalog 정적 국가목록은 SSR용 제공.

PDF20의40자와 서버30자 상한 차이,13의메일부분길이·선택성별 저장범위 확인 필요. 국가목록 REST가 필요한지도 프론트 계약 확인. 이번에 입력제한·저장정책을 변경하지 않음.

확인필요
검색·필터 등 실제 HTTP 요청 3건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
400
http://localhost:4100/api/v1/member/join/child

{}

2026-10-19T13:33:12.629267+09:00일치: 실제 보호자 인증·가입 선행 단계 없이 신규 회원을 저장하지 않고 기존 NICE_IDENTITY_REQUIRED 반환24
OPTIONS
200
http://localhost:4100/api/v1/member/join/general

{}

2026-10-16T16:36:42.122521+09:00지원 메서드 확인만; 업무 저장 미실행2
OPTIONS
200
http://localhost:4100/api/v1/member/join/foreign

{}

2026-10-16T16:36:42.115488+09:00지원 메서드 확인만; 업무 저장 미실행3

만14세가된 어린이회원 일반회원 전환 시 인증 명의

/member/login

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POST만14세가된 어린이회원 일반회원 전환 시 인증 명의·생년월일 변경
/api/v1/member/identity/di/link
HTTP 성공 표본 없음 · 미실행확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
확인필요

새 PDF5페이지 하단 v0.9의 이름·생년월일 갱신·일반전환 프로세스는 현 구현과 차이. 회원구분·변경범위를 확인한 후 별도 보완 필요.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 5페이지

HTTP 조회 시각: 업무 요청 미실행

HTTP 업무 성공 표본 없음

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
null
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
5페이지만14세가된 어린이회원 일반회원 전환 시 인증 명의·생년월일 변경검토 범위
회원 변경 요청 미실행.

MemberLinkService.saveDi는 기존이름과 인증이름이 같아야 함. MemberLinkMapper.saveDi는DI만 갱신하며 MBR_NM/BRDT 변경 없음.

새 PDF5페이지 하단 v0.9의 이름·생년월일 갱신·일반전환 프로세스는 현 구현과 차이. 회원구분·변경범위를 확인한 후 별도 보완 필요.

확인필요
검색·필터 등 실제 HTTP 요청 0건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)

외국인가입/아이디찾기/비밀번호찾기 목적별 이메일 인증

/member/join/foreign/certification

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POST외국인가입/아이디찾기/비밀번호찾기 목적별 이메일 인증
/api/v1/member/email-verification/send
HTTP 503 · JSON확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
프론트에서 검증

프론트에서 검증: 메일·Any-ID 관련 검증을 이관합니다. 사용자 지정 수신주소 ikjus1@naver.com·FIND_ID 실제 POST는503 EMAIL_SEND_UNAVAILABLE. 실제 설정 delivery-enabled=false이며 success-response가 없음. 실제 메일 미발송, 인증번호 성공 검증 미실행. 성공 응답 규격 확인 전 임의값 설정·검증 우회하지 않음. 제공된 메일 PPT 9장(특히2·3쪽)을 검토했으며 제목/발신자/수신자/본문 예시는 있으나 API 성공 응답 본문 규격은 없다.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 19, 24, 28페이지

HTTP 조회 시각: 2026-10-19T02:04:28.038632+00:00

http://localhost:4100/api/v1/member/email-verification/send

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "code": "EMAIL_SEND_UNAVAILAB...",
  "message": "이메일을 발송할 수 없습니다. 잠시 ..."
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
19, 24, 28페이지외국인가입/아이디찾기/비밀번호찾기 목적별 이메일 인증검토 범위
2026-10-19 localhost:4100 실제 HTTP. public-http.json/member-http.json 및 읽기 전용 DB 증거 참조.

EmailVerificationPurpose FOREIGN_JOIN/FIND_ID/RESET_PASSWORD; 세션 내 목적·이메일별 검증. 로컬 start-dev는 이메일인증 provider mock을 기본 주입.

사용자 지정 수신주소 ikjus1@naver.com·FIND_ID 실제 POST는503 EMAIL_SEND_UNAVAILABLE. 실제 설정 delivery-enabled=false이며 success-response가 없음. 실제 메일 미발송, 인증번호 성공 검증 미실행. 성공 응답 규격 확인 전 임의값 설정·검증 우회하지 않음. 제공된 메일 PPT 9장(특히2·3쪽)을 검토했으며 제목/발신자/수신자/본문 예시는 있으나 API 성공 응답 본문 규격은 없다.

프론트에서 검증
검색·필터 등 실제 HTTP 요청 2건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
POST
503
http://localhost:4100/api/v1/member/email-verification/send

{}

2026-10-19T02:04:28.038632+00:00실제 HTTP 응답. 필터 값 검증 범위는 PDF별 MD 및 대조표 참조.8
OPTIONS
200
http://localhost:4100/api/v1/member/email-verification/send

{}

2026-10-16T16:36:42.129053+09:00지원 메서드 확인만; 업무 저장 미실행2

이름+이메일 인증 후 동일회원의 전체 아이디 목록

/member/find/id/email

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POST이름+이메일 인증 후 동일회원의 전체 아이디 목록
/api/v1/member/find/id/email
HTTP 200 · 지원 메서드 확인만확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
프론트에서 검증

프론트에서 검증: 메일·Any-ID 관련 검증을 이관합니다. 전체아이디 반환 구조는 PDF26과 일치. 이름20자 규칙과 현재100자 차이는 별도보완 후보. 실제인증후조회는 미검증.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 23, 24, 25, 26페이지

HTTP 조회 시각: 2026-10-16T16:36:42.141613+09:00

http://localhost:4100/api/v1/member/find/id/email

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "textExcerpt": ""
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
23, 24, 25, 26페이지이름+이메일 인증 후 동일회원의 전체 아이디 목록검토 범위
OPTIONS200 POST지원; 메일인증 성공세션 없어 업무조회 미실행.

MemberIdRecoveryMapper 이름+LOWER이메일+활성/미탈퇴 조건, REG_DT DESC로 List<String> 반환. 서버이름상한100,PDF24의20자와 차이.

전체아이디 반환 구조는 PDF26과 일치. 이름20자 규칙과 현재100자 차이는 별도보완 후보. 실제인증후조회는 미검증.

프론트에서 검증
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
OPTIONS
200
http://localhost:4100/api/v1/member/find/id/email

{}

2026-10-16T16:36:42.141613+09:00지원 메서드 확인만; 업무 저장 미실행2

아이디+DI 또는 아이디+이름+메일검증후 비밀번호변경,기존비밀번호재사용거부

/member/find/password/reset

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf

API·조회 항목 1개

POST아이디+DI 또는 아이디+이름+메일검증후 비밀번호변경,기존비밀번호재사용거부
/api/v1/member/find/password/reset
HTTP 200 · 지원 메서드 확인만확인 항목 1개최신 업데이트: 변경일 미기록펼치기접기
프론트에서 검증

프론트에서 검증: 메일·Any-ID 관련 검증을 이관합니다. 기획분기 코드존재. 이름상한100 vs PDF28의20자 차이. 비밀번호 실제변경 성공은 검증하지 않음.

KOFA2_DE304_KOFA홈페이지_화면정의서(로그인)_v1.2.pdf · PDF 27, 28, 29, 30페이지

HTTP 조회 시각: 2026-10-16T16:36:42.154038+09:00

http://localhost:4100/api/v1/member/find/password/reset

조회 조건: {}

HTTP 결과 · 업무 성공 데이터와 구분

응답 body 객체 전체 · 문자열 값은 최대 20자 표시
{
  "htmlResponse": true,
  "textExcerpt": ""
}
기획 데이터 대조 · PDF 항목별 실제 값·매핑 근거
PDF 페이지필요 데이터응답 키·실제 값·매핑판정
27, 28, 29, 30페이지아이디+DI 또는 아이디+이름+메일검증후 비밀번호변경,기존비밀번호재사용거부검토 범위
verify/email 및 reset OPTIONS200 POST지원. 비밀번호변경 미실행.

PasswordRecoveryServiceImpl의 검증토큰·기존비밀번호해시비교. MBR_PSWD/PSWD_CHG_DT갱신 경로.

기획분기 코드존재. 이름상한100 vs PDF28의20자 차이. 비밀번호 실제변경 성공은 검증하지 않음.

프론트에서 검증
검색·필터 등 실제 HTTP 요청 1건
HTTP요청 URL·조건조회 시각응답 조건 검증소요(ms)
OPTIONS
200
http://localhost:4100/api/v1/member/find/password/reset

{}

2026-10-16T16:36:42.154038+09:00지원 메서드 확인만; 업무 저장 미실행2