> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/discord/announcement-channels-channelid>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/discord/announcement-channels-channelid.mdx>

---

# Discord Announcement Channel API

The latest public posts of one announcement channel, with text, attachments and reactions.

`GET /v1/discord/announcement-channels/{channelId}` returns `data.channel` when the id is a public announcement channel. The channel page has `id`, `name`, `topic`, the `server` (id, name, description, icon and splash URLs) and `messages`, newest first. Each message has `id`, `text`, `postedAt`, `editedAt`, `attachments` and `reactions`; each attachment has `url`, `contentType`, `width`, `height` and `description`, and each reaction has the emoji id and name, whether it is animated, and `count`.

The page is marked `truncated: true` because no working cursor was found for older posts. A text channel or an unknown channel id returns `lookupStatus: not_found`; only public announcement channels have this page.

## Request

- **Endpoint:** `GET /v1/discord/announcement-channels/{channelId}`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by channel id
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/discord/announcement-channels/channelid/get)
- **Platform page:** [/platforms/discord](https://www.socialfetch.dev/platforms/discord)

## FAQ

### Why is the page truncated?

There is no working cursor for older announcement posts. The route returns the latest public page and sets truncated true rather than pretending the list is complete.

### What does not_found mean here?

The id is not a public announcement channel. A regular text channel, a server id, or an unknown id returns lookupStatus not_found with channel null.

### Do attachment links expire?

Yes. Attachment URLs carry signed query parameters, so treat them as time-limited and download soon after you read them.

### How many credits does a channel page cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.
