Skip to main content

Authentication & metadata

Database connectivity and metadata operations including credential validation, schema retrieval, and preflight checks.

Endpoints

Fetch Metadata

POST
/workflows/v1/metadata

Retrieve comprehensive database structure information including available databases, schemas, tables, and their relationships. Supports filtering by metadata type and specific database selection for targeted discovery.

Request Body

application/jsonRequired
typestringoptional
Scope of metadata discovery operation, defaults to 'all' for comprehensive database structure retrieval
Default:"all"
Enum:
"database""schema""all"
Example:"all"
databasestringoptional
Target database name to limit metadata discovery scope, omit for all accessible databases
Example:"specific_database"
authTypestringREQUIRED
Database authentication method
Enum:
"basic""oauth""token"
Example:"basic"
hoststringREQUIRED
Database server hostname or IP address
Example:"localhost"
portintegerREQUIRED
Database server port number
Example:
5432
usernamestringREQUIRED
Database username for authentication
Example:"username"
passwordstringREQUIRED
Database user password or authentication token for connection authentication
Example:"password"
extraobjectoptional
Extended 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

200Metadata fetched successfully
successbooleanREQUIRED
Whether the operation was successful
Example:
true
dataobjectREQUIRED
Metadata information

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 - Fetch Metadata

BASH Request (cURL)
curl -X POST "http://localhost:8000/workflows/v1/metadata" \
-H "Content-Type: application/json" \
-d '{
"type": "all",
"database": "specific_database",
"authType": "basic",
"host": "localhost",
"port": 5432,
"username": "username",
"password": "password"
}'