# Workspaces

## PUT /api/v1/engine/{engine\_id}/update-settings/

>

```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":{"EngineWithDefaultsSchema":{"properties":{"seed_value":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Seed Value"},"use_seed":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Use Seed"},"pii_model_settings":{"anyOf":[{"type":"object"},{"type":"null"}],"default":null,"title":"Pii Model Settings"},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":null},"n_parallel_pipeline_processes":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"N Parallel Pipeline Processes"},"default_n_training_rows":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default N Training Rows"},"default_read_random_subset":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Default Read Random Subset"},"default_sample_noise_ratio":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"title":"Default Sample Noise Ratio"},"default_max_n_feat_per_model":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Max N Feat Per Model"},"default_feat_model_train_order":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Default Feat Model Train Order"},"default_max_sequence_length":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Max Sequence Length"},"default_end_of_sequence_token":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"title":"Default End Of Sequence Token"},"default_cardinality_threshold":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Cardinality Threshold"},"default_rare_category_replacement":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Default Rare Category Replacement"},"default_clip_threshold":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Clip Threshold"},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":null},"default_pii_mock_replace":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Default Pii Mock Replace"},"default_noise_factor":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"title":"Default Noise Factor"},"default_text_processor_model_settings":{"anyOf":[{"type":"object"},{"type":"null"}],"default":null,"title":"Default Text Processor Model Settings"},"default_textpii_parallel_jobs":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Textpii Parallel Jobs"},"default_textpii_scan_batch_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Textpii Scan Batch Size"},"default_cutoff_length":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Cutoff Length"},"default_long_sequence_threshold":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Long Sequence Threshold"},"default_min_sample_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Min Sample Size"},"default_fast_executemany":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Default Fast Executemany"},"default_consistent_integer_shuffle_threshold":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Consistent Integer Shuffle Threshold"},"default_order_by_nr_columns":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"default":null,"title":"Default Order By Nr Columns"},"default_max_pending_tasks":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Default Max Pending Tasks"},"default_exclude_tables":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Default Exclude Tables"},"id":{"format":"uuid","title":"Id","type":"string"},"set_defaults":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":true,"title":"Set Defaults"}},"required":["id"],"title":"EngineWithDefaultsSchema","type":"object"},"InitializationMode":{"enum":["SYNTHESIZE","MOCK","MOCK_OR_MASK","DE_IDENTIFY","SCRATCH"],"title":"InitializationMode","type":"string"},"KeyGenerationMethod":{"enum":["duplicate","generate","hash"],"title":"KeyGenerationMethod","type":"string"},"DefaultLocale":{"enum":["en","nl","ja","de"],"title":"DefaultLocale","type":"string"},"UpdateEngineSettingsMessage":{"properties":{"task_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Task Id"},"engine_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Engine Id"},"status":{"title":"Status","type":"string"}},"required":["status"],"title":"UpdateEngineSettingsMessage","type":"object"}}},"paths":{"/api/v1/engine/{engine_id}/update-settings/":{"put":{"operationId":"engine_update_settings_update","parameters":[{"in":"path","name":"engine_id","schema":{"type":"string"},"required":true}],"tags":["Workspaces","Engine","Table","Column"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EngineWithDefaultsSchema"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateEngineSettingsMessage"}}},"description":""}}}}}}
```

## GET /api/v1/workspaces/

> List workspace

