Obter Uso do Projeto
Recupere o uso de créditos, detalhes da assinatura e contagens de solicitações por serviço para um projeto dentro do ciclo de crédito atual.
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": "ID de projeto inválido",
"error": "Requisição Inválida"
}{
"statusCode": 401,
"message": "Chave de API ausente ou inválida",
"error": "Não Autorizado"
}{
"statusCode": 403,
"message": "Admin API não habilitada para este projeto",
"error": "Proibido"
}{
"statusCode": 429,
"message": "ThrottlerException: Muitas Solicitações",
"error": "Muitas Solicitações"
}{
"statusCode": 500,
"message": "Erro interno do servidor",
"error": "Erro Interno do Servidor"
}Visão Geral
Retorna uma visão completa do consumo de créditos de um projeto para o ciclo de crédito atual, incluindo créditos restantes, detalhes do plano de assinatura e um detalhamento das solicitações por tipo de serviço (RPC, DAS, gRPC, WebSocket, etc.). Todas as figuras de crédito estão restritas aocreditCycle — a janela em que os créditos são acumulados e reiniciados, derivada do ponto de ancoragem da assinatura. Todo projeto tem uma, incluindo planos gratuitos. O subscriptionDetails.billingCycle é a janela de faturamento; é informativa e null em planos gratuitos, que nunca são faturados.
Parâmetros de Solicitação
Campos de Resposta
YYYY-MM-DD (UTC).YYYY-MM-DD (UTC).null em planos gratuitos, que nunca são faturados. Em planos pagos, normalmente coincide com creditCycle.YYYY-MM-DD.YYYY-MM-DD."business", "professional").creditsUsed após o arredondamento.laserstreamGrpc, laserstreamWebsocket) não aparecem aqui — veja dataTransfer. Campos: rpc, enhancedApi, walletApi, das, webhooks, preConfirmations, archival, photon, other.credits, mas nunca em requests. Campos: laserstreamGrpc, laserstreamWebsocket.Parâmetros de Solicitação
Autorizações
Chave de API passada como um parâmetro de consulta.
Parâmetros de caminho
O ID do projeto para recuperar uso. Deve corresponder ao projeto associado à chave de API.
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
Resposta
Uso do projeto recuperado com sucesso.
Número de créditos restantes no ciclo de crédito atual. Calculado como creditsLimit - regularCreditsUsed, limitado a 0.
487500
Total de créditos consumidos no ciclo de crédito atual, incluindo créditos regulares e pré-pagos.
12500
Número de créditos pré-pagos restantes.
50000
Número de créditos pré-pagos consumidos no ciclo de crédito atual.
0
O período ao qual cada valor de crédito nesta resposta está vinculado — o período em que os créditos acumulam e são redefinidos, derivado do ponto de faturamento da assinatura. Sempre presente, para todos os planos, incluindo planos gratuitos que nunca são faturados.
Show child attributes
Show child attributes
Detalhes sobre o plano de assinatura do projeto e o ciclo de faturamento.
Show child attributes
Show child attributes
Consumo de créditos por produto para o ciclo de crédito atual, em créditos inteiros. Abrange todos os produtos. Os valores são acumulados brutos e arredondados uma vez no final para corresponder ao faturamento, então os créditos por produto podem não somar exatamente a creditsUsed após o arredondamento.
Show child attributes
Show child attributes
Contagens de solicitações para o ciclo de crédito atual, apenas para produtos tarifados por solicitação. Os produtos LaserStream tarifados por largura de banda (laserstreamGrpc, laserstreamWebsocket) não aparecem aqui — veja dataTransfer.
Show child attributes
Show child attributes
Bytes transferidos para o ciclo de crédito atual, apenas para os produtos LaserStream tarifados por largura de banda. Esses produtos são faturados por dados transferidos, não por contagem de solicitações, então eles aparecem aqui e em credits, mas nunca em requests.
Show child attributes
Show child attributes
Esta página foi útil?
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": "ID de projeto inválido",
"error": "Requisição Inválida"
}{
"statusCode": 401,
"message": "Chave de API ausente ou inválida",
"error": "Não Autorizado"
}{
"statusCode": 403,
"message": "Admin API não habilitada para este projeto",
"error": "Proibido"
}{
"statusCode": 429,
"message": "ThrottlerException: Muitas Solicitações",
"error": "Muitas Solicitações"
}{
"statusCode": 500,
"message": "Erro interno do servidor",
"error": "Erro Interno do Servidor"
}