Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Catch Hook Setup Integration Block for React

An integration setup section for a form tool working with Zapier: three numbered steps (a copyable Catch Hook address, a sample submission, a field check), a Finish setup Shine Button, and a framed JSON tree of the sample, shown first on wide screens.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

An integration setup section for React with Base UI, written for Formsill, a fictional intake-form tool for service businesses, and its Zapier connection through a Catch Hook. A compact header carries the mark pair at its end. Under a band rule, a split sits behind a divider, with the copy first in the page and the picture first on a wide screen. The copy is three numbered steps: the hook address in a read-only field with a copy button, a Send a sample button, and a line that says how many fields Zapier will see and names them, counted from the sample. Each number becomes a check when its step is done. Under the steps, a polite status line that is in the page from load and the Finish setup Shine Button, which waits for the sample. The picture is a framed window holding the sample as a JSON tree whose branches open and close with the pointer or the arrow keys; it is empty until the sample is sent, and its size never changes. Nothing is sent to or from Zapier. The page's rails and top rule come from the Guides spine, so it lines up with its neighbours in a stack. It's built from Guides, Input Group, Copy Button, JSON Tree View, Button and Shine Button, with your theme's tokens for every colour. Zapier is named in text only: no Zapier logo, colour or wordmark ships with the block. The address uses placeholder ids, and the sample is example data.

FAQ

What stays local?

Everything. The address is an example in the shape of a Catch Hook address with placeholder ids, Copy only copies that text, and Send a sample only fills the tree and changes the status line. Nothing is sent to or from Zapier. Wire your own address, request and field check where the demo changes state.

What is a Catch Hook?

It is an event of Webhooks by Zapier: when you use it as a Zap's trigger, Zapier gives you an address of its own, and the Zap starts whenever something sends a request to it. After a sample arrives, Zapier lists the fields it caught so you can use them in later steps. The block shows that hand-off for a form tool; the field names and the values are example data.

Where does the field count come from?

From the sample: SAMPLE is a typed object, and the count and the field names are its keys, so adding a key to it changes the line, the tree and the caption together. A list inside it, like services, is one field whose branch opens in the tree.

How do I use the tree with a keyboard or a screen reader?

The tree is the catalog's JSON Tree View: Tab moves into it, the arrow keys move between nodes and open or close branches, and the window scrolls if it needs to. Before the sample is sent the tree is hidden from assistive technology and the empty-state sentence is shown instead. The three steps are headings in a list, each starting "To do:" or "Done:" for screen readers, and the status line is a polite live region.

Why does Finish setup wait for the sample?

Because the check has to have something to check. Until a sample has been sent the button is marked unavailable, and pressing it says so in the status line. Pressing Send a sample again after finishing takes the connection back to unfinished.

How does it behave on a phone and in right-to-left layouts?

On a phone the steps come first and the tree window sits under them, scrolling inside its own frame. In a right-to-left layout the split and the rail mirror; the address, the field names and the tree keep their own left-to-right direction. The header fades up once on load, and reduced motion turns that off.

  • Pro

    Zap Recipe Detail Integration

    With a product drawing

    An integration detail section for a form tool connecting to Zapier: a header with the mark pair and a Connect Zapier Shine Button, a three-cell Zap recipe with chevrons on the joins, what it sends and reads, and three steps.

  • Pro

    An integration grid section for a form tool working with Zapier: a derived tally and status line, then a split with the three triggers at the start and the three actions at the end, each a checkbox cell in shared hairlines.

  • Pro

    An integration list section for an intake forms tool connected to Zapier: a table of Zap runs with a chain of three dots for the steps, a state in words and a Replay on halted or held runs, and a tally worked out from the rows.

  • Pro

    An integration setup section for a failed-payment recovery tool connecting to Stripe: three numbered bands (a copyable webhook endpoint, a signing secret in a password field, four event checkboxes) and a foot band with a test event and a Finish setup Shine Button.

  • Pro

    An integration setup section for a tracking-plan checker connecting to Segment: a source type combobox, the write key with a Copy button, and a check that prints four example calls into a dark log window and ends on a result that says it ran in this demo.

  • Pro

    Schema Inspector FAQ

    Code and media

    A headless-CMS FAQ with a live schema inspector: six questions beside a sticky JSON tree of the FAQPage data that expands and highlights the open question, a button to copy the JSON and one JSON-LD script.