# Tests connection for a saved synthetic data connector.

Endpoint: POST /synthetic/connectors/{syntheticConnectorId}/test
Version: 3.30.0
Security: ApiKeyAuth

## Security:

  - `ApiKeyAuth` (unknown)
    apiKey in header Authorization

## Path parameters:

  - `syntheticConnectorId` (string, required)
    The id of the synthetic data connector

## Request body:

  - `application/json` (unknown)
    Optional override connector fields to test a saved synthetic data connector. Override values can be provided for host, port, username, password, sid, database_name, and schema_names. The missing fields will be taken from the saved connector.

## Request fields (application/json):

  - `connector_type` (string)
    The type of synthetic data connector. Currently supports Database only.
    Enum: "DATABASE"

  - `connector_subtype` (string)
    The database or file variant, such as Oracle, Postgres, MSSQL Server, JSON etc for synthetic database connector. Currently supports Oracle and EXTENDED. EXTENDED allows using a user-uploaded JDBC driver.
    Enum: "ORACLE", "EXTENDED"

  - `jdbc_driver_id` (string)
    The ID of an uploaded JDBC driver. Required when connector_subtype is EXTENDED.

  - `database_config` (object)
    Database connector config parameters
    Example: {"host":"db.example.com","port":1521,"authentication_type":"USERNAME_PASSWORD","username":"user1","password":"******","schema_names":["dbo"],"sid":"ORCL"}

  - `database_config.host` (string)
    The hostname or IP address of the database server.

  - `database_config.port` (integer)
    The TCP port number of the database server.

  - `database_config.authentication_type` (string)
    The authentication type for synthetic data connector. Currently supports UsernamePassword only.
    Enum: "USERNAME_PASSWORD"

  - `database_config.username` (string)
    The username this Connector will use to connect to the database.

  - `database_config.password` (string)
    The password this Connector will use to connect to the database.

  - `database_config.schema_names` (array)
    Schemas this connector spans. Required for Oracle reference connectors;  optional for EXTENDED. Target connectors inherit the reference connector's  schemas: an empty list or absent value is accepted as a no-op, but naming  any schema on one fails with a 400.

  - `database_config.database_name` (string)
    The database name for this connector.

  - `database_config.sid` (string)
    The SID value for this connector. This field is specific to database connectors of type Oracle and is mutually exclusive with service_name.

  - `database_config.service_name` (string)
    The service name for Oracle connectors. Mutually exclusive with sid.

  - `database_config.jdbc_url` (string)
    The JDBC URL for this connector. When present, this parameter takes precedence over other connection parameters.

  - `database_config.connection_properties_file_id` (string)
    Id of a previously uploaded file (CSV or .properties) whose parsed key-value pairs are persisted as this connector's connection properties. The file must belong to the caller's account and must parse successfully, or the request fails atomically. Null if none set. JSON-nullable when used in SyntheticConnectorTestRequest: absent means the saved connector's properties file carries over unchanged; explicit null clears it for that test.

## Response 200:

  - `200` (unknown)
    Connection test successful.

