Skip to main content
This guide shows you how to apply saved brand presets to your videos for consistent branding across all your content. Brand presets include logos, colors, fonts, subtitle styles, and other brand elements saved in your Pictory account.

What You’ll Learn

Brand Presets

Use saved brand configurations by name

Consistent Branding

Apply uniform styling across all videos

Quick Production

Speed up video creation with presets

Multi-Brand Support

Manage multiple brand identities

Before You Begin

Make sure you have:
  • A Pictory API key (get one here)
  • Node.js or Python installed on your machine
  • Brand preset created in your Pictory account
  • Brand preset name from your Pictory settings
npm install axios

How Brand Presets Work

When you apply a brand preset to your video:
  1. Brand Selection - You specify your brand preset by name
  2. Style Application - All brand settings are automatically applied
  3. Consistent Elements - Logos, colors, fonts, and styles are unified
  4. Automatic Formatting - Subtitles, intro/outro, and layouts use brand settings
  5. Video Creation - Your video is created with complete brand consistency
Brand presets must be created in your Pictory account before using them via the API. You can create and manage brand presets through the Pictory web interface under Brand Settings.

Complete Example

import axios from "axios";

const API_BASE_URL = "https://api.pictory.ai/pictoryapis";
const API_KEY = "YOUR_API_KEY";

const SAMPLE_TEXT =
  "AI is poised to significantly impact educators and course creators on social media. " +
  "By automating tasks like content generation, visual design, and video editing, " +
  "AI will save time and enhance consistency.";

async function createVideoWithBrandPreset() {
  try {
    console.log("Creating video with brand preset...");

    const response = await axios.post(
      `${API_BASE_URL}/v2/video/storyboard/render`,
      {
        videoName: "text_to_video_with_brand",
        brandName: "{YOUR_BRAND_NAME}",      // Your saved brand preset name

        // Scene configuration
        scenes: [
          {
            story: SAMPLE_TEXT,
            createSceneOnNewLine: true,
            createSceneOnEndOfSentence: true,
          },
        ],
      },
      {
        headers: {
          "Content-Type": "application/json",
          Authorization: API_KEY,
        },
      }
    );

    const jobId = response.data.data.jobId;
    console.log("✓ Video creation started!");
    console.log("Job ID:", jobId);

    // Monitor progress
    console.log("\nMonitoring video creation...");
    let jobCompleted = false;
    let jobResult = null;

    while (!jobCompleted) {
      const statusResponse = await axios.get(
        `${API_BASE_URL}/v1/jobs/${jobId}`,
        {
          headers: { Authorization: API_KEY },
        }
      );

      const status = statusResponse.data.data.status;
      console.log("Status:", status);

      if (status === "completed") {
        jobCompleted = true;
        jobResult = statusResponse.data;
        console.log("\n✓ Video with brand preset is ready!");
        console.log("Video URL:", jobResult.data.videoURL);
      } else if (status === "failed") {
        throw new Error("Video creation failed: " + JSON.stringify(statusResponse.data));
      }

      await new Promise(resolve => setTimeout(resolve, 5000));
    }

    return jobResult;
  } catch (error) {
    console.error("Error:", error.response?.data || error.message);
    throw error;
  }
}

createVideoWithBrandPreset();

Understanding the Parameters

ParameterTypeRequiredDescription
videoNamestringYesA descriptive name for your video project
brandNamestringYesExact name of your saved brand preset from Pictory account
scenesarrayYesVideo scene configuration (story text, scene creation rules)
Brand Name is Case-Sensitive: The brand name must exactly match the name saved in your Pictory account, including capitalization and spacing.

Brand Preset Components

Brand presets automatically apply these elements to your videos:
ElementWhat It IncludesExample
LogoPosition, size, opacity, and placementCompany logo in top-right corner
ColorsPrimary and secondary brand colorsSpecific hex codes for consistency
FontsText styling and typographyBranded font families and sizes
Intro/OutroBranded opening and closing sequences5-second branded intro video
Subtitle StylesConsistent caption formattingFont, color, position, animations
Voice SettingsPreferred AI voice configurationSpecific voice, speed, volume

Finding Your Brand Presets

