Manav signed the canonical JSON below with its server secret. Hash the JSON with HMAC-SHA256 using the MANAV_SERVER_SIGNING_SECRET and compare - if it matches, this proof is authentic.
Canonical proof JSON
{"actionPayloadHash":"f348baa2b14976fcfac73cdd0e7efc16e6f08087d795b61d8d09a25febeb6894","actionTitle":"Promote @opsbot to Workspace Owner · acme-ai-labs.slack.com","actionType":"admin_promote","actorHandle":null,"externalReference":null,"organizationSlug":null,"signatureSlug":"mnav_sig_mc5rCHjpMiCV","signedAt":"2026-06-02 12:21:42"}
Action payload hash · SHA-256 of the canonical action payload
f348baa2b14976fcfac73cdd0e7efc16e6f08087d795b61d8d09a25febeb6894
Server signature · HMAC-SHA256 over canonical JSON above
1cc479232206963d5f7f08dcc03fa04ff21d942e9d2d57d9958a073fbd59edc6
Recompute it yourself
$ printf '%s' '{"actionPayloadHash":"f348baa2b14976fcfac73cdd0e7efc16e6f08087d795b61d8d09a25febeb6894","actionTitle":"Promote @opsbot to Workspace Owner · acme-ai-labs.slack.com","actionType":"admin_promote","actorHandle":null,"externalReference":null,"organizationSlug":null,"signatureSlug":"mnav_sig_mc5rCHjpMiCV","signedAt":"2026-06-02 12:21:42"}' \
| openssl dgst -sha256 -hmac "$MANAV_SERVER_SIGNING_SECRET" -hex
$ # expected: 1cc479232206963d5f7f08dcc03fa04ff21d942e9d2d57d9958a073fbd59edc6