Создание и редактирование продукта
Будут сохраняться только переданные параметры. Параметры которые не передаются в запросе изменяться не будут. Значение NULL считается будто параметр не передаётся.
Параметры запроса:
| method | string | Метод (EditGood) |
| id | integer | Идентификатор пользователя из профиля (обязательно) |
| key | string | Ключ для подписи запросов (обязательно) |
| good_id | integer | Идентификатор продукта (для редактирования продукта) |
| title | string | Название продукта |
| good_category_id | integer | Идентификатор категории |
| good_type | integer | Тип продукта (0-"Запись", 1-"Онлайн", 2-"Живой", 3-"Физический") |
| hide_img | integer | Скрыть изображение продукта на странице заказа |
| price_type | integer | Номер типа стоимости (0-фиксированная, 1-плавающая, 2-периодическая) |
| price | integer | Стоимость продукта |
| pay_period | integer | Для периодических - период оплаты: 0-ежемесячно; 1-еженедельно |
| currency | string | Валюта ("", "USD", "EUR") |
| on_sale | integer | Акция |
| price_wo_sale | integer | Стоимость без акции |
| good_coupons | array | Купоны array("code" => array(string), "discount" => array(integer), "discount_type" => array(integer 0-%,1-у.е.), "is_limit_date" => array(integer), "limit_date" => array(datetime 2020-12-31 12:55:44)) |
| on_credit | integer | Возможность рассрочки |
| credit | array | Если on_credit=1: array(min_first [Минимальная сумма каждого взноса integer], max_time [Максимальный срок рассрочки integer дней], max_date [Максимальная дата рассрочки YYYY-MM-DD], allow_access [Открывать доступ к контенту продукта после первого взноса 1/0], notification_on [Уведомлять покупателя о требуемой оплате по e-mail за несколько дней 1/0], notification_time [Дней до оплаты integer]) |
| on_selling_end | integer | 1 - Завершить продажи после даты |
| selling_end | YYYY-MM-DD HH:II:SS | Дата окончания продаж |
| max_orders | integer | Максимальное количество заказов |
| max_payments | integer | Максимальное количество заказов |
| ask_phone_after | integer | 1 - Спрашивать номер телефона после покупки |
| title_buy | string | Заголовок на странице заказа |
| description | string | Текст на странице заказа |
| landing_url | string | Ссылка на страницу с информацией о продукте для менеджеров Call-центра и партнеров |
| content | string | Контент, доступный после покупки в личном кабинете |
| is_letter_content | integer | 1 - Отправить контент письмом |
| videos | array | Видео, доступные после покупки array(array(link => ссылка на видео например ютуб, dir_id => ид. папки или 0 - без папки), ...) |
| video_download | integer | Разрешить скачивание видео (youtube) |
| coupon_codes_on | integer | Выдача паролей |
| codes | array | Присутствует если coupon_codes_on=1: массив строк кодов; добавляет новые и удаляет те которых не будет в этом списке |
| coupon_codes_check | integer | 1 - Уведомлять по email когда закончатся пароли |
| order_button_text | string | Текст кнопки заказа |
| buy_input_fename | integer | Поле Фамилия в форме заказа (0 - скрыто, 1 - показано, 2 - обязательно для заполнения) |
| buy_input_skype | integer | Поле skype в форме заказа (0 - скрыто, 1 - показано, 2 - обязательно для заполнения) |
| buy_input_address | integer | Поле комментария в форме заказа (0 - скрыто, 1 - показано, 2 - обязательно для заполнения) |
| buy_input_comment | integer | Поле комментария в форме заказа (0 - скрыто, 1 - показано, 2 - обязательно для заполнения) |
| buy_input_sn | integer | Поле ссылка на страницу соцсети (0 - скрыто, 1 - показано, 2 - обязательно для заполнения) |
| allow_vk_button | integer | 1 - Отображать кнопку входа через ВК на странице оформления заказа |
| on_user_calls | integer | 1 - Подключение Call-центра |
| user_calls_time | integer | Позвонить клиенту через N часов |
| source_client | integer | Источник клиентов (0-"Не выбрано", 1-"Вебинар", 2-"Воронка (трафик->сайт->заявка)") |
| info_for_oper | string | Информация для операторов |
| record_time | integer | Продолжительность записи в минутах |
| size_files | integer | Размер файлов (Мб) |
| speakers | array | массив строк - список спикеров |
| speaker_contacts | string | Контактные данные спикеров |
| num_lessons | integer | Общее количество занятий |
| num_lessons2week | integer | Количество занятий в неделю |
| start_lessons | string | Начало занятий (Московское время) |
| time_lessons | integer | Примерная продолжительность занятий (мин) |
| feedback_lessons | string | Как происходит обратная связь между занятиями |
| allow_look_lessons | integer | Доступность записей для просмотра |
| allow_download_lessons | integer | Доступность записей для скачивания |
| address_lessons | string | Адрес проведения занятий |
| date_lessons | YYYY-MM-DD HH:II:SS | Дата и время начала занятий |
| terms_lessons | string | Сроки проведения занятий |
| time_every_lessons | integer | Продолжительность занятий в минутах |
| good_dimensions | string | Размеры продукта |
| payment_on_delivery | integer | Оплата при получении |
| show_field_count | integer | 1 - Отображать поле "Количество" в форме заказа |
| data_departure | string | Данные для отправления |
| selling_end_url | string | Ссылка на страницу после завершения продаж |
| service_field | string | Информационное поле, которое присутствует в выгрузке продуктов через API |
| success_url | string | Страница после успешной оплаты |
| buy_letter | string | Текст письма при оформлении заказа |
| price_hide | integer | Скрывать цену на странице заказа |
| comission_1_value_1 | integer | Партнерские отчисления первого уровня при первой продаже |
| comission_1_type_1 | integer | Тип партнерских отчислений первого уровня при первой продаже (0-%, 1-РУБ) |
| comission_1_value_2 | integer | Партнерские отчисления первого уровня при последующих продажах |
| comission_1_type_2 | integer | Тип партнерских отчислений первого уровня при последующих продажах (0-%, 1-РУБ) |
| comission_2_value_1 | integer | Партнерские отчисления второго уровня при первой продаже |
| comission_2_type_1 | integer | Тип партнерских отчислений второго уровня при первой продаже (0-%, 1-РУБ) |
| comission_2_value_2 | integer | Партнерские отчисления второго уровня при последующих продажах |
| comission_2_type_2 | integer | Тип партнерских отчислений второго уровня при последующих продажах (0-%, 1-РУБ) |
| cancel_unpaid | integer | Аннулирование неоплаченные заказы (0-"Нет", 1-"Через несколько дней", 2-"В определенный день") |
| cancel_unpaid_after_days | integer | Аннулировать неоплаченные заказы через N дней |
| min_partner_sales | integer | Минимальное количество партнерских продаж |
| is_deferred_pay | integer | Отложенная оплата |
| is_deferred_date | integer | Отправить письма на оплату автоматически |
| cancel_unpaid_date | YYYY-MM-DD HH:II:SS | Дата аннулирования неоплаченных заказов |
| deferred_date | YYYY-MM-DD HH:II:SS | Дата и время отправления писем при отложенной оплате |
| pay_timer | integer | Таймер на оплату, секунд |
| pay_timer_hard | integer | Недоступно оплатить заказ после окончания таймера |
Результат:
| status | Статус выполнения запроса (ok, error) |
| message | Информация об ошибке |
| good_id | Идентификатор продукта |
Пример запроса:
$params = Array ( "method" => "EditGood", "id" => ID, "key" => "KEY", "good_id" => 6159, "title" => "Название продукта", ... );
$url = "https://monecle.com/api/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if (!curl_errno($ch)) {
echo $response;
}
curl_close($ch);
{"status":"ok","good_id":6159,"good":{"title": "Название продукта", ...},"action":"edit"}