Получение всех изображений листинга из магазина Etsy

СИТУАЦИЯ

Я работал с API песочницы Etsy, пытаясь найти решение для клиента, который хочет показывать изображение и заголовок по умолчанию для всех своих списков Etsy. После нажатия они хотят, чтобы он перенаправил их с веб-сайта на страницу этого списка Esty.

Теперь выяснить, как получить имя и URL-адрес всех их списков, было легко, и это можно сделать одним вызовом общедоступного API:

http://openapi.etsy.com/v2/shops/:shop_id/listings/active?method=GET&api_key=:api_key

Этот вызов не только вернет название листинга и URL-адрес листинга, но и множество другой информации об этом конкретном элементе. Я полагаю, что мне следует ограничить свой вызов только получением нужных мне полей, но ради примера я отвлекся...

Что меня больше всего удивляет, так это то, что в этот гигантский массив информации не включено то, что я ожидал там найти: изображения, связанные с листингом, или по крайней мере основное изображение. Однако есть отдельный вызов API, который я могу сделать, чтобы получить изображения для одного списка, но для этого потребуется получить listing_id и сделать отдельный вызов API для каждого элемента. Теперь это превращает то, что, как я ожидал, будет одним (или, черт возьми, даже двумя) вызовами Etsy API, в 1 плюс сколько бы предметов вы ни вернули. Конечно, если у вас есть 100 товаров, которые вы продаете в магазине, это 101 вызов API всего за несколько секунд! Назовите меня сумасшедшим, но я чувствую, что должен быть лучший способ сделать это, чем то, что я нашел.

ВОПРОС

Как проще всего сделать вызов Etsy API для возврата всех изображений (или даже основного изображения) для всех списков в магазине?


person cereallarceny    schedule 22.07.2012    source источник
comment
поскольку у тега esty 0 подписчиков на SO, я думаю, их собственное сообщество даст вам лучший ответ.   -  person    schedule 22.07.2012
comment
Да, я просмотрел всю их документацию в поисках ответа и буквально ничего не нашел в Google. Я решил, что после этого первым делом нужно будет проверить Stack Overflow. Я был бы очень удивлен, если бы никто из SO никогда не использовал Etsy API...   -  person cereallarceny    schedule 22.07.2012
comment
Кроме того, я не добавил тег etsy, поскольку я пока не могу добавлять пользовательские теги (требуется 1500 репутации), кто-то, кто редактировал мой вопрос, добавил это для меня (и украл мой тег, аргумент!).   -  person cereallarceny    schedule 22.07.2012
comment
надеюсь, вы написали на их форуме, в любом случае удачи :-)   -  person    schedule 22.07.2012
comment
Спасибо за ваш совет: groups.google.com/forum /?fromgroups#!topic/etsy-api-v2/   -  person cereallarceny    schedule 22.07.2012
comment
Я даже не могу понять, как найти shop_id. Мне кажется, их документация ужасна   -  person Michael Tranchida    schedule 14.11.2014


Ответы (1)


В итоге я использовал следующий код, чтобы включить все необходимое в один вызов API:

http://openapi.etsy.com/v2/shops/:shop_id/listings/active?method=GET&api_key=:api_key&fields=title,url&limit=100&includes=MainImage

Таким образом, я определил свои поля, чтобы у меня не было ненужной информации, но я также установил ограничение на результаты и использовал includes=MainImage в качестве строки запроса. Это предложение было предложено членом сообщества разработчиков Etsy. .

person cereallarceny    schedule 22.07.2012
comment
Я знаю, что уже поздно, но как я могу включить, например, вложенные вещи; /shops/:shop_id/receipts?includes=Transactions,Listings, но я также хочу включить MainImage из Transactions - person AhmetK; 08.07.2021