본문 바로가기
Projects/청하-청년을 위한 커뮤니티 서비스

[청하] 청년정책 Open API 개편에 따른 데이터 비교 (기존 vs 개선후)

by Lpromotion 2025. 5. 15.

목차
 

1. 기존 필드와 새로운 API 필드 매칭

기존 필드에서 새로운 API 필드로 변환 가능 여부 분석

기존 필드
(Response)
기존 DTO
(YouthPolicyResponseDto.java)
기존 필드 설명
(Response)
새로운 API 필드
(youthPolicyList)
새로운 API 필드 설명
(youthPolicyList)
매칭 가능 여부
id bizId 정책 id plcyNo 정책번호 ✅ (DTO 필드명 변경)
title polyBizSjnm   plcyNm 정책명 ✅ (DTO 필드명 변경)
introduce polyItcnCn 정책 소개 plcyExplnCn 정책설명내용 ✅ (DTO 필드명 변경)
classification polyRlmCd 정책 분야 코드 bscPlanPlcyWayNo 기본계획정책방향번호 ⚠️ (정책 분야 코드 변경됨 - 기본계획정책방향API 참고)
applicationDetails sporCn 신청 세부 사항 plcySprtCn 정책지원내용 ✅ (DTO 필드명 변경)
region polyBizSecd 지역 코드 zipCd 정책거주지역코드 ⚠️ (지역필터링 데이터가 없어짐 - 해당 필드를 사용한다면 데이터 변경 필요)
ageInfo ageInfo 연령 정보 sprtTrgtAgeLmtYn 지원대상연령제한여부 ⚠️ (N: 제한O, Y: 제한X)
. . . sprtTrgtMinAge 지원대상최소연령 최소/최대 연령 정보를 이용하여 변경 필요
. . . sprtTrgtMaxAge 지원대상최대연령 최소/최대 연령 정보를 이용하여 변경 필요
residenceAndIncome prcpCn 거주지 및 소득 조건 zipCd 정책거주지역코드 ⚠️ (거주지역코드가 법정동코드로 제공됨 - 코드 매칭 구현에 대한 고민 필요)
, . , earnMinAmt 소득최소금액 소득 최소/최대 금액이 0일 경우 "무관"
. . . earnMaxAmt 소득최대금액 소득 최소/최대 금액이 0일 경우 "무관"
. . . earnEtcCn 소득기타내용  
education accrRqisCn 학력 요건 schoolCd 정책학력요건코드 ✅ (DTO 필드명 변경)
specialization splzRlmRqisCn 전공 요건 sbizCd 정책특화요건코드 ✅ (DTO 필드명 변경)
additionalNotes aditRscn 추가 사항 addAplyQlfcCndCn 추가신청자격조건내용 ✅ (DTO 필드명 변경)
participationRestrictions prcpLmttTrgtCn 참여 제한 사항 ptcpPrpTrgtCn 참여제안대상내용 ✅ (DTO 필드명 변경)
applicationProcess rqutProcCn 신청 절차 plcyAplyMthdCn 정책신청방법내용 ✅ (DTO 필드명 변경)
screeningAndAnnouncement jdgnPresCn 심사 발표 내용 srngMthdCn 심사방법내용 ✅ (DTO 필드명 변경)
applicationSite rqutUrla 신청 사이트 주소 aplyUrlAddr 신청URL주소 ✅ (DTO 필드명 변경)
submissionDocuments pstnPaprCn 제출 서류 내용 sbmsnDcmntCn 제출서류내용 ✅ (DTO 필드명 변경)
additionalUsefulInformation etct 기타 유익 정보 etcMttrCn 기타사항내용 ✅ (DTO 필드명 변경)
supervisingAuthority mngtMson 주관 기관 sprvsnInstCdNm 주관기관코드명 ✅ (DTO 필드명 변경)
operatingOrganization cnsgNmor 운영 기관 operInstCdNm 운영기관코드명 ✅ (DTO 필드명 변경)
businessRelatedReferenceSite1 rfcSiteUrla1 사업관련 참고 사이트1 refUrlAddr1 참고URL주소 ✅ (DTO 필드명 변경)
businessRelatedReferenceSite2 rfcSiteUrla2 사업관련 참고 사이트2 refUrlAddr2 참고URL주소 ✅ (DTO 필드명 변경)

 

거주지

새로운 API

기존보다 자세한 지역 정보 제공함.

 

청하

청하에서는 거주지와 소득을 함께 제공함. → 거주지 정보가 구체적으로 변경됨에 따라 “거주지(거주지역)”과 “소득”을 분리하는 것이 어떨지 고려 필요.

 

간단 정리

 

 

