# WebHookRegistrationCreateRequest

Registers a web hook.

**Kind:** an object, used in requests.

## Fields

| Field | Type | Required | Description |
|---|---|---|---|
| `type` | [`WebHookType`](https://docs.maitento.com/reference/types/web-hook-type.md) | yes | What the web hook reports on. Constraints: required (empty or whitespace-only strings are rejected). |
| `url` | `string` | yes | The URL to call. Constraints: format: url, required (empty or whitespace-only strings are rejected). |
| `secret` | `string` | yes | A secret of your choosing that every call is signed with (`X-MT-WebHook-Signature`, an HMAC-SHA256 of `X-MT-WebHook-Timestamp` and the body), so your endpoint can check the call came from Maitento. It's never sent itself. Write-only. Constraints: minLength: 1, required (empty or whitespace-only strings are rejected). |
| `headers` | `map<string, string>` | yes | Extra HTTP headers to send with every call (`{}` for none). Values are write-only. Constraints: required (empty or whitespace-only strings are rejected). |

## Example

```json
{
  "type": "AppProcess",
  "url": "...",
  "secret": "...",
  "headers": {
    "key": "..."
  }
}
```

## Where it's used

- [`webhooks.create`](https://docs.maitento.com/reference/api/webhooks.md) (`POST /web-hooks`)
