Все вызовы должны содержать REST API ключ, который можно найти кликнув по кнопке "API ключи" вначале страницы страницы.
Ответ с сервера может быть получен в формате JSON или XML, в зависимости от вашего запроса.
Ниже мы покажем таблицы с ответами сервера для каждого запроса. URL будут показаны в виде /apps.json, это означает, что вы должны вызвать метод с ссылкой https://QuintaDB.ru/apps.json в вашей программе. Пожалуйста, заметьте, что все вызовы должны использовать протокол https и вы должны проверять SSL сертификат сервера на валидность.
Такие атрибуты базы данных могут быть получены используя REST API.
Уникальный идентификатор базы данных
nameНазвание
created_atВремя, когда база данных была создана
updated_atВремя, когда база данных была обновлена
Количество записей в базе данных
entities_countКоличество таблиц в базе данных
properties_countКоличество колонок в базе данных
complex_appСложное ли это приложение, т.е. такой в котором включено кеширование. Возвращает true или false
complex_app_with_fresh_dataСложное ли это приложение и свежие ли данные в кеше. Возвращает true или false
Получить все базы данных
ваш API ключ
pageБазы данных показываются по 20 на страницу. Т.е. page может быть 1..5
JSON
МетодGET
URL/apps.json
Тело запроса{"page":1,"rest_api_key":"API_KEY"}
Ответ: возвращает все базы данных
{"databases":[
{"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "Database Name 1",
"created_at" : "2021-08-16T05:42:40-05:00",
"updated_at" : "2021-08-16T05:42:40-05:00",
"dtypes_count" : 0,
"entities_count" : 1,
"properties_count": 0
},
{"id" : "aOWO3eVXHdHie1WeGFE8k2"
"name" : "Database Name 2",
"created_at" : "2021-04-29T01:26:22-05:00",
"updated_at" : "2021-08-16T00:47:56-05:00",
"dtypes_count" : 768,
"entities_count" : 6,
"properties_count": 240
} ]}
XML
МетодGET
URL/apps.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<page>1</page>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<databases type="array">
<database>
<id>aOWO_dVXHdHie1WeGFE8k2</id>
<name>Database name 1</name>
<created-at type="datetime">2021-08-16T05:42:40-05:00</created-at>
<updated-at type="datetime">2021-08-16T05:42:40-05:00</updated-at>
<dtypes-count type="integer">0</dtypes-count>
<entities-count type="integer">1</entities-count>
<properties-count type="integer">0</properties-count>
</database>
<database>
<id>aOWO3eVXHdHie1WeGFE8k2</id>
<name>Database Name 2</name>
<created-at type="datetime">2021-04-29T01:26:22-05:00</created-at>
<updated-at type="datetime">2021-08-16T00:47:56-05:00</updated-at>
<dtypes-count type="integer">768</dtypes-count>
<entities-count type="integer">6</entities-count>
<properties-count type="integer">240</properties-count>
</database>
</databases>
Получить базу данных по ID
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
JSON
МетодGET
URL/apps/APP_ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ: возвращает информацию о базе данных
{"database":{
"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "Database Name 1",
"created_at" : "2011-08-16T05:42:40-05:00",
"updated_at" : "2011-08-16T05:42:40-05:00",
"dtypes_count" : 0,
"entities_count" : 1,
"properties_count": 0,
"complex_app?" : true,
"complex_app_with_fresh_data?" : false
}
}
XML
МетодGET
URL/apps/APP_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<database>
<id>aOWO_dVXHdHie1WeGFE8k2</id>
<name>Database name 1</name>
<created-at type="datetime">2011-08-16T05:42:40-05:00</created-at>
<updated-at type="datetime">2011-08-16T05:42:40-05:00</updated-at>
<dtypes-count type="integer">0</dtypes-count>
<entities-count type="integer">1</entities-count>
<properties-count type="integer">0</properties-count>
</database>
Получить базу данных по Имени
ваш API ключ
НазваниеВам нужно знать название базы данных. Название можно получить выполнив запрос Получить все базы данных .
JSON
МетодGET
URL/apps/search.json
Тело запроса{"rest_api_key":"API_KEY", "name":"Database Name 1"}
Ответ: возвращает информацию о базе данных
{"database":{
"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "Database Name 1",
"created_at" : "2021-08-16T05:42:40-05:00",
"updated_at" : "2021-08-16T05:42:40-05:00",
"dtypes_count" : 0,
"entities_count" : 1,
"properties_count": 0,
"complex_app?" : true,
"complex_app_with_fresh_data?" : false
}
}
XML
МетодGET
URL/apps/search.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<name>Database Name 1</name>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<database>
<id>aOWO_dVXHdHie1WeGFE8k2</id>
<name>Database name 1</name>
<created-at type="datetime">2021-08-16T05:42:40-05:00</created-at>
<updated-at type="datetime">2021-08-16T05:42:40-05:00</updated-at>
<dtypes-count type="integer">0</dtypes-count>
<entities-count type="integer">1</entities-count>
<properties-count type="integer">0</properties-count>
</database>
Обновить базу данных
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
nameНовое название базы данных
JSON
МетодPUT
URL/apps/APP_ID.json
Тело запроса{"rest_api_key":"API_KEY",
"name":"New database name"}
{"database":{
"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "New database name",
"created_at" : "2021-08-16T05:42:40-05:00",
"updated_at" : "2021-08-16T05:42:40-05:00",
"dtypes_count" : 0,
"entities_count" : 1,
"properties_count": 0,
"complex_app?" : true,
"complex_app_with_fresh_data?" : false
}
}
XML
МетодPUT
URL/apps/APP_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<name>New database name</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<database>
<id>aOWO_dVXHdHie1WeGFE8k2</id>
<name>New database name</name>
<created-at type="datetime">2021-08-16T05:42:40-05:00</created-at>
<updated-at type="datetime">2021-08-16T05:42:40-05:00</updated-at>
<dtypes-count type="integer">0</dtypes-count>
<entities-count type="integer">1</entities-count>
<properties-count type="integer">0</properties-count>
</database>
Удалить базу данных
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
JSON
МетодDELETE
URL/apps/APP_ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ
{"databases":[{
"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "Database Name 1",
"created_at" : "2011-08-16T05:42:40-05:00",
"updated_at" : "2011-08-16T05:42:40-05:00",
"dtypes_count" : 0,
"entities_count" : 1,
"properties_count": 0
},
{"id" : "aOWO3eVXHdHie1WeGFE8k2"
"name" : "Database Name 2",
"created_at" : "2011-04-29T01:26:22-05:00",
"updated_at" : "2011-08-16T00:47:56-05:00",
"dtypes_count" : 768,
"entities_count" : 6,
"properties_count": 240
} ]}
XML
МетодDELETE
URL/apps/APP_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<databases type="array">
<database>
<id>aOWO_dVXHdHie1WeGFE8k2</id>
<name>Database name 1</name>
<created-at type="datetime">2011-08-16T05:42:40-05:00</created-at>
<updated-at type="datetime">2011-08-16T05:42:40-05:00</updated-at>
<dtypes-count type="integer">0</dtypes-count>
<entities-count type="integer">1</entities-count>
<properties-count type="integer">0</properties-count>
</database>
<database>
<id>aOWO3eVXHdHie1WeGFE8k2</id>
<name>Database Name 2</name>
<created-at type="datetime">2011-04-29T01:26:22-05:00</created-at>
<updated-at type="datetime">2011-08-16T00:47:56-05:00</updated-at>
<dtypes-count type="integer">768</dtypes-count>
<entities-count type="integer">6</entities-count>
<properties-count type="integer">240</properties-count>
</database>
</databases>
Создать проект
ваш API ключ
database_nameНазвание приложения
form_nameНазвание формы. Вы не можете создать базу данных без формы. Потому что нет смысла в базе данных без формы.
JSON
МетодPOST
URL/apps.json
Тело запроса{"rest_api_key":"API_KEY", database_name: "Database 1", form_name: "Form 1"}
Ответ: возвращает информацию о базе данных
{"database":
{"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "Database Name 1",
"created_at" : "2011-08-16T05:42:40-05:00",
"updated_at" : "2011-08-16T05:42:40-05:00",
"dtypes_count" : 0,
"entities_count" : 1,
"properties_count": 0
}
}
XML
МетодPOST
URL/apps.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<database_name>Database 1</database_name>
<form_name>Form 1</form_name>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<database>
<id>aOWO_dVXHdHie1WeGFE8k2</id>
<name>Database name 1</name>
<created-at type="datetime">2011-08-16T05:42:40-05:00</created-at>
<updated-at type="datetime">2011-08-16T05:42:40-05:00</updated-at>
<dtypes-count type="integer">0</dtypes-count>
<entities-count type="integer">1</entities-count>
<properties-count type="integer">0</properties-count>
</database>
Такие атрибуты формы могут быть получины используя REST API.
Уникальный идентификатор формы
nameНазвание
descОписание
post_actionСписок получателей E-mail уведомлений
URL перехода. На эту страницу будет перенаправлен пользователь, заполнивший веб форму
positionПозиция формы. Показывает порядок в котором форма будет получена по сравнению с другими формами базы данных
sort_byИдентификатор поля, по которому отсортированы записи формы
asctrue или false. Что означает по возрастанию или убыванию сортированы записи
per_pageСколько записей показывается на странице
allow_deletetrue или false. Когда true, веб пользователи смогут удалять записи с интегрированной базы данных
allow_databasetrue или false. Когда true, веб пользователи смогут видеть все записи БД в интегрированной базе данных
send_emailstrue или false. Посылать или нет E-mail уведомления о новых записях, добавленных в БД
new_widgetХеш настроек виджета формы
records_widgetХеш настроек виджета БД
settingsХеш настроек формы
records_countКоличество записей в форме
Получить все формы
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
JSON
МетодGET
URL/apps/APP_ID/entities.json
Тело запроса{rest_api_key":"API_KEY"}
Ответ: получить все формы базы данных
{"forms":[
{
"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Form Name 1",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
},
{
"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Form Name 1",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
} ]}
XML
МетодGET
URL/apps/APP_ID/entities.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<forms type="array">
<form>
<id>c7zH3cKWrnqQvbrG8Nd3C7</id>
<app-id>akFSkDDdncMyoKjGnWFmoE</app-id>
<name>Form1</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
<form>
<id>aszH3cKWrnqQvbrG8Nd3C7</id>
<app-id>ddFSkDDdncMyoKjGnWFmoE</app-id>
<name>Form2</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
</forms>
Получить форму по ID
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
JSON
МетодGET
URL/apps/APP_ID/entities/ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ: возвращает информацию о форме
{"form":
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Form Name 1",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
}
}
XML
МетодGET
URL/apps/APP_ID/entities/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<form>
<id>c7zH3cKWrnqQvbrG8Nd3C7</id>
<app-id>akFSkDDdncMyoKjGnWFmoE</app-id>
<name>Form1</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
Получить форму по Названию
ваш API ключ
database_nameВам нужно знать название базы данных. Название можно получить выполнив запрос Получить все базы данных .
form_nameВы должны знать название формы. Его можно получить, используя вызов Получить все формы .
JSON
МетодGET
URL/apps/search/entities/search.json
Тело запроса{"rest_api_key":"API_KEY", "database_name": "Database 21", "form_name": "Form Name 1"}
Ответ: возвращает информацию о форме
{"form":
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Form Name 1",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
}
}
XML
МетодGET
URL/apps/search/entities/search.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<database_name>Database 21</database_name>
<form_name>Form1</form_name>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<form>
<id>c7zH3cKWrnqQvbrG8Nd3C7</id>
<app-id>akFSkDDdncMyoKjGnWFmoE</app-id>
<name>Form1</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
Обновить форму
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
nameНовое название формы. Смотрите все доступные параметры здесь
JSON
МетодPUT
URL/apps/APP_ID/entities/ID.json
Тело запроса{"rest_api_key":"API_KEY",
"name":"New form name"}
{"form":
{
"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "New form name",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
}
}
XML
МетодPUT
URL/apps/APP_ID/entities/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<name>New form name</name>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<form>
<id>c7zH3cKWrnqQvbrG8Nd3C7</id>
<app-id>akFSkDDdncMyoKjGnWFmoE</app-id>
<name>New form name</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
Удалить форму
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
IDВы должны знать идентификатор формы, которую хотите удалить. Вы можете найти ID получив все формы. Зная идентификатор формы вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2.json
JSON
МетодDELETE
URL/apps/APP_ID/entities/ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ
{"forms":[{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Form Name 1",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
},
{ "id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Form Name 1",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
} ]}
XML
МетодDELETE
URL/apps/APP_ID/entities/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<forms type="array">
<form>
<id>c7zH3cKWrnqQvbrG8Nd3C7</id>
<app-id>akFSkDDdncMyoKjGnWFmoE</app-id>
<name>Form1</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
<form>
<id>aszH3cKWrnqQvbrG8Nd3C7</id>
<app-id>ddFSkDDdncMyoKjGnWFmoE</app-id>
<name>Form2</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
</forms>
Создать форму
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
nameНазвание формы
JSON
МетодPOST
URL/apps/APP_ID/entities.json
Тело запроса{"rest_api_key":"API_KEY", name: "New form"}
Ответ: возвращает информацию о форме
{"form":
{
"id" : "aOWO_dVXHdHie1WeGFE8k2",
"app_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "New form",
"desc" : "Form description",
"post_action" : "email@email.com",
"position" : 0,
"sort_by" : null,
"asc" : false,
"per_page" : 10,
"allow_delete" : false,
"new_widget" : null,
"records_widget" : null,
"target_page" : null,
"allow_database" : true,
"send_emails" : true,
"settings" : null
}
}
XML
МетодPOST
URL/apps/APP_ID/entities.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<name>New form</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<form>
<id>c7zH3cKWrnqQvbrG8Nd3C7</id>
<app-id>akFSkDDdncMyoKjGnWFmoE</app-id>
<name>New form</name>
<desc nil="true"></desc>
<post-action>igor.petrushenko@gmail.com</post-action>
<position type="integer">0</position>
<sort-by nil="true"></sort-by>
<asc type="boolean">false</asc>
<per-page type="integer">10</per-page>
<allow-delete type="boolean">false</allow-delete>
<new-widget nil="true"></new-widget>
<records-widget nil="true"></records-widget>
<target-page nil="true"></target-page>
<allow-database type="boolean">true</allow-database>
<send-emails type="boolean">true</send-emails>
<settings nil="true"></settings>
</form>
Такие атрибуты поля могут быть получены через REST API.
Уникальный идентификатор поля
entity_idИдентификатор формы поля
nameНазвание
type_nameТип поля. Можеть быть: string, text, integer, float, select, radio button, check box, date, dob, datetime, file, image, boolean, language, states, table, country, time_zone, note, divider, formula, autoincrement, login, password, signature, linked_column, rel, subform
Описание
defaultЗначение поля по умолчанию
validate_optionsОпции валидации
positionПозиция поля на форме
visibletrue или false. Показывает видима ли данная колонка в интегрированной базе данных
sizeРазмер поля
colsКолонки поля с типом Таблица
rowsСтроки поля с типом Таблица
Получить поля формы
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
JSON
МетодGET
URL/apps/APP_ID/entities/ENTITY_ID/properties.json
Тело запроса{rest_api_key":"API_KEY"}
Ответ: получить все поля формы
{"fields":[
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
},
{"id" : "1i2i4VXHdHie1WeGFE8k2" ,
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
}
]}
XML
МетодGET
URL/apps/APP_ID/entities/ENTITY_ID/properties.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<fields type="array">
<field>
<id>clrSoltHDdQyozW5NcLrGd</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test</name>
<desc nil="true"></desc>
<type-name>string</type-name>
<default></default>
<validate-options></validate-options>
<position type="integer">0</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
<field>
<id>ddUHDhCgzeW6HkW4NdG3vE</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test2</name>
<desc nil="true"></desc>
<type-name>select</type-name>
<default>1slct2slct3slct4slct5</default>
<validate-options></validate-options>
<position type="integer">1</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
</fields>
Получить поле
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
IDВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
JSON
МетодGET
URL/apps/APP_ID/entities/ENTITY_ID/properties/ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ
{"field":
{
"id" : "aOWO_dVXHdHie1WeGFE8k2",
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
}
}
XML
МетодGET
URL/apps/APP_ID/entities/ENTITY_ID/properties/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<field>
<id>clrSoltHDdQyozW5NcLrGd</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test</name>
<desc nil="true"></desc>
<type-name>string</type-name>
<default></default>
<validate-options></validate-options>
<position type="integer">0</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
Получить поле по Имени
ваш API ключ
database_nameВам нужно знать название базы данных. Название можно получить выполнив запрос Получить все базы данных .
form_nameВы должны знать название формы. Его можно получить, используя вызов Получить все формы .
field_nameВы должны знать название поля. Его можно получить, используя вызов Получить все поля формы .
JSON
МетодGET
URL/apps/search/entities/search/properties/search.json
Тело запроса{"rest_api_key":"API_KEY", "database_name": "Database 21", "form_name": "Form Name 1", "field_name": "Field Name 1"}
Ответ
{"field":
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
}
}
XML
МетодGET
URL/apps/search/entities/search/properties/search.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<database_name>Database 21</database_name>
<form_name>Form1</form_name>
<field_name>test</field_name>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<field>
<id>clrSoltHDdQyozW5NcLrGd</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test</name>
<desc nil="true"></desc>
<type-name>string</type-name>
<default></default>
<validate-options></validate-options>
<position type="integer">0</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
Выполнить действие
ваш API ключ
DTYPE_IDВы должны знать идентификатор записи. ID можно найти получив все записи.
ACTION_PROPERTY_IDВы должны знать идентификатор поля. Вы можете найти PROPERTY_ID получив все поля формы.
JSON
МетодGET
URL/actions/ACTION_PROPERTY_ID.json
Тело запроса{"rest_api_key":"API_KEY", "dtype_id": "DTYPE_ID"}
Ответ
{\"success\":\"Done\"}
XML
МетодGET
URL/actions/ACTION_PROPERTY_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<dtype_id>DTYPE_ID</dtype_id>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<success>Done</success>
Выполнить действия
ваш API ключ
ACTION_PROPERTY_IDВы должны знать идентификатор поля. Вы можете найти PROPERTY_ID получив все поля формы.
dtype_idsВы должны знать идентификаторы своих записей. Вы можете найти идентификатор с помощью вызова получив все записи.
json_dtype_idsВы должны знать идентификаторы записей. ID можно найти получив все записи.
run_by_all_table_or_reportДля выполнения всех действий в таблице или отчете доступен следующий параметр: run_by_all_table_or_report=true.
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
JSON
МетодGET
URL/actions/ACTION_PROPERTY_ID.json
Тело запроса{"rest_api_key":"API_KEY", "dtype_ids": ["ID1","ID2"...]}
{"rest_api_key":"API_KEY", "json_dtype_ids": "[\"ID1\",\"ID2\"...]"}
{"rest_api_key":"API_KEY", "run_by_all_table_or_report": true}
Ответ
{\"success\":\"Done\"}
XML
МетодGET
URL/actions/ACTION_PROPERTY_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<dtype_ids>"ID1","ID2"...</dtype_ids>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<json_dtype_ids>"[\"ID1\",\"ID2\"...]"</json_dtype_ids>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<run_by_all_table_or_report>true</run_by_all_table_or_report>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<success>Done</success>
Обновить поле
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
IDВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
nameНовое название поля. Все доступные атрибуты можно найти здесь
JSON
МетодPUT
URL/apps/APP_ID/entities/ENTITY_ID/properties/ID.json
Тело запроса{"rest_api_key":"API_KEY",
"name":"New field name"}
{"field":
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
}
}
XML
МетодPUT
URL/apps/APP_ID/entities/ENTITY_ID/properties/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<name>New field name</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<field>
<id>clrSoltHDdQyozW5NcLrGd</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test</name>
<desc nil="true"></desc>
<type-name>string</type-name>
<default></default>
<validate-options></validate-options>
<position type="integer">0</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
Удалить поле
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
IDВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
JSON
МетодDELETE
URL/apps/APP_ID/entities/ENTITY_ID/properties/ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ
{"fields":[
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
},
{"id" : "1i2i4VXHdHie1WeGFE8k2" ,
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
}
]}
XML
МетодDELETE
URL/apps/APP_ID/entities/ENTITY_ID/properties/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<fields type="array">
<field>
<id>clrSoltHDdQyozW5NcLrGd</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test</name>
<desc nil="true"></desc>
<type-name>string</type-name>
<default></default>
<validate-options></validate-options>
<position type="integer">0</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
<field>
<id>ddUHDhCgzeW6HkW4NdG3vE</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test2</name>
<desc nil="true"></desc>
<type-name>select</type-name>
<default>1slct2slct3slct4slct5</default>
<validate-options></validate-options>
<position type="integer">1</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
</fields>
Создать поле
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
nameНазвание поля
type_nameТип поля. Можеть быть: string, text, integer, float, select, radio button, check box, date, dob, datetime, file, image, boolean, language, states, table, country, time_zone, note, divider, formula, autoincrement, login, password, rel, linked_column, signature, subform
JSON
МетодPOST
URL/apps/APP_ID/entities/ENTITY_ID/properties.json
Тело запроса{"rest_api_key":"API_KEY", name: "Field name 1", type_name: "string"}
Ответ: возвращает информацию о форме
{"field":
{"id" : "aOWO_dVXHdHie1WeGFE8k2",
"entity_id" : "aOWO3eVXHdHie1WeGFE8k2",
"name" : "Field Name 1",
"desc" : "Field description",
"type_name" : "string",
"default" : "default value",
"validate_options" : "",
"position" : 0,
"visible" : true,
"size": 50,
"cols": 43,
"rows": 10
}
}
XML
МетодPOST
URL/apps/APP_ID/entities/ENTITY_ID/properties.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<name>Form field 1</name>
<type-name>string</type-name>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<field>
<id>clrSoltHDdQyozW5NcLrGd</id>
<entity-id>dcOSk2W6bdJOoPsCo8jmoE</entity-id>
<name>test</name>
<desc nil="true"></desc>
<type-name>string</type-name>
<default></default>
<validate-options></validate-options>
<position type="integer">0</position>
<visible type="boolean">true</visible>
<size type="integer">50</size>
<cols type="integer">43</cols>
<rows type="integer">10</rows>
</field>
</field>
Получить сумму по колонке
ваш API ключ
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
IDВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
JSON
МетодGET
URL/search/sum/ENTITY_ID/ID.json
Тело запроса{"rest_api_key":"API_KEY",
view: "ImWO3eVXHdHie1WeGFE8k2"}
{total: 3}
XML
МетодGET
URL/search/sum/ENTITY_ID/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<view>ImWO3eVXHdHie1WeGFE8k2</view>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<total>
3
</total>
Такие атрибуты записи могут быть получены через REST API.
Уникальный идентификатор записи.
app_idID приложения
entity_idИдентификатор формы записи.
valuesХеш значений записи. Где ключом является идентификатор поля, а значением - значение поля.
json_valuesХеш значений записи. Где ключом является идентификатор поля, а значением - значение поля. Аналог values_hash, но в формате JSON
rel_valuesХеш значений связей записи. Где ключом является идентификатор поля, а значением - идентификаторы связанных записей.
Хеш значений субформ записи. Где ключом является идентификатор поля, а значением - массив с идентификаторами записей субформ.
approvedЕсли включена модерация базы данных, то этот атрибут показывает доуступна ли запись в интегрированной базе данных.
created_atВремя, когда запись была создана.
updated_atВремя, когда запись была обновлена.
Получить записи
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
pageНомер страницы с записями. От 1 до количество записей/per_page.
name_valueИспользуйте параметр для получения записей вида: "имя поля": "значение", "айди поля": "имя поля"
fetch_allДля владельцев платных аккаунтов доступен параметр: fetch_all=true.
Для получения определенного количества записей используйте параметр per_page.
Ограничения максимального колличества записей per_page для разных тарифов:
БЕСПЛАТНЫЙ - 200
СТАНДАРТ - 500
PRO - 1000
КОРПОРАТИВНЫЙ - 2000
БИЗНЕС СТАНДАРТ - 4000
БИЗНЕС PRO - 8000
БИЗНЕС UNLIM - 15000
Тело запроса
{"rest_api_key":"API_KEY", "page": 1, "name_value": 1, "view": 'EaWQZdIXfahOqWvcvwrGTP', "fetch_all": true, "per_page": 2000}
JSON
МетодGET
URL/apps/APP_ID/dtypes/entity/ENTITY_ID.json
Тело запроса{"rest_api_key":"API_KEY", "page": 1, "name_value": 1, "view": 'EaWQZdIXfahOqWvcvwrGTP'}
Ответ
{"records":[
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"value name 1":"2",
"aNW4nkW5bdUjldO8oKuSku":"value name 1",
"value name 2":"aaa",
"aMW4HKWR9bnOoGWQbpWQS4":"value name 2",
"value name 3":"ddd",
"cMW6pcTSjbWOFdTCkBtmkN":"value name 3"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
},
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"value name 1":"2",
"aNW4nkW5bdUjldO8oKuSku":"value name 1",
"value name 2":"aaa",
"aMW4HKWR9bnOoGWQbpWQS4":"value name 2",
"value name 3":"ddd",
"cMW6pcTSjbWOFdTCkBtmkN":"value name 3"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
}
]
}
XML
МетодGET
URL/apps/APP_ID/dtypes/entity/ENTITY_ID.json
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<view>EaWQZdIXfahOqWvcvwrGTP</view>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<records type="array">
<record>
<id>bYWQnuBajdBOkAW4BdMmki</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<values>
<aNW4nkW5bdUjldO8oKuSku>2</aNW4nkW5bdUjldO8oKuSku>
<aMW4HKWR9bnOoGWQbpWQS4>aaa</aMW4HKWR9bnOoGWQbpWQS4>
<cMW6pcTSjbWOFdTCkBtmkN>ddd</cMW6pcTSjbWOFdTCkBtmkN>
</values>
<approved type="boolean">false</approved>
<created-at type="datetime">2011-09-17T10:40:40-05:00</created-at>
<updated-at type="datetime">2011-09-17T10:40:40-05:00</updated-at>
</record>
<record>
<id>dcQSkdWO1odA5HAmkYWOix</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<values>
<aNW4nkW5bdUjldO8oKuSku>1</aNW4nkW5bdUjldO8oKuSku>
<aMW4HKWR9bnOoGWQbpWQS4>test</aMW4HKWR9bnOoGWQbpWQS4>
<cMW6pcTSjbWOFdTCkBtmkN>test2</cMW6pcTSjbWOFdTCkBtmkN>
</values>
<approved type="boolean">false</approved>
<created-at type="datetime">2011-09-17T04:28:10-05:00</created-at>
<updated-at type="datetime">2011-09-17T04:28:10-05:00</updated-at>
</record>
</records>
Получить запись
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
IDВы должны знать идентификатор записи. ID можно найти получив все записи. Зная идентификатор, вам нужно заменить ID в URL например: /apps/APP_ID/dtypes/ID.json на /apps/aOWO_dVXHdHie1WeGFE8k2/dtypes/asd987asdasd97asd.json
name_valueИспользуйте параметр для получения записей вида: "имя поля": "значение", "айди поля": "имя поля"
JSON
МетодGET
URL/apps/APP_ID/dtypes/ID.json
Тело запроса{"rest_api_key":"API_KEY", "name_value": 1}
Ответ
{"record":
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"value name 1":"2",
"aNW4nkW5bdUjldO8oKuSku":"value name 1",
"value name 2":"aaa",
"aMW4HKWR9bnOoGWQbpWQS4":"value name 2",
"value name 3":"ddd",
"cMW6pcTSjbWOFdTCkBtmkN":"value name 3"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
}
}
XML
МетодGET
URL/apps/APP_ID/dtypes/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<record>
<id>bYWQnuBajdBOkAW4BdMmki</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<values>
<aNW4nkW5bdUjldO8oKuSku>2</aNW4nkW5bdUjldO8oKuSku>
<aMW4HKWR9bnOoGWQbpWQS4>aaa</aMW4HKWR9bnOoGWQbpWQS4>
<cMW6pcTSjbWOFdTCkBtmkN>ddd</cMW6pcTSjbWOFdTCkBtmkN>
</values>
<approved type="boolean">false</approved>
<created-at type="datetime">2011-09-17T10:40:40-05:00</created-at>
<updated-at type="datetime">2011-09-17T10:40:40-05:00</updated-at>
</record>
Обновить запись
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
IDВы должны знать идентификатор записи. ID можно найти получив все записи. Зная идентификатор, вам нужно заменить ID в URL например: /apps/APP_ID/dtypes/ID.json на /apps/aOWO_dVXHdHie1WeGFE8k2/dtypes/asd987asdasd97asd.json
valuesХеш значений записи, где ключем является идентификатор поля формы
json_valuesЕсли Вы используете jQuery, Ruby или другой язык программирования тогда, пожалуйста, передавайте значения записи как закодированный хеш в параметре 'values'. Но, если ваш фреймворк вам этого не позволяет, то вы можете отправить значения записи как JSON строку, например: "{"aNW4nkW5bdUjldO8oKuSku":"2", "aMW4HKWR9bnOoGWQbpWQS4":"aaa"}". Но тогда используйте название параметра 'json_values'.
subforms_values / subforms_json_valuesДля создания или обновления субформ, аналогично, используйте параметр 'subforms_values' или 'json_subforms_values'.
Формат следующий:
"{property1_id: {entity_id: subform1_id, subform1_record1_id: {subform1_field1_id: "2", subform1_field2_id: "aaa"}, subform1_record2_id: {subform1_field1_id: "3", subform1_field2_id: "bb"}}, property2_id: {entity_id: subform2_id, subform2_record1_id: {subform2_field1_id: "4", subform2_field2_id: "bb"}, subform2_record2_id: {subform2_field1_id: "5", subform2_field2_id: "dd"}}}" .
Где property1_id и property2_id - это ID полей с типом Субформа в главной таблице.
subform1_id, subform2_id - ID форм, на которые указывают поля property1_id и property2_id.
subform1_record1_id и subform1_record2_id - это ID новых или существующих записей субформы.
subform1_field1_id, subform1_field2_id - ID полей в форме subform1_id.
subform2_field1_id, subform2_field2_id - ID полей в форме subform2_id.
Все ID - это 22 символа URL-безопасный base64, их можно взять из других API вызовов или создать самостоятельно для ID новых записей.
JSON
МетодPUT
URL/apps/APP_ID/dtypes/ID.json
Тело запроса{"rest_api_key":"API_KEY", "values": {"aNW4nkW5bdUjldO8oKuSku" : 3, "aMW4HKWR9bnOoGWQbpWQS4" : "b", "cMW6pcTSjbWOFdTCkBtmkN" : "c"}}
Ответ
{"record":
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"aNW4nkW5bdUjldO8oKuSku":"3",
"aMW4HKWR9bnOoGWQbpWQS4":"b",
"cMW6pcTSjbWOFdTCkBtmkN":"c"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
}
}
XML
МетодPUT
URL/apps/APP_ID/dtypes/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<values>{"aNW4nkW5bdUjldO8oKuSku"=>3, "aMW4HKWR9bnOoGWQbpWQS4"=>"b", "cMW6pcTSjbWOFdTCkBtmkN"=>"c"}</values>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<record>
<id>bYWQnuBajdBOkAW4BdMmki</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<values>
<aNW4nkW5bdUjldO8oKuSku>3</aNW4nkW5bdUjldO8oKuSku>
<aMW4HKWR9bnOoGWQbpWQS4>b</aMW4HKWR9bnOoGWQbpWQS4>
<cMW6pcTSjbWOFdTCkBtmkN>c</cMW6pcTSjbWOFdTCkBtmkN>
</values>
<approved type="boolean">false</approved>
<created-at type="datetime">2011-09-17T10:40:40-05:00</created-at>
<updated-at type="datetime">2011-09-17T10:40:40-05:00</updated-at>
</record>
Обновить несколько записей
ваш API ключ
confirm_actionДля запуска обновления в таблице или отчете необходим следующий параметр: confirm_action: update.
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы.
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы.
dtype_idsВы должны знать идентификаторы своих записей. Вы можете найти идентификатор с помощью вызова получив все записи.
json_dtype_idsВы должны знать идентификаторы записей. ID можно найти получив все записи.
update_idВы должны знать идентификатор поля. Вы можете найти PROPERTY_ID получив все поля формы.
update_termНовое значение для записей
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
JSON
МетодPOST
URL/dtypes/confirm_action/APP_ID/ENTITY_ID.json
Тело запроса{rest_api_key: "YOUR_KEY",
confirm_action: "update",
entity_id: "ENTITY_ID",
app_id: "APP_ID",
json_dtype_ids: "[\"ID1\",\"ID2\"...]",
update_id: "UPDATE_ID",
update_term: "UPDATE_TERM"}
{rest_api_key: "YOUR_KEY",
confirm_action: "update",
entity_id: "ENTITY_ID",
app_id: "APP_ID",
dtype_ids: ["ID1","ID2"...],
update_id: "UPDATE_ID",
update_term: "UPDATE_TERM"}
{\"success\":\"Done\"}
XML
МетодPOST
URL/dtypes/confirm_action/APP_ID/ENTITY_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<confirm_action>update</confirm_action>
<entity_id>ENTITY_ID</entity_id>
<app_id>APP_ID</app_id>
<dtype_ids>"ID1","ID2"...</dtype_ids>
<update_id>UPDATE_ID</update_id>
<update_term>UPDATE_TERM</update_term>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<confirm_action>update</confirm_action>
<entity_id>ENTITY_ID</entity_id>
<app_id>APP_ID</app_id>
<json_dtype_ids>"[\"ID1\",\"ID2\"...]"</json_dtype_ids>
<update_id>UPDATE_ID</update_id>
<update_term>UPDATE_TERM</update_term>
</api_call_params>
Ответ
<?xml version="1.0" encoding="UTF-8"?>
<success>Done</success>
Обновить все записи
ваш API ключ
confirm_actionДля запуска обновления всех записей в таблице или отчете требуется следующий параметр: confirm_action: update_all.
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы.
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы.
update_idВы должны знать идентификатор поля. Вы можете найти PROPERTY_ID получив все поля формы.
update_termНовое значение для записей
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
JSON
МетодPOST
URL/dtypes/confirm_action/APP_ID/ENTITY_ID.json
Тело запроса{rest_api_key: "YOUR_KEY",
confirm_action: "update_all",
entity_id: "ENTITY_ID",
app_id: "APP_ID",
update_id: "UPDATE_ID",
update_term: "UPDATE_TERM"}
{\"success\":\"Done\"}
XML
МетодPOST
URL/dtypes/confirm_action/APP_ID/ENTITY_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<confirm_action>update_all</confirm_action>
<entity_id>ENTITY_ID</entity_id>
<app_id>APP_ID</app_id>
<update_id>UPDATE_ID</update_id>
<update_term>UPDATE_TERM</update_term>
</api_call_params>
Ответ
<?xml version="1.0" encoding="UTF-8"?>
<success>Done</success>
Обновить ячейку данных
ваш API ключ
PROPERTY_IDВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
DTYPE_IDВы должны знать идентификатор записи. ID можно найти получив все записи. Зная идентификатор, вам нужно заменить ID в URL например: /apps/APP_ID/dtypes/ID.json на /apps/aOWO_dVXHdHie1WeGFE8k2/dtypes/asd987asdasd97asd.json
valНовое значение ячейки данных
JSON
МетодPATCH/PUT/POST
URL/cell_values/DTYPE_ID/update_cell_value/PROPERTY_ID.json
Тело запроса{"rest_api_key":"API_KEY", "property_id": "aNW4nkW5bdUjldO8oKuSku", "dtype_id": "cMW6pcTSjbWOFdTCkBtmkN", "val": "John Smith"}
Ответ
{"new_value": "John Smith"}
XML
МетодPATCH/PUT/POST
URL/cell_values/DTYPE_ID/update_cell_value/PROPERTY_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<val>John Smith</val>
<rest_api_key>API_KEY</rest_api_key>
<dtype-id>cMW6pcTSjbWOFdTCkBtmkN</dtype-id>
<property-id>aNW4nkW5bdUjldO8oKuSku</property-id>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<new_value>
John Smith
</new_value>
Удалить запись
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
IDВы должны знать идентификатор записи. ID можно найти получив все записи. Зная идентификатор, вам нужно заменить ID в URL например: /apps/APP_ID/dtypes/ID.json на /apps/aOWO_dVXHdHie1WeGFE8k2/dtypes/asd987asdasd97asd.json
JSON
МетодDELETE
URL/apps/APP_ID/dtypes/ID.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ
{"record":
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"aNW4nkW5bdUjldO8oKuSku":"3",
"aMW4HKWR9bnOoGWQbpWQS4":"b",
"cMW6pcTSjbWOFdTCkBtmkN":"c"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
}
}
XML
МетодDELETE
URL/apps/APP_ID/dtypes/ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<record>
<id>bYWQnuBajdBOkAW4BdMmki</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<values>
<aNW4nkW5bdUjldO8oKuSku>3</aNW4nkW5bdUjldO8oKuSku>
<aMW4HKWR9bnOoGWQbpWQS4>b</aMW4HKWR9bnOoGWQbpWQS4>
<cMW6pcTSjbWOFdTCkBtmkN>c</cMW6pcTSjbWOFdTCkBtmkN>
</values>
<approved type="boolean">false</approved>
<created-at type="datetime">2011-09-17T10:40:40-05:00</created-at>
<updated-at type="datetime">2011-09-17T10:40:40-05:00</updated-at>
</record>
Удалить несколько записей
ваш API ключ
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы.
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы.
dtype_idsВы должны знать идентификаторы своих записей. Вы можете найти идентификатор с помощью вызова получив все записи.
json_dtype_idsВы должны знать идентификаторы записей. ID можно найти получив все записи. (Не обязательно)
JSON
МетодPOST
URL/apps/APP_ID/dtypes/delete_multiple.json
Тело запроса{rest_api_key: "YOUR_KEY",
entity_id: "ENTITY_ID",
app_id: "APP_ID",
json_dtype_ids: "[\"ID1\",\"ID2\"...]"}
{rest_api_key: "YOUR_KEY",
entity_id: "ENTITY_ID",
app_id: "APP_ID",
dtype_ids: ["ID1","ID2"...]}
{\"success\":\"Done\"}
XML
МетодPOST
URL/apps/APP_ID/dtypes/delete_multiple.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<entity_id>ENTITY_ID</entity_id>
<app_id>APP_ID</app_id>
<json_dtype_ids>"[\"ID1\",\"ID2\"...]"</json_dtype_ids>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<entity_id>ENTITY_ID</entity_id>
<app_id>APP_ID</app_id>
<dtype_ids>"ID1","ID2"...</dtype_ids>
</api_call_params>
Ответ
<?xml version="1.0" encoding="UTF-8"?>
<success>Done</success>
Удалить все
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы.
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы.
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
JSON
МетодDELETE
URL/dtypes/APP_ID/delete_all/ENTITY_ID.json
Тело запроса{rest_api_key: "YOUR_KEY", entity_id: "ENTITY_ID"}
Ответ
{\"success\":\"Done\"}
XML
МетодDELETE
URL/dtypes/APP_ID/delete_all/ENTITY_ID.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
<entity_id>ENTITY_ID</entity_id>
</api_call_params>
Ответ
<?xml version="1.0" encoding="UTF-8"?>
<success>Done</success>
Создать запись
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
IDЕсли вам нужно использовать свой личный ID, вы можете сгенерировать UUID (уникальный идентификатор) длиной 22 символа URL-безопасный base64. Например, в Ruby. Далее вам нужно будет передать его в хеш 'values', например :values => {'id' => ID}, изменить на :values => {'id' => '22adadVXHdHie1WeGFE8k2'}, в противном случае система сама сгенерирует для вас уникальный идентификатор.
values / json_valuesЕсли Вы используете jQuery, Ruby или другой язык программирования тогда, пожалуйста, передавайте значения записи как закодированный хеш в параметре 'values'. Но, если ваш фреймворк вам этого не позволяет, то вы можете отправить значения записи как JSON строку, например: "{"aNW4nkW5bdUjldO8oKuSku":"2", "aMW4HKWR9bnOoGWQbpWQS4":"aaa"}". Но тогда используйте название параметра 'json_values'.
subforms_values / subforms_json_valuesДля создания или обновления субформ, аналогично, используйте параметр 'subforms_values' или 'json_subforms_values'.
Формат следующий:
"{property1_id: {entity_id: subform1_id, subform1_record1_id: {subform1_field1_id: "2", subform1_field2_id: "aaa"}, subform1_record2_id: {subform1_field1_id: "3", subform1_field2_id: "bb"}}, property2_id: {entity_id: subform2_id, subform2_record1_id: {subform2_field1_id: "4", subform2_field2_id: "bb"}, subform2_record2_id: {subform2_field1_id: "5", subform2_field2_id: "dd"}}}" .
Где property1_id и property2_id - это ID полей с типом Субформа в главной таблице.
subform1_id, subform2_id - ID форм, на которые указывают поля property1_id и property2_id.
subform1_record1_id и subform1_record2_id - это ID новых или существующих записей субформы.
subform1_field1_id, subform1_field2_id - ID полей в форме subform1_id.
subform2_field1_id, subform2_field2_id - ID полей в форме subform2_id.
Все ID - это 22 символа URL-безопасный base64, их можно взять из других API вызовов или создать самостоятельно для ID новых записей.
JSON
МетодPOST
URL/apps/APP_ID/dtypes.json
Тело запроса{"rest_api_key":"API_KEY", "values": {"entity_id" : ENTITY_ID, "id" : ID, "aNW4nkW5bdUjldO8oKuSku":"3", "aMW4HKWR9bnOoGWQbpWQS4":"b","cMW6pcTSjbWOFdTCkBtmkN":"c"}}
Ответ: возвращает информацию о форме
{"record":
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"aNW4nkW5bdUjldO8oKuSku":"3",
"aMW4HKWR9bnOoGWQbpWQS4":"b",
"cMW6pcTSjbWOFdTCkBtmkN":"c"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
}
}
XML
МетодPOST
URL/apps/APP_ID/dtypes.xml
Тело запроса
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<values>{"aNW4nkW5bdUjldO8oKuSku"=>3,"entity_id"=>ENTITY_ID, "id"=>ID,"aMW4HKWR9bnOoGWQbpWQS4"=>"b", "cMW6pcTSjbWOFdTCkBtmkN"=>"c"}</values><
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<record>
<id>bYWQnuBajdBOkAW4BdMmki</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<values>
<aNW4nkW5bdUjldO8oKuSku>3</aNW4nkW5bdUjldO8oKuSku>
<aMW4HKWR9bnOoGWQbpWQS4>b</aMW4HKWR9bnOoGWQbpWQS4>
<cMW6pcTSjbWOFdTCkBtmkN>c</cMW6pcTSjbWOFdTCkBtmkN>
</values>
<approved type="boolean">false</approved>
<created-at type="datetime">2011-09-17T10:40:40-05:00</created-at>
<updated-at type="datetime">2011-09-17T10:40:40-05:00</updated-at>
</record>
Поиск
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например: /apps/APP_ID/entities.json на /apps/aOWO_dVXHdHie1WeGFE8k2/entities.json
viewЧтобы получить записи, вы должны знать ID отчёта. (Не обязательно)
searchЧтобы осуществить поиск по таблице или отчёту, Вам нужно отправить в body запроса search массив с параметрами поиска, в формате: [[{"a"=>"PROPERTY_ID", "b"=>"SEARCH_TERM", "o"=>"SEARCH_CRITERIA"}]].
Где PROPERTY_ID - идентфикатор поля по которому производим поиск (-ALL- - для поиска по всем колонкам),
SEARCH_TERM - значение, которое ищем,
SEARCH_CRITERIA - критерий поиска, может быть один из:
is, is_not, is_empty, is_not_empty, starts_with, ends_with, like, contains, not_contains.
Для сравнения чисел и дат: less_than, greater_than, less_than_or_equal_to, greater_than_or_equal_to.
Для даты или времени: before, after, this_day_and_before, this_day_and_after, yesterday, today, tomorrow, today_or_later, last_7_days, last_30_days,
last_60_days, last_90_days, last_120_days, next_7_days, next_30_days, next_60_days, next_90_days, next_120_days, next_n_days, last_n_days,
last_week, this_week, next_week, current_and_prev_week, current_and_next_week, next_n_weeks, last_n_weeks, last_month, this_month, next_month,
current_and_prev_month, current_and_next_month, next_n_months, last_n_months, last_year, this_year, last_2_years, next_2_years, current_and_prev_year,
current_and_next_year, next_n_years, last_n_years.
Системные колонки: added_by, created_at, updated_at, ip.
Если Вы хотите осуществить поиск по нескольким колонкам с обьединяющим критерием "И", то эти критерии должны быть помещены в один масив, если "ИЛИ", то в отдельный, например:
[[{"a"=>"PROPERTY_ID_1", "b"=>"А", "o"=>"is"}, {"a"=>"PROPERTY_ID_2", "b"=>"А", "o"=>"is"}],
[{"a"=>"PROPERTY_ID_3", "b"=>"Б", "o"=>"SEARCH_CRITERIA"}]]
формула поиска будет: "Найти все записи где PROPERTY_ID_1 И PROPERTY_ID_2 равны А ИЛИ PROPERTY_ID_3 равно Б"
Количетсво записей в результатах поиска, максимально - 200.
JSON
МетодPOST
URL/search/APP_ID.json
Тело запроса{"rest_api_key":"API_KEY", "entity_id" => "ENTITY_ID", "search": [[{"a"=>"aNW4nkW5bdUjldO8oKuSku", "b"=>"value name 1", "o"=>"is"}]]}
Ответ
{"records":[
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"value name 1":"2",
"aNW4nkW5bdUjldO8oKuSku":"value name 1",
"value name 2":"aaa",
"aMW4HKWR9bnOoGWQbpWQS4":"value name 2",
"value name 3":"ddd",
"cMW6pcTSjbWOFdTCkBtmkN":"value name 3"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
},
{
"id":"bYWQnuBajdBOkAW4BdMmki",
"app_id":"ddIbpcNSncW5xcHxpdHCoW",
"entity_id":"aEWQZdIXfahOqWvcvwrGTP",
"values":{"value name 1":"2",
"aNW4nkW5bdUjldO8oKuSku":"value name 1",
"value name 2":"aaa",
"aMW4HKWR9bnOoGWQbpWQS4":"value name 2",
"value name 3":"ddd",
"cMW6pcTSjbWOFdTCkBtmkN":"value name 3"},
"approved":false,
"created_at":"2011-09-17T10:40:40-05:00",
"updated_at":"2011-09-17T10:40:40-05:00"
}
]
}
Связи
Для того, чтобы установить связь между записями вам нужно послать отдельный хеш в запросе на СОЗДАНИЕ или ОБНОВЛЕНИЕ записи.
curl -H 'Content-Type: application/json' -X PUT -d '{"rel":{REL_ID:RECORD_ID}}' "https://quintadb.ru/apps/APP_ID/dtypes/CURRENT_RECORD_ID.json?rest_api_key=API_KEY"
Хеш должен быть в виде 'rel' => {rel_id => RECORD_ID} или 'rel' => {rel_id => [RECORD_ID, RECORD_ID2]} если у вас связь многие-к-многим. Где RECORD_ID - это идентификатор записи, с которой вы хотите установить связь текущей записи. Ниже показано как получить rel_id.
ваш API ключ
PROPERTY_IDВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
ENTITY_IDВы должны знать идентификатор формы. Вы можете найти ENTITY_ID получив все формы. Зная идентификатор формы вам нужно заменить ENTITY_ID в URL, например /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
JSON
МетодGET
URL/entities/ENTITY_ID/get_rel_id/PROPERTY_ID.json?rest_api_key=API_KEY
Тело запроса{"rest_api_key":"API_KEY", {"entity_id" : ENTITY_ID, "property_id" : PROPERTY_ID}}
Ответ
11842
Такие атрибуты отчёта могут быть получены используя REST API.
ID
nameНазвание
ID приложения
entity_idИдентификатор Таблицы (Формы)
created_atВремя, когда запись была создана.
updated_atВремя, когда запись была обновлена.
Получить Отчёты
ваш API ключ
APP_IDID приложения
ENTITY_IDИдентификатор Таблицы (Формы)
JSON
МетодGET
URL/apps/APP_ID/entities/ENTITY_ID/views/index.json
Тело запроса{"rest_api_key":"API_KEY"}
Ответ: возвращает все отчёты таблицы.
{"reports":[
{"id" : "aOWO_dVXHdHie1WeGFE8k2"
"name" : "Report Name 1",
"created_at" : "2011-08-16T05:42:40-05:00",
"updated_at" : "2011-08-16T05:42:40-05:00",
"entity_id" : 'aEWQZdIXfahOqWvcvwrGTP',
"app_id" : 'ddIbpcNSncW5xcHxpdHCoW'
},
{"id" : "aOWO3eVXHdHie1WeGFE8k2"
"name" : "Report Name 2",
"created_at" : "2011-04-29T01:26:22-05:00",
"updated_at" : "2011-08-16T00:47:56-05:00",
"entity_id" : 'RtWQZdIXfahOqWvcvwrGTP',
"app_id" : 'ddIbpcNSncW5xcHxpdHCoW'
} ]}
XML
МетодGET
URL/apps/APP_ID/entities/ENTITY_ID/views/index.xml
Тело запроса: возвращает все отчёты таблицы.
<?xml version="1.0" encoding="UTF-8"?>
<api_call_params>
<rest_api_key>API_KEY</rest_api_key>
</api_call_params>
<?xml version="1.0" encoding="UTF-8"?>
<reports type="array">
<report>
<id>bYWQnuBajdBOkAW4BdMmki</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<created-at type="datetime">2011-09-17T10:40:40-05:00</created-at>
<updated-at type="datetime">2011-09-17T10:40:40-05:00</updated-at>
</record>
<record>
<id>dcQSkdWO1odA5HAmkYWOix</id>
<app-id>ddIbpcNSncW5xcHxpdHCoW</app-id>
<entity-id>aEWQZdIXfahOqWvcvwrGTP</entity-id>
<created-at type="datetime">2011-09-17T04:28:10-05:00</created-at>
<updated-at type="datetime">2011-09-17T04:28:10-05:00</updated-at>
</report>
</reports>
Получить ссылку на файл
Загрузить файлы
require 'open-uri'
require 'openssl'
require 'net/http'
require 'json'
require 'securerandom'
#MultipartPost
class MultipartPost
BOUNDARY = "-----------RubyMultipartPost"
EOL = "\r\n"
def initialize uri, &block
@params = Array.new
@uri = URI.parse uri
instance_eval &block if block
end
def params_part key, value
@params << multipart_text(key, value)
end
def files_part key, filename, mime_type, content
@params << multipart_file(key, filename, mime_type, content)
end
def request_body
body = @params.map{|p| "--#{BOUNDARY}#{EOL}" << p}.join ""
body << "#{EOL}--#{BOUNDARY}--#{EOL}"
end
def run
https = Net::HTTP.new @uri.host, @uri.port
https.use_ssl = true
https.verify_mode = (OpenSSL::SSL::VERIFY_PEER)
request = Net::HTTP::Post.new @uri.request_uri
request.body = request_body
request.set_content_type "multipart/form-data", {"boundary" => BOUNDARY}
res = https.request request
res.body
end
private
def multipart_text key, value
content = "Content-Disposition: form-data; name=\"#{key}\"" <<
EOL <<
EOL <<
"#{value}" << EOL
end
def multipart_file key, filename, mime_type, content
content = "Content-Disposition: form-data; name=\"#{key}\"; filename=\"#{filename}\"#{EOL}" <<
"Content-Type: #{mime_type}\r\n" <<
EOL <<
"#{content}" << EOL
end
end #MultipartPost
def call_quinta(url, format, method, params={})
uri = URI.parse(url)
req = case method
when "get"
Net::HTTP::Get.new(uri.path)
when "post"
Net::HTTP::Post.new(uri.path)
when "put"
Net::HTTP::Put.new(uri.path)
when "delete"
Net::HTTP::Delete.new(uri.path)
end
req.body = case format
when "json"
JSON.generate(params)
else
"no"
end
req["Content-Type"] = "application/#{format}"
https = Net::HTTP.new(uri.host, uri.port)
https.use_ssl = (uri.scheme == 'https')
https.verify_mode = (OpenSSL::SSL::VERIFY_PEER)
https.start do |htt|
htt.request(req)
end
end
dtype_id = SecureRandom.urlsafe_base64
app_id = "bsx8kgWR9jWOBdUftcRXf9"
entity_id = "arjadcLJzeWOi1WPddL8ol"
property_id = "bwW68wWP1cSikQqSkhl04I"
post_url = "https://localhost:3001/entities/#{app_id}/upload_file/#{property_id}.json?dtype_id=#{dtype_id}"
# Path to your file
file_path = "/home/igor/Pictures/Selection_001.png"
file = File.open file_path
# getting file's content type, i.e. 'image/png'
file_content_type = `file --b --mime-type '#{file_path}'`.strip
multi_part = MultipartPost.new post_url do
params_part "rest_api_key", rest_api_key
files_part "dtype[#{property_id}]", "Selection_001.png",
file_content_type, file.read
end
p multi_part.run
# And below is the example of how to upload the file to Subform
rest_api_key = "API_KEY"
subform_field_id = "dcL8kXB8npd5pdRmk7BCoR"
subform_file_field_id = "aVWR3cNtvdUikQn8o3yCo1"
subform_form_id = "cCcxjdWRXpWPTLWOjvWPfO"
subform_dtype_id = SecureRandom.urlsafe_base64
file_path = "/home/igor/Pictures/Selection_002.png"
file = File.open file_path
# getting file's content type, i.e. 'image/png'
file_content_type = `file --b --mime-type '#{file_path}'`.strip
post_url = "https://quintadb.com/entities/#{app_id}/upload_file/#{subform_file_field_id}.json?dtype_id=#{subform_dtype_id}"
# upload file into subform record
multi_part = MultipartPost.new post_url do
params_part "rest_api_key", rest_api_key
params_part "subform_field", subform_field_id
params_part "property_id", subform_file_field_id
params_part "subform_dtype_id", subform_dtype_id
files_part "subforms[#{subform_field_id}][#{subform_dtype_id}][#{subform_file_field_id}]", "Selection_002.png",
file_content_type, file.read
end
p multi_part.run
text_field_on_a_form = "agW6rGWQHiWPvdWPL0oCoj"
text_field_on_a_subform = "dcV8k6y8nhWP4JF0r6W5LI"
params = {
:page => 1,
:rest_api_key => rest_api_key,
values: {entity_id: entity_id, id: dtype_id, text_field_on_a_form => "Test"},
subforms: {subform_field_id => {entity_id: subform_form_id, subform_dtype_id => { text_field_on_a_subform => "Test2"}}}
}
response = call_quinta "https://quintadb.com/apps/#{app_id}/dtypes.json", "json", "post", params
puts response.body
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
property_idВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
dtype_idВы должны знать идентификатор записи. ID можно найти получив все записи. Зная идентификатор, вам нужно заменить ID в URL например: /apps/APP_ID/dtypes/ID.json на /apps/aOWO_dVXHdHie1WeGFE8k2/dtypes/asd987asdasd97asd.json
JSON
МетодPOST
URL/entities/APP_ID/upload_file/PROPERTY_ID.json?dtype_id=DTYPE_ID
Тело запроса{"rest_api_key"=>API_KEY, "filedata"="your_file_here", "dtype_id"=>"fRLA83jrnAUOi5TEQLyuGw", "app_id"=>"bsx8kgWR9jWOBdUftcRXf9"}
Uploaded
Удалить файлы
ваш API ключ
APP_IDВы должны знать идентификатор базы. Вы можете найти APP_ID получив все базы данных. Зная идентификатор базы вам нужно заменить APP_ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties.json
property_idВы должны знать идентификатор поля. Вы можете найти ID получив все поля формы. Зная идентификатор поля вам нужно заменить ID в URL, например: /apps/APP_ID/entities/ENTITY_ID/properties/ID.json на /apps/qweWO_dVXHdHie1WeGFE8k2/entities/aOWO_dVXHdHie1WeGFE8k2/properties/asdasddVXHdHie1WeGFE8k2.json
DTYPE_IDВы должны знать идентификатор записи. ID можно найти получив все записи. Зная идентификатор, вам нужно заменить ID в URL например: /apps/APP_ID/dtypes/ID.json на /apps/aOWO_dVXHdHie1WeGFE8k2/dtypes/asd987asdasd97asd.json
SINGLE_FILE_NAMEНазвание файла
JSON
МетодGET
URL/dtypes/delete_dtype_file/APP_ID/DTYPE_ID/PROPERTY_ID.json
Тело запроса{"rest_api_key"=>API_KEY, "single_file_name"=>"Selection_002.png", "app_id"=>"bsx8kgWR9jWOBdUftcRXf9", "dtype_id"=>"wlS5MeyMqQiCv16FdG3ztQ", "property_id"=>"bwW68wWP1cSikQqSkhl04I"}
Ответ
File removed
require 'open-uri'
require 'openssl'
require 'net/http'
require 'json'
def call_mth(url, format, method, params={})
uri = URI.parse(url)
# Создаем вызов необходимого метода: GET/POST/PUT/DELETE
req = case method
when "get"
Net::HTTP::Get.new(uri.path)
when "post"
Net::HTTP::Post.new(uri.path)
when "put"
Net::HTTP::Put.new(uri.path)
when "delete"
Net::HTTP::Delete.new(uri.path)
end
# Конвертируем параметры в JSON/XML и устанавливаем тип содержимого как application/json или application/xml Обратите внимание на XML формат параметров, где корневой элемент это api_call_params
req.body = case format
when "xml"
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<api_call_params>
#{params.collect{|key, value| "<#{key}>#{value}#{key}>"}.join("")}
</api_call_params>"
when "json"
JSON.generate(params)
else
"no"
end
# Устанавливаем тип содержимого
req["Content-Type"] = "application/#{format}"
https = Net::HTTP.new(uri.host, uri.port)
# Все вызовы по протоколу HTTPS и проверяем SSL сертификаты
https.use_ssl = (uri.scheme == 'https')
https.verify_mode = (OpenSSL::SSL::VERIFY_PEER)
# Делаем запрос
https.start do |htt|
htt.request(req)
end
end
# Не забудьте установить свой ключ API_KEY
params = {
:page => 1,
:rest_api_key => "API_KEY"
}
response = call_mth "https://quintadb.ru/apps.json", "json", "get", params
# Ответ будет в response.body
puts response.body