IKEA
IKEA 상품 검색 API
키워드로 IKEA 상품을 검색합니다. 55개 마켓을 지원하며, ikea.com 50개 마켓과 중국(ikea.cn)은 전체 목록을 반환합니다. 한 페이지는 기본 24개(최대 100개)이고, 7가지 정렬과 색상, 가격대, 카테고리, 신제품, 단종 예정, IKEA Family 가격, 베스트셀러, 매장 재고, 임의의 facet 필터를 지원합니다. 각 상품에는 상품 번호, 상품명, 유형, 디자인, 마켓 통화 기준의 가격과 인하 전 가격, 가격 태그(새로운 더 낮은 가격, IKEA Family 가격 등), 평점, 옵션, 카테고리 경로가 들어 있고, facet, 추천 검색어(did you mean), 연관 검색어, 콘텐츠 카드도 반환됩니다. 프랜차이즈 사이트(푸에르토리코, 도미니카공화국, 카나리아 제도·발레아레스 제도, 아이슬란드)는 query와 page만 지원합니다. 요청당 1크레딧입니다.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonquerystringrequired검색 키워드(1-200자). 마켓이 제공하는 어떤 언어로도 검색할 수 있고, 상품 번호로도 검색할 수 있습니다.
Example: kallax
countrystringdefault:usIKEA 마켓(소문자 코드). 이 엔드포인트는 55개 마켓(ikea.com 50개 마켓, 중국 ikea.cn, 푸에르토리코, 도미니카공화국, 카나리아 제도·발레아레스 제도, 아이슬란드)을 지원합니다. 기본값이 us이므로 한국 IKEA에는 반드시 "country": "kr"을 보내세요. 상품명, 설명, 라벨은 해당 마켓의 언어로, 가격은 해당 마켓의 통화로 반환되며 환산하지 않습니다. 응답에는 country, language, currency가 포함됩니다. 지원하지 않는 마켓은 과금 전에 400을 반환합니다.
Example: kr
us— 미국, USD, 언어 en, es. 기본값.ca— 캐나다, CAD, 언어 en, fr.gb— 영국, GBP, 언어 en.ie— 아일랜드, EUR, 언어 en.de— 독일, EUR, 언어 de, en.at— 오스트리아, EUR, 언어 de, en.ch— 스위스, CHF, 언어 de, fr, it, en.fr— 프랑스, EUR, 언어 fr.be— 벨기에, EUR, 언어 nl, fr, en.nl— 네덜란드, EUR, 언어 nl, en.dk— 덴마크, DKK, 언어 da.se— 스웨덴, SEK, 언어 sv, en.no— 노르웨이, NOK, 언어 no, en.fi— 핀란드, EUR, 언어 fi, sv, en.ee— 에스토니아, EUR, 언어 et, ru, en.lv— 라트비아, EUR, 언어 lv, ru, en.lt— 리투아니아, EUR, 언어 lt, ru, en.pl— 폴란드, PLN, 언어 pl.cz— 체코, CZK, 언어 cs, en.sk— 슬로바키아, EUR, 언어 sk.hu— 헝가리, HUF, 언어 hu.hr— 크로아티아, EUR, 언어 hr.si— 슬로베니아, EUR, 언어 sl.rs— 세르비아, RSD, 언어 sr.ro— 루마니아, RON, 언어 ro.pt— 포르투갈, EUR, 언어 pt, en.es— 스페인, EUR, 언어 es, en, ca, eu, gl.it— 이탈리아, EUR, 언어 it.il— 이스라엘, ILS, 언어 he.ae— 아랍에미리트, AED, 언어 ar, en.sa— 사우디아라비아, SAR, 언어 ar, en.kw— 쿠웨이트, KWD, 언어 ar, en.qa— 카타르, QAR, 언어 ar, en.bh— 바레인, BHD, 언어 ar, en.om— 오만, OMR, 언어 ar, en.jo— 요르단, JOD, 언어 ar, en.eg— 이집트, EGP, 언어 ar, en.ma— 모로코, MAD, 언어 ar, fr, en.in— 인도, INR, 언어 en.my— 말레이시아, MYR, 언어 ms, en.sg— 싱가포르, SGD, 언어 en.ph— 필리핀, PHP, 언어 en.th— 태국, THB, 언어 th, en.jp— 일본, JPY, 언어 ja, en.kr— 한국, KRW, 언어 ko, en.au— 호주, AUD, 언어 en.nz— 뉴질랜드, NZD, 언어 en.mx— 멕시코, MXN, 언어 es, en.cl— 칠레, CLP, 언어 es.co— 콜롬비아, COP, 언어 es.cn— 중국(ikea.cn), CNY, 언어 zh, en.pr— 푸에르토리코, USD, 언어 en, es.do— 도미니카공화국, DOP, 언어 es, en.es_islands— 카나리아 제도·발레아레스 제도(island 지정), EUR, 언어 es, en.is— 아이슬란드, ISK, 언어 en, is.
languagestring응답 언어. 해당 마켓의 사이트가 제공하는 언어 중에서 고릅니다. 기본값은 마켓의 첫 번째 언어입니다(kr은 ko, us는 en, de는 de). 다국어 마켓: kr ko/en, jp ja/en, cn zh/en, th th/en, us en/es, ca en/fr, de와 at de/en, ch de/fr/it/en, be nl/fr/en, nl nl/en, se sv/en, no no/en, fi fi/sv/en, ee et/ru/en, lv lv/ru/en, lt lt/ru/en, cz cs/en, pt pt/en, es es/en/ca/eu/gl, 걸프·아랍 마켓 ar/en(ma는 ar/fr/en), my ms/en, mx es/en, pr en/es, do와 es_islands es/en, is en/is. 그 밖의 마켓은 언어가 하나입니다. 다른 코드는 400을 반환합니다.
Example: en
islandenum<string>country가 es_islands(스페인 카나리아 제도·발레아레스 제도 스토어)일 때만 필수이며, 그 외에는 사용할 수 없습니다. 어느 섬의 스토어인지 지정합니다.
Example: tenerife
tenerife— 테네리페(카나리아 제도).grancanaria— 그란카나리아(카나리아 제도).lanzarote— 란사로테(카나리아 제도).fuerteventura— 푸에르테벤투라(카나리아 제도).lapalma— 라팔마(카나리아 제도).lagomera— 라고메라(카나리아 제도).elhierro— 엘이에로(카나리아 제도).mallorca— 마요르카(발레아레스 제도).menorca— 메노르카(발레아레스 제도).ibiza— 이비사(발레아레스 제도).
category_idstring | string[]facets의 카테고리 ID(parameter f-subcategories)로 범위를 좁힙니다. 예: st002 = 책장/수납선반.
Example: st002
pageintegerdefault:1결과 페이지(1부터). IKEA는 목록의 처음 2,000개와 한 페이지까지만 제공하므로 (page - 1) x page_size는 2,000을 넘을 수 없습니다.
Example: 2
page_sizeintegerdefault:24페이지당 상품 수(1-100).
Example: 48
sortenum<string>default:relevance결과 정렬 순서.
Example: price_asc
relevance— 사이트 기본 순서. 기본값.price_asc— 낮은 가격순.price_desc— 높은 가격순.newest— 신상품순.rating— 평점 높은순.name_asc— 이름 A-Z순.most_popular— 인기순.
colorstring | string[]facets의 색상 ID(parameter f-colors). 예: 10156 = 화이트.
Example: 10156
price_bucketstringfacets의 가격대 ID(parameter f-price-buckets). 예: 미국의 PRICE_0_5000 = 0-49.99달러, 한국의 PRICE_5000000_10000000 = ₩50,000-99,999(ID는 마켓마다 facets에서 가져옵니다).
Example: PRICE_5000000_10000000
new_onlyboolean신제품만.
Example: true
last_chanceboolean단종 예정(마지막 기회) 상품만.
Example: true
family_pricebooleanIKEA Family 회원가가 있는 상품만.
Example: true
top_sellerboolean베스트셀러만.
Example: true
store_idstring | integer매장 ID(stores 엔드포인트의 stores[].store_id). 해당 매장에서의 각 상품 재고 상태(재고 수준, 배송)를 추가하고 availability를 사용할 수 있게 합니다.
Example: 399
availabilityenum<string>store_id와 함께: in_store(해당 매장 재고 있음, 기본값), click_collect, online.
Example: in_store
in_store— 매장에 재고 있음.click_collect— 해당 매장에서 클릭 앤 콜렉트 가능.online— 온라인 구매 가능.
filtersobject그 밖의 facet을 facets[].parameter를 키로 지정합니다. 예: {"f-materials": ["47350"]}. 불리언 facet에는 true를 넣습니다.
Example: {"f-materials": ["47350"]}
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# 한국 IKEA에서 KALLAX(칼락스)를 낮은 가격순으로. 가격은 원화이며,
# 가격이 인하된 상품에는 previous_price가 들어 있습니다.
r = client.ikea.search(query="kallax", country="kr", sort="price_asc")["data"]
print(r["total"], "건,", r["currency"])
for i in r["items"]:
print(i["item_no"], i["item_no_global"], i["name"], i["type_name"], i["price"], i["previous_price"], i["price_tag"])Response