# Config Management

rb offers a simplified custom workflow configuration management. Using the CLI tool to manage the configurations and custom workflows enables fast continuous integration and development to RELE.AI.

# Applications

Application describes the base connection between RELE.AI and external services.

Read more about Application here!

# rb app:list

List all global and company related applications in a YAML format.

# Usage

rb app:list

# Examples

# list all applications
rb app:list

# Inherited options

  --help, -h      Show help for command

# rb app:get

Get a specific application by the application key in a YAML format.

# Usage

rb app:get [KEY]

# Examples

# get application by key whatsapp
rb app:get whatsapp

# get and export application to /tmp/app.yaml
rb app:get whatsapp -o /tmp/app.yaml

# Arguments

ARGUMENTS
  KEY  App selector key.

# Options

OPTIONS
  -o, --output=output  A path to output file.

# Inherited options

  --help, -h      Show help for command

# rb app:delete

Delete a specific application by the application key.

# Usage

rb app:delete [KEY]

# Examples

# delete application by key test-app
rb app:delete test-app

# Arguments

ARGUMENTS
  KEY  App selector key.

# Inherited options

  --help, -h      Show help for command

# rb app:tokens

Creates APP_ID and APP_HASH for all apps in the YAML configuration files.

# Usage

rb app:tokens

# Examples

rb app:tokens

# Inherited options

  --help, -h      Show help for command

# App Actions

App Action describes a particular endpoint in the external service.

Read more about App Actions here!

# rb app-action:list

List all global and company related app-actions in a YAML format.

# Usage

rb app-action:list

# Examples

# list all app actions
rb app-action:list

# list all app actions for the specific application whatsapp
rb app-action:list -a whatsapp

# Inherited options

  --help, -h      Show help for command

# rb app-action:get

Get a specific app action by the app-action and application keys in a YAML format.

# Usage

rb app-action:get [APP ACTION KEY] -a [APP KEY]

# Examples

# get the send_message action from the whatsapp application
rb app-action:get send_message -a whatsapp

# write the action to /tmp/app-action.yaml
rb app-action:get send_message -a whatsapp -o /tmp/app-action.yaml

# Arguments

ARGUMENTS
  KEY  App action selector key.

# Options

OPTIONS
  -a, --appKey=appKey  (required) Filter by an application key
  -o, --output=output  A path to output file.

# Inherited options

  --help, -h      Show help for command

# rb app-action:delete

Delete a specific app action by the app action and application keys.

# Usage

rb app-action:delete [APP ACTION KEY] -a [APP KEY]

# Examples

# Delete test-action from test app
rb app-action:delete "test-action" -a "test"

# Arguments

ARGUMENTS
  KEY  App selector key.

# Options

  -a, --appKey=appKey  (required) Filter by an application key

# Inherited options

  --help, -h      Show help for command

# Workflows

Workflow aggregates a set of operations and defines when the workflow should be executed.

Read more about Workflows here!

# rb workflow:activate

rb workflow:activate defines workflow as active, at the user or organization level.

# Usage

rb workflow:activate [WORKFLOW_KEY] -d [LEVEL] -e [EMAILS]

NOTE

Emails should be provided only at the user level.

# Examples

# activate demo_workflow on user level with email foo@bar.com
rb workflow:activate demo_workflow -d user -e foo@bar.com

# activate demo_workflow on org level
rb workflow:activate demo_workflow -d org

# Arguments

ARGUMENTS
  WORKFLOW_KEY  Workflow selector key.
  LEVEL Should be user/org.
  EMAILS user's emails.

# Inherited options

  --help, -h      Show help for command

# rb workflow:deactivate

rb workflow:deactivate defines workflow as deactive, at the user or organization level.

# Usage

rb workflow:deactivate [WORKFLOW_KEY] -d [LEVEL] -e [EMAILS]

NOTE

Emails should be provided only at the user level.

# Examples

# deactivate demo_workflow on user level with emails of foo@bar.com and bar@baz.com.
rb workflow:deactivate demo_workflow -d user -e foo@bar.com,bar@baz.com

# deactivate demo_workflow on org level
rb workflow:deactivate demo_workflow -d org

# Arguments

ARGUMENTS
  WORKFLOW_KEY  Workflow selector key.
  LEVEL Should be user/org.
  EMAILS user's emails separated by comma.

# Inherited options

  --help, -h      Show help for command