새로운 API 비교할 만한 데이터

  • https://www.youthcenter.go.kr/youthPolicy/ythPlcyTotalSearch/ythPlcyDetail/20250220005400210475?isNew=Y
{
  "plcyNo": "20250220005400210475",
  "bscPlanCycl": "1",
  "bscPlanPlcyWayNo": "001",
  "bscPlanFcsAsmtNo": "001",
  "bscPlanAsmtNo": "002",
  "pvsnInstGroupCd": "0054002",
  "plcyPvsnMthdCd": "0042013",
  "plcyNm": "대구광역시 청년 국가기술자격시험 응시료 지원",
  "plcyExplnCn": "미취업 청년에게 사회진출 시 필요한 자격증 응시료 지원을 통해 경제적 부담을 경감하고 사회진입 활성화를 도모 및 취업 준비 비용을 지원",
  "plcySprtCn": "❍ 지원대상 : 19세 ~ 39세 대구광역시 거주(주민등록) 미취업 청년\n  ※ 응시일 현재 미취업자   * 2025. 1. 1. 이후 실시한 시험  \n❍ 모집인원 : 매월 70명 정도\n❍ 지원내용 : 당해연도 응시한 시험에 한해 1인 3회, 최대 10만원이내 실비지원\n  ※ 동종시험에 한해 필기시험·실기시험, 1차·2차 구분없이 총 3회까지 신청 가능\n❍ 지원종목 : 국가기술자격시험 ※ 국가기술자격법 시행규칙 별표2. \n❍ 신청기간 : ’25. 3월 ~ ’25. 11월(매월 20일부터 선착순 접수)\n❍ 신청방법 : 온라인* 신청(구글 설문지를 통한 신청) 및 방문 신청(청년센터 활동그래)\n   * 청년커뮤니티포털 ‘젊프’(www.dgjump.com), 청년센터 홈페이지(www.dgyouth.kr)   \n❍ 자격요건\n    - 거주요건 : 신청일 현재 대구광역시에 주민등록이 되어 있는 청년\n    - 연    령 : 19세 ~ 39세\n    - 취업여부 : 미취업자(신청일 현재 고용보험 미가입자)\n   * 단, 고용보험 가입되어 있더라도 고용보험 가입 3개월 이하 또는 주30시간 이하 단기근로자일 \n      경우 지원 가능\n❍ 보다 자세한 사항은 “청년센터 홈페이지”\n   (http://www.dgyouth.kr/) ⇒ 공지사항을 참고하시기 바랍니다.",
  "sprvsnInstCd": "6270000",
  "sprvsnInstCdNm": "대구광역시",
  "sprvsnInstPicNm": "오지은",
  "operInstCd": "       ",
  "operInstCdNm": "",
  "operInstPicNm": "대구광역시청년센터",
  "sprtSclLmtYn": "N",
  "aplyPrdSeCd": "0057001",
  "bizPrdSeCd": "0056001",
  "bizPrdBgngYmd": "20250320",
  "bizPrdEndYmd": "20251231",
  "bizPrdEtcCn": "",
  "plcyAplyMthdCn": "온라인 신청(구글 설문지를 통한 신청) 및 방문 신청(청년센터 활동그래)\n* 청년커뮤니티포털 ‘젊프’(www.dgjump.com), 청년센터 홈페이지(www.dgyouth.kr)",
  "srngMthdCn": "❍ 신청 다음달의 15일 경에 발표(상황에 따라 2~3일 차이가 있을 수 있음)\n - 문자메시지로 통보하므로 만약 오지 않았을 경우 스팸문자함 등을 확인",
  "aplyUrlAddr": "http://www.dgyouth.kr/",
  "sbmsnDcmntCn": "○ (필수) 주민등록초본\n○ (필수) 건강보험자격득실확인서\n○ (필수) 사업자등록사실증명\n○ (필수) 시험응시 증빙자료(응시 확인서)\n○ (필수) 응시료 결제영수증\n○ (필수) 본인명의 통장사본\n○ (선택) 근로계약서 1부 \n  ☞ 고용보험 가입 3개월 이하 또는 주 30시간 이하 단기근로자 제출",
  "etcMttrCn": "",
  "refUrlAddr1": "",
  "refUrlAddr2": "",
  "sprtSclCnt": "0",
  "sprtArvlSeqYn": "N",
  "sprtTrgtMinAge": "19",
  "sprtTrgtMaxAge": "39",
  "sprtTrgtAgeLmtYn": "N",
  "mrgSttsCd": "0055003",
  "earnCndSeCd": "0043001",
  "earnMinAmt": "0",
  "earnMaxAmt": "0",
  "earnEtcCn": "",
  "addAplyQlfcCndCn": "❍ (연 령) 신청월 기준 19세∼39세 청년\n   [“3월 응시료 지원”을 신청하는 경우(신청기간 3.20.~4.15.) : 1987. 4월생 ∼ 2006. 3월생 \n   신청 가능\n❍ (거 주) 신청일 현재 주민등록상 대구광역시 거주자\n❍ (취 업) 미취업자 대상(고용보험 미가입자)\n   - 단, 고용보험 가입되어 있더라도 고용보험 가입 3개월 이하 또는 주30시간 이하 단기근로자일 \n     경우 신청 가능\n❍ 위 조건을 모두 만족해야 합니다",
  "ptcpPrpTrgtCn": "",
  "inqCnt": "75",
  "rgtrInstCd": "6270000",
  "rgtrInstCdNm": "대구광역시",
  "rgtrUpInstCd": "0000000",
  "rgtrUpInstCdNm": "대구광역시",
  "rgtrHghrkInstCd": "6270000",
  "rgtrHghrkInstCdNm": "대구광역시",
  "zipCd": "27110,27140,27170,27200,27230,27260,27290,27710,27720",
  "plcyMajorCd": "0011009",
  "jobCd": "0013003",
  "schoolCd": "0049010",
  "aplyYmd": "20250320 ~ 20251120",
  "frstRegDt": "2025-02-20 10:05:18",
  "lastMdfcnDt": "2025-02-20 14:47:09",
  "sbizCd": "0014010"
},

 

  • https://www.youthcenter.go.kr/youthPolicy/ythPlcyTotalSearch/ythPlcyDetail/20250221005400110546?isNew=Y
{
  "plcyNo": "20250221005400110546",
  "bscPlanCycl": "1",
  "bscPlanPlcyWayNo": "001",
  "bscPlanFcsAsmtNo": "002",
  "bscPlanAsmtNo": "004",
  "pvsnInstGroupCd": "0054001",
  "plcyPvsnMthdCd": "0042013",
  "plcyNm": "창업도약패키지(투자병행형) 창업기업 모집",
  "plcyExplnCn": "도약기 창업기업의 비즈니스 모델 혁신 및 제품·서비스 고도화 지원",
  "plcySprtCn": "사업화자금과 투자유치 동시 지원",
  "sprvsnInstCd": "1421000",
  "sprvsnInstCdNm": "중소벤처기업부",
  "sprvsnInstPicNm": "",
  "operInstCd": "       ",
  "operInstCdNm": "",
  "operInstPicNm": "",
  "sprtSclLmtYn": "N",
  "aplyPrdSeCd": "0057001",
  "bizPrdSeCd": "0056002",
  "bizPrdBgngYmd": "        ",
  "bizPrdEndYmd": "        ",
  "bizPrdEtcCn": "협약시작일로부터 10개월 내외",
  "plcyAplyMthdCn": "K-Startup 누리집 온라인 신청",
  "srngMthdCn": "",
  "aplyUrlAddr": "",
  "sbmsnDcmntCn": "",
  "etcMttrCn": "",
  "refUrlAddr1": "",
  "refUrlAddr2": "",
  "sprtSclCnt": "0",
  "sprtArvlSeqYn": "N",
  "sprtTrgtMinAge": "0",
  "sprtTrgtMaxAge": "0",
  "sprtTrgtAgeLmtYn": "Y",
  "mrgSttsCd": "0055003",
  "earnCndSeCd": "0043001",
  "earnMinAmt": "0",
  "earnMaxAmt": "0",
  "earnEtcCn": "",
  "addAplyQlfcCndCn": "",
  "ptcpPrpTrgtCn": "",
  "inqCnt": "72",
  "rgtrInstCd": "1421000",
  "rgtrInstCdNm": "중소벤처기업부",
  "rgtrUpInstCd": "0000000",
  "rgtrUpInstCdNm": "중소벤처기업부",
  "rgtrHghrkInstCd": "1421000",
  "rgtrHghrkInstCdNm": "중소벤처기업부",
  "zipCd": "11110,11140,11170,11200,11215,11230,11260,11290,11305,11320,11350,11380,11410,11440,11470,11500,11530,11545,11560,11590,11620,11650,11680,11710,11740,26110,26140,26170,26200,26230,26260,26290,26320,26350,26380,26410,26440,26470,26500,26530,26710,27110,27140,27170,27200,27230,27260,27290,27710,27720,28110,28140,28177,28185,28200,28237,28245,28260,28710,28720,29110,29140,29155,29170,29200,30110,30140,30170,30200,30230,31110,31140,31170,31200,31710,36110,41111,41113,41115,41117,41131,41133,41135,41150,41171,41173,41192,41194,41196,41210,41220,41250,41271,41273,41281,41285,41287,41290,41310,41360,41370,41390,41410,41430,41450,41461,41463,41465,41480,41500,41550,41570,41590,41610,41630,41650,41670,41800,41820,41830,43111,43112,43113,43114,43130,43150,43720,43730,43740,43745,43750,43760,43770,43800,44131,44133,44150,44180,44200,44210,44230,44250,44270,44710,44760,44770,44790,44800,44810,44825,46110,46130,46150,46170,46230,46710,46720,46730,46770,46780,46790,46800,46810,46820,46830,46840,46860,46870,46880,46890,46900,46910,47111,47113,47130,47150,47170,47190,47210,47230,47250,47280,47290,47730,47750,47760,47770,47820,47830,47840,47850,47900,47920,47930,47940,48121,48123,48125,48127,48129,48170,48220,48240,48250,48270,48310,48330,48720,48730,48740,48820,48840,48850,48860,48870,48880,48890,50110,50130,51110,51130,51150,51170,51190,51210,51230,51720,51730,51750,51760,51770,51780,51790,51800,51810,51820,51830,52111,52113,52130,52140,52180,52190,52210,52710,52720,52730,52740,52750,52770,52790,52800",
  "plcyMajorCd": "0011009",
  "jobCd": "0013006",
  "schoolCd": "0049010",
  "aplyYmd": "20250220 ~ 20250313",
  "frstRegDt": "2025-02-21 17:26:59",
  "lastMdfcnDt": "2025-02-21 17:28:26",
  "sbizCd": "0014010"
},

 

2. 기존에 없던 필드 (새로운 API에서 추가된 필드)

새로운 API에서 제공하지만 기존 Entity/DTO에는 없던 필드들

새로운 API 필드 설명 비고 추가 고려
bscPlanAsmtNo 기볼계획과제번호    
sprvsnInstCd 주관기관코드    
sprvsnInstPicNm 주관기관담당자명    
operInstPicNm 운영기관담당자명    
sprtSclLmtYn 지원규모제한여부    
aplyPrdSeCd 신청기간구분코드    
bizPrdSeCd 사업기간구분코드    
bizPrdBgngYmd 사업기간시작일자 사업 운영 기간 O
bizPrdEndYmd 사업기간종료일자 사업 운영 기간 O
bizPrdEtcCn 사업기간기타내용    
inqCnt 조회수    
plcyMajorCd 정책전공요건코드    
jobCd 정책취업요건코드    
bscPlanCycl 기본계획차수    
sprtSclCnt 지원규모수 지원 규모(명) O
sprtArvlSeqYn 지원도착순서여부    
mrgSttsCd 결혼상태코드    
earnCndSeCd 소득조건구분코드    
frstRegDt 최초등록일시    
lastMdfcnDt 최종수정일시    
bscPlanFcsAsmtNo 기본계획중점과제번호    
pvsnInstGroupCd 제공기관그룹코드    
plcyPvsnMthdCd 정책제공방법코드    
plcyAprvSttsCd 정책승인상태코드    
aplyYmd 신청기간 사업 신청 기간 O
rgtrInstCd 등록자기관코드    
rgtrInstCdNm 등록자기관코드명    
rgtrHghrkInstCd 등록자최상위기관코드    
rgtrHghrkInstCdNm 등록자최상위기관코드명    

 

