News — V0.1 Alpha 3 Has Published

Turn Telegram channels into a headless CMS

TeleporT exposes Telegram channels via a lightweight REST API — with typed content, file proxying, webhooks, and D1 storage.

Backed by
Cloudflare WorkersTelegram

Messages → JSON

Expose channel posts with parsed frontmatter into typed JSON.

File proxy

Serve Telegram photos/documents via cached proxy with proper MIME types.

D1 storage

Persist posts, photos, and attachments with pagination and indexes.

Webhook ingestion

Ingest via webhook with optional secret token + admin moderation.

Use Cases

Map Telegram posts into typed collections using simple frontmatter. Query them via/api/:id/:collection.

API Explorer

Generate real URLs for your channel and copy ready-to-run snippets against the live API.

Try the API

Enter a Telegram channel handle or ID

curl -s   'https://teleport-worker.xdeveloperteam.workers.dev/api/teleportclouds/messages?limit=10&page=1'
URL:https://teleport-worker.xdeveloperteam.workers.dev/api/teleportclouds/messages?limit=10&page=1resolvefile proxy /api/file/:file_id[.ext]webhook /api/telegram/webhook

Endpoints that map to Telegram

Query messages, resolve handles, fetch files, and ingest webhooks. Responses are typed from optional frontmatter in your posts.

  • GET /api/:id_or_handle/messages with pagination.
  • GET/api/resolve?handle=@channel to resolve IDs.
  • GET/api/file/:file_id[.ext] file proxy with cache.
  • POST/api/telegram/webhook to ingest updates.

Messages API response

Typed content via frontmatter + attachments

GET /api/@channel/messages?limit=10&page=1
{
  "chat_id": "-100123",
  "page": 1,
  "page_size": 10,
  "has_more": true,
  "messages": [
    {
      "message_id": 42,
      "date": 1700000000,
      "type": "product",
      "slug": "react-shirt",
      "meta": { "price": 19.99, "currency": "USD", "tags": ["merch","shirt","react"] },
      "text": "The body of your post...",
      "photo": { "url": "/api/file/<file_id>.jpg", "width": 800, "height": 600 }
    }
  ]
}

Ready to publish from Telegram?

Point your channel’s webhook to TeleporT and start querying posts in minutes.

Webhook + Secrets + D1