---
title: "Create Hook"
method: POST
path: "/v1/teams/{team_id}/hooks"
tags: ["hooks"]
---

# Create Hook

`POST /v1/teams/{team_id}/hooks`

Mint a hook. The plaintext token is returned HERE AND NOWHERE ELSE — only
its hash is stored, so a database read can never yield a working endpoint.

## Path parameters

- `team_id` string, uuid, required

## Headers

- `authorization` string, nullable
- `x-darwin-token` string, nullable

## Request body

- HookCreate
  - `target_kind` string, required
  - `target_id` string, uuid, nullable
  - `purpose` string
  - `expects` object
  - `ttl_hours` integer
  - `max_submissions` integer

## Response `201`

Successful Response

- object

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/stormy/apis/stormy-control-plane.md) · [All operations](https://skmtc.dev/stormy/apis/stormy-control-plane/llms.txt) · [OpenAPI document](https://skmtc.dev/stormy/apis/stormy-control-plane/revisions/52151384d62a?raw)
