Connect X to Fondoo
Connecting X (formerly Twitter) lets Fondoo post to your business's X account. Your Fondoo agent can draft posts, schedule them in your posting windows, and read back likes and other numbers. Fondoo posts through its own Upload-Post account, so you sign in to X once and never handle an API key.
Posts without links work right away. A post that contains a link needs one of two extra setups, explained below: your own X developer key (x_byo), or Fondoo billing at a per-post charge.
What Fondoo can do with it
- Post text, a single image, 2 to 4 images, or a video to your X account. Posts are limited to 280 characters. Threads are not supported on this connection.
- Schedule posts in the time windows you set. Fondoo spaces posts out and enforces a daily cap.
- Read stats for published posts (
get_social_stats). - Cancel a post that has not gone out yet (
cancel_post). Fondoo cannot delete an X post after it is published through Upload-Post. Delete it in X instead.
Links in X posts. Fondoo checks every post for links. It counts full URLs, bare domains such as example.com, short links, and anything with ://. If a post has a link, one of these must be true:
- You added your own X developer key to this X account. See the separate guide Connect your own X developer app (x_byo). X bills your developer account. Link posts sent this way must be text only (no images, no thread).
- You approve a Fondoo charge for that post. The current price is $0.50 per link post. The exact price comes from your plan and is shown in the preview. This needs pay-as-you-go turned on with a payment method (details below).
Never disguise a link (for example "example dot com") to avoid this rule. Remove the link or use one of the two options.
What needs your approval:
- Linking your X account is done by you, in your browser.
- By default every scheduled post waits for your OK. Only the owner can switch X to automatic publishing.
- Each paid link post needs an explicit "I approve the charge" confirmation.
- Turning on pay-as-you-go is owner-only and cannot be done by an agent over MCP.
Before you start
- An X account you control. Any account type works for link-free posting.
- A Fondoo workspace where you are the owner, with the site you want to post for.
- For paid link posts only: an active paid Fondoo plan, a payment method on file (or prepaid balance), and pay-as-you-go turned on with a monthly cap. Paid link posts are not available on self-hosted Fondoo.
- Cost: link-free posts are covered by your Fondoo plan. Paid link posts are charged only after the post is actually published. Upload-Post's shared allowance for link posts is limited each billing cycle. If it runs out, paid link posts are refused until the next cycle. Your own X key avoids this limit.
Step by step: authorize your account
You do not create any keys for this connection. You sign in to X on a secure page.
- Get your connection page. Ask your agent to connect X. It calls
connect_social, which returns a secure link (see "Connect it in Fondoo" below). - Open the link in a browser where you can sign in to X. The page is hosted by Upload-Post and titled "Connect" followed by your business name.
- Choose X. You are sent to X's authorization screen.
- Check that the account shown at the top is your business account. If it is your personal account, sign out of X first and repeat this step.
- Read the permissions X lists. The app needs to read your profile and posts and to create posts for you. Select Authorize app. The exact wording on X's screen may differ for your account.
- You are returned to the page you chose as the return address.
- Tell your agent you are done. It runs
refresh_social_accountsto bring the X account into Fondoo.
Optional, for paid link posts: in Fondoo, open Settings, then Plan and usage. Use Manage billing to add a payment method. Under Monthly spending cap, tick Allow paid usage within this cap, enter a Cap in USD, and save. Paid link posts count toward this cap, including ones that are scheduled but not yet sent.
Connect it in Fondoo
(a) From the dashboard
- Open Connections in the left menu.
- In the Available card, find X under Social, or type "X" in Find a tool.
- Select Connect X, then Connect securely.
This link gives you signed setup instructions that are valid for 15 minutes. It does not open X's sign-in by itself. The X authorization page comes from connect_social, which your agent runs. Once linked, X shows in the Connected card with a Reconnect button.
To post from the dashboard, open Social and use New post. If your text contains a web address, a checkbox appears: "I approve the $0.50 charge for this X link post. My spending cap still applies." Schedule stays disabled until you tick it. The dashboard only spots addresses that start with http:// or https://. Bare domains are caught by the server when you schedule.
(b) By asking your agent
Example prompt:
Connect our X account to Fondoo for this site. Send me the authorization link. When I say done, refresh the accounts and show me what is connected.
The agent typically calls:
connect_service({ provider: "x", siteId }) // read-only: setup steps + 15-minute link
connect_social({ siteId, provider: "upload_post", network: "x",
redirectUrl: "https://<a page to return to>" }) // returns { connectionId, url }
refresh_social_accounts({ siteId, connectionId }) // after you authorize
list_social_accounts({ siteId }) // confirm the X accountOver MCP, agents use find_tools and call_tool({ name: "connect_social", args: { ... } }).
REST equivalent (every operation is a POST):
curl https://api.getfondoo.com/v1/ops/connect_social \
-H "Authorization: Bearer $FONDOO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"siteId":"<site-uuid>","provider":"upload_post","network":"x","redirectUrl":"https://example.com/done"}'Turn on X posting rules (owner only). Fondoo only schedules to networks listed in your distribution rules. X also needs a daily cap. Read the current rules with get_distribution_rules. Then, as the human owner, send the full list back with update_distribution_rules. The update replaces all rules, so keep your other networks in the list. Example X entry:
{ "network": "x", "cadence": 1, "formats": ["text", "image"], "approval": "review", "dailyCap": 5 }Windows default to 09:00 to 17:00 UTC every day. Agents cannot change these rules or turn on automatic publishing.
Test that it works
- Run
list_social_accounts({ siteId }). Your X account should appear withnetwork: "x". - Run
get_publishing_capacity({ siteId }). The X row should show a number inremaining. If it showsrequiresPlanConfiguration: true, setdailyCapas described above. - Preview a link-free post with a dry run. Nothing is sent:
Send that to{ "siteId": "<site-uuid>", "variants": [{ "accountId": "<x-account-uuid>", "text": "Testing our new posting setup." }], "dryRun": true }schedule_social_posts. Check thatplatform_validationpassed. - Run it without
dryRun, approve it on Home, and checkget_postor Social after the scheduled time. - To test links, add a link and preview again. The
x_linkcheck showsbilling: "fondoo"or"customer_x_account", plus the cost.
Troubleshooting
- "This post has a link: you'll be charged $0.50. Supply confirm_paid_x_link: true or connect your own X key." Remove the link, set
confirm_paid_x_link: true(or tick the dashboard checkbox), or add your own key with thex_byoguide. - "Fondoo-billed X links require an active payment method and pay-as-you-go…" Add a payment method and turn on paid usage under Settings, then Plan and usage. Pay-as-you-go requires an active paid plan.
- "Owner monthly cap reached for X link posts" or "Upload-Post X link quota exhausted…" You can raise your cap. The shared Upload-Post allowance resets each cycle. Your own X key avoids both limits.
- "Configure the X daily cap… before scheduling." Add
dailyCapto the X rule withupdate_distribution_rules. - "Enabled network not found" X is missing from your distribution rules. Add it as shown above.
- X account missing after refresh. Make sure you finished X's authorization screen, and that you were signed in to the right account. Upload-Post hides accounts that need reauthorization. Use Reconnect or run
connect_socialagain.
Limits, data and security
- 280 characters per post. Up to 4 images, 5 MB each (Upload-Post limits recorded in Fondoo's code on 2026-10-21). One video per video post.
- Daily volume depends on Upload-Post's per-account cap for your plan and the X
dailyCapin your rules. Checkget_publishing_capacity. Upload-Post's upload limits list caps per connected X profile. - Fondoo never sees your X password. The X sign-in is held by Upload-Post under Fondoo's account. Fondoo stores your account's handle and name, your posts, and their stats.
- To disconnect, revoke the app under X's connected apps page. Then run
refresh_social_accountsso Fondoo marks the account inactive.
Official links
- Upload-Post text posting and X link handling: https://docs.upload-post.com/api/upload-text/
- Upload-Post account profiles: https://docs.upload-post.com/api/user-profiles
- X connected apps (revoke access): https://x.com/settings/connected_apps
- X API pricing (for the own-key option): https://docs.x.com/x-api/getting-started/pricing
- Fondoo guide for your own X key: https://getfondoo.com/docs/integrations/x_byo
