{"files":{"SKILL.md":"---\nname: json2video-api\ndescription: \"JSON2Video API skill. Use when working with JSON2Video for movies. Covers 2 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# JSON2Video API\nAPI version: 2.0.0\n\n## Auth\nNo authentication required.\n\n## Base URL\nhttps://api.json2video.com/v2\n\n## Setup\n1. No auth setup needed\n2. GET /movies -- get the status of your movies\n3. POST /movies -- create first movy\n\n## Endpoints\n2 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Movies\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /movies | Get the status of your movies |\n| POST | /movies | Create a new movie |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all movies?\" -> GET /movies\n- \"Create a movy?\" -> POST /movies\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api JSON2Video API\n@base https://api.json2video.com/v2\n@version 2.0.0\n@endpoints 2\n@toc movies(2)\n\n@endpoint GET /movies\n@desc Get the status of your movies\n@returns(200) Ok\n\n@endpoint POST /movies\n@desc Create a new movie\n@required {scenes: [map{id: str, condition: str, variables: map, comment: str, background-color: str, duration: num(float), elements: [any], transition: map, cache: bool}]}\n@optional {id: str=@randomString # Movie ID string. It must be unique per project, comment: str # Used for adding your comments, draft: bool(true/false)=true # Set to true to add a watermark to the movie. Free plans are not allowed to set draft to false, variables: map=[object Object] # Variables of the template. Variable names can only contain letters, numbers and underscores, resolution: str(sd/hd/full-hd/squared/instagram-story/instagram-feed/twitter-landscape/twitter-portrait/custom)=custom # Set the movie size based on common use cases. Use custom to set a custom size with the width and height properties, width: int=640 # Width of the movie. Only applicable if resolution is set to custom, height: int=360 # Height of the movie. Only applicable if resolution is set to custom, quality: str(low/medium/high)=high # Quality of the final rendered movie. Use it for speeding up the rendering process. low is the lowest quality, high is the highest quality, fps: int=25 # Frames per second, client-data: map=[object Object] # Key-value pairs that will be included in the response of the GET requests and in the webhook payloads. Client data is intended to pass on information to the following steps of the workflow., settings: map # Deprecated, elements: [any], cache: bool=true # Use the cached version of the movie if its available, exports: [any] # You can define different types of exports for your movie. Check the documentation for more information}\n@returns(200) Added\n\n@end\n"}}