{
  "ConnectionStrings": {
    "DefaultConnection": "Server=163.61.126.204,1433;Database=AirportWifi;User Id=user;Password=CSB@ibp2026;TrustServerCertificate=True;"
  },
  "Jwt": {
    "Issuer": "AirportWifi.API",
    "Audience": "AirportWifi.Clients",
    "Secret": "REPLACE_WITH_A_LONG_RANDOM_SECRET_STORED_IN_USER_SECRETS_OR_ENV_VARS",
    "AccessTokenExpiryMinutes": 30,
    "RefreshTokenExpiryDays": 7
  },
  "Cors": {
    "AllowedOrigins": [
      "https://airport.precisosoftware.com/"
    ]
  },
  "Serilog": {
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft": "Warning",
        "Microsoft.EntityFrameworkCore": "Warning",
        "System": "Warning"
      }
    }
  },
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "IpRateLimiting": {
    "EnableEndpointRateLimiting": true,
    "StackBlockedRequests": false,
    "RealIpHeader": "X-Real-IP",
    "ClientIdHeader": "X-ClientId",
    "HttpStatusCode": 429,
    "GeneralRules": [
      {
        "Endpoint": "POST:/api/auth/login",
        "Period": "1m",
        "Limit": 10
      },
      {
        "Endpoint": "POST:/api/otp/request",
        "Period": "5m",
        "Limit": 5
      },
      {
        "Endpoint": "*",
        "Period": "1s",
        "Limit": 10
      },
      {
        "Endpoint": "*",
        "Period": "1m",
        "Limit": 200
      }
    ]
  },
  "SeedAdmin": {
    "UserName": "admin",
    "Email": "admin@airportwifi.local",
    "Password": "ChangeMe!2026#"
  },
  "AllowedHosts": "*"
}
