# Telegram Channel Posts API

> Get a public Telegram channel's recent posts: text, media, forwards, replies, link previews, reactions, views and time, with cursor pagination.

Source: https://www.sandbase.ai/apis/telegram/web/channel-posts
API reference: https://www.sandbase.ai/apis/telegram/web/channel-posts/docs

## Facts

- Provider: Telegram
- Type: Data API
- Endpoint: `POST https://api.sandbase.ai/v1/api/telegram/web/channel-posts`
- Price: $0.0015 per call
- Free allowance: 100 calls per organization per UTC day, shared across eligible APIs
- Capabilities: api, telegram
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

`POST https://api.sandbase.ai/v1/api/telegram/web/channel-posts` with `Authorization: Bearer $SANDBASE_API_KEY` and the parameters as a JSON body.

| Parameter | Type | Required | Allowed values |
| --- | --- | --- | --- |
| `channel` | string | yes |  |
| `after` | integer | no |  |
| `before` | integer | no |  |
| `limit` | integer | no |  |

## FAQ

### How do I use the Telegram Channel Posts API?

Send a POST request to https://api.sandbase.ai/v1/api/telegram/web/channel-posts with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

### How much does the Telegram Channel Posts API cost?

$0.0015 per call. Every organization gets 100 free calls per UTC day, shared across eligible SandBase APIs including this one; after that each call is billed at this price from your SandBase balance. There is no subscription.

### What parameters does the Telegram Channel Posts API accept?

Required: channel (string). Optional: after (integer), before (integer) and limit (integer). The Parameters table and the Playground on this page list every field.

### What does the Telegram Channel Posts API return?

A JSON response returned in the same HTTP request (synchronous). The README on this page includes a sample response.

### Do I need a Telegram developer account or API key?

No. Telegram Channel Posts runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for Telegram API access separately.

## README

### Telegram Channel Posts API

Pass a public channel username and get its latest posts with views, reactions and link previews.

#### Use cases

- Monitor announcements from crypto, news or product channels.
- Track post reach (views) over time.
- Archive channel content.

#### Request

```bash
curl -X POST "https://api.sandbase.ai/v1/api/telegram/web/channel-posts" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"channel": "telegram", "limit": 3}'
```

#### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `channel` | string | Yes | Channel username (required). |
| `after` | integer | No | Pagination cursor — fetch newer posts, pass `data.pagination.after_cursor` from the previous page. |
| `limit` | integer | No | Number of posts (1-100, default 20; when >20 the server automatically pages toward older posts). |
| `before` | integer | No | Pagination cursor — fetch older posts, pass `data.pagination.before_cursor` from the previous page. |

#### Example response

Real response for the request above, trimmed to the main fields. User names and long IDs are masked.

```json
{
  "messages": [
    {
      "id": 460,
      "date": "2026-08-26T19:12:34+00:00",
      "type": "text",
      "views": "1.68M",
      "url": "https://t.me/telegram/460",
      "text": "For all the info from today's update and a look back at 13 years of T…"
    }
  ],
  "pagination": {
    "after_cursor": 460,
    "before_cursor": 458,
    "count": 3,
    "has_more_before": true,
    "limit": 3,
    "pages_fetched": 1
  }
}
```

#### Notes

- Use `before` / `after` cursors from `pagination` to page older or newer posts.

#### Related APIs

- [Batch channel info](/model/telegram/web/batch-channel-info): Fetch basic info (title/description/avatar/subscribers/verified) for multiple public channels concurrently.
- [Get channel info](/model/telegram/web/channel-info): Get public Telegram channel metadata: title, description, avatar, subscriber count, verified badge and media counters..
- [Search posts in a channel](/model/telegram/web/channel-search): Search posts in a channel by keyword (case-insensitive)..