# rb workflow:list

List all global and company related workflows in a YAML format.

# Usage

rb workflow:list

# Examples

# list all workflows
rb workflow:list

# Inherited options

  --help, -h      Show help for command

# rb workflow:get

Get a specific workflow by the workflow key in a YAML format.

# Usage

rb workflow:get [KEY]

# Examples

# get the workflow search
rb workflow:get search

# export the workflow search to /tmp/wf.yaml
rb workflow:get search -o /tmp/wf.yaml

# Arguments

ARGUMENTS
  KEY  Workflow selector key.

# Options

OPTIONS
  -o, --output=output  A path to output file.

# Inherited options

  --help, -h      Show help for command

# rb workflow:delete

Delete a specific workflow by the workflow key.

# Usage

rb workflow:delete [KEY]

# Examples

# delete the test-workflow
rb workflow "test-workflow"

# Arguments

ARGUMENTS
  KEY  Workflow selector key.

# Inherited options

  --help, -h      Show help for command

# Operations

Operation describes a setup within the Bot workflow.

Read more about Operations here!

# rb operation:list

List all global and company related operations in a YAML format.

# Usage

rb operation:list

# Examples

# list all operations
rb operation:list

# list workflow specific operations
rb operation:list -w search

# Options

OPTIONS
  -w, --workflowKey=workflowKey  Filter by an workflow key

# Inherited options

  --help, -h      Show help for command

# rb operation:get

Get a specific operation by the operation key in a YAML format.

# Usage

rb operation:get [KEY]

# Example

# Get a specific operation
rb operation:get target_crm_message -w search

# Write output to /tmp/op.yaml
rb operation:get target_crm_message -w search -o /tmp/op.yaml

# Arguments

ARGUMENTS
  KEY  Operation selector key.

# Options

OPTIONS
  -o, --output=output            A path to output file.
  -w, --workflowKey=workflowKey  (required) Filter by workflow key

# Inherited options

  --help, -h      Show help for command

# rb operation:delete

Delete a specific operation by the operation and workflow keys.

# Usage

rb operation:delete [KEY] -w [WORKFLOW KEY]

# Examples

# delete a test operation from test workflow
rb operation:delete "test-operation" -w "test-workflow"

# Arguments

ARGUMENTS
  KEY  Operation selector key.

# Options

OPTIONS
  -w, --workflowKey=workflowKey  (required) Filter by workflow key

# Inherited options

  --help, -h      Show help for command

# Translations

Translation describes the key's value in a given language.

Read more about Translations here!

# rb translation:list

List all global and company related translations.

# Usage

rb translation:list [KEY - optional]

# Examples

# list all translations
rb translation:list

# list specific translation group by key
rb translation:list "exit"

# list all translations
# and export it to csv file
rb translation:list -o translations.csv -f csv

# Arguments

ARGUMENTS
  KEY  Translation selector key.

# Inherited options

  --help, -h      Show help for command
  -f              File type
  -o              Path to file

# rb translation:import

Import translations from file.

# Usage

rb translation:import [PATH]

# Examples

# import translations from csv file
rb translation:import translations.csv

# Arguments

ARGUMENTS
  PATH  Path to translations file.

# Inherited options

  --help, -h      Show help for command

# rb translation:delete

Delete a specific translation group by its key.

# Usage

rb translation:delete [KEY]

# Examples

# delete example-translation
rb translation:delete "example-translation"

# Arguments

ARGUMENTS
  KEY  Translation selector key.

# Inherited options

  --help, -h      Show help for command

# Config File Management

The following commands that are responsible for managing the configuration files.

# rb apply

Uploads a configuration YAML file.
A configuration file is a yaml file, which can define apps, apps actions, operations, translations and workflows.

# Usage

rb apply [PATH]

NOTE

rb apply path argument can be a path to a single yaml file or a path to a folder that contains several yaml files.

# Examples

# apply yaml configuration file loctaed in given path
rb rb apply ~/example.yaml

# Arguments

ARGUMENTS
  PATH  Path to configuration YAML.

# Inherited options

  --help, -h      Show help for command

# rb delete

rb delete --file {path} delete a configuration.
A configuration file is a yaml file, which can define apps, apps actions, operations, translations and workflows.

rb delete --file $HOME/my/releai-project/configuration.yaml

NOTE

rb delete path argument can be a path to a single yaml file or a path to a folder that contains several yaml files.