Поиск по сайту
Результаты поиска по тегам 'restapi'.
Найдено 3 результата
-
Версия 1.0.3
Демо модулю Адмінка: перейти Логін: demo Пароль: demo Посилання на документацію та API Reference присутні в адмінці модуля! 🚀 Advanced REST API для OpenCart - професійна інтеграція вашого магазину з будь-якою системою Advanced REST API - це найбільш повноцінний та безпечний REST API модуль для OpenCart, розроблений для магазинів, які потребують глибокої інтеграції з ERP-системами, CRM, обліковими програмами (1С, BAS, Bitrix24), маркетплейсами (Rozetka, Prom, Allo, Hotline), службами доставки (Нова Пошта, Укрпошта) та мобільними додатками. Модуль надає уніфікований HTTP-інтерфейс до всіх основних сутностей магазину з підтримкою HMAC-SHA256 підпису запитів, гнучкою системою прав доступу та вебхуками для реактивних інтеграцій. ✨ Ключові можливості 📦 Повне керування каталогом Товари (Products) - створення, читання, оновлення, видалення з підтримкою мультимовних описів, зображень галереї, атрибутів, опцій (select, radio, checkbox, image, text, textarea, file, date, time, datetime), акцій (specials), знижок (discounts), пов'язаних товарів, SEO URL, макетів, бонусних балів, downloads, фільтрів Розширений endpoint action=full - отримання максимально детальної інформації про товар (виробник, податковий клас, статус наявності, магазини, layouts, відгуки, рейтинг) в одному запиті Масове оновлення залишків та цін (bulk_stock) - до 500 товарів за один запит з ідентифікацією за product_id, SKU або model - ідеально для синхронізації з ERP Категорії (Categories) - ієрархічна структура з рекурсивним видаленням, мультимовні описи, прив'язки до магазинів Виробники (Manufacturers) - CRUD з мультимовністю та SEO Атрибути та групи атрибутів - повне керування характеристиками товарів Опції товарів (Options) - усі типи OpenCart з мультимовними значеннями 🛒 Робота з замовленнями Замовлення (Orders) - читання, створення нових замовлень через штатну логіку OpenCart, обмежене оновлення контактних даних Історія статусів - зміна статусу замовлення з автоматичним email-сповіщенням покупця, списанням залишків, нарахуванням бонусів та застосуванням купонів Статуси замовлень (Order Statuses) - повний CRUD для мультимовних статусів Повернення товарів (Returns / RMA) - CRUD для заявок на повернення з довідниками причин, дій та статусів Фільтрація за датами, покупцем, статусом, пошук за ім'ям та email 👥 Покупці та маркетинг Покупці (Customers) - повний CRUD з адресами, групами покупців, підписками на розсилку, безпечним хешуванням паролів (сумісно з нативним OpenCart) Відгуки (Reviews) - CRUD для імпорту відгуків з маркетплейсів Купони (Coupons) - знижки у відсотках або фіксованій сумі з прив'язкою до товарів і категорій Інформаційні сторінки (CMS) - керування статичними сторінками (Про нас, Доставка, Політика конфіденційності) 🌐 Локалізація та довідники Список мов і валют магазину Довідники країн, зон (областей), геозон Класи ваги, довжини, статуси наявності Податкові класи та ставки Групи покупців та статуси замовлень 🔗 SEO URL (ЧПУ) Універсальний ресурс, який автоматично визначає структуру таблиці ЧПУ вашої збірки: seo_url з колонками key/value (OpenCart 3.0.3.0+) seo_url з колонкою query (ocStore 3.x) url_alias (ранні OpenCart 3.0.x / 2.x) CRUD для будь-яких ЧПУ - товарів, категорій, виробників, сторінок 🪝 Вебхуки (Webhooks) Підписка на події магазину: order.add, order.status, product.add, product.update, product.delete, customer.add Підтримка wildcard * - підписка на всі події Підписані HMAC-SHA256 POST-запити з заголовками X-Webhook-Event і X-Webhook-Signature Синхронна best-effort доставка з коротким тайм-аутом - повільний підписник не блокує API 🖼️ Завантаження зображень Ендпоінт для завантаження зображень через multipart/form-data Автоматичне сортування у папки та підпапки image/catalog/ Захист від path traversal Підтримка форматів jpg, jpeg, png, gif, webp 🏬 Мультимагазин Повна підтримка мультимагазинної конфігурації OpenCart Прив'язка товарів, категорій, виробників, сторінок до конкретних магазинів Ресурс store для отримання списку магазинів 🔒 Безпека та контроль доступу HMAC-SHA256 підпис запитів - захист від підробки та повторного використання (replay-атак) Timestamp-валідація - відхилення від серверного часу не більше ±300 секунд IP-whitelist - обмеження доступу за IP-адресами Rate limiting - налаштовуваний ліміт запитів за хвилину для кожного API-ключа Гранулярні scopes (області доступу) - візуальна матриця ресурс × дія (Читання / Створення / Оновлення / Видалення) для кожного ключа Перемикач DELETE - окремий контроль дозволу на видалення для кожного ключа Ліцензійний ключ з прив'язкою до домену (з підтримкою www та піддоменів) 🛠️ Обхід серверних обмежень (Method Override) Якщо ваш хостинг блокує HTTP-методи DELETE та PUT (типова проблема на shared-хостингу), модуль підтримує method override через POST з параметром &method=delete або &method=put. Підпис при цьому не змінюється - усі перевірки прав та scopes працюють нативно. 📚 Документація та інструменти розробника OpenAPI 3.0 специфікація - повний машиночитний документ (docs/openapi.json) та живий ендпоінт /spec Інтерактивна довідка Redoc - docs/api.html Готова Postman-колекція - 19 папок за ресурсами, ~68 запитів з автоматичним HMAC-підписом через pre-request скрипт (CryptoJS) Чеклист тіл запитів - усі ендпоінти з готовими JSON-тілами для копіювання Приклади на PHP, cURL, bash Уніфіковані коди відповідей: 200, 201, 400, 401, 403, 404, 405, 429 Єдиний формат помилок для зручного парсингу на клієнті 🎯 Кому підійде модуль Інтернет-магазини на OpenCart 2.x, 3.x, ocStore, які потребують автоматизації Розробники мобільних додатків для iOS/Android до магазину Інтегратори з обліковими системами - 1С, BAS, MySklad, MoySklad, Dinet, KeyCRM Постачальники маркетплейсів - Rozetka, Prom.ua, Allo, Hotline, Kasta, Epicentr Сервіси синхронізації залишків та прайс-агрегатори Служби доставки - Нова Пошта, Укрпошта, Meest - для автоматичного оновлення статусів Розробники PIM-систем та каталогізаторів CRM-інтегратори - Bitrix24, amoCRM, KeepinCRM, Zoho BI-системи та аналітика - вивантаження даних для звітів 💡 Приклади сценаріїв використання Синхронізація каталогу з ERP - щогодинне оновлення залишків та цін через bulk-endpoint Автоматичний імпорт замовлень з маркетплейсу - створення замовлень через API з нативним запуском OpenCart-подій Мобільний додаток магазину - повний функціонал каталогу, кошика та профілю покупця Автоматична зміна статусу замовлення - інтеграція з ТМС Нової Пошти для оновлення при відправці Імпорт відгуків з маркетплейсів - регулярне підтягування відгуків з Rozetka, Prom Реактивна CRM - вебхуки на order.add та customer.add для миттєвого створення угоди Оновлення SEO URL масово - після зміни структури каталогу ⚙️ Технічні вимоги OpenCart 2.x, 3.x (усі мінорні версії) ocStore 3.x PHP 7.4+ (сумісно з PHP 8.x) MySQL 5.6+ / MariaDB 10+ Підтримка розширення OpenSSL для HMAC20.00 USD -
900грн При купівлі доступ до оновлень протягом 1 року. Після закінчення основного періоду доступ до оновлень можна продовжити 0 грн за 1 рік Завантажити / Придбати розширення Advanced REST API для OpenCart - 1.0.0 + openapi.json, Postman collection, environment Демо модулю Адмінка: перейти Логін: demo Пароль: demo Посилання на документацію та API Reference присутні в адмінці модуля! 🚀 Advanced REST API для OpenCart - професійна інтеграція вашого магазину з будь-якою системою Advanced REST API - це найбільш повноцінний та безпечний REST API модуль для OpenCart, розроблений для магазинів, які потребують глибокої інтеграції з ERP-системами, CRM, обліковими програмами (1С, BAS, Bitrix24), маркетплейсами (Rozetka, Prom, Allo, Hotline), службами доставки (Нова Пошта, Укрпошта) та мобільними додатками. Модуль надає уніфікований HTTP-інтерфейс до всіх основних сутностей магазину з підтримкою HMAC-SHA256 підпису запитів, гнучкою системою прав доступу та вебхуками для реактивних інтеграцій. ✨ Ключові можливості 📦 Повне керування каталогом Товари (Products) - створення, читання, оновлення, видалення з підтримкою мультимовних описів, зображень галереї, атрибутів, опцій (select, radio, checkbox, image, text, textarea, file, date, time, datetime), акцій (specials), знижок (discounts), пов'язаних товарів, SEO URL, макетів, бонусних балів, downloads, фільтрів Розширений endpoint action=full - отримання максимально детальної інформації про товар (виробник, податковий клас, статус наявності, магазини, layouts, відгуки, рейтинг) в одному запиті Масове оновлення залишків та цін (bulk_stock) - до 500 товарів за один запит з ідентифікацією за product_id, SKU або model - ідеально для синхронізації з ERP Категорії (Categories) - ієрархічна структура з рекурсивним видаленням, мультимовні описи, прив'язки до магазинів Виробники (Manufacturers) - CRUD з мультимовністю та SEO Атрибути та групи атрибутів - повне керування характеристиками товарів Опції товарів (Options) - усі типи OpenCart з мультимовними значеннями 🛒 Робота з замовленнями Замовлення (Orders) - читання, створення нових замовлень через штатну логіку OpenCart, обмежене оновлення контактних даних Історія статусів - зміна статусу замовлення з автоматичним email-сповіщенням покупця, списанням залишків, нарахуванням бонусів та застосуванням купонів Статуси замовлень (Order Statuses) - повний CRUD для мультимовних статусів Повернення товарів (Returns / RMA) - CRUD для заявок на повернення з довідниками причин, дій та статусів Фільтрація за датами, покупцем, статусом, пошук за ім'ям та email 👥 Покупці та маркетинг Покупці (Customers) - повний CRUD з адресами, групами покупців, підписками на розсилку, безпечним хешуванням паролів (сумісно з нативним OpenCart) Відгуки (Reviews) - CRUD для імпорту відгуків з маркетплейсів Купони (Coupons) - знижки у відсотках або фіксованій сумі з прив'язкою до товарів і категорій Інформаційні сторінки (CMS) - керування статичними сторінками (Про нас, Доставка, Політика конфіденційності) 🌐 Локалізація та довідники Список мов і валют магазину Довідники країн, зон (областей), геозон Класи ваги, довжини, статуси наявності Податкові класи та ставки Групи покупців та статуси замовлень 🔗 SEO URL (ЧПУ) Універсальний ресурс, який автоматично визначає структуру таблиці ЧПУ вашої збірки: seo_url з колонками key/value (OpenCart 3.0.3.0+) seo_url з колонкою query (ocStore 3.x) url_alias (ранні OpenCart 3.0.x / 2.x) CRUD для будь-яких ЧПУ - товарів, категорій, виробників, сторінок 🪝 Вебхуки (Webhooks) Підписка на події магазину: order.add, order.status, product.add, product.update, product.delete, customer.add Підтримка wildcard * - підписка на всі події Підписані HMAC-SHA256 POST-запити з заголовками X-Webhook-Event і X-Webhook-Signature Синхронна best-effort доставка з коротким тайм-аутом - повільний підписник не блокує API 🖼️ Завантаження зображень Ендпоінт для завантаження зображень через multipart/form-data Автоматичне сортування у папки та підпапки image/catalog/ Захист від path traversal Підтримка форматів jpg, jpeg, png, gif, webp 🏬 Мультимагазин Повна підтримка мультимагазинної конфігурації OpenCart Прив'язка товарів, категорій, виробників, сторінок до конкретних магазинів Ресурс store для отримання списку магазинів 🔒 Безпека та контроль доступу HMAC-SHA256 підпис запитів - захист від підробки та повторного використання (replay-атак) Timestamp-валідація - відхилення від серверного часу не більше ±300 секунд IP-whitelist - обмеження доступу за IP-адресами Rate limiting - налаштовуваний ліміт запитів за хвилину для кожного API-ключа Гранулярні scopes (області доступу) - візуальна матриця ресурс × дія (Читання / Створення / Оновлення / Видалення) для кожного ключа Перемикач DELETE - окремий контроль дозволу на видалення для кожного ключа Ліцензійний ключ з прив'язкою до домену (з підтримкою www та піддоменів) 🛠️ Обхід серверних обмежень (Method Override) Якщо ваш хостинг блокує HTTP-методи DELETE та PUT (типова проблема на shared-хостингу), модуль підтримує method override через POST з параметром &method=delete або &method=put. Підпис при цьому не змінюється - усі перевірки прав та scopes працюють нативно. 📚 Документація та інструменти розробника OpenAPI 3.0 специфікація - повний машиночитний документ (docs/openapi.json) та живий ендпоінт /spec Інтерактивна довідка Redoc - docs/api.html Готова Postman-колекція - 19 папок за ресурсами, ~68 запитів з автоматичним HMAC-підписом через pre-request скрипт (CryptoJS) Чеклист тіл запитів - усі ендпоінти з готовими JSON-тілами для копіювання Приклади на PHP, cURL, bash Уніфіковані коди відповідей: 200, 201, 400, 401, 403, 404, 405, 429 Єдиний формат помилок для зручного парсингу на клієнті 🎯 Кому підійде модуль Інтернет-магазини на OpenCart 2.x, 3.x, ocStore, які потребують автоматизації Розробники мобільних додатків для iOS/Android до магазину Інтегратори з обліковими системами - 1С, BAS, MySklad, MoySklad, Dinet, KeyCRM Постачальники маркетплейсів - Rozetka, Prom.ua, Allo, Hotline, Kasta, Epicentr Сервіси синхронізації залишків та прайс-агрегатори Служби доставки - Нова Пошта, Укрпошта, Meest - для автоматичного оновлення статусів Розробники PIM-систем та каталогізаторів CRM-інтегратори - Bitrix24, amoCRM, KeepinCRM, Zoho BI-системи та аналітика - вивантаження даних для звітів 💡 Приклади сценаріїв використання Синхронізація каталогу з ERP - щогодинне оновлення залишків та цін через bulk-endpoint Автоматичний імпорт замовлень з маркетплейсу - створення замовлень через API з нативним запуском OpenCart-подій Мобільний додаток магазину - повний функціонал каталогу, кошика та профілю покупця Автоматична зміна статусу замовлення - інтеграція з ТМС Нової Пошти для оновлення при відправці Імпорт відгуків з маркетплейсів - регулярне підтягування відгуків з Rozetka, Prom Реактивна CRM - вебхуки на order.add та customer.add для миттєвого створення угоди Оновлення SEO URL масово - після зміни структури каталогу ⚙️ Технічні вимоги OpenCart 2.x, 3.x (усі мінорні версії) ocStore 3.x PHP 7.4+ (сумісно з PHP 8.x) MySQL 5.6+ / MariaDB 10+ Підтримка розширення OpenSSL для HMAC Автор bogdan281989 Опубліковано 18.09.26 Категорія Обмін даними OpenCart.Pro, ocShop
-
Автоматическая пакетная генерация изображений по очереди: связываем JSON, PHP и Gemini Flash Image
kJlukOo опубликовал запись в блоге в блог для натуралов
Когда нужно сгенерировать большую партию графики (например, десятки баннеров под разные ниши и соотношения сторон), ручной запуск каждого промта это трата времени. Гораздо эффективнее построить мини-конвейер: выгрузить все запросы в JSON-файл и запустить самоочищающуюся очередь на PHP, которая будет последовательно отправлять задачи в модель gemini-3.1-flash-image, сохранять результат на диск и обновлять страницу до тех пор, пока работа не завершится. В этой статье разберем, как спроектировать и запустить такую систему. Архитектура решения Наша система состоит из трех основных компонентов: prompts.json - локальная база данных (очередь), содержащая список текстовых заданий для генерации. PHP-скрипт управления (index.php) - мозг системы, который забирает первый элемент из массива, удаляет его из файла и управляет автообновлением страницы через заголовок header(). API-клиент модели gemini-3.1-flash-image - обработчик, который принимает строку промта, генерирует картинку и сохраняет её в локальную папку. Шаг 1. Подготовка файла очереди (prompts.json) Создадим файл, в котором хранятся наши текстовые запросы в виде простого массива строк: JSON [ "абстрактный минималистичный веб-баннер, современные плавные геометрические формы, мягкие пастельные градиентные цвета, без текста, без логотипов, без кнопок, профессиональный дизайн", "широкий рекламный баннер с абстрактным технологичным фоном, глубокие современные оттенки, легкое свечение, без надписей и логотипов, высокое качество", "квадратный рекламный постер в стиле минимализм, стильные абстрактные элементы, мягкое студийное освещение, без текста, без кнопок и логотипов" ] Шаг 2. Разработка PHP-скрипта с очередью и автообновлением Основная идея автоматизации - использовать функцию array_shift(). Она извлекает первый элемент из массива и автоматически сдвигает весь массив, удаляя этот элемент. После этого мы перезаписываем JSON-файл обновленным списком. Для того чтобы скрипт переходил к следующему промту без участия человека, используется стандартный PHP-заголовок header("Refresh: 5"), перезагружающий страницу каждые 5 секунд. Шаг 3. Запуск и контроль процесса Поместите скрипт index.php и файл prompts.json в корень вашего локального или удаленного сервера (например, OpenServer или Docker-контейнер). Откройте страницу в браузере. Как это работает на практике: Скрипт считывает файл Берет строку номер один, отправляет её в gemini-3.1-flash-image Получает картинку, сохраняет её в папку generated_banners/ Удаляет этот промт из prompts.json Перезагружает страницу через 5 секунд, беря в работу следующий элемент Как только массив в JSON опустеет, скрипт автоматически прекратит обновление и выведет сообщение об успешном завершении пакетной генерации. Преимущества такого подхода Отказоустойчивость: Если на каком-то промте произойдет сбой сети или таймаут API, обработанные элементы уже удалены из JSON, а необработанные ждут своей очереди — процесс можно просто возобновить с того же места. Минимум кода: Никаких сложных очередей на Redis или RabbitMQ - чистый PHP и файловая система, разворачиваемые за две минуты. кстати, пока я тестировал этот конвейер, под руку подвернулся старый проект, и я решил "воскресить" свой старый модуль qBanner Constructor https://opencartforum.com/files/file/3707-qbanner-konstruktor/