Autenticación
Envía tu clave API en la cabecera x-api-key en cada petición. Las claves se almacenan con hash SHA-256 y se validan contra una caché Redis para verificación sub-5ms.
curl https://metrics0.jaret.es/api/v1/resources?limit=10 \ -H "x-api-key: YOUR_KEY"
Ratelimit: 300 peticiones por minuto por clave, ventana deslizante. Un 429 significa que debes esperar; la siguiente ventana se reinicia en 60 segundos.
GET /api/v1/resources
Top de recursos en todos los servidores online, ordenados por instalaciones. Cacheado en servidor durante 60s.
| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
| page | integer | 1 | Número de página (1-indexado). |
| limit | integer | 50 | Tamaño de página, máx 100. |
| q | string | — | Filtro de búsqueda (substring case-insensitive). |
Respuesta
{
"rows": [
{ "resource": "oxmysql", "serverCount": 24040, "playerCount": 64177 },
{ "resource": "pma-voice", "serverCount": 22015, "playerCount": 58304 }
],
"total": 4901,
"page": 1,
"limit": 50,
"hasMore": true
}GET /api/v1/resources/{name}
Servidores que ejecutan un recurso concreto, ordenados por jugadores actuales. Útil para "¿quién está usando mi script?". Cacheado en servidor durante 120s.
| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
| page | integer | 1 | Número de página (1-indexado). |
| limit | integer | 30 | Tamaño de página, máx 100. |
Respuesta
{
"resource": "oxmysql",
"serverCount": 24040,
"playerCount": 64177,
"rows": [
{
"cfxCode": "9zj5ay",
"hostnameClean": "Baylife RP",
"projectName": "Baylife RP",
"playersCurrent": 1769, "playersMax": 2040,
"localeCountry": "FR",
"iconVersion": 2006463867,
"upvotePower": 1956, "playersPeak": 1769
}
],
"page": 1, "limit": 30, "hasMore": true
}Respuestas de error
Falta o es inválida la x-api-key.
Excedido 300/min/clave. Espera 60s.
Transitorio. Reintenta con backoff exponencial.