API вариантов доставки USPS v3 — «Тело запроса недействительно или неверно сформировано» Ошибка (400)Python

Программы на Python
Ответить
Anonymous
 API вариантов доставки USPS v3 — «Тело запроса недействительно или неверно сформировано» Ошибка (400)

Сообщение Anonymous »

Я пытаюсь использовать API вариантов доставки USPS v3 с библиотекой запросов Python для получения тарифов на доставку. Я успешно получил токен OAuth, но когда я вызываю get_usps_rate для получения котировок, я получаю ошибку 400 с сообщением «Тело запроса недействительно или неверно сформировано».

Код: Выделить всё

def get_usps_rate(access_token, origin_zip, destination_zip, weight, length, height, width, mail_class):
url = f"{BASE_URL}/shipments/v3/options/search"
headers = {
"Authorization": f"Bearer {access_token}",
"Content-Type": "application/json"
}

payload = {
"pricingOptions": [
{
"priceType": "RETAIL"
}
],
"originZIPCode": origin_zip,
"destinationZIPCode": destination_zip,
"packageDescription": {
"weight": weight,
"length": length,
"height": height,
"width": width,
"mailClass": mail_class
}
}

response = requests.post(url, headers=headers, json=payload)
if response.status_code == 200:
return response.json()
else:
print(f"Request payload: {payload}")
print(response.status_code)
print(response.text)
raise Exception(f"Error fetching USPS rate: {response.json()}")
Я ознакомился с документацией по API вариантов доставки USPS на предмет распространенных ошибок и требований к формату данных. (https://developer.usps.com/shippingoptionsv3)
Я попробовал упростить запрос, удалив необязательные поля, но все равно получаю ту же ошибку.

Подробнее здесь: https://stackoverflow.com/questions/792 ... rmed-error
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»