curl --request PATCH \
--url https://cloud-api.near.ai/v1/admin/models \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://cloud-api.near.ai/v1/admin/models"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://cloud-api.near.ai/v1/admin/models', 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://cloud-api.near.ai/v1/admin/models",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
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://cloud-api.near.ai/v1/admin/models"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", 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.patch("https://cloud-api.near.ai/v1/admin/models")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud-api.near.ai/v1/admin/models")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body[
{
"costPerImage": {
"amount": 123,
"currency": "<string>",
"scale": 123
},
"inputCostPerToken": {
"amount": 123,
"currency": "<string>",
"scale": 123
},
"metadata": {
"attestationSupported": true,
"contextLength": 123,
"modelDescription": "<string>",
"modelDisplayName": "<string>",
"ownedBy": "<string>",
"providerType": "<string>",
"verifiable": true,
"aliases": [
"<string>"
],
"architecture": {
"inputModalities": [
"<string>"
],
"outputModalities": [
"<string>"
]
},
"datacenters": [
{
"country_code": "<string>"
}
],
"deprecationDate": "<string>",
"huggingFaceId": "<string>",
"inferenceUrl": "<string>",
"isReady": true,
"maxOutputLength": 123,
"modelIcon": "<string>",
"openrouterSlug": "<string>",
"providerConfig": "<unknown>",
"quantization": "<string>",
"supportedFeatures": [
"<string>"
],
"supportedSamplingParameters": [
"<string>"
]
},
"modelId": "<string>",
"outputCostPerToken": {
"amount": 123,
"currency": "<string>",
"scale": 123
},
"cacheReadCostPerToken": {
"amount": 123,
"currency": "<string>",
"scale": 123
}
}
]{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}Batch upsert models metadata (Admin only)
Upserts (inserts or updates) pricing and metadata for one or more models. Only authenticated admins can perform this operation. The body should be an array of objects where each key is a model name and the value is the model data.
curl --request PATCH \
--url https://cloud-api.near.ai/v1/admin/models \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://cloud-api.near.ai/v1/admin/models"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://cloud-api.near.ai/v1/admin/models', 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://cloud-api.near.ai/v1/admin/models",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
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://cloud-api.near.ai/v1/admin/models"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", 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.patch("https://cloud-api.near.ai/v1/admin/models")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud-api.near.ai/v1/admin/models")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body[
{
"costPerImage": {
"amount": 123,
"currency": "<string>",
"scale": 123
},
"inputCostPerToken": {
"amount": 123,
"currency": "<string>",
"scale": 123
},
"metadata": {
"attestationSupported": true,
"contextLength": 123,
"modelDescription": "<string>",
"modelDisplayName": "<string>",
"ownedBy": "<string>",
"providerType": "<string>",
"verifiable": true,
"aliases": [
"<string>"
],
"architecture": {
"inputModalities": [
"<string>"
],
"outputModalities": [
"<string>"
]
},
"datacenters": [
{
"country_code": "<string>"
}
],
"deprecationDate": "<string>",
"huggingFaceId": "<string>",
"inferenceUrl": "<string>",
"isReady": true,
"maxOutputLength": 123,
"modelIcon": "<string>",
"openrouterSlug": "<string>",
"providerConfig": "<unknown>",
"quantization": "<string>",
"supportedFeatures": [
"<string>"
],
"supportedSamplingParameters": [
"<string>"
]
},
"modelId": "<string>",
"outputCostPerToken": {
"amount": 123,
"currency": "<string>",
"scale": 123
},
"cacheReadCostPerToken": {
"amount": 123,
"currency": "<string>",
"scale": 123
}
}
]{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}Authorizations
JWT access token for user authentication (Authorization: Bearer <jwt_token>). Create via POST /users/me/access_tokens.
Body
Request to update model pricing (admin endpoint)
Show child attributes
Show child attributes
Response
Models upserted successfully
Decimal price for API responses
The system uses a fixed scale of 9 (nano-dollars = 1 billionth of a dollar). The scale field is included in responses for client convenience.
Show child attributes
Show child attributes
Decimal price for API responses
The system uses a fixed scale of 9 (nano-dollars = 1 billionth of a dollar). The scale field is included in responses for client convenience.
Show child attributes
Show child attributes
Model metadata
Show child attributes
Show child attributes
Decimal price for API responses
The system uses a fixed scale of 9 (nano-dollars = 1 billionth of a dollar). The scale field is included in responses for client convenience.
Show child attributes
Show child attributes
Cost per cached input token. Omitted when cache pricing is disabled; an amount of 0 means cached tokens are genuinely free.
Show child attributes
Show child attributes