```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":{"ListOfWorkspaces":{"properties":{"workspaces":{"items":{"$ref":"#/components/schemas/Workspace"},"title":"Workspaces","type":"array"}},"required":["workspaces"],"title":"ListOfWorkspaces","type":"object"},"Workspace":{"properties":{"pk":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Pk"},"name":{"title":"Name","type":"string"},"organization":{"title":"Organization","type":"integer"},"engine_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Engine Id"},"owner_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Created At"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"engine":{"anyOf":[{"$ref":"#/components/schemas/EngineSchema"},{"type":"null"}],"default":null},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":null},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":null}},"required":["name","organization"],"title":"Workspace","type":"object"},"EngineSchema":{"properties":{"id":{"format":"uuid","title":"Id","type":"string"},"latest_job_status":{"anyOf":[{"$ref":"#/components/schemas/JobStatus"},{"type":"null"}],"default":null},"connector_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connector Type"},"source_database_status":{"anyOf":[{"$ref":"#/components/schemas/DatabaseStatus"},{"type":"null"}],"default":null}},"required":["id"],"title":"EngineSchema","type":"object"},"JobStatus":{"enum":["STARTED","IN_PROGRESS","SUCCESS","FAILURE","REVOKED"],"title":"JobStatus","type":"string"},"DatabaseStatus":{"enum":["CURRENT","IN_SYNC","IMPORTED"],"title":"DatabaseStatus","type":"string"},"InitializationMode":{"enum":["SYNTHESIZE","MOCK","MOCK_OR_MASK","DE_IDENTIFY","SCRATCH"],"title":"InitializationMode","type":"string"},"KeyGenerationMethod":{"enum":["duplicate","generate","hash"],"title":"KeyGenerationMethod","type":"string"},"DefaultLocale":{"enum":["en","nl","ja","de"],"title":"DefaultLocale","type":"string"}}},"paths":{"/api/v1/workspaces/":{"get":{"operationId":"workspaces_list","description":"List workspace","tags":["Workspaces"],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListOfWorkspaces"}}},"description":"Success: Workspace List"}}}}}}
```

## POST /api/v1/workspaces/

> Create a new workspace and engine

```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":{"CreateWorkspace":{"properties":{"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":"DE_IDENTIFY"},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":"duplicate"},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":"en"},"default_exclude_tables":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"title":"Default Exclude Tables"},"source_connection":{"$ref":"#/components/schemas/CreateSourceConnectorSchema"},"target_connection":{"anyOf":[{"$ref":"#/components/schemas/CreateTargetConnectorSchema"},{"type":"null"}],"default":null},"name":{"title":"Name","type":"string"},"organization":{"title":"Organization","type":"integer"}},"required":["source_connection","name","organization"],"title":"CreateWorkspace","type":"object"},"InitializationMode":{"enum":["SYNTHESIZE","MOCK","MOCK_OR_MASK","DE_IDENTIFY","SCRATCH"],"title":"InitializationMode","type":"string"},"KeyGenerationMethod":{"enum":["duplicate","generate","hash"],"title":"KeyGenerationMethod","type":"string"},"DefaultLocale":{"enum":["en","nl","ja","de"],"title":"DefaultLocale","type":"string"},"CreateSourceConnectorSchema":{"discriminator":{"mapping":{"DB2Connector":"#/components/schemas/CreateDB2Connector","DatabricksConnector":"#/components/schemas/CreateDatabricksConnector","MsSQLConnector":"#/components/schemas/CreateMsSQLConnector","MySQLMariaDBConnector":"#/components/schemas/CreateMySQLMariaDBConnector","OracleConnector":"#/components/schemas/CreateOracleConnector","PostgreSQLConnector":"#/components/schemas/CreatePostgreSQLConnector","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"}],"title":"CreateSourceConnectorSchema"},"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"},"CreateTargetConnectorSchema":{"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":"CreateTargetConnectorSchema"},"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"},"file_format":{"anyOf":[{"$ref":"#/components/schemas/FileFormat"},{"type":"null"}],"default":"parquet"}},"required":["connector_type"],"title":"CreateADLSFSConnector","type":"object"},"FileFormat":{"enum":["parquet","orc"],"title":"FileFormat","type":"string"},"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"},"file_format":{"anyOf":[{"$ref":"#/components/schemas/FileFormat"},{"type":"null"}],"default":"parquet"}},"required":["connector_type","bucket","region"],"title":"CreateS3FSConnector","type":"object"},"Workspace":{"properties":{"pk":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Pk"},"name":{"title":"Name","type":"string"},"organization":{"title":"Organization","type":"integer"},"engine_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Engine Id"},"owner_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Created At"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"engine":{"anyOf":[{"$ref":"#/components/schemas/EngineSchema"},{"type":"null"}],"default":null},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":null},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":null}},"required":["name","organization"],"title":"Workspace","type":"object"},"EngineSchema":{"properties":{"id":{"format":"uuid","title":"Id","type":"string"},"latest_job_status":{"anyOf":[{"$ref":"#/components/schemas/JobStatus"},{"type":"null"}],"default":null},"connector_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connector Type"},"source_database_status":{"anyOf":[{"$ref":"#/components/schemas/DatabaseStatus"},{"type":"null"}],"default":null}},"required":["id"],"title":"EngineSchema","type":"object"},"JobStatus":{"enum":["STARTED","IN_PROGRESS","SUCCESS","FAILURE","REVOKED"],"title":"JobStatus","type":"string"},"DatabaseStatus":{"enum":["CURRENT","IN_SYNC","IMPORTED"],"title":"DatabaseStatus","type":"string"},"WorkspaceCreateUpdateError":{"properties":{"status":{"title":"Status","type":"string"},"source_connection":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionMessage"},{"type":"null"}],"default":null},"target_connection":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionMessage"},{"type":"null"}],"default":null},"workspace":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"default":null,"title":"Workspace"}},"required":["status"],"title":"WorkspaceCreateUpdateError","type":"object"},"TestConnectionMessage":{"properties":{"status":{"title":"Status","type":"string"},"error":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionError"},{"type":"null"}],"default":null}},"required":["status"],"title":"TestConnectionMessage","type":"object"},"TestConnectionError":{"properties":{"message":{"title":"Message","type":"string"},"fields":{"items":{"type":"string"},"title":"Fields","type":"array"},"error":{"title":"Error","type":"string"}},"required":["message","fields","error"],"title":"TestConnectionError","type":"object"}}},"paths":{"/api/v1/workspaces/":{"post":{"operationId":"workspaces_create","description":"Create a new workspace and engine","parameters":[{"in":"query","name":"sample_db","schema":{"type":"string"},"description":"The sample database to use"}],"tags":["Workspaces","Workspace Permissions"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkspace"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}},"description":"Success: Created workspace"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceCreateUpdateError"}}},"description":"Failed"}}}}}}
```

