Skip to main content

App schema

Each app should follow strict schema with the following structure (all fields are required):
NameTypeDescriptionExample
namestringName”MyApp”
websitestringWebsitehttp://myawesomeapp.com
versionstringVersion”1.0.0”
descriptionstringDescription”My awesome app”
authenticationArrayAuthentications[{id: "none", name: "no auth"}]
sourcesArrayEmpty array[]
responsibleForObjectResponsibilities
{
  "dataSynchronization": true,
  "dataImport": false,
  "automations": true
}
  • dataSynchronization — your custom app will be visible in the list of available integrations
  • dataImport — your custom app will be visible in the list of available imports
  • automations — your custom app will be visible in the list of available automation actions

Authentication

Authentication model represents type of authentication in app and has following structure:
NameTypeDescriptionRequiredExample
idstringIdentity of authenticaitontrue”oauth” or “token”
namestringName of authenticationtrue”Connection Settings”
descriptionstringDescription of authenticationfalse”Give the name for connection”
fieldsArrayAuthentication fieldsfalse[{optional: false, id: "accountName", name: "Title", type: "text", description: 'Give the name for connection'}]
If your app doesn’t require authentication, add authentication with id = “none”. In the case you can omit fields.

Authentication field

Authentication field represents the field in account. So account that will send to API endpoints will consist of the authentication fields. Authentication field has following structure:
NameTypeDescriptionRequiredExample
idstringId of field. The id will be specified in account object.true”accountName”
namestringName of the field. Will be displayed in auth form.true”Title”
typestringType of the fieldtrue”text”
descriptionstringDescription of the fieldtrue”Give the name for connection”
optionalbooleanIs the field optionalfalsefalse
valuestringDefault value of the fieldfalsenull
Read about Custom App: Fields. Note that authentication field with some types requires more information to specify. For example, for highlightText type you also need to specify editorMode in authentication field.

Filter

Filter represents filter that will be applied on data. Filter has following structure:
NameTypeDescriptionRequiredExample
idstringId of filtertrue”table”
titlestringTitle of filtertrue”Table”
typestringType of filtertrue”list”
datalistbooleanIs filter has values to select fromfalsetrue
optionalbooleanIs filter optionalfalsefalse
securedbooleanSecured filter values are not available for change by non-ownerfalsetrue
See Integration Filters. Some additional properties should be specified in case when filters should be displayed in special modes, for example JSON or SQL. For example, for highlightText type you also need to specify editorMode for the filter field.