맞춤형 API 상세

공공미술 작품을 찾아서

  • URL

    http://api.kcisa.kr/openapi/service/rest/convergence2018/conver9

  • 설명

    지역정보와 위치정보를 기반으로 공공미술작품을 조회하여 작품명 등의 정보를 제공하는 서비스
    공공미술 작품을 찾아서

  • 기관명

    한국문화정보원

    갱신주기

    연간

  • 서비스 분야/주체

    API유형

    REST

  • 등록일

    Dec 28, 2018

    활용도

    3,414

오픈 API

요청인자

요청인자 상세표
변수명 타입 변수설명 필수여부
serviceKey string
서비스키

true
numOfRows string
세션당 요청레코드수

false
pageNo string
페이지수

false
sido string
시도

false
gungu string
군구

false

출력 값

출력 값 상세표
No 변수명 출력설명
1 address 건축물 주소
2 alternativeTitle 건축물명
3 artName 작품명
4 sido 시도
5 gungu 군구
6 insertDate 수집일
7 rnum 번호
8 subject 시각/공연 구분
9 venue 지역
10 regDate 데이터기준일자
11 publisher 제공기관코드
12 creator 제공기관명

메시지 설명

메시지 설명 상세표
0000 정상 처리
F2013 서비스 주소 호출 실패
9999 서비스 점검중(내부 서비스 호출 장애)

활용 명세

샘플 데이터

>샘플 데이터 상세

샘플코드

/* Java Sample */
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.io.BufferedReader;
import java.io.IOException;

public class openApi {
public static void main(String[] args) throws IOException {

StringBuilder urlBuilder = new StringBuilder("http://api.kcisa.kr/openapi/service/rest/convergence2018/conver9"); /*URL*/
urlBuilder.append("?" + URLEncoder.encode("serviceKey","UTF-8") + "=서비스키"); /*서비스키*/
urlBuilder.append("&" + URLEncoder.encode("numOfRows","UTF-8") + "=" + URLEncoder.encode("세션당 요청레코드수", "UTF-8")); /*세션당 요청레코드수*/
urlBuilder.append("&" + URLEncoder.encode("pageNo","UTF-8") + "=" + URLEncoder.encode("페이지수", "UTF-8")); /*페이지수*/
urlBuilder.append("&" + URLEncoder.encode("sido","UTF-8") + "=" + URLEncoder.encode("시도", "UTF-8")); /*시도*/
urlBuilder.append("&" + URLEncoder.encode("gungu","UTF-8") + "=" + URLEncoder.encode("군구", "UTF-8")); /*군구*/

URL url = new URL(urlBuilder.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();

conn.setRequestMethod("GET");
conn.setRequestProperty("Content-type", "application/json");
System.out.println("Response code: " + conn.getResponseCode());

BufferedReader rd;
if(conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300) {

rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));

} else {

rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));

}

StringBuilder sb = new StringBuilder();
String line;
while ((line = rd.readLine()) != null) {

sb.append(line);

}
rd.close();
conn.disconnect();
System.out.println(sb.toString());

}

}
/* Javascript Sample*/
var xhr = new XMLHttpRequest();
var url = 'http://api.kcisa.kr/openapi/service/rest/convergence2018/conver9'; /*URL*/
var queryParams = '?' + encodeURIComponent('serviceKey') + '=' + '서비스키'; /*서비스키*/
queryParams += '&' + encodeURIComponent('numOfRows') + '=' + encodeURIComponent('세션당 요청레코드수'); /*세션당 요청레코드수*/
queryParams += '&' + encodeURIComponent('pageNo') + '=' + encodeURIComponent('페이지수'); /*페이지수*/
queryParams += '&' + encodeURIComponent('sido') + '=' + encodeURIComponent('시도'); /*시도*/
queryParams += '&' + encodeURIComponent('gungu') + '=' + encodeURIComponent('군구'); /*군구*/

xhr.open('GET', url + queryParams);
xhr.onreadystatechange = function () {
if (this.readyState == 4) {

console.log('status: ' + this.status);
console.log('resultCode: ' + $(this.responseText).find('resultCode').text());
console.log('resultMsg: ' + $(this.responseText).find('resultMsg').text());

var item = $(this.responseText).find('item');
$(item).each(function(){

console.log("address" + $(this).find("address").text());
console.log("alternativeTitle" + $(this).find("alternativeTitle").text());
console.log("artName" + $(this).find("artName").text());
console.log("sido" + $(this).find("sido").text());
console.log("gungu" + $(this).find("gungu").text());
console.log("insertDate" + $(this).find("insertDate").text());
console.log("rnum" + $(this).find("rnum").text());
console.log("subject" + $(this).find("subject").text());
console.log("venue" + $(this).find("venue").text());
console.log("regDate" + $(this).find("regDate").text());
console.log("publisher" + $(this).find("publisher").text());
console.log("creator" + $(this).find("creator").text());

});

};

}
xhr.send('');