Create video
POST
/v1/videos
package main
import ( "fmt" "strings" "net/http" "io")
func main() {
url := "https://api.mirapi.ai/v1/videos"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"model\"\r\nContent-Type: text/plain\r\n\r\nsora-2\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"prompt\"\r\nContent-Type: text/plain\r\n\r\ncute cat dance\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"seconds\"\r\nContent-Type: text/plain\r\n\r\n8\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"input_reference\"\r\nContent-Type: application/octet-stream\r\n\r\n\r\n-----011000010111000001101001--\r\n")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>") req.Header.Add("Content-Type", "multipart/form-data; boundary=---011000010111000001101001")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}const url = 'https://api.mirapi.ai/v1/videos';const form = new FormData();form.append('model', 'sora-2');form.append('prompt', 'cute cat dance');form.append('seconds', '8');form.append('input_reference', '');
const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
options.body = form;
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.mirapi.ai/v1/videos \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: multipart/form-data' \ --form model=sora-2 \ --form 'prompt=cute cat dance' \ --form seconds=8 \ --form input_reference=undefinedOpenAI-compatible video generation endpoint.
Reference: https://platform.openai.com/docs/api-reference/videos/create
Authorizations
Section titled “Authorizations”Request Body
Section titled “Request Body”Media typemultipart/form-data
object
model
Model name
string
prompt
Prompt
string
seconds
Duration to generate, in seconds
string
input_reference
Reference image file
string format: binary
Example
{ "model": "sora-2", "prompt": "cute cat dance", "seconds": "8", "input_reference": ""}Responses
Section titled “Responses”Video task created
Media typeapplication/json
object
id
required
Video ID
string
object
required
Object type
string
model
required
Model used
string
status
required
Task status
string
progress
required
Progress percentage
integer
created_at
required
Creation timestamp
integer
seconds
required
Video duration
string
completed_at
Completion timestamp
integer
expires_at
Expiry timestamp
integer
size
Video size
string
error
OpenAI video error
object
message
Error message
string
code
Error code
string
metadata
Additional metadata
object
key
additional properties
any
Example
{ "id": "sora-2-123456", "object": "video", "model": "sora-2", "status": "queued", "progress": 0, "created_at": 1764347090922, "seconds": "8"}Invalid request parameters
Media typeapplication/json
object
error
object
message
Error message
string
type
Error type
string
param
Related parameter
string
code
Error code
string
Examplegenerated
{ "error": { "message": "example", "type": "example", "param": "example", "code": "example" }}