By: Tim Taylor
Last Updated: September 16, 2025
This is the final article in our three-part series on automating closed caption workflows. We've covered clean JSON profiles and frame-accurate segment timings. Now we'll dive deep into using Postman to interact with the Closed Caption Converter API, enabling robust production workflows and automated batch processing.
This guide walks you through using Postman to submit caption conversion jobs to the Closed Caption Converter API, transforming the clean JSON profiles from Parts 1-2 into production-ready automated workflows. You'll learn to configure API authentication, set up conversion requests using form-data (source file + JSON config), handle responses and downloads, and implement advanced techniques like environment variables and batch processing. By the end, you'll have a scalable system for converting caption formats programmatically, whether for single files or enterprise-level automation pipelines.
Postman has become the industry standard for API development and testing, offering powerful features that make it ideal for caption conversion workflows:
Whether you're building automated pipelines or need reliable manual processing capabilities, Postman provides the flexibility and power required for professional caption workflows.
Before we begin, ensure you have:
Note: If your organization has a client-specific Closed Caption Converter API URL with custom features, use that instead of the generic endpoints shown in this guide.
Before submitting conversion jobs, it's good practice to verify the API is operational and check which version is running.
A successful response will look like this:
Success! We see that CCC version 3.4.51 is running. Other handy intel is also supplied.
This is a quick method of checking that the Closed Caption Converter API is running and ensuring that you are running on the version of CCC that is expected.
Now we'll build a complete conversion job request using the JSON profiles and techniques from our previous articles.
For this demonstration, we'll convert a PAC file (Poliscript format, common in European broadcast) to SRT (SubRip Text, widely supported web format).
Navigate to the Authorization tab and configure API key authentication:
Obtaining Your API Key:
Postman Authorization Settings:
Navigate to the Headers tab and add:
This header is required for job authorization and billing purposes.
Navigate to the Body tab and select form-data format. Add two required fields:
Source File:
Configuration:
Here's a complete JSON profile for PAC to SRT conversion:
{
"source_frameRate": 25,
"target_frameRate": 25,
"segments": [],
"encoding_options": [
{"name": "Encode Position", "selected": true},
{"name": "Encode Formatting", "selected": true},
{"name": "Encode Font Styles", "selected": false},
{
"name": "Position Template",
"type": "list",
"values": [
"Default", "Standard", "YouTube",
"MUFI", "Custom01", "Custom02"
],
"selected": "Default"
}
],
"decoding_options": [
{
"name": "Code Page",
"type": "list",
"values": [
"ISO 8859-1 Latin 1", "ISO 8859-2 Latin 2",
"ISO 8859-3 Latin 3", "ISO 8859-4 Baltic",
"ISO 8859-5 Cyrillic", "ISO 8859-6 Arabic",
"ISO 8859-7 Greek", "ISO 8859-8 Hebrew",
"ISO 8859-9 Turkish"
],
"selected": "ISO 8859-1 Latin 1"
},
{
"name": "Ignore Metadata",
"type": "list",
"values": [true, false],
"selected": true
}
],
"target_profile": "subRip",
"source_profile": "ssPoliscript"
}
With all parameters configured, click the Send button to submit your conversion job.
A successful conversion returns a JSON response with download information:
Common error scenarios and solutions:
{
"error": "invalid_api_key",
"message": "Please check your API key and try again"
}
Solution: Verify API key in CCC web GUI and update Postman authorization
{
"error": "unsupported_format",
"message": "Source format not recognized or target format unavailable"
}
Solution: Check source_profile and target_profile values in your JSON
{
"error": "invalid_api_key",
"message": "Please check your API key and try again"
}
Solution: Validate JSON syntax (no extra commas or missing quotes) and verify all required fields are present
& €€€þþCCC03:BLD_CCC3_35þCOPY2022 `è-è
€€€þcaption 1þHello `èXèú
€€€þcaption 2þHello `è^è
€€€þcaption 3þHello `èEè4
1
10:00:03,040 --> 10:00:05,919
caption 1
Hello
2
10:00:06,000 --> 10:00:10,720
caption 2
Hello
3
10:00:11,720 --> 10:00:14,959
caption 3
Hello
For production workflows, leverage Postman environment variables:
{
"api_base": "{{ccc_api_url}}",
"api_key": "{{ccc_api_key}}",
"username": "{{ccc_username}}"
}
This enables:
Set authorization at the collection level to avoid configuring each request individually:
Automatically handle successful responses:
// Test for successful conversion
pm.test("Conversion successful", function () {
pm.response.to.have.status(200);
pm.expect(pm.response.json().status).to.equal("completed");
});
// Extract download URL for automated processing
if (pm.response.code === 200) {
const response = pm.response.json();
pm.environment.set("download_url", response.download_url);
console.log("Conversion completed. Download URL:", response.download_url);
}
Throughout this three-part series, we've built a comprehensive foundation for professional caption conversion automation:
Part 1 established clean, maintainable JSON profiles that eliminate unnecessary complexity and improve workflow reliability.
Part 2 demonstrated frame-accurate segment timing control, essential for professional delivery specifications and complex content structures.
Part 3 provided the API integration techniques needed for production-scale automation and reliable batch processing.
You now have the knowledge to:
Professional caption conversion can require more than just changing file formats—it sometimes demands adjustments to timing, and formatting to meet new technical requirements introduced by the format. The programmatic approach we've outlined provides a basis, enabling you to build workflows that meet the exacting standards of modern media production workflows.
Whether you're processing a single file or managing thousands of assets, these techniques provide the foundation for success. The key is starting with clean, understandable configurations and building complexity only as needed.
Happy captioning, and welcome to the world of media supply chain.