The QUIC and WebTransport listeners terminate TLS with a cert/key pair on disk. ReloadCertificates reloads the pair in place. Use it for ACME/Let’s Encrypt renewals, or to rotate compromised material without a restart.
There is no SDK wrapper. Use the raw RPC envelope to call this method.

ReloadCertificates

Request (ReloadCertificatesRequest): Both files must already exist on the gateway’s filesystem at the supplied paths. The admin RPC does not transport file bytes. It only starts an in-process reload. Response (ReloadCertificatesResponse):

What changes when

  • Existing QUIC connections keep their session tickets. They continue to use the certificate from their handshake. The gateway does not drop them.
  • New QUIC handshakes use the newly loaded cert. The next 0-RTT resumption that crosses a TLS context refresh also uses it.
  • Self-signed dev certs: browsers cache serverCertificateHashes. If you rotate a self-signed cert, pass the new fingerprint through the SDK constructor in every browser tab.

ACME loop

A typical operator setup runs certbot renew on a cron schedule. It then calls ReloadCertificates:
<your-rpc-client> is the raw QUIC client that you build to drive the admin RPC. By design, the SDK gives no help here.

Failure mode

If the new cert/key pair fails validation, the gateway keeps the old material and returns status="error". There is no half-loaded state.