Conducteur

API

Create a key in Settings → API keys, then send it in the header Authorization: Bearer cd_….

1. Upload a video

curl -X POST "https://conducteur.app/api/media?filename=clip.mp4" \
  -H "Authorization: Bearer $CONDUCTEUR_KEY" \
  -H "Content-Type: video/mp4" \
  --data-binary @clip.mp4

Response: the media object with its id, duration and dimensions.

2. List your accounts

curl "https://conducteur.app/api/accounts" -H "Authorization: Bearer $CONDUCTEUR_KEY"

3. Schedule a post

curl -X POST "https://conducteur.app/api/posts" \
  -H "Authorization: Bearer $CONDUCTEUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "mediaId": "MEDIA_ID",
    "caption": "My caption #hashtag",
    "scheduledAt": "2026-10-14T18:00:00+02:00",
    "targets": [
      { "accountId": "ACCOUNT_ID_TIKTOK" },
      { "accountId": "ACCOUNT_ID_YOUTUBE", "options": { "title": "Title" } }
    ]
  }'

A post created through the API arrives as “To approve”: you confirm it in the app, where you also choose the TikTok visibility. TikTok requires that the person decides before each post. For Instagram and YouTube only, add "requireApproval": false to schedule it directly, provided every required option is set.

4. Track a post

curl "https://conducteur.app/api/posts/POST_ID" -H "Authorization: Bearer $CONDUCTEUR_KEY"

Possible states : needs_approval, scheduled, publishing, published, partial, failed, canceled.

Per-platform options

TikTok
privacyLevel, allowComment, allowDuet, allowStitch, commercial, yourBrand, brandedContent, aiGenerated, caption
Instagram
shareToFeed, coverMs, caption
YouTube
title, description, privacyStatus (public, unlisted, private), madeForKids, categoryId, tags, notifySubscribers, aiGenerated