GET /apiv2/prices
Obtenga los precios actuales de alquiler de energía para diferentes períodos de tiempo a lo largo del día.
URL del Punto Final
GET https://netts.io/apiv2/pricesEncabezados de la Petición
| Header | Required | Description |
|---|---|---|
| X-API-KEY | Yes | Your API key |
| X-Real-IP | Yes | IP address from whitelist |
Parámetros de la solicitud
No se requieren parámetros - devuelve toda la información de precios actual.
Ejemplos de Solicitudes
cURL
bash
curl -X GET https://netts.io/apiv2/prices \
-H "X-API-KEY: your_api_key" \
-H "X-Real-IP: your_whitelisted_ip"Python
python
import requests
url = "https://netts.io/apiv2/prices"
headers = {
"X-API-KEY": "your_api_key",
"X-Real-IP": "your_whitelisted_ip"
}
response = requests.get(url, headers=headers)
data = response.json()
if response.status_code == 200:
print(f"Status: {data.get('status')}")
print(f"Current UTC time: {data.get('current_utc_time')}")
print(f"Active period: {data.get('active_period')}")
print(f"Host price: {data.get('host_price')} TRX")
print("\nPrice periods:")
for period in data.get('periods', []):
is_active = period.get('is_active', False)
active_marker = " *ACTIVE*" if is_active else ""
print(f"\n{period.get('label')}{active_marker}:")
print(f" Time: {period.get('period')}")
prices = period.get('prices', {})
print(f" < 200k energy: {prices.get('less_than_200k', {}).get('price_sun')} sun")
print(f" = 131k energy: {prices.get('equal_131k', {}).get('price_sun')} sun")
print(f" > 200k energy: {prices.get('more_than_200k', {}).get('price_sun')} sun")
else:
print(f"Error: {data.get('message', 'Unknown error')}")Respuesta
Respuesta exitosa (200 OK)
json
{
"status": "success",
"current_utc_time": "2025-09-02 06:50:39",
"current_utc_hour": 6,
"active_period": "05:00-07:00",
"last_update": "2025-09-02 08:05:03",
"host_price": 2.989,
"periods": [
{
"label": "Early Morning Hours (05:00-07:00 UTC)",
"period": "05:00-07:00",
"is_active": true,
"prices": {
"less_than_200k": {
"price_sun": 17
},
"equal_131k": {
"price_sun": 17
},
"more_than_200k": {
"price_sun": 17
}
}
},
{
"label": "Morning Hours (07:00-11:00 UTC)",
"period": "07:00-11:00",
"is_active": false,
"prices": {
"less_than_200k": {
"price_sun": 17
},
"equal_131k": {
"price_sun": 17
},
"more_than_200k": {
"price_sun": 17
}
}
}
]
}Campos de Respuesta
| Field | Type | Description |
|---|---|---|
| status | string | Always "success" for successful requests |
| current_utc_time | string | Current server time in UTC |
| current_utc_hour | integer | Current UTC hour (0-23) |
| active_period | string | Currently active pricing period |
| last_update | string | Last time prices were updated |
| host_price | number | Current host price in TRX |
| periods | array | Array of all pricing periods |
| periods[].label | string | Human-readable period name |
| periods[].period | string | Time range (HH:MM-HH:MM) |
| periods[].is_active | boolean | Whether this period is currently active |
| periods[].prices.less_than_200k.price_sun | integer | Price in SUN for energy < 200,000 units |
| periods[].prices.equal_131k.price_sun | integer | Price in SUN for exactly 131,000 units |
| periods[].prices.more_than_200k.price_sun | integer | Price in SUN for energy > 200,000 units |
Categorías de Cantidad de Energía
| Category | Description | Energy Range |
|---|---|---|
| less_than_200k | Small orders | < 200,000 energy units |
| equal_131k | Standard orders | Exactly 131,000 energy units |
| more_than_200k | Large orders | > 200,000 energy units |
Periodos de Tiempo
La API devuelve precios para 5 períodos de tiempo diferentes:
| Period | Time Range (UTC) | Description |
|---|---|---|
| Early Morning | 05:00-07:00 | Lower demand period |
| Morning | 07:00-11:00 | Business hours start |
| Daytime | 11:00-21:00 | Peak business hours |
| Evening | 21:00-23:00 | Evening activity |
| Night | 23:00-05:00 | Lowest demand period |
Límites de Tasa
Los siguientes límites de velocidad se aplican a este punto final (por dirección IP):
| Period | Limit | Description |
|---|---|---|
| 1 minute | 1 request | Maximum 1 request per minute |
| 1 hour | 60 requests | Maximum 60 requests per hour |
Encabezados de Límite de Tasa
http
RateLimit-Limit: 1
RateLimit-Remaining: 0
RateLimit-Reset: 21
X-RateLimit-Limit-Minute: 1
X-RateLimit-Remaining-Minute: 0
X-RateLimit-Limit-Hour: 60
X-RateLimit-Remaining-Hour: 59
Retry-After: 21Límite de Tasa Superado (429)
json
{
"message": "API rate limit exceeded"
}Respuestas de Error
Error de Autenticación (401)
json
{
"status": "error",
"code": 401,
"message": "Invalid API key or IP not in whitelist"
}Error interno del servidor (500)
json
{
"status": "error",
"message": "Internal server error"
}Notas
- No request body required - this is a GET request
- All prices are in SUN (1 TRX = 1,000,000 SUN)
- Prices vary by energy amount and time of day (UTC)
- Active period: Changes throughout the day based on demand
- Rate limiting: Strict limits due to database-intensive operations
- Price updates: Prices are refreshed from database periodically
- Time zones: All times are in UTC