# Get a dSource by ID.

Endpoint: GET /dsources/{dsourceId}
Version: 3.30.0
Security: ApiKeyAuth

## Security:

  - `ApiKeyAuth` (unknown)
    apiKey in header Authorization

## Path parameters:

  - `dsourceId` (string, required)
    The ID of the dSource.

## Response 200:

  - `200` (unknown)
    OK

## Response 200 fields (application/json):

  - `id` (string)
    The dSource object entity ID.

  - `database_type` (string)
    The database type of this dSource.

  - `name` (string)
    The container name of this dSource.

  - `description` (string)
    The container description of this dSource.

  - `namespace_id` (string)
    The namespace id of this dSource.

  - `namespace_name` (string)
    The namespace name of this dSource.

  - `is_replica` (boolean)
    Is this a replicated object.

  - `database_version` (string)
    The database version of this dSource.

  - `content_type` (string)
    The content type of the dSource.

  - `data_uuid` (string)
    A universal ID that uniquely identifies the dSource database.

  - `storage_size` (integer)
    The actual space used by this dSource, in bytes.

  - `plugin_version` (string)
    The version of the plugin associated with this source database.

  - `excludes` (array)
    List of subdirectories in the source to exclude when syncing data. These paths are relative to the root of the source directory. [AppDataDirect only]

  - `follow_symlinks` (array)
    List of symlinks in the source to follow when syncing data. These paths are relative to the root of the source directory. All other symlinks are preserved. [AppDataDirect only]

  - `creation_date` (string)
    The date this dSource was created.

  - `group_name` (string)
    The name of the group containing this dSource.

  - `enabled` (boolean)
    A value indicating whether this dSource is enabled.

  - `is_detached` (boolean)
    A value indicating whether this dSource is detached.

  - `engine_id` (string)
    A reference to the Engine that this dSource belongs to.

  - `source_id` (string)
    A reference to the Source associated with this dSource.

  - `staging_source_id` (string)
    A reference to the Staging Source associated with this dSource.

  - `status` (string)
    The runtime status of the dSource. 'Unknown' if all attempts to connect to the source failed.

  - `engine_name` (string)
    Name of the Engine where this DSource is hosted

  - `cdb_id` (string)
    A reference to the CDB associated with this dSource.

  - `source_name` (string)
    The name of the source database from which this dSource was created.

  - `cdb_name` (string)
    The name of the CDB (Container Database) associated with this dSource. Applicable to Oracle Multitenant dSources only.

  - `current_timeflow_id` (string)
    A reference to the currently active timeflow for this dSource.
    Example: timeflow-123

  - `previous_timeflow_id` (string)
    A reference to the previous timeflow for this dSource.
    Example: timeflow-123

  - `is_appdata` (boolean)
    Indicates whether this dSource has an AppData database.
    Example: true

  - `toolkit_id` (string)
    The ID of the toolkit associated with this dSource(AppData only).

  - `unvirtualized_space` (integer)
    This is the sum of unvirtualized space from the dependants VDBs of the dSource.

  - `dependant_vdbs` (integer)
    The number of VDBs that are dependant on this dSource. This includes all VDB descendants that have this dSource as an ancestor.

  - `appdata_source_params` (object)
    The JSON payload conforming to the DraftV4 schema based on the type of application data being manipulated.
    Example: {"param":"value","param2":"value2"}

  - `appdata_config_params` (object)
    The parameters specified by the source config schema in the toolkit
    Example: {"foo":"bar"}

  - `tags` (array)

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

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

  - `primary_object_id` (string)
    The ID of the parent object from which replication was done.

  - `primary_engine_id` (string)
    The ID of the parent engine from which replication was done.

  - `primary_engine_name` (string)
    The name of the parent engine from which replication was done.

  - `replicas` (array)
    The list of replicas replicated from this object.

  - `replicas.replica_id` (string)
    The ID of the replicated object.
    Example: replica-1

  - `replicas.replica_engine_id` (string)
    The ID of the replicated object's engine.
    Example: 1

  - `replicas.replica_engine_name` (string)
    The name of the replicated object's engine.
    Example: replica-e1

  - `replicas.replica_namespace_id` (string)
    The namespace id of the replicated object.
    Example: namespace-1

  - `hooks` (object)
    DSource operation hooks.

  - `hooks.ops_pre_sync` (array)
    The commands to execute before syncing with external data.

  - `hooks.ops_pre_sync.name` (string)
    Example: Print the current user

  - `hooks.ops_pre_sync.command` (string)
    Example: whoami

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

  - `hooks.ops_pre_sync.element_id` (string)
    Pass the element_id only when updating an existing hook, omit to create a new one.
    Example: 3

  - `hooks.ops_pre_sync.has_credentials` (boolean)
    Example: false

  - `hooks.ops_pre_sync.credentials_env_vars` (array)

  - `hooks.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.

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

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

  - `hooks.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

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

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

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

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

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

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

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

  - `hooks.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

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

  - `hooks.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

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

  - `hooks.ops_pre_sync.hook_template_id` (string)
    Example: Hook Template 1

  - `hooks.ops_pre_log_sync` (array)
    The commands to execute after syncing with external data and before running the LogSync.

  - `hooks.ops_post_sync` (array)
    The commands to execute after syncing a linked source.

  - `hooks.pre_validated_sync` (array)
    The commands to execute on the staging source before performing a validated sync.

  - `hooks.post_validated_sync` (array)
    The commands to execute on the staging source after performing a validated sync.

  - `sync_policy_id` (string)
    The id of the snapshot policy associated with this dSource.

  - `retention_policy_id` (string)
    The id of the retention policy associated with this dSource.

  - `replica_retention_policy_id` (string)
    The id of the replica retention policy associated with this dSource.

  - `quota_policy_id` (string)
    The id of the quota policy associated with this dSource.

  - `logsync_enabled` (boolean)
    True if LogSync is enabled for this dSource.

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

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

  - `exported_data_directory` (string)
    ZFS exported data directory path.

  - `template_id` (string)
    A reference to the Non Virtual Database Template.
    Example: DATABASE_TEMPLATE-1

  - `allow_auto_staging_restart_on_host_reboot` (boolean)
    Indicates whether Delphix should automatically restart this staging database when staging host reboot is detected.

  - `physical_standby` (boolean)
    Indicates whether this staging database is configured as a physical standby.

  - `validate_by_opening_db_in_read_only_mode` (boolean)
    Indicates whether this staging database snapshot is validated by opening it in read-only mode.

  - `mssql_sync_strategy_managed_type` (string)
    Enum: "external", "delphix", "staging_push"

  - `validated_sync_mode` (string)
    Specifies the backup types ValidatedSync will use to synchronize the dSource with the source database.
    Enum: "TRANSACTION_LOG", "FULL_OR_DIFFERENTIAL", "FULL", "NONE"

  - `shared_backup_locations` (array)
    Shared source database backup locations.

  - `backup_policy` (string)
    Specify which node of an availability group to run the copy-only full backup on
    Enum: "PRIMARY", "SECONDARY_ONLY", "PREFER_SECONDARY"

  - `compression_enabled` (boolean)
    Specify whether the backups taken should be compressed or uncompressed.

  - `staging_database_name` (string)
    The name of the staging database

  - `db_state` (string)
    User provided db state that is used to create staging push db
    Enum: "ONLINE", "RESTORING"

  - `encryption_key` (string)
    The encryption key to use when restoring encrypted backups.

  - `external_netbackup_config_master_name` (string)
    The master server name of this NetBackup configuration.

  - `external_netbackup_config_source_client_name` (string)
    The source's client server name of this NetBackup configuration.

  - `external_netbackup_config_params` (object)
    NetBackup configuration parameter overrides.

  - `external_netbackup_config_templates` (string)
    Optional config template selection for NetBackup configurations.

  - `external_commserve_host_name` (string)
    The commserve host name of this Commvault configuration.

  - `external_commvault_config_source_client_name` (string)
    The source client name of this Commvault configuration.

  - `external_commvault_config_staging_client_name` (string)
    The staging client name of this Commvault configuration.

  - `external_commvault_config_params` (object)
    Commvault configuration parameter overrides.

  - `external_commvault_config_templates` (string)
    Optional config template selection for Commvault configurations.

  - `mssql_user_type` (string)
    Database user type for Database authentication.
    Enum: "DATABASE_USER", "DOMAIN_USER", "ENVIRONMENT_USER"

  - `domain_user_credential_type` (string)
    credential types.
    Enum: "PASSWORD", "CYBERARK_VAULT", "HASHICORP_VAULT", "AZURE_VAULT"

  - `mssql_database_username` (string)
    The database user name for database user type.

  - `mssql_user_environment_reference` (string)
    The name or reference of the environment user for environment user type.

  - `mssql_user_domain_username` (string)
    Domain User name for password credentials.

  - `mssql_user_domain_vault_username` (string)
    Delphix display name for the vault user.

  - `mssql_user_domain_vault` (string)
    The name or reference of the vault.

  - `mssql_user_domain_hashicorp_vault_engine` (string)
    Vault engine name where the credential is stored.

  - `mssql_user_domain_hashicorp_vault_secret_path` (string)
    Path in the vault engine where the credential is stored.

  - `mssql_user_domain_hashicorp_vault_username_key` (string)
    Hashicorp vault key for the username in the key-value store.

  - `mssql_user_domain_hashicorp_vault_secret_key` (string)
    Hashicorp vault key for the password in the key-value store.

  - `mssql_user_domain_azure_vault_name` (string)
    Azure key vault name.

  - `mssql_user_domain_azure_vault_username_key` (string)
    Azure vault key in the key-value store.

  - `mssql_user_domain_azure_vault_secret_key` (string)
    Azure vault key in the key-value store.

  - `mssql_user_domain_cyberark_vault_query_string` (string)
    Query to find a credential in the CyberArk vault.

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

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

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

  - `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.

  - `data_connection_id` (string)
    The ID of the associated DataConnection.
    Example: data-connection-1

  - `truncate_log_on_checkpoint` (boolean)
    True if configured to truncate log on checkpoint (ASE only).

  - `durability_level` (string)
    SAP ASE database durability level (ASE only).
    Enum: "FULL", "AT_SHUTDOWN", "NO_RECOVERY"

  - `external_file_path` (string)
    ASE External file path.

  - `load_backup_path` (string)
    ASE Source database backup location.

  - `validated_sync_enabled` (boolean)
    True if ASE validated sync mode is set to ENABLED

  - `dump_history_file_enabled` (boolean)
    Specifies if Dump History File is enabled for backup history detection.

  - `source_of_production_backup` (string)
    Denotes whether it's a remote backup server or staging backup server.
    Enum: "STAGING", "REMOTE"

  - `backup_password_set` (boolean)
    True if ASE dump is password protected.

  - `backup_server_name` (string)
    Name of the ASE backup server instance.

  - `backup_host` (string)
    Host environment where the ASE backup server is located.

  - `backup_host_user` (string)
    OS user for the host where the ASE backup server is located.

