API
Code Examples

Code Examples

Language-specific implementations for the Canvelete Render API.

Prerequisites

  • API key (obtain from dashboard)
  • Design ID from your Canvelete account

Authentication

All requests require Bearer token authentication:

Authorization: Bearer cvt_YOUR_API_KEY

Base URL

https://api.canvelete.com/api/v1

Render Endpoint

POST /render/design/{designId}

Request Parameters

ParameterTypeRequiredDescription
designIdstringYesTarget design identifier
formatstringYesOutput format: png, jpg, webp, pdf
qualityintegerNoImage quality (1-100). Default: 90
dynamicElementsobjectNoOverride design element values
cachebooleanNoUse cached render if available. Default: true

Dynamic Elements Structure

{
  "element_id": {
    "text": "string", // For text elements
    "src": "url" // For image elements
  }
}

Code Examples

import requests
import json
 
url = "https://api.canvelete.com/api/v1/render/design/cmi554f5i00zbo90k0as0h038"
headers = {
    "Authorization": "Bearer cvt_YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {
    "designId": "cmi554f5i00zbo90k0as0h038",
    "format": "png",
    "quality": 90,
    "dynamicElements": {
        "product_image": {
            "src": "https://images.unsplash.com/photo-1602143407151-7111542de6e8"
        },
        "main_headline_primary": {
            "text": "Your Custom Headline Text"
        }
    },
    "cache": True
}
 
response = requests.post(url, headers=headers, json=payload)
data = response.json()
 
if data["success"]:
    print(f"Image URL: {data['data']['imageUrl']}")
else:
    print(f"Error: {data['error']}")

Response Format

Success Response

{
  "success": true,
  "data": {
    "imageUrl": "https://cdn.canvelete.com/renders/abc123.png",
    "format": "png",
    "width": 1920,
    "height": 1080,
    "fileSize": 245678,
    "renderTime": 1234
  }
}

Response Fields

FieldTypeDescription
successbooleanRequest status
data.imageUrlstringCDN URL of rendered image
data.formatstringOutput format
data.widthintegerImage width in pixels
data.heightintegerImage height in pixels
data.fileSizeintegerFile size in bytes
data.renderTimeintegerRender duration in milliseconds

Error Response

{
  "success": false,
  "error": {
    "code": "INVALID_DESIGN_ID",
    "message": "Design not found or inaccessible"
  }
}

Error Codes

CodeHTTP StatusDescription
INVALID_API_KEY401Missing or invalid authentication
INVALID_DESIGN_ID404Design does not exist or is inaccessible
INVALID_FORMAT400Unsupported output format
RATE_LIMIT_EXCEEDED429Too many requests
RENDER_FAILED500Internal rendering error