Connect Discord to Fondoo
Connecting Discord lets your business post announcements into one channel of your Discord server. Your AI agent can draft and schedule messages with text, images or a video, and you approve them before they are sent. Fondoo posts through its Upload-Post account using a channel webhook you create; no bot needs to join your server.
What Fondoo can do with it
- Post messages to one channel: text, a single image, up to 10 images (10 MB or less each), or a single video.
- Message length: up to 2,000 characters, Discord's limit for webhook messages (Discord webhook docs).
- Draft and schedule:
draft_social_posts(one AI post unit per idea),save_social_draft,schedule_social_posts. - Track links: web links become Fondoo tracked links with UTM tags.
- Plan:
get_social_calendar,get_post,get_publishing_capacity.
What it does not do:
- It does not read your server, members or messages. A webhook can only post.
- No stats: Upload-Post does not offer Discord analytics, so
get_social_statshas nothing for these posts. - No deleting after sending. Delete the message in Discord if needed.
What needs your approval:
- By default every Discord message needs the owner's approval. The agent's
approve_social_postsbecomes a request in your approval queue. - Only the owner can add the webhook (
configure_upload_post_platform) and change posting rules (update_distribution_rules).
Before you start
- A Discord server where you have the Manage Webhooks permission. Server owners and administrators have it (Discord webhook docs).
- A channel for the posts, such as
#announcements. Webhook posts appear with the webhook's name and avatar. - Cost: webhooks are free on Discord. Posting is part of your Fondoo plan. Your plan sets how many social sets you can have (Builder and Launch: one, Growth: three, Agency: ten), with one Discord channel per social set.
Step by step: get your credentials
You need one value: the webhook URL.
- In Discord, open your server and click the server name at the top left.
- Choose Server Settings → Integrations → Webhooks, then New Webhook (some versions say Create Webhook) (Discord: Intro to Webhooks).
- Click the new webhook to edit it. Set a name (for example your business name), optionally an avatar, and pick the channel the posts should go to.
- Click Save Changes if shown.
- Click Copy Webhook URL. It looks like
https://discord.com/api/webhooks/123456789/abcdef....
Treat this URL like a password. Anyone who has it can post in that channel.
It goes into the webhook_url field below. You can also send an optional name, which is the label shown in Fondoo.
Connect it in Fondoo
(a) In the dashboard
The Connections page does not have a Discord tile yet. Start with your agent or the REST API below. Once connected, the channel appears under Connected.
(b) By asking your agent
Set up Discord posting for the main site. Create the social connection and give me its connectionId so I can add the webhook myself.
Your agent runs:
connect_service({provider:"discord", siteId:"YOUR-SITE-UUID"}) // signed 15-minute instructions link
connect_social({siteId:"YOUR-SITE-UUID", provider:"upload_post", network:"discord",
redirectUrl:"https://your-site.example/connected"})
-> { connectionId, url }Then you, the owner, add the webhook. Do not paste the webhook URL into an agent chat. Use the REST API with your owner credentials:
curl -X POST https://api.getfondoo.com/v1/ops/configure_upload_post_platform \
-H "Authorization: Bearer $FONDOO_OWNER_KEY" \
-H "Content-Type: application/json" \
-d '{"siteId":"YOUR-SITE-UUID","connectionId":"CONNECTION-UUID","network":"discord","credential":{"webhook_url":"https://discord.com/api/webhooks/123/abc","name":"My Server #announcements"}}'Upload-Post checks the webhook before saving it. Finally, run refresh_social_accounts({siteId, connectionId}).
Discord does not use add_connection_key or test_connection. refresh_social_accounts is the check.
Turn Discord on. The owner adds Discord to the posting rules with update_distribution_rules. Defaults: one post per day, 09:00 to 17:00 UTC, text only, review approval. Add image, carousel or video to formats for media.
Test that it works
list_social_accountsshould show the Discord connection.- Save a short test message with
save_social_draftand schedule it. - Approve it. When due, check the channel in Discord, and check
get_postforpublished.
Troubleshooting
- "Invalid platform credentials": the field must be named
webhook_url, and onlywebhook_urlandnameare accepted. - Upload-Post rejects the webhook: the URL is incomplete, or the webhook was deleted. Copy it again from Integrations → Webhooks.
- Messages stopped arriving: someone deleted the webhook or the channel. Create a new webhook and send it with the same call.
- "discord: character limit 2000": shorten the message. Links count after they are converted to tracked links.
- "discord: media limit exceeded": more than 10 images or an image over 10 MB.
- Account missing after refresh: Upload-Post did not return a Discord account for this profile. Send the webhook again, then refresh. If it still does not appear, contact Fondoo support; this may differ for your account.
Limits, data and security
- Limits: 2,000 characters, 10 images, 10 MB per image. Fondoo sets no daily cap for Discord; your cadence setting controls volume. Discord also applies its own rate limits to webhooks.
- Retries: five automatic attempts, then an alert.
- What Fondoo stores: the connection's name and ID, your messages, schedules and results. Fondoo passes the webhook URL to Upload-Post, which checks it and stores it encrypted. Fondoo does not keep a copy and never returns it.
- Rotate or disconnect: delete the webhook in Server Settings → Integrations → Webhooks. Posting stops at once. To rotate, create a new webhook and send it with the same
configure_upload_post_platformcall. Then runrefresh_social_accounts. Cancel pending posts withcancel_postfirst if you are disconnecting.
Official links
- Discord: Intro to Webhooks: https://support.discord.com/hc/en-us/articles/228383668
- Discord webhook API reference: https://docs.discord.com/developers/resources/webhook
- Upload-Post: connecting Discord: https://docs.upload-post.com/guides/connecting-accounts
