똑똑청년농부 – Open API 매뉴얼

지원사업, 교육 및 청년사례

데이터 제공 서비스

OPEN API 이용 안내

1. 개요

똑똑청년농부 OpenAPI는 다양한 지원사업, 교육 및 청년사례를 유용하게 활용할 수 있도록 공개한 개발자 인터페이스입니다.

2. 이용안내

똑똑청년농부 OpenAPI를 이용하기 위해서는 로그인 한 후 별도의 신청이 필요합니다.

똑똑청년농부의 [Open API 이용안내] 페이지에서 Open API 서비스 신청, 매뉴얼 및  샘플 파일을 다운로드 받을 수 있습니다.

3. 제공 API서비스

3.1 Open API 제공 방식

똑똑청년농부 Open API는 XML, JSON 포맷을 사용한 REST방식과 동적 JavaScript 로딩을 이용한 AJAX 방식을 제공합니다.

3.2 텍스트 인코딩

똑똑청년농부 Open API는 모든 텍스트 데이터를 UTF-8로 제공합니다.

3.3.1 지원사업,교육 - REST 방식의 XML 포맷 구조(목록 형식)

1Level	2Level	3Level	4Level	5Level	설명
root					root Tag
	list				list Tag
		chargeAgency			주관기관
		applStDt			신청시작일
		title			제목
		contents			콘텐츠
		...			...
	paging				페이징
		lastPage			마지막 페이지
		endPage			끝 페이지
		totalCount			총 건수 (페이징 처리 시 제공)
		currentPage			현재 페이지
		...			...

3.3.2 지원사업,교육 - REST 방식의 XML 포맷 구조(단건 형식)

1Level	2Level	3Level	4Level	설명
root				root Tag
	result			result Tag
		applStDt		신청시작일
		applEdDt		신청종료일
		price		지원금액
		totQuantity		총 수량
		chargeAgency		담당기관
		title		제목
		...		...

3.4.1 청년사례 - REST 방식의 XML 포맷 구조(목록 형식)

1Level	2Level	3Level	4Level	5Level	설명
root					root Tag
	list				list Tag
		bbsSeq			게시글 시퀀스
		bbsId			게시글 ID
		title			제목
		contents			내용
		bbsInfo03			농가명(이름)
		bbsInfo04			품목명
		viewFiles
			oname		파일명
			ftype		파일 타입
			fext		파일확장자
			...		...
		...			...
	paging				페이징
		lastPage			마지막 페이지
		endPage			끝 페이지
		totalCount			총 건수 (페이징 처리 시 제공)
		currentPage	...		현재 페이지

3.4.2 청년사례 - REST 방식의 XML 포맷 구조(단건 형식)

1Level	2Level	3Level	4Level	설명
root				root Tag
	result			result Tag
		bbsSeq		게시글 시퀀스
		bbsId		게시글 ID
		title		제목
		contents		내용
		bbsInfo03		농가명(이름)
		bbsInfo04		품목명
		...		...

4. API 레퍼런스

4.1 지원사업

● 제공방식 : REST, AJAX

● 제공 오퍼레이션

오퍼레이션	설명	목록	페이징
지원사업 목록	지원사업 목록 제공	○	○

4.1.1 오퍼레이션 설명

4.1.1.1 지원사업 목록 제공

● 요청 URL : 지원사업 – https://rda.go.kr/young/api/policyList

● 요청 변수(Request Parameters)

요청변수	설명	필수 여부	샘플
serviceKey	인증키	○
search_keyword	제목 및 내용 검색 키워드		사업
search_area1	지역코드 ( 광역시 / 도 )		00 : 전국 11 : 서울 21 : 부산 22 : 대구 23 : 인천 24 : 광주 25 : 대전 26 : 울산 29 : 세종 31 : 경기 32 : 강원 33 : 충북 34 : 충남 35 : 전북 36 : 전남 37 : 경북 38 : 경남 39 : 제주
sd	신청 시작일		2023-01-01
ed	신청 마감일		2023-12-01
cp	페이지 번호		2
rowCnt	페이지당 보여줄 row 수		2
typeDv	리턴타입 json, xml 아무것도 입력하지 않을시 json 타입으로 리턴됩니다.		json,xml

● 응답 결과(Response Element)

