summaryrefslogtreecommitdiff
path: root/config.control.example.json
blob: 2b05636e46810de8e576d4bbbf003ea1fca32a7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
{
  "server": {
    "address_env": "AIGW_SERVER_ADDRESS",
    "max_body_bytes": 16777216,
    "read_header_timeout_seconds": 10,
    "idle_timeout_seconds": 120,
    "shutdown_timeout_seconds": 20
  },
  "auth": {
    "allow_anonymous": false
  },
  "control_plane": {
    "enabled": true,
    "database_url_env": "AIGW_DATABASE_URL",
    "redis_url_env": "AIGW_REDIS_URL",
    "credential_key_env": "AIGW_CREDENTIAL_KEY",
    "redis_channel": "aigw:control:changed",
    "snapshot_cache_key": "aigw:control:generation",
    "reload_interval_seconds": 30,
    "auto_migrate": true
  },
  "admin": {
    "enabled": true,
    "token_env": "AIGW_ADMIN_TOKEN",
    "base_path": "/admin",
    "registration_enabled": true,
    "session_ttl_hours": 12,
    "public_url_env": "AIGW_PUBLIC_URL",
    "mail": {
      "enabled": true,
      "from_name": "AIGW",
      "from_address_env": "AIGW_SMTP_FROM_ADDRESS",
      "smtp_address_env": "AIGW_SMTP_ADDRESS",
      "smtp_username_env": "AIGW_SMTP_USERNAME",
      "smtp_password_env": "AIGW_SMTP_PASSWORD",
      "tls_mode": "none"
    },
    "webauthn": {
      "enabled": true,
      "rp_display_name": "AIGW Console",
      "rp_id_env": "AIGW_WEBAUTHN_RP_ID",
      "origins_env": "AIGW_WEBAUTHN_ORIGINS"
    }
  },
  "billing": {
    "enabled": true,
    "currency": "usd",
    "default_max_output_tokens": 4096,
    "min_top_up_minor": 500,
    "max_top_up_minor": 1000000,
    "stripe": {
      "enabled": true,
      "api_key_env": "AIGW_STRIPE_API_KEY",
      "webhook_secret_env": "AIGW_STRIPE_WEBHOOK_SECRET",
      "success_url_env": "AIGW_STRIPE_SUCCESS_URL",
      "cancel_url_env": "AIGW_STRIPE_CANCEL_URL"
    }
  },
  "upstream_http": {
    "max_idle_connections": 4096,
    "max_idle_connections_per_host": 1024,
    "idle_connection_timeout_seconds": 90,
    "response_header_timeout_seconds": 60
  },
  "observability": {
    "usage_buffer": 8192,
    "expose_metrics": true
  },
  "providers": [],
  "models": []
}