API Reference
Access powerful APIs through our unified platform. Simple authentication, transparent pricing, and comprehensive documentation.
Important: File Retention Policy
All files hosted on our servers are automatically deleted after 24 hours. Please ensure you download your generated files within this timeframe.
Secure
Enterprise-grade security with API key authentication
Fast
Low-latency proxy with global edge network
Reliable
99.9% uptime SLA with automatic failover
Get Started
Authentication
All API requests require authentication using your API key. Include your key in the request header:
curl https://eranol.com/api/v1/endpoint \
-H "x-api-key: YOUR_API_KEY"Rate Limits
Rate limits vary by plan. Check your current usage in the dashboard. Rate limit headers are included in all responses:
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200Available APIs
Convert a video file to MP4
POSTConvert a video file to MP4 format. Example: {"url": "https://cdn.example.com/audio.mpeg"}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/convert/video/to/mp4Headers
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.webm"
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/convert/video/to/mp4" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.webm"}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Convert Audio to Mp3
POSTConvert an audio file to MP3 format. Example: {"url": "https://cdn.example.com/audio.wav"}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/convert/audio/to/mp3Headers
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://dl.espressif.com/dl/audio/ff-16b-2c-44100hz.wav"
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/convert/audio/to/mp3" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://dl.espressif.com/dl/audio/ff-16b-2c-44100hz.wav"}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Convert Audio to wav
POSTConvert an audio file to wav format. Example: {"url": "https://cdn.example.com/audio.mp3"}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/convert/audio/to/wavHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/convert/audio/to/wav" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Convert to JPG
POSTConvert an image file to JPG format. Example: {"url": "https://cdn.example.com/photo.png"}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/convert/image/to/jpgHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.png"
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/convert/image/to/jpg" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.png"}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Convert to WebM
POSTConvert a video file to WebM format (VP9 + Opus). Example: {"url": "https://cdn.example.com/video.mp4"}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/convert/video/to/webmHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp4"
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/convert/video/to/webm" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp4"}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Convert to WebP
POSTConvert an image file to WebP format. Example: {"url": "https://cdn.example.com/photo.png"}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/convert/image/to/webpHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.png"
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/convert/image/to/webp" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.png"}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Delete a job and its associated output file
DELETEDelete a job and its associated output file (if any).
Endpoint
Send your requests to the following URL using the specified HTTP method.
DELETE https://eranol.com/api/v1/ffmpeg/jobs/{job_id}Headers
Include the following headers with every request. Your API key is required for authentication.
Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X DELETE "https://eranol.com/api/v1/ffmpeg/jobs/{job_id}" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"Example Response
Below is an example of a successful JSON response from this endpoint.
{
"success": true,
"data": {
"message": "Request processed successfully"
}
}Response Status
A successful request will return one of the following HTTP status codes.
Extract audio track from a video
POSTExtract audio track from a video file as WAV. Default: mono (1 channel). Set "mono": false to keep all channels. Example: {"url": "https://cdn.example.com/video.mp4", "mono": true}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/video/extract/audioHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song.mp4",
"mono": true
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/video/extract/audio" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song.mp4","mono":true}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
Extract images from a video
POSTExtract frames from a video as PNG images. Requires start_sec and end_sec to specify the time range. Default FPS is 1 (one frame per second). Returns JSON with download links. Example: {"url": "https://cdn.example.com/video.mp4", "start_sec": 10, "end_sec": 30, "fps": 2}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/video/extract/imagesHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"fps": 1,
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song.mp4",
"end_sec": 0,
"start_sec": 0
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/video/extract/images" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"fps":1,"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song.mp4","end_sec":0,"start_sec":0}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
FFmpeg Api Merge
POSTVideo merging api with images
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/mergeRequest Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"width": 1280,
"height": 720,
"images": [
{
"url": "https://picsum.photos/1920/1080.jpg?random=1",
"duration": 3
},
{
"url": "https://picsum.photos/1920/1080.jpg?random=2",
"duration": 3
},
{
"url": "https://picsum.photos/1920/1080.jpg?random=1",
"duration": 3
},
{
"url": "https://picsum.photos/1920/1080.jpg?random=2",
"duration": 3
},
{
"url": "https://picsum.photos/1920/1080.jpg?random=1",
"duration": 3
},
{
"url": "https://picsum.photos/1920/1080.jpg?random=2",
"duration": 3
}
],
"audio_url": "https://example.com/xY9BCIBv5iBWPFJb9e-ai_tmpsvdc8waw.wav",
"audio_mode": "video_length",
"transition": "fade",
"bg_audio_url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3",
"bg_audio_volume": 0.2
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/merge" \
-H "x-api-key: YOUR_API_KEY" \
-d '{"width":1280,"height":720,"images":[{"url":"https://picsum.photos/1920/1080.jpg?random=1","duration":3},{"url":"https://picsum.photos/1920/1080.jpg?random=2","duration":3},{"url":"https://picsum.photos/1920/1080.jpg?random=1","duration":3},{"url":"https://picsum.photos/1920/1080.jpg?random=2","duration":3},{"url":"https://picsum.photos/1920/1080.jpg?random=1","duration":3},{"url":"https://picsum.photos/1920/1080.jpg?random=2","duration":3}],"audio_url":"https://example.com/xY9BCIBv5iBWPFJb9e-ai_tmpsvdc8waw.wav","audio_mode":"video_length","transition":"fade","bg_audio_url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3","bg_audio_volume":0.2}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
FFmpeg Status
GETGet the current status of a job. Returns job status, progress, timestamps, and result data if completed. Works for all job types (merge, convert, extract, etc.).
Endpoint
Send your requests to the following URL using the specified HTTP method.
GET https://eranol.com/api/v1/ffmpeg/status/{job_id}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X GET "https://eranol.com/api/v1/ffmpeg/status/{job_id}" \
-H "x-api-key: YOUR_API_KEY"Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "37a8d929-1bb1-40b8-bd81-1a4a633b834b",
"status": "completed",
"duration": 58.875,
"progress": null,
"created_at": 1770492104.6935267,
"resolution": "1280x720",
"result_url": "https://eranol.com/api/v1/ffmpeg/file/af390718-7794-4b36-b9c3-2693e922cf18.mp4",
"started_at": 1770492104.6968493,
"completed_at": 1770492127.4626331
}
]Response Status
A successful request will return one of the following HTTP status codes.
Generate a GIF from a video
POSTGenerate a GIF from a video segment. Requires start_sec and end_sec (max 60s duration). Uses a two-pass palette method for high-quality output. Example: {"url": "https://cdn.example.com/video.mp4", "start_sec": 5, "end_sec": 15, "fps": 10, "width": 480}
Endpoint
Send your requests to the following URL using the specified HTTP method.
POST https://eranol.com/api/v1/ffmpeg/video/extract/gifHeaders
Include the following headers with every request. Your API key is required for authentication.
Request Body
Send the following JSON payload in the request body. Adjust the values to match your use case.
{
"fps": 10,
"url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song.mp4",
"width": 480,
"end_sec": 0,
"start_sec": 0
}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X POST "https://eranol.com/api/v1/ffmpeg/video/extract/gif" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"fps":10,"url":"https://www.soundhelix.com/examples/mp3/SoundHelix-Song.mp4","width":480,"end_sec":0,"start_sec":0}'Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"job_id": "1406c589-a1f4-45d5-8745-aae07bc4de38",
"status": "pending",
"message": "Job created. Poll status_url for progress.",
"result_url": "https://eranol.com/api/v1/ffmpeg/result/1406c589-a1f4-45d5-8745-aae07bc4de38",
"status_url": "https://eranol.com/api/v1/ffmpeg/status/1406c589-a1f4-45d5-8745-aae07bc4de38"
}
]Response Status
A successful request will return one of the following HTTP status codes.
FFmpeg Results
GETGet the result of a completed job. Returns 202 if still processing, 200 with result data if completed, or 400 if the job failed. Works for all job types.
Endpoint
Send your requests to the following URL using the specified HTTP method.
GET https://eranol.com/api/v1/ffmpeg/result/{job_id}Example Request
Use the following cURL command to make a request to this API endpoint. Replace YOUR_API_KEY with your actual API key from the dashboard.
curl -X GET "https://eranol.com/api/v1/ffmpeg/result/{job_id}" \
-H "x-api-key: YOUR_API_KEY"Example Response
Below is an example of a successful JSON response from this endpoint.
[
{
"url": "https://eranol.com/api/v1/ffmpeg/file/af390718-7794-4b36-b9c3-2693e922cf18.mp4",
"job_id": "37a8d929-1bb1-40b8-bd81-1a4a633b834b",
"duration": 58.875,
"filename": "af390718-7794-4b36-b9c3-2693e922cf18.mp4",
"resolution": "1280x720"
}
]Response Status
A successful request will return one of the following HTTP status codes.