API Configuration
🏥 System Health Check
GET /v1/health Check system status and component health
Expected Response:
{ "status": "healthy", "version": "1.0.0", "timestamp": "2025-11-07T03:37:47.142209", "service": "credit-ai-api", "environment": "development", "checks": { "database": { "status": "healthy", "response_time_ms": 5.2, "connection_pool": "available" }, "ml_model": { "status": "healthy", "model_version": "v1.0", "inference_ready": true }, "llm_service": { "status": "healthy", "enabled": true, "available_providers": ["openai"] } } }
🔍 Feature Extraction API
GET /v1/features/{customer_id} Extract ML features for credit analysis
Test Scenarios:
Customer ID & Feature Set:
Expected Response:
{ "status": "success", "data": { "customer_id": 11, "features": { "age": 46, "NumberOfDependents": 1, "MonthlyIncome": 9945, "DebtRatio": 0.1397, "NumberOfOpenCreditLinesAndLoans": 4, "RevolvingUtilizationOfUnsecuredLines": 0.2517, "NumberOfTime30-59DaysPastDueNotWorse": 0, "NumberOfTime60-89DaysPastDueNotWorse": 0, "NumberOfTimes90DaysLate": 0, "NumberRealEstateLoansOrLines": 0 }, "confidence": "MEDIUM", "execution_time_ms": 889, "schema_version": "v2_credit" } }
💳 Credit Decision API
POST /v1/credit-decisions Make intelligent credit decisions with ML and rules
Test Scenarios:
🟢 Standard Working Capital
Typical salaried customer applying for small business loan
Expected: APPROVE with detailed ML scoring
Request Body (Editable):
Expected Response:
{ "status": "success", "data": { "decision_id": "dec_8e467566bf78", "customer_id": 11, "decision": "APPROVE", "risk_score": 0.088, "confidence": 0.85, "reasons": [ { "type": "positive", "code": "MIN_INCOME", "message": "Average monthly income $5,295.00 meets minimum requirement", "weight": 0.8, "source": "rule_engine" } ], "key_metrics": { "income_trend": "stable" }, "processing_time_ms": 2171, "metadata": { "customer_type": "salaried", "feature_confidence": "HIGH", "rules_evaluated": 7, "schema_version": "v2_credit" } } }
📊 Analytics Query API
POST /v1/analytics/query Natural language queries with template matching
Query Examples:
📋 Template-Based Queries
Pre-built templates for common business intelligence queries
Expected: Fast SQL generation without LLM costs
Request Body (Editable):
Expected Response:
{ "status": "success", "data": { "query": "Show me customers with high debt ratios", "generated_sql": "SELECT customer_id, debt_ratio, monthly_income...", "results": [ { "customer_id": 967, "debt_ratio": 0.8234, "monthly_income": 3313, "risk_segment": "high" } ], "row_count": 10, "execution_time_ms": 816, "llm_used": false, "llm_provider": null, "conversion_strategy": "template_match", "schema_version": "v2_credit" } }
📋 Decision Retrieval API
GET /v1/credit-decisions/{decision_id} Retrieve specific credit decisions
Decision ID:
Expected Response:
{ "status": "success", "data": { "decision_id": "dec_35", "customer_id": 201, "decision": "APPROVE", "risk_score": 0.18, "loan_amount": 5000.00, "created_at": "2025-11-07T20:47:54.618958", "reasons": [...], "metadata": {...} } }
📝 Decision Listing API
GET /v1/credit-decisions List and filter credit decisions
Filter Examples:
Query Parameters: