# Get defaults for an AppData dSource linking.

Endpoint: POST /dsources/appdata/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 AppData 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.

  - `link_type` (string)
    The type of link to create. Default is AppDataDirect.
* `AppDataDirect` - Represents the AppData specific parameters of a link request for a source directly replicated into the Delphix Engine.
* `AppDataStaged` - Represents the AppData specific parameters of a link request for a source with a staging source.
    Enum: "AppDataDirect", "AppDataStaged"

  - `staging_mount_base` (string)
    The base mount point for the NFS mount on the staging environment [AppDataStaged only].

  - `staging_environment` (string)
    The environment used as an intermediate stage to pull data into Delphix [AppDataStaged only].

  - `staging_environment_user` (string)
    The environment user used to access the staging environment [AppDataStaged only].

  - `environment_user` (string)
    The OS user to use for linking.

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

  - `parameters` (object)
    The JSON payload conforming to the DraftV4 schema based on the type of application data being manipulated.

  - `sync_parameters` (object)
    The JSON payload conforming to the snapshot parameters definition in a LUA toolkit or platform plugin.

