How to do it
- Export or reach your Postiz data Either export your posts to a JSON file, or have your Postiz URL and API key ready.
- Connect the same networks In SocialHandoff, connect the accounts you had in Postiz. OAuth tokens are not copied, so each account is authorized again.
- Run the import Run pnpm socialhandoff import postiz --file export.json, or use --from with your Postiz URL and --postiz-key.
- Read the summary Posts for networks that cannot be mapped are listed as skipped, with the reason.
- Review and approve Imported posts arrive as drafts with their future dates. Approve the ones you want to keep.
What is imported
| Item | Imported |
|---|---|
| Queued post text | Yes, as drafts |
| Future schedule dates | Yes |
| Past posts | No |
| OAuth tokens | No, reconnect each account |
| Media files | No, re-attach them |
| Posts for unsupported networks | Skipped and listed |
SocialHandoff publishes to X, LinkedIn, Bluesky, Mastodon, Threads, Instagram, Facebook, and TikTok, so Postiz posts for any of those networks are mapped across. Posts aimed at YouTube, Pinterest, or other networks SocialHandoff does not support yet are skipped. Instagram posts need media and TikTok posts need a video or photos, so re-attach media before you approve them.
Keeping Postiz clients working
If a script or tool talks to the Postiz public API, you can point it at SocialHandoff while you migrate. The /public/v1 endpoints accept the Postiz shapes for listing integrations and creating draft, scheduled, or immediate posts. It is a small slice for migration, not full parity. Media uploads go through the native media endpoint instead.
Why imports land as drafts
Imported posts come in as drafts so you can check them against the guardrails and your voice rules before they publish. If you had approved them in Postiz already, approving them again takes a few taps in the inbox.
Compare the two in SocialHandoff vs Postiz and Postiz alternatives. Postiz is a trademark of its owner.