Skip to contents

Adds a data source to the specified base on a NocoDB server via its POST /api/v2/meta/bases/{id_base}/sources API endpoint.

Usage

create_data_src(
  connection,
  id_integration = NULL,
  type = c("mssql", "mysql", "pg", "sqlite3"),
  alias = NULL,
  inflection_column = c("none", "camelize"),
  inflection_table = c("none", "camelize"),
  is_schema_readonly = FALSE,
  is_data_readonly = FALSE,
  enabled = TRUE,
  id_base = base_id(hostname = hostname, email = email, password = password, api_token =
    api_token),
  hostname = pal::pkg_config_val("hostname"),
  email = pal::pkg_config_val("email"),
  password = pal::pkg_config_val("password"),
  api_token = pal::pkg_config_val("api_token")
)

Arguments

connection

Type-specific connection details for the data source. A list.

id_integration

character(1)
Optional identifier of an existing NocoDB database integration as returned by integration_id(), of which to reuse connection details

type

Type of the data source. One of "mssql", "mysql", "pg" or "sqlite3".

alias

Alias of the data source. A character scalar.

inflection_column

Type of inflection to apply for column names in the data source. One of "none" or "camelize".

inflection_table

Type of inflection to apply for table names in the data source. One of "none" or "camelize".

is_schema_readonly

Whether or not to forbid alterations of the data source's schema from NocoDB.

is_data_readonly

Whether or not to forbid alterations of the data source's data from NocoDB.

enabled

Whether the added data source is enabled or disabled.

id_base

NocoDB base identifier as returned by base_id(). A character scalar.

hostname

NocoDB server hostname. A character scalar.

email

E-mail address of the NocoDB user to authenticate with.

password

Password of the NocoDB user to authenticate with.

api_token

NocoDB API token. Takes precedence over email and password if provided.

Value

alias, invisibly.

See also

Examples

if (FALSE) { # \dontrun{
nocodb::create_data_src(type = "pg",
                        connection = list(host = "REPLACE-ME",
                                          port = 5432,
                                          ssl = list(ca = "",
                                                     cert = "",
                                                     key = ""),
                                          sslmode = "verify-full",
                                          user = "REPLACE-ME",
                                          password = "REPLACE-ME",
                                          database = "REPLACE-ME"),
                        alias = "REPLACE-ME",
                        inflection_column = "none",
                        inflection_table = "none")} # }