admin Опубликовано 4 апреля, 2022 Поделиться Опубликовано 4 апреля, 2022 API Для использования OpenCart API вы должны предварительно включить его в административной части вашего сайта. Перейдите в Система > Пользователи > API, и вы увидите пользователя, созданного по умолчанию, с API Username "Default". При добавлении нового пользователя по умолчанию не будет никакого API-ключа, его необходимо с генерировать, нажав на кнопку "Генерировать" и установив "Статус" в положение "Включено. Затем добавьте свой IP-адрес в список разрешенных для доступа к API на вкладке "IP адрес". API доступен через URL-адрес, такой, как http://example.com/index.php?route=api/cart/add где в параметре route указывается нужный контроллер. Примечание: У API пользователей поле customer_id всегда '0'. У них есть свой собственный api_id. Для примеров использована библиотека python-requests, но основная идея заключается в описании параметров, поэтому console curl будет достаточно. И в описаниях предполагается, что у нас есть префикс "oc_" в таблицах БД. В первую очередь, вы можете и обязательно должны получить токен для вашей сессии - вы получаете файл cookie, и сервер OpenCart будет идентифицировать вашу активность таким образом. import requests s = requests.Session() username = 'Default' key='L3MYyzlYMRL8gBcpCm6CdrVarFUXtPORZkJKP7vgaY8M8EIZWOr3EJxq' # Actually, key is 256 character-long s.post( 'http://myopencart.example.com/index.php?route=api/login', data={'username':username, 'key':key} ).text Если все было сделано правильно, вы получите json-ответ с помощью api_token для вашего сеанса. Проверьте страницу API в административной части сайта, нажмите "Редактировать" на пользователе API и откройте вкладку "Сессия" - там вы можете увидеть установленную сессию. Что вы можете сделать с OpenCart API? Логин - Вход api/login Создание сессии для пользователя API по ключу PARAMS: DATA: username: username из таблицы oc_api key: key из oc_api ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/shipping/address', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'username':username, 'key':key } ) Валюта api/currency ОПИСАНИЕ: изменить валюту сессии PARAMS: api_token DATA: currency: code из таблицы oc_currency ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/currency', params={'api_token':'768ef1810185cd6562478f61d2'}, data={'currency':'USD'} ) Корзина api/cart/add ОПИСАНИЕ: добавление товара в корзину PARAMS: api_token DATA: product_id: product_id из таблицы oc_cart quantity: quantity из таблицы oc_cart option: option array из таблицы oc_cart ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/cart/add', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'product_id':'100' 'quantuty':'1' } ) api/cart/edit ОПИСАНИЕ: редактирование количества товара в корзине PARAMS: api_token DATA: key: cart_id из таблицы oc_cart quantity: quantity из таблицы oc_cart ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/cart/edit', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'key':'10' 'quantuty':'2' } ) api/cart/remove ОПИСАНИЕ: удаление товара из корзины PARAMS: api_token DATA: key: cart_id из таблицы oc_cart ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/cart/remove', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'key':'10' } ) api/cart/products ОПИСАНИЕ: содержимое корзины PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/cart/products', params={'api_token':'768ef1810185cd6562478f61d2'}, data={} ) Купоны api/coupon ОПИСАНИЕ: применить существующий купон PARAMS: api_token DATA: coupon: code из таблицы oc_coupon; ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/coupon', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'coupon':'2222' } ) Покупатель api/customer ОПИСАНИЕ: назначить покупателя для текущей сессии PARAMS: api_token DATA: firstname: lastname: email: telephone: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/customer', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'firstname':'Dear', 'lastname':'Customer', 'email':'customer@example.com', 'telephone':'+1 879 2548022'} } ) Подарочные сертификаты api/voucher ОПИСАНИЕ: применить существующий подарочный сертификат PARAMS: api_token DATA: voucher: code из таблицы oc_voucher; ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/voucher', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'voucher':'VOU-7271' } ) api/voucher/add ОПИСАНИЕ: добавить новый подарочный сертификат для текущей сессии PARAMS: api_token DATA: from_name: from_name из таблицы oc_voucher from_email: from_email из таблицы oc_voucher to_name: to_name из таблицы oc_voucher to_email: to_email из таблицы oc_voucher amount: amount из таблицы oc_voucher в выбранной валюте code: code из таблицы oc_voucher ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/voucher/add', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'from_name':'MyOpenCart Admin' 'from_email':'admin@example.com' 'to_name':'Dear Customer' 'to_email':'customer@example.com' 'amount':'100' 'code':'VOU-7177' } ) Доставка api/shipping/address - ОПИСАНИЕ: добавить адрес доставки к текущей сессии PARAMS: api_token DATA: firstname lastname address_1 city country_id zone_id ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/shipping/address', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'firstname':'Customer', 'lastname':'Dear', 'address_1':'Somewhere', 'city':'KLD', 'country_id':'RUS', 'zone_id':'KGD' } ) api/shipping/methods ОПИСАНИЕ: возврат доступных способов доставки PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/shipping/methods', params={'api_token':'768ef1810185cd6562478f61d2'}, ) api/shipping/method ОПИСАНИЕ: установить способ доставки для текущей сессии PARAMS: api_token DATA: shipping_method ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/shipping/method', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'shipping_method':'pickup.pickup' } ) Бонусы api/reward ОПИСАНИЕ: PARAMS: api_token DATA: EXAMPLE: session.post( 'http://myopencart.example.com/index.php?route=api/reward', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) api/reward/maximum ОПИСАНИЕ: PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/reward/maximum', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) api/reward/available ОПИСАНИЕ: PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/reward/avaliable', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) Заказ api/order/add ОПИСАНИЕ: новый заказ по содержимому корзины и информации об оплате / доставке был установлен в текущй сессии PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/order/add', params={'api_token':'768ef1810185cd6562478f61d2'}, ) api/order/edit ОПИСАНИЕ: PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/order/edit', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) api/order/delete ОПИСАНИЕ: PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/order/delete', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) api/order/info ОПИСАНИЕ: PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/order/info', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) api/order/history ОПИСАНИЕ: PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/order/history', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ } ) Оплата api/payment/address ОПИСАНИЕ: установить адрес оплаты для этой сессии PARAMS: api_token DATA: firstname lastname address_1 city country_id zone_id ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/payment/address', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'firstname':'Customer', 'lastname':'Dear', 'address_1':'Somewhere', 'city':'KLD', 'country_id':'RUS', 'zone_id':'KGD' } ) api/payment/methods ОПИСАНИЕ: возврат доступных способов оплаты PARAMS: api_token DATA: ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/payment/methods', params={'api_token':'768ef1810185cd6562478f61d2'}, ) api/payment/method ОПИСАНИЕ: настройка способа оплаты доступна в api/payment/methods PARAMS: api_token DATA: payment_method ПРИМЕР: session.post( 'http://myopencart.example.com/index.php?route=api/payment/method', params={'api_token':'768ef1810185cd6562478f61d2'}, data={ 'payment_method':'bank_transfer' } ) 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.