# Get defaults for dSource linking.

Endpoint: POST /dsources/oracle/defaults
Version: 3.30.0
Security: ApiKeyAuth

## Security:

  - `ApiKeyAuth` (unknown)
    apiKey in header Authorization

## Request body:

  - `application/json` (unknown)
    The parameters to get defaults for linking an Oracle dSource.

## Request fields (application/json):

  - `source_id` (string, required)
    The ID of the source to be linked.

## Response 200:

  - `200` (unknown)
    OK

## Response 200 fields (application/json):

  - `name` (string)
    Name of the dSource to be created.

  - `source_id` (string)
    Id of the source to link.

  - `group_id` (string)
    Id of the dataset group where this dSource should belong to.

  - `description` (string)
    The notes/description for the dSource.

  - `log_sync_enabled` (boolean)
    True if LogSync should run for this database.

  - `sync_policy_id` (string)
    The ID of the SnapSync policy for the dSource.
    Example: snapshot-123

  - `retention_policy_id` (string)
    The ID of the Retention policy for the dSource.
    Example: retention-policy-123

  - `make_current_account_owner` (boolean)
    Whether the account creating this reporting schedule must be configured as owner of the reporting schedule.

  - `tags` (array)
    The tags to be created for dSource.

  - `tags.key` (string, required)
    Key of the tag
    Example: key-1

  - `tags.value` (string, required)
    Value of the tag
    Example: value-1

  - `ops_pre_sync` (array)
    Operations to perform before syncing the created dSource. These operations can quiesce any data prior to syncing.

  - `ops_pre_sync.name` (string)

  - `ops_pre_sync.command` (string)

  - `ops_pre_sync.shell` (string)
    Enum: "bash", "shell", "expect", "ps", "psd"

  - `ops_pre_sync.credentials_env_vars` (array)
    List of environment variables that will contain credentials for this operation.

  - `ops_pre_sync.credentials_env_vars.base_var_name` (string, required)
    Base name of the environment variables. Variables are named by appending '_USER', '_PASSWORD', '_PUBKEY' and '_PRIVKEY' to this base name, respectively. Variables whose values are not entered or are not present in the type of credential or vault selected, will not be set.

  - `ops_pre_sync.credentials_env_vars.password` (string)
    Password to assign to the environment variables.
    Example: password

  - `ops_pre_sync.credentials_env_vars.vault_username` (string)
    Delphix display name for the vault user.
    Example: my-vault

  - `ops_pre_sync.credentials_env_vars.vault` (string)
    The name or reference of the vault to assign to the environment variables.
    Example: 1-VAULT-1

  - `ops_pre_sync.credentials_env_vars.hashicorp_vault_engine` (string)
    Vault engine name where the credential is stored.
    Example: kv

  - `ops_pre_sync.credentials_env_vars.hashicorp_vault_secret_path` (string)
    Path in the vault engine where the credential is stored.
    Example: oracle-env

  - `ops_pre_sync.credentials_env_vars.hashicorp_vault_username_key` (string)
    Hashicorp vault key for the username in the key-value store.
    Example: username

  - `ops_pre_sync.credentials_env_vars.hashicorp_vault_secret_key` (string)
    Hashicorp vault key for the password in the key-value store.
    Example: secret

  - `ops_pre_sync.credentials_env_vars.azure_vault_name` (string)
    Azure key vault name.
    Example: azure_vault

  - `ops_pre_sync.credentials_env_vars.azure_vault_username_key` (string)
    Azure vault key in the key-value store.
    Example: username

  - `ops_pre_sync.credentials_env_vars.azure_vault_secret_key` (string)
    Azure vault key in the key-value store.
    Example: secret

  - `ops_pre_sync.credentials_env_vars.cyberark_vault_query_string` (string)
    Query to find a credential in the CyberArk vault.
    Example: Safe=Test;Folder=Test;Object=Test

  - `ops_pre_sync.credentials_env_vars.credential_type` (string)
    Credential type of the credential environment variable
    Example: PasswordCredential

  - `ops_pre_sync.credentials_env_vars.element_id` (string)
    Element ID of the credential environment variable. Omit to create a new credential. Include an existing element_id to update that credential. Any existing credential whose element_id is omitted from the request will be deleted. An element_id that does not match any existing credential is silently ignored.
    Example: 35

  - `ops_pre_sync.credentials_env_vars.type` (string)
    Type of the credential environment variable
    Example: CredentialsEnvVars

  - `ops_pre_sync.hook_template_id` (string)
    ID of the hook template

  - `ops_post_sync` (array)
    Operations to perform after syncing a created dSource.

  - `external_file_path` (string)
    External file path.

  - `environment_user_id` (string)
    Id of the environment user to use for linking.

  - `backup_level_enabled` (boolean)
    Boolean value indicates whether LEVEL-based incremental backups can be used on the source database.

  - `rman_channels` (integer)
    Number of parallel channels to use.

  - `files_per_set` (integer)
    Number of data files to include in each RMAN backup set.

  - `check_logical` (boolean)
    True if extended block checking should be used for this linked database.

  - `encrypted_linking_enabled` (boolean)
    True if SnapSync data from the source should be retrieved through an encrypted connection. Enabling this feature can decrease the performance of SnapSync from the source but has no impact on the performance of VDBs created from the retrieved data.

  - `compressed_linking_enabled` (boolean)
    True if SnapSync data from the source should be compressed over the network. Enabling this feature will reduce network bandwidth consumption and may significantly improve throughput, especially over slow network.

  - `bandwidth_limit` (integer)
    Bandwidth limit (MB/s) for SnapSync and LogSync network traffic. A value of 0 means no limit.

  - `number_of_connections` (integer)
    Total number of transport connections to use during SnapSync.

  - `diagnose_no_logging_faults` (boolean)
    If true, NOLOGGING operations on this container are treated as faults and cannot be resolved manually.

  - `pre_provisioning_enabled` (boolean)
    If true, pre-provisioning will be performed after every sync.

  - `link_now` (boolean)
    True if initial load should be done immediately.

  - `force_full_backup` (boolean)
    Whether or not to take another full backup of the source database.

  - `double_sync` (boolean)
    True if two SnapSyncs should be performed in immediate succession to reduce the number of logs required to provision the snapshot. This may significantly reduce the time necessary to provision from a snapshot.

  - `rman_rate_in_MB` (integer)
    RMAN rate in megabytes to be used. This is the upper limit for bytes read so that
