security · posting
How VoiceMoat posts to Twitter and LinkedIn.
Every path starts with something you do. On Twitter, the extension drafts a reply right under the post and puts it in Twitter’s own reply box for you to send, or sends it only when you choose Post now or start your queue; it can also fill Twitter’s composer with a post for you to send. The dashboard publishes or schedules when you press Post Now or Schedule. On LinkedIn, main posts publish and schedule natively, and the extension puts comments and posts in LinkedIn’s own boxes for you to post; it never posts them.
[ twitter, two paths ]
How a post gets from VoiceMoat to Twitter.
Chrome extension. Replies sent from your browser.
The extension shows VoiceMoat’s reply draft in a card right under the post. You read and edit it, then press Put in reply box to open Twitter’s own reply box with the draft and press Reply yourself. Or, under More, choose Post now to send it, or Schedule to add it to your queue and press Go to send the queue one at a time with a pause between each. Sending uses your signed-in Twitter session in your browser, not the tweet.write permission. Nothing is sent until you press Reply, Post now or Go. In Twitter’s composer, the extension’s Draft panel fills the box with a post or thread; you press Post. Use Twitter’s schedule opens Twitter’s own schedule window, and you pick the time and confirm it there.
Default for replies + on-the-feed posting.
Dashboard scheduling. Posts at the time you set.
You write a draft in the dashboard composer, hit Schedule, pick a time. It goes out within a few minutes of the time shown on your calendar. This is the path that uses the tweet.write OAuth scope. You see every scheduled post in the calendar before it runs and can cancel or edit until the minute it fires.
When you press Schedule or Post Now, press Post in audenAI, start a Growth Autopilot batch, or ask a connected assistant to post.
[ linkedin, how it differs ]
How VoiceMoat posts to LinkedIn.
LinkedIn main posts. Native publish and schedule.
Write a draft in the dashboard, then publish it or schedule it to LinkedIn through LinkedIn’s official API. Same rule as Twitter: nothing posts unless you press Post or Schedule, start a Growth Autopilot batch, or ask a connected assistant to post, and scheduled posts go out at their time. You see every scheduled LinkedIn post in the calendar and can cancel or edit before it fires.
When you click Schedule or Post Now for a LinkedIn account, press Post in audenAI, start a Growth Autopilot batch, or ask a connected assistant to post.
LinkedIn comments. Written into the box, posted by you.
LinkedIn has no public reply API, so VoiceMoat never posts a LinkedIn comment for you. Press Comment as you on a post and the draft appears in a card under it; Put in comment box opens LinkedIn’s comment box with the draft inside. You press Comment yourself. In LinkedIn’s Start a post window, the Draft panel fills the box with a post; you press Post. On the dashboard Replies page you copy the draft across instead. LinkedIn analytics are read through the Chrome extension using your own session, read-only.
Always manual. VoiceMoat never publishes a LinkedIn comment or reply.
[ the oauth question ]
Why we ask for tweet.write when you connect Twitter.
The Twitter OAuth screen lists every scope a connecting app can ever exercise. tweet.write appears on that list because the dashboard’s Schedule and Post Now features use it. The scope is requested once, when you connect a Twitter account. It only runs for a post you started: Schedule or Post Now in the dashboard, Post on an audenAI card, a Growth Autopilot batch you started, or a request you made through the connector. It does not decide to post anything on its own.
If you only use the Chrome extension and never touch dashboard publishing, tweet.write sits unused. The extension sends replies from your own signed-in browser session when you choose Post now or start your queue, not through our API access.
[ surface by surface ]
What actually calls Twitter and LinkedIn, and when.
Extension reply suggestions (Twitter)
Generated on our servers and shown in a card under the post for you to read and edit. Put in reply box fills Twitter’s own reply box and you press Reply; Post now or your queue sends from your browser session.
Dashboard composer, Post Now (Twitter)
Explicit button click. A plain post opens Twitter’s own window with your text, and you send it there. Threads and posts with media publish immediately via the X API using your token, and show in your calendar within seconds.
Dashboard composer, Schedule (Twitter)
Saved to your calendar with the time you picked. Goes out within a few minutes of its time via our cron. Cancelable any time before it runs.
LinkedIn main posts (Post Now / Schedule)
Publish or schedule natively through LinkedIn’s official API on your explicit click.
LinkedIn comments (extension)
Put in LinkedIn’s comment box for you to post, or copied from the dashboard. LinkedIn has no public reply API, so VoiceMoat never posts a LinkedIn comment for you.
Posts drafted in the extension
Twitter’s composer or LinkedIn’s Start a post is filled for you; you press Post. Nothing is sent by VoiceMoat.
audenAI chat, Post (Twitter and LinkedIn)
Only when you ask it to post. A card shows the exact text and the account, and nothing goes out until you tap Post. Your own posts only, text only. It never posts a reply to someone else.
Claude, ChatGPT or Grok, through the connector
Only when you ask your assistant to post. Our side never posts on a first call: it returns a preview and a one-time code tied to you, the account and the exact text, and only a second call carrying that code acts. We cannot force your assistant to show you the preview, so leave its ask-before-posting setting on. Until VoiceMoat is approved in ChatGPT’s Plugin Directory, posting from ChatGPT needs a Business, Enterprise or Edu workspace.
Grow
Writes a batch of posts in your voice when you start it. A full batch goes onto your calendar at the posting times you set. A batch that stops early waits for your review. Any post can be edited or canceled on the Calendar until it goes out.
Voice training
Reads your recent public posts (Twitter via the X API, LinkedIn via the extension, which also reads your own recent LinkedIn comments). Read-only. No write scope is used for training.
Analytics
Reads impression and engagement counters (Twitter via the X API, LinkedIn via the extension). Read-only.
[ the explicit no-list ]
What VoiceMoat never does with your accounts.
›
Post on its own. Every post traces back to something you did: a click in the dashboard, a tap on Post in audenAI, a Growth Autopilot batch you started, or a request you made to your own AI assistant through the connector.
›
Auto-DM, auto-follow, auto-unfollow, or act on your account without a click from you.
›
Like or quote posts for you, or send a reply you haven’t seen.
›
Inject content into anyone else’s post or thread.
›
Touch your wallet, signatures, or any on-chain action. We don’t connect to wallets at all.
›
Sell, share, or expose your access token to third parties.
›
Train shared models on your posts, drafts, or voice profile.
[ for the oauth-averse ]
You can use VoiceMoat without granting tweet.write.
The Chrome extension drafts replies right under the post on Twitter without using any write permission from us. Put in reply box leaves the sending to you; when you choose Post now or start your queue, it sends from your already-signed-in Twitter browser session. If you only want reply drafts, on-feed suggestions, and copy in your voice, the extension covers it.
Without a connected Twitter account you lose everything that publishes through Twitter’s official API: Schedule, Post Now, Post in audenAI, Growth Autopilot and the connector’s posting tools. Twitter voice training also needs the connection. Reply drafts in the extension keep working.
Voice training and analytics read your public posts (Twitter via the X API, LinkedIn via the extension), and on LinkedIn voice training also reads your own recent comments. They never publish, follow, like, or engage on your behalf.
[ more security context ]