Render Request

curl-example.sh
1curl -X POST https://render-api.chillin.online/render/v1 \ 2-H "Accept: application/json" \ 3-H "Content-Type: application/json" \ 4-H "Authorization: Bearer YOUR_API_KEY" \ 5-d @request.json

Note: Our rendering requests are processed async. After submitting a request, you will immediately receive a response containing a render_id, which can be used to query the rendering status and results.

PropTypeRequiredExampleValue RangeDescription
compositeWidthnumbertrue1920720 - 3840The width of the composite.
compositeHeightnumbertrue1080720 - 3840The height of the composite.
fpsnumbertrue3015 - 60The frame rate of the composite.
projectDataobjecttrue--The project data. Can be exported from the editor.

Note: The compositeWidth and compositeHeight can differ from the width and height specified in projectData. However, the aspect ratio of compositeWidth to compositeHeight must remain consistent with the aspect ratio of projectData.width to projectData.height.

This design allows the same video project to be exported in different resolutions while maintaining the original aspect ratio.

request.json
1{ 2 "compositeWidth": 1920, 3 "compositeHeight": 1080, 4 "fps": 30, 5 "projectData": { 6 "type": "", 7 "width": 1920, 8 "height": 1080, 9 "fill": "#000000", 10 "view": [ 11 { 12 "id": "8ecf7475-2c6c-47f9-827b-a09c7913f4c0", 13 "type": "Image", 14 "start": 0, 15 "duration": 5, 16 "trackIndex": 0, 17 "x": -570.0335392757963, 18 "y": -170.90659033307685, 19 "blendMode": "normal", 20 "anchorX": 1302,

Success Render Response

success_response.json
1{ 2 "code": 0, 3 "data": { 4 "message": "Async render request submitted successfully", 5 "render_id": 105586, 6 "status": "processing" 7 }, 8 "msg": "success" 9} 10

Error Render Response

error_response.json
1{ 2 "code": 2004, 3 "data": {}, 4 "msg": "invalid project data: invalid view array: view item 0: missing required field: id" 5} 6

Response Codes

Here are the codes returned by the async rendering API:

  • 0: Success – The async render request was submitted successfully.
  • 2001: Parameter error – The request contains invalid or missing parameters.
  • 2002: User not registered – The provided user ID does not exist.
  • 2003: User is not an API member and cannot use rendering services.
  • 2004: Invalid project data – The projectData field is not a valid JSON object.
  • 2005: Render balance not enough – Insufficient balance to proceed with rendering.
  • 2006: Failed to marshal project data – Could not convert project data to JSON.
  • 2007: Failed to upload JSON data – Error occurred while uploading project data.
  • 2008: Failed to marshal render data – Render request payload could not be serialized.
  • 2009: Failed to send render request – Error occurred while sending the request.
  • 2010: Missing duration field – The duration field is required but missing.
  • 2011: Invalid duration field – The duration field is present but not in the correct format.
  • 2012: Render service failed – The rendering service encountered an internal error.

If you encounter an error code not listed, please contact support at [email protected].

Get Render Result

After submitting an async render request, you can use the render_id to query the rendering status and result.

get-result-example.sh
1curl -X POST https://render-api.chillin.online/render/result \ 2-H "Accept: application/json" \ 3-H "Content-Type: application/json" \ 4-H "Authorization: Bearer YOUR_API_KEY" \ 5-d '{"render_id": 100000}'

Request Parameters

PropTypeRequiredExampleValue RangeDescription
render_idnumbertrue100000-The render ID returned from the initial render request.

Success Render Response

result_response.json
1{ 2 "code": 0, 3 "data": { 4 "render": { 5 "create_at": "2025-06-27T12:37:21.684337Z", 6 "json_url": "https://cloud.chillin.online/project_xxx.json?verify=xxx", 7 "render_id": 105549, 8 "state": "success", 9 "video_url": "https://cloud.chillin.online/video_xxx.mp4?verify=xxx" 10 } 11 }, 12 "msg": "success" 13} 14

Render States

The state field in the response can have the following values:

  • pending: The render request is queued and waiting to be processed
  • rendering: The render is currently being processed
  • success: The render completed successfully and the video is ready
  • failed: The render failed due to an error