NetworksDiscord
Discord APIthrough Siar.
Messages to channels in Discord servers, sent by a bot whose display name and avatar you can set per team.
At a glance
Account needed: A Discord server where the Siar bot is added. Each post names the channel.
| Connection | Bot install into a server or workspace |
|---|---|
| Channel | Required: pick a channel after connecting |
| Post types | post |
| Text length | 2,000 characters |
| Comment length | 2,000 characters |
| Media per post | Up to 10 |
Media rules
| Kind | Formats | Max size | Duration | Other |
|---|---|---|---|---|
| Image | jpeg, png, gif, webp | 10 MB | n/a | None |
| Video | mp4, webm, mov | 10 MB | Up to 24 h | None |
| Document | any type | 10 MB | n/a | None |
What Siar can do on Discord
| Comments and replies | Yes |
|---|---|
| First comment | Yes |
| Edit a published post | No |
| Delete a published post | Yes |
| Edit a comment | No |
| Delete a comment | Yes |
| Import comments | No |
| Post analytics | No |
| Account analytics | No |
| Post history import | No |
| Direct messages | No |
Siar can create comments and replies up to 2,000 characters.
Publish a post
Put Discord's payload under data.DISCORD and list DISCORD in socialAccountTypes. Add other networks to the same request to post to all of them at once.
curl -X POST "https://api.siaran.my/api/v1/post" \
-H "x-api-key: $SIAR_API_KEY" \
-H "content-type: application/json" \
-d '{
"teamId": "TEAM_ID",
"title": "Discord post",
"postDate": "2026-11-02T09:00:00.000Z",
"status": "SCHEDULED",
"socialAccountTypes": [
"DISCORD"
],
"data": {
"DISCORD": {
"channelId": "CHANNEL_ID"
}
}
}' Discord fields
-
channelIdstring required -
textstring nullable -
uploadIdsstring[] nullable -
usernamestring nullable -
avatarUrlstring nullable
Daily caps
| Per connected account, per UTC day | Free | Pro | Business |
|---|---|---|---|
| Posts | 10 | 100 | 200 |
| Comments | 3 | 100 | 200 |
See pricing for monthly quotas. Enterprise uses the Business caps unless agreed otherwise.
Connecting a Discord account
The user installs the Siar bot into their server; no personal token is involved. Use POST /social-account/connect from your own UI, or send your customer a hosted link from POST /social-account/create-portal-link; see connecting accounts.
Permissions requested
Siar requests only these scopes at connect time:
botidentify
Discord-specific operations
These exist for Discord only and live under /misc/discord.
| Operation | Endpoint |
|---|---|
| Delete a Discord message | DELETE /misc/discord/message |
When Discord says no
Siar relays Discord's error code and message verbatim on the post, next to a status you can act on. The Discord error reference covers 9 common cases with what each one means and the fix. Open the Discord error reference.
Discord API questions
What can I post to Discord through the API?
post. Messages to channels in Discord servers, sent by a bot whose display name and avatar you can set per team.
How many Discord posts can I publish per day?
Per connected account and UTC day: 10 on Free, 100 on Pro, 200 on Business. The caps keep the account within what Discord tolerates.
Can I schedule Discord posts?
Yes. Set postDate in the future and a status of SCHEDULED. Siar publishes at that time and sends a post.published webhook when the post reaches a final state.
How do I connect a Discord account?
A Discord server where the Siar bot is added. Each post names the channel. The user installs the Siar bot into their server; no personal token is involved.
What do I do when Discord rejects a post?
The post carries Discord's own code and message. The Discord error reference explains 9 common rejections and how to fix them.
Your first post isone request away.
The Free plan includes 20 posts and 200 uploads a month across 3 teams. No card needed.