Skip to main content
POST
/
v1
/
projects
/
{id}
/
publish
curl -X POST "https://api.submagic.co/v1/projects/550e8400-e29b-41d4-a716-446655440000/publish" \
  -H "x-api-key: sk-your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '{
    "platforms": {
      "youtube": {
        "title": "How I Doubled My Revenue in 30 Days",
        "description": "In this video I break down the exact playbook I used.",
        "tags": ["business", "marketing", "growth"],
        "firstComment": "Drop a comment if this was helpful!"
      },
      "tiktok": {
        "content": "The exact playbook I used to double my revenue ๐Ÿš€ #business #marketing"
      },
      "twitter": {
        "content": "I doubled my revenue in 30 days. Here is the exact playbook ๐Ÿงต"
      },
      "facebook": {
        "content": "I doubled my revenue in 30 days. Full breakdown of the playbook inside."
      },
      "linkedin": {
        "content": "How I doubled my revenue in 30 days โ€” the exact playbook, broken down step by step."
      }
    }
  }'
{
  "id": "pub_8f3b4c2e-1a9d-4e5f-9b7c-2a4d6e8f1c3b",
  "projectId": "550e8400-e29b-41d4-a716-446655440000",
  "scheduled": false,
  "publishedAt": "2026-04-28T12:34:56.000Z",
  "status": "published",
  "platforms": ["youtube", "tiktok", "twitter", "facebook", "linkedin"]
}

Publish Project

Publish or schedule an exported project to one or more connected social platforms (YouTube, TikTok, Instagram, X/Twitter, Facebook, LinkedIn).
This endpoint requires authentication. The project must already be exported (have a downloadUrl), and the social accounts you want to publish to must be connected from the Publishing page in the dashboard.

Authentication

x-api-key
string
required
Your Submagic API key starting with sk-

Path Parameters

id
string
required
The unique identifier (UUID) of the exported project to publish

Request Body

scheduledFor
string
ISO 8601 timestamp to schedule the publication for a future time. Must be in the future. Omit to publish immediately. Scheduled publications return a 202 Accepted response; immediate publications return 200 OK.
platforms
object
required
Per-platform publishing options. At least one platform must be provided. Unknown keys are rejected.

Prerequisites

Before publishing a project, ensure:
  • Project is exported: The project must have a downloadUrl (status completed)
  • Project ownership: The project must belong to the authenticated user
  • Accounts connected: Each requested platform must be connected from the Publishing page in the dashboard
  • Sufficient credits: Your account must have enough API credits

Response

id
string
Unique identifier of the publication
projectId
string
The unique identifier of the project being published
scheduled
boolean
true if the publication was scheduled for a future time, false if published immediately
publishedAt
string
ISO 8601 timestamp of when the publication was published or is scheduled to publish
status
string
Current status of the publication: published, scheduled, processing, or failed
platforms
array
Array of platforms the project is being published to
curl -X POST "https://api.submagic.co/v1/projects/550e8400-e29b-41d4-a716-446655440000/publish" \
  -H "x-api-key: sk-your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '{
    "platforms": {
      "youtube": {
        "title": "How I Doubled My Revenue in 30 Days",
        "description": "In this video I break down the exact playbook I used.",
        "tags": ["business", "marketing", "growth"],
        "firstComment": "Drop a comment if this was helpful!"
      },
      "tiktok": {
        "content": "The exact playbook I used to double my revenue ๐Ÿš€ #business #marketing"
      },
      "twitter": {
        "content": "I doubled my revenue in 30 days. Here is the exact playbook ๐Ÿงต"
      },
      "facebook": {
        "content": "I doubled my revenue in 30 days. Full breakdown of the playbook inside."
      },
      "linkedin": {
        "content": "How I doubled my revenue in 30 days โ€” the exact playbook, broken down step by step."
      }
    }
  }'
{
  "id": "pub_8f3b4c2e-1a9d-4e5f-9b7c-2a4d6e8f1c3b",
  "projectId": "550e8400-e29b-41d4-a716-446655440000",
  "scheduled": false,
  "publishedAt": "2026-04-28T12:34:56.000Z",
  "status": "published",
  "platforms": ["youtube", "tiktok", "twitter", "facebook", "linkedin"]
}

Tracking Published Posts

After publishing, use the List Published Projects endpoint to retrieve the status, platform URLs, and analytics of your posts.
Tip: To connect a YouTube, TikTok, Instagram, X (Twitter), Facebook, or LinkedIn account, visit the Publishing page in the dashboard. Once connected, the account is available to all publish requests for that user.
Important: Publication to upstream platforms is asynchronous. A 200 response means the request was accepted and posts have been dispatched, but individual platform delivery (especially for scheduled posts) is finalized in the background. Poll the List Published Projects endpoint to track per-platform publishStatus.