## GET /api/v1/workspaces/{id}/

>

```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":{"Workspace":{"properties":{"pk":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Pk"},"name":{"title":"Name","type":"string"},"organization":{"title":"Organization","type":"integer"},"engine_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Engine Id"},"owner_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Created At"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"engine":{"anyOf":[{"$ref":"#/components/schemas/EngineSchema"},{"type":"null"}],"default":null},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":null},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":null}},"required":["name","organization"],"title":"Workspace","type":"object"},"EngineSchema":{"properties":{"id":{"format":"uuid","title":"Id","type":"string"},"latest_job_status":{"anyOf":[{"$ref":"#/components/schemas/JobStatus"},{"type":"null"}],"default":null},"connector_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connector Type"},"source_database_status":{"anyOf":[{"$ref":"#/components/schemas/DatabaseStatus"},{"type":"null"}],"default":null}},"required":["id"],"title":"EngineSchema","type":"object"},"JobStatus":{"enum":["STARTED","IN_PROGRESS","SUCCESS","FAILURE","REVOKED"],"title":"JobStatus","type":"string"},"DatabaseStatus":{"enum":["CURRENT","IN_SYNC","IMPORTED"],"title":"DatabaseStatus","type":"string"},"InitializationMode":{"enum":["SYNTHESIZE","MOCK","MOCK_OR_MASK","DE_IDENTIFY","SCRATCH"],"title":"InitializationMode","type":"string"},"KeyGenerationMethod":{"enum":["duplicate","generate","hash"],"title":"KeyGenerationMethod","type":"string"},"DefaultLocale":{"enum":["en","nl","ja","de"],"title":"DefaultLocale","type":"string"}}},"paths":{"/api/v1/workspaces/{id}/":{"get":{"operationId":"workspaces_retrieve","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces"],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}},"description":""}}}}}}
```

## PUT /api/v1/workspaces/{id}/

> Update a workspace and engine

