DNA 포럼 API 서비스 모음 DNA Lens

상품 정보 API


상품정보 검색 API는 디앤샵(D&Shop) 쇼핑 서비스에 대한 상품정보 검색 결과를 외부 개발자 및 사용자에게 XML 형식으로 전달하는 API 서비스입니다.

요청 주소(Request URL) #

http://apis.daum.net/dnshop/product/info

요청 방법(Request Method) #

  1. REST요청 방식을 통해 제공 가능합니다.
  2. XML-RPC요청 방식을 통해 제공 가능합니다.

인증 요청 변수 (Auth Request Parameters) #

  • 공통 인증 변수: 모든 API 서비스 요청시 공통적으로 넣어야 할 변수는 아래와 같습니다.

인증 파라미터 #

  • 인증에 사용되는 공통 파라미터를 설명합니다.

요청 변수 설명
apikey 40 byte hexadecimal string (필수) 모든 오픈 API 호출에 공통으로 사용되는 인증키 입니다.
Daum 회원이면, apikey를 발급 받을 수 있습니다.
오픈 API는 검색, UCC, 디앤샵 API로 구분됩니다. 나중에 다른 API가 추가될 수 도 있습니다.
각 API별로 Daum 회원은 하나의 apikey 만을 발급받을 수 있습니다. 그리고, 이 apikey로는 허가된 API만 호출 할 수 있습니다.

예) apikey=4125603e35da5d8820b07dc7b19050dbc838336b
apid 20 byte hexadecimal string 오픈 API를 이용하여 어플리케이션 이나 웹 사이트를 작성한 개발자 분들은 프로그램 등록을 할 수 있습니다. apid 는 등록된 프로그램에 대해서 오픈 API 인증 시스템에서 제공한 프로그램 아이디 입니다.
일부 오픈 API는 apid 파라미터를 필수로 요구하는 경우가 있습니다.
등록된 프로그램은 이 DNA 사이트를 통해서 홍보되며, 개발자 본인의 의사에 따라 다른 사용자가 다운받아 설치할 수 있게 됩니다.

예) apid=ba8c53ab7970189d93a7

서명 인증 파라미터 #

  • 서명된 오픈 API는 인증키가 다른 사용자에 의해서 도용 되는 것을 보호해 줍니다.
  • 서명은 필수적인 파라미터가 아닙니다. 그러나, 일부 오픈 API는 반드시 서명을 요구합니다.
  • 서명에 사용되는 파라미터를 설명합니다.

이름 설명
ts YYYYMMDDhhmmss 오픈 API를 호출하는 시간.
UTC Time 으로 변환되서 전달되어야 합니다.
서명 값(sig)을 전달할 때 반드시 포함되어야 합니다.

예, ts=20060501153010
nonce 16 byte hexadecimal string 랜덤한 8byte binary 값. ts 와 함께 서명의 재 사용여부를 확인하는데 사용됩니다.
서명 값(sig)을 전달할 때 반드시 포함되어야 합니다.

예, nonce=bd149ae021feb132
sigalg "hmacsha1" 서명에 사용하는 알고리즘 이름. "hmacsha1" 으로 고정되어 있습니다. 실제 사용하는 알고리즘은 RFC 2014 에 정의되어 있는 HMACSHA-1 입니다.
서명 값(sig)을 전달할 때 반드시 포함되어야 합니다.
sig 40 byte hexadecimal string 오픈 API 호출 URL 전체에 대해서 서명키로 서명한 값.

예) sig=b45de8a31aed6e58b831dd72087bb4ed71fcaf98

  • 서명 값 만들기 & 소스 예제 코드 : HowToSign

서비스 인증 변수 (Service Request Parameters) #

  • 본 서비스에서 사용되는 변수는 아래와 같습니다.
요청 변수 설명
key string (필수) 상품정보 key

  • 샘플 URL
http://apis.dnshop.daum.net/product/info?key=B282_SS616001

출력 방식 (Response Method) #

  1. XML방식으로 제공 가능합니다.

출력 결과 (Response Elements) #

  • XML 출력 결과
출력 변수 설명
title string API 종류
description string API 해설
id string 상품아이디
name string 상품이름
salecost string 판매가격
image string 이미지 url
link string 링크 url