## Response 200 fields (application/json):

  - `status` (string)
    The status of the synthetic data connector test connection status.
    Enum: "SUCCEEDED", "FAILED"

  - `message` (string)
    A message describing the result of the unsaved synthetic data connector test.
    Example: Connection Succeeded

  - `job` (object)
    An asynchronous task.

  - `job.id` (string)
    The Job entity ID.
    Example: job-123

  - `job.status` (string)
    The status of the job.
    Enum: "PENDING", "STARTED", "TIMEDOUT", "RUNNING", "CANCELED", "FAILED", "SUSPENDED", "WAITING", "COMPLETED", "ABANDONED"

  - `job.is_waiting_for_telemetry` (boolean)
    Indicates that the operations performed by this Job have completed successfully, but the object changes are not yet reflected. This is only set when when the JOB is in STARTED status, with the guarantee that the job will not transition to the FAILED status. Note that this flag will likely be replaced with a new status in future API versions and be deprecated.

  - `job.type` (string)
    The type of job being done.
    Example: DB_REFRESH

  - `job.localized_type` (string)
    The i18n translated type of job being done.
    Example: DB Refresh

  - `job.error_details` (string)
    Details about the failure for FAILED jobs.
    Example: Unable to connect to the engine.

  - `job.warning_message` (string)
    Warnings for the job.
    Example: Failed to remove local MaskingJob, engineId: 3 localMaskingJobId: 7.

  - `job.target_id` (string)
    A reference to the job's target.
    Example: vdb-123

  - `job.target_name` (string)
    A reference to the job's target name.
    Example: vdb

  - `job.work_source_id` (string)
    The ID of the entity that initiated this job (e.g. a policy ID), if applicable.

  - `job.work_source_name` (string)
    The name of the entity that initiated this job, if applicable.

  - `job.work_source_type` (string)
    The origin of the operation that created this job. Null for DCT-initiated operations (attributed via account_id). DIRECT means the action was performed directly on the engine, bypassing DCT; POLICY means an automated policy triggered it; SYSTEM means it was engine-internal.
    Enum: "DIRECT", "POLICY", "SYSTEM"

  - `job.start_time` (string)
    The time the job started executing.
    Example: 2022-01-02T05:11:24.148Z

  - `job.update_time` (string)
    The time the job was last updated.
    Example: 2022-01-02T06:11:24.148Z

  - `job.trace_id` (string)
    traceId of the request which created this Job

  - `job.engine_ids` (array)
    IDs of the engines this Job is executing on.

  - `job.tags` (array)

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

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

  - `job.engines` (array)

  - `job.engines.engine_id` (string)

  - `job.engines.engine_name` (string)

  - `job.account_id` (integer)
    The ID of the account who initiated this job.
    Example: 1

  - `job.account_name` (string)
    The account name which initiated this job. It can be either firstname and lastname combination or firstname or lastname or username or email address or Account-.
    Example: User 1

  - `job.compliance_node_id` (string)
    The ID of the associated compliance node, if applicable.

  - `job.compliance_node_name` (string)
    The name of the associated compliance node, if applicable.

  - `job.percent_complete` (integer)
    Completion percentage of the Job.
    Example: 50

  - `job.virtualization_tasks` (array)

  - `job.virtualization_tasks.id` (string)

  - `job.virtualization_tasks.parent_job_id` (string)

  - `job.virtualization_tasks.start_time` (string)

  - `job.virtualization_tasks.end_time` (string)

  - `job.virtualization_tasks.title` (string)

  - `job.virtualization_tasks.percent_complete` (integer)

  - `job.virtualization_tasks.events` (array)

  - `job.virtualization_tasks.events.message_details` (string)

  - `job.virtualization_tasks.events.message_action` (string)

  - `job.virtualization_tasks.events.message_command_output` (string)

  - `job.virtualization_tasks.status` (string)
    Enum: "PENDING", "STARTED", "TIMEDOUT", "RUNNING", "CANCELED", "FAILED", "SUSPENDED", "WAITING", "COMPLETED", "ABANDONED"

  - `job.tasks` (array)

  - `job.tasks.id` (string)

  - `job.tasks.parent_job_id` (string)

  - `job.tasks.start_time` (string)

  - `job.tasks.end_time` (string)

  - `job.tasks.title` (string)

  - `job.tasks.percent_complete` (integer)

  - `job.tasks.events` (array)

  - `job.tasks.events.message_details` (string)

  - `job.tasks.events.message_action` (string)

  - `job.tasks.events.message_command_output` (string)

  - `job.tasks.events.timestamp` (string)
    When this specific event occurred. Absent/null for events persisted before this field was added (no backfill) and for any producer not yet updated to set it.

  - `job.tasks.status` (string)
    Enum: "PENDING", "STARTED", "TIMEDOUT", "RUNNING", "CANCELED", "FAILED", "SUSPENDED", "WAITING", "COMPLETED", "ABANDONED"

  - `job.execution_id` (string)
    The ID of the associated masking execution, if any.

  - `job.result_type` (string)
    The type of the job result. This is the type of the object present in the result.

  - `job.result` (object)
    The result of the job execution. This is JSON serialized string of the result object whose type is specified by result_type property.

  - `job.parent_job_id` (string)
    The ID of the parent job, if this job was triggered by another job.

