Get Image Model Endpoints
curl --request GET \
--url https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpointsimport requests
url = "https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints', 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.nano-gpt.com/api/v1/images/models/{modelId}/endpoints",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_bodyEndpoint Examples
Get Image Model Endpoints
Inspect endpoint metadata, pricing, and image-input constraints for an image model
GET
/
api
/
v1
/
images
/
models
/
{modelId}
/
endpoints
Get Image Model Endpoints
curl --request GET \
--url https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpointsimport requests
url = "https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints', 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.nano-gpt.com/api/v1/images/models/{modelId}/endpoints",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nano-gpt.com/api/v1/images/models/{modelId}/endpoints")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_bodyOverview
UseGET /api/v1/images/models/{modelId}/endpoints to inspect public endpoint metadata for a specific image model. The response includes supported parameters, public NanoGPT pricing, streaming support, and image reference constraints when the model supports image inputs.
For model IDs that contain slashes, use the endpoints URL returned by GET /api/v1/images/models.
Authentication
Authentication is optional.Authorization: Bearer YOUR_API_KEYx-api-key: YOUR_API_KEY
Request
GET /api/v1/images/models/openai/gpt-image-2.5/flare/text-to-image/endpoints
Response
{
"id": "openai/gpt-image-2.5/flare/text-to-image",
"endpoints": [
{
"provider_name": "OpenAI",
"provider_slug": "openai",
"provider_tag": null,
"supported_parameters": {
"resolution": {
"type": "enum",
"values": ["1k", "2k", "4k"],
"default": "1k"
},
"n": {
"type": "range",
"min": 1,
"max": 4,
"default": 1
}
},
"allowed_passthrough_parameters": [],
"supports_streaming": false,
"pricing": [
{
"billable": "output_image",
"unit": "image",
"cost_usd": 0.153,
"resolution": "1k"
}
],
"input_reference_constraints": {
"max_items": 16,
"route": {
"min_width": 8,
"min_height": 8,
"max_bytes": 31457280,
"formats": ["png", "jpeg", "webp"],
"source": "route-preflight"
}
}
}
]
}
Fields
| Field | Type | Description |
|---|---|---|
id | string | Image model ID. |
endpoints | array | Public endpoint metadata for the model. Currently one public endpoint is returned per model. |
provider_name | string | Public provider display name. |
provider_slug | string | Public provider slug. |
provider_tag | string or null | Currently null; provider selection is not exposed on this API surface. |
supported_parameters | object | Machine-readable parameter metadata for this model endpoint. |
allowed_passthrough_parameters | array | Empty for now; provider passthrough is not supported. |
supports_streaming | boolean | Currently false. |
pricing | array | Public NanoGPT pricing metadata. This is not provider at-cost pricing. |
input_reference_constraints | object | Included when the model supports image inputs. |
Example
curl https://api.nano-gpt.com/api/v1/images/models/openai/gpt-image-2.5/flare/text-to-image/endpoints
Notes
- Provider selection, provider passthrough options, and provider-specific endpoint choice are not supported yet.
pricinguses public NanoGPT pricing.- Check
supported_parametersbefore deciding which request controls to show.