```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":{"UpdateWorkspace":{"properties":{"source_connection":{"anyOf":[{"$ref":"#/components/schemas/UpdateSourceConnectorSchema"},{"type":"null"}],"default":null},"target_connection":{"anyOf":[{"$ref":"#/components/schemas/UpdateTargetConnectorSchema"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":"duplicate"},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":"en"},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":"DE_IDENTIFY"},"name":{"title":"Name","type":"string"}},"required":["name"],"title":"UpdateWorkspace","type":"object"},"UpdateSourceConnectorSchema":{"discriminator":{"mapping":{"DB2Connector":"#/components/schemas/UpdateDB2Connector","DatabricksConnector":"#/components/schemas/UpdateDatabricksConnector","MsSQLConnector":"#/components/schemas/UpdateMsSQLConnector","MySQLMariaDBConnector":"#/components/schemas/UpdateMySQLMariaDBConnector","OracleConnector":"#/components/schemas/UpdateOracleConnector","PostgreSQLConnector":"#/components/schemas/UpdatePostgreSQLConnector","SybaseConnector":"#/components/schemas/UpdateSybaseConnector"},"propertyName":"connector_type"},"oneOf":[{"$ref":"#/components/schemas/UpdateMsSQLConnector"},{"$ref":"#/components/schemas/UpdateMySQLMariaDBConnector"},{"$ref":"#/components/schemas/UpdateOracleConnector"},{"$ref":"#/components/schemas/UpdatePostgreSQLConnector"},{"$ref":"#/components/schemas/UpdateDatabricksConnector"},{"$ref":"#/components/schemas/UpdateDB2Connector"},{"$ref":"#/components/schemas/UpdateSybaseConnector"}],"title":"UpdateSourceConnectorSchema"},"UpdateMsSQLConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateMsSQLConnector","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"},"UpdateMySQLMariaDBConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateMySQLMariaDBConnector","type":"object"},"UpdateOracleConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateOracleConnector","type":"object"},"UpdatePostgreSQLConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdatePostgreSQLConnector","type":"object"},"UpdateDatabricksConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"catalog":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Catalog"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"token":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Token"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"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":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateDatabricksConnector","type":"object"},"UpdateDB2Connector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateDB2Connector","type":"object"},"UpdateSybaseConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"}},"required":["connector_type"],"title":"UpdateSybaseConnector","type":"object"},"UpdateTargetConnectorSchema":{"discriminator":{"mapping":{"ADLSFSConnector":"#/components/schemas/UpdateADLSFSConnector","DB2Connector":"#/components/schemas/UpdateDB2Connector","DatabricksConnector":"#/components/schemas/UpdateDatabricksConnector","MsSQLConnector":"#/components/schemas/UpdateMsSQLConnector","MySQLMariaDBConnector":"#/components/schemas/UpdateMySQLMariaDBConnector","OracleConnector":"#/components/schemas/UpdateOracleConnector","PostgreSQLConnector":"#/components/schemas/UpdatePostgreSQLConnector","S3FSConnector":"#/components/schemas/UpdateS3FSConnector","SybaseConnector":"#/components/schemas/UpdateSybaseConnector"},"propertyName":"connector_type"},"oneOf":[{"$ref":"#/components/schemas/UpdateMsSQLConnector"},{"$ref":"#/components/schemas/UpdateMySQLMariaDBConnector"},{"$ref":"#/components/schemas/UpdateOracleConnector"},{"$ref":"#/components/schemas/UpdatePostgreSQLConnector"},{"$ref":"#/components/schemas/UpdateDatabricksConnector"},{"$ref":"#/components/schemas/UpdateDB2Connector"},{"$ref":"#/components/schemas/UpdateSybaseConnector"},{"$ref":"#/components/schemas/UpdateADLSFSConnector"},{"$ref":"#/components/schemas/UpdateS3FSConnector"}],"title":"UpdateTargetConnectorSchema"},"UpdateADLSFSConnector":{"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":null,"title":"Remote Path"},"file_format":{"anyOf":[{"$ref":"#/components/schemas/FileFormat"},{"type":"null"}],"default":null}},"required":["connector_type"],"title":"UpdateADLSFSConnector","type":"object"},"FileFormat":{"enum":["parquet","orc"],"title":"FileFormat","type":"string"},"UpdateS3FSConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Bucket"},"region":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"remote_path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"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"},"file_format":{"anyOf":[{"$ref":"#/components/schemas/FileFormat"},{"type":"null"}],"default":null}},"required":["connector_type"],"title":"UpdateS3FSConnector","type":"object"},"KeyGenerationMethod":{"enum":["duplicate","generate","hash"],"title":"KeyGenerationMethod","type":"string"},"DefaultLocale":{"enum":["en","nl","ja","de"],"title":"DefaultLocale","type":"string"},"InitializationMode":{"enum":["SYNTHESIZE","MOCK","MOCK_OR_MASK","DE_IDENTIFY","SCRATCH"],"title":"InitializationMode","type":"string"},"Workspace":{"properties":{"pk":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Pk"},"name":{"title":"Name","type":"string"},"organization":{"title":"Organization","type":"integer"},"engine_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Engine Id"},"owner_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Created At"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"engine":{"anyOf":[{"$ref":"#/components/schemas/EngineSchema"},{"type":"null"}],"default":null},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":null},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":null}},"required":["name","organization"],"title":"Workspace","type":"object"},"EngineSchema":{"properties":{"id":{"format":"uuid","title":"Id","type":"string"},"latest_job_status":{"anyOf":[{"$ref":"#/components/schemas/JobStatus"},{"type":"null"}],"default":null},"connector_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connector Type"},"source_database_status":{"anyOf":[{"$ref":"#/components/schemas/DatabaseStatus"},{"type":"null"}],"default":null}},"required":["id"],"title":"EngineSchema","type":"object"},"JobStatus":{"enum":["STARTED","IN_PROGRESS","SUCCESS","FAILURE","REVOKED"],"title":"JobStatus","type":"string"},"DatabaseStatus":{"enum":["CURRENT","IN_SYNC","IMPORTED"],"title":"DatabaseStatus","type":"string"},"WorkspaceCreateUpdateError":{"properties":{"status":{"title":"Status","type":"string"},"source_connection":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionMessage"},{"type":"null"}],"default":null},"target_connection":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionMessage"},{"type":"null"}],"default":null},"workspace":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"default":null,"title":"Workspace"}},"required":["status"],"title":"WorkspaceCreateUpdateError","type":"object"},"TestConnectionMessage":{"properties":{"status":{"title":"Status","type":"string"},"error":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionError"},{"type":"null"}],"default":null}},"required":["status"],"title":"TestConnectionMessage","type":"object"},"TestConnectionError":{"properties":{"message":{"title":"Message","type":"string"},"fields":{"items":{"type":"string"},"title":"Fields","type":"array"},"error":{"title":"Error","type":"string"}},"required":["message","fields","error"],"title":"TestConnectionError","type":"object"}}},"paths":{"/api/v1/workspaces/{id}/":{"put":{"operationId":"workspaces_update","description":"Update a workspace and engine","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces","Engine","Schema"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkspace"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}},"description":"Success: Created workspace"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceCreateUpdateError"}}},"description":"Failed"}}}}}}
```

