Я пытаюсь использовать метод updateListing для пересмотра описаний списков …
https://www.etsy.com/developers/documentation/reference/listing#method_updatelisting
Я успешно прошел процесс аутентификации OAuth и смог сделать авторизованный запрос через API в соответствии с примером в документации. У меня проблемы с методом updateListing. Я пытаюсь пересмотреть описание, но получаю следующую ошибку …
«Неверный запрос авторизации / неверный запрос (получено 400, ожидаемый HTTP / 1.1 20X или перенаправление) Ожидаемый параметр« количество ». Массив»
Согласно документации, количество не требуется (и фактически амортизируется для updateListing). Когда я использую существующее количество для заполнения «количества» в массиве (закомментировано), он жалуется на другое ожидаемое поле. Я не уверен, почему я получаю сообщение об ошибке в этих полях, поскольку они не являются обязательными. Я не возражаю против использования существующих атрибутов, доступных в моем списке, для заполнения этих полей, но есть поле «shipping_template_id», которого у меня сейчас нет в наличии. Я не могу установить его на ноль, потому что он ожидает числовое значение. Когда я устанавливаю его на 0, он говорит, что это недопустимый идентификатор шаблона доставки. Я должен делать что-то не так.
Вот мой код (я заменил свой настоящий токен и секреты токена)…
$ access_token = «мой токен»;
$ access_token_secret = «мой секрет»;
$ oauth = новый OAuth (OAUTH_CONSUMER_KEY, OAUTH_CONSUMER_SECRET, OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_URI);
$ oauth-> setToken ($ access_token, $ access_token_secret);
пытаться {
$url = "https://openapi.etsy.com/v2/private/listings";
$params = array('listing_id' => $result->listing_id,
//'quantity' => $result->quantity,
//'title' => $result->title,
'description' => $new_description);
$oauth->fetch($url, $params, OAUTH_HTTP_METHOD_POST);
$json = $oauth->getLastResponse();
print_r(json_decode($json, true));
}
catch (OAuthException $ e) {
echo $e->getMessage();
echo $oauth->getLastResponse();
echo $oauth->getLastResponseInfo();
}
$args = array(
'data' => array(
"quantity" => $quantity,
"title" => $title,
"description" => strip_tags($description),
"price" => $price,
"materials" => $materials,
"shipping_template_id" =>(int)$shippingTemplateId,
"non_taxable" => false,
"state" => "$ced_etsy_upload_product_type",
"processing_min" => 1,
"processing_max" => 3,
"taxonomy_id" => (int)$categoryId,
"who_made" => $who_made,
"is_supply" => true,
"when_made" => $when_made,
)
);
Пожалуйста, попробуйте это, может быть, это поможет вам.
Других решений пока нет …