backgroundbackground
Назад
Назад

/api/v3/orders?limit=1000 выдает 1001, дублируя одно из заданий

Обсуждение
1
222
# Заказы FBS
Обсуждение

Собственно, сабж. Сценарий следующий: 1. Беру сборку, получаю сборочные задания для нее (/api/marketplace/v3/supplies/{supplyId}/order-ids) - получаю 1111 штук. 2. Начинаю опрашивать /api/v3/orders?limit=1000&next=${next}&dateFrom=${dateFrom} начиная с последних 3х дней. Листая next и сохраняя результат для требуемых id сборочных заданий. 3. Если количество полученных в п2 сборочных заданий не равно требуемому количеству - увеличиваю интервал - 10 дней, потом 30 дней и тд.

И в какой-то момент /api/v3/orders?limit=1000&next=${next} - начинает выдавать 1001 штуку, дублируя одно из заданий 2 раза. В итоге, пролистав странички, получается 1112 штук, тк дублируемый заказ входит в запрашиваемое множество IDs.

Соответственно, количество полученных заданий (1112) не равно количеству запрашиваемых (1111). Сотрудники тыкают кнопки, а мы гоняем по кругу API до времен динозавров и никак не можем получить требуемое количество заказов.

Фикс - нужно фильтровать полученные из этого эндпоинта /api/v3/orders результаты по ID, чтобы добиться их уникальности.

Это баг или фича?

+1
Комментарий

Тоже столкнулся с такой проблемой сегодня.

1. Беру сборочные задания с лимитом 100 а выдает 101.

2. Получаю следующую страницу, и первой строкой тот заказ, который был последним в пункте 1. При этом next выдает значение меньше, чем next в пункте 1, причем стабильно next=946 674 000 000 000 000.

Судя по моим логам такое поведение появилось только сегодня.

0

Ответы на комментарий

У меня тоже проблема не сразу проявилась. Во время тестирования и пуско наладки новых методов АПИ все было нормально - ставишь лимит 1000 - получаешь не более 1000, а 23го заметил что барахлит. Причем не везде, а при каких-то условиях это происходит. Проблема явно в реализации API

0