응답오브젝트	응답변수	옵션	설명
list		공통	게시글 리스트
	seq	공통	게시글 순번
	typeDv	공통	게시글 타입(edu:교육, policy:사업)
	title	공통	제목
	contents	공통	내용
	applStDt	공통	신청시작일
	applEdDt	공통	신청마감일
	eduTarget	공통	지원대상 / 교육대상
	area1Nm	공통	지역명(도)
	area2Nm	공통	지역명(시군구)
	chargeAgency	공통	담당기관 / 주관기관
	chargeDept	공통	담당부서
	chargeTel	공통	담당부서 전화번호
	infoUrl	공통	공고 URL
	eduStDt	교육	교육신청 시작일
	eduEdDt	교육	교육신청 마감일
	eduTime	교육	교육시간
	eduCnt	교육	교육인원
	totQuantity	사업	총 수량
	price	사업	지원 금액
	eduMethod	교육	교육방식1
	eduMethod2	교육	교육방식2
	eduMethod3	교육	교육방식3
paging			페이징 리스트
	currentPage	공통	현재페이지
	beginRow	공통	시작 ROW
	pagePerRow	공통	페이지당 ROW 수
	startPage	공통	시작페이지 번호
	pageSize	공통	페이징 사이즈
	endPage	공통	끝페이지 번호
	lastPage	공통	총 페이지 개수
	totalCount	공통	총 게시글 개수

4.2 교육

● 제공방식 : REST, AJAX

● 제공 오퍼레이션

오퍼레이션	설명	목록	페이징
교육 목록	교육 목록 제공	○	○

4.2.1 오퍼레이션 설명

4.2.1.1 교육 목록 제공

● 요청 URL : 교육 – https://rda.go.kr/young/api/eduList

● 요청 변수(Request Parameters)

요청변수	설명	필수 여부	샘플
serviceKey	인증키	○
search_keyword	제목 및 내용		교육
search_area1	지역코드 ( 광역시 / 도 )		00 : 전국 11 : 서울 21 : 부산 22 : 대구 23 : 인천 24 : 광주 25 : 대전 26 : 울산 29 : 세종 31 : 경기 32 : 강원 33 : 충북 34 : 충남 35 : 전북 36 : 전남 37 : 경북 38 : 경남 39 : 제주
sd	신청 시작일		2023-01-01
ed	신청 마감일		2023-12-01
cp	페이지 번호		2
rowCnt	페이지당 보여줄 row 수		2
typeDv	리턴타입 json, xml	○	json,xml

● 응답 결과(Response Element)

응답오브젝트	응답변수	옵션	설명
list		공통	게시글 리스트
	seq	공통	게시글 순번
	typeDv	공통	게시글 타입(edu:교육, policy:사업)
	title	공통	제목
	contents	공통	내용
	applStDt	공통	신청시작일
	applEdDt	공통	신청마감일
	eduTarget	공통	지원대상 / 교육대상
	area1Nm	공통	지역명(도)
	area2Nm	공통	지역명(시군구)
	chargeAgency	공통	담당기관 / 주관기관
	chargeDept	공통	담당부서
	chargeTel	공통	담당부서 전화번호
	infoUrl	공통	공고 URL
	eduStDt	교육	교육신청 시작일
	eduEdDt	교육	교육신청 마감일
	eduTime	교육	교육시간
	eduCnt	교육	교육인원
	totQuantity	사업	총 수량
	price	사업	지원 금액
	eduMethod	교육	교육방식1
	eduMethod2	교육	교육방식2
	eduMethod3	교육	교육방식3
paging			페이징 리스트
	currentPage	공통	현재페이지
	beginRow	공통	시작 ROW
	pagePerRow	공통	페이지당 ROW 수
	startPage	공통	시작페이지 번호
	pageSize	공통	페이징 사이즈
	endPage	공통	끝페이지 번호
	lastPage	공통	총 페이지 개수
	totalCount	공통	총 게시글 개수

4.3 청년사례

● 제공방식 : REST, AJAX

● 제공 오퍼레이션

오퍼레이션	설명	목록	페이징
청년사례 목록	청년사례 목록 제공	○	○

4.3.1 오퍼레이션 설명

4.3.1.1 청년사례 목록 제공

● 요청 URL : https://rda.go.kr/young/api/youthList

● 요청 변수(Request Parameters)

