| 1 | # Required: Relay API and managed tunnel domains |
| 2 | # Production adopts retained DNS zones in your Cloudflare account. The API |
| 3 | # zone serves relay.<zone> in production and relay-<stage>.<zone> for personal |
| 4 | # stages. Managed environment endpoints are provisioned below the tunnel zone. |
| 5 | RELAY_API_ZONE_NAME=example.com |
| 6 | RELAY_TUNNEL_ZONE_NAME=tunnels.example.com |
| 7 | |
| 8 | # Optional: inactive tunnel cleanup. Start with dry-run, verify the cleanup |
| 9 | # logs, then set enabled. Unset and off both disable cleanup. |
| 10 | # RELAY_TUNNEL_CLEANUP_MODE=off |
| 11 | # Optional: cleanup for tunnels whose host never registered recovery, once they |
| 12 | # have been down for 30 days. Same values, independent of the mode above. |
| 13 | # RELAY_LEGACY_TUNNEL_CLEANUP_MODE=off |
| 14 | # Canary stages only: shorten the 30-day legacy grace period, in minutes. |
| 15 | # Ignored on prod. |
| 16 | # RELAY_LEGACY_TUNNEL_GRACE_MINUTES=10 |
| 17 | |
| 18 | # Optional: Relay domain override |
| 19 | # Set this only when the derived relay hostname should not be used. |
| 20 | # RELAY_DOMAIN=relay.example.com |
| 21 | |
| 22 | # Required: Clerk |
| 23 | # Get the keys from the Clerk Dashboard under API keys. Set the JWT audience to |
| 24 | # the `aud` claim configured on the `t3-relay` JWT template. |
| 25 | CLERK_PUBLISHABLE_KEY=pk_test_... |
| 26 | CLERK_SECRET_KEY=sk_test_... |
| 27 | CLERK_JWT_AUDIENCE=t3-code-relay |
| 28 | |
| 29 | # Apple Push Notification service (required unless APNS_ENABLED=false) |
| 30 | # Set APNS_ENABLED=false for an Android-only development relay. |
| 31 | # Get these values from your Apple Developer account. Use `sandbox` for |
| 32 | # development APNs credentials and `production` for production credentials. |
| 33 | APNS_ENVIRONMENT=sandbox |
| 34 | APNS_TEAM_ID=... |
| 35 | APNS_KEY_ID=... |
| 36 | APNS_BUNDLE_ID=... |
| 37 | APNS_PRIVATE_KEY=... |
| 38 | |
| 39 | # Optional: Android push. Set this secret to the service account JSON from |
| 40 | # Firebase Project settings > Service accounts. Never put it in an app build. |
| 41 | # FCM_SERVICE_ACCOUNT={...} |