1. 개요
1.1. 목적
- 본 개발가이드는 현 시스템이 제공하고 있는 격자형 해양관측정보를 OPEN API 를 통해 손쉽게 사용할 수 있도록 하는데 목적이 있습니다.
1.2. API 활용 클라이언트 구성도
1.3. API 호출 절차
- 1) 격자형 해양정보서비스 회원을 가입한다.
- 2) 사용자가 API키 발급 요청을 하면 인증키가 자동 발급된다. 사용자 별로 API키 발급은 1개만 발급합니다.
- 3) 취득한 인증키를 이용하여 본 시스템에서 제공하는 모든 해양정보 OPEN API 서비스 호출합니다.
- 4) 관리자는 필요한 경우, 경우에 따라 API 사용을 제한하거나 인증키를 삭제합니다.
1.4. 사용 제한
- - 상업적 이용이 불가능한 API에 대해 상업적으로 활용한 경우
- - 또는 트래픽 초과로 인해 사스템이 부하가 발생할 경우 관리자가 사용을 제한할 수 있습니다.
- - API는 부하를 고려하여 일일 20000건으로 제한되어 있습니다.
- - API요청 건수를 늘리고자 하는 사용자 또는 활용기관은 관리자와 협의를 통해 진행하실 수 있습니다.
1.5. 개발환경
- - OPEN API 는 누구나 쉽게 사용할 수 있도록 자바스크립트 형태로 제공하여 별도의 개발환경 제한을 두고 있지 않음
- - Explorer 8.0 이상, Crome, FireFox, Safari 지원
- - REST(Representation State Transfer) 방식으로 서비스 제공
1.6. 문의사항
- - 본 사이트에서 제공하는 API에 대해 문의사항을 우리원 홈페이지 자유게시판으로 보내주시면 성실히 답변드리겠습니다.
- - 자유게시판 : http://www.khoa.go.kr/user/bbs/selectBbsList.do?bbsMasterSeq=BOARD_MST_0000000011
2. 사용 예제
2.1. 요청/응답 메시지
요청주소 :http://www.khoa.go.kr/api/oceangrid/dataType/search.do?ServiceKey=인증키&ObsCode=관측소번호&ResultType=json
요청변수(Request Parameter)
항목명(영문) | 항목명(국문) | 샘플데이터 | 사용유무 |
---|---|---|---|
dataType | 데이터 종류 | tideObsHar | O |
StartDate | 검색 시작 날짜 | 20190601 | O |
EndDate | 검색 종료 날짜 | 20190620 | O |
Date | 검색 기준 날짜 | 20190620 | |
ServiceKey | 인증키 | wldhxng34hkddbsgm81lwldhxng34hkddbsgm81l== | O |
GridCode | 격자번호 | GR5_C3F21_Y49 | |
ObsCode | 관측소 번호 | DT_0021 | O |
resultType | 결과타입 | json , xml | O |
출력결과 (Response Element)
항목명(영문) | 항목명(국문) | 샘플데이터 | 비고 |
---|---|---|---|
obs_post_id | 고정 관측소 ID | DT_0021 | |
obs_post_name | 고정 관측소 명 | 추자도 | |
obs_lat | 관측소 위도 | 33.961833 | |
obs_lon | 관측소 경도 | 126.300139 | |
hc_name | 조화상수명 | O1 | |
amp | 진폭 | 4.494 | |
pha_kst | 지각 [KST] | 323.01 | |
pha_gmt | 지각 [GMT] | 323.01 |
2.2. 응답 메시지(JSON)
-
{
"result" :{
"meta": {
"obs_post_id": "DT_0021",
"obs_post_name": "추자도",
"obs_lat": "33.961833",
"obs_lon": "126.300139"
},
"data": [
{
"hc_name": "o1",
"amp": "0.3",
"pha_kst": "172.79",
"pha_gmt": "162.91"
},
{
"hc_name": "m2",
"amp": "0.42",
"pha_kst": "222.98",
"pha_gmt": "93.25"
},
{
"hc_name": "s4",
"amp": "2.3",
"pha_kst": "226.33",
"pha_gmt": "91.33"
}
]
}
}
3. 오류 이벤트 처리
- 오픈API 요청시 요청변수(Request Parameter)를 넘겨주지 않거나, 유효하지 않는 경우에는 다음과 같은 오류 이벤트를 보여줍니다.
3.1. 오류 상황별 예제
오류 상황 | 에러 이벤트 |
---|---|
ServiceKey가 없는 경우 | ServiceKey is null |
관측소번호(ObsCode)요청변수가 없거나, 유효하지 않는 경우 | ObsCode is null |
검색시작날짜(StartDate)요청변수가 없거나, 유효하지 않는 경우 | StartDate is null, invalid StartDate |
검색종료날짜(EndDate)요청변수가 없거나, 유효하지 않는 경우 | EndDate is null, invalid EndDate |
검색기준날짜(Date)요청변수가 없거나, 유효하지 않는 경우 | Date is null, invalid Date |
격자번호(GridCode) 요청변수가 없는 경우 | GridCode is null |
경도(Lon) 요청변수가 없는 경우 | Lon is null |
위도(Lat) 요청변수가 없는 경우 | Lat is null |
3.2. 오류 결과 화면 예제
- ServiceKey가 없는 경우