# Database Connections

## GET /api/v1/database\_connections/functionalities/

>

```json
{"openapi":"3.0.3","info":{"title":"Syntho Backend API","version":"1.0.0 (v1)"},"servers":[{"url":"/"}],"security":[{"authentication":[]},{"OIDC":[]}],"components":{"securitySchemes":{"authentication":{"type":"apiKey","in":"cookie","name":"sessionid","description":"Log in using the <a href='/api/playground/#/Auth/auth_create'>POST /api/v1/auth/</a> endpoint"},"OIDC":{"type":"apiKey","in":"header","name":"Authorization"}},"schemas":{"FunctionalityListSchema":{"properties":{"functionalities":{"anyOf":[{"items":{"$ref":"#/components/schemas/FunctionalitySchema"},"type":"array"},{"type":"null"}],"default":[],"title":"Functionalities"}},"title":"FunctionalityListSchema","type":"object"},"FunctionalitySchema":{"properties":{"name":{"anyOf":[{"$ref":"#/components/schemas/FunctionalityName"},{"type":"null"}],"default":null},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"kind":{"anyOf":[{"$ref":"#/components/schemas/FunctionalityKind"},{"type":"null"}],"default":null},"applicability":{"anyOf":[{"$ref":"#/components/schemas/FunctionalityApplicability"},{"type":"null"}],"default":null},"capabilities":{"anyOf":[{"items":{"$ref":"#/components/schemas/FunctionalityCapabilitySchema"},"type":"array"},{"type":"null"}],"default":null,"title":"Capabilities"}},"title":"FunctionalitySchema","type":"object"},"FunctionalityName":{"enum":["HIGH_PERFORMANCE_WRITING","IDEMPOTENT_WRITING"],"title":"FunctionalityName","type":"string"},"FunctionalityKind":{"enum":["ADDITIVE","PREVENTIVE"],"title":"FunctionalityKind","type":"string"},"FunctionalityApplicability":{"enum":["FULL","PARTIAL"],"title":"FunctionalityApplicability","type":"string"},"FunctionalityCapabilitySchema":{"properties":{"name":{"anyOf":[{"$ref":"#/components/schemas/FunctionalityCapabilityName"},{"type":"null"}],"default":null},"depends_on":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Depends On"}},"title":"FunctionalityCapabilitySchema","type":"object"},"FunctionalityCapabilityName":{"enum":["IDENTITY_WRITING","DATA_TRUNCATION","DATA_DELETION","INDEX_MANAGEMENT","FOREIGN_KEY_MANAGEMENT","UNIQUE_CONSTRAINT_MANAGEMENT","TRIGGER_MANAGEMENT","SCHEMA_MANAGEMENT"],"title":"FunctionalityCapabilityName","type":"string"}}},"paths":{"/api/v1/database_connections/functionalities/":{"get":{"operationId":"database_connections_functionalities_retrieve","parameters":[{"in":"query","name":"connector_type","schema":{"type":"string"},"description":"Connector type parameter for functionalities"}],"tags":["Database Connections"],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FunctionalityListSchema"}}},"description":""},"503":{"description":"Message: service unavailable"}}}}}}
```

## GET /api/v1/database\_connections/supported\_types/

>

```json
{"openapi":"3.0.3","info":{"title":"Syntho Backend API","version":"1.0.0 (v1)"},"servers":[{"url":"/"}],"security":[{"authentication":[]},{"OIDC":[]}],"components":{"securitySchemes":{"authentication":{"type":"apiKey","in":"cookie","name":"sessionid","description":"Log in using the <a href='/api/playground/#/Auth/auth_create'>POST /api/v1/auth/</a> endpoint"},"OIDC":{"type":"apiKey","in":"header","name":"Authorization"}},"schemas":{"SupportedConnectionTypes":{"properties":{"connectors":{"anyOf":[{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/Property"},"type":"object"},"type":"object"},{"type":"null"}],"default":null,"title":"Connectors"},"write_connectors":{"anyOf":[{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/Property"},"type":"object"},"type":"object"},{"type":"null"}],"default":null,"title":"Write Connectors"},"hooks":{"anyOf":[{"additionalProperties":{"additionalProperties":{"$ref":"#/components/schemas/Property"},"type":"object"},"type":"object"},{"type":"null"}],"default":null,"title":"Hooks"}},"title":"SupportedConnectionTypes","type":"object"},"Property":{"properties":{"type":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Type"},"default":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}],"default":null,"title":"Default"},"values":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Values"}},"title":"Property","type":"object"}}},"paths":{"/api/v1/database_connections/supported_types/":{"get":{"operationId":"database_connections_supported_types_retrieve","tags":["Database Connections"],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportedConnectionTypes"}}},"description":""},"503":{"description":"Message: service unavailable"}}}}}}
```

