Authentication & metadata
Database connectivity and metadata operations including credential validation, schema retrieval, and preflight checks.
Endpoints
Test Authentication
POST/workflows/v1/auth
Verify database connection credentials and authentication parameters without performing any data operations. Validates connection string, authentication tokens, SSL certificates, and network accessibility.
Request Body
application/jsonRequired
authType
stringREQUIREDDatabase authentication method
Enum:
"basic"
"oauth"
"token"
Example:
"basic"
host
stringREQUIREDDatabase server hostname or IP address
Example:
"localhost"
port
integerREQUIREDDatabase server port number
Example:
5432
username
stringREQUIREDDatabase username for authentication
Example:
"username"
password
stringREQUIREDDatabase password
Example:
"password"
database
stringREQUIREDTarget database name or schema identifier for connection scope
Example:
"databasename"
extra
objectoptionalExtended 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
success
booleanREQUIREDWhether authentication was successful
Example:
true
message
stringREQUIREDAuthentication 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
Database 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()