Получение данных об использовании проекта
Получите данные об использовании кредитов, сведения о подписке и количество запросов по сервисам для проекта в рамках текущего кредитного цикла.
curl --request GET \
--url 'https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key='import requests
url = "https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=', 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://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=",
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://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key="
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://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=")
.asString();require 'uri'
require 'net/http'
url = URI("https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=")
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_body{
"creditsRemaining": 486100,
"creditsUsed": 13900,
"prepaidCreditsRemaining": 50000,
"prepaidCreditsUsed": 0,
"creditCycle": {
"start": "2026-04-01",
"end": "2026-05-01"
},
"subscriptionDetails": {
"billingCycle": {
"start": "2026-04-01",
"end": "2026-05-01"
},
"creditsLimit": 500000,
"plan": "business"
},
"credits": {
"rpc": 4500,
"enhancedApi": 1200,
"walletApi": 0,
"das": 5000,
"webhooks": 800,
"laserstreamGrpc": 1500,
"laserstreamWebsocket": 800,
"preConfirmations": 100,
"archival": 0,
"photon": 0,
"other": 0
},
"requests": {
"rpc": 4500,
"enhancedApi": 1200,
"walletApi": 0,
"das": 5000,
"webhooks": 800,
"preConfirmations": 50,
"archival": 0,
"photon": 0,
"other": 0
},
"dataTransfer": {
"laserstreamGrpc": 15000000,
"laserstreamWebsocket": 8000000
}
}{
"statusCode": 400,
"message": "Invalid project id",
"error": "Bad Request"
}{
"statusCode": 401,
"message": "Missing or invalid API key",
"error": "Unauthorized"
}{
"statusCode": 403,
"message": "Admin API not enabled for this project",
"error": "Forbidden"
}{
"statusCode": 429,
"message": "ThrottlerException: Too Many Requests",
"error": "Too Many Requests"
}{
"statusCode": 500,
"message": "Internal server error",
"error": "Internal Server Error"
}Обзор
Возвращает полную информацию о расходовании кредитов проекта за текущий кредитный цикл, включая остаток кредитов, сведения о плане подписки и разбивку запросов по типам сервисов (RPC, DAS, gRPC, WebSocket и т. д.). Все данные о кредитах относятся кcreditCycle — периоду, в течение которого кредиты накапливаются и по окончании которого сбрасываются. Этот период определяется датой начала выставления счетов по подписке. Он есть у каждого проекта, включая проекты с бесплатными планами. subscriptionDetails.billingCycle — это период выставления счетов; он приводится только для информации и имеет значение null для бесплатных планов, по которым счета никогда не выставляются.
Параметры запроса
Поля ответа
YYYY-MM-DD (UTC).YYYY-MM-DD (UTC).null. Для платных планов этот цикл обычно совпадает с creditCycle.YYYY-MM-DD.YYYY-MM-DD."business", "professional").creditsUsed.laserstreamGrpc, laserstreamWebsocket) здесь не отображаются — см. dataTransfer. Поля: rpc, enhancedApi, walletApi, das, webhooks, preConfirmations, archival, photon, other.credits, но никогда не отображаются в requests. Поля: laserstreamGrpc, laserstreamWebsocket.Параметры запроса
Авторизации
Ключ API, переданный как параметр запроса.
Параметры пути
Идентификатор проекта, для которого необходимо получить данные об использовании. Должен соответствовать проекту, связанному с ключом API.
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
Ответ
Данные об использовании проекта успешно получены.
Количество кредитов, оставшихся в текущем кредитном цикле. Рассчитывается как creditsLimit - regularCreditsUsed, но не может быть меньше 0.
487500
Общее количество кредитов, израсходованных в текущем кредитном цикле, включая обычные и предоплаченные кредиты.
12500
Количество оставшихся предоплаченных кредитов.
50000
Количество предоплаченных кредитов, израсходованных в текущем кредитном цикле.
0
Период, к которому относятся все значения кредитов в этом ответе, — период накопления и сброса кредитов, определяемый на основе опорной даты выставления счетов по подписке. Всегда присутствует для любого плана, включая бесплатные планы, по которым счета никогда не выставляются.
Show child attributes
Show child attributes
Сведения о плане подписки проекта и цикле выставления счетов.
Show child attributes
Show child attributes
Потребление кредитов по каждому продукту за текущий кредитный цикл, выраженное в целых кредитах.
Охватывает все продукты. Необработанные значения накапливаются и округляются один раз в конце,
чтобы соответствовать данным для выставления счетов, поэтому после округления сумма кредитов
по продуктам может не совпадать в точности с creditsUsed.
Show child attributes
Show child attributes
Количество запросов за текущий кредитный цикл только для продуктов с учетом по запросам.
Продукты LaserStream с учетом по объему трафика (laserstreamGrpc, laserstreamWebsocket)
здесь не отображаются — см. dataTransfer.
Show child attributes
Show child attributes
Количество байтов, переданных за текущий кредитный цикл, только для продуктов
LaserStream с учетом по объему трафика. Плата за эти продукты взимается на основе
объема переданных данных, а не количества запросов, поэтому они отображаются здесь
и в credits, но не в requests.
Show child attributes
Show child attributes
Была ли эта страница полезной?
curl --request GET \
--url 'https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key='import requests
url = "https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=', 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://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=",
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://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key="
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://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=")
.asString();require 'uri'
require 'net/http'
url = URI("https://admin-api.helius.xyz/v0/admin/projects/{id}/usage?api-key=")
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_body{
"creditsRemaining": 486100,
"creditsUsed": 13900,
"prepaidCreditsRemaining": 50000,
"prepaidCreditsUsed": 0,
"creditCycle": {
"start": "2026-04-01",
"end": "2026-05-01"
},
"subscriptionDetails": {
"billingCycle": {
"start": "2026-04-01",
"end": "2026-05-01"
},
"creditsLimit": 500000,
"plan": "business"
},
"credits": {
"rpc": 4500,
"enhancedApi": 1200,
"walletApi": 0,
"das": 5000,
"webhooks": 800,
"laserstreamGrpc": 1500,
"laserstreamWebsocket": 800,
"preConfirmations": 100,
"archival": 0,
"photon": 0,
"other": 0
},
"requests": {
"rpc": 4500,
"enhancedApi": 1200,
"walletApi": 0,
"das": 5000,
"webhooks": 800,
"preConfirmations": 50,
"archival": 0,
"photon": 0,
"other": 0
},
"dataTransfer": {
"laserstreamGrpc": 15000000,
"laserstreamWebsocket": 8000000
}
}{
"statusCode": 400,
"message": "Invalid project id",
"error": "Bad Request"
}{
"statusCode": 401,
"message": "Missing or invalid API key",
"error": "Unauthorized"
}{
"statusCode": 403,
"message": "Admin API not enabled for this project",
"error": "Forbidden"
}{
"statusCode": 429,
"message": "ThrottlerException: Too Many Requests",
"error": "Too Many Requests"
}{
"statusCode": 500,
"message": "Internal server error",
"error": "Internal Server Error"
}