Get Task
curl --request GET \
--url https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}', 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://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"task_id": "task_8f3a2c1b9d4e",
"status": "succeeded",
"model": "google/nano-banana-2",
"created_at": "2026-03-30T10:00:00Z",
"completed_at": "2026-03-30T10:00:12Z",
"images": [
{
"url": "https://file.iminicdn.com/file/2026/04/06/2041350421116751872.png",
"width": 1920,
"height": 1080
}
],
"error": null,
"request_id": "req_abc123"
}Image Models
Get Task
Query the status and result of an asynchronous image generation task.
GET
/
v1
/
images
/
tasks
/
{task_id}
Get Task
curl --request GET \
--url https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}', 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://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://openapi.imini.ai/imini/router/v1/images/tasks/{task_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"task_id": "task_8f3a2c1b9d4e",
"status": "succeeded",
"model": "google/nano-banana-2",
"created_at": "2026-03-30T10:00:00Z",
"completed_at": "2026-03-30T10:00:12Z",
"images": [
{
"url": "https://file.iminicdn.com/file/2026/04/06/2041350421116751872.png",
"width": 1920,
"height": 1080
}
],
"error": null,
"request_id": "req_abc123"
}Authorizations
Pass Authorization: Bearer <YOUR_API_KEY> in the request header. Go to the API Keys management page to create and manage API Keys.
Path Parameters
Unique task ID, returned by the image generation endpoint.
Example:
"task_8f3a2c1b9d4e"
Response
Query successful
Unique task ID
Example:
"task_8f3a2c1b9d4e"
Task status:
queued— Submitted, waiting in queueprocessing— Model is generatingsucceeded— Generation succeededfailed— Generation failed, see theerrorfield
Available options:
queued, processing, succeeded, failed Example:
"succeeded"
The model ID used for this task
Example:
"google/nano-banana-2"
Task creation time (ISO 8601)
Example:
"2026-03-30T10:00:00Z"
Task completion time (ISO 8601); null while not yet completed
Example:
"2026-03-30T10:00:12Z"
Generation result list. Populated when status is succeeded, otherwise null.
Show child attributes
Show child attributes
Error information. Populated when status is failed, otherwise null.
Show child attributes
Show child attributes
Unique request ID
Example:
"req_abc123"