## POST /api/v1/database\_connections/test/

>

```json
{"openapi":"3.0.3","info":{"title":"Syntho Backend API","version":"1.0.0 (v1)"},"servers":[{"url":"/"}],"security":[{"authentication":[]},{"OIDC":[]}],"components":{"securitySchemes":{"authentication":{"type":"apiKey","in":"cookie","name":"sessionid","description":"Log in using the <a href='/api/playground/#/Auth/auth_create'>POST /api/v1/auth/</a> endpoint"},"OIDC":{"type":"apiKey","in":"header","name":"Authorization"}},"schemas":{"CreateConnectorSchema":{"discriminator":{"mapping":{"ADLSFSConnector":"#/components/schemas/CreateADLSFSConnector","DB2Connector":"#/components/schemas/CreateDB2Connector","DatabricksConnector":"#/components/schemas/CreateDatabricksConnector","MsSQLConnector":"#/components/schemas/CreateMsSQLConnector","MySQLMariaDBConnector":"#/components/schemas/CreateMySQLMariaDBConnector","OracleConnector":"#/components/schemas/CreateOracleConnector","PostgreSQLConnector":"#/components/schemas/CreatePostgreSQLConnector","S3FSConnector":"#/components/schemas/CreateS3FSConnector","SybaseConnector":"#/components/schemas/CreateSybaseConnector"},"propertyName":"connector_type"},"oneOf":[{"$ref":"#/components/schemas/CreateMsSQLConnector"},{"$ref":"#/components/schemas/CreateMySQLMariaDBConnector"},{"$ref":"#/components/schemas/CreateOracleConnector"},{"$ref":"#/components/schemas/CreatePostgreSQLConnector"},{"$ref":"#/components/schemas/CreateDatabricksConnector"},{"$ref":"#/components/schemas/CreateDB2Connector"},{"$ref":"#/components/schemas/CreateSybaseConnector"},{"$ref":"#/components/schemas/CreateADLSFSConnector"},{"$ref":"#/components/schemas/CreateS3FSConnector"}],"title":"CreateConnectorSchema"},"CreateMsSQLConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"MsSQLConnector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"username":{"minLength":1,"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":1433,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"mssql+pyodbc","title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Include Views"}},"required":["connector_type","host","database","username","password"],"title":"CreateMsSQLConnector","type":"object"},"CreateConnectionHooksSchema":{"properties":{"SSHTunnel":{"anyOf":[{"$ref":"#/components/schemas/CreateSSHTunnelHooksSchema"},{"type":"null"}],"default":null},"SSL":{"anyOf":[{"$ref":"#/components/schemas/CreateSSLHooksSchema"},{"type":"null"}],"default":null},"Kerberos":{"anyOf":[{"$ref":"#/components/schemas/CreateKerberosHooksSchema"},{"type":"null"}],"default":null}},"title":"CreateConnectionHooksSchema","type":"object"},"CreateSSHTunnelHooksSchema":{"properties":{"host":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"port":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"username":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"local_port":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Local Port"},"local_host":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Local Host"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"pkey_password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Pkey Password"},"pkey":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Pkey"}},"title":"CreateSSHTunnelHooksSchema","type":"object"},"CreateSSLHooksSchema":{"properties":{"ca_filename":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Ca Filename"},"cert_filename":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Cert Filename"},"key_filename":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Key Filename"},"ssl_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Ssl Mode"},"ca":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Ca"},"cert":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Cert"},"key":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Key"}},"title":"CreateSSLHooksSchema","type":"object"},"CreateKerberosHooksSchema":{"properties":{"principal":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Principal"},"keytab_file":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Keytab File"}},"title":"CreateKerberosHooksSchema","type":"object"},"CreateMySQLMariaDBConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"MySQLMariaDBConnector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"username":{"minLength":1,"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":3306,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"mysql+mysqldb","title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Include Views"}},"required":["connector_type","host","database","username","password"],"title":"CreateMySQLMariaDBConnector","type":"object"},"CreateOracleConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"OracleConnector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"username":{"minLength":1,"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":1521,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"oracle+oracledb","title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Include Views"}},"required":["connector_type","host","database","username","password"],"title":"CreateOracleConnector","type":"object"},"CreatePostgreSQLConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"PostgreSQLConnector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"username":{"minLength":1,"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":5432,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"postgresql+psycopg2","title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Include Views"}},"required":["connector_type","host","database","username","password"],"title":"CreatePostgreSQLConnector","type":"object"},"CreateDatabricksConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"DatabricksConnector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"catalog":{"minLength":1,"title":"Catalog","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":443,"title":"Port"},"token":{"minLength":1,"title":"Token","type":"string"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"databricks","title":"Protocol"},"cluster_path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Cluster Path"},"warehouse_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Warehouse Id"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Include Views"}},"required":["connector_type","host","catalog","database","token"],"title":"CreateDatabricksConnector","type":"object"},"CreateDB2Connector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"DB2Connector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"username":{"minLength":1,"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":50000,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"db2","title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Include Views"}},"required":["connector_type","host","database","username","password"],"title":"CreateDB2Connector","type":"object"},"CreateSybaseConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"SybaseConnector","title":"Connector Type","type":"string"},"host":{"minLength":1,"title":"Host","type":"string"},"database":{"minLength":1,"title":"Database","type":"string"},"username":{"minLength":1,"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":5000,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"sybase+pyodbc","title":"Protocol"}},"required":["connector_type","host","database","username","password"],"title":"CreateSybaseConnector","type":"object"},"CreateADLSFSConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"ADLSFSConnector","title":"Connector Type","type":"string"},"storage_container_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Storage Container Name"},"storage_account_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Storage Account Name"},"container_connection_string":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Container Connection String"},"storage_account_key":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Storage Account Key"},"storage_connection_string":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Storage Connection String"},"remote_path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"/","title":"Remote Path"}},"required":["connector_type"],"title":"CreateADLSFSConnector","type":"object"},"CreateS3FSConnector":{"properties":{"hooks_params":{"anyOf":[{"$ref":"#/components/schemas/CreateConnectionHooksSchema"},{"type":"null"}],"default":null},"is_source":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Is Source"},"connector_type":{"const":"S3FSConnector","title":"Connector Type","type":"string"},"bucket":{"minLength":1,"title":"Bucket","type":"string"},"region":{"minLength":1,"title":"Region","type":"string"},"remote_path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"/","title":"Remote Path"},"aws_access_key_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Aws Access Key Id"},"aws_secret_access_key":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Aws Secret Access Key"}},"required":["connector_type","bucket","region"],"title":"CreateS3FSConnector","type":"object"},"ApplicationMessage":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Id"},"code":{"title":"Code","type":"string"},"title":{"title":"Title","type":"string"},"body":{"title":"Body","type":"string"},"durability":{"anyOf":[{"$ref":"#/components/schemas/Durability"},{"type":"null"}],"default":"temporary"},"duration":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":5000,"title":"Duration"},"kind":{"anyOf":[{"$ref":"#/components/schemas/SystemMessageKind"},{"type":"null"}],"default":"info"},"details":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"default":null,"title":"Details"},"payload":{"default":null,"title":"Payload"},"action":{"anyOf":[{"type":"object"},{"type":"null"}],"default":null,"title":"Action"},"display":{"anyOf":[{"$ref":"#/components/schemas/Display"},{"type":"null"}],"default":"notification"},"created_at":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Created At"}},"required":["code","title","body"],"title":"ApplicationMessage","type":"object"},"Durability":{"enum":["transient","persistent","temporary"],"title":"Durability","type":"string"},"SystemMessageKind":{"enum":["success","error","warning","info"],"title":"SystemMessageKind","type":"string"},"Display":{"enum":["field","screen","notification"],"title":"Display","type":"string"}}},"paths":{"/api/v1/database_connections/test/":{"post":{"operationId":"database_connections_test_create","tags":["Database Connections"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateConnectorSchema"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplicationMessage"}}},"description":""},"503":{"description":"Message: service unavailable"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.syntho.ai/syntho-api/syntho-rest-api/database-connections.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
