본문 바로가기 주메뉴 바로가기

서비스 개요 및 호출방법

홈 OpenAPI OpenAPI 활용방법 서비스 개요 및 호출방법

TourAPI 소개

한국관광공사는 국가정보자원의 개방 및 공유 정책에 부흥하여 아래와 같은 OpenAPI 서비스를 제공합니다.

  • 약 7만여 건의 다국어 관광정보 제공 (국문, 영문, 일문, 중문간체, 중문번체, 독일어, 불어, 스페인어, 러시아어)
  • 약 1만 4천여건의 관광용어 외국어 용례표기사전 정보제공
  • 한국관광공사 포털 사이트인 VisitKorea(www.visitkorea.or.kr)와 동일한 최신의 관광정보 제공
  • 앱, 웹서비스 대상의 Application을 개발할 수 있도록 제공 (XML, Json 응답지원)

TourAPI 제공 서비스

TourAPI에서 제공하는 서비스 내용은 아래와 같습니다.

TourAPI에서 제공하는 서비스 상세표

관광정보 표출 방법

제공되는 각 API를 활용하여 관광정보 목록 및 상세정보 화면을 기획/개발하는 흐름을 설명합니다.
※ 관광정보 API 활용 가이드 : http://api.visitkorea.or.kr/guide/inforArea.do

지역기반 관광정보 서비스

아래 그림은 지역기반의 관광정보 목록을 서비스 하기 위해 API 활용 및 파라미터 전달하는 방법을 표현합니다.
[선택]적인 API 조회를 통해 다양하게 조합하여 목록을 표현할 수 있습니다.

스마트폰 앱에서 지역기반 관광정보 서비스 이용하는 방법 소개

※ 파라미터의 조합에 따라 아래와 같이 표현이 가능합니다.

  • 지역별 관광정보 : 지역정보(필수) > 타입정보(선택) > 분류정보(선택) > 관광정보 목록
  • 타입별관광정보 : 타입정보(필수) > 지역정보(선택) > 분류정보(선택) > 관광정보 목록
  • 분류별관광정보 : 타입정보(필수) > 분류정보(선택) > 지역정보(선택) > 관광정보 목록
  • 통합(키워드) 검색 : 지역정보(선택) > 타입정보(선택) > 분류정보(선택) > 검색된 정보 목록
  • 내주변관광정보 : 타입정보(선택) > 관광정보 목록
  • 날짜별행사축제 : 지역정보(선택) > 행사공연축제 목록
  • 베니키아, 한옥, 굿스테이숙박 검색 : 지역정보(선택) > 각 숙박 정보 목록
상세정보 화면
상세정보는 공통정보, 소개정보, 반복정보, 이미지정보의 4개 API로 제공됩니다.

관광용어 외국어 용례사전 표출 방법

외국어 용례사전 분류 조회

아래 그림은 외국어 용례사전 분류 조회를 서비스 하기 위해 API 활용 및 파라미터 전달하는 방법을 표현합니다.

외국어 용례사전 분류 조회 방법 예시
외국어 용례사전 목록 조회

아래 그림은 외국어 용례사전 목록 조회를 서비스 하기 위해 API 활용 및 파라미터 전달하는 방법을 표현합니다.

외국어 용례사전 목록 조회 방법 예시

인증키 활용 및 API 호출 방법

  • 개발계정은 일 1,000건의 트래픽을 제공합니다.
  • 개발계정은 자동승인으로 활용 신청 후, 약 30분 이후에 사용이 가능합니다.
    (공공데이터포털과 한국관광공사 동기화)
REST방식의 URL 요청 예시

응답 표준은 XML 이며, JSON을 요청할 경우“&_type=json”을 추가하여 요청합니다.

  • Json요청 : http://api.visitkorea.or.kr/openapi/service/rest/KorService/areaCode?ServiceKey=ServiceKey&numOfRows=10&pageNo=1&MobileOS=ETC&MobileApp=TestApp&_type=json
서비스키(인증키) 인코딩 방법
  • 2015년 1월 이전에 공공데이터포털에서 받은 인증키 경우,
    String myKey = “발급받은 인증키”;
    String ServiceKey = URLEncoder.encode(myKey, "UTF-8");
    (TourAPI의 모든 Character Set은 UTF-8 설정)

  • 2015년 1월 이후에 공공데이터포털에서 받은 인증키 경우, 인코딩 불필요
요청 파라미터에서 서비스명 기재
  • MobileApp파라미터는 서비스(웹,앱 등)별로 활용 통계를 산출하기 위한 항목입니다.
    URL요청 시 반드시 기재 부탁드립니다.

//====== 파라미터인코딩 예시(JSP 기준)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>>
//=== 서비스명이 영문인 경우 (인코딩 불필요)
String appName = “KoreaTourismOrganization”;
//=== 서비스명이 한글(일문, 중문 등)인 경우 (인코딩 필수)
String appName = URLEncoder.encode(“한국관광공사”, "UTF-8");

http://api.visitkorea.or.kr/openapi/service/rest/KorService/areaCode?ServiceKey=ServiceKey&numOfRows=10&pageNo=1&MobileOS=AND&MobileApp=appName