Variations

Create 4 new variations of one of the 4 generated images by the Imagine request.

POST https://api.apiframe.pro/variations

Headers

NameValue

Content-Type

application/json

Authorization*

Your APIFRAME API Key

Body

NameTypeDescription

parent_task_id*

string

The task ID of the original task

index*

string

The index of the image to create variations from. Can be 1, 2, 3 or 4 Can also be "strong" or "subtle", take a look here

prompt

string

Drawing prompt default value: prompt from the parent task

aspect_ratio

string

Aspect ratio for the image. Default: 1:1

webhook_url

string

The final result of this task will be posted at this URL.

webhook_secret

string

Will be passed as x-webhook-secret in the webhook call headers for authentication.

Response

// Success, the task has been submitted
{
  "task_id": 1234567890123
}

This endpoint doesn't generate images instantly, you can use the Fetch endpoint to fetch the result or use webhooks.

The result (posed to the webhook_url or retrieved from the Fetch endpoint) looks like this:

{
    "task_id": "123456789123",
    "image_urls": [{
        "https://.../xxxx1.png",
        "https://.../xxxx2.png",
        "https://.../xxxx3.png",
        "https://.../xxxx4.png"
    }]
}

If the job is not completed, you will get a result like this:

{
    "task_id": "123456789123",
    "status": "processing",
    "percentage": "80"
}

Code samples

const axios = require('axios');
let data = JSON.stringify({
  "parent_task_id": "12345678941233",
  "index": "2"
});

let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://api.apiframe.pro/variations',
  headers: { 
    'Content-Type': 'application/json', 
    'Authorization': 'YOUR_API_KEY'
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Last updated