---
title: "Check a receiver URL"
locale: en
url: https://tlg.builera.app/en/docs/reference/rest/webhooks.validate_url
verified: 2026-10-24
app_version: "2.0"
generated: true
---

# Check a receiver URL

Check a receiver URL exactly like saving does (https:443, public DNS, not this app) without saving. Returns valid + reason code (url_invalid, url_private, url_unresolvable, url_self).

Check a receiver URL exactly like saving does (https:443, public DNS, not this app) without saving. Returns valid + reason code (url_invalid, url_private, url_unresolvable, url_self).

## Overview

| Name | Value |
| --- | --- |
| Code | `webhooks.validate_url` |
| Scope needed | `webhooks.manage` |
| Risk | Read |
| May need confirmation | No |
| Runs as | Answers right away |
| Needs `Idempotency-Key` | No |
| Member roles allowed | `owner`, `manager`, `agent` |
| In the app | Settings → Webhooks |

## Input fields

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `url` | `text` | Yes |   |

## Example request

```bash
curl -X POST https://tlg.builera.app/api/public/v2/ops/webhooks.validate_url \
  -H "Authorization: Bearer $TELEGRAM_AUTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"…"}'
```

## Output fields (`data`)

| Field | Type | Required |
| --- | --- | --- |
| `ok` | `true` | Yes |
| `valid` | `true/false` | Yes |
| `code` | `text` | Yes |
| `reason` | `text` | Yes |

## Example answer

```json
{
  "data": {
    "ok": true,
    "valid": true,
    "code": "text",
    "reason": "text"
  }
}
```

## Using it over MCP

Not listed on any profile: call `tools_describe` then `tools_run` with `code: "webhooks.validate_url"`. Tool name when listed: `webhooks_validate_url`.
