Getting started
1. Create your workspace
Sign up, name your brand and set the voice you want the AI to write in. One workspace per brand or client; the Agency plan adds unlimited client workspaces and team seats.
2. Connect a channel with your own developer app
You create the app on the platform's own developer console and paste the client ID and secret into the onboarding wizard. The connection then runs through that platform's official OAuth flow. Your channel access belongs to your app, not ours. Blogs and community destinations (WordPress, Ghost, Medium, Tumblr, Bluesky, Mastodon, Reddit, Telegram, Discord) skip OAuth entirely — you paste the credential the platform issues you and they connect immediately.
3. Write once, adapt per platform
The composer produces one base post plus a variant per channel, respecting each platform's length and media rules. Attach media from the library, add tracked links, and assign the post to a campaign.
4. Or write the long version
Articles are a separate content type: outline and draft with AI, generate a cover image, then syndicate to WordPress, Ghost, Medium or Tumblr. One click atomises the article into platform-native posts, staggered across your queue and linked back to the parent for reporting.
5. Approve and schedule
Drop posts on the calendar or into a weekly queue. Posts requiring approval stay pending until someone with permission approves them; the scheduler will not publish an unapproved post.
6. Feed it, and let others subscribe
Connect any RSS, Atom or JSON feed as a source and new entries arrive hourly as draft articles — never auto-published. Turn on your workspace feed and your published articles become a public RSS and JSON feed at your own slug.
7. Watch and reply
The inbox pulls comments, mentions and replies from the platforms that expose them. Keyword rules can auto-reply — leave them off until you have tested them on a low-risk account.
Why you bring your own developer app
Most schedulers publish through one shared developer app owned by the vendor. That is convenient until the vendor's app hits a platform rate limit, gets suspended, or the vendor disappears — and every customer loses publishing at once.
Done Money is multi-tenant by design: each account registers its own app on each platform's developer console and supplies the client ID and secret. We encrypt the secret with AES-256-GCM and use it only to run that platform's official OAuth flow on your behalf.
- Your platform quotas are yours, not shared with strangers.
- Your app review status and standing are yours.
- You can revoke us at the platform level at any moment, not just in our UI.
- Trade-off: initial setup takes longer, and some platforms require app review before full publishing is unlocked.
Integrations and permissions
Every integration uses the platform's official OAuth 2.0 flow and official API. These are the exact scopes requested. Current live/beta status is on the status page.
X
LiveX API v2 (OAuth 2.0 PKCE)
- Publishes
- Text posts and image posts
- Reads
- Mentions, reply threads, post metrics
Scopes requested
tweet.readtweet.writeusers.readoffline.accessLimitations: Free developer tier caps monthly post volume. Video upload and long-form posts require a paid X tier.
X Developer Portal →LinkedIn Marketing / Share API (OpenID Connect)
- Publishes
- Member posts with text, links and images
- Reads
- Profile identity only
Scopes requested
openidprofileemailw_member_socialLimitations: LinkedIn does not grant member-level engagement read access in the standard product set, so LinkedIn metrics are delivery-only.
LinkedIn Developers →Facebook Pages
LiveMeta Graph API (Facebook Login for Business)
- Publishes
- Page posts with text, links, images and video
- Reads
- Comments, insights, post metrics
Scopes requested
pages_show_listpages_manage_postspages_read_engagementLimitations: Requires a Page you administer. Meta App Review is needed before non-admin users can connect your developer app.
Meta for Developers →Instagram Graph API via a linked Facebook Page
- Publishes
- Feed images, carousels and Reels
- Reads
- Comments, insights, post metrics
Scopes requested
instagram_basicinstagram_content_publishpages_show_listbusiness_managementLimitations: Business or Creator account linked to a Facebook Page only. Stories publishing is not supported by the API.
Meta for Developers →Threads
LiveThreads API
- Publishes
- Text and image posts
- Reads
- Replies and post insights
Scopes requested
threads_basicthreads_content_publishLimitations: Daily publishing quotas are set by Meta and vary per account.
Meta for Developers →YouTube
BetaYouTube Data API v3
- Publishes
- Video uploads with title, description and privacy status
- Reads
- Comments and video statistics
Scopes requested
https://www.googleapis.com/auth/youtube.uploadLimitations: Unaudited Google projects upload as private-only until Google completes verification. Daily quota units apply.
Google Cloud Console →TikTok
BetaTikTok Content Posting API
- Publishes
- Video posts
- Reads
- Not available in the standard grant set
Scopes requested
user.info.basicvideo.publishLimitations: Until TikTok audits your developer app, posts publish to your drafts or as private. Metrics are delivery-only.
TikTok for Developers →Pinterest API v5
- Publishes
- Pins with image, link and board selection
- Reads
- Pin analytics
Scopes requested
boards:readpins:readpins:writeLimitations: Requires a business account and a trial-to-standard access upgrade for higher volume.
Pinterest Developers →Limits and honest caveats
- Instagram Stories, and some video formats, are not published because the official APIs do not expose them.
- LinkedIn and TikTok do not grant member-level engagement reads in their standard product set, so their analytics are delivery-only.
- Beta integrations work but are still being validated across account types — treat them as such.
- Usage guidance for AI, storage and automation is published in the fair use policy.