Skip to main content
POST
/
api
/
v1
/
zapier
/
actions
/
render
Render image
curl --request POST \
  --url https://api.kynva.ai/api/v1/zapier/actions/render \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "templateId": "<string>",
  "brandName": "<string>",
  "primaryColor": "<string>",
  "secondaryColor": "<string>",
  "accentColor": "<string>",
  "headline": "<string>",
  "subheadline": "<string>",
  "body": "<string>",
  "cta": "<string>",
  "mood": "<string>",
  "style": "<string>",
  "heroImageUrl": "<string>",
  "logoUrl": "<string>",
  "platform": "<string>",
  "format": "<string>",
  "imageFormat": "<string>",
  "quality": "<string>",
  "customWidth": 123,
  "customHeight": 123
}
'
import requests

url = "https://api.kynva.ai/api/v1/zapier/actions/render"

payload = {
"templateId": "<string>",
"brandName": "<string>",
"primaryColor": "<string>",
"secondaryColor": "<string>",
"accentColor": "<string>",
"headline": "<string>",
"subheadline": "<string>",
"body": "<string>",
"cta": "<string>",
"mood": "<string>",
"style": "<string>",
"heroImageUrl": "<string>",
"logoUrl": "<string>",
"platform": "<string>",
"format": "<string>",
"imageFormat": "<string>",
"quality": "<string>",
"customWidth": 123,
"customHeight": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
templateId: '<string>',
brandName: '<string>',
primaryColor: '<string>',
secondaryColor: '<string>',
accentColor: '<string>',
headline: '<string>',
subheadline: '<string>',
body: JSON.stringify('<string>'),
cta: '<string>',
mood: '<string>',
style: '<string>',
heroImageUrl: '<string>',
logoUrl: '<string>',
platform: '<string>',
format: '<string>',
imageFormat: '<string>',
quality: '<string>',
customWidth: 123,
customHeight: 123
})
};

fetch('https://api.kynva.ai/api/v1/zapier/actions/render', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.kynva.ai/api/v1/zapier/actions/render",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'templateId' => '<string>',
'brandName' => '<string>',
'primaryColor' => '<string>',
'secondaryColor' => '<string>',
'accentColor' => '<string>',
'headline' => '<string>',
'subheadline' => '<string>',
'body' => '<string>',
'cta' => '<string>',
'mood' => '<string>',
'style' => '<string>',
'heroImageUrl' => '<string>',
'logoUrl' => '<string>',
'platform' => '<string>',
'format' => '<string>',
'imageFormat' => '<string>',
'quality' => '<string>',
'customWidth' => 123,
'customHeight' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.kynva.ai/api/v1/zapier/actions/render"

payload := strings.NewReader("{\n \"templateId\": \"<string>\",\n \"brandName\": \"<string>\",\n \"primaryColor\": \"<string>\",\n \"secondaryColor\": \"<string>\",\n \"accentColor\": \"<string>\",\n \"headline\": \"<string>\",\n \"subheadline\": \"<string>\",\n \"body\": \"<string>\",\n \"cta\": \"<string>\",\n \"mood\": \"<string>\",\n \"style\": \"<string>\",\n \"heroImageUrl\": \"<string>\",\n \"logoUrl\": \"<string>\",\n \"platform\": \"<string>\",\n \"format\": \"<string>\",\n \"imageFormat\": \"<string>\",\n \"quality\": \"<string>\",\n \"customWidth\": 123,\n \"customHeight\": 123\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.kynva.ai/api/v1/zapier/actions/render")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"templateId\": \"<string>\",\n \"brandName\": \"<string>\",\n \"primaryColor\": \"<string>\",\n \"secondaryColor\": \"<string>\",\n \"accentColor\": \"<string>\",\n \"headline\": \"<string>\",\n \"subheadline\": \"<string>\",\n \"body\": \"<string>\",\n \"cta\": \"<string>\",\n \"mood\": \"<string>\",\n \"style\": \"<string>\",\n \"heroImageUrl\": \"<string>\",\n \"logoUrl\": \"<string>\",\n \"platform\": \"<string>\",\n \"format\": \"<string>\",\n \"imageFormat\": \"<string>\",\n \"quality\": \"<string>\",\n \"customWidth\": 123,\n \"customHeight\": 123\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.kynva.ai/api/v1/zapier/actions/render")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"templateId\": \"<string>\",\n \"brandName\": \"<string>\",\n \"primaryColor\": \"<string>\",\n \"secondaryColor\": \"<string>\",\n \"accentColor\": \"<string>\",\n \"headline\": \"<string>\",\n \"subheadline\": \"<string>\",\n \"body\": \"<string>\",\n \"cta\": \"<string>\",\n \"mood\": \"<string>\",\n \"style\": \"<string>\",\n \"heroImageUrl\": \"<string>\",\n \"logoUrl\": \"<string>\",\n \"platform\": \"<string>\",\n \"format\": \"<string>\",\n \"imageFormat\": \"<string>\",\n \"quality\": \"<string>\",\n \"customWidth\": 123,\n \"customHeight\": 123\n}"

response = http.request(request)
puts response.read_body
{
  "id": "<string>",
  "url": "<string>",
  "width": 123,
  "height": 123,
  "format": "<string>"
}

Authorizations

Authorization
string
header
required

Your Kynva API key (kyn_live_xxx or kyn_test_xxx; legacy rf_ keys remain valid)

Body

application/json
templateId
string
brandName
string
primaryColor
string
secondaryColor
string
accentColor
string
headline
string
subheadline
string
body
string
cta
string
mood
string
style
string
heroImageUrl
string
logoUrl
string
platform
string
format
string
imageFormat
string
quality
string
customWidth
number
customHeight
number

Response

200 - application/json

Default Response

id
string
url
string
width
number
height
number
format
string