--- title: HTTP/2 Support in ZITADEL description: "Configure HTTP/2 support for ZITADEL with reverse proxies and service meshes using gRPC and h2c protocols" sidebar_label: HTTP/2 Support --- ZITADEL follows a strict API first approach and makes heavy use of the modern API framework called [gRPC](https://grpc.io/). Besides gRPC all APIs are also available in an openapi Rest fashion as well as in gRPC-web for compatibility towards browser integrations. To make use of gRPC it is vital to allow your applications to communicate with ZITADEL with [HTTP/2](https://en.wikipedia.org/wiki/HTTP/2). Sometimes you need to configure explicitly that you want to use HTTP/2 if you run ZITADEL behind a reverse proxy and below you should find examples for different vendors and projects. Furthermore it is important to notice that by default HTTP/2 is always encrypted, but if you want to run ZITADEL without TLS from your reverse proxy or service mesh this is possible through [h2c](https://httpd.apache.org/docs/2.4/howto/http2.html). Oftentimes when you run ZITADEL inside a service mesh, or a serverless offering (e.g. Google Cloud Run, Knative, ...) you will need h2c. You can read more about ZITADEL's [TLSs modes here](/self-hosting/manage/tls_modes).