Get webhooks

Reads one webhook of a form.

GET /v1/form/forms/{id}/webhooks/{webhook}

Addresshttps://api.hanzo.ai/v1/form/forms/{id}/webhooks/{webhook}
MethodGET
Operationget_form_webhook
AuthAuthorization: Bearer $HANZO_API_KEY

Reads one webhook of a form. Its secret is never read back. An org admin only.

Request

2 fields.

FieldInTypeRequiredDescription
idpathstringyesID is the form's id or slug, from the path.
webhookpathstringyesWebhook is the webhook's id, from the path.

Response

StatusBodyMeaning
200form.Webhookok
defaultproblem-detailsrefused

200 body — 8 fields.

FieldInTypeAlwaysDescription
createdbodystring—Created is when the webhook was made, RFC 3339.
enabledbodyboolean—Enabled is whether responses are posted.
formbodystring—Form is the form's id.
idbodystring—ID is the webhook's id.
secretbodystring—Secret is the signing secret, answered once: when the webhook is made or its secret is set or rotated.
tagbodystring—Tag names the webhook in its form.
updatedbodystring—Updated is when it last changed, RFC 3339.
urlbodystring—URL is the https address posted to.

Failure carries the platform error shape — see Errors.

Examples

hanzo form forms webhooks get <id> <webhook>
import { Configuration, FormApi } from 'hanzoai';

const api = new FormApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getFormWebhook({ id: 'id', webhook: 'webhook' });
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import FormApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = FormApi(client).get_form_webhook(id='id', webhook='webhook')
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.FormAPI.GetFormWebhook(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, form_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = form_api::get_form_webhook(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.FormApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new FormApi(client).getFormWebhook();

The method above is the one at the current release of the document. [email protected] (npm) and [email protected] (PyPI) were generated from an earlier release, where this operation carried a different id, so it spells the method differently — regenerating the clients is what makes the two agree. SDKs →

curl https://api.hanzo.ai/v1/form/forms/<id>/webhooks/<webhook> \
  -H "Authorization: Bearer $HANZO_API_KEY"

Tool form, op get_form_webhook — POST the JSON-RPC envelope to https://api.hanzo.ai/v1/mcp.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "form",
         "arguments": {
           "op": "get_form_webhook",
           "input": {
             "id": "<id>",
             "webhook": "<webhook>"
           }
         }
       }
     }'

Form API · All Hanzo APIs · Interactive reference

Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.