{"slug":"rotate-a-webhook-secret","title":"Rotate a webhook secret","tags":["tailscale"],"agent_summary":"Last validated: Jan 20, 2026","trigger_phrases":[],"runnable":false,"markdown":"\r\n# Rotate a webhook secret\r\n\r\nLast validated: Jan 20, 2026\r\n\r\n[Webhook](https://tailscale.com/docs/features/webhooks) secrets authenticate incoming webhook events from Tailscale to your endpoint. You rotate a webhook secret when you need to replace the existing secret with a new one, either as part of regular security maintenance or after a potential compromise. This process generates a new secret while maintaining your webhook endpoint configuration.\r\n\r\n## [Prerequisites](https://tailscale.com/docs/features/webhooks/how-to/rotate-webhook-secret\\#prerequisites)\r\n\r\nTo rotate a webhook secret, ensure you meet the following prerequisites:\r\n\r\n- [Be an Owner, Admin, Network admin, or IT admin](https://tailscale.com/docs/reference/user-roles).\r\n- Have an existing webhook endpoint configured in the admin console.\r\n\r\n## [Instructions](https://tailscale.com/docs/features/webhooks/how-to/rotate-webhook-secret\\#instructions)\r\n\r\nThe following instructions guide you through the process of rotating a webhook secret in the Tailscale admin console.\r\n\r\nRotating a webhook secret replaces the existing secret with a new one. The old secret stops working immediately after rotation, so you need to update your verification routine with the new secret to continue receiving events.\r\n\r\n1. Open the [Webhooks](https://login.tailscale.com/admin/settings/webhooks) page of the admin console.\r\n\r\n2. Find the endpoint for which to rotate the secret, then select the ![ellipsis icon](https://tailscale.com/files/images/icons/fa-ellipsis-h.svg) menu > **Rotate webhook secret**. This opens the **Rotate webhook secret** modal.\r\n\r\n3. Select **Rotate** to confirm you want a new secret.\r\n\r\n4. In the **Rotate webhook secret** modal, select **Copy** to copy the new secret.\r\n\r\n5. Save the secret in a secure location. You won't be able to access it again after closing the modal.\r\n\r\n\r\n\r\nTreat the webhook secret like a password. Make sure to store it in a secure location.\r\n\r\n6. Select **Done**.\r\n\r\n\r\nThe new secret takes effect immediately for all new events. Update your [signature verification](https://tailscale.com/docs/features/webhooks#verifying-an-event-signature) routine with the new secret to continue processing webhook events.\r\n\r\n## [Next steps](https://tailscale.com/docs/features/webhooks/how-to/rotate-webhook-secret\\#next-steps)\r\n\r\nAfter rotating your webhook secret, consider the following next steps:\r\n\r\n- [Verify webhook signatures](https://tailscale.com/docs/features/webhooks#verifying-an-event-signature): Update your verification code with the new secret.\r\n- [Test webhook endpoints](https://tailscale.com/docs/features/webhooks#testing-webhooks): Send test events to confirm your endpoint works with the new secret.\r\n- [Configure webhook events](https://tailscale.com/docs/features/webhooks#setting-up-a-webhook-endpoint): Manage which events trigger notifications to your endpoint.\r\n","html":"<h1>Rotate a webhook secret</h1>\n<p>Last validated: Jan 20, 2026</p>\n<p><a href=\"https://tailscale.com/docs/features/webhooks\">Webhook</a> secrets authenticate incoming webhook events from Tailscale to your endpoint. You rotate a webhook secret when you need to replace the existing secret with a new one, either as part of regular security maintenance or after a potential compromise. This process generates a new secret while maintaining your webhook endpoint configuration.</p>\n<h2><a href=\"https://tailscale.com/docs/features/webhooks/how-to/rotate-webhook-secret#prerequisites\">Prerequisites</a></h2>\n<p>To rotate a webhook secret, ensure you meet the following prerequisites:</p>\n<ul>\n<li><a href=\"https://tailscale.com/docs/reference/user-roles\">Be an Owner, Admin, Network admin, or IT admin</a>.</li>\n<li>Have an existing webhook endpoint configured in the admin console.</li>\n</ul>\n<h2><a href=\"https://tailscale.com/docs/features/webhooks/how-to/rotate-webhook-secret#instructions\">Instructions</a></h2>\n<p>The following instructions guide you through the process of rotating a webhook secret in the Tailscale admin console.</p>\n<p>Rotating a webhook secret replaces the existing secret with a new one. The old secret stops working immediately after rotation, so you need to update your verification routine with the new secret to continue receiving events.</p>\n<ol>\n<li>\n<p>Open the <a href=\"https://login.tailscale.com/admin/settings/webhooks\">Webhooks</a> page of the admin console.</p>\n</li>\n<li>\n<p>Find the endpoint for which to rotate the secret, then select the <img src=\"https://tailscale.com/files/images/icons/fa-ellipsis-h.svg\" alt=\"ellipsis icon\"> menu > <strong>Rotate webhook secret</strong>. This opens the <strong>Rotate webhook secret</strong> modal.</p>\n</li>\n<li>\n<p>Select <strong>Rotate</strong> to confirm you want a new secret.</p>\n</li>\n<li>\n<p>In the <strong>Rotate webhook secret</strong> modal, select <strong>Copy</strong> to copy the new secret.</p>\n</li>\n<li>\n<p>Save the secret in a secure location. You won't be able to access it again after closing the modal.</p>\n</li>\n</ol>\n<p>Treat the webhook secret like a password. Make sure to store it in a secure location.</p>\n<ol start=\"6\">\n<li>Select <strong>Done</strong>.</li>\n</ol>\n<p>The new secret takes effect immediately for all new events. Update your <a href=\"https://tailscale.com/docs/features/webhooks#verifying-an-event-signature\">signature verification</a> routine with the new secret to continue processing webhook events.</p>\n<h2><a href=\"https://tailscale.com/docs/features/webhooks/how-to/rotate-webhook-secret#next-steps\">Next steps</a></h2>\n<p>After rotating your webhook secret, consider the following next steps:</p>\n<ul>\n<li><a href=\"https://tailscale.com/docs/features/webhooks#verifying-an-event-signature\">Verify webhook signatures</a>: Update your verification code with the new secret.</li>\n<li><a href=\"https://tailscale.com/docs/features/webhooks#testing-webhooks\">Test webhook endpoints</a>: Send test events to confirm your endpoint works with the new secret.</li>\n<li><a href=\"https://tailscale.com/docs/features/webhooks#setting-up-a-webhook-endpoint\">Configure webhook events</a>: Manage which events trigger notifications to your endpoint.</li>\n</ul>\n"}