For the complete documentation index, see llms.txt. This page is also available as Markdown.

Apply Brand Logo with projectId

Follow the brand logo recipe in PHP. projectId pulls your saved brand package (logos) into the generated video and thumbnail. Need a project first? Follow Create a Project (Brand Assets) to save a logo via imageUrl or imageData.

<?php

$token = getenv('AUTOCONTENT_TOKEN') ?: 'YOUR_API_TOKEN';
$endpoint = 'https://api.autocontentapi.com/content/Create';

$payload = [
  'outputType' => 'video',
  'projects' => ['YOUR_PROJECT_ID'],
  'resources' => [
    [
      'type' => 'text',
      'content' => 'Explain our new platform launch and highlight customer success data.'
    ]
  ],
  'text' => 'Keep this to 90 seconds with a product intro, key proof points, and a closing CTA.',
  'titlePrompt' => 'Short, benefit-led launch teaser'
];

$body = json_encode($payload);
if ($body === false) {
    fwrite(STDERR, 'Failed to encode payload: ' . json_last_error_msg() . PHP_EOL);
    exit(1);
}

$ch = curl_init($endpoint);
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . $token,
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => $body,
    CURLOPT_RETURNTRANSFER => true,
]);

$response = curl_exec($ch);
if ($response === false) {
    fwrite(STDERR, 'Request failed: ' . curl_error($ch) . PHP_EOL);
    curl_close($ch);
    exit(1);
}

$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

if ($status >= 400) {
    fwrite(STDERR, "HTTP $status" . PHP_EOL . $response . PHP_EOL);
    exit(1);
}

echo "Request accepted:" . PHP_EOL . $response . PHP_EOL;

Set YOUR_API_TOKEN (or AUTOCONTENT_TOKEN) and YOUR_PROJECT_ID before running.

Last updated