[{"data":1,"prerenderedAt":153},["ShallowReactive",2],{"reference-detail-en-get_models_api_v1_models_get":3,"developer-code-1e8ddw0":151,"developer-code-hj8rg7":152},{"tag":4,"sourceTag":4,"tagSlug":5,"method":6,"path":7,"slug":8,"summary":9,"description":10,"operationId":11,"groupOrder":12,"descriptionHtml":13,"parameters":14,"responses":22,"security":138,"codeSamples":141},"Models","models","GET","\u002Fapi\u002Fv1\u002Fmodels","get-models","List avatar models","List the avatar rendering models available for talking-avatar videos. Each entry reports its\nsupported aspect ratios and resolutions and its maximum clip duration. Pass a model's `model_id`\nto POST \u002Fapi\u002Fv1\u002Fvideo.","get_models_api_v1_models_get",40,"\u003Cp>List the avatar rendering models available for talking-avatar videos. Each entry reports its supported aspect ratios and resolutions and its maximum clip duration. Pass a model's \u003Ccode>model_id\u003C\u002Fcode> to POST \u002Fapi\u002Fv1\u002Fvideo.\u003C\u002Fp>",[15],{"name":16,"in":17,"required":18,"description":19,"type":20,"example":21},"X-API-Key","header",true,"Your VisionStory API key (`sk-vs-...`), kept server-side. Create or manage keys in [API keys](\u002Fapi-keys) (Pro plan and up).","string","sk-vs-your-api-key",[23,108],{"status":24,"description":25,"contentType":26,"schema":27,"example":84,"examples":97,"headers":107},"200","Successful Response","application\u002Fjson",{"type":28,"description":29,"nullable":30,"properties":31},"BaseSuccessResponse_GetModelsResponse_","",false,[32,74,79],{"name":33,"required":18,"type":34,"description":35,"nullable":18,"properties":36},"data","GetModelsResponse | null","The endpoint-specific payload. See this endpoint's response schema for its fields; null only when the operation returns no payload.",[37],{"name":5,"required":18,"type":38,"description":39,"nullable":30,"properties":40,"items":41},"ModelDto[]","Available avatar rendering models with their supported options.",[],{"type":42,"description":29,"nullable":30,"properties":43},"ModelDto",[44,51,55,60,64],{"name":45,"required":30,"type":46,"description":47,"nullable":30,"properties":48,"items":49},"aspect_ratios","string[]","Aspect ratios this model can render; pass one of these as `aspect_ratio` when creating a video.",[],{"type":20,"description":29,"nullable":30,"properties":50},[],{"name":52,"required":18,"type":20,"description":53,"nullable":30,"properties":54},"description","Human-readable summary of the model's strengths and intended use.",[],{"name":56,"required":18,"type":57,"description":58,"nullable":30,"properties":59},"max_duration_seconds","integer","Maximum length, in seconds, of a video this model can generate in one request.",[],{"name":61,"required":18,"type":20,"description":62,"nullable":30,"properties":63},"model_id","Stable model identifier. Pass it as `model_id` when creating a video, e.g. `vs_character_v4`. Retired `vs_talk_*` ids are still accepted and transparently mapped to `vs_character_v4`.",[],{"name":65,"required":30,"type":46,"description":66,"nullable":30,"properties":67,"items":68},"resolutions","Output resolutions this model supports; pass one of these as `resolution`. Higher resolutions cost more credits and take longer to render.",[],{"type":20,"description":29,"nullable":30,"enum":69,"properties":73},[70,71,72],"720p","1080p","2k",[],{"name":75,"required":30,"type":20,"description":76,"nullable":30,"default":77,"properties":78},"message","Human-readable status message; `\"success\"` on a successful call.","success",[],{"name":80,"required":18,"type":81,"description":82,"nullable":30,"properties":83},"server_time","string · date-time","Server-side timestamp when the response was produced, in ISO 8601 format (UTC).",[],{"data":85,"message":77,"server_time":96},{"models":86},[87],{"aspect_ratios":88,"description":92,"max_duration_seconds":93,"model_id":94,"resolutions":95},[89,90,91],"9:16","16:9","1:1","Character Model v4 provides improved motion quality and stability.",600,"vs_character_v4",[70,71,72],"2026-09-04T00:00:00Z",[98],{"name":77,"description":99,"summary":100,"value":101},"Examples illustrate the response structure, not live account data or a pricing quote. IDs and URLs are placeholders. Query model discovery and cost endpoints for current availability and prices.","Successful response",{"data":102,"message":77,"server_time":96},{"models":103},[104],{"aspect_ratios":105,"description":92,"max_duration_seconds":93,"model_id":94,"resolutions":106},[89,90,91],[70,71,72],[],{"status":109,"description":110,"contentType":26,"schema":111,"example":134,"headers":137},"default","Error response. All failures share one envelope: an `error` object with a numeric `code`, a human-readable `message`, an optional `details` string, and an optional `hint` giving an actionable next step (useful for AI agents).",{"type":112,"description":29,"nullable":30,"properties":113},"ErrorResponse",[114],{"name":115,"required":18,"type":116,"description":29,"nullable":30,"properties":117},"error","ErrorDetail",[118,122,127,131],{"name":119,"required":18,"type":57,"description":120,"nullable":30,"properties":121},"code","Machine-readable error code. Mirrors the HTTP status for transport-level failures (e.g. 401, 404, 422, 500) and may carry a business-specific code otherwise.",[],{"name":123,"required":30,"type":124,"description":125,"nullable":18,"properties":126},"details","string | null","Optional structured detail about the failure, e.g. a JSON string of per-field validation errors on a 422. Absent when there is nothing extra to report.",[],{"name":128,"required":30,"type":124,"description":129,"nullable":18,"properties":130},"hint","Actionable next step for resolving the error, written for both humans and AI agents (e.g. how to fix the request, or where to obtain an API key). May be absent.",[],{"name":75,"required":18,"type":20,"description":132,"nullable":30,"properties":133},"Human-readable explanation of what went wrong. Safe to log or surface to end users; not localized.",[],{"error":135},{"code":136,"message":20,"details":20,"hint":20},1,[],[139],{"APIKeyHeader":140},[],[142,145,148],{"lang":143,"source":144},"SDK","from visionstory import VisionStoryClient\n\nclient = VisionStoryClient.from_env()\nmodels = client.list_models()\nprint(models)",{"lang":146,"source":147},"REST","import os\nimport requests\n\nheaders = {\"X-API-Key\": os.environ[\"VISIONSTORY_API_KEY\"]}\nresponse = requests.get(\n    'https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fmodels', headers=headers\n)\nresp_data = response.json()\nprint(resp_data['data'])",{"lang":149,"source":150},"cURL","curl -X 'GET' \\\n      'https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fmodels' \\\n      -H 'accept: application\u002Fjson' \\\n      -H 'X-API-Key: $VISIONSTORY_API_KEY'","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FF7B72\">from\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> visionstory \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">import\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> VisionStoryClient\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">client \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> VisionStoryClient.from_env()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">models \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> client.list_models()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#79C0FF\">print\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(models)\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">{\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">  \"data\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: {\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"models\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">      {\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">        \"aspect_ratios\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#A5D6FF\">          \"9:16\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#A5D6FF\">          \"16:9\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#A5D6FF\">          \"1:1\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">        ],\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">        \"description\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"Character Model v4 provides improved motion quality and stability.\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">        \"max_duration_seconds\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">600\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">        \"model_id\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"vs_character_v4\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">        \"resolutions\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#A5D6FF\">          \"720p\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#A5D6FF\">          \"1080p\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#A5D6FF\">          \"2k\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">        ]\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">      }\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">    ]\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">  },\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">  \"message\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"success\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">  \"server_time\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"2026-09-04T00:00:00Z\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">}\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",1790231924510]