---
title: "REST API v2"
locale: en
url: https://tlg.builera.app/en/docs/reference/rest
verified: 2026-10-24
app_version: "2.0"
generated: true
---

# REST API v2

Every app action over HTTP, through the same safety gate as the app.

Every app action over HTTP, through the same safety gate as the app.

## Base URL

```
https://tlg.builera.app/api/public/v2
```

## Authentication

Every request carries the key of an **AI connection** (created in Settings → AI connections): `Authorization: Bearer $TELEGRAM_AUTO_API_KEY`. A connection has its own role, scopes, account list and budgets — never the full rights of the person who made it.

## Calling an operation

Each operation is `POST /ops/<code>` with a JSON body. Success answers `{ ok: true, data }`; errors answer problem JSON (RFC 9457) with a `code` — see [Error codes](https://tlg.builera.app/en/docs/reference/errors).

## Idempotency

Operations with effects need an `Idempotency-Key` header: the same key within 24 hours returns the first answer instead of acting twice. Retries after a network error always reuse the key.

## Actions the person must approve

Dangerous actions answer `409 confirmation_required` with a `summary` and a `confirm_token`. The agent must show the `summary` to the person; only if they agree does it call again with **the same input** plus `confirm_token`.

## Work that runs on Telegram

Operations that "queue work for a node" return an `operation_id`; follow it with `GET /operations/<id>` or the `operation.*` events.

Full OpenAPI document (machine-readable): [https://tlg.builera.app/api/public/v2/openapi.json](https://tlg.builera.app/api/public/v2/openapi.json)

## All operations

293 operations, grouped by app area.

### Accounts

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`accounts.answer_tos`](https://tlg.builera.app/en/docs/reference/rest/accounts.answer_tos) | Answer Telegram's terms of service | `accounts.manage` | Write | Queues work for a node |
| [`accounts.change_proxy`](https://tlg.builera.app/en/docs/reference/rest/accounts.change_proxy) | Change proxy | `infra.manage` | Write | Answers right away |
| [`accounts.check_spambot`](https://tlg.builera.app/en/docs/reference/rest/accounts.check_spambot) | Check @SpamBot | `accounts.read` | Write | Queues work for a node |
| [`accounts.create`](https://tlg.builera.app/en/docs/reference/rest/accounts.create) | Add a Telegram account | `accounts.manage` | Write | Answers right away |
| [`accounts.get`](https://tlg.builera.app/en/docs/reference/rest/accounts.get) | Account details | `accounts.read` | Read | Answers right away |
| [`accounts.initial_sync`](https://tlg.builera.app/en/docs/reference/rest/accounts.initial_sync) | Re-sync conversations | `accounts.settings` | Write | Queues work for a node |
| [`accounts.kill_session`](https://tlg.builera.app/en/docs/reference/rest/accounts.kill_session) | End a Telegram session | `accounts.manage` | Dangerous | Queues work for a node |
| [`accounts.list`](https://tlg.builera.app/en/docs/reference/rest/accounts.list) | List Telegram accounts | `accounts.read` | Read | Answers right away |
| [`accounts.list_sessions`](https://tlg.builera.app/en/docs/reference/rest/accounts.list_sessions) | View login sessions | `accounts.read` | Write | Queues work for a node |
| [`accounts.login_start`](https://tlg.builera.app/en/docs/reference/rest/accounts.login_start) | Start login (QR or phone number) | `accounts.manage` | Write | Queues work for a node |
| [`accounts.login_status`](https://tlg.builera.app/en/docs/reference/rest/accounts.login_status) | Login progress | `accounts.manage` | Read | Answers right away |
| [`accounts.login_submit`](https://tlg.builera.app/en/docs/reference/rest/accounts.login_submit) | Enter code / two-step password | `accounts.manage` | Write | Answers right away |
| [`accounts.logout`](https://tlg.builera.app/en/docs/reference/rest/accounts.logout) | Log out of Telegram | `accounts.manage` | Dangerous | Queues work for a node |
| [`accounts.move_node`](https://tlg.builera.app/en/docs/reference/rest/accounts.move_node) | Move to another machine | `infra.manage` | Write | Answers right away |
| [`accounts.quota`](https://tlg.builera.app/en/docs/reference/rest/accounts.quota) | Quota used today | `stats.read` | Read | Answers right away |
| [`accounts.read_privacy`](https://tlg.builera.app/en/docs/reference/rest/accounts.read_privacy) | View Telegram privacy settings | `accounts.read` | Read | Queues work for a node |
| [`accounts.recover`](https://tlg.builera.app/en/docs/reference/rest/accounts.recover) | Recover after a restriction | `accounts.settings` | Write | Answers right away |
| [`accounts.remove`](https://tlg.builera.app/en/docs/reference/rest/accounts.remove) | Remove account | `accounts.manage` | Dangerous | Answers right away |
| [`accounts.rollback_settings`](https://tlg.builera.app/en/docs/reference/rest/accounts.rollback_settings) | Restore an earlier account setting | `accounts.settings` | Write | Answers right away |
| [`accounts.set_contact_sync`](https://tlg.builera.app/en/docs/reference/rest/accounts.set_contact_sync) | Turn contact sync on / off | `accounts.settings` | Write | Answers right away |
| [`accounts.set_paused`](https://tlg.builera.app/en/docs/reference/rest/accounts.set_paused) | Pause / resume an account | `accounts.settings` | Write | Answers right away |
| [`accounts.set_privacy`](https://tlg.builera.app/en/docs/reference/rest/accounts.set_privacy) | Change Telegram privacy settings | `profile.write` | Write | Queues work for a node |
| [`accounts.set_tags`](https://tlg.builera.app/en/docs/reference/rest/accounts.set_tags) | Add / remove account tags | `accounts.settings` | Write | Answers right away |
| [`accounts.settings_history`](https://tlg.builera.app/en/docs/reference/rest/accounts.settings_history) | Account settings history | `accounts.read` | Read | Answers right away |
| [`accounts.update_photo`](https://tlg.builera.app/en/docs/reference/rest/accounts.update_photo) | Change Telegram profile photo | `profile.write` | Write | Queues work for a node |
| [`accounts.update_profile`](https://tlg.builera.app/en/docs/reference/rest/accounts.update_profile) | Edit Telegram name and bio | `profile.write` | Write | Queues work for a node |
| [`accounts.update_settings`](https://tlg.builera.app/en/docs/reference/rest/accounts.update_settings) | Account settings | `accounts.settings` | Write | Answers right away |
| [`accounts.update_username`](https://tlg.builera.app/en/docs/reference/rest/accounts.update_username) | Change Telegram username | `profile.write` | Write | Queues work for a node |
| [`sequences.cancel`](https://tlg.builera.app/en/docs/reference/rest/sequences.cancel) | Cancel a sequence | `accounts.read` | Write | Answers right away |
| [`sequences.get`](https://tlg.builera.app/en/docs/reference/rest/sequences.get) | View a sequence | `accounts.read` | Read | Answers right away |
| [`sequences.list`](https://tlg.builera.app/en/docs/reference/rest/sequences.list) | List sequences | `accounts.read` | Read | Answers right away |
| [`sequences.run`](https://tlg.builera.app/en/docs/reference/rest/sequences.run) | Run a sequence | `accounts.read` | Write | Answers right away |
| [`stories.list`](https://tlg.builera.app/en/docs/reference/rest/stories.list) | View stories (person / contacts / own / viewers) | `messages.read` | Read | Queues work for a node |
| [`stories.manage`](https://tlg.builera.app/en/docs/reference/rest/stories.manage) | Delete / pin own stories | `profile.write` | Write | Queues work for a node |
| [`stories.post`](https://tlg.builera.app/en/docs/reference/rest/stories.post) | Post a story | `profile.write` | Write | Queues work for a node |

### Alerts

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`alerts.list`](https://tlg.builera.app/en/docs/reference/rest/alerts.list) | List alerts | `audit.read` | Read | Answers right away |
| [`alerts.mark_seen`](https://tlg.builera.app/en/docs/reference/rest/alerts.mark_seen) | Mark alerts as seen | `audit.read` | Write | Answers right away |
| [`alerts.resolve`](https://tlg.builera.app/en/docs/reference/rest/alerts.resolve) | Close an alert | `audit.read` | Write | Answers right away |

### Settings

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`alerts.save_rules`](https://tlg.builera.app/en/docs/reference/rest/alerts.save_rules) | Alert rules | `integrations.manage` | Write | Answers right away |
| [`capabilities.list`](https://tlg.builera.app/en/docs/reference/rest/capabilities.list) | App capabilities | `accounts.read` | Read | Answers right away |
| [`connections.create`](https://tlg.builera.app/en/docs/reference/rest/connections.create) | Create an AI connection | `integrations.manage` | Dangerous | Answers right away |
| [`connections.delete`](https://tlg.builera.app/en/docs/reference/rest/connections.delete) | Delete an AI connection | `integrations.manage` | Dangerous | Answers right away |
| [`connections.list`](https://tlg.builera.app/en/docs/reference/rest/connections.list) | AI connections | `integrations.manage` | Read | Answers right away |
| [`connections.resume`](https://tlg.builera.app/en/docs/reference/rest/connections.resume) | Turn a connection back on | `integrations.manage` | Dangerous | Answers right away |
| [`connections.rotate_key`](https://tlg.builera.app/en/docs/reference/rest/connections.rotate_key) | Rotate a connection's API key | `integrations.manage` | Dangerous | Answers right away |
| [`connections.stop`](https://tlg.builera.app/en/docs/reference/rest/connections.stop) | Stop a connection now | `integrations.manage` | Write | Answers right away |
| [`connections.update`](https://tlg.builera.app/en/docs/reference/rest/connections.update) | Edit another AI connection | `integrations.manage` | Dangerous | Answers right away |
| [`invites.create`](https://tlg.builera.app/en/docs/reference/rest/invites.create) | Invite a member | `members.manage` | Write | Answers right away |
| [`invites.revoke`](https://tlg.builera.app/en/docs/reference/rest/invites.revoke) | Revoke an invite | `members.manage` | Write | Answers right away |
| [`members.list`](https://tlg.builera.app/en/docs/reference/rest/members.list) | Members and invites | `members.manage` | Read | Answers right away |
| [`members.remove`](https://tlg.builera.app/en/docs/reference/rest/members.remove) | Remove a member | `members.manage` | Dangerous | Answers right away |
| [`members.set_accounts`](https://tlg.builera.app/en/docs/reference/rest/members.set_accounts) | Assign accounts to a support member | `members.manage` | Write | Answers right away |
| [`members.set_role`](https://tlg.builera.app/en/docs/reference/rest/members.set_role) | Change a member's role | `members.manage` | Dangerous | Answers right away |
| [`operations.get`](https://tlg.builera.app/en/docs/reference/rest/operations.get) | Follow an operation | `accounts.read` | Read | Answers right away |
| [`templates.delete`](https://tlg.builera.app/en/docs/reference/rest/templates.delete) | Delete reply template | `chats.manage` | Dangerous | Answers right away |
| [`templates.save`](https://tlg.builera.app/en/docs/reference/rest/templates.save) | Save reply template | `chats.manage` | Write | Answers right away |
| [`webhooks.capabilities`](https://tlg.builera.app/en/docs/reference/rest/webhooks.capabilities) | Webhooks: catalog & limits | `webhooks.read` | Read | Answers right away |
| [`webhooks.create`](https://tlg.builera.app/en/docs/reference/rest/webhooks.create) | Create a webhook | `webhooks.manage` | Write | Answers right away |
| [`webhooks.delete`](https://tlg.builera.app/en/docs/reference/rest/webhooks.delete) | Delete a webhook | `webhooks.manage` | Dangerous | Answers right away |
| [`webhooks.deliveries_get`](https://tlg.builera.app/en/docs/reference/rest/webhooks.deliveries_get) | One delivery's details | `webhooks.read` | Read | Answers right away |
| [`webhooks.deliveries_list`](https://tlg.builera.app/en/docs/reference/rest/webhooks.deliveries_list) | Webhook deliveries | `webhooks.read` | Read | Answers right away |
| [`webhooks.get`](https://tlg.builera.app/en/docs/reference/rest/webhooks.get) | Webhook details | `webhooks.read` | Read | Answers right away |
| [`webhooks.list`](https://tlg.builera.app/en/docs/reference/rest/webhooks.list) | List webhooks | `webhooks.read` | Read | Answers right away |
| [`webhooks.pause`](https://tlg.builera.app/en/docs/reference/rest/webhooks.pause) | Pause a webhook | `webhooks.manage` | Write | Answers right away |
| [`webhooks.preview_filter`](https://tlg.builera.app/en/docs/reference/rest/webhooks.preview_filter) | Try a webhook filter | `webhooks.read` | Read | Answers right away |
| [`webhooks.receiver_guide`](https://tlg.builera.app/en/docs/reference/rest/webhooks.receiver_guide) | Webhook receiver guide | `webhooks.read` | Read | Answers right away |
| [`webhooks.redeliver`](https://tlg.builera.app/en/docs/reference/rest/webhooks.redeliver) | Redeliver a webhook | `webhooks.manage` | Write | Answers right away |
| [`webhooks.replay`](https://tlg.builera.app/en/docs/reference/rest/webhooks.replay) | Replay webhooks over a time range | `webhooks.manage` | Write | Answers right away |
| [`webhooks.replay_cancel`](https://tlg.builera.app/en/docs/reference/rest/webhooks.replay_cancel) | Cancel a replay | `webhooks.manage` | Write | Answers right away |
| [`webhooks.replay_get`](https://tlg.builera.app/en/docs/reference/rest/webhooks.replay_get) | Replay progress | `webhooks.read` | Read | Answers right away |
| [`webhooks.resume`](https://tlg.builera.app/en/docs/reference/rest/webhooks.resume) | Resume a webhook | `webhooks.manage` | Write | Answers right away |
| [`webhooks.test`](https://tlg.builera.app/en/docs/reference/rest/webhooks.test) | Send a test webhook | `webhooks.manage` | Write | Answers right away |
| [`webhooks.update`](https://tlg.builera.app/en/docs/reference/rest/webhooks.update) | Edit a webhook | `webhooks.manage` | Write | Answers right away |
| [`webhooks.validate_url`](https://tlg.builera.app/en/docs/reference/rest/webhooks.validate_url) | Check a receiver URL | `webhooks.manage` | Read | Answers right away |
| [`webhooks.verify`](https://tlg.builera.app/en/docs/reference/rest/webhooks.verify) | Verify a receiver URL | `webhooks.manage` | Write | Answers right away |
| [`workspace.update`](https://tlg.builera.app/en/docs/reference/rest/workspace.update) | Edit workspace | `members.manage` | Write | Answers right away |

### Alert bell

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`alerts.summary`](https://tlg.builera.app/en/docs/reference/rest/alerts.summary) | Count alerts | `audit.read` | Read | Answers right away |

### Logs

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`audit.list`](https://tlg.builera.app/en/docs/reference/rest/audit.list) | Activity log | `audit.read` | Read | Answers right away |
| [`jobs.redrive`](https://tlg.builera.app/en/docs/reference/rest/jobs.redrive) | Rerun a failed job | `accounts.manage` | Dangerous | Queues work for a node |

### Automation

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`automation.history`](https://tlg.builera.app/en/docs/reference/rest/automation.history) | Config change history | `accounts.read` | Read | Answers right away |
| [`automation.overview`](https://tlg.builera.app/en/docs/reference/rest/automation.overview) | Automation overview | `accounts.read` | Read | Answers right away |
| [`automation.rollback`](https://tlg.builera.app/en/docs/reference/rest/automation.rollback) | Restore an earlier config | `automation.write` | Write | Answers right away |
| [`automation.simulate`](https://tlg.builera.app/en/docs/reference/rest/automation.simulate) | Preview the next 7 days | `accounts.read` | Read | Answers right away |
| [`packs.apply`](https://tlg.builera.app/en/docs/reference/rest/packs.apply) | Apply a pack by plan | `automation.write` | Write | Answers right away |
| [`packs.delete`](https://tlg.builera.app/en/docs/reference/rest/packs.delete) | Delete a config pack | `automation.write` | Dangerous | Answers right away |
| [`packs.get`](https://tlg.builera.app/en/docs/reference/rest/packs.get) | View a config pack | `accounts.read` | Read | Answers right away |
| [`packs.plan`](https://tlg.builera.app/en/docs/reference/rest/packs.plan) | Plan applying a pack | `automation.write` | Write | Answers right away |
| [`packs.save`](https://tlg.builera.app/en/docs/reference/rest/packs.save) | Create / edit a config pack | `automation.write` | Write | Answers right away |
| [`routines.delete`](https://tlg.builera.app/en/docs/reference/rest/routines.delete) | Delete a routine | `automation.write` | Dangerous | Answers right away |
| [`routines.get`](https://tlg.builera.app/en/docs/reference/rest/routines.get) | View a routine | `accounts.read` | Read | Answers right away |
| [`routines.run_now`](https://tlg.builera.app/en/docs/reference/rest/routines.run_now) | Run a routine now | `automation.write` | Write | Answers right away |
| [`routines.save`](https://tlg.builera.app/en/docs/reference/rest/routines.save) | Create / edit a routine | `automation.write` | Write | Answers right away |
| [`rules.delete`](https://tlg.builera.app/en/docs/reference/rest/rules.delete) | Delete an automation rule | `automation.write` | Dangerous | Answers right away |
| [`rules.get`](https://tlg.builera.app/en/docs/reference/rest/rules.get) | View an automation rule | `accounts.read` | Read | Answers right away |
| [`rules.save`](https://tlg.builera.app/en/docs/reference/rest/rules.save) | Create / edit an automation rule | `automation.write` | Write | Answers right away |

### Bots

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`bots.adopt`](https://tlg.builera.app/en/docs/reference/rest/bots.adopt) | Adopt an existing bot of the account | `bots.manage` | Write | Answers right away |
| [`bots.create`](https://tlg.builera.app/en/docs/reference/rest/bots.create) | Create a bot | `bots.manage` | Write | Answers right away |
| [`bots.delete`](https://tlg.builera.app/en/docs/reference/rest/bots.delete) | Delete bot | `bots.manage` | Dangerous | Answers right away |
| [`bots.list`](https://tlg.builera.app/en/docs/reference/rest/bots.list) | List bots | `accounts.read` | Read | Answers right away |
| [`bots.refresh_token`](https://tlg.builera.app/en/docs/reference/rest/bots.refresh_token) | Fetch the token again | `bots.manage` | Write | Answers right away |
| [`bots.revoke_token`](https://tlg.builera.app/en/docs/reference/rest/bots.revoke_token) | Change bot token | `bots.manage` | Dangerous | Answers right away |
| [`bots.set_photo`](https://tlg.builera.app/en/docs/reference/rest/bots.set_photo) | Change bot photo | `bots.manage` | Write | Answers right away |
| [`bots.update_profile`](https://tlg.builera.app/en/docs/reference/rest/bots.update_profile) | Edit bot profile | `bots.manage` | Write | Answers right away |

### Inbox

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`bots.press_button`](https://tlg.builera.app/en/docs/reference/rest/bots.press_button) | Press a bot button | `messages.send` | Write | Queues work for a node |
| [`bots.start`](https://tlg.builera.app/en/docs/reference/rest/bots.start) | Start a bot | `messages.send` | Write | Queues work for a node |
| [`contacts.add`](https://tlg.builera.app/en/docs/reference/rest/contacts.add) | Save to contacts | `contacts.write` | Write | Queues work for a node |
| [`contacts.check_exists`](https://tlg.builera.app/en/docs/reference/rest/contacts.check_exists) | Check whether on Telegram | `contacts.write` | Write | Queues work for a node |
| [`contacts.resolve`](https://tlg.builera.app/en/docs/reference/rest/contacts.resolve) | Look up a known identity | `crm.read` | Read | Answers right away |
| [`contacts.start_chat`](https://tlg.builera.app/en/docs/reference/rest/contacts.start_chat) | Find someone and open a chat | `contacts.write` | Write | Queues work for a node |
| [`conversations.add_note`](https://tlg.builera.app/en/docs/reference/rest/conversations.add_note) | Add an internal note | `chats.manage` | Write | Answers right away |
| [`conversations.archive`](https://tlg.builera.app/en/docs/reference/rest/conversations.archive) | Archive / unarchive | `messages.manage` | Write | Queues work for a node |
| [`conversations.claim`](https://tlg.builera.app/en/docs/reference/rest/conversations.claim) | Claim conversation | `messages.send` | Write | Answers right away |
| [`conversations.clear_history`](https://tlg.builera.app/en/docs/reference/rest/conversations.clear_history) | Clear chat history | `messages.manage` | Dangerous | Queues work for a node |
| [`conversations.delete_note`](https://tlg.builera.app/en/docs/reference/rest/conversations.delete_note) | Delete an internal note | `chats.manage` | Dangerous | Answers right away |
| [`conversations.get`](https://tlg.builera.app/en/docs/reference/rest/conversations.get) | Conversation context | `messages.read` | Read | Answers right away |
| [`conversations.list`](https://tlg.builera.app/en/docs/reference/rest/conversations.list) | List conversations | `messages.read` | Read | Answers right away |
| [`conversations.load_history`](https://tlg.builera.app/en/docs/reference/rest/conversations.load_history) | Load older messages from Telegram | `messages.read` | Write | Queues work for a node |
| [`conversations.mark_read`](https://tlg.builera.app/en/docs/reference/rest/conversations.mark_read) | Mark as read | `messages.send` | Write | Queues work for a node |
| [`conversations.mark_unread`](https://tlg.builera.app/en/docs/reference/rest/conversations.mark_unread) | Mark as unread | `messages.send` | Write | Queues work for a node |
| [`conversations.mute`](https://tlg.builera.app/en/docs/reference/rest/conversations.mute) | Mute / unmute notifications | `messages.manage` | Write | Queues work for a node |
| [`conversations.refresh_members`](https://tlg.builera.app/en/docs/reference/rest/conversations.refresh_members) | Reload group members | `messages.read` | Write | Queues work for a node |
| [`conversations.release`](https://tlg.builera.app/en/docs/reference/rest/conversations.release) | Release conversation | `messages.send` | Write | Answers right away |
| [`conversations.save_draft`](https://tlg.builera.app/en/docs/reference/rest/conversations.save_draft) | Save draft to Telegram | `messages.send` | Write | Queues work for a node |
| [`conversations.search_telegram`](https://tlg.builera.app/en/docs/reference/rest/conversations.search_telegram) | Search in the chat | `messages.read` | Read | Queues work for a node |
| [`conversations.typing`](https://tlg.builera.app/en/docs/reference/rest/conversations.typing) | Show “typing…” | `messages.send` | Write | Answers right away |
| [`conversations.update`](https://tlg.builera.app/en/docs/reference/rest/conversations.update) | Status, assignee, tags, pin | `chats.manage` | Write | Answers right away |
| [`folders.delete`](https://tlg.builera.app/en/docs/reference/rest/folders.delete) | Delete a chat folder | `messages.manage` | Dangerous | Queues work for a node |
| [`folders.list`](https://tlg.builera.app/en/docs/reference/rest/folders.list) | View chat folders | `messages.read` | Read | Answers right away |
| [`folders.reorder`](https://tlg.builera.app/en/docs/reference/rest/folders.reorder) | Reorder chat folders | `messages.manage` | Write | Queues work for a node |
| [`folders.save`](https://tlg.builera.app/en/docs/reference/rest/folders.save) | Create / edit a chat folder | `messages.manage` | Write | Queues work for a node |
| [`folders.sync`](https://tlg.builera.app/en/docs/reference/rest/folders.sync) | Reload chat folders from Telegram | `messages.read` | Read | Queues work for a node |
| [`groups.add_bot`](https://tlg.builera.app/en/docs/reference/rest/groups.add_bot) | Add a bot to a group / channel | `groups.admin` | Write | Queues work for a node |
| [`groups.add_members`](https://tlg.builera.app/en/docs/reference/rest/groups.add_members) | Add people to a group / channel | `groups.admin` | Write | Answers right away |
| [`groups.answer_all_requests`](https://tlg.builera.app/en/docs/reference/rest/groups.answer_all_requests) | Approve / decline all requests | `groups.admin` | Write | Queues work for a node |
| [`groups.answer_request`](https://tlg.builera.app/en/docs/reference/rest/groups.answer_request) | Approve / decline a join request | `groups.admin` | Write | Queues work for a node |
| [`groups.ban_member`](https://tlg.builera.app/en/docs/reference/rest/groups.ban_member) | Ban a member | `groups.admin` | Dangerous | Queues work for a node |
| [`groups.close_topic`](https://tlg.builera.app/en/docs/reference/rest/groups.close_topic) | Close / reopen a topic | `groups.admin` | Write | Queues work for a node |
| [`groups.create_channel`](https://tlg.builera.app/en/docs/reference/rest/groups.create_channel) | Create a channel / supergroup | `contacts.write` | Write | Queues work for a node |
| [`groups.create_chat`](https://tlg.builera.app/en/docs/reference/rest/groups.create_chat) | Create a group chat | `contacts.write` | Write | Queues work for a node |
| [`groups.create_link`](https://tlg.builera.app/en/docs/reference/rest/groups.create_link) | Create an invite link | `groups.admin` | Write | Queues work for a node |
| [`groups.create_topic`](https://tlg.builera.app/en/docs/reference/rest/groups.create_topic) | Create a topic | `groups.admin` | Write | Queues work for a node |
| [`groups.delete_chat`](https://tlg.builera.app/en/docs/reference/rest/groups.delete_chat) | Delete group / channel for everyone | `groups.admin` | Dangerous | Queues work for a node |
| [`groups.delete_member_messages`](https://tlg.builera.app/en/docs/reference/rest/groups.delete_member_messages) | Delete all messages of a member | `groups.admin` | Dangerous | Queues work for a node |
| [`groups.delete_topic`](https://tlg.builera.app/en/docs/reference/rest/groups.delete_topic) | Delete a topic | `groups.admin` | Dangerous | Queues work for a node |
| [`groups.edit_link`](https://tlg.builera.app/en/docs/reference/rest/groups.edit_link) | Edit an invite link | `groups.admin` | Write | Queues work for a node |
| [`groups.hide_general_topic`](https://tlg.builera.app/en/docs/reference/rest/groups.hide_general_topic) | Hide / show the General topic | `groups.admin` | Write | Queues work for a node |
| [`groups.info`](https://tlg.builera.app/en/docs/reference/rest/groups.info) | View group admin info | `messages.read` | Read | Queues work for a node |
| [`groups.members`](https://tlg.builera.app/en/docs/reference/rest/groups.members) | Member list | `messages.read` | Read | Queues work for a node |
| [`groups.pin_topic`](https://tlg.builera.app/en/docs/reference/rest/groups.pin_topic) | Pin / unpin a topic | `groups.admin` | Write | Queues work for a node |
| [`groups.remove_member`](https://tlg.builera.app/en/docs/reference/rest/groups.remove_member) | Remove / ban a member | `groups.admin` | Write | Queues work for a node |
| [`groups.rename_topic`](https://tlg.builera.app/en/docs/reference/rest/groups.rename_topic) | Rename a topic | `groups.admin` | Write | Queues work for a node |
| [`groups.restrict_member`](https://tlg.builera.app/en/docs/reference/rest/groups.restrict_member) | Restrict a member | `groups.admin` | Write | Queues work for a node |
| [`groups.revoke_link`](https://tlg.builera.app/en/docs/reference/rest/groups.revoke_link) | Revoke an invite link | `groups.admin` | Dangerous | Queues work for a node |
| [`groups.set_about`](https://tlg.builera.app/en/docs/reference/rest/groups.set_about) | Change group / channel description | `groups.admin` | Write | Queues work for a node |
| [`groups.set_admin`](https://tlg.builera.app/en/docs/reference/rest/groups.set_admin) | Grant / revoke admin rights | `groups.admin` | Write | Queues work for a node |
| [`groups.set_admin_rights`](https://tlg.builera.app/en/docs/reference/rest/groups.set_admin_rights) | Detailed admin rights | `groups.admin` | Write | Queues work for a node |
| [`groups.set_auto_delete`](https://tlg.builera.app/en/docs/reference/rest/groups.set_auto_delete) | Auto-delete messages | `groups.admin` | Write | Queues work for a node |
| [`groups.set_history_hidden`](https://tlg.builera.app/en/docs/reference/rest/groups.set_history_hidden) | Hide / show history for new members | `groups.admin` | Write | Queues work for a node |
| [`groups.set_join_rules`](https://tlg.builera.app/en/docs/reference/rest/groups.set_join_rules) | Join rules | `groups.admin` | Write | Queues work for a node |
| [`groups.set_permissions`](https://tlg.builera.app/en/docs/reference/rest/groups.set_permissions) | Change default member permissions | `groups.admin` | Write | Queues work for a node |
| [`groups.set_photo`](https://tlg.builera.app/en/docs/reference/rest/groups.set_photo) | Change group / channel photo | `groups.admin` | Write | Queues work for a node |
| [`groups.set_protected`](https://tlg.builera.app/en/docs/reference/rest/groups.set_protected) | Block forwarding / saving content | `groups.admin` | Write | Queues work for a node |
| [`groups.set_public_link`](https://tlg.builera.app/en/docs/reference/rest/groups.set_public_link) | Set / remove the public link | `groups.admin` | Write | Queues work for a node |
| [`groups.set_signatures`](https://tlg.builera.app/en/docs/reference/rest/groups.set_signatures) | Sign channel posts | `groups.admin` | Write | Queues work for a node |
| [`groups.set_slow_mode`](https://tlg.builera.app/en/docs/reference/rest/groups.set_slow_mode) | Slow mode | `groups.admin` | Write | Queues work for a node |
| [`groups.set_title`](https://tlg.builera.app/en/docs/reference/rest/groups.set_title) | Rename group / channel | `groups.admin` | Write | Queues work for a node |
| [`groups.toggle_topics`](https://tlg.builera.app/en/docs/reference/rest/groups.toggle_topics) | Turn topics on / off | `groups.admin` | Write | Queues work for a node |
| [`groups.topics`](https://tlg.builera.app/en/docs/reference/rest/groups.topics) | View a group's topics | `messages.read` | Read | Queues work for a node |
| [`groups.unban`](https://tlg.builera.app/en/docs/reference/rest/groups.unban) | Unban a member | `groups.admin` | Write | Queues work for a node |
| [`groups.unpin_all`](https://tlg.builera.app/en/docs/reference/rest/groups.unpin_all) | Unpin all | `groups.admin` | Write | Queues work for a node |
| [`groups.upgrade`](https://tlg.builera.app/en/docs/reference/rest/groups.upgrade) | Upgrade to supergroup | `groups.admin` | Dangerous | Queues work for a node |
| [`messages.close_poll`](https://tlg.builera.app/en/docs/reference/rest/messages.close_poll) | Stop a poll | `messages.send` | Dangerous | Queues work for a node |
| [`messages.delete`](https://tlg.builera.app/en/docs/reference/rest/messages.delete) | Delete messages | `messages.manage` | Dangerous | Queues work for a node |
| [`messages.edit`](https://tlg.builera.app/en/docs/reference/rest/messages.edit) | Edit a sent message | `messages.manage` | Write | Queues work for a node |
| [`messages.forward`](https://tlg.builera.app/en/docs/reference/rest/messages.forward) | Forward messages | `messages.send` | Write | Queues work for a node |
| [`messages.get`](https://tlg.builera.app/en/docs/reference/rest/messages.get) | One message | `messages.read` | Read | Answers right away |
| [`messages.list`](https://tlg.builera.app/en/docs/reference/rest/messages.list) | Messages of a conversation | `messages.read` | Read | Answers right away |
| [`messages.list_scheduled`](https://tlg.builera.app/en/docs/reference/rest/messages.list_scheduled) | View scheduled messages | `messages.read` | Read | Queues work for a node |
| [`messages.manage_scheduled`](https://tlg.builera.app/en/docs/reference/rest/messages.manage_scheduled) | Send now / reschedule / edit / delete scheduled messages | `messages.send` | Write | Queues work for a node |
| [`messages.open_media`](https://tlg.builera.app/en/docs/reference/rest/messages.open_media) | Open a message's file | `messages.read` | Write | Queues work for a node |
| [`messages.pin`](https://tlg.builera.app/en/docs/reference/rest/messages.pin) | Pin / unpin a message | `messages.manage` | Write | Queues work for a node |
| [`messages.react`](https://tlg.builera.app/en/docs/reference/rest/messages.react) | Add / remove a reaction | `messages.send` | Write | Queues work for a node |
| [`messages.reply`](https://tlg.builera.app/en/docs/reference/rest/messages.reply) | Reply to a message | `messages.send` | Write | Queues work for a node |
| [`messages.retry`](https://tlg.builera.app/en/docs/reference/rest/messages.retry) | Resend a failed message | `messages.send` | Write | Queues work for a node |
| [`messages.schedule`](https://tlg.builera.app/en/docs/reference/rest/messages.schedule) | Schedule a message (kept by Telegram) | `messages.send` | Write | Queues work for a node |
| [`messages.send`](https://tlg.builera.app/en/docs/reference/rest/messages.send) | Send a text message | `messages.send` | Write | Queues work for a node |
| [`messages.send_album`](https://tlg.builera.app/en/docs/reference/rest/messages.send_album) | Send a photo / video album | `messages.send` | Write | Queues work for a node |
| [`messages.send_media`](https://tlg.builera.app/en/docs/reference/rest/messages.send_media) | Send a file / photo | `messages.send` | Write | Queues work for a node |
| [`messages.send_poll`](https://tlg.builera.app/en/docs/reference/rest/messages.send_poll) | Send a poll / quiz | `messages.send` | Write | Queues work for a node |
| [`messages.vote_poll`](https://tlg.builera.app/en/docs/reference/rest/messages.vote_poll) | Vote | `messages.send` | Write | Queues work for a node |
| [`people.block`](https://tlg.builera.app/en/docs/reference/rest/people.block) | Block / unblock this person | `contacts.write` | Write | Queues work for a node |
| [`people.delete_contact`](https://tlg.builera.app/en/docs/reference/rest/people.delete_contact) | Remove from Telegram contacts | `contacts.write` | Dangerous | Queues work for a node |
| [`people.refresh_profile`](https://tlg.builera.app/en/docs/reference/rest/people.refresh_profile) | Reload the customer's Telegram profile | `crm.read` | Read | Queues work for a node |
| [`stickers.list`](https://tlg.builera.app/en/docs/reference/rest/stickers.list) | View stickers / GIFs | `messages.read` | Read | Queues work for a node |
| [`stickers.previews`](https://tlg.builera.app/en/docs/reference/rest/stickers.previews) | Load sticker previews | `messages.read` | Read | Queues work for a node |
| [`stickers.send`](https://tlg.builera.app/en/docs/reference/rest/stickers.send) | Send a sticker / GIF | `messages.send` | Write | Queues work for a node |
| [`stories.of_chat`](https://tlg.builera.app/en/docs/reference/rest/stories.of_chat) | View stories of a chat partner | `messages.read` | Read | Queues work for a node |
| [`templates.list`](https://tlg.builera.app/en/docs/reference/rest/templates.list) | Quick reply templates | `messages.read` | Read | Answers right away |

### Campaigns

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`campaigns.add_people`](https://tlg.builera.app/en/docs/reference/rest/campaigns.add_people) | Add people to a campaign | `campaigns.write` | Write | Answers right away |
| [`campaigns.create`](https://tlg.builera.app/en/docs/reference/rest/campaigns.create) | Create a campaign | `campaigns.write` | Write | Answers right away |
| [`campaigns.delete`](https://tlg.builera.app/en/docs/reference/rest/campaigns.delete) | Delete a campaign | `campaigns.write` | Dangerous | Answers right away |
| [`campaigns.discard_draft`](https://tlg.builera.app/en/docs/reference/rest/campaigns.discard_draft) | Discard the flow draft | `campaigns.write` | Write | Answers right away |
| [`campaigns.duplicate`](https://tlg.builera.app/en/docs/reference/rest/campaigns.duplicate) | Duplicate a campaign | `campaigns.write` | Write | Answers right away |
| [`campaigns.get`](https://tlg.builera.app/en/docs/reference/rest/campaigns.get) | Campaign details | `crm.read` | Read | Answers right away |
| [`campaigns.list`](https://tlg.builera.app/en/docs/reference/rest/campaigns.list) | List campaigns | `crm.read` | Read | Answers right away |
| [`campaigns.pause`](https://tlg.builera.app/en/docs/reference/rest/campaigns.pause) | Pause a campaign | `campaigns.run` | Write | Answers right away |
| [`campaigns.people`](https://tlg.builera.app/en/docs/reference/rest/campaigns.people) | People in a campaign | `crm.read` | Read | Answers right away |
| [`campaigns.preview`](https://tlg.builera.app/en/docs/reference/rest/campaigns.preview) | Preview a campaign | `campaigns.write` | Read | Answers right away |
| [`campaigns.publish`](https://tlg.builera.app/en/docs/reference/rest/campaigns.publish) | Publish the flow | `campaigns.write` | Write | Answers right away |
| [`campaigns.remove_recipient`](https://tlg.builera.app/en/docs/reference/rest/campaigns.remove_recipient) | Remove one person from a campaign | `campaigns.write` | Write | Answers right away |
| [`campaigns.resume`](https://tlg.builera.app/en/docs/reference/rest/campaigns.resume) | Resume a campaign | `campaigns.run` | Write | Answers right away |
| [`campaigns.save_graph`](https://tlg.builera.app/en/docs/reference/rest/campaigns.save_graph) | Save campaign flow (draft) | `campaigns.write` | Write | Answers right away |
| [`campaigns.senders`](https://tlg.builera.app/en/docs/reference/rest/campaigns.senders) | Suitable sending accounts | `campaigns.write` | Read | Answers right away |
| [`campaigns.start`](https://tlg.builera.app/en/docs/reference/rest/campaigns.start) | Start a campaign | `campaigns.run` | Write | Answers right away |
| [`campaigns.stop`](https://tlg.builera.app/en/docs/reference/rest/campaigns.stop) | Stop a campaign for good | `campaigns.run` | Dangerous | Answers right away |
| [`campaigns.test`](https://tlg.builera.app/en/docs/reference/rest/campaigns.test) | Technical test send of a campaign | `campaigns.run` | Write | Answers right away |
| [`campaigns.test_status`](https://tlg.builera.app/en/docs/reference/rest/campaigns.test_status) | Campaign test result | `campaigns.write` | Read | Answers right away |
| [`campaigns.update`](https://tlg.builera.app/en/docs/reference/rest/campaigns.update) | Edit a campaign | `campaigns.write` | Write | Answers right away |
| [`enrollments.create`](https://tlg.builera.app/en/docs/reference/rest/enrollments.create) | Enroll people into a campaign | `campaigns.write` | Write | Answers right away |

### People

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`crm.setup`](https://tlg.builera.app/en/docs/reference/rest/crm.setup) | Stages, lists, tags | `crm.read` | Read | Answers right away |
| [`imports.cancel`](https://tlg.builera.app/en/docs/reference/rest/imports.cancel) | Cancel an import | `crm.write` | Write | Answers right away |
| [`imports.start`](https://tlg.builera.app/en/docs/reference/rest/imports.start) | Import people | `crm.write` | Write | Queues work for a node |
| [`lists.delete`](https://tlg.builera.app/en/docs/reference/rest/lists.delete) | Delete a list | `crm.write` | Dangerous | Answers right away |
| [`lists.save`](https://tlg.builera.app/en/docs/reference/rest/lists.save) | Create / edit a list | `crm.write` | Write | Answers right away |
| [`people.add`](https://tlg.builera.app/en/docs/reference/rest/people.add) | Add one person | `crm.write` | Write | Queues work for a node |
| [`people.add_note`](https://tlg.builera.app/en/docs/reference/rest/people.add_note) | Note on a customer | `crm.write` | Write | Answers right away |
| [`people.bulk`](https://tlg.builera.app/en/docs/reference/rest/people.bulk) | Bulk actions on people | `crm.write` | Write | Answers right away |
| [`people.delete_note`](https://tlg.builera.app/en/docs/reference/rest/people.delete_note) | Delete a customer note | `crm.write` | Dangerous | Answers right away |
| [`people.erase`](https://tlg.builera.app/en/docs/reference/rest/people.erase) | Erase a person's data for good | `crm.erase` | Dangerous | Answers right away |
| [`people.export`](https://tlg.builera.app/en/docs/reference/rest/people.export) | Export people data | `crm.export` | Dangerous | Answers right away |
| [`people.get`](https://tlg.builera.app/en/docs/reference/rest/people.get) | Customer profile | `crm.read` | Read | Answers right away |
| [`people.list`](https://tlg.builera.app/en/docs/reference/rest/people.list) | List people | `crm.read` | Read | Answers right away |
| [`people.set_stage`](https://tlg.builera.app/en/docs/reference/rest/people.set_stage) | Change a customer's stage | `crm.write` | Write | Answers right away |
| [`people.set_tags`](https://tlg.builera.app/en/docs/reference/rest/people.set_tags) | Tag a customer | `crm.write` | Write | Answers right away |
| [`people.set_temperature`](https://tlg.builera.app/en/docs/reference/rest/people.set_temperature) | Set a customer's temperature | `crm.write` | Write | Answers right away |
| [`people.suppress`](https://tlg.builera.app/en/docs/reference/rest/people.suppress) | Do not contact this person | `crm.write` | Write | Answers right away |
| [`people.transfer_owner`](https://tlg.builera.app/en/docs/reference/rest/people.transfer_owner) | Change the responsible account | `crm.write` | Write | Answers right away |
| [`people.unsuppress`](https://tlg.builera.app/en/docs/reference/rest/people.unsuppress) | Lift do-not-contact | `crm.write` | Dangerous | Answers right away |
| [`stages.delete`](https://tlg.builera.app/en/docs/reference/rest/stages.delete) | Delete a stage | `crm.write` | Dangerous | Answers right away |
| [`stages.reorder`](https://tlg.builera.app/en/docs/reference/rest/stages.reorder) | Reorder stages | `crm.write` | Write | Answers right away |
| [`stages.save`](https://tlg.builera.app/en/docs/reference/rest/stages.save) | Create / edit a stage | `crm.write` | Write | Answers right away |

### Discover

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`discovery.save_settings`](https://tlg.builera.app/en/docs/reference/rest/discovery.save_settings) | Watched / excluded keywords | `discovery.write` | Write | Answers right away |
| [`groups.add`](https://tlg.builera.app/en/docs/reference/rest/groups.add) | Save a group | `discovery.write` | Write | Answers right away |
| [`groups.join`](https://tlg.builera.app/en/docs/reference/rest/groups.join) | Join a group | `groups.join` | Write | Queues work for a node |
| [`groups.leave`](https://tlg.builera.app/en/docs/reference/rest/groups.leave) | Leave a group | `groups.join` | Dangerous | Queues work for a node |
| [`groups.list`](https://tlg.builera.app/en/docs/reference/rest/groups.list) | Saved groups | `crm.read` | Read | Answers right away |
| [`groups.people`](https://tlg.builera.app/en/docs/reference/rest/groups.people) | People found in a group | `crm.read` | Read | Answers right away |
| [`groups.refresh`](https://tlg.builera.app/en/docs/reference/rest/groups.refresh) | Refresh group info | `discovery.write` | Write | Queues work for a node |
| [`groups.remove`](https://tlg.builera.app/en/docs/reference/rest/groups.remove) | Unsave a group | `discovery.write` | Dangerous | Answers right away |
| [`groups.search`](https://tlg.builera.app/en/docs/reference/rest/groups.search) | Search public groups | `discovery.write` | Write | Queues work for a node |
| [`groups.set_watch`](https://tlg.builera.app/en/docs/reference/rest/groups.set_watch) | Watch keywords in a group | `discovery.write` | Write | Answers right away |
| [`scans.cancel`](https://tlg.builera.app/en/docs/reference/rest/scans.cancel) | Cancel a scan | `groups.scan` | Write | Answers right away |
| [`scans.start`](https://tlg.builera.app/en/docs/reference/rest/scans.start) | Scan a group | `groups.scan` | Write | Queues work for a node |
| [`signals.list`](https://tlg.builera.app/en/docs/reference/rest/signals.list) | Keyword signals | `crm.read` | Read | Answers right away |
| [`signals.set_status`](https://tlg.builera.app/en/docs/reference/rest/signals.set_status) | Mark a signal | `discovery.write` | Write | Answers right away |

### Groups & channels

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`groups.chats`](https://tlg.builera.app/en/docs/reference/rest/groups.chats) | The account's groups & channels | `messages.read` | Read | Answers right away |
| [`groups.refresh_chats`](https://tlg.builera.app/en/docs/reference/rest/groups.refresh_chats) | Re-read the groups & channels list | `messages.read` | Write | Answers right away |
| [`groups.set_tracked`](https://tlg.builera.app/en/docs/reference/rest/groups.set_tracked) | Follow / unfollow a group or channel | `chats.manage` | Write | Answers right away |

### Machines & proxies

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`hetzner.offers`](https://tlg.builera.app/en/docs/reference/rest/hetzner.offers) | Hetzner machine plans | `infra.manage` | Read | Answers right away |
| [`infra.list`](https://tlg.builera.app/en/docs/reference/rest/infra.list) | Machines and proxies | `accounts.read` | Read | Answers right away |
| [`nodes.create_hetzner`](https://tlg.builera.app/en/docs/reference/rest/nodes.create_hetzner) | Create a Hetzner machine (paid) | `infra.manage` | Dangerous | Answers right away |
| [`nodes.create_windows`](https://tlg.builera.app/en/docs/reference/rest/nodes.create_windows) | Add a Windows machine | `infra.manage` | Write | Answers right away |
| [`nodes.delete`](https://tlg.builera.app/en/docs/reference/rest/nodes.delete) | Delete a machine | `infra.manage` | Dangerous | Answers right away |
| [`nodes.evacuate`](https://tlg.builera.app/en/docs/reference/rest/nodes.evacuate) | Move all accounts off a machine | `infra.manage` | Write | Answers right away |
| [`nodes.pairing_code`](https://tlg.builera.app/en/docs/reference/rest/nodes.pairing_code) | Pairing code for a new machine | `infra.manage` | Write | Answers right away |
| [`nodes.reboot`](https://tlg.builera.app/en/docs/reference/rest/nodes.reboot) | Reboot a machine | `infra.manage` | Write | Answers right away |
| [`nodes.reconcile`](https://tlg.builera.app/en/docs/reference/rest/nodes.reconcile) | Reconcile machines with Hetzner | `infra.manage` | Write | Answers right away |
| [`nodes.refresh`](https://tlg.builera.app/en/docs/reference/rest/nodes.refresh) | Refresh machine status | `infra.manage` | Write | Answers right away |
| [`nodes.restart_worker`](https://tlg.builera.app/en/docs/reference/rest/nodes.restart_worker) | Restart the account worker | `infra.manage` | Write | Answers right away |
| [`nodes.retry`](https://tlg.builera.app/en/docs/reference/rest/nodes.retry) | Reinstall a failed machine | `infra.manage` | Write | Answers right away |
| [`nodes.set_drain`](https://tlg.builera.app/en/docs/reference/rest/nodes.set_drain) | Stop taking new accounts | `infra.manage` | Write | Answers right away |
| [`proxies.add`](https://tlg.builera.app/en/docs/reference/rest/proxies.add) | Add proxies | `infra.manage` | Write | Answers right away |
| [`proxies.delete`](https://tlg.builera.app/en/docs/reference/rest/proxies.delete) | Delete a proxy | `infra.manage` | Dangerous | Answers right away |
| [`proxies.recheck`](https://tlg.builera.app/en/docs/reference/rest/proxies.recheck) | Recheck proxy | `infra.manage` | Write | Queues work for a node |
| [`proxies.update`](https://tlg.builera.app/en/docs/reference/rest/proxies.update) | Edit a proxy | `infra.manage` | Write | Answers right away |

### Account nurture

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`nurture.apply`](https://tlg.builera.app/en/docs/reference/rest/nurture.apply) | Apply a nurture playbook to accounts | `nurture.write` | Write | Answers right away |
| [`nurture.list`](https://tlg.builera.app/en/docs/reference/rest/nurture.list) | Nurture playbooks, nurtured accounts, warm channels | `accounts.read` | Read | Answers right away |
| [`nurture.remove`](https://tlg.builera.app/en/docs/reference/rest/nurture.remove) | Remove nurturing from accounts | `nurture.write` | Write | Answers right away |
| [`nurture.set_enabled`](https://tlg.builera.app/en/docs/reference/rest/nurture.set_enabled) | Turn nurturing on / off for an account | `nurture.write` | Write | Answers right away |
| [`nurture.set_task_enabled`](https://tlg.builera.app/en/docs/reference/rest/nurture.set_task_enabled) | Turn one nurture task on / off | `nurture.write` | Write | Answers right away |
| [`nurture.today`](https://tlg.builera.app/en/docs/reference/rest/nurture.today) | Today's nurture tasks | `accounts.read` | Read | Answers right away |
| [`playbooks.delete`](https://tlg.builera.app/en/docs/reference/rest/playbooks.delete) | Delete a nurture playbook | `nurture.write` | Dangerous | Answers right away |
| [`playbooks.save`](https://tlg.builera.app/en/docs/reference/rest/playbooks.save) | Save a nurture playbook | `nurture.write` | Write | Answers right away |
| [`schedules.save`](https://tlg.builera.app/en/docs/reference/rest/schedules.save) | Run-hour schedule for many accounts | `accounts.settings` | Write | Answers right away |
| [`warm_channels.add`](https://tlg.builera.app/en/docs/reference/rest/warm_channels.add) | Add a warm-up channel | `nurture.write` | Write | Answers right away |
| [`warm_channels.remove`](https://tlg.builera.app/en/docs/reference/rest/warm_channels.remove) | Remove a warm-up channel | `nurture.write` | Write | Answers right away |

### Stats

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`stats.gtm`](https://tlg.builera.app/en/docs/reference/rest/stats.gtm) | Discover & campaign stats | `stats.read` | Read | Answers right away |
| [`stats.health`](https://tlg.builera.app/en/docs/reference/rest/stats.health) | Account health stats | `stats.read` | Read | Answers right away |
| [`stats.inbox`](https://tlg.builera.app/en/docs/reference/rest/stats.inbox) | Support stats | `stats.read` | Read | Answers right away |

### Manage channel

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`stories.channel_status`](https://tlg.builera.app/en/docs/reference/rest/stories.channel_status) | Check a channel's boosts / story rights | `messages.read` | Read | Queues work for a node |

### Story viewer (marks as seen automatically)

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`stories.mark_seen`](https://tlg.builera.app/en/docs/reference/rest/stories.mark_seen) | Mark stories as seen | `messages.send` | Write | Queues work for a node |

### Story viewer

| Code | Name | Scope | Risk | Runs as |
| --- | --- | --- | --- | --- |
| [`stories.media`](https://tlg.builera.app/en/docs/reference/rest/stories.media) | Open story photo / video | `messages.read` | Read | Queues work for a node |
| [`stories.react`](https://tlg.builera.app/en/docs/reference/rest/stories.react) | React to a story | `messages.send` | Write | Queues work for a node |
