Schedule a post
Preview & trim
Drag boxes on the video. Crop keeps only inside the green box; blur boxes hide what's under them. Corner handle resizes.
Orange handles = start/end. Use ✂ to cut sections out of the middle (red) — those are removed and the rest joins together. Only the final clip is published.
Break the clip into segments and drag them into any order — move your best moment to the front as a hook.
Batch schedule
Add a creator
Create a creator, then connect their Instagram and X accounts. Every clip you upload for a creator posts to all their connected channels at once.
Creators
Team logins
| Username | Role | Created |
|---|
Add login
Change my password
API keys
Give another project read access to Instagram insights and a feed of published-video events. A key is shown once — copy it now, it can't be retrieved later.
| Label | Key | Last used | Created |
|---|
Webhooks
We'll POST a JSON payload to these URLs the moment a video is published to Instagram. The signing secret is shown once — use it to verify the X-Forge-Signature header.
| URL | Added |
|---|
How the other project uses this
Base URL: . Authenticate every request with Authorization: Bearer <key>.
# List Instagram channels
curl -H "Authorization: Bearer FORGE_KEY" \
/api/v1/channels
# Insights for one channel (by @handle or id)
curl -H "Authorization: Bearer FORGE_KEY" \
"/api/v1/insights?channel=harriwagers"
# Poll for new published-video events (oldest first).
# Save the returned "cursor" and pass it as ?since= next time.
curl -H "Authorization: Bearer FORGE_KEY" \
"/api/v1/events?since=0"
# Webhook: we POST this JSON on each publish. Verify the signature:
# expected = "sha256=" + HMAC_SHA256(secret, rawRequestBody)
# compare against the X-Forge-Signature header.
# { "type":"video.published",
# "data":{ "ig_username":"...", "remote_post_id":"...", "media_type":"reel", "caption":"..." } }