Wufoo · Arazzo Workflow

Wufoo Rotate a Form Webhook

Version 1.0.0

Add a fresh webhook subscription, then delete the prior one by hash.

1 workflow 1 source API 1 provider
View Spec View on GitHub FormsForm BuilderSurveysData CollectionWebhookPaymentsSurveyMonkeyArazzoWorkflows

Provider

wufoo

Workflows

rotate-form-webhook
Replace a Wufoo form webhook by creating the new one before deleting the old.
Adds a new webhook subscription pointing at the replacement URL, then deletes the old webhook identified by its hash, leaving exactly one active subscriber.
2 steps inputs: apiKey, formIdentifier, handshakeKey, newUrl, oldHash outputs: deleteResult, newHash
1
addNewWebhook
Create the replacement webhook subscription first so a subscriber stays live.
2
deleteOldWebhook
Delete the previous webhook now that the replacement is registered.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Wufoo Rotate a Form Webhook
  summary: Add a fresh webhook subscription, then delete the prior one by hash.
  description: >-
    Rotates a form's webhook subscriber endpoint without dropping events. The
    workflow first adds the new subscription so the replacement endpoint is
    live, then deletes the previously registered webhook by its hash. Ordering
    the create before the delete keeps a subscriber active throughout the swap.
    Every step spells out its request inline so the flow can be read and
    executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: webhooksApi
  url: ../openapi/wufoo-webhooks-api-openapi.yml
  type: openapi
workflows:
- workflowId: rotate-form-webhook
  summary: Replace a Wufoo form webhook by creating the new one before deleting the old.
  description: >-
    Adds a new webhook subscription pointing at the replacement URL, then
    deletes the old webhook identified by its hash, leaving exactly one active
    subscriber.
  inputs:
    type: object
    required:
    - apiKey
    - formIdentifier
    - newUrl
    - oldHash
    properties:
      apiKey:
        type: string
        description: Wufoo account API key, used as the HTTP Basic Auth username.
      formIdentifier:
        type: string
        description: Form hash (preferred) or title that owns the webhook.
      newUrl:
        type: string
        description: Replacement subscriber endpoint to POST submissions to.
      handshakeKey:
        type: string
        description: Shared secret echoed back as HandshakeKey in payloads.
      oldHash:
        type: string
        description: Hash of the existing webhook to remove after the new one is live.
  steps:
  - stepId: addNewWebhook
    description: Create the replacement webhook subscription first so a subscriber stays live.
    operationId: putFormWebhook
    parameters:
    - name: identifier
      in: path
      value: $inputs.formIdentifier
    - name: format
      in: path
      value: json
    requestBody:
      contentType: application/x-www-form-urlencoded
      payload:
        url: $inputs.newUrl
        handshakeKey: $inputs.handshakeKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      newHash: $response.body#/WebHookPutResult/Hash
  - stepId: deleteOldWebhook
    description: Delete the previous webhook now that the replacement is registered.
    operationId: deleteFormWebhook
    parameters:
    - name: identifier
      in: path
      value: $inputs.formIdentifier
    - name: hash
      in: path
      value: $inputs.oldHash
    - name: format
      in: path
      value: json
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      deleteResult: $response.body#/WebHookDeleteResult
  outputs:
    newHash: $steps.addNewWebhook.outputs.newHash
    deleteResult: $steps.deleteOldWebhook.outputs.deleteResult

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/wufoo-rotate-form-webhook-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.