## DELETE /api/v1/workspaces/{id}/

> Delete a workspace and cancel workspace creation job.

```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"}}},"paths":{"/api/v1/workspaces/{id}/":{"delete":{"operationId":"workspaces_destroy","description":"Delete a workspace and cancel workspace creation job.","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces"],"responses":{"204":{"description":"No response body"}}}}}}
```

## POST /api/v1/workspaces/{id}/duplicate/

> Duplicates a workspace, including permissions

```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":{"UpdateWorkspace":{"properties":{"source_connection":{"anyOf":[{"$ref":"#/components/schemas/UpdateSourceConnectorSchema"},{"type":"null"}],"default":null},"target_connection":{"anyOf":[{"$ref":"#/components/schemas/UpdateTargetConnectorSchema"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":"duplicate"},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":"en"},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":"DE_IDENTIFY"},"name":{"title":"Name","type":"string"}},"required":["name"],"title":"UpdateWorkspace","type":"object"},"UpdateSourceConnectorSchema":{"discriminator":{"mapping":{"DB2Connector":"#/components/schemas/UpdateDB2Connector","DatabricksConnector":"#/components/schemas/UpdateDatabricksConnector","MsSQLConnector":"#/components/schemas/UpdateMsSQLConnector","MySQLMariaDBConnector":"#/components/schemas/UpdateMySQLMariaDBConnector","OracleConnector":"#/components/schemas/UpdateOracleConnector","PostgreSQLConnector":"#/components/schemas/UpdatePostgreSQLConnector","SybaseConnector":"#/components/schemas/UpdateSybaseConnector"},"propertyName":"connector_type"},"oneOf":[{"$ref":"#/components/schemas/UpdateMsSQLConnector"},{"$ref":"#/components/schemas/UpdateMySQLMariaDBConnector"},{"$ref":"#/components/schemas/UpdateOracleConnector"},{"$ref":"#/components/schemas/UpdatePostgreSQLConnector"},{"$ref":"#/components/schemas/UpdateDatabricksConnector"},{"$ref":"#/components/schemas/UpdateDB2Connector"},{"$ref":"#/components/schemas/UpdateSybaseConnector"}],"title":"UpdateSourceConnectorSchema"},"UpdateMsSQLConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateMsSQLConnector","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"},"UpdateMySQLMariaDBConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateMySQLMariaDBConnector","type":"object"},"UpdateOracleConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateOracleConnector","type":"object"},"UpdatePostgreSQLConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdatePostgreSQLConnector","type":"object"},"UpdateDatabricksConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"catalog":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Catalog"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"token":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Token"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"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":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateDatabricksConnector","type":"object"},"UpdateDB2Connector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"},"include_views":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Views"}},"required":["connector_type"],"title":"UpdateDB2Connector","type":"object"},"UpdateSybaseConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"database":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Database"},"username":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"schema_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema Name"},"port":{"anyOf":[{"maximum":65535,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"protocol":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Protocol"}},"required":["connector_type"],"title":"UpdateSybaseConnector","type":"object"},"UpdateTargetConnectorSchema":{"discriminator":{"mapping":{"ADLSFSConnector":"#/components/schemas/UpdateADLSFSConnector","DB2Connector":"#/components/schemas/UpdateDB2Connector","DatabricksConnector":"#/components/schemas/UpdateDatabricksConnector","MsSQLConnector":"#/components/schemas/UpdateMsSQLConnector","MySQLMariaDBConnector":"#/components/schemas/UpdateMySQLMariaDBConnector","OracleConnector":"#/components/schemas/UpdateOracleConnector","PostgreSQLConnector":"#/components/schemas/UpdatePostgreSQLConnector","S3FSConnector":"#/components/schemas/UpdateS3FSConnector","SybaseConnector":"#/components/schemas/UpdateSybaseConnector"},"propertyName":"connector_type"},"oneOf":[{"$ref":"#/components/schemas/UpdateMsSQLConnector"},{"$ref":"#/components/schemas/UpdateMySQLMariaDBConnector"},{"$ref":"#/components/schemas/UpdateOracleConnector"},{"$ref":"#/components/schemas/UpdatePostgreSQLConnector"},{"$ref":"#/components/schemas/UpdateDatabricksConnector"},{"$ref":"#/components/schemas/UpdateDB2Connector"},{"$ref":"#/components/schemas/UpdateSybaseConnector"},{"$ref":"#/components/schemas/UpdateADLSFSConnector"},{"$ref":"#/components/schemas/UpdateS3FSConnector"}],"title":"UpdateTargetConnectorSchema"},"UpdateADLSFSConnector":{"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":null,"title":"Remote Path"},"file_format":{"anyOf":[{"$ref":"#/components/schemas/FileFormat"},{"type":"null"}],"default":null}},"required":["connector_type"],"title":"UpdateADLSFSConnector","type":"object"},"FileFormat":{"enum":["parquet","orc"],"title":"FileFormat","type":"string"},"UpdateS3FSConnector":{"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":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Bucket"},"region":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"remote_path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"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"},"file_format":{"anyOf":[{"$ref":"#/components/schemas/FileFormat"},{"type":"null"}],"default":null}},"required":["connector_type"],"title":"UpdateS3FSConnector","type":"object"},"KeyGenerationMethod":{"enum":["duplicate","generate","hash"],"title":"KeyGenerationMethod","type":"string"},"DefaultLocale":{"enum":["en","nl","ja","de"],"title":"DefaultLocale","type":"string"},"InitializationMode":{"enum":["SYNTHESIZE","MOCK","MOCK_OR_MASK","DE_IDENTIFY","SCRATCH"],"title":"InitializationMode","type":"string"},"Workspace":{"properties":{"pk":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Pk"},"name":{"title":"Name","type":"string"},"organization":{"title":"Organization","type":"integer"},"engine_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Engine Id"},"owner_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Created At"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"engine":{"anyOf":[{"$ref":"#/components/schemas/EngineSchema"},{"type":"null"}],"default":null},"initialization_mode":{"anyOf":[{"$ref":"#/components/schemas/InitializationMode"},{"type":"null"}],"default":null},"key_generation_method":{"anyOf":[{"$ref":"#/components/schemas/KeyGenerationMethod"},{"type":"null"}],"default":null},"default_locale":{"anyOf":[{"$ref":"#/components/schemas/DefaultLocale"},{"type":"null"}],"default":null}},"required":["name","organization"],"title":"Workspace","type":"object"},"EngineSchema":{"properties":{"id":{"format":"uuid","title":"Id","type":"string"},"latest_job_status":{"anyOf":[{"$ref":"#/components/schemas/JobStatus"},{"type":"null"}],"default":null},"connector_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connector Type"},"source_database_status":{"anyOf":[{"$ref":"#/components/schemas/DatabaseStatus"},{"type":"null"}],"default":null}},"required":["id"],"title":"EngineSchema","type":"object"},"JobStatus":{"enum":["STARTED","IN_PROGRESS","SUCCESS","FAILURE","REVOKED"],"title":"JobStatus","type":"string"},"DatabaseStatus":{"enum":["CURRENT","IN_SYNC","IMPORTED"],"title":"DatabaseStatus","type":"string"},"WorkspaceCreateUpdateError":{"properties":{"status":{"title":"Status","type":"string"},"source_connection":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionMessage"},{"type":"null"}],"default":null},"target_connection":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionMessage"},{"type":"null"}],"default":null},"workspace":{"anyOf":[{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},{"type":"null"}],"default":null,"title":"Workspace"}},"required":["status"],"title":"WorkspaceCreateUpdateError","type":"object"},"TestConnectionMessage":{"properties":{"status":{"title":"Status","type":"string"},"error":{"anyOf":[{"$ref":"#/components/schemas/TestConnectionError"},{"type":"null"}],"default":null}},"required":["status"],"title":"TestConnectionMessage","type":"object"},"TestConnectionError":{"properties":{"message":{"title":"Message","type":"string"},"fields":{"items":{"type":"string"},"title":"Fields","type":"array"},"error":{"title":"Error","type":"string"}},"required":["message","fields","error"],"title":"TestConnectionError","type":"object"}}},"paths":{"/api/v1/workspaces/{id}/duplicate/":{"post":{"operationId":"workspaces_duplicate_create","description":"Duplicates a workspace, including permissions","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces","Workspace Permissions"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWorkspace"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}},"description":"Success: Created workspace"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkspaceCreateUpdateError"}}},"description":"Failed"}}}}}}
```