RMAN does not consume excessive disk bandwidth and degrade online performance. (Oracle only)

  - `skip_space_check` (boolean)
    Skip check that tests if there is enough space available to store the database in the Delphix Engine. The Delphix Engine estimates how much space a database will occupy after compression and prevents SnapSync if insufficient space is available. This safeguard can be overridden using this option. This may be useful when linking highly compressible databases.

  - `do_not_resume` (boolean)
    Indicates whether a fresh SnapSync must be started regardless if it was possible to resume the current SnapSync. If true, we will not resume but instead ignore previous progress and backup all datafiles even if already completed from previous failed SnapSync. This does not force a full backup, if an incremental was in progress this will start a new incremental snapshot.

  - `files_for_full_backup` (array)
    List of datafiles to take a full backup of. This would be useful in situations where certain datafiles could not be backed up during previous SnapSync due to corruption or because they went offline.

  - `log_sync_mode` (string)
    LogSync operation mode for this database.
    Enum: "ARCHIVE_ONLY_MODE", "ARCHIVE_REDO_MODE", "UNDEFINED"

  - `log_sync_interval` (integer)
    Interval between LogSync requests, in seconds.

  - `non_sys_username` (string)
    Non-SYS database user to access this database. Only required for username-password auth (Single tenant only).
    Example: oracle

  - `non_sys_password` (string)
    Password for non sys user authentication (Single tenant only).
    Example: oracle

  - `non_sys_vault_username` (string)
    Delphix display name for the non sys vault user(Single tenant only).
    Example: my-vault

  - `non_sys_vault` (string)
    The name or reference of the vault from which to read the database credentials (Single tenant only).
    Example: my-vault

  - `non_sys_hashicorp_vault_engine` (string)
    Vault engine name where the credential is stored (Single tenant only).
    Example: kv

  - `non_sys_hashicorp_vault_secret_path` (string)
    Path in the vault engine where the credential is stored (Single tenant only).
    Example: oracle-env

  - `non_sys_hashicorp_vault_username_key` (string)
    Hashicorp vault key for the username in the key-value store (Single tenant only).
    Example: username

  - `non_sys_hashicorp_vault_secret_key` (string)
    Hashicorp vault key for the password in the key-value store (Single tenant only).
    Example: secret

  - `non_sys_azure_vault_name` (string)
    Azure key vault name (Single tenant only).
    Example: azure_vault

  - `non_sys_azure_vault_username_key` (string)
    Azure vault key for the username in the key-value store (Single tenant only).
    Example: username

  - `non_sys_azure_vault_secret_key` (string)
    Azure vault key for the password in the key-value store (Single tenant only).
    Example: secret

  - `non_sys_cyberark_vault_query_string` (string)
    Query to find a credential in the CyberArk vault (Single tenant only).
    Example: Safe=Test;Folder=Test;Object=Test

  - `fallback_username` (string)
    The database fallback username. Optional if bequeath connections are enabled (to be used in case of bequeath connection failures). Only required for username-password auth.
    Example: oracle

  - `fallback_password` (string)
    Password for fallback username.
    Example: oracle

  - `fallback_vault_username` (string)
    Delphix display name for the fallback vault user.
    Example: my-vault

  - `fallback_vault` (string)
    The name or reference of the vault from which to read the database credentials.
    Example: my-vault

  - `fallback_hashicorp_vault_engine` (string)
    Vault engine name where the credential is stored.
    Example: kv

  - `fallback_hashicorp_vault_secret_path` (string)
    Path in the vault engine where the credential is stored.
    Example: oracle-env

  - `fallback_hashicorp_vault_username_key` (string)
    Hashicorp vault key for the username in the key-value store.
    Example: username

  - `fallback_hashicorp_vault_secret_key` (string)
    Hashicorp vault key for the password in the key-value store.
    Example: secret

  - `fallback_azure_vault_name` (string)
    Azure key vault name.
    Example: azure_vault

  - `fallback_azure_vault_username_key` (string)
    Azure vault key for the username in the key-value store.
    Example: username

  - `fallback_azure_vault_secret_key` (string)
    Azure vault key for the password in the key-value store.
    Example: secret

  - `fallback_cyberark_vault_query_string` (string)
    Query to find a credential in the CyberArk vault.
    Example: Safe=Test;Folder=Test;Object=Test

  - `ops_pre_log_sync` (array)
    Operations to perform after syncing a created dSource and before running the LogSync.

