Manifest.json reference
Properties
Root
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
.
App name - The name of your app. Example: My App
.
Homepage - The URL of your app’s homepage of your own documentation. Example: https://myapp.com
.
Author - The name of the author of the app. Example: ACME Organization
.
Icon URL - The URL of the icon of your app. Example: https://myapp.com/icon.png
.
Short description - A short description of your app. Example: My App is a great app that does great things
.
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 - The version of your app. Example: 1.0.0
.
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 - The URL of your app’s webhook endpoint. Example: https://myapp.com/api/webhooks
.
Tasks - An array of tasks that your app can perform. See Task properties for more details.
Data hooks - An array of data hooks that your app can listen to.See Data hook properties for more details.
SQL access - An object containing your app’s SQL access. See SQL access properties for more details.
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 - An array of extra tables that your app can add to the database. See App table properties for more details.
Cube schemas - A object containing your app tables Cube schemas. See Cube schemas properties for more details.
Task
Task ID - The ID of the task, prefixed by your app ID. Example: appx_myapp123_task_1
.
Task name - The name of the task. Example: Task 1
.
Task description - A description of the task. Example: Example of task
.
Is cron - Whether the task is a periodic cron job. Example: true
.
Minutes interval - The interval in minutes for the cron job. Example: 720
.
On multiple exec - What to do when the task is executed multiple times concurently. Values: allow
, discard_new
, retry_later
, abort_existing
.
Data hook
Data hook ID - The ID of the data hook, prefixed by your app ID. Example: appx_myapp123_on_create_user
.
Data hook name - The name of the data hook. Example: On create
.
On - When the data hook should be triggered. Values: on_validation
, on_success
.
For - The kind of data and actions that the data hook should listen to. See Data hook for for more details.
Data hook for
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 - 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 - An array of predefined SQL queries that your app can perform. See SQL query properties for more details.
Tables permissions - An array of tables that your app can access. See SQL tables permissions for more details.
SQL predefined-query
SQL query ID - The ID of the SQL query, prefixed by your app ID. Example: appx_myapp123_sql_query_1
.
SQL query type - The type of the SQL query. Values: select
.
SQL query name - The name of the SQL query. Example: SQL query 1
.
SQL query description - A description of the SQL query. Example: Example of predefined SQL query
.
SQL query - Use *
to get full access or provide the specific query like SELECT * FROM `user` WHERE external_id = ?
.
Test arguments - An array of test arguments for the SQL query. Example: ["user_123"]
.
SQL tables permissions
Table - The name of the table. Values: user
, segment
, order
, order_item
, cart
, cart_item
, session
, custom_event
, pageview
, appx_myapp_custom_table
…
Read - Whether the app can read the table. Example: true
.
Write - Whether the app can write to the table. Example: true
.
Extra column
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 - An array of columns that should be added to the kind. See Column properties for more details.
App table
Table name - The name of the table prefixed by your app ID. Example: appx_myapp123_table_1
.
Table description - A description of the table. Example: Example of extra table
.
Shard key - An array of columns that should be used as the shard key. Example: ["user_id"]
.
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 - An array of columns that should be used to store the data in a specific order in the database. Example: ["created_at"]
.
Columns - An array of columns that should be added to the table. See Column properties for more details.
Indexes - An array of indexes that should be added to the table. See Index properties for more details.
Table column
Column name - The name of the column. For extra columns, it should be prefixed by your app ID. Example: appx_myapp123_column_a
.
Column type - The type of the column. Values: boolean
, number
, date
, datetime
, timestamp
, varchar
, longtext
, json
.
Column size - The size of the column. Required for varchar
types. Example: 128
.
Is required - Whether the column is required when inserting records. Example: true
.
Column description - A description of the column. Example: Example of extra column
.
Default boolean - The default value for the column. Example: true
.
Default number - The default value for the column. Example: 123
.
Default date - The default value for the column. Example: 2022-01-01
.
Default datetime - The default value for the column. Example: 2022-01-01T00:00:00Z
.
Default timestamp - The default value for the column. Example: CURRENT_TIMESTAMP
.
Default text - The default value for the column. Example: Hello world
.
Default JSON - The default value for the column. Example: {"key": "value"}
.
Extra definition - The extra definition for the column. Example: ON UPDATE CURRENT_TIMESTAMP
.
Hide in analytics - Whether the column should be hidden in analytics. Example: true
.
Table index
Index name - The name of the index. Example: index_column_varchar
.
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.