Skip to main content

Properties

Root

id
string
App ID - It should be prefixed with appx_ for private apps and app_ for public apps. It should be unique across all apps. Your app ID can only contain letters & numbers. Example: appx_myapp123.
name
string
App name - The name of your app. Example: My App.
homepage
string
Homepage - The URL of your app’s homepage of your own documentation. Example: https://myapp.com.
author
string
Author - The name of the author of the app. Example: ACME Organization.
icon_url
string
Icon URL - The URL of the icon of your app. Example: https://myapp.com/icon.png.
short_description
string
Short description - A short description of your app. Example: My App is a great app that does great things.
description
string
Description - A detailed description of your app. Example: My App is a great app that does great things. It's the best app ever!.
version
string
Version - The version of your app. Example: 1.0.0.
ui_endpoint
string
UI endpoint - The URL of your app’s UI that will be embedded as an iframe in the Ridiam Console. Example: https://myapp.com.
webhook_endpoint
string
Webhook endpoint - The URL of your app’s webhook endpoint. Example: https://myapp.com/api/webhooks.
tasks
array
Tasks - An array of tasks that your app can perform. See Task properties for more details.
data_hooks
array
Data hooks - An array of data hooks that your app can listen to.See Data hook properties for more details.
sql_access
object
SQL access - An object containing your app’s SQL access. See SQL access properties for more details.
extra_columns
array
Extra columns - An array of extra columns that your app can add to the user table. See Extra column properties for more details.
app_tables
array
App tables - An array of extra tables that your app can add to the database. See App table properties for more details.
cube_schemas
object
Cube schemas - A object containing your app tables Cube schemas. See Cube schemas properties for more details.

Task

id
string
Task ID - The ID of the task, prefixed by your app ID. Example: appx_myapp123_task_1.
name
string
Task name - The name of the task. Example: Task 1.
description
string
Task description - A description of the task. Example: Example of task.
is_cron
boolean
Is cron - Whether the task is a periodic cron job. Example: true.
minutes_interval
integer
Minutes interval - The interval in minutes for the cron job. Example: 720.
on_multiple_exec
enum
On multiple exec - What to do when the task is executed multiple times concurently. Values: allow, discard_new, retry_later, abort_existing.

Data hook

id
string
Data hook ID - The ID of the data hook, prefixed by your app ID. Example: appx_myapp123_on_create_user.
name
string
Data hook name - The name of the data hook. Example: On create.
on
enum
On - When the data hook should be triggered. Values: on_validation, on_success.
for
array
For - The kind of data and actions that the data hook should listen to. See Data hook for for more details.

Data hook for

kind
string
Data kind - The kind of data that the data hook should listen to. Values: user, segment, order, order_item, cart, cart_item, session, custom_event, pageview, appx_myapp_custom_table
action
string
Action - Only for on_success hooks. The action that the data hook should listen to. Values: create, update. For kind == segment values are exit, enter.

SQL access

predefined_queries
array
Predefined queries - An array of predefined SQL queries that your app can perform. See SQL query properties for more details.
tables_permissions
array
Tables permissions - An array of tables that your app can access. See SQL tables permissions for more details.

SQL predefined-query

id
string
SQL query ID - The ID of the SQL query, prefixed by your app ID. Example: appx_myapp123_sql_query_1.
type
enum
SQL query type - The type of the SQL query. Values: select.
name
string
SQL query name - The name of the SQL query. Example: SQL query 1.
description
string
SQL query description - A description of the SQL query. Example: Example of predefined SQL query.
query
string
SQL query - Use * to get full access or provide the specific query like SELECT * FROM `user` WHERE external_id = ?.
test_args
array
Test arguments - An array of test arguments for the SQL query. Example: ["user_123"].

SQL tables permissions

table
string
Table - The name of the table. Values: user, segment, order, order_item, cart, cart_item, session, custom_event, pageview, appx_myapp_custom_table
read
boolean
Read - Whether the app can read the table. Example: true.
write
boolean
Write - Whether the app can write to the table. Example: true.

Extra column

kind
string
Kind - The kind of data that the extra column should be added to. Example: user, order, order_item, session, pageview, custom_event, cart, cart_item.
columns
array
Columns - An array of columns that should be added to the kind. See Column properties for more details.

App table

name
string
Table name - The name of the table prefixed by your app ID. Example: appx_myapp123_table_1.
description
string
Table description - A description of the table. Example: Example of extra table.
shard_key
array
Shard key - An array of columns that should be used as the shard key. Example: ["user_id"].
unique_key
array
Unique key - An array of columns that should be used as the unique key. The unique_key should at least contain all columns defined in shard_key. Example: ["id", "user_id"].
sort_key
array
Sort key - An array of columns that should be used to store the data in a specific order in the database. Example: ["created_at"].
columns
array
Columns - An array of columns that should be added to the table. See Column properties for more details.
indexes
array
Indexes - An array of indexes that should be added to the table. See Index properties for more details.

Table column

name
string
Column name - The name of the column. For extra columns, it should be prefixed by your app ID. Example: appx_myapp123_column_a.
type
enum
Column type - The type of the column. Values: boolean, number, date, datetime, timestamp, varchar, longtext, json.
size
integer
Column size - The size of the column. Required for varchar types. Example: 128.
is_required
boolean
Is required - Whether the column is required when inserting records. Example: true.
description
string
Column description - A description of the column. Example: Example of extra column.
default_boolean
boolean
Default boolean - The default value for the column. Example: true.
default_number
number
Default number - The default value for the column. Example: 123.
default_date
string
Default date - The default value for the column. Example: 2022-01-01.
default_datetime
string
Default datetime - The default value for the column. Example: 2022-01-01T00:00:00Z.
default_timestamp
string
Default timestamp - The default value for the column. Example: CURRENT_TIMESTAMP.
default_text
string
Default text - The default value for the column. Example: Hello world.
default_json
object
Default JSON - The default value for the column. Example: {"key": "value"}.
extra_definition
string
Extra definition - The extra definition for the column. Example: ON UPDATE CURRENT_TIMESTAMP.
hide_in_analytics
boolean
Hide in analytics - Whether the column should be hidden in analytics. Example: true.

Table index

name
string
Index name - The name of the index. Example: index_column_varchar.
columns
array
Columns - An array of columns that should be used for the index. Example: ["column_varchar"].

Cube schemas

Please refer to the Cube schemas documentation for more details.

Full example