요청변수	설명	필수 여부	샘플
serviceKey	인증키	○
search_keyword	제목 및 내용 검색 키워드		청양
sCode	청년사례 게시판 분류코드 01 : 청년농영상, 02 : 청년농소개, 03 : 기술우수사례, 04 : 극복ㆍ실패사례	○	01, 02, 03, 04
cp	페이지 번호		2
rowCnt	페이지당 보여줄 row 수
typeDv	리턴타입 json, xml	○	json,xml

● 응답 결과(Response Element)

응답변수	설명
bbsSeq	게시글 시퀀스
bbsId	게시글 ID
title	제목
contents	내용
bbsInfo03	농가명(이름)
bbsInfo04	품목명
bbsInfo07	출처
bbsInfo08	외부 주소
area1Nm	지역명(광역시/도)
area2Nm	지역명(시군구)

4.4 지원사업 상세

● 제공방식 : REST, AJAX

● 제공 오퍼레이션

오퍼레이션	설명	목록	페이징
지원사업 상세	지원사업 상세정보 조회	○

4.4.1 오퍼레이션 설명

4.4.1.2 지원사업 상세정보 조회

● 요청 URL : 지원사업 상세정보 조회 – https://rda.go.kr/young/api/policyView

● 요청 변수(Request Parameters)

요청변수	설명	필수 여부	샘플
serviceKey	인증키	○
seq	게시글 번호	○	6950
typeDv	리턴타입 json, xml	○	json, xml

● 응답 결과(Response Element)

응답오브젝트	응답변수	옵션	설명
result		공통	게시글 리스트
	seq	공통	게시글 순번
	typeDv	공통	게시글 타입(edu:교육, policy:사업)
	title	공통	제목
	contents	공통	내용
	applStDt	공통	신청시작일
	applEdDt	공통	신청마감일
	eduTarget	공통	지원대상 / 교육대상
	area1Nm	공통	지역명(도)
	area2Nm	공통	지역명(시군구)
	chargeAgency	공통	담당기관 / 주관기관
	chargeDept	공통	담당부서
	chargeTel	공통	담당부서 전화번호
	infoUrl	공통	공고 URL
	eduStDt	교육	교육신청 시작일
	eduEdDt	교육	교육신청 마감일
	eduTime	교육	교육시간
	eduCnt	교육	교육인원
	totQuantity	사업	총 수량
	price	사업	지원 금액
	eduMethod	교육	교육방식1
	eduMethod2	교육	교육방식2
	eduMethod3	교육	교육방식3

4.5 교육 상세

● 제공방식 : REST, AJAX

● 제공 오퍼레이션

오퍼레이션	설명	목록	페이징
교육 상세	교육 상세정보 조회	○

4.5.1 오퍼레이션 설명

4.5.1.2 교육 상세정보 조회

● 요청 URL : 교육 상세정보 조회 – https://rda.go.kr/young/api/eduView

● 요청 변수(Request Parameters)

요청변수	설명	필수 여부	샘플
serviceKey	인증키	○
seq	게시글 번호	○	6942
typeDv	리턴타입 json, xml	○	json, xml

● 응답 결과(Response Element)

응답오브젝트	응답변수	옵션	설명
result		공통	게시글 리스트
	seq	공통	게시글 순번
	typeDv	공통	게시글 타입(edu:교육, policy:사업)
	title	공통	제목
	contents	공통	내용
	applStDt	공통	신청시작일
	applEdDt	공통	신청마감일
	eduTarget	공통	지원대상 / 교육대상
	area1Nm	공통	지역명(도)
	area2Nm	공통	지역명(시군구)
	chargeAgency	공통	담당기관 / 주관기관
	chargeDept	공통	담당부서
	chargeTel	공통	담당부서 전화번호
	infoUrl	공통	공고 URL
	eduStDt	교육	교육신청 시작일
	eduEdDt	교육	교육신청 마감일
	eduTime	교육	교육시간
	eduCnt	교육	교육인원
	totQuantity	사업	총 수량
	price	사업	지원 금액
	eduMethod	교육	교육방식1
	eduMethod2	교육	교육방식2
	eduMethod3	교육	교육방식3

4.6 청년사례 상세

● 제공방식 : REST, AJAX

● 제공 오퍼레이션

오퍼레이션	설명	목록	페이징
청년사례 상세	청년사례 상세정보 조회	○