Option 1: Using the Pictory Web Interface

  1. Log in to your Pictory account
  2. Navigate to Brand Kits or Brand Settings
  3. View your saved brand presets
  4. Note the exact brand name to use in your API calls

Option 2: Using the API

Retrieve all your brand presets programmatically:
const brandsResponse = await axios.get(
  `${API_BASE_URL}/v1/brands/video`,
  { headers: { Authorization: API_KEY } }
);

console.log('Your brand presets:');
brandsResponse.data.forEach(brand => {
  console.log(`- Name: ${brand.name}`);
  console.log(`  ID: ${brand.id}`);
});

// Use the 'name' field in your video creation requests
See Get Video Brands for complete API documentation.

Common Use Cases

Maintaining Brand Consistency

{
  videoName: "company_announcement",
  brandName: "Corporate Brand"
}
Result: All company videos use identical branding, ensuring professional consistency.

Quick Video Production

{
  videoName: "social_media_post",
  brandName: "Social Media Brand"
}
Result: Instantly create videos with pre-configured social media styling.

Multi-Brand Management

// Client A video
{ brandName: "Client A Brand" }

// Client B video
{ brandName: "Client B Brand" }
Result: Agencies can manage multiple client brands easily with separate presets.

Team Collaboration

{
  videoName: "team_training",
  brandName: "Internal Training Brand"
}
Result: All team members use the same brand guidelines automatically.

Best Practices

Organize brand presets for different use cases:
  • Corporate: Professional presentations and announcements
  • Social Media: Casual content for Instagram, TikTok, LinkedIn
  • Training: Educational and internal training videos
  • Marketing: Promotional and sales videos
  • Events: Conference and webinar content
This allows you to quickly select the appropriate branding for each video type.
Name your brand presets clearly:
  • Good: “Corporate - Blue Theme”, “Social - Casual Style”
  • Avoid: “Brand1”, “Test”, “New”
Clear names make it easier to select the right preset and maintain your API code.
Before using a brand preset via the API:
  • Create a test video in the Pictory web interface
  • Verify all brand elements appear correctly
  • Confirm colors, fonts, and logos are as expected
  • Make any adjustments in the brand settings
  • Then use the finalized preset in your API calls
Maintain your brand presets over time:
  • Update logos when branding changes
  • Refresh color schemes seasonally if needed
  • Adjust subtitle styles based on platform trends
  • Test updated presets before using in production
  • Document changes for your team
Create a reference guide for your team:
  • List all available brand presets with descriptions
  • Specify which preset to use for which content type
  • Include example API requests for common scenarios
  • Note any special requirements or restrictions
  • Update documentation when adding new presets

Troubleshooting

Problem: API returns an error that the brand preset doesn’t exist.Solution:
  • Verify the brand name is spelled exactly as saved in Pictory
  • Check for case sensitivity (e.g., “Corporate” vs “corporate”)
  • Use the Get Video Brands API to see all available presets
  • Ensure the brand preset exists in your account
  • Try copying the name directly from the Pictory interface
Problem: Video doesn’t show logo, colors, or other brand elements.Solution:
  • Check that the brand preset is fully configured in Pictory
  • Verify all brand elements are saved in the preset
  • Test the preset in the Pictory web interface first
  • Ensure the preset includes the specific elements you expect
  • Review the completed video - some elements may be subtle
Problem: Brand works in Pictory interface but not through API calls.Solution:
  • Confirm you’re using the exact brand name (check spelling and case)
  • Use the Get Video Brands API to retrieve the correct name
  • Ensure your API key has access to that brand preset
  • Check that the preset hasn’t been deleted or renamed
  • Verify no special characters or extra spaces in the name
Problem: Video uses a different brand preset than specified.Solution:
  • Double-check the brandName parameter in your request
  • Ensure you’re not overriding brand elements with other parameters
  • Verify the brand name is in quotes and properly formatted
  • Check for typos or autocomplete errors in your code
  • Review the request payload before sending
Problem: Get Video Brands API returns empty or errors.Solution:
  • Confirm you’ve created brand presets in your Pictory account
  • Check that your API key is valid and active
  • Ensure you’re using the correct API endpoint
  • Verify your account has access to brand features
  • Contact support if the issue persists

Next Steps

Explore more branding customization options:

API Reference

For complete technical details, see: