Connect Instagram to Fondoo
Connecting Instagram lets your business publish photo, carousel and video posts to a professional Instagram account from Fondoo. Your AI agent can write captions, pair them with your real photos or videos, and schedule them for your approval. Fondoo publishes through its own Upload-Post account, so you do not need a Meta developer app.
What Fondoo can do with it
- Publish media posts: a single photo, a carousel of up to 10 images, or a single video. Instagram does not accept text-only posts, so every post needs media.
- Write captions: up to 2,200 characters. Links in captions are not clickable on Instagram. Fondoo still converts them to tracked links, but expect few clicks.
- Use your own media: images and videos must first be registered with
register_social_media. You confirm they are real screenshots or videos (PNG, JPEG, WebP, MP4 or WebM, up to 20 MiB). Fondoo does not generate images. - Draft and schedule:
draft_social_posts(one AI post unit per idea),save_social_draftandschedule_social_posts. A caption draft can wait until you attach media. - Stats:
get_social_statsreturns what Upload-Post reports for the post, such as reach, saves and shares where Meta provides them. - Plan:
get_social_calendar,get_postandget_publishing_capacity.
What needs your approval:
- By default every Instagram post needs the owner's approval. The agent's
approve_social_postscall becomes a request in your approval queue. - Only the owner can change posting rules with
update_distribution_rules. - Fondoo cannot delete a published Instagram post. Instagram does not allow deletion through its API. Delete it in the app.
cancel_poststops posts that are not yet published.
Before you start
- A professional Instagram account (Business or Creator). Personal accounts are not supported by Instagram's API (Upload-Post Instagram guide). To switch, in the Instagram app open Settings and activity → Account type and tools → Switch to professional account, pick a category, then choose Business or Creator (Instagram Help). Switching makes a private account public.
- A Facebook Page is not required when the account connects with Instagram Login, according to Upload-Post. If the consent screen asks for a Page, link one; this may differ for your account.
- A verified account. Unverified email or phone is a common cause of connection errors.
- Cost: Instagram charges nothing for organic posts. 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 account per network in each set.
Step by step: get your credentials
There is no key to copy. You sign in to Instagram and approve access.
- Confirm the account is a Business or Creator account (see above).
- Open the authorization link Fondoo gives you (next section). It is an Upload-Post page branded with your business name.
- Choose Instagram. You are taken to Instagram's (or Meta's) consent screen.
- Sign in as the account you want Fondoo to post to. Double-check the handle shown before you continue.
- Approve every requested permission. Removing one can stop posting or stats.
- You return to the address Fondoo set. Nothing needs to be pasted.
If the screens do not match these steps, follow the prompts on Meta's page and keep all requested permissions.
Connect it in Fondoo
(a) In the dashboard
- Open Connections → Available → Social → Instagram.
- Click Connect Instagram, then Connect securely. This opens a signed setup link valid for 15 minutes. It shows instructions only and carries no credentials.
- Ask your agent to create the authorization page, or call
connect_socialyourself.
(b) By asking your agent
Connect our Instagram business account for the main site. Send me the authorization link, then refresh and confirm the handle.
connect_service({provider:"instagram", siteId:"YOUR-SITE-UUID"})
connect_social({siteId:"YOUR-SITE-UUID", provider:"upload_post", network:"instagram",
redirectUrl:"https://your-site.example/connected"})
-> { connectionId, url }
refresh_social_accounts({siteId:"YOUR-SITE-UUID", connectionId:"CONNECTION-UUID"})
list_social_accounts({siteId:"YOUR-SITE-UUID"})REST equivalent:
curl -X POST https://api.getfondoo.com/v1/ops/connect_social \
-H "Authorization: Bearer $FONDOO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"siteId":"YOUR-SITE-UUID","provider":"upload_post","network":"instagram","redirectUrl":"https://your-site.example/connected"}'Instagram uses sign-in, so add_connection_key and test_connection do not apply. refresh_social_accounts is the check.
Turn Instagram on. The owner must add Instagram to the posting rules with update_distribution_rules. The default format list is text, which Instagram cannot use. Set formats to image, carousel and/or video, or scheduling fails with "Format disabled by distribution rules".
Test that it works
list_social_accountsshould show the Instagram handle.- Register one real image with
register_social_media. - Save a short caption with that image using
save_social_draft, formatimage, then schedule it. - Approve it in your queue. After it is due,
get_postshould showpublishedwith a link.
Troubleshooting
- Error 400 when connecting: usually a personal account, or an account with unverified email or phone. Switch to professional and check Account Quality.
- "instagram: unsupported post type": you tried a text-only post. Add an image or video.
- "Media/thread do not match the selected format": a carousel needs at least two images; a video post needs exactly one video file.
- "instagram: media limit exceeded": more than 10 images, or an image over 8 MB.
- "instagram daily publishing cap reached": the default is 50 posts per UTC day per account, matching Upload-Post's cap of 50 per rolling 24 hours (upload limits).
- Account disappeared after refresh: the connection needs reauthorization. Run
connect_socialagain and sign in.
Limits, data and security
- Limits: 50 posts per day, 10 images per post, 8 MB per image, 2,200-character captions. Upload-Post lists a 300 MB video maximum. Upload-Post also rejects near-duplicate posts within 48 hours.
- Retries: failed posts retry five times with growing waits, then Fondoo raises an alert.
- What Fondoo stores: the account ID and name, your posts, media you registered (with a checksum), schedules, results and stats. The Instagram access token stays with Upload-Post. Fondoo never sees or returns it.
- Disconnect: remove the app from your Instagram or Meta account settings (look for apps and websites, or business integrations; labels vary). Then run
refresh_social_accountsand the account is marked inactive. Cancel pending posts first withcancel_post.
Official links
- Set up a professional account: https://help.instagram.com/502981923235522
- Upload-Post Instagram guide: https://docs.upload-post.com/guides/post-to-instagram-api
- Upload-Post upload limits: https://docs.upload-post.com/guides/limit-of-uploads
- Upload-Post FAQ: https://docs.upload-post.com/resources/faq
