# Returns a list of compatible repositories for dSource upgrade.

Endpoint: GET /dsources/{dsourceId}/upgrade_compatible_repositories
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):

  - `items` (array)

  - `items.id` (string)
    The Environment object entity ID.
    Example: environment-123

  - `items.name` (string)
    The name of this environment.
    Example: Linux Test Host

  - `items.namespace_id` (string)
    The namespace id of this environment.
    Example: 1-NAMESPACE-1

  - `items.namespace_name` (string)
    The namespace name of this environment.
    Example: test-engine-1

  - `items.is_replica` (boolean)
    Is this a replicated object.
    Example: true

  - `items.namespace` (string)
    The namespace of this environment for replicated and restored objects.
    Example: NAMESPACE-1

  - `items.engine_id` (string)
    A reference to the Engine that this Environment connection is associated with.
    Example: engine-123

  - `items.engine_name` (string)
    A reference to the Engine that this Environment connection is associated with.
    Example: engine-123

  - `items.address` (string)
    The address of this environment. For a standalone environment, this is the address of the host itself; for a clustered environment, it is the address used to perform cluster discovery.
    Example: winsrc1201.dlpxdc.co

  - `items.enabled` (boolean)
    True if this environment is enabled.
    Example: true

  - `items.encryption_enabled` (boolean)
    Flag indicating whether the data transfer is encrypted or not.
    Example: false

  - `items.description` (string)
    The environment description.
    Example: Windows source host

  - `items.is_cluster` (boolean)
    True if this environment is a cluster of hosts.
    Example: false

  - `items.cluster_home` (string)
    Cluster home for RAC environment.
    Example: /u01/app/12.2.0.1/grid

  - `items.cluster_name` (string)
    Cluster name for Oracle RAC environment.
    Example: abc-19990src

  - `items.cluster_user` (string)
    Cluster user for Oracle RAC environment.
    Example: HOST_USER-4

  - `items.scan` (string)
    The Single Client Access Name of the cluster (11.2 and greater clusters only).
    Example: abc-scan.xyz.com

  - `items.remote_listener` (string)
    The default remote_listener parameter to be used for databases on the cluster.
    Example: remote-listener.xyz.com

  - `items.is_windows_target` (boolean)
    True if this windows environment is a target environment.
    Example: false

  - `items.staging_environment` (string)
    ID of the staging environment.
    Example: 1-WINDOWS_HOST-8

  - `items.hosts` (array)
    The hosts that are part of this environment.

  - `items.hosts.id` (string)
    The entity ID of this Host.
    Example: 3-UNIX_HOST-5

  - `items.hosts.reference` (string)
    Delphix engine equivalent constant
    Example: UNIX_HOST-5

  - `items.hosts.hostname` (string)
    The hostname or IP address of this host.
    Example: linux.dev.delphix.com

  - `items.hosts.os_name` (string)
    The name of the OS on this host.
    Example: Linux

  - `items.hosts.os_version` (string)
    The version of the OS on this host.
    Example: Red Hat Enterprise Linux Server release 7.3 (Maipo)

  - `items.hosts.distribution` (string)
    The name of the OS distribution on this host.
    Example: RedHat

  - `items.hosts.memory_size` (integer)
    The total amount of memory on this host in bytes.
    Example: 8382160896

  - `items.hosts.available` (boolean)
    True if the host is up and a connection can be established from the engine.
    Example: false

  - `items.hosts.available_timestamp` (string)
    The last time the available property was updated.
    Example: 2022-06-02T17:49:11.457Z

  - `items.hosts.not_available_reason` (string)
    The reason why the host is not available.
    Example: Failed to connect to host

  - `items.hosts.oracle_cluster_node_reference` (string)
    The reference to the associated OracleClusterNode.
    Example: ORACLE_CLUSTER_NODE-1

  - `items.hosts.oracle_cluster_node_name` (string)
    The name of the associated OracleClusterNode.
    Example: my-favorite-cluster-node

  - `items.hosts.oracle_cluster_node_enabled` (boolean)
    Whether the associated OracleClusterNode is enabled.
    Example: true

  - `items.hosts.oracle_cluster_node_discovered` (boolean)
    Whether the associated OracleClusterNode was discovered.
    Example: true

  - `items.hosts.oracle_cluster_node_virtual_ips` (array)
    The Virtual IP addresses associated with the OracleClusterNode.

  - `items.hosts.oracle_cluster_node_virtual_ips.domain_name` (string)
    The domain name for the VirtualIP.
    Example: virtual.domain.com

  - `items.hosts.oracle_cluster_node_virtual_ips.ip` (string)
    The IP address for this VirtualIP.
    Example: 192.168.0.1

  - `items.hosts.oracle_cluster_node_virtual_ips.discovered` (boolean)
    Whether this VirtualIP was discovered.
    Example: true

  - `items.hosts.oracle_cluster_node_instances` (array)
    The instances associated with the OracleClusterNode.

  - `items.hosts.oracle_cluster_node_instances.instance_name` (string)
    The name of this instance.

  - `items.hosts.oracle_cluster_node_instances.instance_number` (integer)
    The number of this instance.

  - `items.hosts.oracle_cluster_node_instances.source_id` (string)
    The id of Source this instance belongs to.

  - `items.hosts.windows_cluster_node_reference` (string)
    The reference to the associated WindowsClusterNode.
    Example: WINDOWS_CLUSTER_NODE-1

  - `items.hosts.windows_cluster_node_name` (string)
    The name of the associated WindowsClusterNode.
    Example: my-favorite-cluster-node

  - `items.hosts.windows_cluster_node_discovered` (boolean)
    Whether the associated Windows cluster node was discovered.
    Example: true

  - `items.hosts.nfs_addresses` (array)
    The list of host/IP addresses to use for NFS export.
    Example: ["192.168.10.2"]

  - `items.hosts.dsp_keystore_alias` (string)
    The lowercase alias to use inside the user managed DSP keystore.
    Example: oracle-env

  - `items.hosts.dsp_keystore_path` (string)
    The path to the user managed DSP keystore.
    Example: /tmp/keystore.keystore

  - `items.hosts.dsp_truststore_path` (string)
    The path to the user managed DSP truststore.
    Example: /tmp/truststore.keystore

  - `items.hosts.java_home` (string)
    The path to the user managed Java Development Kit (JDK). If not specified, then the OpenJDK will be used.
    Example: /Library/Java/JavaVirtualMachines/jdk/Contents/Home

  - `items.hosts.ssh_port` (integer)
    The port number used to connect to the host via SSH.
    Example: 22

  - `items.hosts.toolkit_path` (string)
    The path for the toolkit that resides on the host.
    Example: /work

  - `items.hosts.connector_port` (integer)
    The port that the Windows Connector connects on.
    Example: 9100

  - `items.hosts.connector_version` (string)
    The Windows Connector version that is installed on the provided host.
    Example: 1.17.0

  - `items.hosts.connector_dot_net_framework_version` (string)
    The .NET Framework version used for Windows Connector Service.
    Example: 3.5

  - `items.hosts.oracle_tde_keystores_root_path` (string)
    The path to the root of the Oracle TDE keystores artifact directories.
    Example: /keystore/root/path

  - `items.hosts.oracle_tde_okv_home_path` (string)
    The path to the Oracle Key Vault library installation on the database node.
    Example: /work/okv

  - `items.hosts.processor_type` (string)
    The platform for the host machine.
    Example: x86_64

  - `items.hosts.timezone` (string)
    The OS timezone.
    Example: America/New_York,EST-0500

  - `items.hosts.powershell_version` (string)
    The PowerShell version installed on the windows target host.
    Example: 5.1.17763.134

  - `items.hosts.release` (string)
    The OS release.
    Example: 6.3

  - `items.hosts.trace_route_info` (string)
    Traceroute network hops from host to Delphix Engine.
    Example: 1 <1 ms <1 ms <1 ms 10.110.232.122

  - `items.hosts.is_tde_external_key_manager_password_set` (boolean)
    True if Oracle TDE External key Manager password is set.
    Example: true

  - `items.tags` (array)
    The tags to be created for this environment.

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

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

  - `items.repositories` (array)
    Repositories associated with this environment. A Repository typically corresponds to a database installation.

  - `items.repositories.id` (string)
    Entity id of the repository.

  - `items.repositories.name` (string)
    Name of the repository.

  - `items.repositories.database_type` (string)
    The database type of this repository.

  - `items.repositories.allow_provisioning` (boolean)
    Flag indicating whether the repository should be used for provisioning.

  - `items.repositories.is_staging` (boolean)
    Flag indicating whether this repository can be used by the Delphix Engine for internal processing.

  - `items.repositories.oracle_base` (string)
    The Oracle base where database binaries are located.

  - `items.repositories.version` (string)
    Version of the repository.

  - `items.repositories.bits` (integer)
    32 or 64 bits.

  - `items.repositories.install_group` (string)
    Group name of the user that owns the install.

  - `items.repositories.install_user` (string)
    User name of the user that owns the install.

  - `items.repositories.rac` (boolean)
    Flag indicating whether the install supports Oracle RAC.

  - `items.repositories.ports` (array)
    The network ports for connecting to the database instance.

  - `items.repositories.port` (integer)
    The network port for connecting to the SQL Server instance.

  - `items.repositories.dump_history_file` (string)
    Fully qualified name of the dump history file.

  - `items.repositories.page_size` (integer)
    Database page size for the SAP ASE instance.

  - `items.repositories.owner` (string)
    Account the database server instance is running as.

  - `items.repositories.installation_path` (string)
    Directory path where the installation is located.

  - `items.repositories.fulltext_installed` (boolean)
    This property determines if the full-text search and semantic search is installed or not.

  - `items.repositories.internal_version` (integer)
    The internal version is tied to the data format of a database and is used to detect compatibility.

  - `items.repositories.mssql_cluster_instances_name` (array)
    MSSQL cluster instances name.

  - `items.repositories.mssql_cluster_instances_version` (array)
    MSSQL cluster instances version.

  - `items.repositories.mssql_cluster_instances_owners` (array)
    MSSQL cluster instance owners.

  - `items.repositories.mssql_cluster_instances_ports` (array)
    MSSQL cluster instances ports.

  - `items.repositories.mssql_cluster_instances_server_names` (array)
    MSSQL cluster instances server names.

  - `items.repositories.mssql_cluster_instances_nodes` (array)
    MSSQL cluster instances nodes.

  - `items.repositories.installation_home` (string)
    Directory where the installation home is located.

  - `items.repositories.drive_letter` (array)
    MSSQL failover cluster drive letter.

  - `items.repositories.discovered` (boolean)
    Flag indicating whether the repository was automatically discovered.

  - `items.repositories.mssql_listeners` (array)
    The list of listeners belonging to this repository.

  - `items.repositories.mssql_listeners.type` (string)
    Enum: "MSSqlAvailabilityGroupListener", "MSSqlFailoverClusterListener"

  - `items.repositories.mssql_listeners.address` (string)
    The address of the listener.
    Example: ag-w16-tgt-agl.qa-ad.delphix.com

  - `items.repositories.mssql_listeners.name` (string)
    The name of the listener.
    Example: ag-w16-tgt-agl

  - `items.repositories.mssql_listeners.port` (integer)
    The port for the listener.
    Example: 1433

  - `items.repositories.database_username` (string)
    The username of the ASE instance database.

  - `items.repositories.service_principal_name` (string)
    The Kerberos Service Principal Name (SPN) of the database.

  - `items.repositories.isql_path` (string)
    The path to the isql binary to use for this SAP ASE instance.

  - `items.repositories.ase_tls_enabled` (boolean)
    True if SAP ASE instance is TLS/SSL enabled.

  - `items.repositories.credential_type` (string)
    The credential type used for this repository.
    Enum: "PasswordCredential", "SystemKeyCredential", "KeyPairCredential", "KerberosCredential", "CyberArkVaultCredential", "HashiCorpVaultCredential", "AzureVaultCredential"

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

  - `items.listeners` (array)
    Oracle listeners associated with this environment.

  - `items.listeners.id` (string)
    Id of this listener.
    Example: 1-ORACLE_NODE_LISTENER-11

  - `items.listeners.name` (string)
    Name of this listener.
    Example: my-listener

  - `items.listeners.type` (string)
    Enum: "NODE", "SCAN"

  - `items.listeners.protocol_addresses` (array)
    The list of protocol addresses for this listener.
    Example: ["(ADDRESS=(PROTOCOL=tcp)(HOST=10.75.59.184)(PORT=4567))","(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))"]

  - `items.listeners.client_endpoints` (array)
    The list of client endpoints for this listener.
    Example: ["(ADDRESS=(PROTOCOL=tcp)(HOST=10.75.59.184)(PORT=4567))"]

  - `items.listeners.is_discovered` (boolean)
    Whether this listener was automatically discovered or not.

  - `items.listeners.host_id` (string)
    Id to the host this listener is associated with.
    Example: 1-UNIX_HOST-14

  - `items.os_type` (string)
    The operating system type of this environment.
    Enum: "UNIX", "WINDOWS"

  - `items.env_users` (array)
    Environment users associated with this environment.

  - `items.env_users.user_ref` (string)
    Environment user reference
    Example: user-ref-1

  - `items.env_users.username` (string)
    Username of environment user.
    Example: username-1

  - `items.env_users.primary_user` (boolean)
    This indicates if this user is primary or not
    Example: false

  - `items.env_users.auth_type` (string)
    Authentication type of this user. PasswordCredential indicates username and password are used, SystemKeyCredential indicates public key based security credential, KeyPairCredential indicates public key based security credential consisting of a user specified key pair, KerberosCredential indicates Kerberos authentication, CyberArkVaultCredential indicates CyberArk Vault is used and HashiCorpVaultCredential indicates that Hashicorp vault is used for authentication
    Enum: "PasswordCredential", "SystemKeyCredential", "KeyPairCredential", "KerberosCredential", "CyberArkVaultCredential", "HashiCorpVaultCredential", "AzureVaultCredential"

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

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

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

  - `items.env_users.hashicorp_vault_username_key` (string)
    Key for the username in the key-value store.
    Example: username-key

  - `items.env_users.hashicorp_vault_secret_key` (string)
    Key for the password in the key-value store.
    Example: secret-key

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

  - `items.env_users.azure_vault_name` (string)
    Azure key vault name.
    Example: azure_vault

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

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

  - `items.env_users.custom_public_key` (string)
    Public key to be used for authentication

  - `items.ase_db_user_name` (string)
    The username of the SAP ASE database user.

  - `items.ase_db_credential_type` (string)
    The credential type used for the SAP ASE database user.
    Enum: "PasswordCredential", "SystemKeyCredential", "KeyPairCredential", "KerberosCredential", "CyberArkVaultCredential", "HashiCorpVaultCredential", "AzureVaultCredential"

  - `items.ase_enable_tls` (boolean)
    True if SAP ASE environment configured with TLS/SSL to discover the SAP ASE instances.
    Example: false

  - `items.ase_skip_server_certificate_validation` (boolean)
    If True, ASE database connection will skip the server certificate validation during the TLS/SSL handshake.

