Я пытаюсь обновить существующий заказ в магазине, используя PUT-запросы к API заказов V2:
https://api.bigcommerce.com/stores/{$$.env.store_hash}/v2/orders/{id}
Согласно docs , я должен иметь возможность обновить следующее:
customer_id, status_id, добавить новый продукт, добавить пользовательский продукт, адрес биллинга
У меня есть успех, который меняется, это status_id.Я могу использовать тело примера, приведенное внизу страницы документации:
{
"status_id": 1,
"billing_address": {
"first_name": "Trisha",
"last_name": "McLaughlin",
"company": "",
"street_1": "123 Main Street",
"street_2": "",
"city": "Anywhere",
"state": "Some State",
"zip": "12345",
"country": "United States",
"country_iso2": "US",
"phone": "",
"email": "elsie@example.com"
}
}
Я получил ответ 200 OK без тела.Но в магазине меняется только статус.Если я умышленно произвожу неправильное написание поля, то получаю ответ об ошибке, который подсказывает мне, что тело правильно отформатировано, но игнорируется.
Может ли кто-нибудь предоставить пример тела, которое обновляет адрес для выставления счета или добавляет новыйпродукт, с которым будет работать API?
В настоящее время я генерирую PUT-запросы в Postman, но позже перейду на PHP.
Спасибо.
Редактировать:
Это пример запроса на добавление существующего продукта, который я пытался добавить, но он также принят, но не работает.
{
"products": [{
"product_id": 111,
"quantity": 5
}]
}
Редактировать 2: Чтобы получить больше контекста, заказы, которые я пробуюобновить уже существующие продукты и были «оплачены» (продукты бесплатны).Я пробовал добавлять товары, которые уже есть в заказе, а также новые.Я пробовал это на заказах с различным статусом.Кроме того, заказы обрабатываются гостевыми учетными записями, поэтому поле customer_id равно 0. Я не пытался сделать это с заказом зарегистрированного счета.Может ли какая-либо из этих причин вызывать проблему?
Редактировать 3: Для всех, кто бродит мимо, это, похоже, ошибка, связанная с загружаемыми продуктами.Пожалуйста, смотрите цепочку комментариев под принятым ответом для деталей.