> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Resend: Webhooks Rotate Signing Secret

> Rotate a webhook signing secret. Includes SDK V2 guidance, input constraints, response fields, and Deepline credit cost.

Rotate a webhook signing secret.

> [!NOTE]
>
> Tool ID: `resend_webhooks_rotate_signing_secret`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'resend_webhooks_rotate_signing_secret',
  {
    "webhook_id": "123e4567-e89b-42d3-a456-426614174000"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline run resend_webhooks_rotate_signing_secret --input '{
  "webhook_id": "123e4567-e89b-42d3-a456-426614174000"
}'
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "object": "example",
    "id": "123e4567-e89b-42d3-a456-426614174000",
    "signing_secret": "example"
  }
}
```

Use `deepline describe resend_webhooks_rotate_signing_secret --json` for the latest machine-readable contract.

## Input reference

Generates a new signing secret for the webhook and returns it. Payloads delivered after the rotation are signed with the new secret. The previous secret keeps verifying payloads for 24 hours, so both secrets are accepted during that window. A webhook that does not exist or was removed returns a 404 not\_found.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.webhook_id` | `string` | Yes | — | The Webhook ID. Format: `uuid`. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Generates a new signing secret for the webhook and returns it. Payloads delivered after the rotation are signed with the new secret. The previous secret keeps verifying payloads for 24 hours, so both secrets are accepted during that window. A webhook that does not exist or was removed returns a 404 not_found.",
    "properties": {
      "webhook_id": {
        "type": "string",
        "description": "The Webhook ID.",
        "format": "uuid"
      }
    },
    "required": [
      "webhook_id"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.object` | `string` | No | — | The type of object. |
| `result.data.id` | `string` | No | — | The ID of the webhook. Format: `uuid`. |
| `result.data.signing_secret` | `string` | No | — | The new secret key used to verify webhook payloads. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "object": {
            "type": "string",
            "description": "The type of object."
          },
          "id": {
            "type": "string",
            "description": "The ID of the webhook.",
            "format": "uuid"
          },
          "signing_secret": {
            "type": "string",
            "description": "The new secret key used to verify webhook payloads."
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Connect integrations](https://deepline.com/docs/integrations.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.