Skip to main content
A Slack message can’t be unsent. An announcement about a deploy that rolled back, or a post to the wrong channel, does real damage. Put agent posts behind a human, and post each message once.

Require approval for posts

A workspace policy holds every post, or only posts to certain channels, for a reviewer:

Post once, after approval

Step by step:
  1. The call matches the policy. Nothing is posted, and the message waits in the console for a reviewer.
  2. The reviewer approves, and Invoke posts the message once. The receipt records who approved it.
  3. If the reviewer rejects it, call() throws DeniedError and nothing is posted.
  4. The release key names the post, so the same announcement can’t go out twice.

Keep the message true

Invoke posts the message exactly as approved. It doesn’t re-check your deployment after the reviewer approves. So check the facts with POST /state/verify before you send the call. For example, confirm the deployment status is still success, and don’t post unless the answer is verified. Also write the message so the reviewer can judge it: link the deploy and name the version.

Next steps