JWC services on Hetzner — one host per service, same shape as Cloud Run. https://v14.5.78.156.195.sslip.io jwc-v14-forecast-api X-API-Key https://external.5.78.156.195.sslip.io fp-forecast-external-api ?key= https://buybox-v3.5.78.156.195.sslip.io jwc-buybox-forecast-api-v3 X-API-Key https://buybox-v1.5.78.156.195.sslip.io jwc-buybox-forecast-api X-API-Key https://buybox-price.5.78.156.195.sslip.io jwc-buybox-price-forecast-api X-API-Key https://eu.5.78.156.195.sslip.io jwc-eu-forecast-api X-API-Key https://pd.5.78.156.195.sslip.io product-discovery-api X-API-Key (own key) https://cluster.5.78.156.195.sslip.io cluster-v47 (cluster_v4) X-API-Key https://revive.5.78.156.195.sslip.io jwc-revive-api X-API-Key Paths are passed through unchanged, so every upstream route works exactly as it did on *.run.app — e.g. https://v14.5.78.156.195.sslip.io/v14/forecast