Airtable · Arazzo Workflow

Airtable Consume Webhook Payloads

Version 1.0.0

Discover a webhook and drain its payloads using cursor pagination.

1 workflow 1 source API 1 provider
View Spec View on GitHub ApplicationCollaborationDataDatabasesLow-CodeProductivitySpreadsheetsArazzoWorkflows

Provider

airtable

Workflows

consume-webhook-payloads
List webhooks then drain payloads using cursor pagination.
Resolves a webhook on the base, fetches the first page of webhook payloads, and fetches the next page using the cursor returned from the first page to demonstrate cursor-based pagination.
3 steps inputs: baseId, webhookId outputs: cursor, firstPagePayloads, nextPagePayloads, webhookId
1
listWebhooks
List the webhooks registered on the base and select the first webhook id to drain payloads from.
2
listFirstPage
Read the first page of payloads queued for the resolved webhook. The response carries a cursor used to request the following page.
3
listNextPage
Read the next page of payloads by passing the cursor returned from the first page, continuing where the previous page left off.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Airtable Consume Webhook Payloads
  summary: Discover a webhook and drain its payloads using cursor pagination.
  description: >-
    Consumes the change payloads queued for an Airtable webhook. The workflow
    lists the base's webhooks to resolve a webhook id, reads the first page of
    payloads, and then reads the next page by passing the cursor returned from
    the first page. Each step spells out its request inline so the cursor
    handoff can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
sourceDescriptions:
- name: webhooksApi
  url: ../openapi/airtable-webhooks-api-openapi.yml
  type: openapi
workflows:
- workflowId: consume-webhook-payloads
  summary: List webhooks then drain payloads using cursor pagination.
  description: >-
    Resolves a webhook on the base, fetches the first page of webhook payloads,
    and fetches the next page using the cursor returned from the first page to
    demonstrate cursor-based pagination.
  inputs:
    type: object
    required:
    - baseId
    properties:
      baseId:
        type: string
        description: The Airtable base identifier (e.g. appXXXXXXXXXXXXXX).
      webhookId:
        type: string
        description: >-
          Optional webhook id to drain. When omitted the first webhook returned
          by the base is used.
  steps:
  - stepId: listWebhooks
    description: >-
      List the webhooks registered on the base and select the first webhook id
      to drain payloads from.
    operationId: listWebhooks
    parameters:
    - name: baseId
      in: path
      value: $inputs.baseId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      webhookId: $response.body#/webhooks/0/id
  - stepId: listFirstPage
    description: >-
      Read the first page of payloads queued for the resolved webhook. The
      response carries a cursor used to request the following page.
    operationId: listWebhookPayloads
    parameters:
    - name: baseId
      in: path
      value: $inputs.baseId
    - name: webhookId
      in: path
      value: $steps.listWebhooks.outputs.webhookId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      payloads: $response.body#/payloads
      cursor: $response.body#/cursor
      mightHaveMore: $response.body#/mightHaveMore
  - stepId: listNextPage
    description: >-
      Read the next page of payloads by passing the cursor returned from the
      first page, continuing where the previous page left off.
    operationId: listWebhookPayloads
    parameters:
    - name: baseId
      in: path
      value: $inputs.baseId
    - name: webhookId
      in: path
      value: $steps.listWebhooks.outputs.webhookId
    - name: cursor
      in: query
      value: $steps.listFirstPage.outputs.cursor
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      payloads: $response.body#/payloads
      cursor: $response.body#/cursor
      mightHaveMore: $response.body#/mightHaveMore
  outputs:
    webhookId: $steps.listWebhooks.outputs.webhookId
    firstPagePayloads: $steps.listFirstPage.outputs.payloads
    nextPagePayloads: $steps.listNextPage.outputs.payloads
    cursor: $steps.listNextPage.outputs.cursor

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/airtable-consume-webhook-payloads-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.