onlinerby / onliner-second-api

1 stars 1 forks source link

Отправка запроса на удаление. #9

Closed samikadze closed 4 years ago

samikadze commented 6 years ago

Добрый день! Помогите, пожалуйста, разобраться как при помощи curl отправить запрос на удаление объявление.

После авторизации у нас вызывается вот такой код:

 $data = '{
"offer_ids": ["ng4"]

}';

$process = curl_init("https://second.api.onliner.by/shop/offers");

curl_setopt(
        $process, 
        CURLOPT_HTTPHEADER, 
        array(
                'Accept: application/json', 
                'Content-Type: application/json', 
                'Authorization: Bearer '.$token
        )
);
curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($process, CURLOPT_POSTFIELDS, $data);
curl_setopt($process, CURLOPT_CUSTOMREQUEST, 'DELETE');
$result = curl_exec($process);
curl_close($process);

Ответ на запрос такой: {"updated_offers":[]}

Подскажите в чем может быть проблема.

sidorovich commented 6 years ago

Б/У объявления с идентификатором ng4 в базе нет. В ответ возвращается список объявлений, на которых фактически была выполнена операция. Так как объявления нет, то и операция была не выполнена.

samikadze commented 6 years ago

Каким образом можно получить id активных объявлений?

sidorovich commented 6 years ago

https://github.com/onlinerby/onliner-second-api/blob/master/docs/get_offers.md

описание всех методов API есть на главной странице данного репозитория: https://github.com/onlinerby/onliner-second-api

samikadze commented 6 years ago

Разобрался, спасибо. Нужно было отправлять тот id, который был мной указан при отправке объявления. Не совсем тогда понятно для чего нужен тот id, который отдается вами в ответ на добалвение объявления.

sidorovich commented 6 years ago

"тот id, который отдается вами в ответ на добалвение объявления" - это идентификатор выгрузки. по нему можно узнать состояние выгрузки (так как добавление объявлений происходит не в момент выгрузки, а отложенно, по мере прохождения очереди), а так же узнать те или иные валидационные ошибки, которые не позволили объявлениям появиться на нашем сайте.

Смотрите соответствующие методы в нашем API: