{
  "components": {
    "schemas": {
      "TaskResponse": {
        "description": "Standard async task creation response",
        "properties": {
          "code": {
            "description": "Status code returned by the service",
            "example": "success",
            "type": "string"
          },
          "data": {
            "description": "Response payload containing task details",
            "properties": {
              "task_id": {
                "description": "Identifier of the created task",
                "type": "string"
              }
            },
            "required": [
              "task_id"
            ],
            "type": "object"
          },
          "fail_code": {
            "description": "Failure code if the task submission did not succeed",
            "type": "string"
          },
          "message": {
            "description": "Additional information about the request result",
            "type": "string"
          }
        },
        "required": [
          "data",
          "code",
          "message"
        ],
        "type": "object"
      },
      "TaskStatusResponse": {
        "description": "Async task status query response",
        "example": {
          "code": "success",
          "data": {
            "fail_code": "",
            "fail_reason": "",
            "finish_time": 1763274838,
            "outputs": [
              "https://api.siray.ai/redirect/example-output"
            ],
            "progress": "100%",
            "start_time": 1763274702,
            "status": "SUCCESS",
            "submit_time": 1763274672,
            "task_id": "video_69196fafcc9c8190acccf32e9b560c3f0da8a6d1948cfaa5"
          },
          "message": ""
        },
        "properties": {
          "code": {
            "description": "Status code returned by the service",
            "example": "success",
            "type": "string"
          },
          "data": {
            "description": "Task execution details",
            "properties": {
              "fail_code": {
                "description": "Failure code if the task did not succeed",
                "type": "string"
              },
              "fail_reason": {
                "description": "Explanation of the failure if the task did not succeed",
                "type": "string"
              },
              "finish_time": {
                "description": "Unix timestamp when task processing finished",
                "format": "int64",
                "type": "integer"
              },
              "outputs": {
                "description": "URLs for generated assets",
                "items": {
                  "description": "Public URL to the generated asset",
                  "format": "uri",
                  "type": "string"
                },
                "type": "array"
              },
              "progress": {
                "description": "Human-readable task progress indicator",
                "example": "100%",
                "type": "string"
              },
              "start_time": {
                "description": "Unix timestamp when task processing began",
                "format": "int64",
                "type": "integer"
              },
              "status": {
                "description": "Current task status",
                "enum": [
                  "NOT_START",
                  "SUBMITTED",
                  "QUEUED",
                  "IN_PROGRESS",
                  "FAILURE",
                  "SUCCESS"
                ],
                "type": "string"
              },
              "submit_time": {
                "description": "Unix timestamp when the task was submitted",
                "format": "int64",
                "type": "integer"
              },
              "task_id": {
                "description": "Identifier of the task",
                "type": "string"
              }
            },
            "required": [
              "task_id",
              "status"
            ],
            "type": "object"
          },
          "message": {
            "description": "Additional information or error details",
            "type": "string"
          }
        },
        "required": [
          "code",
          "message",
          "data"
        ],
        "type": "object"
      }
    },
    "securitySchemes": {
      "bearerAuth": {
        "bearerFormat": "API Key",
        "description": "Bearer authentication using API key",
        "scheme": "bearer",
        "type": "http"
      }
    }
  },
  "info": {
    "description": "Seedance 2.5 t2v Spicy by ByteDance is a text-to-video AI model for text-to-video storytelling. Its Spicy variant supports mature and boundary-pushing creative content for production workflows.",
    "summary": "API for Seedance 2.5 t2v Spicy model",
    "title": "Seedance 2.5 t2v Spicy API",
    "version": "1.0.0"
  },
  "openapi": "3.1.0",
  "paths": {
    "/v1/video/generations": {
      "post": {
        "description": "Generate a video using the Seedance 2.5 t2v Spicy model",
        "operationId": "video_model-hxffhhczdvkwm0eu",
        "requestBody": {
          "content": {
            "application/json": {
              "example": {
                "aspect_ratio": "adaptive",
                "audio_enable": false,
                "duration": 4,
                "model": "bytedance/seedance-2.5-t2v-spicy",
                "prompt": "example_value",
                "size": "720p"
              },
              "schema": {
                "description": "Request format for video generation models",
                "properties": {
                  "aspect_ratio": {
                    "description": "Aspect ratio",
                    "enum": [
                      "adaptive",
                      "16:9",
                      "4:3",
                      "1:1",
                      "3:4",
                      "9:16",
                      "21:9"
                    ],
                    "type": "string"
                  },
                  "audio_enable": {
                    "description": "Whether to generate audio along with video",
                    "type": "boolean"
                  },
                  "duration": {
                    "description": "Fixed duration",
                    "enum": [
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10,
                      11,
                      12,
                      13,
                      14,
                      15,
                      16,
                      17,
                      18,
                      19,
                      20,
                      21,
                      22,
                      23,
                      24,
                      25,
                      26,
                      27,
                      28,
                      29,
                      30
                    ],
                    "type": "integer"
                  },
                  "model": {
                    "description": "Model name to use for the request",
                    "enum": [
                      "bytedance/seedance-2.5-t2v-spicy"
                    ],
                    "type": "string"
                  },
                  "prompt": {
                    "description": "Text prompt for generation",
                    "type": "string"
                  },
                  "size": {
                    "description": "Size",
                    "enum": [
                      "720p",
                      "480p",
                      "1080p"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "model",
                  "prompt",
                  "duration",
                  "size",
                  "aspect_ratio"
                ],
                "title": "Video Generation Request",
                "type": "object"
              }
            }
          },
          "description": "Request payload",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskResponse"
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "summary": "Generate video",
        "tags": [
          "Seedance 2.5 t2v Spicy"
        ]
      }
    },
    "/v1/video/generations/{task_id}": {
      "get": {
        "description": "Query the status and result of a video generation task",
        "operationId": "query_video_task_model-hxffhhczdvkwm0eu",
        "parameters": [
          {
            "description": "Task ID returned from the video generation request",
            "in": "path",
            "name": "task_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskStatusResponse"
                }
              }
            },
            "description": "Task status and result"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "summary": "Query video generation task",
        "tags": [
          "Seedance 2.5 t2v Spicy"
        ]
      }
    }
  },
  "servers": [
    {
      "description": "Model Verse API Server",
      "url": "https://api.siray.ai"
    }
  ],
  "tags": [
    {
      "description": "Seedance 2.5 t2v Spicy - Seedance 2.5 t2v Spicy by ByteDance is a text-to-video AI model for text-to-video storytelling. Its Spicy variant supports mature and boundary-pushing creative content for production workflows.",
      "name": "Seedance 2.5 t2v Spicy"
    }
  ]
}