Job Presets
A Job Preset is a named Job Description stored in your Closed Caption Converter account. Instead of including the full JSON configuration in every API or CLI call, you can create a preset once and reference it by its assigned Preset ID in subsequent requests. Presets reduce the amount of code in your integration, prevent configuration drift between environments, and make it easy for teams to share standardised workflows.

Creating a Preset
Presets can be created in two ways:
From the Job Presets workspace — open Job Presets in the left sidebar, click + New, and enter the preset name, ID, description, and Job Configuration JSON.
From the Subtitle Converter — configure your job exactly as you want it, open the Backup Settings section, and click Save Preset. You will be prompted for a preset name and preset ID before the configuration is stored.
Managing Presets
To review or edit an existing preset, open Job Presets from the left sidebar and update the Preset Name, Preset ID, Preset Description, or Job Configuration JSON. You can also copy a ready-to-use { "preset_id": "..." } snippet from the table.
Editing a preset changes the stored Job Description but does not affect any jobs that have already been submitted. Deleting a preset makes its ID invalid for future jobs but does not affect job history.
Naming conventions are important when using many presets. A consistent naming scheme (for example, [client]_[source-format]_to_[target-format]_[version]) makes it easy to find the right preset without needing to inspect its contents.
Using a Preset in the API
To use a preset, pass the preset_id in your API request body instead of a config object:
curl -X POST https://api.closedcaptionconverter.com/jobs \
-H "x-api-key: YOUR_API_KEY" \
-F "source=@/path/to/input.srt" \
-F "preset_id=your-preset-id-here"
The server loads the stored Job Description and processes the file exactly as if you had submitted the full JSON. No additional configuration is required in the API call beyond the source file and the preset ID.
You can load a preset into the API Playground using Load Preset before submitting a test job.
Using a Preset in the CLI
The CLI supports presets in the same way as the API. Pass the preset ID in the job configuration file:
{
"preset_id": "your-preset-id-here"
}
A network connection is required to resolve the preset from the server when using presets with the CLI. For fully offline environments, store the complete Job Description locally instead of using preset_id.
Preset IDs in Code
Preset IDs are UUID strings. Store them in your application's environment configuration or secrets manager rather than hardcoding them in source code. This makes it easy to swap presets between environments (development, staging, production) without changing application code.
# Example: store as an environment variable
CCCONVERTER_PRESET_SRT_TO_STL="abc12345-0000-0000-0000-000000000001"
# Use it in a curl request
curl -X POST https://api.closedcaptionconverter.com/jobs \
-H "x-api-key: YOUR_API_KEY" \
-F "source=@/path/to/input.srt" \
-F "preset_id=$CCCONVERTER_PRESET_SRT_TO_STL"