> For the complete documentation index, see [llms.txt](https://developer.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.collibra.com/api/references/edge/connections.md).

# Connections

Resource management (CRUD) for Connections.

## List site connections

> Returns a paginated list of data source connections from the target Edge site.

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"schemas":{"ConnectionListResponse":{"type":"object","required":["results"],"properties":{"nextCursor":{"type":"string"},"results":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionResponse"}}},"description":"This is the paginated response for data source connection management endpoints."},"ConnectionResponse":{"type":"object","required":["id","name","edgeSiteId","properties","createdOn","lastModifiedOn","testConnectionSupported"],"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"edgeSiteId":{"type":"string","format":"uuid"},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"createdOn":{"type":"string","format":"date-time"},"lastModifiedOn":{"type":"string","format":"date-time"},"testConnectionSupported":{"type":"boolean","readOnly":true,"description":"Indicates whether this connection type supports the test connection operation. Only connections with `testConnectionSupported: true` can be used with `POST /sites/{siteId}/connections/{connectionId}/test`.\n"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"description":"Response body for data source connection management endpoints."},"ConnectionProperties":{"oneOf":[{"$ref":"#/components/schemas/ConnectionAws"},{"$ref":"#/components/schemas/ConnectionAzure"},{"$ref":"#/components/schemas/ConnectionDatabricks"},{"$ref":"#/components/schemas/ConnectionDbt"},{"$ref":"#/components/schemas/ConnectionGcp"},{"$ref":"#/components/schemas/ConnectionGit"},{"$ref":"#/components/schemas/ConnectionHttp"},{"$ref":"#/components/schemas/ConnectionIics"},{"$ref":"#/components/schemas/ConnectionJdbc"},{"$ref":"#/components/schemas/ConnectionLocalStorage"},{"$ref":"#/components/schemas/ConnectionLooker"},{"$ref":"#/components/schemas/ConnectionMatillion"},{"$ref":"#/components/schemas/ConnectionMicroStrategy"},{"$ref":"#/components/schemas/ConnectionMlflow"},{"$ref":"#/components/schemas/ConnectionPowerBI"},{"$ref":"#/components/schemas/ConnectionS3Compatible"},{"$ref":"#/components/schemas/ConnectionSapAICore"},{"$ref":"#/components/schemas/ConnectionSapDatasphereCatalog"},{"$ref":"#/components/schemas/ConnectionSigma"},{"$ref":"#/components/schemas/ConnectionSnowflake"},{"$ref":"#/components/schemas/ConnectionSsrs"},{"$ref":"#/components/schemas/ConnectionTableau"},{"$ref":"#/components/schemas/ConnectionThoughtSpot"}],"discriminator":{"propertyName":"type","mapping":{"ConnectionAws":"#/components/schemas/ConnectionAws","ConnectionAzure":"#/components/schemas/ConnectionAzure","ConnectionDatabricks":"#/components/schemas/ConnectionDatabricks","ConnectionDbt":"#/components/schemas/ConnectionDbt","ConnectionGcp":"#/components/schemas/ConnectionGcp","ConnectionGit":"#/components/schemas/ConnectionGit","ConnectionHttp":"#/components/schemas/ConnectionHttp","ConnectionIics":"#/components/schemas/ConnectionIics","ConnectionJdbc":"#/components/schemas/ConnectionJdbc","ConnectionLocalStorage":"#/components/schemas/ConnectionLocalStorage","ConnectionLooker":"#/components/schemas/ConnectionLooker","ConnectionMatillion":"#/components/schemas/ConnectionMatillion","ConnectionMicroStrategy":"#/components/schemas/ConnectionMicroStrategy","ConnectionMlflow":"#/components/schemas/ConnectionMlflow","ConnectionPowerBI":"#/components/schemas/ConnectionPowerBI","ConnectionS3Compatible":"#/components/schemas/ConnectionS3Compatible","ConnectionSapAICore":"#/components/schemas/ConnectionSapAICore","ConnectionSapDatasphereCatalog":"#/components/schemas/ConnectionSapDatasphereCatalog","ConnectionSigma":"#/components/schemas/ConnectionSigma","ConnectionSnowflake":"#/components/schemas/ConnectionSnowflake","ConnectionSsrs":"#/components/schemas/ConnectionSsrs","ConnectionTableau":"#/components/schemas/ConnectionTableau","ConnectionThoughtSpot":"#/components/schemas/ConnectionThoughtSpot"}}},"ConnectionAws":{"type":"object","title":"AWS Connection","description":"AWS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAws$","description":"Discriminator for AWS connection"},"auth":{"$ref":"#/components/schemas/AuthAws"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthAws":{"title":"AWS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAwsEc2"},{"$ref":"#/components/schemas/AuthAwsIam"}],"discriminator":{"propertyName":"type","mapping":{"AuthAwsEc2":"#/components/schemas/AuthAwsEc2","AuthAwsIam":"#/components/schemas/AuthAwsIam"}}},"AuthAwsEc2":{"title":"AWS EC2 Instance Profile Authentication","type":"object","description":"Authenticate via the IAM role attached to the EC2 instance running the Edge site. No credentials are configured on the connection.","properties":{"type":{"type":"string","pattern":"^AuthAwsEc2$"}},"required":["type"]},"AuthAwsIam":{"title":"AWS IAM Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthAwsIam$"},"awsAccessKeyId":{"description":"AWS Access Key ID","$ref":"#/components/schemas/ParameterString"},"awsSecretKey":{"description":"AWS Secret Access Key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","awsAccessKeyId","awsSecretKey"]},"ParameterString":{"description":"String value that is a plain text value or a vault secret that resolves to a string value.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueString":{"title":"String Value","type":"object","required":["type","value"],"properties":{"type":{"type":"string","pattern":"^ValueString$"},"value":{"type":"string","minLength":1,"maxLength":4000,"pattern":".*\\S.*"}},"description":"Contains a series of characters that comprises a string value."},"ValueVaultString":{"title":"VaultStringReference","description":"Reference to a vault-stored secret that resolves to a string value. Use this instead of `ValueString` when the value should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultString$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"VaultKeys":{"title":"Vault Keys","description":"Vault reference parameter for HashiCorp, CyberArk, AWS Secrets Manager, Azure Key Vault and Google Secret Manager.","type":"object","oneOf":[{"$ref":"#/components/schemas/VaultKeyAWSSecretsManager"},{"$ref":"#/components/schemas/VaultKeyAzureKeyVaultSecret"},{"$ref":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery"},{"$ref":"#/components/schemas/VaultKeyGCPSecretManager"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultDatabase"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}],"discriminator":{"propertyName":"type","mapping":{"VaultKeyAWSSecretsManager":"#/components/schemas/VaultKeyAWSSecretsManager","VaultKeyAzureKeyVaultSecret":"#/components/schemas/VaultKeyAzureKeyVaultSecret","VaultKeyCyberArkCredentialProviderQuery":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery","VaultKeyGCPSecretManager":"#/components/schemas/VaultKeyGCPSecretManager","VaultKeyHashiCorpVaultDatabase":"#/components/schemas/VaultKeyHashiCorpVaultDatabase","VaultKeyHashiCorpVaultKeyValue":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}}},"VaultKeyAWSSecretsManager":{"title":"AWS Secrets Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAWSSecretsManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The name of the secret in your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"Required only when the secret stored in AWS Secrets Manager is a JSON object; it selects which JSON key to use.\n\nFor example, if the secret is `{\"pass1\": \"my-password\", \"pass2\": \"my-password2\"}` and you want the value of `pass1`, set `secretName` to the AWS secret name (e.g. `edge-db-customer`) and `field` to `pass1`.\n\nLeave `field` empty when the secret is stored as a plain string value.\n"}}},"VaultKeyAzureKeyVaultSecret":{"title":"Azure Key Vault Secret Reference","type":"object","required":["type","secretName","vaultName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAzureKeyVaultSecret$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."},"vaultName":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the Azure Key Vault that contains the secret."}}},"VaultKeyCyberArkCredentialProviderQuery":{"title":"CyberArk Credential Provider Query Reference","type":"object","required":["type","query"],"properties":{"type":{"type":"string","pattern":"^VaultKeyCyberArkCredentialProviderQuery$"},"query":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The query must be a string containing the properties required to identify the secret. Each property must be separated by a semicolon (`;`).\n\nFor example: `Safe=<SafeName>;Folder=<FolderName>;Object=<ObjectName>`\n\nIf a property is a folder with sub-folders, use a backslash (`\\`) to define the folder path. For example: `Folder=Root\\Top Secrets\\More Secrets`\n"}}},"VaultKeyGCPSecretManager":{"title":"Google Cloud Secret Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyGCPSecretManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."}}},"VaultKeyHashiCorpVaultDatabase":{"title":"HashiCorp Vault Database Reference","type":"object","required":["type","enginePath","role","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultDatabase$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"role":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"If your Secret Engine Type is Database, enter the role specified in the Database engine."},"field":{"type":"string","pattern":"^(username|password)$","description":"Allowed values: username, password"}}},"VaultKeyHashiCorpVaultKeyValue":{"title":"HashiCorp Key-Value Secret Reference","type":"object","required":["type","enginePath","secretPath","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultKeyValue$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"secretPath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The secret path to your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the field in the HashiCorp Key-Value secret whose value should be retrieved."}}},"ParameterSecretString":{"description":"A secret string value that is a plain text value, a redacted value from reading a secret stored on an Edge site, or a string value retrieved from a vault.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueRedacted":"#/components/schemas/ValueRedacted","ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueRedacted":{"title":"Redacted Value","description":"Returned when a secret value is stored on the Edge site and is not accessible via the API. On create and update, use ValueString to set the value. To clear an existing secret, omit the field from the request body.\n","type":"object","required":["type"],"properties":{"type":{"type":"string","pattern":"^ValueRedacted$"}}},"ParameterGenericMap":{"type":"object","description":"Map of parameters for connections used to pass additional configuration.","additionalProperties":{"$ref":"#/components/schemas/ParameterGeneric"}},"ParameterGeneric":{"title":"Generic Parameter","description":"A parameter value for use in a data source connection parameter configuration.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultArtifact"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueRedacted":"#/components/schemas/ValueRedacted","ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueString":"#/components/schemas/ValueString","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueEdgeArtifactId":{"title":"Edge Artifact ID","description":"References a non-sensitive artifact stored on the Collibra instance and uploaded via `POST /artifacts`. Use for files such as SSL certificates and driver libraries.\n","type":"object","required":["type","edgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueEdgeArtifactId$"},"edgeArtifactId":{"type":"string","format":"uuid","description":"Reference id of the artifact uploaded via `POST /artifacts`."}}},"ValueSecretEdgeArtifactId":{"title":"Secret Edge Artifact ID","description":"References a secret artifact stored on the Edge site and uploaded via `POST /sites/{siteId}/secretArtifacts`. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts. Each secret artifact can only be referenced by a single connection and cannot be reused.\n","type":"object","required":["type","secretEdgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueSecretEdgeArtifactId$"},"secretEdgeArtifactId":{"type":"string","maxLength":512,"description":"The `id` value returned by `POST /sites/{siteId}/secretArtifacts`.\n"}}},"ValueVaultArtifact":{"title":"VaultArtifactReference","description":"Reference to a vault-stored secret that resolves to a file artifact. Use this instead of `EdgeArtifact` when the file should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultArtifact$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"ConnectionAzure":{"type":"object","title":"Azure Connection","description":"Azure connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAzure$","description":"Discriminator for Azure connection"},"usGovernmentCloudHost":{"description":"Indicates whether Azure US Government Cloud is the host for Microsoft Entra.","type":"boolean","default":false},"auth":{"$ref":"#/components/schemas/AuthAzure"}},"required":["type","auth"]},"AuthAzure":{"title":"Azure Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAzureServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthAzureServicePrincipal":"#/components/schemas/AuthAzureServicePrincipal"}}},"AuthAzureServicePrincipal":{"type":"object","title":"Azure Service Principal Authentication","properties":{"type":{"type":"string","pattern":"^AuthAzureServicePrincipal$"},"clientId":{"description":"The ID of the Service Principal used to connect to Azure","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"The Secret Key for the Service Principal","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"The Tenant ID of your Azure AD","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"ConnectionDatabricks":{"type":"object","title":"Databricks Connection","description":"Databricks connection.","properties":{"type":{"type":"string","pattern":"^ConnectionDatabricks$","description":"Discriminator for Databricks connection."},"workspaceUrl":{"description":"Workspace URL on Databricks.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDatabricks"}},"required":["type","workspaceUrl","auth"]},"AuthDatabricks":{"title":"Databricks Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"},{"$ref":"#/components/schemas/AuthDatabricksEntraId"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials","AuthDatabricksEntraId":"#/components/schemas/AuthDatabricksEntraId","AuthToken":"#/components/schemas/AuthToken"}}},"AuthClientCredentials":{"title":"Client Credentials Authentication","type":"object","description":"Generic client credentials (client ID + secret) authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentials$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","clientId","clientSecret"]},"AuthDatabricksEntraId":{"title":"Databricks Microsoft Entra ID Authentication","type":"object","description":"Microsoft Entra ID (Azure AD) authentication for Databricks.","properties":{"type":{"type":"string","pattern":"^AuthDatabricksEntraId$"},"clientId":{"description":"Client ID of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"Tenant ID for Microsoft Entra ID authentication.","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"AuthToken":{"title":"Token Authentication","type":"object","description":"Generic single-token authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthToken$"},"token":{"description":"Token value for authentication.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","token"]},"ConnectionDbt":{"type":"object","title":"dbt Connection","description":"dbt connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionDbt$","description":"Discriminator for dbt Connection"},"adminUrl":{"description":"Optional dbt admin API URL. Defaults to https://cloud.getdbt.com/api/v2","$ref":"#/components/schemas/ParameterString"},"metadataUrl":{"description":"Optional dbt metadata URL. Defaults to https://metadata.cloud.getdbt.com/graphql","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDbt"}},"required":["type","auth"]},"AuthDbt":{"title":"dbt Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthDbtToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthDbtToken":"#/components/schemas/AuthDbtToken"}}},"AuthDbtToken":{"title":"dbt Token Authentication","type":"object","description":"A dbt Cloud service token with the required permissions, used for authentication.","properties":{"type":{"type":"string","pattern":"^AuthDbtToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenValue":{"description":"Value of the service/account token (the copied value from dbt Cloud)","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenValue"]},"ConnectionGcp":{"type":"object","title":"GCP Connection","description":"GCP connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionGcp$","description":"Discriminator for GCP Connection"},"auth":{"$ref":"#/components/schemas/AuthGcp"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthGcp":{"title":"GCP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGcpServiceAccount"},{"$ref":"#/components/schemas/AuthGcpWif"},{"$ref":"#/components/schemas/AuthGcpWifGke"}],"discriminator":{"propertyName":"type","mapping":{"AuthGcpServiceAccount":"#/components/schemas/AuthGcpServiceAccount","AuthGcpWif":"#/components/schemas/AuthGcpWif","AuthGcpWifGke":"#/components/schemas/AuthGcpWifGke"}}},"AuthGcpServiceAccount":{"title":"GCP Service Account Authentication","type":"object","description":"GCP Service Account authentication (full JSON key)","properties":{"type":{"type":"string","pattern":"^AuthGcpServiceAccount$"},"credentialsJson":{"description":"Full JSON key for the service account","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","credentialsJson"]},"AuthGcpWif":{"title":"GCP Workload Identity Federation (WIF) Authentication","type":"object","description":"Workload Identity Federation (WIF) - token URL or token","properties":{"type":{"type":"string","pattern":"^AuthGcpWif$"},"tokenOrTokenUrl":{"description":"Token URL or token for WIF","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenOrTokenUrl"]},"AuthGcpWifGke":{"title":"GCP Workload Identity Federation (WIF) using GKE Authentication","type":"object","description":"Workload Identity Federation (WIF) using GKE - credentials from GKE, leave blank","properties":{"type":{"type":"string","pattern":"^AuthGcpWifGke$"}},"required":["type"]},"ConnectionGit":{"type":"object","title":"Git Connection","description":"Connection to a Git repository\n","properties":{"type":{"type":"string","pattern":"^ConnectionGit$","description":"Discriminator for Git connection"},"repositoryUrl":{"description":"HTTPS URL of the Git repository root, e.g. https://github.com/org/repo.git","$ref":"#/components/schemas/ParameterString"},"subfolder":{"description":"Path to a specific subfolder within the repository, e.g. src or projects/analytics.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthGit"}},"required":["type","repositoryUrl","auth"]},"AuthGit":{"title":"Git Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGitAccessToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthGitAccessToken":"#/components/schemas/AuthGitAccessToken"}}},"AuthGitAccessToken":{"title":"Git Access Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthGitAccessToken$"},"username":{"description":"Username for authentication. Required for Bitbucket repositories.","$ref":"#/components/schemas/ParameterString"},"accessToken":{"description":"Personal access token for authenticating with the Git repository.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessToken"]},"ConnectionHttp":{"type":"object","title":"HTTP Connection","description":"Allows workflows to communicate with other HTTP based systems.\n","properties":{"type":{"type":"string","pattern":"^ConnectionHttp$","description":"Discriminator for HTTP connection"},"host":{"description":"The protocol and domain name of the server to connect to, for example, https://api.example.com","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthHttp"},"testConnectionPath":{"description":"The path for testing this connection with a GET call, for example, /v1/health.","$ref":"#/components/schemas/ParameterString"}},"required":["type","host"]},"AuthHttp":{"title":"HTTP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"},{"$ref":"#/components/schemas/AuthOAuth2"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone","AuthOAuth2":"#/components/schemas/AuthOAuth2"}}},"AuthBasic":{"title":"Basic Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthBasic$"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"password":{"description":"Password","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","password"]},"AuthNone":{"title":"No Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthNone$"}},"required":["type"]},"AuthOAuth2":{"title":"OAuth 2.0 Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthOAuth2$"},"clientId":{"description":"Client id","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"accessTokenUri":{"description":"Access token URI","$ref":"#/components/schemas/ParameterString"},"scopes":{"description":"Scopes","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","accessTokenUri"]},"ConnectionIics":{"type":"object","title":"Informatica Intelligent Cloud Services (IICS) Connection","description":"IICS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionIics$","description":"Discriminator for Informatica Intelligent Cloud Services (IICS) Connection"},"url":{"description":"IICS Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthIics"}},"required":["type","url","auth"]},"AuthIics":{"title":"IICS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionJdbc":{"title":"JDBC Connection","type":"object","required":["type","driver","connectionString"],"properties":{"type":{"type":"string","pattern":"^ConnectionJdbc$","description":"Discriminator for JDBC connection types."},"driver":{"$ref":"#/components/schemas/JdbcDriver"},"connectionString":{"$ref":"#/components/schemas/ParameterString","description":"JDBC connection string, e.g. \"jdbc:mysql://localhost:3306/mydb\""},"auth":{"description":"Authentication configuration. When omitted, defaults to AuthNone.","$ref":"#/components/schemas/AuthJdbc"},"parameters":{"description":"Additional JDBC connection properties, such as SSL settings, timeouts, etc. These are passed as key-value pairs in the connection string.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}}},"JdbcDriver":{"type":"object","description":"JDBC driver configuration (`JdbcDriverDirect`). Specify the driver jar, an optional classpath, and the fully qualified driver class name.","oneOf":[{"$ref":"#/components/schemas/JdbcDriverDirect"}],"discriminator":{"propertyName":"type","mapping":{"JdbcDriverDirect":"#/components/schemas/JdbcDriverDirect"}}},"JdbcDriverDirect":{"title":"Direct JDBC Driver","type":"object","properties":{"type":{"type":"string","pattern":"^JdbcDriverDirect$"},"className":{"type":"string","description":"Fully qualified class name of the JDBC driver (e.g. \"org.postgresql.Driver\", \"com.mysql.cj.jdbc.Driver\", etc.).","maxLength":100,"pattern":"^[a-zA-Z0-9._$]+$"},"jar":{"type":"string","format":"uuid","description":"Reference id of the driver jar uploaded via `POST /drivers/jars`."},"additionalClasspathFiles":{"type":"array","maxItems":10,"items":{"type":"string","format":"uuid","description":"Reference id of a driver jar or native library uploaded via `POST /drivers/jars` or `POST /drivers/nativeLibs`."}}},"required":["className","type","jar"],"description":"This schema contains the allowed configuration files that can be uploaded to set up a JDBC connection type."},"AuthJdbc":{"title":"JDBC Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone"}}},"ConnectionLocalStorage":{"type":"object","title":"Shared Storage Connection","description":"Read-only access to a folder located on the Edge site. Used for technical lineage ingestion via OpenLineage (AWS Glue, Apache Airflow, OpenLineage).\n","properties":{"type":{"type":"string","pattern":"^ConnectionLocalStorage$","description":"Discriminator for shared storage connection"},"folder":{"description":"--target as specified in ./edgecli object folder-upload","type":"string","pattern":"^[\\w-]+$"}},"required":["type","folder"]},"ConnectionLooker":{"type":"object","title":"Looker Connection","description":"Looker connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionLooker$","description":"Discriminator for Looker Connection"},"url":{"description":"Looker URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthLooker"}},"required":["type","url","auth"]},"AuthLooker":{"title":"Looker Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionMatillion":{"type":"object","title":"Matillion Connection","description":"Matillion connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMatillion$","description":"Discriminator for Matillion Connection"},"url":{"description":"Matillion Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMatillion"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthMatillion":{"title":"Matillion Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ParameterEdgeArtifact":{"description":"References a non-sensitive artifact stored on the customer's Collibra Platform instance. Use for SSL certificates, driver libraries, and other files that do not need to stay within the customer's Edge site.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"ConnectionMicroStrategy":{"type":"object","title":"MicroStrategy Connection","description":"MicroStrategy connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMicroStrategy$","description":"Discriminator for MicroStrategy Connection"},"url":{"description":"MicroStrategy URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMicroStrategy"}},"required":["type","url","auth"]},"AuthMicroStrategy":{"title":"MicroStrategy Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ConnectionMlflow":{"type":"object","title":"MLflow Connection","description":"MLflow connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMlflow$","description":"Discriminator for MLflow connection"},"url":{"description":"MLflow URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMlflow"}},"required":["type","url","auth"]},"AuthMlflow":{"title":"MLflow Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"AuthClientCredentialsWithTokenUrl":{"title":"Client Credentials with Token URL Authentication","type":"object","description":"OAuth client credentials with token URL (client ID, secret, and token endpoint)","properties":{"type":{"type":"string","pattern":"^AuthClientCredentialsWithTokenUrl$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"tokenUrl":{"description":"The token URL of the OAuth client","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tokenUrl"]},"ConnectionPowerBI":{"type":"object","title":"Power BI Connection","description":"Power BI (SaaS) connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionPowerBI$","description":"Discriminator for Power BI Connection"},"tenantDomain":{"description":"Tenant Domain","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Authentication configuration for Power BI. Supports ServicePrincipal and ResourceOwnerPassword flows.\n","$ref":"#/components/schemas/AuthPowerBI"},"certFile":{"description":"Optional custom SSL/TLS certificate, in PEM format, used to establish a trusted HTTPS connection to the Power BI service. Provide this when the connection is routed through a proxy or gateway that presents a certificate signed by a custom or private Certificate Authority that is not trusted by default. The certificate is referenced as a non-sensitive artifact stored on the customer's Collibra Platform instance. When omitted, the system's default trusted CAs are used.\n","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","tenantDomain","auth"]},"AuthPowerBI":{"title":"Power BI Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthPowerBIResourceOwnerPassword"},{"$ref":"#/components/schemas/AuthPowerBIServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthPowerBIResourceOwnerPassword":"#/components/schemas/AuthPowerBIResourceOwnerPassword","AuthPowerBIServicePrincipal":"#/components/schemas/AuthPowerBIServicePrincipal"}}},"AuthPowerBIResourceOwnerPassword":{"title":"Power BI Resource Owner Password Credentials Authentication","type":"object","description":"Resource Owner Password Credentials authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIResourceOwnerPassword$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"passwordSecretKey":{"description":"Password/Secret key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","username","passwordSecretKey"]},"AuthPowerBIServicePrincipal":{"title":"Power BI Service Principal Authentication","type":"object","description":"Service Principal authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIServicePrincipal$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret for the service principal","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","clientSecret"]},"ConnectionS3Compatible":{"type":"object","title":"S3-Compatible Connection","description":"Connection to a self-hosted or third-party S3-compatible storage service (e.g. MinIO, Ceph, NetApp StorageGRID).\n","properties":{"type":{"type":"string","pattern":"^ConnectionS3Compatible$","description":"Discriminator for S3-Compatible connection"},"endpoint":{"description":"URL of the S3-compatible storage endpoint, e.g. https://minio.example.com","$ref":"#/components/schemas/ParameterString"},"region":{"description":"Region identifier for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthS3Compatible"}},"required":["type","endpoint","auth"]},"AuthS3Compatible":{"title":"S3-Compatible Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthS3CompatibleAccessKey"}],"discriminator":{"propertyName":"type","mapping":{"AuthS3CompatibleAccessKey":"#/components/schemas/AuthS3CompatibleAccessKey"}}},"AuthS3CompatibleAccessKey":{"title":"S3-Compatible Access Key Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthS3CompatibleAccessKey$"},"accessKeyId":{"description":"Access key ID for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"secretAccessKey":{"description":"Secret access key for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessKeyId","secretAccessKey"]},"ConnectionSapAICore":{"type":"object","title":"SAP AI Core Connection","description":"SAP AI Core connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapAICore$","description":"Discriminator for SAP AI Core connection"},"url":{"description":"SAP AI Core URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSapAICore"}},"required":["type","url","auth"]},"AuthSapAICore":{"title":"SAP AI Core Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSapDatasphereCatalog":{"type":"object","title":"SAP Datasphere Catalog Connection","description":"SAP Datasphere Catalog connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapDatasphereCatalog$","description":"Discriminator for SAP Datasphere Catalog connection"},"url":{"description":"SAP Datasphere Catalog URL","$ref":"#/components/schemas/ParameterString"},"datasphereCatalogAuth":{"description":"OAuth client credentials for ingesting the SAP Datasphere Catalog.","$ref":"#/components/schemas/AuthSapDatasphereCatalog"},"dataProductsAuth":{"description":"Optional OAuth client credentials for ingesting SAP Data Products. When omitted, SAP Data Products are not ingested.","$ref":"#/components/schemas/AuthClientCredentials"}},"required":["type","url","datasphereCatalogAuth"]},"AuthSapDatasphereCatalog":{"title":"SAP Datasphere Catalog Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSigma":{"type":"object","title":"Sigma Connection","description":"Sigma connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSigma$","description":"Discriminator for Sigma connection"},"url":{"description":"Sigma instance base URL, e.g. https://aws-api.sigmacomputing.com","$ref":"#/components/schemas/ParameterString"},"tenantUrl":{"description":"Tenant-specific URL, e.g. https://app.sigmacomputing.com/your-tenant","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSigma"}},"required":["type","url","tenantUrl","auth"]},"AuthSigma":{"title":"Sigma Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionSnowflake":{"type":"object","title":"Snowflake Connection","description":"Snowflake connection.","properties":{"type":{"type":"string","pattern":"^ConnectionSnowflake$","description":"Discriminator for Snowflake connection."},"account":{"description":"The Account Identifier for the Snowflake account. This often includes cloud region information (e.g., xy123456.eu-central-1).","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSnowflake"},"role":{"description":"The role to use in the Snowflake session.","$ref":"#/components/schemas/ParameterString"},"warehouse":{"description":"The name of the Snowflake warehouse. Defaults to the user's default warehouse if not specified.","$ref":"#/components/schemas/ParameterString"}},"required":["type","account","auth"]},"AuthSnowflake":{"title":"Snowflake Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthSnowflakeKeyPair"},{"$ref":"#/components/schemas/AuthSnowflakePat"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthSnowflakeKeyPair":"#/components/schemas/AuthSnowflakeKeyPair","AuthSnowflakePat":"#/components/schemas/AuthSnowflakePat"}}},"AuthSnowflakeKeyPair":{"title":"Snowflake Key Pair Authentication","type":"object","description":"Key pair authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakeKeyPair$"},"username":{"description":"The username to authenticate against the Snowflake account.","$ref":"#/components/schemas/ParameterString"},"privateKeyEdgeArtifact":{"description":"The private key artifact in P8 format for key pair authentication.","$ref":"#/components/schemas/ParameterSecretEdgeArtifact"},"privateKeyPwd":{"description":"The passphrase for the private key, if it is encrypted.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","privateKeyEdgeArtifact"]},"ParameterSecretEdgeArtifact":{"description":"References a sensitive artifact stored on the Edge site. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"AuthSnowflakePat":{"title":"Snowflake Programmatic Access Token Authentication","type":"object","description":"Programmatic Access Token (PAT) authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakePat$"},"programmaticAccessToken":{"description":"Programmatic Access Token generated in Snowflake.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","programmaticAccessToken"]},"ConnectionSsrs":{"type":"object","title":"Microsoft SSRS/PBRS Connection","description":"Microsoft SSRS/PBRS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSsrs$","description":"Discriminator for Microsoft SSRS/PBRS Connection"},"url":{"description":"Microsoft SSRS/PBRS URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSsrs"}},"required":["type","url","auth"]},"AuthSsrs":{"title":"SSRS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionTableau":{"type":"object","title":"Tableau Connection","description":"Tableau connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionTableau$","description":"Discriminator for Tableau Connection"},"url":{"description":"URL of the Tableau Server or Tableau Cloud site.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthTableau"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthTableau":{"title":"Tableau Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthTableauToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthTableauToken":"#/components/schemas/AuthTableauToken"}}},"AuthTableauToken":{"title":"Tableau Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthTableauToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenSecret":{"description":"Value of the service/account token","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenSecret"]},"ConnectionThoughtSpot":{"type":"object","title":"ThoughtSpot Connection","description":"ThoughtSpot connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionThoughtSpot$","description":"Discriminator for ThoughtSpot connection"},"url":{"description":"ThoughtSpot instance base URL, e.g. https://customer.thoughtspot.cloud","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthThoughtSpot"}},"required":["type","url","auth"]},"AuthThoughtSpot":{"title":"ThoughtSpot Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteNotFound":{"description":"Site not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/sites/{siteId}/connections":{"get":{"operationId":"listConnections","tags":["Connections"],"summary":"List site connections","description":"Returns a paginated list of data source connections from the target Edge site.","parameters":[{"name":"cursor","in":"query","description":"An opaque, URL-safe Base64 encoded string used for pagination. To fetch the next page, provide the value returned in the `nextCursor` field of the previous response. Omit this parameter for the first page.\n","schema":{"type":"string"}},{"name":"limit","in":"query","description":"Number of items to return per page.","schema":{"type":"integer","default":100,"minimum":1,"maximum":500}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionListResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteNotFound"},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Create a connection

> Creates a new data source connection from the target Edge site.<br>

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"schemas":{"ConnectionCreate":{"type":"object","properties":{"name":{"type":"string","pattern":"^[a-zA-Z0-9_.-]+$","maxLength":255},"description":{"type":"string","maxLength":4000},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"required":["name","properties"],"description":"Request body for creating a data source connection."},"ConnectionProperties":{"oneOf":[{"$ref":"#/components/schemas/ConnectionAws"},{"$ref":"#/components/schemas/ConnectionAzure"},{"$ref":"#/components/schemas/ConnectionDatabricks"},{"$ref":"#/components/schemas/ConnectionDbt"},{"$ref":"#/components/schemas/ConnectionGcp"},{"$ref":"#/components/schemas/ConnectionGit"},{"$ref":"#/components/schemas/ConnectionHttp"},{"$ref":"#/components/schemas/ConnectionIics"},{"$ref":"#/components/schemas/ConnectionJdbc"},{"$ref":"#/components/schemas/ConnectionLocalStorage"},{"$ref":"#/components/schemas/ConnectionLooker"},{"$ref":"#/components/schemas/ConnectionMatillion"},{"$ref":"#/components/schemas/ConnectionMicroStrategy"},{"$ref":"#/components/schemas/ConnectionMlflow"},{"$ref":"#/components/schemas/ConnectionPowerBI"},{"$ref":"#/components/schemas/ConnectionS3Compatible"},{"$ref":"#/components/schemas/ConnectionSapAICore"},{"$ref":"#/components/schemas/ConnectionSapDatasphereCatalog"},{"$ref":"#/components/schemas/ConnectionSigma"},{"$ref":"#/components/schemas/ConnectionSnowflake"},{"$ref":"#/components/schemas/ConnectionSsrs"},{"$ref":"#/components/schemas/ConnectionTableau"},{"$ref":"#/components/schemas/ConnectionThoughtSpot"}],"discriminator":{"propertyName":"type","mapping":{"ConnectionAws":"#/components/schemas/ConnectionAws","ConnectionAzure":"#/components/schemas/ConnectionAzure","ConnectionDatabricks":"#/components/schemas/ConnectionDatabricks","ConnectionDbt":"#/components/schemas/ConnectionDbt","ConnectionGcp":"#/components/schemas/ConnectionGcp","ConnectionGit":"#/components/schemas/ConnectionGit","ConnectionHttp":"#/components/schemas/ConnectionHttp","ConnectionIics":"#/components/schemas/ConnectionIics","ConnectionJdbc":"#/components/schemas/ConnectionJdbc","ConnectionLocalStorage":"#/components/schemas/ConnectionLocalStorage","ConnectionLooker":"#/components/schemas/ConnectionLooker","ConnectionMatillion":"#/components/schemas/ConnectionMatillion","ConnectionMicroStrategy":"#/components/schemas/ConnectionMicroStrategy","ConnectionMlflow":"#/components/schemas/ConnectionMlflow","ConnectionPowerBI":"#/components/schemas/ConnectionPowerBI","ConnectionS3Compatible":"#/components/schemas/ConnectionS3Compatible","ConnectionSapAICore":"#/components/schemas/ConnectionSapAICore","ConnectionSapDatasphereCatalog":"#/components/schemas/ConnectionSapDatasphereCatalog","ConnectionSigma":"#/components/schemas/ConnectionSigma","ConnectionSnowflake":"#/components/schemas/ConnectionSnowflake","ConnectionSsrs":"#/components/schemas/ConnectionSsrs","ConnectionTableau":"#/components/schemas/ConnectionTableau","ConnectionThoughtSpot":"#/components/schemas/ConnectionThoughtSpot"}}},"ConnectionAws":{"type":"object","title":"AWS Connection","description":"AWS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAws$","description":"Discriminator for AWS connection"},"auth":{"$ref":"#/components/schemas/AuthAws"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthAws":{"title":"AWS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAwsEc2"},{"$ref":"#/components/schemas/AuthAwsIam"}],"discriminator":{"propertyName":"type","mapping":{"AuthAwsEc2":"#/components/schemas/AuthAwsEc2","AuthAwsIam":"#/components/schemas/AuthAwsIam"}}},"AuthAwsEc2":{"title":"AWS EC2 Instance Profile Authentication","type":"object","description":"Authenticate via the IAM role attached to the EC2 instance running the Edge site. No credentials are configured on the connection.","properties":{"type":{"type":"string","pattern":"^AuthAwsEc2$"}},"required":["type"]},"AuthAwsIam":{"title":"AWS IAM Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthAwsIam$"},"awsAccessKeyId":{"description":"AWS Access Key ID","$ref":"#/components/schemas/ParameterString"},"awsSecretKey":{"description":"AWS Secret Access Key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","awsAccessKeyId","awsSecretKey"]},"ParameterString":{"description":"String value that is a plain text value or a vault secret that resolves to a string value.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueString":{"title":"String Value","type":"object","required":["type","value"],"properties":{"type":{"type":"string","pattern":"^ValueString$"},"value":{"type":"string","minLength":1,"maxLength":4000,"pattern":".*\\S.*"}},"description":"Contains a series of characters that comprises a string value."},"ValueVaultString":{"title":"VaultStringReference","description":"Reference to a vault-stored secret that resolves to a string value. Use this instead of `ValueString` when the value should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultString$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"VaultKeys":{"title":"Vault Keys","description":"Vault reference parameter for HashiCorp, CyberArk, AWS Secrets Manager, Azure Key Vault and Google Secret Manager.","type":"object","oneOf":[{"$ref":"#/components/schemas/VaultKeyAWSSecretsManager"},{"$ref":"#/components/schemas/VaultKeyAzureKeyVaultSecret"},{"$ref":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery"},{"$ref":"#/components/schemas/VaultKeyGCPSecretManager"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultDatabase"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}],"discriminator":{"propertyName":"type","mapping":{"VaultKeyAWSSecretsManager":"#/components/schemas/VaultKeyAWSSecretsManager","VaultKeyAzureKeyVaultSecret":"#/components/schemas/VaultKeyAzureKeyVaultSecret","VaultKeyCyberArkCredentialProviderQuery":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery","VaultKeyGCPSecretManager":"#/components/schemas/VaultKeyGCPSecretManager","VaultKeyHashiCorpVaultDatabase":"#/components/schemas/VaultKeyHashiCorpVaultDatabase","VaultKeyHashiCorpVaultKeyValue":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}}},"VaultKeyAWSSecretsManager":{"title":"AWS Secrets Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAWSSecretsManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The name of the secret in your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"Required only when the secret stored in AWS Secrets Manager is a JSON object; it selects which JSON key to use.\n\nFor example, if the secret is `{\"pass1\": \"my-password\", \"pass2\": \"my-password2\"}` and you want the value of `pass1`, set `secretName` to the AWS secret name (e.g. `edge-db-customer`) and `field` to `pass1`.\n\nLeave `field` empty when the secret is stored as a plain string value.\n"}}},"VaultKeyAzureKeyVaultSecret":{"title":"Azure Key Vault Secret Reference","type":"object","required":["type","secretName","vaultName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAzureKeyVaultSecret$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."},"vaultName":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the Azure Key Vault that contains the secret."}}},"VaultKeyCyberArkCredentialProviderQuery":{"title":"CyberArk Credential Provider Query Reference","type":"object","required":["type","query"],"properties":{"type":{"type":"string","pattern":"^VaultKeyCyberArkCredentialProviderQuery$"},"query":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The query must be a string containing the properties required to identify the secret. Each property must be separated by a semicolon (`;`).\n\nFor example: `Safe=<SafeName>;Folder=<FolderName>;Object=<ObjectName>`\n\nIf a property is a folder with sub-folders, use a backslash (`\\`) to define the folder path. For example: `Folder=Root\\Top Secrets\\More Secrets`\n"}}},"VaultKeyGCPSecretManager":{"title":"Google Cloud Secret Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyGCPSecretManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."}}},"VaultKeyHashiCorpVaultDatabase":{"title":"HashiCorp Vault Database Reference","type":"object","required":["type","enginePath","role","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultDatabase$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"role":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"If your Secret Engine Type is Database, enter the role specified in the Database engine."},"field":{"type":"string","pattern":"^(username|password)$","description":"Allowed values: username, password"}}},"VaultKeyHashiCorpVaultKeyValue":{"title":"HashiCorp Key-Value Secret Reference","type":"object","required":["type","enginePath","secretPath","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultKeyValue$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"secretPath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The secret path to your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the field in the HashiCorp Key-Value secret whose value should be retrieved."}}},"ParameterSecretString":{"description":"A secret string value that is a plain text value, a redacted value from reading a secret stored on an Edge site, or a string value retrieved from a vault.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueRedacted":"#/components/schemas/ValueRedacted","ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueRedacted":{"title":"Redacted Value","description":"Returned when a secret value is stored on the Edge site and is not accessible via the API. On create and update, use ValueString to set the value. To clear an existing secret, omit the field from the request body.\n","type":"object","required":["type"],"properties":{"type":{"type":"string","pattern":"^ValueRedacted$"}}},"ParameterGenericMap":{"type":"object","description":"Map of parameters for connections used to pass additional configuration.","additionalProperties":{"$ref":"#/components/schemas/ParameterGeneric"}},"ParameterGeneric":{"title":"Generic Parameter","description":"A parameter value for use in a data source connection parameter configuration.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultArtifact"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueRedacted":"#/components/schemas/ValueRedacted","ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueString":"#/components/schemas/ValueString","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueEdgeArtifactId":{"title":"Edge Artifact ID","description":"References a non-sensitive artifact stored on the Collibra instance and uploaded via `POST /artifacts`. Use for files such as SSL certificates and driver libraries.\n","type":"object","required":["type","edgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueEdgeArtifactId$"},"edgeArtifactId":{"type":"string","format":"uuid","description":"Reference id of the artifact uploaded via `POST /artifacts`."}}},"ValueSecretEdgeArtifactId":{"title":"Secret Edge Artifact ID","description":"References a secret artifact stored on the Edge site and uploaded via `POST /sites/{siteId}/secretArtifacts`. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts. Each secret artifact can only be referenced by a single connection and cannot be reused.\n","type":"object","required":["type","secretEdgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueSecretEdgeArtifactId$"},"secretEdgeArtifactId":{"type":"string","maxLength":512,"description":"The `id` value returned by `POST /sites/{siteId}/secretArtifacts`.\n"}}},"ValueVaultArtifact":{"title":"VaultArtifactReference","description":"Reference to a vault-stored secret that resolves to a file artifact. Use this instead of `EdgeArtifact` when the file should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultArtifact$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"ConnectionAzure":{"type":"object","title":"Azure Connection","description":"Azure connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAzure$","description":"Discriminator for Azure connection"},"usGovernmentCloudHost":{"description":"Indicates whether Azure US Government Cloud is the host for Microsoft Entra.","type":"boolean","default":false},"auth":{"$ref":"#/components/schemas/AuthAzure"}},"required":["type","auth"]},"AuthAzure":{"title":"Azure Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAzureServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthAzureServicePrincipal":"#/components/schemas/AuthAzureServicePrincipal"}}},"AuthAzureServicePrincipal":{"type":"object","title":"Azure Service Principal Authentication","properties":{"type":{"type":"string","pattern":"^AuthAzureServicePrincipal$"},"clientId":{"description":"The ID of the Service Principal used to connect to Azure","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"The Secret Key for the Service Principal","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"The Tenant ID of your Azure AD","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"ConnectionDatabricks":{"type":"object","title":"Databricks Connection","description":"Databricks connection.","properties":{"type":{"type":"string","pattern":"^ConnectionDatabricks$","description":"Discriminator for Databricks connection."},"workspaceUrl":{"description":"Workspace URL on Databricks.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDatabricks"}},"required":["type","workspaceUrl","auth"]},"AuthDatabricks":{"title":"Databricks Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"},{"$ref":"#/components/schemas/AuthDatabricksEntraId"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials","AuthDatabricksEntraId":"#/components/schemas/AuthDatabricksEntraId","AuthToken":"#/components/schemas/AuthToken"}}},"AuthClientCredentials":{"title":"Client Credentials Authentication","type":"object","description":"Generic client credentials (client ID + secret) authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentials$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","clientId","clientSecret"]},"AuthDatabricksEntraId":{"title":"Databricks Microsoft Entra ID Authentication","type":"object","description":"Microsoft Entra ID (Azure AD) authentication for Databricks.","properties":{"type":{"type":"string","pattern":"^AuthDatabricksEntraId$"},"clientId":{"description":"Client ID of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"Tenant ID for Microsoft Entra ID authentication.","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"AuthToken":{"title":"Token Authentication","type":"object","description":"Generic single-token authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthToken$"},"token":{"description":"Token value for authentication.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","token"]},"ConnectionDbt":{"type":"object","title":"dbt Connection","description":"dbt connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionDbt$","description":"Discriminator for dbt Connection"},"adminUrl":{"description":"Optional dbt admin API URL. Defaults to https://cloud.getdbt.com/api/v2","$ref":"#/components/schemas/ParameterString"},"metadataUrl":{"description":"Optional dbt metadata URL. Defaults to https://metadata.cloud.getdbt.com/graphql","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDbt"}},"required":["type","auth"]},"AuthDbt":{"title":"dbt Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthDbtToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthDbtToken":"#/components/schemas/AuthDbtToken"}}},"AuthDbtToken":{"title":"dbt Token Authentication","type":"object","description":"A dbt Cloud service token with the required permissions, used for authentication.","properties":{"type":{"type":"string","pattern":"^AuthDbtToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenValue":{"description":"Value of the service/account token (the copied value from dbt Cloud)","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenValue"]},"ConnectionGcp":{"type":"object","title":"GCP Connection","description":"GCP connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionGcp$","description":"Discriminator for GCP Connection"},"auth":{"$ref":"#/components/schemas/AuthGcp"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthGcp":{"title":"GCP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGcpServiceAccount"},{"$ref":"#/components/schemas/AuthGcpWif"},{"$ref":"#/components/schemas/AuthGcpWifGke"}],"discriminator":{"propertyName":"type","mapping":{"AuthGcpServiceAccount":"#/components/schemas/AuthGcpServiceAccount","AuthGcpWif":"#/components/schemas/AuthGcpWif","AuthGcpWifGke":"#/components/schemas/AuthGcpWifGke"}}},"AuthGcpServiceAccount":{"title":"GCP Service Account Authentication","type":"object","description":"GCP Service Account authentication (full JSON key)","properties":{"type":{"type":"string","pattern":"^AuthGcpServiceAccount$"},"credentialsJson":{"description":"Full JSON key for the service account","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","credentialsJson"]},"AuthGcpWif":{"title":"GCP Workload Identity Federation (WIF) Authentication","type":"object","description":"Workload Identity Federation (WIF) - token URL or token","properties":{"type":{"type":"string","pattern":"^AuthGcpWif$"},"tokenOrTokenUrl":{"description":"Token URL or token for WIF","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenOrTokenUrl"]},"AuthGcpWifGke":{"title":"GCP Workload Identity Federation (WIF) using GKE Authentication","type":"object","description":"Workload Identity Federation (WIF) using GKE - credentials from GKE, leave blank","properties":{"type":{"type":"string","pattern":"^AuthGcpWifGke$"}},"required":["type"]},"ConnectionGit":{"type":"object","title":"Git Connection","description":"Connection to a Git repository\n","properties":{"type":{"type":"string","pattern":"^ConnectionGit$","description":"Discriminator for Git connection"},"repositoryUrl":{"description":"HTTPS URL of the Git repository root, e.g. https://github.com/org/repo.git","$ref":"#/components/schemas/ParameterString"},"subfolder":{"description":"Path to a specific subfolder within the repository, e.g. src or projects/analytics.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthGit"}},"required":["type","repositoryUrl","auth"]},"AuthGit":{"title":"Git Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGitAccessToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthGitAccessToken":"#/components/schemas/AuthGitAccessToken"}}},"AuthGitAccessToken":{"title":"Git Access Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthGitAccessToken$"},"username":{"description":"Username for authentication. Required for Bitbucket repositories.","$ref":"#/components/schemas/ParameterString"},"accessToken":{"description":"Personal access token for authenticating with the Git repository.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessToken"]},"ConnectionHttp":{"type":"object","title":"HTTP Connection","description":"Allows workflows to communicate with other HTTP based systems.\n","properties":{"type":{"type":"string","pattern":"^ConnectionHttp$","description":"Discriminator for HTTP connection"},"host":{"description":"The protocol and domain name of the server to connect to, for example, https://api.example.com","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthHttp"},"testConnectionPath":{"description":"The path for testing this connection with a GET call, for example, /v1/health.","$ref":"#/components/schemas/ParameterString"}},"required":["type","host"]},"AuthHttp":{"title":"HTTP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"},{"$ref":"#/components/schemas/AuthOAuth2"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone","AuthOAuth2":"#/components/schemas/AuthOAuth2"}}},"AuthBasic":{"title":"Basic Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthBasic$"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"password":{"description":"Password","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","password"]},"AuthNone":{"title":"No Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthNone$"}},"required":["type"]},"AuthOAuth2":{"title":"OAuth 2.0 Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthOAuth2$"},"clientId":{"description":"Client id","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"accessTokenUri":{"description":"Access token URI","$ref":"#/components/schemas/ParameterString"},"scopes":{"description":"Scopes","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","accessTokenUri"]},"ConnectionIics":{"type":"object","title":"Informatica Intelligent Cloud Services (IICS) Connection","description":"IICS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionIics$","description":"Discriminator for Informatica Intelligent Cloud Services (IICS) Connection"},"url":{"description":"IICS Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthIics"}},"required":["type","url","auth"]},"AuthIics":{"title":"IICS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionJdbc":{"title":"JDBC Connection","type":"object","required":["type","driver","connectionString"],"properties":{"type":{"type":"string","pattern":"^ConnectionJdbc$","description":"Discriminator for JDBC connection types."},"driver":{"$ref":"#/components/schemas/JdbcDriver"},"connectionString":{"$ref":"#/components/schemas/ParameterString","description":"JDBC connection string, e.g. \"jdbc:mysql://localhost:3306/mydb\""},"auth":{"description":"Authentication configuration. When omitted, defaults to AuthNone.","$ref":"#/components/schemas/AuthJdbc"},"parameters":{"description":"Additional JDBC connection properties, such as SSL settings, timeouts, etc. These are passed as key-value pairs in the connection string.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}}},"JdbcDriver":{"type":"object","description":"JDBC driver configuration (`JdbcDriverDirect`). Specify the driver jar, an optional classpath, and the fully qualified driver class name.","oneOf":[{"$ref":"#/components/schemas/JdbcDriverDirect"}],"discriminator":{"propertyName":"type","mapping":{"JdbcDriverDirect":"#/components/schemas/JdbcDriverDirect"}}},"JdbcDriverDirect":{"title":"Direct JDBC Driver","type":"object","properties":{"type":{"type":"string","pattern":"^JdbcDriverDirect$"},"className":{"type":"string","description":"Fully qualified class name of the JDBC driver (e.g. \"org.postgresql.Driver\", \"com.mysql.cj.jdbc.Driver\", etc.).","maxLength":100,"pattern":"^[a-zA-Z0-9._$]+$"},"jar":{"type":"string","format":"uuid","description":"Reference id of the driver jar uploaded via `POST /drivers/jars`."},"additionalClasspathFiles":{"type":"array","maxItems":10,"items":{"type":"string","format":"uuid","description":"Reference id of a driver jar or native library uploaded via `POST /drivers/jars` or `POST /drivers/nativeLibs`."}}},"required":["className","type","jar"],"description":"This schema contains the allowed configuration files that can be uploaded to set up a JDBC connection type."},"AuthJdbc":{"title":"JDBC Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone"}}},"ConnectionLocalStorage":{"type":"object","title":"Shared Storage Connection","description":"Read-only access to a folder located on the Edge site. Used for technical lineage ingestion via OpenLineage (AWS Glue, Apache Airflow, OpenLineage).\n","properties":{"type":{"type":"string","pattern":"^ConnectionLocalStorage$","description":"Discriminator for shared storage connection"},"folder":{"description":"--target as specified in ./edgecli object folder-upload","type":"string","pattern":"^[\\w-]+$"}},"required":["type","folder"]},"ConnectionLooker":{"type":"object","title":"Looker Connection","description":"Looker connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionLooker$","description":"Discriminator for Looker Connection"},"url":{"description":"Looker URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthLooker"}},"required":["type","url","auth"]},"AuthLooker":{"title":"Looker Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionMatillion":{"type":"object","title":"Matillion Connection","description":"Matillion connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMatillion$","description":"Discriminator for Matillion Connection"},"url":{"description":"Matillion Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMatillion"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthMatillion":{"title":"Matillion Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ParameterEdgeArtifact":{"description":"References a non-sensitive artifact stored on the customer's Collibra Platform instance. Use for SSL certificates, driver libraries, and other files that do not need to stay within the customer's Edge site.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"ConnectionMicroStrategy":{"type":"object","title":"MicroStrategy Connection","description":"MicroStrategy connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMicroStrategy$","description":"Discriminator for MicroStrategy Connection"},"url":{"description":"MicroStrategy URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMicroStrategy"}},"required":["type","url","auth"]},"AuthMicroStrategy":{"title":"MicroStrategy Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ConnectionMlflow":{"type":"object","title":"MLflow Connection","description":"MLflow connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMlflow$","description":"Discriminator for MLflow connection"},"url":{"description":"MLflow URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMlflow"}},"required":["type","url","auth"]},"AuthMlflow":{"title":"MLflow Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"AuthClientCredentialsWithTokenUrl":{"title":"Client Credentials with Token URL Authentication","type":"object","description":"OAuth client credentials with token URL (client ID, secret, and token endpoint)","properties":{"type":{"type":"string","pattern":"^AuthClientCredentialsWithTokenUrl$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"tokenUrl":{"description":"The token URL of the OAuth client","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tokenUrl"]},"ConnectionPowerBI":{"type":"object","title":"Power BI Connection","description":"Power BI (SaaS) connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionPowerBI$","description":"Discriminator for Power BI Connection"},"tenantDomain":{"description":"Tenant Domain","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Authentication configuration for Power BI. Supports ServicePrincipal and ResourceOwnerPassword flows.\n","$ref":"#/components/schemas/AuthPowerBI"},"certFile":{"description":"Optional custom SSL/TLS certificate, in PEM format, used to establish a trusted HTTPS connection to the Power BI service. Provide this when the connection is routed through a proxy or gateway that presents a certificate signed by a custom or private Certificate Authority that is not trusted by default. The certificate is referenced as a non-sensitive artifact stored on the customer's Collibra Platform instance. When omitted, the system's default trusted CAs are used.\n","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","tenantDomain","auth"]},"AuthPowerBI":{"title":"Power BI Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthPowerBIResourceOwnerPassword"},{"$ref":"#/components/schemas/AuthPowerBIServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthPowerBIResourceOwnerPassword":"#/components/schemas/AuthPowerBIResourceOwnerPassword","AuthPowerBIServicePrincipal":"#/components/schemas/AuthPowerBIServicePrincipal"}}},"AuthPowerBIResourceOwnerPassword":{"title":"Power BI Resource Owner Password Credentials Authentication","type":"object","description":"Resource Owner Password Credentials authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIResourceOwnerPassword$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"passwordSecretKey":{"description":"Password/Secret key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","username","passwordSecretKey"]},"AuthPowerBIServicePrincipal":{"title":"Power BI Service Principal Authentication","type":"object","description":"Service Principal authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIServicePrincipal$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret for the service principal","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","clientSecret"]},"ConnectionS3Compatible":{"type":"object","title":"S3-Compatible Connection","description":"Connection to a self-hosted or third-party S3-compatible storage service (e.g. MinIO, Ceph, NetApp StorageGRID).\n","properties":{"type":{"type":"string","pattern":"^ConnectionS3Compatible$","description":"Discriminator for S3-Compatible connection"},"endpoint":{"description":"URL of the S3-compatible storage endpoint, e.g. https://minio.example.com","$ref":"#/components/schemas/ParameterString"},"region":{"description":"Region identifier for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthS3Compatible"}},"required":["type","endpoint","auth"]},"AuthS3Compatible":{"title":"S3-Compatible Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthS3CompatibleAccessKey"}],"discriminator":{"propertyName":"type","mapping":{"AuthS3CompatibleAccessKey":"#/components/schemas/AuthS3CompatibleAccessKey"}}},"AuthS3CompatibleAccessKey":{"title":"S3-Compatible Access Key Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthS3CompatibleAccessKey$"},"accessKeyId":{"description":"Access key ID for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"secretAccessKey":{"description":"Secret access key for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessKeyId","secretAccessKey"]},"ConnectionSapAICore":{"type":"object","title":"SAP AI Core Connection","description":"SAP AI Core connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapAICore$","description":"Discriminator for SAP AI Core connection"},"url":{"description":"SAP AI Core URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSapAICore"}},"required":["type","url","auth"]},"AuthSapAICore":{"title":"SAP AI Core Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSapDatasphereCatalog":{"type":"object","title":"SAP Datasphere Catalog Connection","description":"SAP Datasphere Catalog connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapDatasphereCatalog$","description":"Discriminator for SAP Datasphere Catalog connection"},"url":{"description":"SAP Datasphere Catalog URL","$ref":"#/components/schemas/ParameterString"},"datasphereCatalogAuth":{"description":"OAuth client credentials for ingesting the SAP Datasphere Catalog.","$ref":"#/components/schemas/AuthSapDatasphereCatalog"},"dataProductsAuth":{"description":"Optional OAuth client credentials for ingesting SAP Data Products. When omitted, SAP Data Products are not ingested.","$ref":"#/components/schemas/AuthClientCredentials"}},"required":["type","url","datasphereCatalogAuth"]},"AuthSapDatasphereCatalog":{"title":"SAP Datasphere Catalog Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSigma":{"type":"object","title":"Sigma Connection","description":"Sigma connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSigma$","description":"Discriminator for Sigma connection"},"url":{"description":"Sigma instance base URL, e.g. https://aws-api.sigmacomputing.com","$ref":"#/components/schemas/ParameterString"},"tenantUrl":{"description":"Tenant-specific URL, e.g. https://app.sigmacomputing.com/your-tenant","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSigma"}},"required":["type","url","tenantUrl","auth"]},"AuthSigma":{"title":"Sigma Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionSnowflake":{"type":"object","title":"Snowflake Connection","description":"Snowflake connection.","properties":{"type":{"type":"string","pattern":"^ConnectionSnowflake$","description":"Discriminator for Snowflake connection."},"account":{"description":"The Account Identifier for the Snowflake account. This often includes cloud region information (e.g., xy123456.eu-central-1).","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSnowflake"},"role":{"description":"The role to use in the Snowflake session.","$ref":"#/components/schemas/ParameterString"},"warehouse":{"description":"The name of the Snowflake warehouse. Defaults to the user's default warehouse if not specified.","$ref":"#/components/schemas/ParameterString"}},"required":["type","account","auth"]},"AuthSnowflake":{"title":"Snowflake Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthSnowflakeKeyPair"},{"$ref":"#/components/schemas/AuthSnowflakePat"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthSnowflakeKeyPair":"#/components/schemas/AuthSnowflakeKeyPair","AuthSnowflakePat":"#/components/schemas/AuthSnowflakePat"}}},"AuthSnowflakeKeyPair":{"title":"Snowflake Key Pair Authentication","type":"object","description":"Key pair authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakeKeyPair$"},"username":{"description":"The username to authenticate against the Snowflake account.","$ref":"#/components/schemas/ParameterString"},"privateKeyEdgeArtifact":{"description":"The private key artifact in P8 format for key pair authentication.","$ref":"#/components/schemas/ParameterSecretEdgeArtifact"},"privateKeyPwd":{"description":"The passphrase for the private key, if it is encrypted.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","privateKeyEdgeArtifact"]},"ParameterSecretEdgeArtifact":{"description":"References a sensitive artifact stored on the Edge site. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"AuthSnowflakePat":{"title":"Snowflake Programmatic Access Token Authentication","type":"object","description":"Programmatic Access Token (PAT) authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakePat$"},"programmaticAccessToken":{"description":"Programmatic Access Token generated in Snowflake.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","programmaticAccessToken"]},"ConnectionSsrs":{"type":"object","title":"Microsoft SSRS/PBRS Connection","description":"Microsoft SSRS/PBRS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSsrs$","description":"Discriminator for Microsoft SSRS/PBRS Connection"},"url":{"description":"Microsoft SSRS/PBRS URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSsrs"}},"required":["type","url","auth"]},"AuthSsrs":{"title":"SSRS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionTableau":{"type":"object","title":"Tableau Connection","description":"Tableau connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionTableau$","description":"Discriminator for Tableau Connection"},"url":{"description":"URL of the Tableau Server or Tableau Cloud site.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthTableau"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthTableau":{"title":"Tableau Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthTableauToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthTableauToken":"#/components/schemas/AuthTableauToken"}}},"AuthTableauToken":{"title":"Tableau Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthTableauToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenSecret":{"description":"Value of the service/account token","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenSecret"]},"ConnectionThoughtSpot":{"type":"object","title":"ThoughtSpot Connection","description":"ThoughtSpot connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionThoughtSpot$","description":"Discriminator for ThoughtSpot connection"},"url":{"description":"ThoughtSpot instance base URL, e.g. https://customer.thoughtspot.cloud","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthThoughtSpot"}},"required":["type","url","auth"]},"AuthThoughtSpot":{"title":"ThoughtSpot Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionResponse":{"type":"object","required":["id","name","edgeSiteId","properties","createdOn","lastModifiedOn","testConnectionSupported"],"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"edgeSiteId":{"type":"string","format":"uuid"},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"createdOn":{"type":"string","format":"date-time"},"lastModifiedOn":{"type":"string","format":"date-time"},"testConnectionSupported":{"type":"boolean","readOnly":true,"description":"Indicates whether this connection type supports the test connection operation. Only connections with `testConnectionSupported: true` can be used with `POST /sites/{siteId}/connections/{connectionId}/test`.\n"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"description":"Response body for data source connection management endpoints."},"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteNotFound":{"description":"Site not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Conflict":{"description":"Conflict — resource is in use or already exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/sites/{siteId}/connections":{"post":{"operationId":"createConnection","tags":["Connections"],"summary":"Create a connection","description":"Creates a new data source connection from the target Edge site.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionCreate"}}}},"responses":{"201":{"description":"Created","headers":{"Location":{"description":"URL of the created connection.","schema":{"type":"string","format":"uri-reference"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteNotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Get a connection

> Returns the data source connection by using the target connection ID in {connectionId}.

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"schemas":{"ConnectionResponse":{"type":"object","required":["id","name","edgeSiteId","properties","createdOn","lastModifiedOn","testConnectionSupported"],"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"edgeSiteId":{"type":"string","format":"uuid"},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"createdOn":{"type":"string","format":"date-time"},"lastModifiedOn":{"type":"string","format":"date-time"},"testConnectionSupported":{"type":"boolean","readOnly":true,"description":"Indicates whether this connection type supports the test connection operation. Only connections with `testConnectionSupported: true` can be used with `POST /sites/{siteId}/connections/{connectionId}/test`.\n"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"description":"Response body for data source connection management endpoints."},"ConnectionProperties":{"oneOf":[{"$ref":"#/components/schemas/ConnectionAws"},{"$ref":"#/components/schemas/ConnectionAzure"},{"$ref":"#/components/schemas/ConnectionDatabricks"},{"$ref":"#/components/schemas/ConnectionDbt"},{"$ref":"#/components/schemas/ConnectionGcp"},{"$ref":"#/components/schemas/ConnectionGit"},{"$ref":"#/components/schemas/ConnectionHttp"},{"$ref":"#/components/schemas/ConnectionIics"},{"$ref":"#/components/schemas/ConnectionJdbc"},{"$ref":"#/components/schemas/ConnectionLocalStorage"},{"$ref":"#/components/schemas/ConnectionLooker"},{"$ref":"#/components/schemas/ConnectionMatillion"},{"$ref":"#/components/schemas/ConnectionMicroStrategy"},{"$ref":"#/components/schemas/ConnectionMlflow"},{"$ref":"#/components/schemas/ConnectionPowerBI"},{"$ref":"#/components/schemas/ConnectionS3Compatible"},{"$ref":"#/components/schemas/ConnectionSapAICore"},{"$ref":"#/components/schemas/ConnectionSapDatasphereCatalog"},{"$ref":"#/components/schemas/ConnectionSigma"},{"$ref":"#/components/schemas/ConnectionSnowflake"},{"$ref":"#/components/schemas/ConnectionSsrs"},{"$ref":"#/components/schemas/ConnectionTableau"},{"$ref":"#/components/schemas/ConnectionThoughtSpot"}],"discriminator":{"propertyName":"type","mapping":{"ConnectionAws":"#/components/schemas/ConnectionAws","ConnectionAzure":"#/components/schemas/ConnectionAzure","ConnectionDatabricks":"#/components/schemas/ConnectionDatabricks","ConnectionDbt":"#/components/schemas/ConnectionDbt","ConnectionGcp":"#/components/schemas/ConnectionGcp","ConnectionGit":"#/components/schemas/ConnectionGit","ConnectionHttp":"#/components/schemas/ConnectionHttp","ConnectionIics":"#/components/schemas/ConnectionIics","ConnectionJdbc":"#/components/schemas/ConnectionJdbc","ConnectionLocalStorage":"#/components/schemas/ConnectionLocalStorage","ConnectionLooker":"#/components/schemas/ConnectionLooker","ConnectionMatillion":"#/components/schemas/ConnectionMatillion","ConnectionMicroStrategy":"#/components/schemas/ConnectionMicroStrategy","ConnectionMlflow":"#/components/schemas/ConnectionMlflow","ConnectionPowerBI":"#/components/schemas/ConnectionPowerBI","ConnectionS3Compatible":"#/components/schemas/ConnectionS3Compatible","ConnectionSapAICore":"#/components/schemas/ConnectionSapAICore","ConnectionSapDatasphereCatalog":"#/components/schemas/ConnectionSapDatasphereCatalog","ConnectionSigma":"#/components/schemas/ConnectionSigma","ConnectionSnowflake":"#/components/schemas/ConnectionSnowflake","ConnectionSsrs":"#/components/schemas/ConnectionSsrs","ConnectionTableau":"#/components/schemas/ConnectionTableau","ConnectionThoughtSpot":"#/components/schemas/ConnectionThoughtSpot"}}},"ConnectionAws":{"type":"object","title":"AWS Connection","description":"AWS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAws$","description":"Discriminator for AWS connection"},"auth":{"$ref":"#/components/schemas/AuthAws"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthAws":{"title":"AWS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAwsEc2"},{"$ref":"#/components/schemas/AuthAwsIam"}],"discriminator":{"propertyName":"type","mapping":{"AuthAwsEc2":"#/components/schemas/AuthAwsEc2","AuthAwsIam":"#/components/schemas/AuthAwsIam"}}},"AuthAwsEc2":{"title":"AWS EC2 Instance Profile Authentication","type":"object","description":"Authenticate via the IAM role attached to the EC2 instance running the Edge site. No credentials are configured on the connection.","properties":{"type":{"type":"string","pattern":"^AuthAwsEc2$"}},"required":["type"]},"AuthAwsIam":{"title":"AWS IAM Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthAwsIam$"},"awsAccessKeyId":{"description":"AWS Access Key ID","$ref":"#/components/schemas/ParameterString"},"awsSecretKey":{"description":"AWS Secret Access Key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","awsAccessKeyId","awsSecretKey"]},"ParameterString":{"description":"String value that is a plain text value or a vault secret that resolves to a string value.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueString":{"title":"String Value","type":"object","required":["type","value"],"properties":{"type":{"type":"string","pattern":"^ValueString$"},"value":{"type":"string","minLength":1,"maxLength":4000,"pattern":".*\\S.*"}},"description":"Contains a series of characters that comprises a string value."},"ValueVaultString":{"title":"VaultStringReference","description":"Reference to a vault-stored secret that resolves to a string value. Use this instead of `ValueString` when the value should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultString$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"VaultKeys":{"title":"Vault Keys","description":"Vault reference parameter for HashiCorp, CyberArk, AWS Secrets Manager, Azure Key Vault and Google Secret Manager.","type":"object","oneOf":[{"$ref":"#/components/schemas/VaultKeyAWSSecretsManager"},{"$ref":"#/components/schemas/VaultKeyAzureKeyVaultSecret"},{"$ref":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery"},{"$ref":"#/components/schemas/VaultKeyGCPSecretManager"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultDatabase"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}],"discriminator":{"propertyName":"type","mapping":{"VaultKeyAWSSecretsManager":"#/components/schemas/VaultKeyAWSSecretsManager","VaultKeyAzureKeyVaultSecret":"#/components/schemas/VaultKeyAzureKeyVaultSecret","VaultKeyCyberArkCredentialProviderQuery":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery","VaultKeyGCPSecretManager":"#/components/schemas/VaultKeyGCPSecretManager","VaultKeyHashiCorpVaultDatabase":"#/components/schemas/VaultKeyHashiCorpVaultDatabase","VaultKeyHashiCorpVaultKeyValue":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}}},"VaultKeyAWSSecretsManager":{"title":"AWS Secrets Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAWSSecretsManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The name of the secret in your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"Required only when the secret stored in AWS Secrets Manager is a JSON object; it selects which JSON key to use.\n\nFor example, if the secret is `{\"pass1\": \"my-password\", \"pass2\": \"my-password2\"}` and you want the value of `pass1`, set `secretName` to the AWS secret name (e.g. `edge-db-customer`) and `field` to `pass1`.\n\nLeave `field` empty when the secret is stored as a plain string value.\n"}}},"VaultKeyAzureKeyVaultSecret":{"title":"Azure Key Vault Secret Reference","type":"object","required":["type","secretName","vaultName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAzureKeyVaultSecret$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."},"vaultName":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the Azure Key Vault that contains the secret."}}},"VaultKeyCyberArkCredentialProviderQuery":{"title":"CyberArk Credential Provider Query Reference","type":"object","required":["type","query"],"properties":{"type":{"type":"string","pattern":"^VaultKeyCyberArkCredentialProviderQuery$"},"query":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The query must be a string containing the properties required to identify the secret. Each property must be separated by a semicolon (`;`).\n\nFor example: `Safe=<SafeName>;Folder=<FolderName>;Object=<ObjectName>`\n\nIf a property is a folder with sub-folders, use a backslash (`\\`) to define the folder path. For example: `Folder=Root\\Top Secrets\\More Secrets`\n"}}},"VaultKeyGCPSecretManager":{"title":"Google Cloud Secret Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyGCPSecretManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."}}},"VaultKeyHashiCorpVaultDatabase":{"title":"HashiCorp Vault Database Reference","type":"object","required":["type","enginePath","role","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultDatabase$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"role":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"If your Secret Engine Type is Database, enter the role specified in the Database engine."},"field":{"type":"string","pattern":"^(username|password)$","description":"Allowed values: username, password"}}},"VaultKeyHashiCorpVaultKeyValue":{"title":"HashiCorp Key-Value Secret Reference","type":"object","required":["type","enginePath","secretPath","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultKeyValue$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"secretPath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The secret path to your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the field in the HashiCorp Key-Value secret whose value should be retrieved."}}},"ParameterSecretString":{"description":"A secret string value that is a plain text value, a redacted value from reading a secret stored on an Edge site, or a string value retrieved from a vault.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueRedacted":"#/components/schemas/ValueRedacted","ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueRedacted":{"title":"Redacted Value","description":"Returned when a secret value is stored on the Edge site and is not accessible via the API. On create and update, use ValueString to set the value. To clear an existing secret, omit the field from the request body.\n","type":"object","required":["type"],"properties":{"type":{"type":"string","pattern":"^ValueRedacted$"}}},"ParameterGenericMap":{"type":"object","description":"Map of parameters for connections used to pass additional configuration.","additionalProperties":{"$ref":"#/components/schemas/ParameterGeneric"}},"ParameterGeneric":{"title":"Generic Parameter","description":"A parameter value for use in a data source connection parameter configuration.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultArtifact"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueRedacted":"#/components/schemas/ValueRedacted","ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueString":"#/components/schemas/ValueString","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueEdgeArtifactId":{"title":"Edge Artifact ID","description":"References a non-sensitive artifact stored on the Collibra instance and uploaded via `POST /artifacts`. Use for files such as SSL certificates and driver libraries.\n","type":"object","required":["type","edgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueEdgeArtifactId$"},"edgeArtifactId":{"type":"string","format":"uuid","description":"Reference id of the artifact uploaded via `POST /artifacts`."}}},"ValueSecretEdgeArtifactId":{"title":"Secret Edge Artifact ID","description":"References a secret artifact stored on the Edge site and uploaded via `POST /sites/{siteId}/secretArtifacts`. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts. Each secret artifact can only be referenced by a single connection and cannot be reused.\n","type":"object","required":["type","secretEdgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueSecretEdgeArtifactId$"},"secretEdgeArtifactId":{"type":"string","maxLength":512,"description":"The `id` value returned by `POST /sites/{siteId}/secretArtifacts`.\n"}}},"ValueVaultArtifact":{"title":"VaultArtifactReference","description":"Reference to a vault-stored secret that resolves to a file artifact. Use this instead of `EdgeArtifact` when the file should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultArtifact$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"ConnectionAzure":{"type":"object","title":"Azure Connection","description":"Azure connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAzure$","description":"Discriminator for Azure connection"},"usGovernmentCloudHost":{"description":"Indicates whether Azure US Government Cloud is the host for Microsoft Entra.","type":"boolean","default":false},"auth":{"$ref":"#/components/schemas/AuthAzure"}},"required":["type","auth"]},"AuthAzure":{"title":"Azure Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAzureServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthAzureServicePrincipal":"#/components/schemas/AuthAzureServicePrincipal"}}},"AuthAzureServicePrincipal":{"type":"object","title":"Azure Service Principal Authentication","properties":{"type":{"type":"string","pattern":"^AuthAzureServicePrincipal$"},"clientId":{"description":"The ID of the Service Principal used to connect to Azure","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"The Secret Key for the Service Principal","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"The Tenant ID of your Azure AD","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"ConnectionDatabricks":{"type":"object","title":"Databricks Connection","description":"Databricks connection.","properties":{"type":{"type":"string","pattern":"^ConnectionDatabricks$","description":"Discriminator for Databricks connection."},"workspaceUrl":{"description":"Workspace URL on Databricks.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDatabricks"}},"required":["type","workspaceUrl","auth"]},"AuthDatabricks":{"title":"Databricks Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"},{"$ref":"#/components/schemas/AuthDatabricksEntraId"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials","AuthDatabricksEntraId":"#/components/schemas/AuthDatabricksEntraId","AuthToken":"#/components/schemas/AuthToken"}}},"AuthClientCredentials":{"title":"Client Credentials Authentication","type":"object","description":"Generic client credentials (client ID + secret) authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentials$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","clientId","clientSecret"]},"AuthDatabricksEntraId":{"title":"Databricks Microsoft Entra ID Authentication","type":"object","description":"Microsoft Entra ID (Azure AD) authentication for Databricks.","properties":{"type":{"type":"string","pattern":"^AuthDatabricksEntraId$"},"clientId":{"description":"Client ID of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"Tenant ID for Microsoft Entra ID authentication.","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"AuthToken":{"title":"Token Authentication","type":"object","description":"Generic single-token authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthToken$"},"token":{"description":"Token value for authentication.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","token"]},"ConnectionDbt":{"type":"object","title":"dbt Connection","description":"dbt connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionDbt$","description":"Discriminator for dbt Connection"},"adminUrl":{"description":"Optional dbt admin API URL. Defaults to https://cloud.getdbt.com/api/v2","$ref":"#/components/schemas/ParameterString"},"metadataUrl":{"description":"Optional dbt metadata URL. Defaults to https://metadata.cloud.getdbt.com/graphql","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDbt"}},"required":["type","auth"]},"AuthDbt":{"title":"dbt Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthDbtToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthDbtToken":"#/components/schemas/AuthDbtToken"}}},"AuthDbtToken":{"title":"dbt Token Authentication","type":"object","description":"A dbt Cloud service token with the required permissions, used for authentication.","properties":{"type":{"type":"string","pattern":"^AuthDbtToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenValue":{"description":"Value of the service/account token (the copied value from dbt Cloud)","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenValue"]},"ConnectionGcp":{"type":"object","title":"GCP Connection","description":"GCP connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionGcp$","description":"Discriminator for GCP Connection"},"auth":{"$ref":"#/components/schemas/AuthGcp"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthGcp":{"title":"GCP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGcpServiceAccount"},{"$ref":"#/components/schemas/AuthGcpWif"},{"$ref":"#/components/schemas/AuthGcpWifGke"}],"discriminator":{"propertyName":"type","mapping":{"AuthGcpServiceAccount":"#/components/schemas/AuthGcpServiceAccount","AuthGcpWif":"#/components/schemas/AuthGcpWif","AuthGcpWifGke":"#/components/schemas/AuthGcpWifGke"}}},"AuthGcpServiceAccount":{"title":"GCP Service Account Authentication","type":"object","description":"GCP Service Account authentication (full JSON key)","properties":{"type":{"type":"string","pattern":"^AuthGcpServiceAccount$"},"credentialsJson":{"description":"Full JSON key for the service account","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","credentialsJson"]},"AuthGcpWif":{"title":"GCP Workload Identity Federation (WIF) Authentication","type":"object","description":"Workload Identity Federation (WIF) - token URL or token","properties":{"type":{"type":"string","pattern":"^AuthGcpWif$"},"tokenOrTokenUrl":{"description":"Token URL or token for WIF","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenOrTokenUrl"]},"AuthGcpWifGke":{"title":"GCP Workload Identity Federation (WIF) using GKE Authentication","type":"object","description":"Workload Identity Federation (WIF) using GKE - credentials from GKE, leave blank","properties":{"type":{"type":"string","pattern":"^AuthGcpWifGke$"}},"required":["type"]},"ConnectionGit":{"type":"object","title":"Git Connection","description":"Connection to a Git repository\n","properties":{"type":{"type":"string","pattern":"^ConnectionGit$","description":"Discriminator for Git connection"},"repositoryUrl":{"description":"HTTPS URL of the Git repository root, e.g. https://github.com/org/repo.git","$ref":"#/components/schemas/ParameterString"},"subfolder":{"description":"Path to a specific subfolder within the repository, e.g. src or projects/analytics.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthGit"}},"required":["type","repositoryUrl","auth"]},"AuthGit":{"title":"Git Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGitAccessToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthGitAccessToken":"#/components/schemas/AuthGitAccessToken"}}},"AuthGitAccessToken":{"title":"Git Access Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthGitAccessToken$"},"username":{"description":"Username for authentication. Required for Bitbucket repositories.","$ref":"#/components/schemas/ParameterString"},"accessToken":{"description":"Personal access token for authenticating with the Git repository.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessToken"]},"ConnectionHttp":{"type":"object","title":"HTTP Connection","description":"Allows workflows to communicate with other HTTP based systems.\n","properties":{"type":{"type":"string","pattern":"^ConnectionHttp$","description":"Discriminator for HTTP connection"},"host":{"description":"The protocol and domain name of the server to connect to, for example, https://api.example.com","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthHttp"},"testConnectionPath":{"description":"The path for testing this connection with a GET call, for example, /v1/health.","$ref":"#/components/schemas/ParameterString"}},"required":["type","host"]},"AuthHttp":{"title":"HTTP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"},{"$ref":"#/components/schemas/AuthOAuth2"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone","AuthOAuth2":"#/components/schemas/AuthOAuth2"}}},"AuthBasic":{"title":"Basic Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthBasic$"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"password":{"description":"Password","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","password"]},"AuthNone":{"title":"No Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthNone$"}},"required":["type"]},"AuthOAuth2":{"title":"OAuth 2.0 Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthOAuth2$"},"clientId":{"description":"Client id","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"accessTokenUri":{"description":"Access token URI","$ref":"#/components/schemas/ParameterString"},"scopes":{"description":"Scopes","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","accessTokenUri"]},"ConnectionIics":{"type":"object","title":"Informatica Intelligent Cloud Services (IICS) Connection","description":"IICS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionIics$","description":"Discriminator for Informatica Intelligent Cloud Services (IICS) Connection"},"url":{"description":"IICS Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthIics"}},"required":["type","url","auth"]},"AuthIics":{"title":"IICS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionJdbc":{"title":"JDBC Connection","type":"object","required":["type","driver","connectionString"],"properties":{"type":{"type":"string","pattern":"^ConnectionJdbc$","description":"Discriminator for JDBC connection types."},"driver":{"$ref":"#/components/schemas/JdbcDriver"},"connectionString":{"$ref":"#/components/schemas/ParameterString","description":"JDBC connection string, e.g. \"jdbc:mysql://localhost:3306/mydb\""},"auth":{"description":"Authentication configuration. When omitted, defaults to AuthNone.","$ref":"#/components/schemas/AuthJdbc"},"parameters":{"description":"Additional JDBC connection properties, such as SSL settings, timeouts, etc. These are passed as key-value pairs in the connection string.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}}},"JdbcDriver":{"type":"object","description":"JDBC driver configuration (`JdbcDriverDirect`). Specify the driver jar, an optional classpath, and the fully qualified driver class name.","oneOf":[{"$ref":"#/components/schemas/JdbcDriverDirect"}],"discriminator":{"propertyName":"type","mapping":{"JdbcDriverDirect":"#/components/schemas/JdbcDriverDirect"}}},"JdbcDriverDirect":{"title":"Direct JDBC Driver","type":"object","properties":{"type":{"type":"string","pattern":"^JdbcDriverDirect$"},"className":{"type":"string","description":"Fully qualified class name of the JDBC driver (e.g. \"org.postgresql.Driver\", \"com.mysql.cj.jdbc.Driver\", etc.).","maxLength":100,"pattern":"^[a-zA-Z0-9._$]+$"},"jar":{"type":"string","format":"uuid","description":"Reference id of the driver jar uploaded via `POST /drivers/jars`."},"additionalClasspathFiles":{"type":"array","maxItems":10,"items":{"type":"string","format":"uuid","description":"Reference id of a driver jar or native library uploaded via `POST /drivers/jars` or `POST /drivers/nativeLibs`."}}},"required":["className","type","jar"],"description":"This schema contains the allowed configuration files that can be uploaded to set up a JDBC connection type."},"AuthJdbc":{"title":"JDBC Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone"}}},"ConnectionLocalStorage":{"type":"object","title":"Shared Storage Connection","description":"Read-only access to a folder located on the Edge site. Used for technical lineage ingestion via OpenLineage (AWS Glue, Apache Airflow, OpenLineage).\n","properties":{"type":{"type":"string","pattern":"^ConnectionLocalStorage$","description":"Discriminator for shared storage connection"},"folder":{"description":"--target as specified in ./edgecli object folder-upload","type":"string","pattern":"^[\\w-]+$"}},"required":["type","folder"]},"ConnectionLooker":{"type":"object","title":"Looker Connection","description":"Looker connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionLooker$","description":"Discriminator for Looker Connection"},"url":{"description":"Looker URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthLooker"}},"required":["type","url","auth"]},"AuthLooker":{"title":"Looker Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionMatillion":{"type":"object","title":"Matillion Connection","description":"Matillion connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMatillion$","description":"Discriminator for Matillion Connection"},"url":{"description":"Matillion Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMatillion"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthMatillion":{"title":"Matillion Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ParameterEdgeArtifact":{"description":"References a non-sensitive artifact stored on the customer's Collibra Platform instance. Use for SSL certificates, driver libraries, and other files that do not need to stay within the customer's Edge site.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"ConnectionMicroStrategy":{"type":"object","title":"MicroStrategy Connection","description":"MicroStrategy connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMicroStrategy$","description":"Discriminator for MicroStrategy Connection"},"url":{"description":"MicroStrategy URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMicroStrategy"}},"required":["type","url","auth"]},"AuthMicroStrategy":{"title":"MicroStrategy Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ConnectionMlflow":{"type":"object","title":"MLflow Connection","description":"MLflow connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMlflow$","description":"Discriminator for MLflow connection"},"url":{"description":"MLflow URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMlflow"}},"required":["type","url","auth"]},"AuthMlflow":{"title":"MLflow Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"AuthClientCredentialsWithTokenUrl":{"title":"Client Credentials with Token URL Authentication","type":"object","description":"OAuth client credentials with token URL (client ID, secret, and token endpoint)","properties":{"type":{"type":"string","pattern":"^AuthClientCredentialsWithTokenUrl$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"tokenUrl":{"description":"The token URL of the OAuth client","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tokenUrl"]},"ConnectionPowerBI":{"type":"object","title":"Power BI Connection","description":"Power BI (SaaS) connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionPowerBI$","description":"Discriminator for Power BI Connection"},"tenantDomain":{"description":"Tenant Domain","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Authentication configuration for Power BI. Supports ServicePrincipal and ResourceOwnerPassword flows.\n","$ref":"#/components/schemas/AuthPowerBI"},"certFile":{"description":"Optional custom SSL/TLS certificate, in PEM format, used to establish a trusted HTTPS connection to the Power BI service. Provide this when the connection is routed through a proxy or gateway that presents a certificate signed by a custom or private Certificate Authority that is not trusted by default. The certificate is referenced as a non-sensitive artifact stored on the customer's Collibra Platform instance. When omitted, the system's default trusted CAs are used.\n","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","tenantDomain","auth"]},"AuthPowerBI":{"title":"Power BI Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthPowerBIResourceOwnerPassword"},{"$ref":"#/components/schemas/AuthPowerBIServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthPowerBIResourceOwnerPassword":"#/components/schemas/AuthPowerBIResourceOwnerPassword","AuthPowerBIServicePrincipal":"#/components/schemas/AuthPowerBIServicePrincipal"}}},"AuthPowerBIResourceOwnerPassword":{"title":"Power BI Resource Owner Password Credentials Authentication","type":"object","description":"Resource Owner Password Credentials authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIResourceOwnerPassword$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"passwordSecretKey":{"description":"Password/Secret key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","username","passwordSecretKey"]},"AuthPowerBIServicePrincipal":{"title":"Power BI Service Principal Authentication","type":"object","description":"Service Principal authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIServicePrincipal$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret for the service principal","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","clientSecret"]},"ConnectionS3Compatible":{"type":"object","title":"S3-Compatible Connection","description":"Connection to a self-hosted or third-party S3-compatible storage service (e.g. MinIO, Ceph, NetApp StorageGRID).\n","properties":{"type":{"type":"string","pattern":"^ConnectionS3Compatible$","description":"Discriminator for S3-Compatible connection"},"endpoint":{"description":"URL of the S3-compatible storage endpoint, e.g. https://minio.example.com","$ref":"#/components/schemas/ParameterString"},"region":{"description":"Region identifier for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthS3Compatible"}},"required":["type","endpoint","auth"]},"AuthS3Compatible":{"title":"S3-Compatible Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthS3CompatibleAccessKey"}],"discriminator":{"propertyName":"type","mapping":{"AuthS3CompatibleAccessKey":"#/components/schemas/AuthS3CompatibleAccessKey"}}},"AuthS3CompatibleAccessKey":{"title":"S3-Compatible Access Key Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthS3CompatibleAccessKey$"},"accessKeyId":{"description":"Access key ID for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"secretAccessKey":{"description":"Secret access key for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessKeyId","secretAccessKey"]},"ConnectionSapAICore":{"type":"object","title":"SAP AI Core Connection","description":"SAP AI Core connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapAICore$","description":"Discriminator for SAP AI Core connection"},"url":{"description":"SAP AI Core URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSapAICore"}},"required":["type","url","auth"]},"AuthSapAICore":{"title":"SAP AI Core Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSapDatasphereCatalog":{"type":"object","title":"SAP Datasphere Catalog Connection","description":"SAP Datasphere Catalog connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapDatasphereCatalog$","description":"Discriminator for SAP Datasphere Catalog connection"},"url":{"description":"SAP Datasphere Catalog URL","$ref":"#/components/schemas/ParameterString"},"datasphereCatalogAuth":{"description":"OAuth client credentials for ingesting the SAP Datasphere Catalog.","$ref":"#/components/schemas/AuthSapDatasphereCatalog"},"dataProductsAuth":{"description":"Optional OAuth client credentials for ingesting SAP Data Products. When omitted, SAP Data Products are not ingested.","$ref":"#/components/schemas/AuthClientCredentials"}},"required":["type","url","datasphereCatalogAuth"]},"AuthSapDatasphereCatalog":{"title":"SAP Datasphere Catalog Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSigma":{"type":"object","title":"Sigma Connection","description":"Sigma connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSigma$","description":"Discriminator for Sigma connection"},"url":{"description":"Sigma instance base URL, e.g. https://aws-api.sigmacomputing.com","$ref":"#/components/schemas/ParameterString"},"tenantUrl":{"description":"Tenant-specific URL, e.g. https://app.sigmacomputing.com/your-tenant","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSigma"}},"required":["type","url","tenantUrl","auth"]},"AuthSigma":{"title":"Sigma Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionSnowflake":{"type":"object","title":"Snowflake Connection","description":"Snowflake connection.","properties":{"type":{"type":"string","pattern":"^ConnectionSnowflake$","description":"Discriminator for Snowflake connection."},"account":{"description":"The Account Identifier for the Snowflake account. This often includes cloud region information (e.g., xy123456.eu-central-1).","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSnowflake"},"role":{"description":"The role to use in the Snowflake session.","$ref":"#/components/schemas/ParameterString"},"warehouse":{"description":"The name of the Snowflake warehouse. Defaults to the user's default warehouse if not specified.","$ref":"#/components/schemas/ParameterString"}},"required":["type","account","auth"]},"AuthSnowflake":{"title":"Snowflake Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthSnowflakeKeyPair"},{"$ref":"#/components/schemas/AuthSnowflakePat"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthSnowflakeKeyPair":"#/components/schemas/AuthSnowflakeKeyPair","AuthSnowflakePat":"#/components/schemas/AuthSnowflakePat"}}},"AuthSnowflakeKeyPair":{"title":"Snowflake Key Pair Authentication","type":"object","description":"Key pair authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakeKeyPair$"},"username":{"description":"The username to authenticate against the Snowflake account.","$ref":"#/components/schemas/ParameterString"},"privateKeyEdgeArtifact":{"description":"The private key artifact in P8 format for key pair authentication.","$ref":"#/components/schemas/ParameterSecretEdgeArtifact"},"privateKeyPwd":{"description":"The passphrase for the private key, if it is encrypted.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","privateKeyEdgeArtifact"]},"ParameterSecretEdgeArtifact":{"description":"References a sensitive artifact stored on the Edge site. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"AuthSnowflakePat":{"title":"Snowflake Programmatic Access Token Authentication","type":"object","description":"Programmatic Access Token (PAT) authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakePat$"},"programmaticAccessToken":{"description":"Programmatic Access Token generated in Snowflake.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","programmaticAccessToken"]},"ConnectionSsrs":{"type":"object","title":"Microsoft SSRS/PBRS Connection","description":"Microsoft SSRS/PBRS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSsrs$","description":"Discriminator for Microsoft SSRS/PBRS Connection"},"url":{"description":"Microsoft SSRS/PBRS URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSsrs"}},"required":["type","url","auth"]},"AuthSsrs":{"title":"SSRS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionTableau":{"type":"object","title":"Tableau Connection","description":"Tableau connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionTableau$","description":"Discriminator for Tableau Connection"},"url":{"description":"URL of the Tableau Server or Tableau Cloud site.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthTableau"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthTableau":{"title":"Tableau Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthTableauToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthTableauToken":"#/components/schemas/AuthTableauToken"}}},"AuthTableauToken":{"title":"Tableau Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthTableauToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenSecret":{"description":"Value of the service/account token","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenSecret"]},"ConnectionThoughtSpot":{"type":"object","title":"ThoughtSpot Connection","description":"ThoughtSpot connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionThoughtSpot$","description":"Discriminator for ThoughtSpot connection"},"url":{"description":"ThoughtSpot instance base URL, e.g. https://customer.thoughtspot.cloud","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthThoughtSpot"}},"required":["type","url","auth"]},"AuthThoughtSpot":{"title":"ThoughtSpot Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteOrConnectionNotFound":{"description":"Site or connection not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/sites/{siteId}/connections/{connectionId}":{"get":{"operationId":"getConnection","tags":["Connections"],"summary":"Get a connection","description":"Returns the data source connection by using the target connection ID in {connectionId}.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteOrConnectionNotFound"},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Update a connection (full replace)

> Replaces an existing data source connection. This operation performs a full replacement — every field must be provided on each call, or it resets to its default value. \`name\` is required, and changing it renames the connection. The \`edgeSiteId\` field is set at creation time and cannot be changed; it is ignored if included in the request body.<br>

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"schemas":{"ConnectionUpdate":{"type":"object","properties":{"name":{"type":"string","pattern":"^[a-zA-Z0-9_.-]+$","maxLength":255},"description":{"type":"string","maxLength":4000},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"required":["name","properties"],"description":"Request body to fully replace a data source connection. This is a full replacement, not a partial update - every field must be supplied on each call or it will be reset to its default. `name` is required, and changing it renames the connection. `edgeSiteId` is set at creation and cannot be changed; it is ignored if included in the request body.\n"},"ConnectionProperties":{"oneOf":[{"$ref":"#/components/schemas/ConnectionAws"},{"$ref":"#/components/schemas/ConnectionAzure"},{"$ref":"#/components/schemas/ConnectionDatabricks"},{"$ref":"#/components/schemas/ConnectionDbt"},{"$ref":"#/components/schemas/ConnectionGcp"},{"$ref":"#/components/schemas/ConnectionGit"},{"$ref":"#/components/schemas/ConnectionHttp"},{"$ref":"#/components/schemas/ConnectionIics"},{"$ref":"#/components/schemas/ConnectionJdbc"},{"$ref":"#/components/schemas/ConnectionLocalStorage"},{"$ref":"#/components/schemas/ConnectionLooker"},{"$ref":"#/components/schemas/ConnectionMatillion"},{"$ref":"#/components/schemas/ConnectionMicroStrategy"},{"$ref":"#/components/schemas/ConnectionMlflow"},{"$ref":"#/components/schemas/ConnectionPowerBI"},{"$ref":"#/components/schemas/ConnectionS3Compatible"},{"$ref":"#/components/schemas/ConnectionSapAICore"},{"$ref":"#/components/schemas/ConnectionSapDatasphereCatalog"},{"$ref":"#/components/schemas/ConnectionSigma"},{"$ref":"#/components/schemas/ConnectionSnowflake"},{"$ref":"#/components/schemas/ConnectionSsrs"},{"$ref":"#/components/schemas/ConnectionTableau"},{"$ref":"#/components/schemas/ConnectionThoughtSpot"}],"discriminator":{"propertyName":"type","mapping":{"ConnectionAws":"#/components/schemas/ConnectionAws","ConnectionAzure":"#/components/schemas/ConnectionAzure","ConnectionDatabricks":"#/components/schemas/ConnectionDatabricks","ConnectionDbt":"#/components/schemas/ConnectionDbt","ConnectionGcp":"#/components/schemas/ConnectionGcp","ConnectionGit":"#/components/schemas/ConnectionGit","ConnectionHttp":"#/components/schemas/ConnectionHttp","ConnectionIics":"#/components/schemas/ConnectionIics","ConnectionJdbc":"#/components/schemas/ConnectionJdbc","ConnectionLocalStorage":"#/components/schemas/ConnectionLocalStorage","ConnectionLooker":"#/components/schemas/ConnectionLooker","ConnectionMatillion":"#/components/schemas/ConnectionMatillion","ConnectionMicroStrategy":"#/components/schemas/ConnectionMicroStrategy","ConnectionMlflow":"#/components/schemas/ConnectionMlflow","ConnectionPowerBI":"#/components/schemas/ConnectionPowerBI","ConnectionS3Compatible":"#/components/schemas/ConnectionS3Compatible","ConnectionSapAICore":"#/components/schemas/ConnectionSapAICore","ConnectionSapDatasphereCatalog":"#/components/schemas/ConnectionSapDatasphereCatalog","ConnectionSigma":"#/components/schemas/ConnectionSigma","ConnectionSnowflake":"#/components/schemas/ConnectionSnowflake","ConnectionSsrs":"#/components/schemas/ConnectionSsrs","ConnectionTableau":"#/components/schemas/ConnectionTableau","ConnectionThoughtSpot":"#/components/schemas/ConnectionThoughtSpot"}}},"ConnectionAws":{"type":"object","title":"AWS Connection","description":"AWS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAws$","description":"Discriminator for AWS connection"},"auth":{"$ref":"#/components/schemas/AuthAws"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthAws":{"title":"AWS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAwsEc2"},{"$ref":"#/components/schemas/AuthAwsIam"}],"discriminator":{"propertyName":"type","mapping":{"AuthAwsEc2":"#/components/schemas/AuthAwsEc2","AuthAwsIam":"#/components/schemas/AuthAwsIam"}}},"AuthAwsEc2":{"title":"AWS EC2 Instance Profile Authentication","type":"object","description":"Authenticate via the IAM role attached to the EC2 instance running the Edge site. No credentials are configured on the connection.","properties":{"type":{"type":"string","pattern":"^AuthAwsEc2$"}},"required":["type"]},"AuthAwsIam":{"title":"AWS IAM Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthAwsIam$"},"awsAccessKeyId":{"description":"AWS Access Key ID","$ref":"#/components/schemas/ParameterString"},"awsSecretKey":{"description":"AWS Secret Access Key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","awsAccessKeyId","awsSecretKey"]},"ParameterString":{"description":"String value that is a plain text value or a vault secret that resolves to a string value.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueString":{"title":"String Value","type":"object","required":["type","value"],"properties":{"type":{"type":"string","pattern":"^ValueString$"},"value":{"type":"string","minLength":1,"maxLength":4000,"pattern":".*\\S.*"}},"description":"Contains a series of characters that comprises a string value."},"ValueVaultString":{"title":"VaultStringReference","description":"Reference to a vault-stored secret that resolves to a string value. Use this instead of `ValueString` when the value should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultString$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"VaultKeys":{"title":"Vault Keys","description":"Vault reference parameter for HashiCorp, CyberArk, AWS Secrets Manager, Azure Key Vault and Google Secret Manager.","type":"object","oneOf":[{"$ref":"#/components/schemas/VaultKeyAWSSecretsManager"},{"$ref":"#/components/schemas/VaultKeyAzureKeyVaultSecret"},{"$ref":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery"},{"$ref":"#/components/schemas/VaultKeyGCPSecretManager"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultDatabase"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}],"discriminator":{"propertyName":"type","mapping":{"VaultKeyAWSSecretsManager":"#/components/schemas/VaultKeyAWSSecretsManager","VaultKeyAzureKeyVaultSecret":"#/components/schemas/VaultKeyAzureKeyVaultSecret","VaultKeyCyberArkCredentialProviderQuery":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery","VaultKeyGCPSecretManager":"#/components/schemas/VaultKeyGCPSecretManager","VaultKeyHashiCorpVaultDatabase":"#/components/schemas/VaultKeyHashiCorpVaultDatabase","VaultKeyHashiCorpVaultKeyValue":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}}},"VaultKeyAWSSecretsManager":{"title":"AWS Secrets Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAWSSecretsManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The name of the secret in your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"Required only when the secret stored in AWS Secrets Manager is a JSON object; it selects which JSON key to use.\n\nFor example, if the secret is `{\"pass1\": \"my-password\", \"pass2\": \"my-password2\"}` and you want the value of `pass1`, set `secretName` to the AWS secret name (e.g. `edge-db-customer`) and `field` to `pass1`.\n\nLeave `field` empty when the secret is stored as a plain string value.\n"}}},"VaultKeyAzureKeyVaultSecret":{"title":"Azure Key Vault Secret Reference","type":"object","required":["type","secretName","vaultName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAzureKeyVaultSecret$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."},"vaultName":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the Azure Key Vault that contains the secret."}}},"VaultKeyCyberArkCredentialProviderQuery":{"title":"CyberArk Credential Provider Query Reference","type":"object","required":["type","query"],"properties":{"type":{"type":"string","pattern":"^VaultKeyCyberArkCredentialProviderQuery$"},"query":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The query must be a string containing the properties required to identify the secret. Each property must be separated by a semicolon (`;`).\n\nFor example: `Safe=<SafeName>;Folder=<FolderName>;Object=<ObjectName>`\n\nIf a property is a folder with sub-folders, use a backslash (`\\`) to define the folder path. For example: `Folder=Root\\Top Secrets\\More Secrets`\n"}}},"VaultKeyGCPSecretManager":{"title":"Google Cloud Secret Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyGCPSecretManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."}}},"VaultKeyHashiCorpVaultDatabase":{"title":"HashiCorp Vault Database Reference","type":"object","required":["type","enginePath","role","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultDatabase$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"role":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"If your Secret Engine Type is Database, enter the role specified in the Database engine."},"field":{"type":"string","pattern":"^(username|password)$","description":"Allowed values: username, password"}}},"VaultKeyHashiCorpVaultKeyValue":{"title":"HashiCorp Key-Value Secret Reference","type":"object","required":["type","enginePath","secretPath","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultKeyValue$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"secretPath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The secret path to your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the field in the HashiCorp Key-Value secret whose value should be retrieved."}}},"ParameterSecretString":{"description":"A secret string value that is a plain text value, a redacted value from reading a secret stored on an Edge site, or a string value retrieved from a vault.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueRedacted":"#/components/schemas/ValueRedacted","ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueRedacted":{"title":"Redacted Value","description":"Returned when a secret value is stored on the Edge site and is not accessible via the API. On create and update, use ValueString to set the value. To clear an existing secret, omit the field from the request body.\n","type":"object","required":["type"],"properties":{"type":{"type":"string","pattern":"^ValueRedacted$"}}},"ParameterGenericMap":{"type":"object","description":"Map of parameters for connections used to pass additional configuration.","additionalProperties":{"$ref":"#/components/schemas/ParameterGeneric"}},"ParameterGeneric":{"title":"Generic Parameter","description":"A parameter value for use in a data source connection parameter configuration.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultArtifact"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueRedacted":"#/components/schemas/ValueRedacted","ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueString":"#/components/schemas/ValueString","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueEdgeArtifactId":{"title":"Edge Artifact ID","description":"References a non-sensitive artifact stored on the Collibra instance and uploaded via `POST /artifacts`. Use for files such as SSL certificates and driver libraries.\n","type":"object","required":["type","edgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueEdgeArtifactId$"},"edgeArtifactId":{"type":"string","format":"uuid","description":"Reference id of the artifact uploaded via `POST /artifacts`."}}},"ValueSecretEdgeArtifactId":{"title":"Secret Edge Artifact ID","description":"References a secret artifact stored on the Edge site and uploaded via `POST /sites/{siteId}/secretArtifacts`. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts. Each secret artifact can only be referenced by a single connection and cannot be reused.\n","type":"object","required":["type","secretEdgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueSecretEdgeArtifactId$"},"secretEdgeArtifactId":{"type":"string","maxLength":512,"description":"The `id` value returned by `POST /sites/{siteId}/secretArtifacts`.\n"}}},"ValueVaultArtifact":{"title":"VaultArtifactReference","description":"Reference to a vault-stored secret that resolves to a file artifact. Use this instead of `EdgeArtifact` when the file should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultArtifact$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"ConnectionAzure":{"type":"object","title":"Azure Connection","description":"Azure connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAzure$","description":"Discriminator for Azure connection"},"usGovernmentCloudHost":{"description":"Indicates whether Azure US Government Cloud is the host for Microsoft Entra.","type":"boolean","default":false},"auth":{"$ref":"#/components/schemas/AuthAzure"}},"required":["type","auth"]},"AuthAzure":{"title":"Azure Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAzureServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthAzureServicePrincipal":"#/components/schemas/AuthAzureServicePrincipal"}}},"AuthAzureServicePrincipal":{"type":"object","title":"Azure Service Principal Authentication","properties":{"type":{"type":"string","pattern":"^AuthAzureServicePrincipal$"},"clientId":{"description":"The ID of the Service Principal used to connect to Azure","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"The Secret Key for the Service Principal","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"The Tenant ID of your Azure AD","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"ConnectionDatabricks":{"type":"object","title":"Databricks Connection","description":"Databricks connection.","properties":{"type":{"type":"string","pattern":"^ConnectionDatabricks$","description":"Discriminator for Databricks connection."},"workspaceUrl":{"description":"Workspace URL on Databricks.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDatabricks"}},"required":["type","workspaceUrl","auth"]},"AuthDatabricks":{"title":"Databricks Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"},{"$ref":"#/components/schemas/AuthDatabricksEntraId"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials","AuthDatabricksEntraId":"#/components/schemas/AuthDatabricksEntraId","AuthToken":"#/components/schemas/AuthToken"}}},"AuthClientCredentials":{"title":"Client Credentials Authentication","type":"object","description":"Generic client credentials (client ID + secret) authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentials$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","clientId","clientSecret"]},"AuthDatabricksEntraId":{"title":"Databricks Microsoft Entra ID Authentication","type":"object","description":"Microsoft Entra ID (Azure AD) authentication for Databricks.","properties":{"type":{"type":"string","pattern":"^AuthDatabricksEntraId$"},"clientId":{"description":"Client ID of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"Tenant ID for Microsoft Entra ID authentication.","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"AuthToken":{"title":"Token Authentication","type":"object","description":"Generic single-token authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthToken$"},"token":{"description":"Token value for authentication.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","token"]},"ConnectionDbt":{"type":"object","title":"dbt Connection","description":"dbt connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionDbt$","description":"Discriminator for dbt Connection"},"adminUrl":{"description":"Optional dbt admin API URL. Defaults to https://cloud.getdbt.com/api/v2","$ref":"#/components/schemas/ParameterString"},"metadataUrl":{"description":"Optional dbt metadata URL. Defaults to https://metadata.cloud.getdbt.com/graphql","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDbt"}},"required":["type","auth"]},"AuthDbt":{"title":"dbt Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthDbtToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthDbtToken":"#/components/schemas/AuthDbtToken"}}},"AuthDbtToken":{"title":"dbt Token Authentication","type":"object","description":"A dbt Cloud service token with the required permissions, used for authentication.","properties":{"type":{"type":"string","pattern":"^AuthDbtToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenValue":{"description":"Value of the service/account token (the copied value from dbt Cloud)","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenValue"]},"ConnectionGcp":{"type":"object","title":"GCP Connection","description":"GCP connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionGcp$","description":"Discriminator for GCP Connection"},"auth":{"$ref":"#/components/schemas/AuthGcp"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthGcp":{"title":"GCP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGcpServiceAccount"},{"$ref":"#/components/schemas/AuthGcpWif"},{"$ref":"#/components/schemas/AuthGcpWifGke"}],"discriminator":{"propertyName":"type","mapping":{"AuthGcpServiceAccount":"#/components/schemas/AuthGcpServiceAccount","AuthGcpWif":"#/components/schemas/AuthGcpWif","AuthGcpWifGke":"#/components/schemas/AuthGcpWifGke"}}},"AuthGcpServiceAccount":{"title":"GCP Service Account Authentication","type":"object","description":"GCP Service Account authentication (full JSON key)","properties":{"type":{"type":"string","pattern":"^AuthGcpServiceAccount$"},"credentialsJson":{"description":"Full JSON key for the service account","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","credentialsJson"]},"AuthGcpWif":{"title":"GCP Workload Identity Federation (WIF) Authentication","type":"object","description":"Workload Identity Federation (WIF) - token URL or token","properties":{"type":{"type":"string","pattern":"^AuthGcpWif$"},"tokenOrTokenUrl":{"description":"Token URL or token for WIF","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenOrTokenUrl"]},"AuthGcpWifGke":{"title":"GCP Workload Identity Federation (WIF) using GKE Authentication","type":"object","description":"Workload Identity Federation (WIF) using GKE - credentials from GKE, leave blank","properties":{"type":{"type":"string","pattern":"^AuthGcpWifGke$"}},"required":["type"]},"ConnectionGit":{"type":"object","title":"Git Connection","description":"Connection to a Git repository\n","properties":{"type":{"type":"string","pattern":"^ConnectionGit$","description":"Discriminator for Git connection"},"repositoryUrl":{"description":"HTTPS URL of the Git repository root, e.g. https://github.com/org/repo.git","$ref":"#/components/schemas/ParameterString"},"subfolder":{"description":"Path to a specific subfolder within the repository, e.g. src or projects/analytics.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthGit"}},"required":["type","repositoryUrl","auth"]},"AuthGit":{"title":"Git Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGitAccessToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthGitAccessToken":"#/components/schemas/AuthGitAccessToken"}}},"AuthGitAccessToken":{"title":"Git Access Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthGitAccessToken$"},"username":{"description":"Username for authentication. Required for Bitbucket repositories.","$ref":"#/components/schemas/ParameterString"},"accessToken":{"description":"Personal access token for authenticating with the Git repository.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessToken"]},"ConnectionHttp":{"type":"object","title":"HTTP Connection","description":"Allows workflows to communicate with other HTTP based systems.\n","properties":{"type":{"type":"string","pattern":"^ConnectionHttp$","description":"Discriminator for HTTP connection"},"host":{"description":"The protocol and domain name of the server to connect to, for example, https://api.example.com","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthHttp"},"testConnectionPath":{"description":"The path for testing this connection with a GET call, for example, /v1/health.","$ref":"#/components/schemas/ParameterString"}},"required":["type","host"]},"AuthHttp":{"title":"HTTP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"},{"$ref":"#/components/schemas/AuthOAuth2"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone","AuthOAuth2":"#/components/schemas/AuthOAuth2"}}},"AuthBasic":{"title":"Basic Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthBasic$"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"password":{"description":"Password","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","password"]},"AuthNone":{"title":"No Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthNone$"}},"required":["type"]},"AuthOAuth2":{"title":"OAuth 2.0 Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthOAuth2$"},"clientId":{"description":"Client id","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"accessTokenUri":{"description":"Access token URI","$ref":"#/components/schemas/ParameterString"},"scopes":{"description":"Scopes","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","accessTokenUri"]},"ConnectionIics":{"type":"object","title":"Informatica Intelligent Cloud Services (IICS) Connection","description":"IICS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionIics$","description":"Discriminator for Informatica Intelligent Cloud Services (IICS) Connection"},"url":{"description":"IICS Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthIics"}},"required":["type","url","auth"]},"AuthIics":{"title":"IICS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionJdbc":{"title":"JDBC Connection","type":"object","required":["type","driver","connectionString"],"properties":{"type":{"type":"string","pattern":"^ConnectionJdbc$","description":"Discriminator for JDBC connection types."},"driver":{"$ref":"#/components/schemas/JdbcDriver"},"connectionString":{"$ref":"#/components/schemas/ParameterString","description":"JDBC connection string, e.g. \"jdbc:mysql://localhost:3306/mydb\""},"auth":{"description":"Authentication configuration. When omitted, defaults to AuthNone.","$ref":"#/components/schemas/AuthJdbc"},"parameters":{"description":"Additional JDBC connection properties, such as SSL settings, timeouts, etc. These are passed as key-value pairs in the connection string.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}}},"JdbcDriver":{"type":"object","description":"JDBC driver configuration (`JdbcDriverDirect`). Specify the driver jar, an optional classpath, and the fully qualified driver class name.","oneOf":[{"$ref":"#/components/schemas/JdbcDriverDirect"}],"discriminator":{"propertyName":"type","mapping":{"JdbcDriverDirect":"#/components/schemas/JdbcDriverDirect"}}},"JdbcDriverDirect":{"title":"Direct JDBC Driver","type":"object","properties":{"type":{"type":"string","pattern":"^JdbcDriverDirect$"},"className":{"type":"string","description":"Fully qualified class name of the JDBC driver (e.g. \"org.postgresql.Driver\", \"com.mysql.cj.jdbc.Driver\", etc.).","maxLength":100,"pattern":"^[a-zA-Z0-9._$]+$"},"jar":{"type":"string","format":"uuid","description":"Reference id of the driver jar uploaded via `POST /drivers/jars`."},"additionalClasspathFiles":{"type":"array","maxItems":10,"items":{"type":"string","format":"uuid","description":"Reference id of a driver jar or native library uploaded via `POST /drivers/jars` or `POST /drivers/nativeLibs`."}}},"required":["className","type","jar"],"description":"This schema contains the allowed configuration files that can be uploaded to set up a JDBC connection type."},"AuthJdbc":{"title":"JDBC Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone"}}},"ConnectionLocalStorage":{"type":"object","title":"Shared Storage Connection","description":"Read-only access to a folder located on the Edge site. Used for technical lineage ingestion via OpenLineage (AWS Glue, Apache Airflow, OpenLineage).\n","properties":{"type":{"type":"string","pattern":"^ConnectionLocalStorage$","description":"Discriminator for shared storage connection"},"folder":{"description":"--target as specified in ./edgecli object folder-upload","type":"string","pattern":"^[\\w-]+$"}},"required":["type","folder"]},"ConnectionLooker":{"type":"object","title":"Looker Connection","description":"Looker connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionLooker$","description":"Discriminator for Looker Connection"},"url":{"description":"Looker URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthLooker"}},"required":["type","url","auth"]},"AuthLooker":{"title":"Looker Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionMatillion":{"type":"object","title":"Matillion Connection","description":"Matillion connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMatillion$","description":"Discriminator for Matillion Connection"},"url":{"description":"Matillion Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMatillion"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthMatillion":{"title":"Matillion Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ParameterEdgeArtifact":{"description":"References a non-sensitive artifact stored on the customer's Collibra Platform instance. Use for SSL certificates, driver libraries, and other files that do not need to stay within the customer's Edge site.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"ConnectionMicroStrategy":{"type":"object","title":"MicroStrategy Connection","description":"MicroStrategy connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMicroStrategy$","description":"Discriminator for MicroStrategy Connection"},"url":{"description":"MicroStrategy URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMicroStrategy"}},"required":["type","url","auth"]},"AuthMicroStrategy":{"title":"MicroStrategy Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ConnectionMlflow":{"type":"object","title":"MLflow Connection","description":"MLflow connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMlflow$","description":"Discriminator for MLflow connection"},"url":{"description":"MLflow URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMlflow"}},"required":["type","url","auth"]},"AuthMlflow":{"title":"MLflow Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"AuthClientCredentialsWithTokenUrl":{"title":"Client Credentials with Token URL Authentication","type":"object","description":"OAuth client credentials with token URL (client ID, secret, and token endpoint)","properties":{"type":{"type":"string","pattern":"^AuthClientCredentialsWithTokenUrl$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"tokenUrl":{"description":"The token URL of the OAuth client","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tokenUrl"]},"ConnectionPowerBI":{"type":"object","title":"Power BI Connection","description":"Power BI (SaaS) connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionPowerBI$","description":"Discriminator for Power BI Connection"},"tenantDomain":{"description":"Tenant Domain","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Authentication configuration for Power BI. Supports ServicePrincipal and ResourceOwnerPassword flows.\n","$ref":"#/components/schemas/AuthPowerBI"},"certFile":{"description":"Optional custom SSL/TLS certificate, in PEM format, used to establish a trusted HTTPS connection to the Power BI service. Provide this when the connection is routed through a proxy or gateway that presents a certificate signed by a custom or private Certificate Authority that is not trusted by default. The certificate is referenced as a non-sensitive artifact stored on the customer's Collibra Platform instance. When omitted, the system's default trusted CAs are used.\n","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","tenantDomain","auth"]},"AuthPowerBI":{"title":"Power BI Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthPowerBIResourceOwnerPassword"},{"$ref":"#/components/schemas/AuthPowerBIServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthPowerBIResourceOwnerPassword":"#/components/schemas/AuthPowerBIResourceOwnerPassword","AuthPowerBIServicePrincipal":"#/components/schemas/AuthPowerBIServicePrincipal"}}},"AuthPowerBIResourceOwnerPassword":{"title":"Power BI Resource Owner Password Credentials Authentication","type":"object","description":"Resource Owner Password Credentials authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIResourceOwnerPassword$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"passwordSecretKey":{"description":"Password/Secret key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","username","passwordSecretKey"]},"AuthPowerBIServicePrincipal":{"title":"Power BI Service Principal Authentication","type":"object","description":"Service Principal authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIServicePrincipal$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret for the service principal","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","clientSecret"]},"ConnectionS3Compatible":{"type":"object","title":"S3-Compatible Connection","description":"Connection to a self-hosted or third-party S3-compatible storage service (e.g. MinIO, Ceph, NetApp StorageGRID).\n","properties":{"type":{"type":"string","pattern":"^ConnectionS3Compatible$","description":"Discriminator for S3-Compatible connection"},"endpoint":{"description":"URL of the S3-compatible storage endpoint, e.g. https://minio.example.com","$ref":"#/components/schemas/ParameterString"},"region":{"description":"Region identifier for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthS3Compatible"}},"required":["type","endpoint","auth"]},"AuthS3Compatible":{"title":"S3-Compatible Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthS3CompatibleAccessKey"}],"discriminator":{"propertyName":"type","mapping":{"AuthS3CompatibleAccessKey":"#/components/schemas/AuthS3CompatibleAccessKey"}}},"AuthS3CompatibleAccessKey":{"title":"S3-Compatible Access Key Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthS3CompatibleAccessKey$"},"accessKeyId":{"description":"Access key ID for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"secretAccessKey":{"description":"Secret access key for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessKeyId","secretAccessKey"]},"ConnectionSapAICore":{"type":"object","title":"SAP AI Core Connection","description":"SAP AI Core connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapAICore$","description":"Discriminator for SAP AI Core connection"},"url":{"description":"SAP AI Core URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSapAICore"}},"required":["type","url","auth"]},"AuthSapAICore":{"title":"SAP AI Core Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSapDatasphereCatalog":{"type":"object","title":"SAP Datasphere Catalog Connection","description":"SAP Datasphere Catalog connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapDatasphereCatalog$","description":"Discriminator for SAP Datasphere Catalog connection"},"url":{"description":"SAP Datasphere Catalog URL","$ref":"#/components/schemas/ParameterString"},"datasphereCatalogAuth":{"description":"OAuth client credentials for ingesting the SAP Datasphere Catalog.","$ref":"#/components/schemas/AuthSapDatasphereCatalog"},"dataProductsAuth":{"description":"Optional OAuth client credentials for ingesting SAP Data Products. When omitted, SAP Data Products are not ingested.","$ref":"#/components/schemas/AuthClientCredentials"}},"required":["type","url","datasphereCatalogAuth"]},"AuthSapDatasphereCatalog":{"title":"SAP Datasphere Catalog Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSigma":{"type":"object","title":"Sigma Connection","description":"Sigma connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSigma$","description":"Discriminator for Sigma connection"},"url":{"description":"Sigma instance base URL, e.g. https://aws-api.sigmacomputing.com","$ref":"#/components/schemas/ParameterString"},"tenantUrl":{"description":"Tenant-specific URL, e.g. https://app.sigmacomputing.com/your-tenant","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSigma"}},"required":["type","url","tenantUrl","auth"]},"AuthSigma":{"title":"Sigma Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionSnowflake":{"type":"object","title":"Snowflake Connection","description":"Snowflake connection.","properties":{"type":{"type":"string","pattern":"^ConnectionSnowflake$","description":"Discriminator for Snowflake connection."},"account":{"description":"The Account Identifier for the Snowflake account. This often includes cloud region information (e.g., xy123456.eu-central-1).","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSnowflake"},"role":{"description":"The role to use in the Snowflake session.","$ref":"#/components/schemas/ParameterString"},"warehouse":{"description":"The name of the Snowflake warehouse. Defaults to the user's default warehouse if not specified.","$ref":"#/components/schemas/ParameterString"}},"required":["type","account","auth"]},"AuthSnowflake":{"title":"Snowflake Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthSnowflakeKeyPair"},{"$ref":"#/components/schemas/AuthSnowflakePat"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthSnowflakeKeyPair":"#/components/schemas/AuthSnowflakeKeyPair","AuthSnowflakePat":"#/components/schemas/AuthSnowflakePat"}}},"AuthSnowflakeKeyPair":{"title":"Snowflake Key Pair Authentication","type":"object","description":"Key pair authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakeKeyPair$"},"username":{"description":"The username to authenticate against the Snowflake account.","$ref":"#/components/schemas/ParameterString"},"privateKeyEdgeArtifact":{"description":"The private key artifact in P8 format for key pair authentication.","$ref":"#/components/schemas/ParameterSecretEdgeArtifact"},"privateKeyPwd":{"description":"The passphrase for the private key, if it is encrypted.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","privateKeyEdgeArtifact"]},"ParameterSecretEdgeArtifact":{"description":"References a sensitive artifact stored on the Edge site. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"AuthSnowflakePat":{"title":"Snowflake Programmatic Access Token Authentication","type":"object","description":"Programmatic Access Token (PAT) authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakePat$"},"programmaticAccessToken":{"description":"Programmatic Access Token generated in Snowflake.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","programmaticAccessToken"]},"ConnectionSsrs":{"type":"object","title":"Microsoft SSRS/PBRS Connection","description":"Microsoft SSRS/PBRS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSsrs$","description":"Discriminator for Microsoft SSRS/PBRS Connection"},"url":{"description":"Microsoft SSRS/PBRS URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSsrs"}},"required":["type","url","auth"]},"AuthSsrs":{"title":"SSRS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionTableau":{"type":"object","title":"Tableau Connection","description":"Tableau connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionTableau$","description":"Discriminator for Tableau Connection"},"url":{"description":"URL of the Tableau Server or Tableau Cloud site.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthTableau"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthTableau":{"title":"Tableau Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthTableauToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthTableauToken":"#/components/schemas/AuthTableauToken"}}},"AuthTableauToken":{"title":"Tableau Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthTableauToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenSecret":{"description":"Value of the service/account token","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenSecret"]},"ConnectionThoughtSpot":{"type":"object","title":"ThoughtSpot Connection","description":"ThoughtSpot connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionThoughtSpot$","description":"Discriminator for ThoughtSpot connection"},"url":{"description":"ThoughtSpot instance base URL, e.g. https://customer.thoughtspot.cloud","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthThoughtSpot"}},"required":["type","url","auth"]},"AuthThoughtSpot":{"title":"ThoughtSpot Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionResponse":{"type":"object","required":["id","name","edgeSiteId","properties","createdOn","lastModifiedOn","testConnectionSupported"],"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"edgeSiteId":{"type":"string","format":"uuid"},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"createdOn":{"type":"string","format":"date-time"},"lastModifiedOn":{"type":"string","format":"date-time"},"testConnectionSupported":{"type":"boolean","readOnly":true,"description":"Indicates whether this connection type supports the test connection operation. Only connections with `testConnectionSupported: true` can be used with `POST /sites/{siteId}/connections/{connectionId}/test`.\n"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"description":"Response body for data source connection management endpoints."},"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteOrConnectionNotFound":{"description":"Site or connection not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Conflict":{"description":"Conflict — resource is in use or already exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/sites/{siteId}/connections/{connectionId}":{"put":{"operationId":"updateConnection","tags":["Connections"],"summary":"Update a connection (full replace)","description":"Replaces an existing data source connection. This operation performs a full replacement — every field must be provided on each call, or it resets to its default value. `name` is required, and changing it renames the connection. The `edgeSiteId` field is set at creation time and cannot be changed; it is ignored if included in the request body.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionUpdate"}}}},"responses":{"200":{"description":"Success","headers":{"Location":{"description":"URL of the updated connection.","schema":{"type":"string","format":"uri-reference"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteOrConnectionNotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Delete a connection

> Deletes the specified connection identified by the target connection ID in {connectionId}. To look up a connection ID, use \`GET /sites/{siteId}/connections\`, where \`siteId\` is your target Edge site.

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteOrConnectionNotFound":{"description":"Site or connection not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Conflict":{"description":"Conflict — resource is in use or already exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"schemas":{"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}}},"paths":{"/sites/{siteId}/connections/{connectionId}":{"delete":{"operationId":"deleteConnection","tags":["Connections"],"summary":"Delete a connection","description":"Deletes the specified connection identified by the target connection ID in {connectionId}. To look up a connection ID, use `GET /sites/{siteId}/connections`, where `siteId` is your target Edge site.","responses":{"204":{"description":"Success"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteOrConnectionNotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Partially update a connection

> Partially updates an existing data source connection. Only the fields provided in the request body are\
> changed; all omitted fields — including secrets — keep their current values.\
> \
> Merge semantics are additive:\
> \* Scalar fields are replaced with the provided value.\
> \* \`parameters\` maps are merged by key — provided keys are added or updated, other keys are preserved.\
> \* Object fields (e.g. \`auth\`, \`driver\`) are merged recursively. The \`type\` discriminator must be provided\
> &#x20; on every object supplied in the request and must match the existing value. Switching the connection type,\
> &#x20; the authentication type, or the driver type requires a full replace (\`PUT\`).\
> \* List fields (e.g. \`additionalClasspathFiles\`) are appended to; duplicate values are ignored.\
> \* Nothing can be deleted with this operation. To remove a field, a map key, or a list element, use \`PUT\`.\
> \
> To rotate a secret, provide a new value for it (e.g. send \`auth.password\` alone); omitted secrets are\
> preserved. Switching a value between an inline value and a vault reference is not supported via PATCH —\
> use \`PUT\`.\
> \
> Supplying \`name\` renames the connection. The \`edgeSiteId\` field is set at creation time and cannot be\
> changed; it is ignored if included in the request body.<br>

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"schemas":{"ConnectionPatch":{"type":"object","description":"Request body for partially updating a data source connection. All fields are optional; omitted fields keep their current values. Merge semantics are additive: scalar values are replaced, `parameters` maps are merged by key, object fields are merged recursively, and list fields are appended to (duplicates are ignored). Nothing can be deleted with this operation — use the full-replace PUT instead. The `type` discriminator on the connection, on its authentication configuration, and on any other discriminated sub-object such as `driver` must match the existing value — switching types requires a full-replace PUT. Supplying `name` renames the connection. `edgeSiteId` is set at creation and cannot be changed; it is ignored if included in the request body.\n","properties":{"name":{"type":"string","pattern":"^[a-zA-Z0-9_.-]+$","maxLength":255},"description":{"type":"string","maxLength":4000},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"properties":{"$ref":"#/components/schemas/ConnectionPropertiesPatch"}}},"ConnectionPropertiesPatch":{"description":"Partial update of connection properties. The `type` discriminator is always required and must match the existing connection type; all other fields are optional and keep their current values when omitted.\n","oneOf":[{"$ref":"#/components/schemas/ConnectionAwsPatch"},{"$ref":"#/components/schemas/ConnectionAzurePatch"},{"$ref":"#/components/schemas/ConnectionDatabricksPatch"},{"$ref":"#/components/schemas/ConnectionDbtPatch"},{"$ref":"#/components/schemas/ConnectionGcpPatch"},{"$ref":"#/components/schemas/ConnectionGitPatch"},{"$ref":"#/components/schemas/ConnectionHttpPatch"},{"$ref":"#/components/schemas/ConnectionIicsPatch"},{"$ref":"#/components/schemas/ConnectionJdbcPatch"},{"$ref":"#/components/schemas/ConnectionLocalStoragePatch"},{"$ref":"#/components/schemas/ConnectionLookerPatch"},{"$ref":"#/components/schemas/ConnectionMatillionPatch"},{"$ref":"#/components/schemas/ConnectionMicroStrategyPatch"},{"$ref":"#/components/schemas/ConnectionMlflowPatch"},{"$ref":"#/components/schemas/ConnectionPowerBIPatch"},{"$ref":"#/components/schemas/ConnectionS3CompatiblePatch"},{"$ref":"#/components/schemas/ConnectionSapAICorePatch"},{"$ref":"#/components/schemas/ConnectionSapDatasphereCatalogPatch"},{"$ref":"#/components/schemas/ConnectionSigmaPatch"},{"$ref":"#/components/schemas/ConnectionSnowflakePatch"},{"$ref":"#/components/schemas/ConnectionSsrsPatch"},{"$ref":"#/components/schemas/ConnectionTableauPatch"},{"$ref":"#/components/schemas/ConnectionThoughtSpotPatch"}],"discriminator":{"propertyName":"type","mapping":{"ConnectionAws":"#/components/schemas/ConnectionAwsPatch","ConnectionAzure":"#/components/schemas/ConnectionAzurePatch","ConnectionDatabricks":"#/components/schemas/ConnectionDatabricksPatch","ConnectionDbt":"#/components/schemas/ConnectionDbtPatch","ConnectionGcp":"#/components/schemas/ConnectionGcpPatch","ConnectionGit":"#/components/schemas/ConnectionGitPatch","ConnectionHttp":"#/components/schemas/ConnectionHttpPatch","ConnectionIics":"#/components/schemas/ConnectionIicsPatch","ConnectionJdbc":"#/components/schemas/ConnectionJdbcPatch","ConnectionLocalStorage":"#/components/schemas/ConnectionLocalStoragePatch","ConnectionLooker":"#/components/schemas/ConnectionLookerPatch","ConnectionMatillion":"#/components/schemas/ConnectionMatillionPatch","ConnectionMicroStrategy":"#/components/schemas/ConnectionMicroStrategyPatch","ConnectionMlflow":"#/components/schemas/ConnectionMlflowPatch","ConnectionPowerBI":"#/components/schemas/ConnectionPowerBIPatch","ConnectionS3Compatible":"#/components/schemas/ConnectionS3CompatiblePatch","ConnectionSapAICore":"#/components/schemas/ConnectionSapAICorePatch","ConnectionSapDatasphereCatalog":"#/components/schemas/ConnectionSapDatasphereCatalogPatch","ConnectionSigma":"#/components/schemas/ConnectionSigmaPatch","ConnectionSnowflake":"#/components/schemas/ConnectionSnowflakePatch","ConnectionSsrs":"#/components/schemas/ConnectionSsrsPatch","ConnectionTableau":"#/components/schemas/ConnectionTableauPatch","ConnectionThoughtSpot":"#/components/schemas/ConnectionThoughtSpotPatch"}}},"ConnectionAwsPatch":{"title":"AWS Connection Patch","type":"object","description":"Partial update for an AWS connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionAws$","description":"Discriminator for AWS connection. Must match the existing connection type."},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthAwsPatch"},"parameters":{"description":"Parameters to add or update, merged by key. Existing keys not present in the request are preserved.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}},"required":["type"]},"AuthAwsPatch":{"title":"AWS Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAwsEc2"},{"$ref":"#/components/schemas/AuthAwsIamPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthAwsEc2":"#/components/schemas/AuthAwsEc2","AuthAwsIam":"#/components/schemas/AuthAwsIamPatch"}}},"AuthAwsEc2":{"title":"AWS EC2 Instance Profile Authentication","type":"object","description":"Authenticate via the IAM role attached to the EC2 instance running the Edge site. No credentials are configured on the connection.","properties":{"type":{"type":"string","pattern":"^AuthAwsEc2$"}},"required":["type"]},"AuthAwsIamPatch":{"title":"AWS IAM Authentication Patch","type":"object","description":"Partial update for AWS IAM authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthAwsIam$"},"awsAccessKeyId":{"description":"AWS Access Key ID","$ref":"#/components/schemas/ParameterString"},"awsSecretKey":{"description":"AWS Secret Access Key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ParameterString":{"description":"String value that is a plain text value or a vault secret that resolves to a string value.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueString":{"title":"String Value","type":"object","required":["type","value"],"properties":{"type":{"type":"string","pattern":"^ValueString$"},"value":{"type":"string","minLength":1,"maxLength":4000,"pattern":".*\\S.*"}},"description":"Contains a series of characters that comprises a string value."},"ValueVaultString":{"title":"VaultStringReference","description":"Reference to a vault-stored secret that resolves to a string value. Use this instead of `ValueString` when the value should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultString$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"VaultKeys":{"title":"Vault Keys","description":"Vault reference parameter for HashiCorp, CyberArk, AWS Secrets Manager, Azure Key Vault and Google Secret Manager.","type":"object","oneOf":[{"$ref":"#/components/schemas/VaultKeyAWSSecretsManager"},{"$ref":"#/components/schemas/VaultKeyAzureKeyVaultSecret"},{"$ref":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery"},{"$ref":"#/components/schemas/VaultKeyGCPSecretManager"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultDatabase"},{"$ref":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}],"discriminator":{"propertyName":"type","mapping":{"VaultKeyAWSSecretsManager":"#/components/schemas/VaultKeyAWSSecretsManager","VaultKeyAzureKeyVaultSecret":"#/components/schemas/VaultKeyAzureKeyVaultSecret","VaultKeyCyberArkCredentialProviderQuery":"#/components/schemas/VaultKeyCyberArkCredentialProviderQuery","VaultKeyGCPSecretManager":"#/components/schemas/VaultKeyGCPSecretManager","VaultKeyHashiCorpVaultDatabase":"#/components/schemas/VaultKeyHashiCorpVaultDatabase","VaultKeyHashiCorpVaultKeyValue":"#/components/schemas/VaultKeyHashiCorpVaultKeyValue"}}},"VaultKeyAWSSecretsManager":{"title":"AWS Secrets Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAWSSecretsManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The name of the secret in your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"Required only when the secret stored in AWS Secrets Manager is a JSON object; it selects which JSON key to use.\n\nFor example, if the secret is `{\"pass1\": \"my-password\", \"pass2\": \"my-password2\"}` and you want the value of `pass1`, set `secretName` to the AWS secret name (e.g. `edge-db-customer`) and `field` to `pass1`.\n\nLeave `field` empty when the secret is stored as a plain string value.\n"}}},"VaultKeyAzureKeyVaultSecret":{"title":"Azure Key Vault Secret Reference","type":"object","required":["type","secretName","vaultName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyAzureKeyVaultSecret$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."},"vaultName":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the Azure Key Vault that contains the secret."}}},"VaultKeyCyberArkCredentialProviderQuery":{"title":"CyberArk Credential Provider Query Reference","type":"object","required":["type","query"],"properties":{"type":{"type":"string","pattern":"^VaultKeyCyberArkCredentialProviderQuery$"},"query":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The query must be a string containing the properties required to identify the secret. Each property must be separated by a semicolon (`;`).\n\nFor example: `Safe=<SafeName>;Folder=<FolderName>;Object=<ObjectName>`\n\nIf a property is a folder with sub-folders, use a backslash (`\\`) to define the folder path. For example: `Folder=Root\\Top Secrets\\More Secrets`\n"}}},"VaultKeyGCPSecretManager":{"title":"Google Cloud Secret Manager Reference","type":"object","required":["type","secretName"],"properties":{"type":{"type":"string","pattern":"^VaultKeyGCPSecretManager$"},"secretName":{"type":"string","pattern":".*\\S.*","maxLength":256,"description":"The name of the secret in your vault where the value is stored."}}},"VaultKeyHashiCorpVaultDatabase":{"title":"HashiCorp Vault Database Reference","type":"object","required":["type","enginePath","role","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultDatabase$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"role":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"If your Secret Engine Type is Database, enter the role specified in the Database engine."},"field":{"type":"string","pattern":"^(username|password)$","description":"Allowed values: username, password"}}},"VaultKeyHashiCorpVaultKeyValue":{"title":"HashiCorp Key-Value Secret Reference","type":"object","required":["type","enginePath","secretPath","field"],"properties":{"type":{"type":"string","pattern":"^VaultKeyHashiCorpVaultKeyValue$"},"enginePath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The engine path to your vault where the value is stored."},"secretPath":{"type":"string","pattern":".*\\S.*","maxLength":100,"description":"The secret path to your vault where the value is stored."},"field":{"type":"string","pattern":".*\\S.*","maxLength":128,"description":"The name of the field in the HashiCorp Key-Value secret whose value should be retrieved."}}},"ParameterSecretString":{"description":"A secret string value that is a plain text value, a redacted value from reading a secret stored on an Edge site, or a string value retrieved from a vault.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueRedacted":"#/components/schemas/ValueRedacted","ValueString":"#/components/schemas/ValueString","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueRedacted":{"title":"Redacted Value","description":"Returned when a secret value is stored on the Edge site and is not accessible via the API. On create and update, use ValueString to set the value. To clear an existing secret, omit the field from the request body.\n","type":"object","required":["type"],"properties":{"type":{"type":"string","pattern":"^ValueRedacted$"}}},"ParameterGenericMap":{"type":"object","description":"Map of parameters for connections used to pass additional configuration.","additionalProperties":{"$ref":"#/components/schemas/ParameterGeneric"}},"ParameterGeneric":{"title":"Generic Parameter","description":"A parameter value for use in a data source connection parameter configuration.","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueRedacted"},{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueString"},{"$ref":"#/components/schemas/ValueVaultArtifact"},{"$ref":"#/components/schemas/ValueVaultString"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueRedacted":"#/components/schemas/ValueRedacted","ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueString":"#/components/schemas/ValueString","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact","ValueVaultString":"#/components/schemas/ValueVaultString"}}},"ValueEdgeArtifactId":{"title":"Edge Artifact ID","description":"References a non-sensitive artifact stored on the Collibra instance and uploaded via `POST /artifacts`. Use for files such as SSL certificates and driver libraries.\n","type":"object","required":["type","edgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueEdgeArtifactId$"},"edgeArtifactId":{"type":"string","format":"uuid","description":"Reference id of the artifact uploaded via `POST /artifacts`."}}},"ValueSecretEdgeArtifactId":{"title":"Secret Edge Artifact ID","description":"References a secret artifact stored on the Edge site and uploaded via `POST /sites/{siteId}/secretArtifacts`. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts. Each secret artifact can only be referenced by a single connection and cannot be reused.\n","type":"object","required":["type","secretEdgeArtifactId"],"properties":{"type":{"type":"string","pattern":"^ValueSecretEdgeArtifactId$"},"secretEdgeArtifactId":{"type":"string","maxLength":512,"description":"The `id` value returned by `POST /sites/{siteId}/secretArtifacts`.\n"}}},"ValueVaultArtifact":{"title":"VaultArtifactReference","description":"Reference to a vault-stored secret that resolves to a file artifact. Use this instead of `EdgeArtifact` when the file should be retrieved from a vault at runtime.","type":"object","properties":{"type":{"type":"string","pattern":"^ValueVaultArtifact$"},"key":{"$ref":"#/components/schemas/VaultKeys"}},"required":["type","key"]},"ConnectionAzurePatch":{"title":"Azure Connection Patch","type":"object","description":"Partial update for an Azure connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionAzure$","description":"Discriminator for Azure connection. Must match the existing connection type."},"usGovernmentCloudHost":{"description":"Indicates whether Azure US Government Cloud is the host for Microsoft Entra","type":"boolean"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthAzurePatch"}},"required":["type"]},"AuthAzurePatch":{"title":"Azure Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAzureServicePrincipalPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthAzureServicePrincipal":"#/components/schemas/AuthAzureServicePrincipalPatch"}}},"AuthAzureServicePrincipalPatch":{"title":"Azure Service Principal Authentication Patch","type":"object","description":"Partial update for Azure service principal authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthAzureServicePrincipal$"},"clientId":{"description":"The ID of the Service Principal used to connect to Azure","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"The Secret Key for the Service Principal","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"The Tenant ID of your Azure Active Directory","$ref":"#/components/schemas/ParameterString"}},"required":["type"]},"ConnectionDatabricksPatch":{"title":"Databricks Connection Patch","type":"object","description":"Partial update for a Databricks connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionDatabricks$","description":"Discriminator for Databricks connection. Must match the existing connection type."},"workspaceUrl":{"description":"Workspace URL on Databricks.","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthDatabricksPatch"}},"required":["type"]},"AuthDatabricksPatch":{"title":"Databricks Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsPatch"},{"$ref":"#/components/schemas/AuthDatabricksEntraIdPatch"},{"$ref":"#/components/schemas/AuthTokenPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentialsPatch","AuthDatabricksEntraId":"#/components/schemas/AuthDatabricksEntraIdPatch","AuthToken":"#/components/schemas/AuthTokenPatch"}}},"AuthClientCredentialsPatch":{"title":"Client Credentials Authentication Patch","type":"object","description":"Partial update for client credentials (client ID + secret) authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentials$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"AuthDatabricksEntraIdPatch":{"title":"Databricks Microsoft Entra ID Authentication Patch","type":"object","description":"Partial update for Microsoft Entra ID (Azure AD) authentication for Databricks. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthDatabricksEntraId$"},"clientId":{"description":"Client ID of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"Tenant ID for Microsoft Entra ID authentication.","$ref":"#/components/schemas/ParameterString"}},"required":["type"]},"AuthTokenPatch":{"title":"Token Authentication Patch","type":"object","description":"Partial update for single-token authentication.","properties":{"type":{"type":"string","pattern":"^AuthToken$"},"token":{"description":"Token value for authentication.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionDbtPatch":{"title":"DBT Connection Patch","type":"object","description":"Partial update for a dbt connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionDbt$","description":"Discriminator for dbt Connection. Must match the existing connection type."},"adminUrl":{"description":"dbt admin api URL","$ref":"#/components/schemas/ParameterString"},"metadataUrl":{"description":"dbt metadata URL","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthDbtPatch"}},"required":["type"]},"AuthDbtPatch":{"title":"DBT Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthDbtTokenPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthDbtToken":"#/components/schemas/AuthDbtTokenPatch"}}},"AuthDbtTokenPatch":{"title":"DBT Token Authentication Patch","type":"object","description":"Partial update for dbt token authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthDbtToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenValue":{"description":"Value of the service/account token (the copied value from dbt cloud)","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionGcpPatch":{"title":"GCP Connection Patch","type":"object","description":"Partial update for a GCP connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionGcp$","description":"Discriminator for GCP Connection. Must match the existing connection type."},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthGcpPatch"},"parameters":{"description":"Parameters to add or update, merged by key. Existing keys not present in the request are preserved.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}},"required":["type"]},"AuthGcpPatch":{"title":"GCP Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGcpServiceAccountPatch"},{"$ref":"#/components/schemas/AuthGcpWifGke"},{"$ref":"#/components/schemas/AuthGcpWifPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthGcpServiceAccount":"#/components/schemas/AuthGcpServiceAccountPatch","AuthGcpWif":"#/components/schemas/AuthGcpWifPatch","AuthGcpWifGke":"#/components/schemas/AuthGcpWifGke"}}},"AuthGcpServiceAccountPatch":{"title":"GCP Service Account Authentication Patch","type":"object","description":"Partial update for GCP service account authentication.","properties":{"type":{"type":"string","pattern":"^AuthGcpServiceAccount$"},"credentialsJson":{"description":"Full JSON key for the service account","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"AuthGcpWifGke":{"title":"GCP Workload Identity Federation (WIF) using GKE Authentication","type":"object","description":"Workload Identity Federation (WIF) using GKE - credentials from GKE, leave blank","properties":{"type":{"type":"string","pattern":"^AuthGcpWifGke$"}},"required":["type"]},"AuthGcpWifPatch":{"title":"GCP Workload Identity Federation (WIF) Authentication Patch","type":"object","description":"Partial update for GCP Workload Identity Federation (WIF) authentication.","properties":{"type":{"type":"string","pattern":"^AuthGcpWif$"},"tokenOrTokenUrl":{"description":"Token URL or token for WIF","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionGitPatch":{"title":"Git Connection Patch","type":"object","description":"Partial update for a Git connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionGit$","description":"Discriminator for Git connection. Must match the existing connection type."},"repositoryUrl":{"description":"HTTPS URL of the Git repository root, e.g. https://github.com/org/repo.git","$ref":"#/components/schemas/ParameterString"},"subfolder":{"description":"Path to a specific subfolder within the repository, e.g. src or projects/analytics.","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthGitPatch"}},"required":["type"]},"AuthGitPatch":{"title":"Git Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGitAccessTokenPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthGitAccessToken":"#/components/schemas/AuthGitAccessTokenPatch"}}},"AuthGitAccessTokenPatch":{"title":"Git Access Token Authentication Patch","type":"object","description":"Partial update for Git access token authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthGitAccessToken$"},"username":{"description":"Username for authentication. Required for Bitbucket repositories.","$ref":"#/components/schemas/ParameterString"},"accessToken":{"description":"Personal access token for authenticating with the Git repository.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionHttpPatch":{"title":"HTTP Connection Patch","type":"object","description":"Partial update for an HTTP connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionHttp$","description":"Discriminator for HTTP connection. Must match the existing connection type."},"host":{"description":"The protocol and domain name of the server to connect to, for example, https://api.example.com","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthHttpPatch"},"testConnectionPath":{"description":"The path for testing this connection with a GET call, for example, /v1/health.","$ref":"#/components/schemas/ParameterString"}},"required":["type"]},"AuthHttpPatch":{"title":"HTTP Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthNone"},{"$ref":"#/components/schemas/AuthOAuth2Patch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthNone":"#/components/schemas/AuthNone","AuthOAuth2":"#/components/schemas/AuthOAuth2Patch"}}},"AuthBasicPatch":{"title":"Basic Authentication Patch","type":"object","description":"Partial update for basic authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthBasic$"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"password":{"description":"Password","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"AuthNone":{"title":"No Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthNone$"}},"required":["type"]},"AuthOAuth2Patch":{"title":"OAuth 2.0 Authentication Patch","type":"object","description":"Partial update for OAuth 2.0 authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthOAuth2$"},"clientId":{"description":"Client id","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"accessTokenUri":{"description":"Access token URI","$ref":"#/components/schemas/ParameterString"},"scopes":{"description":"Scopes","$ref":"#/components/schemas/ParameterString"}},"required":["type"]},"ConnectionIicsPatch":{"title":"Informatica Intelligent Cloud Services (IICS) Connection Patch","type":"object","description":"Partial update for an IICS connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionIics$","description":"Discriminator for Informatica Intelligent Cloud Services (IICS) Connection. Must match the existing connection type."},"url":{"description":"IICS Url","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthIicsPatch"}},"required":["type"]},"AuthIicsPatch":{"title":"IICS Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch"}}},"ConnectionJdbcPatch":{"title":"JDBC Connection Patch","type":"object","description":"Partial update for a JDBC connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionJdbc$","description":"Discriminator for JDBC connection types. Must match the existing connection type."},"driver":{"description":"Partial update of the JDBC driver configuration. The driver type cannot be changed.","$ref":"#/components/schemas/JdbcDriverPatch"},"connectionString":{"$ref":"#/components/schemas/ParameterString","description":"JDBC connection string, e.g. \"jdbc:mysql://localhost:3306/mydb\""},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthJdbcPatch"},"parameters":{"description":"Parameters to add or update, merged by key. Existing keys not present in the request are preserved.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}},"required":["type"]},"JdbcDriverPatch":{"type":"object","description":"Partial update of the JDBC driver configuration. The driver type cannot be changed.","oneOf":[{"$ref":"#/components/schemas/JdbcDriverDirectPatch"}],"discriminator":{"propertyName":"type","mapping":{"JdbcDriverDirect":"#/components/schemas/JdbcDriverDirectPatch"}}},"JdbcDriverDirectPatch":{"title":"Direct JDBC Driver Patch","type":"object","description":"Partial update for a direct JDBC driver. Omitted fields keep their current values. `additionalClasspathFiles` entries are appended to the existing list; duplicate values are ignored.\n","properties":{"type":{"type":"string","pattern":"^JdbcDriverDirect$"},"className":{"type":"string","description":"Fully qualified class name of the JDBC driver (e.g. \"org.postgresql.Driver\", \"com.mysql.cj.jdbc.Driver\", etc.).","maxLength":100,"pattern":"^[a-zA-Z0-9._$]+$"},"jar":{"type":"string","format":"uuid","description":"Reference id of the driver jar uploaded via `POST /drivers/jars`"},"additionalClasspathFiles":{"type":"array","maxItems":10,"items":{"type":"string","format":"uuid","description":"Reference id of a driver jar or native library uploaded via `POST /drivers/jars` or `POST /drivers/nativeLibs`"}}},"required":["type"]},"AuthJdbcPatch":{"title":"JDBC Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthNone"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthNone":"#/components/schemas/AuthNone"}}},"ConnectionLocalStoragePatch":{"title":"Shared Storage Connection Patch","type":"object","description":"Partial update for a shared storage connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionLocalStorage$","description":"Discriminator for shared storage connection. Must match the existing connection type."},"folder":{"description":"--target as specified in ./edgecli object folder-upload","type":"string","pattern":"^[\\w-]+$"}},"required":["type"]},"ConnectionLookerPatch":{"title":"Looker Connection Patch","type":"object","description":"Partial update for a Looker connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionLooker$","description":"Discriminator for Looker Connection. Must match the existing connection type."},"url":{"description":"Looker URL","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthLookerPatch"}},"required":["type"]},"AuthLookerPatch":{"title":"Looker Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentialsPatch"}}},"ConnectionMatillionPatch":{"title":"Matillion Connection Patch","type":"object","description":"Partial update for a Matillion connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionMatillion$","description":"Discriminator for Matillion Connection. Must match the existing connection type."},"url":{"description":"Matillion Url","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthMatillionPatch"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type"]},"AuthMatillionPatch":{"title":"Matillion Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthTokenPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthToken":"#/components/schemas/AuthTokenPatch"}}},"ParameterEdgeArtifact":{"description":"References a non-sensitive artifact stored on the customer's Collibra Platform instance. Use for SSL certificates, driver libraries, and other files that do not need to stay within the customer's Edge site.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueEdgeArtifactId":"#/components/schemas/ValueEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"ConnectionMicroStrategyPatch":{"title":"MicroStrategy Connection Patch","type":"object","description":"Partial update for a MicroStrategy connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionMicroStrategy$","description":"Discriminator for MicroStrategy Connection. Must match the existing connection type."},"url":{"description":"MicroStrategy URL","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthMicroStrategyPatch"}},"required":["type"]},"AuthMicroStrategyPatch":{"title":"MicroStrategy Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthTokenPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthToken":"#/components/schemas/AuthTokenPatch"}}},"ConnectionMlflowPatch":{"title":"MLflow Connection Patch","type":"object","description":"Partial update for an MLflow connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionMlflow$","description":"Discriminator for MLflow connection. Must match the existing connection type."},"url":{"description":"MLflow URL","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthMlflowPatch"}},"required":["type"]},"AuthMlflowPatch":{"title":"MLflow Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrlPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrlPatch"}}},"AuthClientCredentialsWithTokenUrlPatch":{"title":"Client Credentials with Token URL Authentication Patch","type":"object","description":"Partial update for OAuth client credentials with token URL authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentialsWithTokenUrl$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"tokenUrl":{"description":"The token URL of the OAuth client","$ref":"#/components/schemas/ParameterString"}},"required":["type"]},"ConnectionPowerBIPatch":{"title":"Power BI Connection Patch","type":"object","description":"Partial update for a Power BI (SaaS) connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionPowerBI$","description":"Discriminator for PowerBI Connection. Must match the existing connection type."},"tenantDomain":{"description":"Tenant Domain","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthPowerBIPatch"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type"]},"AuthPowerBIPatch":{"title":"Power BI Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthPowerBIResourceOwnerPasswordPatch"},{"$ref":"#/components/schemas/AuthPowerBIServicePrincipalPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthPowerBIResourceOwnerPassword":"#/components/schemas/AuthPowerBIResourceOwnerPasswordPatch","AuthPowerBIServicePrincipal":"#/components/schemas/AuthPowerBIServicePrincipalPatch"}}},"AuthPowerBIResourceOwnerPasswordPatch":{"title":"Power BI Resource Owner Password Credentials Authentication Patch","type":"object","description":"Partial update for Power BI resource owner password credentials authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthPowerBIResourceOwnerPassword$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"passwordSecretKey":{"description":"Password/Secret key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"AuthPowerBIServicePrincipalPatch":{"title":"Power BI Service Principal Authentication Patch","type":"object","description":"Partial update for Power BI service principal authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthPowerBIServicePrincipal$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret for the service principal","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionS3CompatiblePatch":{"title":"S3-Compatible Connection Patch","type":"object","description":"Partial update for an S3-compatible connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionS3Compatible$","description":"Discriminator for S3-Compatible connection. Must match the existing connection type."},"endpoint":{"description":"URL of the S3-compatible storage endpoint, e.g. https://minio.example.com","$ref":"#/components/schemas/ParameterString"},"region":{"description":"Region identifier for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthS3CompatiblePatch"}},"required":["type"]},"AuthS3CompatiblePatch":{"title":"S3-Compatible Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthS3CompatibleAccessKeyPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthS3CompatibleAccessKey":"#/components/schemas/AuthS3CompatibleAccessKeyPatch"}}},"AuthS3CompatibleAccessKeyPatch":{"title":"S3-Compatible Access Key Authentication Patch","type":"object","description":"Partial update for S3-compatible access key authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthS3CompatibleAccessKey$"},"accessKeyId":{"description":"Access key ID for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"secretAccessKey":{"description":"Secret access key for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionSapAICorePatch":{"title":"SAP AI Core Connection Patch","type":"object","description":"Partial update for an SAP AI Core connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionSapAICore$","description":"Discriminator for SAP AI Core connection. Must match the existing connection type."},"url":{"description":"SAP AI Core URL","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthSapAICorePatch"}},"required":["type"]},"AuthSapAICorePatch":{"title":"SAP AI Core Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrlPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrlPatch"}}},"ConnectionSapDatasphereCatalogPatch":{"title":"SAP Datasphere Catalog Connection Patch","type":"object","description":"Partial update for an SAP Datasphere Catalog connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionSapDatasphereCatalog$","description":"Discriminator for SAP Datasphere Catalog connection. Must match the existing connection type."},"url":{"description":"SAP Datasphere Catalog URL","$ref":"#/components/schemas/ParameterString"},"datasphereCatalogAuth":{"description":"Partial update of the OAuth client credentials for ingesting the SAP Datasphere Catalog.","$ref":"#/components/schemas/AuthSapDatasphereCatalogPatch"},"dataProductsAuth":{"description":"Partial update of the OAuth client credentials for ingesting SAP Data Products.","$ref":"#/components/schemas/AuthClientCredentialsPatch"}},"required":["type"]},"AuthSapDatasphereCatalogPatch":{"title":"SAP Datasphere Catalog Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrlPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrlPatch"}}},"ConnectionSigmaPatch":{"title":"Sigma Connection Patch","type":"object","description":"Partial update for a Sigma connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionSigma$","description":"Discriminator for Sigma connection. Must match the existing connection type."},"url":{"description":"Sigma instance base URL, e.g. https://aws-api.sigmacomputing.com","$ref":"#/components/schemas/ParameterString"},"tenantUrl":{"description":"Tenant-specific URL, e.g. https://app.sigmacomputing.com/your-tenant","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthSigmaPatch"}},"required":["type"]},"AuthSigmaPatch":{"title":"Sigma Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentialsPatch"}}},"ConnectionSnowflakePatch":{"title":"Snowflake Connection Patch","type":"object","description":"Partial update for a Snowflake connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionSnowflake$","description":"Discriminator for Snowflake connection. Must match the existing connection type."},"account":{"description":"The Account Identifier for the Snowflake account. This often includes cloud region information (e.g., xy123456.eu-central-1).","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthSnowflakePatch"},"role":{"description":"The role to use in the Snowflake session.","$ref":"#/components/schemas/ParameterString"},"warehouse":{"description":"The name of the Snowflake warehouse. Defaults to the user's default warehouse if not specified.","$ref":"#/components/schemas/ParameterString"}},"required":["type"]},"AuthSnowflakePatch":{"title":"Snowflake Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthSnowflakeKeyPairPatch"},{"$ref":"#/components/schemas/AuthSnowflakePatPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthSnowflakeKeyPair":"#/components/schemas/AuthSnowflakeKeyPairPatch","AuthSnowflakePat":"#/components/schemas/AuthSnowflakePatPatch"}}},"AuthSnowflakeKeyPairPatch":{"title":"Snowflake Key Pair Authentication Patch","type":"object","description":"Partial update for Snowflake key pair authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakeKeyPair$"},"username":{"description":"The username to authenticate against the Snowflake account.","$ref":"#/components/schemas/ParameterString"},"privateKeyEdgeArtifact":{"description":"The private key artifact in P8 format for key pair authentication.","$ref":"#/components/schemas/ParameterSecretEdgeArtifact"},"privateKeyPwd":{"description":"The passphrase for the private key, if it is encrypted.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ParameterSecretEdgeArtifact":{"description":"References a sensitive artifact stored on the Edge site. The file content never leaves the Edge site cluster. Use for private keys and other sensitive artifacts.\n","type":"object","oneOf":[{"$ref":"#/components/schemas/ValueSecretEdgeArtifactId"},{"$ref":"#/components/schemas/ValueVaultArtifact"}],"discriminator":{"propertyName":"type","mapping":{"ValueSecretEdgeArtifactId":"#/components/schemas/ValueSecretEdgeArtifactId","ValueVaultArtifact":"#/components/schemas/ValueVaultArtifact"}}},"AuthSnowflakePatPatch":{"title":"Snowflake Programmatic Access Token Authentication Patch","type":"object","description":"Partial update for Snowflake Programmatic Access Token (PAT) authentication.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakePat$"},"programmaticAccessToken":{"description":"Programmatic Access Token generated in Snowflake.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionSsrsPatch":{"title":"Microsoft SSRS/PBRS Connection Patch","type":"object","description":"Partial update for a Microsoft SSRS/PBRS connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionSsrs$","description":"Discriminator for Microsoft SSRS/PBRS Connection. Must match the existing connection type."},"url":{"description":"Microsoft SSRS/PBRS URL","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthSsrsPatch"}},"required":["type"]},"AuthSsrsPatch":{"title":"SSRS Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch"}}},"ConnectionTableauPatch":{"title":"Tableau Connection Patch","type":"object","description":"Partial update for a Tableau connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionTableau$","description":"Discriminator for Tableau Connection. Must match the existing connection type."},"url":{"description":"URL of the Tableau Server or Tableau Cloud site to connect to.","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthTableauPatch"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type"]},"AuthTableauPatch":{"title":"Tableau Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"},{"$ref":"#/components/schemas/AuthTableauTokenPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch","AuthTableauToken":"#/components/schemas/AuthTableauTokenPatch"}}},"AuthTableauTokenPatch":{"title":"Tableau Token Authentication Patch","type":"object","description":"Partial update for Tableau token authentication. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^AuthTableauToken$"},"tokenName":{"description":"Token name","$ref":"#/components/schemas/ParameterString"},"tokenSecret":{"description":"Token secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type"]},"ConnectionThoughtSpotPatch":{"title":"ThoughtSpot Connection Patch","type":"object","description":"Partial update for a ThoughtSpot connection. Omitted fields keep their current values.","properties":{"type":{"type":"string","pattern":"^ConnectionThoughtSpot$","description":"Discriminator for ThoughtSpot connection. Must match the existing connection type."},"url":{"description":"ThoughtSpot instance base URL, e.g. https://customer.thoughtspot.cloud","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Partial update of the authentication configuration. The authentication type cannot be changed.","$ref":"#/components/schemas/AuthThoughtSpotPatch"}},"required":["type"]},"AuthThoughtSpotPatch":{"title":"ThoughtSpot Authentication Patch","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasicPatch"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasicPatch"}}},"ConnectionResponse":{"type":"object","required":["id","name","edgeSiteId","properties","createdOn","lastModifiedOn","testConnectionSupported"],"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"edgeSiteId":{"type":"string","format":"uuid"},"vaultId":{"type":"string","format":"uuid","description":"Associated vault id, if configured"},"createdOn":{"type":"string","format":"date-time"},"lastModifiedOn":{"type":"string","format":"date-time"},"testConnectionSupported":{"type":"boolean","readOnly":true,"description":"Indicates whether this connection type supports the test connection operation. Only connections with `testConnectionSupported: true` can be used with `POST /sites/{siteId}/connections/{connectionId}/test`.\n"},"properties":{"$ref":"#/components/schemas/ConnectionProperties"}},"description":"Response body for data source connection management endpoints."},"ConnectionProperties":{"oneOf":[{"$ref":"#/components/schemas/ConnectionAws"},{"$ref":"#/components/schemas/ConnectionAzure"},{"$ref":"#/components/schemas/ConnectionDatabricks"},{"$ref":"#/components/schemas/ConnectionDbt"},{"$ref":"#/components/schemas/ConnectionGcp"},{"$ref":"#/components/schemas/ConnectionGit"},{"$ref":"#/components/schemas/ConnectionHttp"},{"$ref":"#/components/schemas/ConnectionIics"},{"$ref":"#/components/schemas/ConnectionJdbc"},{"$ref":"#/components/schemas/ConnectionLocalStorage"},{"$ref":"#/components/schemas/ConnectionLooker"},{"$ref":"#/components/schemas/ConnectionMatillion"},{"$ref":"#/components/schemas/ConnectionMicroStrategy"},{"$ref":"#/components/schemas/ConnectionMlflow"},{"$ref":"#/components/schemas/ConnectionPowerBI"},{"$ref":"#/components/schemas/ConnectionS3Compatible"},{"$ref":"#/components/schemas/ConnectionSapAICore"},{"$ref":"#/components/schemas/ConnectionSapDatasphereCatalog"},{"$ref":"#/components/schemas/ConnectionSigma"},{"$ref":"#/components/schemas/ConnectionSnowflake"},{"$ref":"#/components/schemas/ConnectionSsrs"},{"$ref":"#/components/schemas/ConnectionTableau"},{"$ref":"#/components/schemas/ConnectionThoughtSpot"}],"discriminator":{"propertyName":"type","mapping":{"ConnectionAws":"#/components/schemas/ConnectionAws","ConnectionAzure":"#/components/schemas/ConnectionAzure","ConnectionDatabricks":"#/components/schemas/ConnectionDatabricks","ConnectionDbt":"#/components/schemas/ConnectionDbt","ConnectionGcp":"#/components/schemas/ConnectionGcp","ConnectionGit":"#/components/schemas/ConnectionGit","ConnectionHttp":"#/components/schemas/ConnectionHttp","ConnectionIics":"#/components/schemas/ConnectionIics","ConnectionJdbc":"#/components/schemas/ConnectionJdbc","ConnectionLocalStorage":"#/components/schemas/ConnectionLocalStorage","ConnectionLooker":"#/components/schemas/ConnectionLooker","ConnectionMatillion":"#/components/schemas/ConnectionMatillion","ConnectionMicroStrategy":"#/components/schemas/ConnectionMicroStrategy","ConnectionMlflow":"#/components/schemas/ConnectionMlflow","ConnectionPowerBI":"#/components/schemas/ConnectionPowerBI","ConnectionS3Compatible":"#/components/schemas/ConnectionS3Compatible","ConnectionSapAICore":"#/components/schemas/ConnectionSapAICore","ConnectionSapDatasphereCatalog":"#/components/schemas/ConnectionSapDatasphereCatalog","ConnectionSigma":"#/components/schemas/ConnectionSigma","ConnectionSnowflake":"#/components/schemas/ConnectionSnowflake","ConnectionSsrs":"#/components/schemas/ConnectionSsrs","ConnectionTableau":"#/components/schemas/ConnectionTableau","ConnectionThoughtSpot":"#/components/schemas/ConnectionThoughtSpot"}}},"ConnectionAws":{"type":"object","title":"AWS Connection","description":"AWS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAws$","description":"Discriminator for AWS connection"},"auth":{"$ref":"#/components/schemas/AuthAws"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthAws":{"title":"AWS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAwsEc2"},{"$ref":"#/components/schemas/AuthAwsIam"}],"discriminator":{"propertyName":"type","mapping":{"AuthAwsEc2":"#/components/schemas/AuthAwsEc2","AuthAwsIam":"#/components/schemas/AuthAwsIam"}}},"AuthAwsIam":{"title":"AWS IAM Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthAwsIam$"},"awsAccessKeyId":{"description":"AWS Access Key ID","$ref":"#/components/schemas/ParameterString"},"awsSecretKey":{"description":"AWS Secret Access Key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","awsAccessKeyId","awsSecretKey"]},"ConnectionAzure":{"type":"object","title":"Azure Connection","description":"Azure connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionAzure$","description":"Discriminator for Azure connection"},"usGovernmentCloudHost":{"description":"Indicates whether Azure US Government Cloud is the host for Microsoft Entra.","type":"boolean","default":false},"auth":{"$ref":"#/components/schemas/AuthAzure"}},"required":["type","auth"]},"AuthAzure":{"title":"Azure Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthAzureServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthAzureServicePrincipal":"#/components/schemas/AuthAzureServicePrincipal"}}},"AuthAzureServicePrincipal":{"type":"object","title":"Azure Service Principal Authentication","properties":{"type":{"type":"string","pattern":"^AuthAzureServicePrincipal$"},"clientId":{"description":"The ID of the Service Principal used to connect to Azure","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"The Secret Key for the Service Principal","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"The Tenant ID of your Azure AD","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"ConnectionDatabricks":{"type":"object","title":"Databricks Connection","description":"Databricks connection.","properties":{"type":{"type":"string","pattern":"^ConnectionDatabricks$","description":"Discriminator for Databricks connection."},"workspaceUrl":{"description":"Workspace URL on Databricks.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDatabricks"}},"required":["type","workspaceUrl","auth"]},"AuthDatabricks":{"title":"Databricks Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"},{"$ref":"#/components/schemas/AuthDatabricksEntraId"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials","AuthDatabricksEntraId":"#/components/schemas/AuthDatabricksEntraId","AuthToken":"#/components/schemas/AuthToken"}}},"AuthClientCredentials":{"title":"Client Credentials Authentication","type":"object","description":"Generic client credentials (client ID + secret) authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthClientCredentials$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","clientId","clientSecret"]},"AuthDatabricksEntraId":{"title":"Databricks Microsoft Entra ID Authentication","type":"object","description":"Microsoft Entra ID (Azure AD) authentication for Databricks.","properties":{"type":{"type":"string","pattern":"^AuthDatabricksEntraId$"},"clientId":{"description":"Client ID of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret of the Microsoft Entra ID service principal.","$ref":"#/components/schemas/ParameterSecretString"},"tenantId":{"description":"Tenant ID for Microsoft Entra ID authentication.","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tenantId"]},"AuthToken":{"title":"Token Authentication","type":"object","description":"Generic single-token authentication, reusable across connection types.","properties":{"type":{"type":"string","pattern":"^AuthToken$"},"token":{"description":"Token value for authentication.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","token"]},"ConnectionDbt":{"type":"object","title":"dbt Connection","description":"dbt connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionDbt$","description":"Discriminator for dbt Connection"},"adminUrl":{"description":"Optional dbt admin API URL. Defaults to https://cloud.getdbt.com/api/v2","$ref":"#/components/schemas/ParameterString"},"metadataUrl":{"description":"Optional dbt metadata URL. Defaults to https://metadata.cloud.getdbt.com/graphql","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthDbt"}},"required":["type","auth"]},"AuthDbt":{"title":"dbt Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthDbtToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthDbtToken":"#/components/schemas/AuthDbtToken"}}},"AuthDbtToken":{"title":"dbt Token Authentication","type":"object","description":"A dbt Cloud service token with the required permissions, used for authentication.","properties":{"type":{"type":"string","pattern":"^AuthDbtToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenValue":{"description":"Value of the service/account token (the copied value from dbt Cloud)","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenValue"]},"ConnectionGcp":{"type":"object","title":"GCP Connection","description":"GCP connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionGcp$","description":"Discriminator for GCP Connection"},"auth":{"$ref":"#/components/schemas/AuthGcp"},"parameters":{"$ref":"#/components/schemas/ParameterGenericMap"}},"required":["type","auth"]},"AuthGcp":{"title":"GCP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGcpServiceAccount"},{"$ref":"#/components/schemas/AuthGcpWif"},{"$ref":"#/components/schemas/AuthGcpWifGke"}],"discriminator":{"propertyName":"type","mapping":{"AuthGcpServiceAccount":"#/components/schemas/AuthGcpServiceAccount","AuthGcpWif":"#/components/schemas/AuthGcpWif","AuthGcpWifGke":"#/components/schemas/AuthGcpWifGke"}}},"AuthGcpServiceAccount":{"title":"GCP Service Account Authentication","type":"object","description":"GCP Service Account authentication (full JSON key)","properties":{"type":{"type":"string","pattern":"^AuthGcpServiceAccount$"},"credentialsJson":{"description":"Full JSON key for the service account","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","credentialsJson"]},"AuthGcpWif":{"title":"GCP Workload Identity Federation (WIF) Authentication","type":"object","description":"Workload Identity Federation (WIF) - token URL or token","properties":{"type":{"type":"string","pattern":"^AuthGcpWif$"},"tokenOrTokenUrl":{"description":"Token URL or token for WIF","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenOrTokenUrl"]},"ConnectionGit":{"type":"object","title":"Git Connection","description":"Connection to a Git repository\n","properties":{"type":{"type":"string","pattern":"^ConnectionGit$","description":"Discriminator for Git connection"},"repositoryUrl":{"description":"HTTPS URL of the Git repository root, e.g. https://github.com/org/repo.git","$ref":"#/components/schemas/ParameterString"},"subfolder":{"description":"Path to a specific subfolder within the repository, e.g. src or projects/analytics.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthGit"}},"required":["type","repositoryUrl","auth"]},"AuthGit":{"title":"Git Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthGitAccessToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthGitAccessToken":"#/components/schemas/AuthGitAccessToken"}}},"AuthGitAccessToken":{"title":"Git Access Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthGitAccessToken$"},"username":{"description":"Username for authentication. Required for Bitbucket repositories.","$ref":"#/components/schemas/ParameterString"},"accessToken":{"description":"Personal access token for authenticating with the Git repository.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessToken"]},"ConnectionHttp":{"type":"object","title":"HTTP Connection","description":"Allows workflows to communicate with other HTTP based systems.\n","properties":{"type":{"type":"string","pattern":"^ConnectionHttp$","description":"Discriminator for HTTP connection"},"host":{"description":"The protocol and domain name of the server to connect to, for example, https://api.example.com","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthHttp"},"testConnectionPath":{"description":"The path for testing this connection with a GET call, for example, /v1/health.","$ref":"#/components/schemas/ParameterString"}},"required":["type","host"]},"AuthHttp":{"title":"HTTP Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"},{"$ref":"#/components/schemas/AuthOAuth2"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone","AuthOAuth2":"#/components/schemas/AuthOAuth2"}}},"AuthBasic":{"title":"Basic Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthBasic$"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"password":{"description":"Password","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","password"]},"AuthOAuth2":{"title":"OAuth 2.0 Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthOAuth2$"},"clientId":{"description":"Client id","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"accessTokenUri":{"description":"Access token URI","$ref":"#/components/schemas/ParameterString"},"scopes":{"description":"Scopes","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","accessTokenUri"]},"ConnectionIics":{"type":"object","title":"Informatica Intelligent Cloud Services (IICS) Connection","description":"IICS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionIics$","description":"Discriminator for Informatica Intelligent Cloud Services (IICS) Connection"},"url":{"description":"IICS Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthIics"}},"required":["type","url","auth"]},"AuthIics":{"title":"IICS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionJdbc":{"title":"JDBC Connection","type":"object","required":["type","driver","connectionString"],"properties":{"type":{"type":"string","pattern":"^ConnectionJdbc$","description":"Discriminator for JDBC connection types."},"driver":{"$ref":"#/components/schemas/JdbcDriver"},"connectionString":{"$ref":"#/components/schemas/ParameterString","description":"JDBC connection string, e.g. \"jdbc:mysql://localhost:3306/mydb\""},"auth":{"description":"Authentication configuration. When omitted, defaults to AuthNone.","$ref":"#/components/schemas/AuthJdbc"},"parameters":{"description":"Additional JDBC connection properties, such as SSL settings, timeouts, etc. These are passed as key-value pairs in the connection string.","allOf":[{"$ref":"#/components/schemas/ParameterGenericMap"}]}}},"JdbcDriver":{"type":"object","description":"JDBC driver configuration (`JdbcDriverDirect`). Specify the driver jar, an optional classpath, and the fully qualified driver class name.","oneOf":[{"$ref":"#/components/schemas/JdbcDriverDirect"}],"discriminator":{"propertyName":"type","mapping":{"JdbcDriverDirect":"#/components/schemas/JdbcDriverDirect"}}},"JdbcDriverDirect":{"title":"Direct JDBC Driver","type":"object","properties":{"type":{"type":"string","pattern":"^JdbcDriverDirect$"},"className":{"type":"string","description":"Fully qualified class name of the JDBC driver (e.g. \"org.postgresql.Driver\", \"com.mysql.cj.jdbc.Driver\", etc.).","maxLength":100,"pattern":"^[a-zA-Z0-9._$]+$"},"jar":{"type":"string","format":"uuid","description":"Reference id of the driver jar uploaded via `POST /drivers/jars`."},"additionalClasspathFiles":{"type":"array","maxItems":10,"items":{"type":"string","format":"uuid","description":"Reference id of a driver jar or native library uploaded via `POST /drivers/jars` or `POST /drivers/nativeLibs`."}}},"required":["className","type","jar"],"description":"This schema contains the allowed configuration files that can be uploaded to set up a JDBC connection type."},"AuthJdbc":{"title":"JDBC Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthNone"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthNone":"#/components/schemas/AuthNone"}}},"ConnectionLocalStorage":{"type":"object","title":"Shared Storage Connection","description":"Read-only access to a folder located on the Edge site. Used for technical lineage ingestion via OpenLineage (AWS Glue, Apache Airflow, OpenLineage).\n","properties":{"type":{"type":"string","pattern":"^ConnectionLocalStorage$","description":"Discriminator for shared storage connection"},"folder":{"description":"--target as specified in ./edgecli object folder-upload","type":"string","pattern":"^[\\w-]+$"}},"required":["type","folder"]},"ConnectionLooker":{"type":"object","title":"Looker Connection","description":"Looker connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionLooker$","description":"Discriminator for Looker Connection"},"url":{"description":"Looker URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthLooker"}},"required":["type","url","auth"]},"AuthLooker":{"title":"Looker Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionMatillion":{"type":"object","title":"Matillion Connection","description":"Matillion connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMatillion$","description":"Discriminator for Matillion Connection"},"url":{"description":"Matillion Url","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMatillion"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthMatillion":{"title":"Matillion Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ConnectionMicroStrategy":{"type":"object","title":"MicroStrategy Connection","description":"MicroStrategy connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMicroStrategy$","description":"Discriminator for MicroStrategy Connection"},"url":{"description":"MicroStrategy URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMicroStrategy"}},"required":["type","url","auth"]},"AuthMicroStrategy":{"title":"MicroStrategy Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthToken":"#/components/schemas/AuthToken"}}},"ConnectionMlflow":{"type":"object","title":"MLflow Connection","description":"MLflow connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionMlflow$","description":"Discriminator for MLflow connection"},"url":{"description":"MLflow URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthMlflow"}},"required":["type","url","auth"]},"AuthMlflow":{"title":"MLflow Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"AuthClientCredentialsWithTokenUrl":{"title":"Client Credentials with Token URL Authentication","type":"object","description":"OAuth client credentials with token URL (client ID, secret, and token endpoint)","properties":{"type":{"type":"string","pattern":"^AuthClientCredentialsWithTokenUrl$"},"clientId":{"description":"Client ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret","$ref":"#/components/schemas/ParameterSecretString"},"tokenUrl":{"description":"The token URL of the OAuth client","$ref":"#/components/schemas/ParameterString"}},"required":["type","clientId","clientSecret","tokenUrl"]},"ConnectionPowerBI":{"type":"object","title":"Power BI Connection","description":"Power BI (SaaS) connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionPowerBI$","description":"Discriminator for Power BI Connection"},"tenantDomain":{"description":"Tenant Domain","$ref":"#/components/schemas/ParameterString"},"auth":{"description":"Authentication configuration for Power BI. Supports ServicePrincipal and ResourceOwnerPassword flows.\n","$ref":"#/components/schemas/AuthPowerBI"},"certFile":{"description":"Optional custom SSL/TLS certificate, in PEM format, used to establish a trusted HTTPS connection to the Power BI service. Provide this when the connection is routed through a proxy or gateway that presents a certificate signed by a custom or private Certificate Authority that is not trusted by default. The certificate is referenced as a non-sensitive artifact stored on the customer's Collibra Platform instance. When omitted, the system's default trusted CAs are used.\n","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","tenantDomain","auth"]},"AuthPowerBI":{"title":"Power BI Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthPowerBIResourceOwnerPassword"},{"$ref":"#/components/schemas/AuthPowerBIServicePrincipal"}],"discriminator":{"propertyName":"type","mapping":{"AuthPowerBIResourceOwnerPassword":"#/components/schemas/AuthPowerBIResourceOwnerPassword","AuthPowerBIServicePrincipal":"#/components/schemas/AuthPowerBIServicePrincipal"}}},"AuthPowerBIResourceOwnerPassword":{"title":"Power BI Resource Owner Password Credentials Authentication","type":"object","description":"Resource Owner Password Credentials authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIResourceOwnerPassword$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"username":{"description":"Username","$ref":"#/components/schemas/ParameterString"},"passwordSecretKey":{"description":"Password/Secret key","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","username","passwordSecretKey"]},"AuthPowerBIServicePrincipal":{"title":"Power BI Service Principal Authentication","type":"object","description":"Service Principal authentication for Power BI","properties":{"type":{"type":"string","pattern":"^AuthPowerBIServicePrincipal$"},"applicationId":{"description":"Application ID","$ref":"#/components/schemas/ParameterString"},"clientSecret":{"description":"Client secret for the service principal","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","applicationId","clientSecret"]},"ConnectionS3Compatible":{"type":"object","title":"S3-Compatible Connection","description":"Connection to a self-hosted or third-party S3-compatible storage service (e.g. MinIO, Ceph, NetApp StorageGRID).\n","properties":{"type":{"type":"string","pattern":"^ConnectionS3Compatible$","description":"Discriminator for S3-Compatible connection"},"endpoint":{"description":"URL of the S3-compatible storage endpoint, e.g. https://minio.example.com","$ref":"#/components/schemas/ParameterString"},"region":{"description":"Region identifier for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthS3Compatible"}},"required":["type","endpoint","auth"]},"AuthS3Compatible":{"title":"S3-Compatible Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthS3CompatibleAccessKey"}],"discriminator":{"propertyName":"type","mapping":{"AuthS3CompatibleAccessKey":"#/components/schemas/AuthS3CompatibleAccessKey"}}},"AuthS3CompatibleAccessKey":{"title":"S3-Compatible Access Key Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthS3CompatibleAccessKey$"},"accessKeyId":{"description":"Access key ID for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterString"},"secretAccessKey":{"description":"Secret access key for the S3-compatible storage service.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","accessKeyId","secretAccessKey"]},"ConnectionSapAICore":{"type":"object","title":"SAP AI Core Connection","description":"SAP AI Core connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapAICore$","description":"Discriminator for SAP AI Core connection"},"url":{"description":"SAP AI Core URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSapAICore"}},"required":["type","url","auth"]},"AuthSapAICore":{"title":"SAP AI Core Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSapDatasphereCatalog":{"type":"object","title":"SAP Datasphere Catalog Connection","description":"SAP Datasphere Catalog connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSapDatasphereCatalog$","description":"Discriminator for SAP Datasphere Catalog connection"},"url":{"description":"SAP Datasphere Catalog URL","$ref":"#/components/schemas/ParameterString"},"datasphereCatalogAuth":{"description":"OAuth client credentials for ingesting the SAP Datasphere Catalog.","$ref":"#/components/schemas/AuthSapDatasphereCatalog"},"dataProductsAuth":{"description":"Optional OAuth client credentials for ingesting SAP Data Products. When omitted, SAP Data Products are not ingested.","$ref":"#/components/schemas/AuthClientCredentials"}},"required":["type","url","datasphereCatalogAuth"]},"AuthSapDatasphereCatalog":{"title":"SAP Datasphere Catalog Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentialsWithTokenUrl":"#/components/schemas/AuthClientCredentialsWithTokenUrl"}}},"ConnectionSigma":{"type":"object","title":"Sigma Connection","description":"Sigma connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSigma$","description":"Discriminator for Sigma connection"},"url":{"description":"Sigma instance base URL, e.g. https://aws-api.sigmacomputing.com","$ref":"#/components/schemas/ParameterString"},"tenantUrl":{"description":"Tenant-specific URL, e.g. https://app.sigmacomputing.com/your-tenant","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSigma"}},"required":["type","url","tenantUrl","auth"]},"AuthSigma":{"title":"Sigma Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthClientCredentials"}],"discriminator":{"propertyName":"type","mapping":{"AuthClientCredentials":"#/components/schemas/AuthClientCredentials"}}},"ConnectionSnowflake":{"type":"object","title":"Snowflake Connection","description":"Snowflake connection.","properties":{"type":{"type":"string","pattern":"^ConnectionSnowflake$","description":"Discriminator for Snowflake connection."},"account":{"description":"The Account Identifier for the Snowflake account. This often includes cloud region information (e.g., xy123456.eu-central-1).","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSnowflake"},"role":{"description":"The role to use in the Snowflake session.","$ref":"#/components/schemas/ParameterString"},"warehouse":{"description":"The name of the Snowflake warehouse. Defaults to the user's default warehouse if not specified.","$ref":"#/components/schemas/ParameterString"}},"required":["type","account","auth"]},"AuthSnowflake":{"title":"Snowflake Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthSnowflakeKeyPair"},{"$ref":"#/components/schemas/AuthSnowflakePat"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthSnowflakeKeyPair":"#/components/schemas/AuthSnowflakeKeyPair","AuthSnowflakePat":"#/components/schemas/AuthSnowflakePat"}}},"AuthSnowflakeKeyPair":{"title":"Snowflake Key Pair Authentication","type":"object","description":"Key pair authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakeKeyPair$"},"username":{"description":"The username to authenticate against the Snowflake account.","$ref":"#/components/schemas/ParameterString"},"privateKeyEdgeArtifact":{"description":"The private key artifact in P8 format for key pair authentication.","$ref":"#/components/schemas/ParameterSecretEdgeArtifact"},"privateKeyPwd":{"description":"The passphrase for the private key, if it is encrypted.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","username","privateKeyEdgeArtifact"]},"AuthSnowflakePat":{"title":"Snowflake Programmatic Access Token Authentication","type":"object","description":"Programmatic Access Token (PAT) authentication for Snowflake.","properties":{"type":{"type":"string","pattern":"^AuthSnowflakePat$"},"programmaticAccessToken":{"description":"Programmatic Access Token generated in Snowflake.","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","programmaticAccessToken"]},"ConnectionSsrs":{"type":"object","title":"Microsoft SSRS/PBRS Connection","description":"Microsoft SSRS/PBRS connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionSsrs$","description":"Discriminator for Microsoft SSRS/PBRS Connection"},"url":{"description":"Microsoft SSRS/PBRS URL","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthSsrs"}},"required":["type","url","auth"]},"AuthSsrs":{"title":"SSRS Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ConnectionTableau":{"type":"object","title":"Tableau Connection","description":"Tableau connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionTableau$","description":"Discriminator for Tableau Connection"},"url":{"description":"URL of the Tableau Server or Tableau Cloud site.","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthTableau"},"certFile":{"description":"Custom certificate","$ref":"#/components/schemas/ParameterEdgeArtifact"}},"required":["type","url","auth"]},"AuthTableau":{"title":"Tableau Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"},{"$ref":"#/components/schemas/AuthTableauToken"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic","AuthTableauToken":"#/components/schemas/AuthTableauToken"}}},"AuthTableauToken":{"title":"Tableau Token Authentication","type":"object","properties":{"type":{"type":"string","pattern":"^AuthTableauToken$"},"tokenName":{"description":"Name of the service/account token (any unique meaningful name can be used)","$ref":"#/components/schemas/ParameterString"},"tokenSecret":{"description":"Value of the service/account token","$ref":"#/components/schemas/ParameterSecretString"}},"required":["type","tokenName","tokenSecret"]},"ConnectionThoughtSpot":{"type":"object","title":"ThoughtSpot Connection","description":"ThoughtSpot connection\n","properties":{"type":{"type":"string","pattern":"^ConnectionThoughtSpot$","description":"Discriminator for ThoughtSpot connection"},"url":{"description":"ThoughtSpot instance base URL, e.g. https://customer.thoughtspot.cloud","$ref":"#/components/schemas/ParameterString"},"auth":{"$ref":"#/components/schemas/AuthThoughtSpot"}},"required":["type","url","auth"]},"AuthThoughtSpot":{"title":"ThoughtSpot Authentication","type":"object","oneOf":[{"$ref":"#/components/schemas/AuthBasic"}],"discriminator":{"propertyName":"type","mapping":{"AuthBasic":"#/components/schemas/AuthBasic"}}},"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteOrConnectionNotFound":{"description":"Site or connection not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Conflict":{"description":"Conflict — resource is in use or already exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/sites/{siteId}/connections/{connectionId}":{"patch":{"operationId":"patchConnection","tags":["Connections"],"summary":"Partially update a connection","description":"Partially updates an existing data source connection. Only the fields provided in the request body are\nchanged; all omitted fields — including secrets — keep their current values.\n\nMerge semantics are additive:\n* Scalar fields are replaced with the provided value.\n* `parameters` maps are merged by key — provided keys are added or updated, other keys are preserved.\n* Object fields (e.g. `auth`, `driver`) are merged recursively. The `type` discriminator must be provided\n  on every object supplied in the request and must match the existing value. Switching the connection type,\n  the authentication type, or the driver type requires a full replace (`PUT`).\n* List fields (e.g. `additionalClasspathFiles`) are appended to; duplicate values are ignored.\n* Nothing can be deleted with this operation. To remove a field, a map key, or a list element, use `PUT`.\n\nTo rotate a secret, provide a new value for it (e.g. send `auth.password` alone); omitted secrets are\npreserved. Switching a value between an inline value and a vault reference is not supported via PATCH —\nuse `PUT`.\n\nSupplying `name` renames the connection. The `edgeSiteId` field is set at creation time and cannot be\nchanged; it is ignored if included in the request body.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionPatch"}}}},"responses":{"200":{"description":"Success","headers":{"Location":{"description":"URL of the updated connection.","schema":{"type":"string","format":"uri-reference"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteOrConnectionNotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```

## Test a connection

> Verifies whether a data source connection can successfully reach the target data source and returns the connectivity status. Connection types that support this operation are identified by \`testConnectionSupported: true\` on the connection response. Returns a 422 error for unsupported connection types.<br>

```json
{"openapi":"3.1.0","info":{"title":"Collibra Edge API","version":"1.0.2"},"tags":[{"name":"Connections","description":"Resource management (CRUD) for Connections."}],"servers":[{"url":"/rest/edge/v1"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"description":"Collibra REST API authentication using Basic Authentication.","scheme":"basic","type":"http"}},"schemas":{"ConnectionTestResponse":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean"},"message":{"type":"string","description":"Additional information about the test result."}},"description":"Test connection response body."},"ErrorResponse":{"type":"object","description":"Standard error response returned by the API when an operation fails.","required":["statusCode","errorCode"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code."},"titleMessage":{"type":"string","description":"Short title describing the error category."},"helpMessage":{"type":"string","description":"Additional guidance for resolving the error."},"userMessage":{"type":"string","description":"Human-readable message describing what went wrong."},"errorCode":{"type":"string","description":"Machine-readable error code for programmatic handling."}}}},"responses":{"BadRequest":{"description":"Bad request — invalid input or validation error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized — authentication is required or the provided credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Forbidden":{"description":"Forbidden — insufficient permissions.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SiteOrConnectionNotFound":{"description":"Site or connection not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"UnexpectedError":{"description":"Unexpected error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/sites/{siteId}/connections/{connectionId}/test":{"post":{"operationId":"testConnection","tags":["Connections"],"summary":"Test a connection","description":"Verifies whether a data source connection can successfully reach the target data source and returns the connectivity status. Connection types that support this operation are identified by `testConnectionSupported: true` on the connection response. Returns a 422 error for unsupported connection types.\n","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionTestResponse"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/SiteOrConnectionNotFound"},"422":{"description":"The specified connection type does not support connectivity verification. Connection types that support this operation are identified by testConnectionSupported=true on the connection response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"$ref":"#/components/responses/UnexpectedError"}}}}}}
```
