Skip to main content

Module codec

Module codec 

Source
Expand description

The codec-server round trip.

When a cluster encrypts payloads, only a service the user runs can read them. Temporal’s contract for that service is plain HTTP rather than gRPC:

POST {endpoint}/decode
Content-Type: application/json
X-Namespace: {namespace}
Authorization: {auth}          (only when configured)

{"payloads":[{"metadata":{"encoding":"<base64>"},"data":"<base64>"}]}

The body is proto3-JSON, which is why every bytes field, the payload data and each metadata value, is base64. Sending metadata.encoding as the plain string binary/encrypted is the mistake this module exists to not make: a conforming server decodes it as base64, gets nonsense, and refuses the payload.

The response is the same shape, with the payloads decoded.

Structs§

Codec
A configured codec server.