# WEBHOOK_URL_INVALID

The webhook URL is not valid: it must include a host (for example https://mydomain.com/webhook)

<Callout type="info">
**Category:** [Webhooks](/errors/category/webhook)
</Callout>

| | |
|---|---|
| HTTP status | `422` Unprocessable Content |
| Retry | After fixing the cause |

## When it happens

The webhook URL uses `https://` but has no deliverable host, for example `https:///path` or `https://.example.com`. A value that is not a URL at all (`not a url`, `https://`) is rejected earlier, with `400 INVALID_JSON_FORMAT`.

## How to fix it

Register a full URL with a host, such as `https://example.com/webhooks/beel`.

## Retry

Not as is: the same request fails the same way. Fix the cause described above, then send the request again, under a new `Idempotency-Key` if the body changed.

## Returned by

The operations where this code is most likely. The list is not exhaustive.

- [`POST /v1/accounts/{account_id}/webhooks`](/webhooks/createAccountWebhookSubscription)
- [`PATCH /v1/accounts/{account_id}/webhooks/{webhook_id}`](/webhooks/patchAccountWebhookSubscription)

## Example response

When this error occurs, the API answers `422` Unprocessable Content with a JSON body of this shape:

```json
{
  "type": "https://docs.beel.es/errors/WEBHOOK_URL_INVALID",
  "title": "WEBHOOK_URL_INVALID",
  "detail": "The webhook URL is not valid: it must include a host (for example https://mydomain.com/webhook)",
  "instance": "/v1/<resource>",
  "errors": [],
  "success": false,
  "error": {
    "code": "WEBHOOK_URL_INVALID",
    "message": "The webhook URL is not valid: it must include a host (for example https://mydomain.com/webhook)",
    "details": {}
  },
  "meta": {
    "timestamp": "2026-05-21T10:00:00Z",
    "request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
  }
}
```

The `type` URI is stable and always resolves to this page.

## Message

<Tabs items={["English", "Spanish", "Catalan"]}>
  <Tab value="English">{"The webhook URL is not valid: it must include a host (for example https://mydomain.com/webhook)"}</Tab>
  <Tab value="Spanish">{"La URL del webhook no es válida: debe incluir un host (por ejemplo https://midominio.com/webhook)"}</Tab>
  <Tab value="Catalan">{"La URL del webhook no és vàlida: ha d'incloure un host (per exemple https://elmeudomini.com/webhook)"}</Tab>
</Tabs>

Send the request with `Accept-Language: <es|en|ca>` to receive the message in your preferred language.

## Other errors in this category

<div className="grid grid-cols-2 gap-3 not-prose">
  <Card title="DELIVERY_LOG_NOT_FOUND" description="Webhook delivery log not found" href="/errors/DELIVERY_LOG_NOT_FOUND" />
  <Card title="URL_MUST_BE_HTTPS" description="The webhook URL must use HTTPS" href="/errors/URL_MUST_BE_HTTPS" />
  <Card title="URL_TARGET_NOT_ALLOWED" description="The webhook URL points to an internal network address. Use an endpoint reachable from the internet." href="/errors/URL_TARGET_NOT_ALLOWED" />
  <Card title="WEBHOOK_ACTIVE_SUBSCRIPTION_LIMIT_REACHED" description="The account already has the maximum of ‹value› active webhook subscriptions. Deactivate or delete one before creating or reactivating another." href="/errors/WEBHOOK_ACTIVE_SUBSCRIPTION_LIMIT_REACHED" />
  <Card title="WEBHOOK_REACTIVATION_REQUIRES_LIVE_ENDPOINT" description="BeeL. paused this subscription. To reactivate it, the endpoint must first answer a test delivery successfully." href="/errors/WEBHOOK_REACTIVATION_REQUIRES_LIVE_ENDPOINT" />
</div>

## Keep exploring

<div className="grid grid-cols-2 gap-3 not-prose">
  <Card title="All Webhooks errors" description="Every code in this category in one table." href="/errors/category/webhook" />
  <Card title="Error reference home" description="Browse every category or jump to the handling guide." href="/errors" />
</div>

---

Full OpenAPI spec: https://docs.beel.es/api/openapi