## GET /api/v1/workspaces/{id}/export/

> Export workspace

```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"}}},"paths":{"/api/v1/workspaces/{id}/export/":{"get":{"operationId":"workspace_export","description":"Export workspace","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces"],"responses":{"200":{"content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}},"description":"Success: Exported Workspace"},"403":{"description":"Forbidden"},"404":{"description":"Not Found"},"503":{"description":"Service Unavailable"}}}}}}
```

## PUT /api/v1/workspaces/{id}/import/

> Import workspace

```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"}}},"paths":{"/api/v1/workspaces/{id}/import/":{"put":{"operationId":"workspace_import","description":"Import workspace","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces","Jobs"],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","additionalProperties":{},"description":"Unspecified request body"}}}},"responses":{"200":{"description":"Success: Workspace import started"},"400":{"description":"Bad Request: Invalid input"},"503":{"description":"Service Unavailable: Unable to start workspace import"}}}}}}
```

## GET /api/v1/workspaces/{id}/members/

>

```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":{"WorkspacePermissionWithUser":{"type":"object","properties":{"pk":{"type":"integer","readOnly":true,"title":"ID"},"workspace":{"type":"integer"},"user":{"allOf":[{"$ref":"#/components/schemas/BaseSynthoUser"}],"readOnly":true},"role":{"enum":["OWNER","EDITOR","READER"],"type":"string","description":"* `OWNER` - Owner\n* `EDITOR` - Editor\n* `READER` - Reader"},"data_access":{"type":"boolean"}},"required":["role","workspace"]},"BaseSynthoUser":{"type":"object","properties":{"pk":{"type":"integer","readOnly":true,"title":"ID"},"first_name":{"type":"string","maxLength":150},"last_name":{"type":"string","maxLength":150},"full_name":{"type":"string","description":"Return the first_name plus the last_name, with a space in between.","readOnly":true},"email":{"type":"string","format":"email","title":"Email address","maxLength":255}},"required":["email"]}}},"paths":{"/api/v1/workspaces/{id}/members/":{"get":{"operationId":"workspaces_member_permissions","parameters":[{"in":"path","name":"id","schema":{"type":"integer"},"required":true}],"tags":["Workspaces","Workspace Permissions"],"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/WorkspacePermissionWithUser"}}}},"description":""}}}}}}
```