출력 결과 샘플 페이지 #

<result>
   <title>상품정보</title>
   <description>상품정보를 확인하는 Open Api</description>
   <item>
     <id>B282_SS616001</id>
     <name>[솔로이스트] SS616001</name>
     <salecost>93000</salecost>
     <image>http://shopimage.hanmail.net/m_productimages//B282/35/B282_SS616001_225.JPG
</image>
     <link>http://dnshop.daum.net/front/product/ProductDetail?PID=B282_SS616001
</link>
   </item>
</result>

오류 메시지 #

  • 공통 오류 메시지는 다음과 같습니다.
오류는 다음과 같은 XML로 전달됩니다.

<?xml version="1.0" encoding="UTF-8"?>
<apierror>
      <code></code>
      <message></message>
      <dcode></code>
      <dmessage></dmessage>
</apierror>

오류 XML의 각 항목은 아래와 같은 값을 가집니다.

오류 코드 (code|dcode) 오류(message) 상세 오류(dmessage) 설명
10 | invalid request 오픈 API 호출이 공통 호출 규약에 맞지 않은 경우에 전달된다.
10 | 11 invalid request apikey missing apikey 파라미터가 없음
10 | 12 invalid request Missing auth parameter 'ts'. ts 파라미터가 없음
10 | 13 invalid request Missing auth parameter 'nonce'. nonce 파라미터가 없음
10 | 14 invalid request Missing auth parameter 'sigalg'. sigalg 파라미터가 없음
10 | 15 invalid request Missing auth parameter 'sig'. sig 파라미터가 없음
10 | 18 invalid request Missing parameter 'apid'. apid 파라미터가 없음
20 | unknown ap instance 프로그램 인증 실패.
20 | 21 unknown ap instance invalid apikey 유효하지 않은 apikey
20 | 22 unknown ap instance unregistered apikey 등록되지 않은 apikey
20 | 23 unknown ap instance unregistered apid 등록되지 않은 apid
20 | 24 unknown ap instance Signature sigkey is not valid. 유효하지 않은 서명키
20 | 25 unknown ap instance invalid apid 유효하지 않은 apid
20 | 26 unknown ap instance SignatureKey is not issued to this apikey. apikey 해당하지 않는 서명키
20 | 27 unknown ap instance ts, nonce are reused. ts,nonce 재사용 오류
20 | 28 unknown ap instance Unsupported Sign Algorithm. 지원하지 않는 서명 알고리즘
30 | unknown daumuser apikey 소유자의 Daum 인증 실패.
40 | access denied 서비스 접근 거부
40 | 41 access denied valid api call but traffic overed 하루 api 호출 traffic 초과
40 | 42 access denied apikey does not match api category 이 apikey 로 호출할 수 있는 api 가 아님
40 | 43 access denied unsigned call 서명되지 않은 호출
40 | 44 access denied unregistered ip 등록되지 않은 IP 주소
40 | 45 access denied apid doesnot use api 프로그램이 이 api를 사용하고 있지 않음
404 no such api 해당 오픈 API 서비스가 없음
500 system error 오픈 API 서비스 내부 시스템 에러.
504 service timeout 오픈 API 서비스 연결 실패. 서비스 시스템 과부하 또는 장애로 인한 서비스 연결 실패.
100 | service api runtime error 오픈 API 서비스 실행 오류. 101~299 값을 가지며, 각 API 에서 정의함.

  • 이 서비스의 오류 메시지는 다음과 같습니다.

오류 코드(dcode) 오류 설명(dmessage)
101 : invalid url 잘못된 url 일때 발생합니다.
102 : missing parameter 'key' key parameter 가 없을때 발생합니다.

트래픽 제한 #


  • 오픈 API는 하나의 apikey에 대해서 하루 5,000 회의 호출 만을 허용합니다.
  • 트래픽 제어는 보안 및 어뷰징을 제한하기 위해 사용합니다.
  • 일 5,000회 이상의 요청을 원하는 경우 freewill@daumcorp.com, tadoli2@daumcorp.com으로 요청 메일을 보내주시기 바랍니다.


샘플 코드 #

  • PHP 코드
  • JavaScript 코드