A connector's type, display name, and type-specific connection metadata.
Set exactly one metadata field matching connector_type (e.g.
connector_type: POSTGRES ⇒ set postgres). The common database types
are documented below; every supported type follows the same shape — see
the proto ConnectorConfig for the full list (Snowflake, BigQuery,
Databricks, Tableau, PowerBI, SQL Server, Trino, etc.).
Confidential fields (passwords, keys, tokens) are write-only: they are
never returned by read endpoints, and on update they are preserved from
the stored connector when sent empty.
Show child attributes
connector_id
string
Optional. ID of an existing connector whose confidential fields
should fill in any empty confidential fields in config before the
connection is attempted.
Response
Test result
success
boolean
required
Whether the connection succeeded.
error
string
Failure detail when success is false; empty otherwise.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"TextQL Docs","colors":{"primary":"#0D9373","light":"#07C983","dark":"#0D9373"},"logo":{"light":"https://mintcdn.com/textql/9RDmZW4lVU96oHnJ/logo-textql/light.svg?fit=max\u0026auto=format\u0026n=9RDmZW4lVU96oHnJ\u0026q=85\u0026s=069d276e4ee2f256e061f8e2db9860a3","dark":"https://mintcdn.com/textql/9RDmZW4lVU96oHnJ/logo-textql/dark.svg?fit=max\u0026auto=format\u0026n=9RDmZW4lVU96oHnJ\u0026q=85\u0026s=1a728bc3acfd6eda203c49a45eac0355"},"favicon":"https://mintcdn.com/textql/jK3bTwZd_T-GaQ4j/favicon.svg?fit=max\u0026auto=format\u0026n=jK3bTwZd_T-GaQ4j\u0026q=85\u0026s=4f7feffa45a51a795a1b929f05a772bf","api":{"openapi":["api-reference/platform/chat.openapi.yaml","api-reference/platform/playbooks.openapi.yaml","api-reference/platform/agents.openapi.yaml","api-reference/platform/connectors.openapi.yaml","api-reference/platform/api_access_key.openapi.yaml","api-reference/platform/sandbox.openapi.yaml","api-reference/platform/v2.openapi.yaml","api-reference/speakeasy/textql-api-with-code-samples.yaml"],"mdx":{"auth":{"method":"bearer"},"server":"https://app.textql.com"}},"appearance":{"default":"light","strict":false},"navbar":{"links":[{"href":"mailto:support@textql.com","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.textql.com"}},"footer":{"socials":{"x":"https://x.com/TextQL","github":"https://github.com/textqllabs","linkedin":"https://www.linkedin.com/company/textql"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"textql","hasAudioNarration":false,"actualSubdomain":"textql","customDomains":["docs.textql.com"],"gitSource":{"type":"github","owner":"textqllabs","repo":"demo2","deployBranch":"main","contentDirectory":"docs/public","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af603b7aecf0202e5cba9fa","clientVersion":"0.0.4128","searchFilterCounts":[{"language":"default","tag":"v3 API (SDK)","count":454},{"language":"default","tag":"Workshops","count":202},{"language":"default","tag":"Documentation","count":164},{"language":"default","tag":"Ontology Management Service","count":70},{"language":"default","tag":"v2 API","count":56},{"language":"default","tag":"Set Up Your Data","count":56},{"language":"default","tag":"RBAC Service","count":41},{"language":"default","tag":"Chat Service","count":39},{"language":"default","tag":"Playbook Service","count":39},{"language":"default","tag":"How It Works","count":32}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"table{width:100%;border-collapse:collapse;margin:1rem 0}th,td{border:1px solid #e5e7eb;padding:0.6rem 0.85rem;text-align:left;vertical-align:top;line-height:1.45}th{background:#f9fafb;font-weight:600}th:first-child,td:first-child{white-space:nowrap}.dark th,.dark td{border-color:#2b2b2b}.dark th{background:#18181b}"}],"page":{"pagePath":"api-reference/v2/connectors/test-connector","slug":"/api-reference/v2/connectors/test-connector","pageMetadata":{"title":"Test Connector","openapi":"POST /v2/connectors/test","description":"Test a connector configuration without saving it","href":"/api-reference/v2/connectors/test-connector"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Test a connector configuration without saving it\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Test Connector","openapi":"POST /v2/connectors/test","description":"Test a connector configuration without saving it","href":"/api-reference/v2/connectors/test-connector"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Connectors"],"summary":"Test Connector","description":"Test a connector configuration without saving it","operationId":"v2.testConnector","requestBody":"2333db5f-59db-408e-88f4-b0a0d7d9d5e8","responses":{"200":"3867714b-11d7-4736-8d8d-ac7f8d8231bb","400":"ae7ad1d9-b7db-44f7-ae61-a33950f625d5","401":"0fb8822a-de16-409b-b62f-c14acccbac4b","403":"ac47b87f-a17a-42a7-8ba7-db793f2d0a18","404":"372a87f6-0693-4743-a8a1-d74dfe687cdb","429":"e6e73c7c-f71d-47ac-8f12-093587a868cb","500":"ca3cbfd3-d4da-4038-b684-3bc28d8bdad7"},"method":"post","type":"path","servers":["dbb201e3-b2a5-4b52-ac0d-d10c96ef3390"],"security":["993fdb74-0d24-438f-97b5-a90114b86d96"],"path":"/v2/connectors/test","baseUrlOptions":["https://app.textql.com"],"title":"Test Connector","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["config"],"properties":{"config":{"type":"object","required":["connector_type","name"],"description":"A connector's type, display name, and type-specific connection metadata.\n\nSet exactly one metadata field matching `connector_type` (e.g.\n`connector_type: POSTGRES` ⇒ set `postgres`). The common database types\nare documented below; every supported type follows the same shape — see\nthe proto `ConnectorConfig` for the full list (Snowflake, BigQuery,\nDatabricks, Tableau, PowerBI, SQL Server, Trino, etc.).\n\nConfidential fields (passwords, keys, tokens) are write-only: they are\nnever returned by read endpoints, and on update they are preserved from\nthe stored connector when sent empty.\n","properties":{"connector_type":{"type":"string","description":"Connector type enum name, e.g. `POSTGRES`, `REDSHIFT`, `MYSQL`,\n`SNOWFLAKE`, `BIGQUERY`, `DATABRICKS`, `TABLEAU`, `POWERBI`.\n","example":"POSTGRES","isRequired":true,"uniqueKey":"config.connector_type","typeLabel":"string"},"name":{"type":"string","description":"Human-readable connector name","isRequired":true,"uniqueKey":"config.name","typeLabel":"string"},"auth_strategy":{"type":"string","description":"Authentication strategy. Defaults to `service_role` when omitted;\nother values (`member_oauth`, `per_member_oauth`) are inferred from\nthe metadata for OAuth-capable connectors.\n","uniqueKey":"config.auth_strategy","typeLabel":"string"},"postgres":{"type":"object","description":"Connection metadata for `connector_type: POSTGRES`.","required":["host","user","password","database"],"properties":{"host":{"type":"string","isRequired":true,"uniqueKey":"config.postgres.host","typeLabel":"string"},"user":{"type":"string","isRequired":true,"uniqueKey":"config.postgres.user","typeLabel":"string"},"password":{"type":"string","description":"Write-only. Omit on update to keep the stored value.","isRequired":true,"uniqueKey":"config.postgres.password","typeLabel":"string"},"database":{"type":"string","isRequired":true,"uniqueKey":"config.postgres.database","typeLabel":"string"},"port":{"type":"integer","format":"int32","default":5432,"uniqueKey":"config.postgres.port","typeLabel":"integer\u003cint32>"},"schemas":{"type":"array","items":{"type":"string","uniqueKey":"config.postgres.schemas.items.[INDEX]","typeLabel":"string"},"uniqueKey":"config.postgres.schemas","typeLabel":"string[]"},"ssl_mode":{"type":"boolean","uniqueKey":"config.postgres.ssl_mode","typeLabel":"boolean"}},"uniqueKey":"config.postgres","typeLabel":"object"},"redshift":{"type":"object","description":"Connection metadata for `connector_type: REDSHIFT`.","required":["host","database"],"properties":{"host":{"type":"string","isRequired":true,"uniqueKey":"config.redshift.host","typeLabel":"string"},"database":{"type":"string","isRequired":true,"uniqueKey":"config.redshift.database","typeLabel":"string"},"port":{"type":"integer","format":"int32","default":5439,"uniqueKey":"config.redshift.port","typeLabel":"integer\u003cint32>"},"user":{"type":"string","uniqueKey":"config.redshift.user","typeLabel":"string"},"password":{"type":"string","description":"Write-only. Omit on update to keep the stored value.","uniqueKey":"config.redshift.password","typeLabel":"string"},"schemas":{"type":"array","items":{"type":"string","uniqueKey":"config.redshift.schemas.items.[INDEX]","typeLabel":"string"},"uniqueKey":"config.redshift.schemas","typeLabel":"string[]"},"auth_type":{"type":"string","description":"`PASSWORD` (default) or `IAM_ROLE`.","uniqueKey":"config.redshift.auth_type","typeLabel":"string"}},"uniqueKey":"config.redshift","typeLabel":"object"},"mysql":{"type":"object","description":"Connection metadata for `connector_type: MYSQL`.","required":["host","user","password","database"],"properties":{"host":{"type":"string","isRequired":true,"uniqueKey":"config.mysql.host","typeLabel":"string"},"user":{"type":"string","isRequired":true,"uniqueKey":"config.mysql.user","typeLabel":"string"},"password":{"type":"string","description":"Write-only. Omit on update to keep the stored value.","isRequired":true,"uniqueKey":"config.mysql.password","typeLabel":"string"},"database":{"type":"string","isRequired":true,"uniqueKey":"config.mysql.database","typeLabel":"string"},"port":{"type":"integer","format":"int32","default":3306,"uniqueKey":"config.mysql.port","typeLabel":"integer\u003cint32>"}},"uniqueKey":"config.mysql","typeLabel":"object"},"snowflake":{"type":"object","description":"Connection metadata for `connector_type: SNOWFLAKE`. Authenticate with\neither `username` + `password`, or `username` + `private_key` (key-pair\nauth, PEM-encoded PKCS#8; add `private_key_passphrase` if the key is\nencrypted). The OAuth and SSO fields are for org-level or per-member\nOAuth setups; see the Snowflake datasource docs for those flows.\n","required":["locator","database","warehouse"],"properties":{"locator":{"type":"string","description":"Account locator/identifier, e.g. `myorg-account123`.","isRequired":true,"uniqueKey":"config.snowflake.locator","typeLabel":"string"},"database":{"type":"string","isRequired":true,"uniqueKey":"config.snowflake.database","typeLabel":"string"},"warehouse":{"type":"string","isRequired":true,"uniqueKey":"config.snowflake.warehouse","typeLabel":"string"},"username":{"type":"string","uniqueKey":"config.snowflake.username","typeLabel":"string"},"password":{"type":"string","description":"Write-only. Omit on update to keep the stored value.","uniqueKey":"config.snowflake.password","typeLabel":"string"},"private_key":{"type":"string","description":"Write-only. PEM-encoded private key for key-pair auth.","uniqueKey":"config.snowflake.private_key","typeLabel":"string"},"private_key_passphrase":{"type":"string","description":"Write-only. Passphrase when `private_key` is encrypted.","uniqueKey":"config.snowflake.private_key_passphrase","typeLabel":"string"},"role":{"type":"string","description":"Snowflake role to assume for queries.","uniqueKey":"config.snowflake.role","typeLabel":"string"},"schema":{"type":"string","uniqueKey":"config.snowflake.schema","typeLabel":"string"},"oauth_access_token":{"type":"string","description":"Write-only.","uniqueKey":"config.snowflake.oauth_access_token","typeLabel":"string"},"oauth_refresh_token":{"type":"string","description":"Write-only.","uniqueKey":"config.snowflake.oauth_refresh_token","typeLabel":"string"},"oauth_client_id":{"type":"string","uniqueKey":"config.snowflake.oauth_client_id","typeLabel":"string"},"oauth_client_secret":{"type":"string","description":"Write-only.","uniqueKey":"config.snowflake.oauth_client_secret","typeLabel":"string"},"enable_sso_auth":{"type":"boolean","description":"Pass the caller's IdP token directly to Snowflake External OAuth.","uniqueKey":"config.snowflake.enable_sso_auth","typeLabel":"boolean"},"token_exchange_endpoint":{"type":"string","description":"IdP token exchange URL (RFC 8693) for per-member SSO auth.","uniqueKey":"config.snowflake.token_exchange_endpoint","typeLabel":"string"},"token_exchange_audience":{"type":"string","uniqueKey":"config.snowflake.token_exchange_audience","typeLabel":"string"},"token_exchange_scope":{"type":"string","uniqueKey":"config.snowflake.token_exchange_scope","typeLabel":"string"}},"uniqueKey":"config.snowflake","typeLabel":"object"}},"isRequired":true,"uniqueKey":"config","typeLabel":"object"},"connector_id":{"type":"string","description":"Optional. ID of an existing connector whose confidential fields\nshould fill in any empty confidential fields in `config` before the\nconnection is attempted.\n","uniqueKey":"connector_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"config":{"connector_type":"POSTGRES","name":"\u003cstring>","auth_strategy":"\u003cstring>"},"connector_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"3867714b-11d7-4736-8d8d-ac7f8d8231bb":{"description":"Test result","content":{"application/json":{"schema":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean","description":"Whether the connection succeeded.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"string","description":"Failure detail when `success` is false; empty otherwise.","uniqueKey":"error","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"ae7ad1d9-b7db-44f7-ae61-a33950f625d5":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code","enum":["invalid_request","unauthenticated","permission_denied","not_found","conflict","rate_limit_exceeded","internal","timeout","cancelled","execution_failed","no_report"],"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","uniqueKey":"error.message","typeLabel":"string"}},"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"invalid_request","message":"Invalid request body"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_request","message":"Invalid request body"}}}},"exampleType":"examples"}},"exampleType":"examples"},"0fb8822a-de16-409b-b62f-c14acccbac4b":{"description":"Missing or invalid authentication","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code","enum":["invalid_request","unauthenticated","permission_denied","not_found","conflict","rate_limit_exceeded","internal","timeout","cancelled","execution_failed","no_report"],"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","uniqueKey":"error.message","typeLabel":"string"}},"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"unauthenticated","message":"Authentication required"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"unauthenticated","message":"Authentication required"}}}},"exampleType":"examples"}},"exampleType":"examples"},"ac47b87f-a17a-42a7-8ba7-db793f2d0a18":{"description":"Insufficient permissions","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code","enum":["invalid_request","unauthenticated","permission_denied","not_found","conflict","rate_limit_exceeded","internal","timeout","cancelled","execution_failed","no_report"],"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","uniqueKey":"error.message","typeLabel":"string"}},"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"permission_denied","message":"Insufficient permissions"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"permission_denied","message":"Insufficient permissions"}}}},"exampleType":"examples"}},"exampleType":"examples"},"372a87f6-0693-4743-a8a1-d74dfe687cdb":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code","enum":["invalid_request","unauthenticated","permission_denied","not_found","conflict","rate_limit_exceeded","internal","timeout","cancelled","execution_failed","no_report"],"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","uniqueKey":"error.message","typeLabel":"string"}},"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"not_found","message":"Resource not found"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"not_found","message":"Resource not found"}}}},"exampleType":"examples"}},"exampleType":"examples"},"e6e73c7c-f71d-47ac-8f12-093587a868cb":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code","enum":["invalid_request","unauthenticated","permission_denied","not_found","conflict","rate_limit_exceeded","internal","timeout","cancelled","execution_failed","no_report"],"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","uniqueKey":"error.message","typeLabel":"string"}},"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"rate_limit_exceeded","message":"Rate limit exceeded"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"rate_limit_exceeded","message":"Rate limit exceeded"}}}},"exampleType":"examples"}},"exampleType":"examples"},"ca3cbfd3-d4da-4038-b684-3bc28d8bdad7":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code","enum":["invalid_request","unauthenticated","permission_denied","not_found","conflict","rate_limit_exceeded","internal","timeout","cancelled","execution_failed","no_report"],"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message","uniqueKey":"error.message","typeLabel":"string"}},"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"internal","message":"Internal server error"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"internal","message":"Internal server error"}}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"993fdb74-0d24-438f-97b5-a90114b86d96":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key or JWT token","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"dbb201e3-b2a5-4b52-ac0d-d10c96ef3390":{"url":"https://app.textql.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"API key or JWT token","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"API key or JWT token","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/platform/v2.openapi.yaml"},"subdomain":"textql","siteName":"TextQL Docs","title":"Test Connector - TextQL Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-06-08T23:37:57.753Z","originalFileLocation":"api-reference/v2/connectors/test-connector.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Test a connector configuration without saving it\">\u003cmeta data-mint-head name=\"application-name\" content=\"TextQL Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Test Connector - TextQL Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Test a connector configuration without saving it\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"TextQL Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.textql.com/api-reference/v2/connectors/test-connector\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://textql.mintlify.site/_mintlify/api/og/v2?division=Connectors\u0026amp;title=Test+Connector\u0026amp;description=Test+a+connector+configuration+without+saving+it\u0026amp;theme=27d2effcabcfba3c2216aacf\u0026amp;signature=c2db5ab7491bd44cc46b1ad5d8422c3bc8577b465b8bbb43448009b9a6386334\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Test Connector - TextQL Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Test a connector configuration without saving it\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://textql.mintlify.site/_mintlify/api/og/v2?division=Connectors\u0026amp;title=Test+Connector\u0026amp;description=Test+a+connector+configuration+without+saving+it\u0026amp;theme=27d2effcabcfba3c2216aacf\u0026amp;signature=c2db5ab7491bd44cc46b1ad5d8422c3bc8577b465b8bbb43448009b9a6386334\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/textql/UPDKEixAE9_oDjsV/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"TextQL Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.textql.com/api-reference/v2/connectors/test-connector\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/v2/connectors/test-connector.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.textql.com/#organization\",\"name\":\"TextQL Docs\",\"url\":\"https://docs.textql.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/textql/9RDmZW4lVU96oHnJ/logo-textql/light.svg?fit=max\u0026auto=format\u0026n=9RDmZW4lVU96oHnJ\u0026q=85\u0026s=069d276e4ee2f256e061f8e2db9860a3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.textql.com#website\",\"name\":\"TextQL Docs\",\"url\":\"https://docs.textql.com\",\"publisher\":{\"@id\":\"https://docs.textql.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector#webpage\",\"url\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector\",\"name\":\"Test Connector\",\"description\":\"Test a connector configuration without saving it\",\"dateModified\":\"2026-06-08T23:37:57.753Z\",\"isPartOf\":{\"@id\":\"https://docs.textql.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Connectors\",\"item\":\"https://docs.textql.com/api-reference/v2/connectors/list-connectors\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Test Connector\",\"item\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector#apireference\",\"headline\":\"Test Connector\",\"name\":\"Test Connector\",\"description\":\"Test a connector configuration without saving it\",\"url\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector\",\"mainEntityOfPage\":{\"@id\":\"https://docs.textql.com/api-reference/v2/connectors/test-connector#webpage\"},\"dateModified\":\"2026-06-08T23:37:57.753Z\",\"publisher\":{\"@id\":\"https://docs.textql.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.textql.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"TextQL Docs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"TextQL Docs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/v2/connectors/test-connector.md","siteName":"TextQL Docs","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/core/get-started/quickstart"}]},{"tab":"Workshops","pages":[{"title":"Workshops","href":"/workshops"}]},{"tab":"v1 API (deprecated)","pages":[{"title":"v1 API (deprecated)","href":"/api-reference/introduction"}]},{"tab":"v2 API","groups":[{"group":"Getting Started","pages":[{"title":"v2 API Introduction","href":"/api-reference/v2/introduction"}]},{"group":"API Keys","pages":[{"title":"Create API Key","openapi":"POST /v2/api-keys","href":"/api-reference/v2/api-keys/create-api-key"},{"title":"List API Keys","openapi":"GET /v2/api-keys","href":"/api-reference/v2/api-keys/list-api-keys"},{"title":"Rotate API Key","openapi":"POST /v2/api-keys/{id}/rotate","href":"/api-reference/v2/api-keys/rotate-api-key"},{"title":"Revoke API Key","openapi":"DELETE /v2/api-keys/{id}","href":"/api-reference/v2/api-keys/revoke-api-key"}]},{"group":"Members","pages":[{"title":"List Members","openapi":"GET /v2/members","href":"/api-reference/v2/members/list-members"},{"title":"Invite Member","openapi":"POST /v2/members/invite","href":"/api-reference/v2/members/invite-member"},{"title":"Remove Member","openapi":"DELETE /v2/members/{id}","href":"/api-reference/v2/members/delete-member"},{"title":"Get Member Roles","openapi":"GET /v2/members/{id}/roles","href":"/api-reference/v2/members/get-member-roles"},{"title":"Assign Role to Member","openapi":"POST /v2/members/{id}/roles","href":"/api-reference/v2/members/assign-member-role"},{"title":"Remove Role from Member","openapi":"DELETE /v2/members/{id}/roles/{roleId}","href":"/api-reference/v2/members/remove-member-role"}]},{"group":"Roles","pages":[{"title":"List Roles","openapi":"GET /v2/roles","href":"/api-reference/v2/roles/list-roles"},{"title":"Create Role","openapi":"POST /v2/roles","href":"/api-reference/v2/roles/create-role"},{"title":"Update Role","openapi":"PATCH /v2/roles/{id}","href":"/api-reference/v2/roles/update-role"}]},{"group":"Chat","pages":[{"title":"List Chats","openapi":"GET /v2/chats","href":"/api-reference/v2/chat/list-chats"},{"title":"Create Chat","openapi":"POST /v2/chats","href":"/api-reference/v2/chat/create-chat"},{"title":"Stream Chat","openapi":"POST /v2/chats/stream","href":"/api-reference/v2/chat/stream-chat"},{"title":"Get Chat","openapi":"GET /v2/chats/{id}","href":"/api-reference/v2/chat/get-chat"},{"title":"Get Chat Cells","openapi":"GET /v2/chats/{id}/cells","href":"/api-reference/v2/chat/get-chat-cells"},{"title":"Get Chat Cell","openapi":"GET /v2/chats/{id}/cells/{cellId}","href":"/api-reference/v2/chat/get-chat-cell"},{"title":"Cancel Stream","openapi":"POST /v2/chats/{id}/cancel","href":"/api-reference/v2/chat/cancel-stream"}]},{"group":"Connectors","pages":[{"title":"List Connectors","openapi":"GET /v2/connectors","href":"/api-reference/v2/connectors/list-connectors"},{"title":"List Connector Types","openapi":"GET /v2/connectors/types","href":"/api-reference/v2/connectors/list-connector-types"},{"title":"Create Connector","openapi":"POST /v2/connectors","description":"Create a new data connector","href":"/api-reference/v2/connectors/create-connector"},{"title":"Test Connector","openapi":"POST /v2/connectors/test","href":"/api-reference/v2/connectors/test-connector"},{"title":"Update Connector","openapi":"PATCH /v2/connectors/{id}","description":"Update an existing data connector","href":"/api-reference/v2/connectors/update-connector"},{"title":"Delete Connector","openapi":"DELETE /v2/connectors/{id}","href":"/api-reference/v2/connectors/delete-connector"},{"title":"Get Connector Access","openapi":"GET /v2/connectors/{id}/access","href":"/api-reference/v2/connectors/get-connector-access"},{"title":"Update Connector Access","openapi":"PUT /v2/connectors/{id}/access","href":"/api-reference/v2/connectors/update-connector-access"}]},{"group":"Playbooks","pages":[{"title":"List Playbooks","openapi":"GET /v2/playbooks","href":"/api-reference/v2/playbooks/list-playbooks"},{"title":"Create Playbook","openapi":"POST /v2/playbooks","href":"/api-reference/v2/playbooks/create-playbook"},{"title":"Get Playbook","openapi":"GET /v2/playbooks/{id}","href":"/api-reference/v2/playbooks/get-playbook"},{"title":"Update Playbook","openapi":"PATCH /v2/playbooks/{id}","href":"/api-reference/v2/playbooks/update-playbook"},{"title":"Run Playbook","openapi":"POST /v2/playbooks/{id}/run","href":"/api-reference/v2/playbooks/run-playbook"},{"title":"Deploy Playbook","openapi":"POST /v2/playbooks/{id}/deploy","href":"/api-reference/v2/playbooks/deploy-playbook"},{"title":"Delete Playbook","openapi":"DELETE /v2/playbooks/{id}","href":"/api-reference/v2/playbooks/delete-playbook"}]},{"group":"Dashboards","pages":[{"title":"Create Dashboard","openapi":"POST /v2/chats","href":"/api-reference/v2/dashboards/create-dashboard"},{"title":"List Chats with Dashboards","openapi":"GET /v2/chats","href":"/api-reference/v2/dashboards/list-dashboards"},{"title":"Get Dashboard","openapi":"GET /v2/chats/{id}","href":"/api-reference/v2/dashboards/get-dashboard"},{"title":"Stream Dashboard","openapi":"POST /v2/chats/stream","href":"/api-reference/v2/dashboards/stream-dashboard"},{"title":"Cancel Dashboard Stream","openapi":"POST /v2/chats/{id}/cancel","href":"/api-reference/v2/dashboards/cancel-dashboard"}]},{"group":"Sandcastles","pages":[{"title":"List Sandcastles","openapi":"GET /v2/sandcastles","href":"/api-reference/v2/sandbox/list-sandboxes"},{"title":"Start Sandcastle","openapi":"POST /v2/sandcastles","href":"/api-reference/v2/sandbox/start-sandbox"},{"title":"Get Sandcastle Status","openapi":"GET /v2/sandcastles/{id}","href":"/api-reference/v2/sandbox/get-sandbox-status"},{"title":"List Executions","openapi":"GET /v2/sandcastles/{id}/executions","href":"/api-reference/v2/sandbox/list-executions"},{"title":"Stop Sandcastle","openapi":"DELETE /v2/sandcastles/{id}","href":"/api-reference/v2/sandbox/stop-sandbox"},{"title":"Execute Code","openapi":"POST /v2/sandcastles/{id}/execute","href":"/api-reference/v2/sandbox/execute-code"},{"title":"Load Connector Data","openapi":"POST /v2/sandcastles/{id}/query","href":"/api-reference/v2/sandbox/load-connector-data"},{"title":"Upload File","openapi":"POST /v2/sandcastles/{id}/files","href":"/api-reference/v2/sandbox/upload-file"},{"title":"Diff Ontology (Dry Run)","openapi":"GET /v2/sandcastles/{id}/ontology/diff","href":"/api-reference/v2/sandbox/diff-ontology"},{"title":"Create Ontology Change (Writeback)","openapi":"POST /v2/sandcastles/{id}/ontology/changes","href":"/api-reference/v2/sandbox/create-ontology-change"}]},{"group":"Changes","pages":[{"title":"List Changes","openapi":"GET /v2/changes","href":"/api-reference/v2/changes/list-changes"},{"title":"Get Change","openapi":"GET /v2/changes/{id}","href":"/api-reference/v2/changes/get-change"},{"title":"Approve Change","openapi":"POST /v2/changes/{id}/approve","href":"/api-reference/v2/changes/approve-change"},{"title":"Deny Change","openapi":"POST /v2/changes/{id}/deny","href":"/api-reference/v2/changes/deny-change"},{"title":"Restore Change","openapi":"POST /v2/changes/{id}/restore","href":"/api-reference/v2/changes/restore-change"}]}]},{"tab":"v3 API (SDK)","pages":[{"title":"v3 API (SDK)","href":"/api-reference/sdk/changelog"}]},{"tab":"MCP Reference","pages":[{"title":"MCP Reference","href":"/core/how-it-works/mcp/ana-as-mcp-server"}]},{"tab":"Helm Charts","pages":[{"title":"Helm Charts","href":"/helm-charts/installation"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/product/changelog"}]}]},"basePath":"","title":"Test Connector - TextQL Docs","buildId":"dpl_5tKr6cUUeuVJdEZ9JAEY3h4soMJ8","deploymentId":"dpl_5tKr6cUUeuVJdEZ9JAEY3h4soMJ8","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DbeN8Wo6.js","utils-CwSb5Doc.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BmREeM3N.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-AYjWerCj.js","snippetPresets-QD4ULQlp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-Digj5cjF.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CiHrzluR.js","shallow-D7h7pFGg.js","getApiPlaygroundDisplay-mlxkpAUf.js","CodeSnippet-D2rH5lZI.js","CodeSnippets-B53ulOaL.js","Page-CqcDm2To.js","getPastedJson-DxGeNMih.js","icon-BHbyrebp.js","MethodPill-C7F_KEEJ.js","DuplicateIcon-j3c5-73z.js","createIcon-OvCnyFqD.js","DynamicMarkdown-DpAS3GCb.js","SectionHeading-DMPpdrvW.js","axios-vUo_bRtp.js","Markdown-D7pDRguu.js","clsx-2_c6mSt_.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cu7_SikL.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ydqCcy4b.js"]}