개편된 온통청년 페이지에서 해당 데이터를 제공함. 이에 따라 청하에서도 위 데이터를 활용할지 고려 필요.

 

3. 추가 고려/작업할 사항

  1. 지역 코드(법정동 코드) 매칭은 마지막 단계에서 구현
    • 현재는 정책 API 연동 및 다른 기능을 우선적으로 개발
    • https://www.code.go.kr/stdcode/regCodeL.do
      ”행정표준코드관리시스템”에서 지역코드 자료 제공
      • 정책 API에서 제공하는 zipCd(앞 5자리)로 조회
        예) 43111 → 43111000000 검색 → 충청북도 청주시 상당구
    • 지역 매칭 로직은 캐싱을 활용하는 방식으로 고려 중
      • 법정동 코드 변환을 캐시로 빠르게 처리 가능
      • 처음 한 번만 데이터 매핑하면 이후 API 요청마다 빠르게 변환 가능
  2. 필터링을 위해 제공하던 지역 정보를 지역 코드(법정동 코드)를 기반으로 변환
    • zipCd(5자리)를 광역시·도 코드(9자리)로 변환하여 EPolicyRegion과 매핑
    • fromCode(String code) 메서드 수정하여 zipCd를 입력받아 자동 변환
    • HashMap을 활용하여 법정동 코드에서 광역시·도 코드 매핑을 빠르게 조회
반응형

댓글