Как вставить код отслеживания отправки через Rest API Python wrapper и плагин для отслеживания отправлений WooCommerce

#python #woocommerce

#python #woocommerce

Вопрос:

Настройка

Я использую официальный плагин для отслеживания отправлений WooCommerce, чтобы сопоставлять заказы с кодами отслеживания.

Я также использую Python и WooCommerce Rest API, чтобы делать как можно больше с помощью скриптов.


Проблема

Подключаемый модуль для отслеживания отправлений должен работать с REST API, см.:https://docs.woocommerce.com/document/shipment-tracking/#section-8 .

Однако объяснение, приведенное на странице документации, не содержит примера Python.

Я не уверен, как вставить номер отслеживания и поставщика отслеживания через Python и WooCommerce REST API в серверную часть WooCommerce.


Код

Используя,

 data = {
        'tracking_number': tracking_number,
        'tracking_provider': tracking_provider,
        'date_shipped': datetime.datetime.today().strftime('%Y-%m-%d')
        }
  

Я пытался,

  • wcapi.post('orders/' order_id '/shipment-trackings', data).json()
  • wcapi.put('orders/' order_id '/shipment-trackings', data).json()
  • wcapi.post('orders/' order_id, data).json()
  • wcapi.put('orders/' order_id, data).json()

но все они выдают 404 ошибку.

Что я делаю не так?

Ответ №1:

Если вы получаете 404, возможно, вы попали в версию API, которая не поддерживает отслеживание отправлений: просматривая документы, там говорится, что версия 1.5 поддерживает REST API. Когда вы создавали wcapi на какую версию вы указывали? Должно выглядеть примерно так (из документов наhttps://pypi.org/project/WooCommerce /):

 wcapi = API(
    url="http://example.com",
    consumer_key="ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    consumer_secret="cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    version="wc/v3"
)
  

Комментарии:

1. Привет, Феми, спасибо, что думаешь вместе со мной. К сожалению, это та версия, которую я использую.

2. Единственное, о чем я могу подумать, это о том, что плагин отслеживания отправки не установлен? Это дало бы вам 404.