1. ๐ Get a paid account
You need to have a paid account to Synthesia to start using our API. While in Private beta, you can start using API with a Personal plan ($30 / month). You can create unlimited videos in testing mode and up to 10 videos / month in normal mode. You can create your account here.
In case you already have an account you can skip this and create an API key below.
Pricing promo for the first 100 private beta API users
The personal account mentioned above is useful to validate your API use case (via test mode) and only includes API access for the first 100 private beta testers. Later, API access will only be accessible via our corporate plans.
For generation of big amounts of videos youโll need to upgrade your account to a custom corporate plan. For example, you can get 200 video minutes for $500/month ($2.5 / video minute) and we can make bigger volume deals based on your needs. You can reach to [email protected] for discussion on pricing.
2. ๐๏ธ Create an API key
Once youโve become a Synthesia user, head to accounts settings, scroll down to "API Keys" area, and create a new API key.
Please note: we'll only release the first 100 API keys to customers on the Personal plan. Later, API access will only be accessible via our corporate plans.
3. ๐ฌ Create first video
We will create the first video in โtestโ mode. Test videos are free and not counted towards your quota. If you create video in โtestโ mode, we will override your background with Synthesia branded background.
curl https://api.synthesia.io/v1/videos \
-H "Authorization: ${API_KEY}" \
-H "Content-Type: application/json" \
-X POST \
-d '{ "test": true, "input": [{ "script": "Hello, World! This is my first synthetic video, made with the Synthesia API!", "actor": "anna_costume1_cameraA", "background": "green_screen"}] }'
We will send you a response {...} where you can find an ID of the newly created video.
4. ๐ฝ๏ธ Wait for "complete" status
As soon as you POST a video, Synthesia begins processing the video. This can take from 10 minutes up to 40+. When the video is ready for playback, the video "status" changes to "COMPLETE".
You can poll the API to see the video status with the following call:
curl https://api.synthesia.io/v1/videos/${VIDEO_ID} \
-H "Authorization: ${API_KEY}" \
-X GET
5. ๐ Download the video
Once your video is ready, the response will include a time-limited โdownload linkโ.
See example video object response here.
You can use the link to download the video as .mp4.
curl ${DOWNLOAD_URL} --output my_first_synthetic_video.mp4
6. ๐ Explore our detailed API documentation
You can see our detailed API reference with all current possible calls and parameters here.
7. ๐ฌ Join our user group
Join our Slack group to get updates on what's new, discuss API use cases with other users and more. You can join our group here.
Updated about a month ago
What's Next
What can I use API for? |