4.6.1 오퍼레이션 설명

4.6.1.2 청년사례 상세정보 조회

● 요청 URL : 청년사례 상세정보 조회 – https://rda.go.kr/young/api/youthView

● 요청 변수(Request Parameters)

요청변수	설명	필수 여부	샘플
serviceKey	인증키	○
sCode	청년사례 게시판 분류코드 01 : 청년농영상, 02 : 청년농소개, 03 : 기술우수사례, 04 : 극복ㆍ실패사례	○	01, 02, 03 ,04
seq	게시글 번호	○	68
typeDv	리턴타입 json, xml	○	json, xml

● 응답 결과(Response Element)

응답오브젝트	응답변수	옵션	설명
result		공통	게시글 리스트
	bbsSeq	공통	게시글 시퀀스
	bbsId	공통	게시글 ID
	title	공통	제목
	contents	공통	내용
	bbsInfo03	공통	농가명(이름)
	bbsInfo04	공통	품목명
	bbsInfo07	공통	출처
	bbsInfo08	공통	외부 주소
	viewFiles	공통	등록 파일 정보
	area1Nm	공통	지역명(광역시/도)
	area2Nm	공통	지역명(시군구)

5. Open API 결과코드

결과코드	설명
-1	요청 처리중 오류가 발생한 경우
-2	요청한 페이지가 존재하지 않는 경우
-3	권한이 없는 경우
-97	API 요청 URL이 잘못된 경우
-98	API 호출 키가 유효하지 않는 경우

6. Ajax 방식 샘플 소스

6.1 지원사업, 교육 샘플 소스

<script>

window.onload = function() {

var httpReq = null;

// AJAX 객체 생성

if(window.XMLHttpRequest) { // IE 7.0 이상, Non-Microsoft browsers

httpReq = new XMLHttpRequest();

} else if(window.ActiveXObject) { // IE 7 미만

httpReq = new ActiveXObject("Msxml2.XMLHTTP");

}

var url = "https://www.rda.go.kr/young/api/edu/json";

var query = "";

query += "?serviceKey=인증키"; // 변경할 부분

query += "&rowCnt=10";

url = url+query;

// GET 방식으로 서버에 전송

httpReq.open("GET", url, true);

httpReq.send(null);

// 서버에서 처리한 결과

httpReq.onreadystatechange = (()=>{

if(httpReq.readyState == 4) { // 요청상태(4:모든 요청 및 응답 완료)

if(httpReq.status == 200) { // 서버로 부터 넘겨 받은 상태코드(200:성공)

var result = httpReq.responseText;

//console.log(JSON.parse(result));

}

}

});

}

</script>

6.2 청년사례 샘플 소스

<script>

window.onload = function() {

var httpReq = null;

// AJAX 객체 생성

if(window.XMLHttpRequest) { // IE 7.0 이상, Non-Microsoft browsers

httpReq = new XMLHttpRequest();

} else if(window.ActiveXObject) { // IE 7 미만

httpReq = new ActiveXObject("Msxml2.XMLHTTP");

}

var url = "https://www.rda.go.kr/young/api/youth/json";

var query = "";

query += "?serviceKey=인증키"; // 변경할 부분

query += "&sv=전북";

query += "&sCode=01";

url = url+query;

// GET 방식으로 서버에 전송

httpReq.open("GET", url, true);

httpReq.send(null);

// 서버에서 처리한 결과

httpReq.onreadystatechange = (()=>{

if(httpReq.readyState == 4) { // 요청상태(4:모든 요청 및 응답 완료)

if(httpReq.status == 200) { // 서버로 부터 넘겨 받은 상태코드(200:성공)

var result = httpReq.responseText;

// console.log(JSON.parse(result));

}

}

});

}

</script>

제공되는 샘플소스를 서비스할 소스에 삽입하고 아래와 같이 변경하면 됩니다.

- 변경할 부분은 똑똑청년농부 페이지에서 발급받은 인증키를 소스에 기입하면 됩니다.

각 서비스 별로 샘플소스가 약간의 차이가 있으니 다른 서비스의 샘플소스를 사용하지 마십시오.

7. 기타사항

7.1 ajax 방식 사용 시 한글 깨짐 현상이 발생하는 경우

제공되는 콜백페이지의 문자셋 설정을 변경하여 적용하십시오.