InSales API - Widgets
Материал из Insales Wiki
Содержание
Суть виджета
Виджет - это iframe выводимый на странице заказа в бэкофисе.
Являясь по сути html блоком на странице - позволяет использовать html для форматирования и javascript для реализации какой-то логики.
Для обмена данными с сервером приложения можно использовать JSONP
Описание полей:
id - id виджета
code - html содержимое виджета
height - высота блока виджета
Получение списка виджетов
Запрос: GET /admin/application_widgets.xml
Ответ:
HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <application-widgets type="array"> <application-widget> <created-at type="datetime">2012-08-09T00:36:54+04:00</created-at> <id type="integer">1</id> <code><script>alert(order_info.referer);</script></code> <height type="integer">60</height> </application-widget> <application-widget> <created-at type="datetime">2012-08-09T00:36:54+04:00</created-at> <id type="integer">2</id> <code>some widget code here</code> <height type="integer">60</height> </application-widget> </application-widgets>
Получение информации о виджете
Запрос: GET /admin/application_widgets/#{id}.xml
Ответ:
HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <application-widget> <created-at type="datetime">2012-08-09T00:36:54+04:00</created-at> <id type="integer">1</id> <code>some html or javascript code here</code> <height type="integer">60</height> </application-widget>
Добавление виджета
Запрос: POST /admin/application_widgets.xml
<application-widget> <code>some html or javascript code</code> </application-widget>
Ответ:
HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <application-widget> <created-at type="datetime">2012-08-09T17:26:48+04:00</created-at> <height type="integer">60</height> <id type="integer">6</id> <code>some html or javascript code</code> </application-widget>
Редактирование виджета
Запрос: PUT /admin/application_widgets/#{id}.xml
<application-widget> <code>code changed</code> <height>100</height> </application-widget>
Ответ:
HTTP/1.1 200 OK
Удаление виджета
Запрос: DELETE /admin/application_widgets/#{id}.xml
Ответ:
HTTP/1.1 200 OK