{"success":true,"requestId":"93168137-4b74-4062-b3ba-9ebccc945744","timestamp":"2026-09-16T02:48:59.608Z","data":{"service":"api","status":"valid","total":54,"missing":0,"invalid":0,"globalIssues":[],"variables":{"NODE_ENV":{"present":true,"source":"env","valid":true,"value":"development","issues":[]},"HOST":{"present":true,"source":"env","valid":true,"value":"0.0.0.0","issues":[]},"PORT":{"present":true,"source":"env","valid":true,"value":"8080","issues":[]},"API_PORT":{"present":true,"source":"env","valid":true,"value":"3010","issues":[]},"LOG_LEVEL":{"present":true,"source":"env","valid":true,"value":"info","issues":[]},"LOG_PRETTY":{"present":true,"source":"env","valid":true,"value":"false","issues":[]},"SERVICE_NAME":{"present":true,"source":"env","valid":true,"value":"cra-demo-api","issues":[]},"ALLOWED_ORIGINS":{"present":true,"source":"env","valid":true,"value":"https://app.demo.cra-direct.fr","issues":[]},"DATABASE_URL":{"present":true,"source":"env","valid":true,"value":"postgresql://appuser:5SVnAB8cYqy2ciQzbrXNPmdE4P0kke1fWOVhGpUG@172.17.0.1:5432/demoappdb?sslmode=disable","issues":[]},"DB_POOL_SIZE":{"present":true,"source":"env","valid":true,"value":"5","issues":[]},"DB_MAX_CONNECTIONS":{"present":true,"source":"env","valid":true,"value":"5","issues":[]},"DB_IDLE_TIMEOUT_SECONDS":{"present":true,"source":"env","valid":true,"value":"30","issues":[]},"DB_CONNECT_TIMEOUT_SECONDS":{"present":true,"source":"env","valid":true,"value":"10","issues":[]},"DEBUG_SQL":{"present":true,"source":"env","valid":true,"value":"false","issues":[]},"SBOM_SIGNING_SECRET":{"present":true,"source":"env","valid":true,"value":"0b42...7bab","issues":[]},"DATA_ENCRYPTION_KEY":{"present":true,"source":"env","valid":true,"value":"8f73...34b9","issues":[]},"DATA_ENCRYPTION_KEY_VERSION":{"present":true,"source":"env","valid":true,"value":"********","issues":[]},"DATA_ENCRYPTION_ENABLED":{"present":true,"source":"env","valid":true,"value":"true","issues":[]},"API_INTERNAL_SECRET":{"present":true,"source":"env","valid":true,"value":"Aovi...3RZc","issues":[]},"API_KEY_PEPPER":{"present":true,"source":"env","valid":true,"value":"Wlgg...bamg","issues":[]},"OBJECT_STORAGE_ACCESS_KEY":{"present":true,"source":"env","valid":true,"value":"aa06...cf83","issues":[]},"OBJECT_STORAGE_SECRET_KEY":{"present":true,"source":"env","valid":true,"value":"44f7...8111","issues":[]},"OBJECT_STORAGE_REGION":{"present":true,"source":"env","valid":true,"value":"auto","issues":[]},"OBJECT_STORAGE_ENDPOINT":{"present":true,"source":"env","valid":true,"value":"https://a2c695f538b328749bf1f96940dc2486.r2.cloudflarestorage.com","issues":[]},"API_RATE_LIMIT_BACKEND":{"present":true,"source":"env","valid":true,"value":"auto","issues":[]},"SBOM_INGEST_MAX_BYTES":{"present":true,"source":"db","valid":true,"value":"209715200","issues":[]},"OBJECT_STORAGE_BUCKET":{"present":true,"source":"env","valid":true,"value":"cra-direct-bucket","issues":[]},"CRA_AI_TRIAGE_ENABLED":{"present":true,"source":"env","valid":true,"value":"false","issues":[]},"CRA_AI_REPORT_DRAFT_ENABLED":{"present":true,"source":"env","valid":true,"value":"false","issues":[]},"CRA_AI_TIMEOUT_MS":{"present":true,"source":"db","valid":true,"value":"180000","issues":[]},"CRA_EPSS_LOW_RISK_THRESHOLD":{"present":true,"source":"db","valid":true,"value":"0.1","issues":[]},"CRA_MAX_ATTEMPTS":{"present":true,"source":"db","valid":true,"value":"3","issues":[]},"STATELESS_SBOM_MAX_BYTES":{"present":true,"source":"db","valid":true,"value":"15728640","issues":[]},"STATELESS_SBOM_MAX_PURLS":{"present":true,"source":"db","valid":true,"value":"10000","issues":[]},"STATELESS_PURL_SCAN_MAX_BYTES":{"present":true,"source":"db","valid":true,"value":"1048576","issues":[]},"STATELESS_TRIAGE_MAX_BYTES":{"present":true,"source":"db","valid":true,"value":"10485760","issues":[]},"STATELESS_SCAN_TIMEOUT_MS":{"present":true,"source":"db","valid":true,"value":"180000","issues":[]},"STATELESS_TRIAGE_TIMEOUT_MS":{"present":true,"source":"db","valid":true,"value":"180000","issues":[]},"STATELESS_API_KEY_RATE_LIMIT_PER_MINUTE":{"present":true,"source":"db","valid":true,"value":"********","issues":[]},"STATELESS_AUTH_ATTEMPT_RATE_LIMIT_PER_MINUTE":{"present":true,"source":"db","valid":true,"value":"300","issues":[]},"STATELESS_API_KEY_CONCURRENCY":{"present":true,"source":"db","valid":true,"value":"********","issues":[]},"STATELESS_API_KEY_PURL_LIMIT_PER_MINUTE":{"present":true,"source":"db","valid":true,"value":"********","issues":[]},"STATELESS_API_KEY_TRIAGE_VULN_LIMIT_PER_MINUTE":{"present":true,"source":"db","valid":true,"value":"********","issues":[]},"STATELESS_IDEMPOTENCY_TTL_SECONDS":{"present":true,"source":"db","valid":true,"value":"86400","issues":[]},"STATELESS_SCANNER_REQUIRED_READINESS_SOURCES":{"present":true,"source":"db","valid":true,"value":"osv,epss,cisa-kev","issues":[]},"STATELESS_SCANNER_READINESS_TIMEOUT_MS":{"present":true,"source":"db","valid":true,"value":"10000","issues":[]},"STATELESS_SCANNER_OSV_BATCH_SIZE":{"present":true,"source":"db","valid":true,"value":"400","issues":[]},"STATELESS_SCANNER_OSV_BATCH_CONCURRENCY":{"present":true,"source":"db","valid":true,"value":"4","issues":[]},"STATELESS_SCANNER_OSV_HYDRATION_CONCURRENCY":{"present":true,"source":"db","valid":true,"value":"10","issues":[]},"AI_DEFAULT_MODEL":{"present":true,"source":"db","valid":true,"value":"mistral:mistral-large-latest","issues":[]},"AI_DECISION_MODEL":{"present":true,"source":"db","valid":true,"value":"mistral:mistral-large-latest","issues":[]},"AI_REPORT_MODEL":{"present":true,"source":"db","valid":true,"value":"mistral:mistral-large-latest","issues":[]},"GOOGLE_GENERATIVE_AI_API_KEY":{"present":true,"source":"env","valid":true,"value":"********","issues":[]},"MISTRAL_API_KEY":{"present":true,"source":"env","valid":true,"value":"OKe7...LPSi","issues":[]}}}}