# Send Publora — Telegram to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "publora-telegram",
    "name": "Publora — Telegram",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/sergebulaev/publora-telegram",
    "canonicalUrl": "https://clawhub.ai/sergebulaev/publora-telegram",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/publora-telegram",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=publora-telegram",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "publora-telegram",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T14:22:33.608Z",
      "expiresAt": "2026-05-14T14:22:33.608Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=publora-telegram",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=publora-telegram",
        "contentDisposition": "attachment; filename=\"publora-telegram-1.2.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "publora-telegram"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/publora-telegram"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/publora-telegram",
    "downloadUrl": "https://openagent3.xyz/downloads/publora-telegram",
    "agentUrl": "https://openagent3.xyz/skills/publora-telegram/agent",
    "manifestUrl": "https://openagent3.xyz/skills/publora-telegram/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/publora-telegram/agent.md"
  }
}
```
## Documentation

### Publora — Telegram

Telegram platform skill for the Publora API. For auth, core scheduling, media upload, and workspace/webhook docs, see the publora core skill.

Base URL: https://api.publora.com/api/v1
Header: x-publora-key: sk_YOUR_KEY
Platform ID format: telegram-{chatId}

### Requirements

Create a bot via @BotFather on Telegram
Copy the bot token
Add the bot as an administrator of your target channel or group
Connect via Publora dashboard using the bot token + channel name

### Platform Limits (API — Bot API)

⚠️ Telegram Bot API has a strict 50 MB file limit (not the 4 GB that user clients allow).

PropertyBot API LimitUser ClientText (message)4,096 charactersSameMedia caption1,024 characters ⚠️4,096 (Premium)ImagesUp to 10 × 10 MBJPEG, PNG, GIF, WebP, BMPVideo50 MB ⚠️4 GBVideo formatsMP4, MOV, AVI, MKV, WebM—Text only✅ Yes—Rate limit30 messages/sec20 messages/min per group

Common errors:

MEDIA_CAPTION_TOO_LONG — caption exceeds 1,024 chars → reduce or move text to message body
Bad Request: file is too big — file exceeds 50 MB → compress or use a smaller file

### Post a Text Message

await fetch('https://api.publora.com/api/v1/create-post', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json', 'x-publora-key': 'sk_YOUR_KEY' },
  body: JSON.stringify({
    content: '📢 **Announcement**: Our new feature is live! Check it out at publora.com\\n\\n#update #publora',
    platforms: ['telegram--1001234567890']  // note: group chat IDs are negative
  })
});

Markdown formatting is supported in Telegram messages.

### Schedule a Message

body: JSON.stringify({
  content: 'Your Telegram channel message here',
  platforms: ['telegram--1001234567890'],
  scheduledTime: '2026-03-20T09:00:00.000Z'
})

### Send an Image

import requests

HEADERS = { 'Content-Type': 'application/json', 'x-publora-key': 'sk_YOUR_KEY' }

# Step 1: Create post (content = caption, max 1,024 chars for media)
post = requests.post('https://api.publora.com/api/v1/create-post', headers=HEADERS, json={
    'content': 'Check out our latest update! 🚀',   # keep under 1,024 chars when attaching media
    'platforms': ['telegram--1001234567890']
}).json()

# Step 2: Get upload URL (max 10 MB per image)
upload = requests.post('https://api.publora.com/api/v1/get-upload-url', headers=HEADERS, json={
    'postGroupId': post['postGroupId'],
    'fileName': 'image.jpg',
    'contentType': 'image/jpeg',
    'type': 'image'
}).json()

# Step 3: Upload
with open('image.jpg', 'rb') as f:
    requests.put(upload['uploadUrl'], headers={'Content-Type': 'image/jpeg'}, data=f)

### Send a Video (max 50 MB)

Same flow as image but use contentType: 'video/mp4' and type: 'video'. Keep the file under 50 MB.

### Platform Quirks

Bot API file limit is 50 MB — not 4 GB like Telegram user clients. For larger files, you'd need a Local Bot API Server (not supported by Publora)
Caption vs message body: When attaching media, content becomes the caption (max 1,024 chars). For text-only posts, content can be up to 4,096 chars.
Markdown supported: Use **bold**, _italic_, \`code\`, [link](url) in message content
Group chat IDs are negative: e.g. telegram--1001234567890
Bot must be admin: The bot needs admin permissions to post in channels; in groups, it needs at least "Send messages" permission
Rate limit: 30 messages/second globally; 20 messages/minute per group — Publora handles queuing automatically
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: sergebulaev
- Version: 1.2.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-07T14:22:33.608Z
- Expires at: 2026-05-14T14:22:33.608Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/publora-telegram)
- [Send to Agent page](https://openagent3.xyz/skills/publora-telegram/agent)
- [JSON manifest](https://openagent3.xyz/skills/publora-telegram/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/publora-telegram/agent.md)
- [Download page](https://openagent3.xyz/downloads/publora-telegram)