Publish and schedule videos, photos and text posts to TikTok, Instagram, YouTube, LinkedIn, Facebook, X, Threads, Pinterest, Bluesky, Google Business Profile, Discord and Telegram from your Activepieces flows, through the Upload-Post API.
npm package: @upload-post/activepieces-piece
Requirements: Activepieces 0.82.0 or newer (self-hosted Community edition works) and a user with the platform Admin role.
- Open Activepieces and open Platform Admin.
- Go to Catalogue → Pieces (on older versions: Setup → Pieces).
- Click Install Piece.
- Keep NPM Registry as the source and fill in:
- Piece Name:
@upload-post/activepieces-piece - Piece Version: the version to install, e.g.
0.1.0(see the npm page for the latest).
- Piece Name:
- Click Install. The piece appears as Upload-Post in the flow builder, for every project on the platform.
To update, repeat the steps with the new version number.
Offline or air-gapped instances: download the tarball with
npm pack @upload-post/activepieces-piece, then in Install Piece choose
Packed Archive (.tgz) and upload the file.
- Sign in at app.upload-post.com.
- Open API Keys and click Create API Key.
- In Activepieces, add an Upload-Post connection and paste the key. It is checked against the API when you save it.
Before publishing, connect your social accounts to a profile under Manage Users in the Upload-Post dashboard. The actions let you pick that profile from a dropdown.
| Action | What it does |
|---|---|
| Upload Video | Publishes a video from a URL to TikTok, Instagram, YouTube, LinkedIn, Facebook, X, Threads, Pinterest, Bluesky, Google Business Profile, Discord or Telegram. |
| Upload Photos | Publishes one or more images (carousel where the platform supports it) to the same platforms, except YouTube. |
| Upload Text Post | Publishes a text post (optionally with a link) to LinkedIn, X, Facebook, Threads, Bluesky, Google Business Profile, Discord or Telegram. |
| Get Upload Status | Checks the result of an async or scheduled upload by request_id or job_id. |
| List Profiles | Lists the Upload-Post profiles on your account and the social accounts connected to each. |
| Get Upload History | Searches past uploads by profile, platform, result, date range or IDs. |
| Custom API Call | Calls any other Upload-Post API endpoint with your connection's key. |
The upload actions share these options: title, per-platform settings (Pinterest board, Facebook page, LinkedIn page…), schedule for a date and timezone, add to your posting queue, async upload, first comment and an external ID of your own.
npm install
npm run build # type-check, then bundle into dist/
npm run pack:dry # list what would be published
npm run pack # write the .tgz next to package.json (for "Packed Archive" installs)The build follows the format Activepieces uses for its own published pieces: a single
self-contained CommonJS bundle at dist/src/index.js with the framework and every
dependency inlined, so the package has no runtime dependencies. The root
package.json is marked private so it cannot be published by mistake; the package
that goes to npm is dist/.
npm login # as the npm user that owns the @upload-post scope
npm version patch --no-git-tag-version # bump the version in package.json
npm run release # build + npm publish ./dist --access public- Upload-Post API docs: https://docs.upload-post.com
- Activepieces docs on community pieces: https://www.activepieces.com/docs/build-pieces/sharing-pieces/community
MIT