Reference
Check whether on Telegram
Ask Telegram from an account whether a phone number or @username is a person: exists = true / false / unknown (a hidden phone number looks like an unused one, so phone misses are unknown). Goes through the account's queue and safety gate; saves nothing. pending=true → follow jobId with operations.get.
Ask Telegram from an account whether a phone number or @username is a person: exists = true / false / unknown (a hidden phone number looks like an unused one, so phone misses are unknown). Goes through the account's queue and safety gate; saves nothing. pending=true → follow jobId with operations.get.
Overview
| Name | Value |
|---|---|
| Code | contacts.check_exists |
| Scope needed | contacts.write |
| Risk | Write |
| May need confirmation | No |
| Runs as | Queues work for a node |
Needs Idempotency-Key |
Yes |
| Member roles allowed | owner, manager, agent |
| In the app | Inbox → New message → Search |
Input fields
| Field | Type | Required | Description |
|---|---|---|---|
accountId |
uuid |
Yes | |
query |
text |
Yes | |
waitSec |
integer |
No |
Example request
curl -X POST https://tlg.builera.app/api/public/v2/ops/contacts.check_exists \
-H "Authorization: Bearer $TELEGRAM_AUTO_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: <unique key per operation>" \
-d '{"accountId":"00000000-0000-0000-0000-000000000000","query":"…"}'Output fields (data)
| Field | Type | Required |
|---|---|---|
jobId |
text |
Yes |
exists |
true/false | "unknown" |
Yes |
pending |
true/false |
Yes |
reason |
"held" | "running" | "failed" | "found" | "not_a_person" | "username_not_found" | "phone_hidden_or_unused" | "retry_later" |
Yes |
ok |
true |
Yes |
Example answer
{
"data": {
"jobId": "00000000-0000-4000-8000-000000000000",
"exists": true,
"pending": true,
"reason": "held",
"ok": true
}
}Using it over MCP
Tool contacts_check_exists is listed on the profiles: Real-time operations (realtime), Automation setup (setup), Discover (prospecting), Reports (reports), Administration (admin), Full (full). On other profiles, find it with tools_search and run it with tools_run.