Assets & References
https://sangtao.ai/api/v2/assets/voicesReference for Assets & References.
Returns all available TTS voices. Use the slug field as voiceId when creating videos.
Response Fields
| Field | Type | Description |
|---|---|---|
| id | number | Numeric voice ID |
| slug | string | Unique voice identifier — use as voiceId |
| name | string | Display name |
| code | string? | Voice code (internal identifier) |
| language | string | BCP-47 language code (e.g. "vi", "en") |
| gender | string | "Male" or "Female" |
| age | string | Voice age group (e.g. "Young", "Middle Aged") |
| style | string? | Voice style (e.g. "calm", "news") — null if none |
| useCase | string? | Suggested use case (e.g. "news", "callcenter") |
| voiceDescription | string? | Description of the voice characteristics |
| voiceSampleUrl | string? | Audio sample URL |
| voiceImageUrl | string? | Avatar/image URL for the voice |
| previewUrl | string? | Audio preview URL |
| tags | string? | Comma-separated tags for filtering (e.g. "news,calm") |
| ttsModel | string? | Voice engine used for this job |
| isPremium | bool | true = premium voice (Pro tier) |
| creditCostPer1kChars | number | Credit cost per 1,000 characters |
| isMultiLanguage | bool | true = voice supports multiple languages |
Voice Tiers & Pricing
| Tier | isPremium | Cost |
|---|---|---|
| Free | false | First 500 chars free, then 1 credit per 200 chars |
| Pro 10 | true (cost = 10) | 10 credits per 1,000 chars |
| Pro 40 | true (cost = 40) | 40 credits per 1,000 chars |
| Pro 60 | true (cost = 60) | 60 credits per 1,000 chars |
Example Response
{
"success": true,
"data": [
{
"slug": "vi-VN-HoaiMyNeural",
"name": "Hoài My",
"code": "vi-VN-HoaiMyNeural",
"language": "vi",
"gender": "Female",
"age": "Young",
"style": null,
"useCase": null,
"voiceDescription": "Giọng nữ trẻ, tự nhiên",
"voiceSampleUrl": "https://cdn.sangtao.ai/...",
"voiceImageUrl": "https://cdn.sangtao.ai/...",
"previewUrl": "https://cdn.sangtao.ai/...",
"tags": "",
"ttsModel": "standard",
"isPremium": false,
"creditCostPer1kChars": 0
}
]
}Returns all available background music tracks. Use the slug field as backgroundMusic.trackId.
Response Fields
| Field | Type | Description |
|---|---|---|
| id | number | Numeric track ID |
| slug | string | Unique identifier — use as trackId |
| name | string | English display name |
| nameVi | string | Vietnamese display name |
| category | string? | Category: news, cinematic, corporate, calm, lofi, electronic, upbeat, inspiring, emotional, podcast |
| tags | string? | Comma-separated tags for filtering |
| audioUrl | string | Direct audio URL |
| previewUrl | string? | Short preview audio URL |
| durationSeconds | number? | Track duration in seconds (null if unknown) |
Example Response
{
"success": true,
"data": [
{
"slug": "grand_project-breaking-news-background-music_loop-505609",
"name": "Breaking Alert",
"nameVi": "Tin nóng",
"category": "news",
"tags": "news,urgent",
"audioUrl": "https://cdn.sangtao.ai/assets/...",
"previewUrl": "https://cdn.sangtao.ai/assets/...",
"durationSeconds": null
}
]
}/api/v2/assets/caption-presetsReturns available caption preset styles. Use the slug field as caption.preset when creating videos.
Response Fields
| Field | Type | Description |
|---|---|---|
| slug | string | Unique identifier — use as caption.preset |
| name | string | Display name |
| description | string? | Description of the preset style |
| category | string? | Category (e.g. "popular") |
| previewImageUrl | string? | Preview video/image URL |
| configJson | string | JSON string with the full caption config this preset applies |
| editableFieldsJson | string | JSON array of fields the user can override |
| isPremium | bool | true = premium preset |
/api/v2/assets/overlaysReturns available video overlay effects. Use the slug field as overlay parameter when creating videos.
Response Fields
| Field | Type | Description |
|---|---|---|
| slug | string | Unique identifier — use as overlay |
| name | string | English display name |
| nameVi | string | Vietnamese display name |
| category | string? | Category (e.g. "particles") |
| videoUrl | string | Overlay video URL (looped over the output) |
| previewUrl | string? | Short preview URL |
/api/v2/assets/image-stylesReturns available AI image generation styles. Use the id or name field as imageStyle parameter in Voiceover Video.
Response Fields
| Field | Type | Description |
|---|---|---|
| id | number | Unique style ID |
| name | string | English name (e.g. "Anime", "Dark Realistic") |
| nameVi | string | Vietnamese name |
| description | string | English description |
| descriptionVi | string | Vietnamese description |
| previewImageUrl | string | Full-size preview image |
| previewThumbnailUrl | string | Thumbnail preview |
/api/v2/assets/credit-packagesReturns available credit packages for purchase. Shows pricing tiers and bonus amounts.
Response Fields
| Field | Type | Description |
|---|---|---|
| id | guid | Package ID |
| slug | string | Unique identifier |
| name | string | Package display name |
| creditAmount | decimal | Number of credits included |
| priceVnd | decimal | Price in VND |
| bonusPercent | int | Bonus percentage (e.g. 20 = +20% credits) |
| subtitle | string | Short description displayed under name |
| featuresJson | string | JSON string listing package features |
| isFeatured | bool | true = highlighted/recommended package |
| hasWatermark | bool | true = videos include watermark |
| hasApiAccess | bool | true = API access included |
/api/v2/assets/video-layoutsReturns available video layouts with preview and configuration details. Use the slug field as layoutSlug in Render Video.
Response Fields
| Field | Type | Description |
|---|---|---|
| id | guid | Layout ID |
| slug | string | Unique identifier — use as layoutSlug |
| name | string | Display name |
| description | string? | Layout description |
| aspectRatio | string | Aspect ratio: "16:9", "9:16", "1:1" |
| preview | string? | Preview image/video URL |
| configJson | string | JSON string with layout configuration |
| isSystemLayout | bool | true = system-provided layout |
Try — Voices
This endpoint is public — no API key required.
Try — Background Tracks
This endpoint is public — no API key required.
Try — Caption Presets
This endpoint is public — no API key required.
Try — Overlays
This endpoint is public — no API key required.
Try — Image Styles
This endpoint is public — no API key required.
Try — Credit Packages
This endpoint is public — no API key required.
Try — Video Layouts
This endpoint is public — no API key required.