Authentication & metadata
Source system connectivity and metadata operations including credential validation, metadata retrieval, and preflight checks.
Endpoints
Test authentication
POST/workflows/v1/authVerify source system connection credentials and authentication parameters without performing any data operations. Validates connection string, authentication tokens, SSL certificates, and network accessibility. The exact shape of the request body is defined by the credentials needed by the app.
Request Body
application/jsonRequired
Source system credentials for the connection to validate. The payload is deserialized into the handler's typed AuthInput and dispatched to handler.test_auth().
authTypestringREQUIREDSource system authentication method
Enum:
"basic""oauth""token"Example:
"basic"hoststringREQUIREDSource system hostname or IP address
Example:
"localhost"portintegerREQUIREDSource system port number
Example:
5432usernamestringREQUIREDSource system username for authentication
Example:
"username"passwordstringREQUIREDSource system password
Example:
"password"databasestringREQUIREDTarget database name or schema identifier for connection scope
Example:
"databasename"extraobjectoptionalExtended authentication parameters including SSL certificates, API keys, OAuth tokens, private keys, and database-specific connection options, automatically parsed from JSON string or object format
Example:
{
"ssl_cert": "-----BEGIN CERTIFICATE-----...",
"api_key": "sk-1234567890abcdef",
"oauth_token": "bearer_token_123",
"ssl_mode": "require"
}Response
200Authentication test completed
successbooleanREQUIREDWhether authentication was successful
Example:
truemessagestringREQUIREDAuthentication result message
Example:
"Authentication successful"Error Codes
400
Bad Request
Invalid request parameters or malformed JSON payload
401
Unauthorized
Missing or invalid authentication token
500
Internal Server Error
Source system connectivity or authentication error
Code examples - Test authentication
- cURL
- Python
BASH Request (cURL)
curl -X POST "http://localhost:8000/workflows/v1/auth" \
-H "Content-Type: application/json" \
-d '{
"authType": "basic",
"host": "localhost",
"port": 5432,
"username": "username",
"password": "password",
"database": "databasename"
}'
Python Request (Python)
import requests
response = requests.post(
"http://localhost:8000/workflows/v1/auth",
json={
"authType": "basic",
"host": "localhost",
"port": 5432,
"username": "username",
"password": "password",
"database": "databasename"
}
)
auth_result = response.json()