API de comprobaciónCheck API
Endpoints, parámetros, respuesta y errores de la API pública de IP.Endpoints, parameters, response and errors of the public IP API.
La API responde JSON en UTF-8. La URL base es https://guard.securityx.sbs/v1. Los endpoints de comprobación no requieren autenticación; la licencia solo se usa para activar y mantener el plugin.The API returns UTF-8 JSON. The base URL is https://guard.securityx.sbs/v1. Check endpoints do not require authentication; the license is only used to activate and keep the plugin running.
GET /checkGET /check
| ParámetroParameter | TipoType | DescripciónDescription |
|---|---|---|
ipip | obligatoriorequired | IPv4 o IPv6 a comprobar.IPv4 or IPv6 to check. |
allall | booleanoboolean | Añade providers[] con el detalle de cada match.Adds providers[] with per-match detail. |
datacenterdatacenter | booleanoboolean | Activa la categoría datacenter.Enables the datacenter category. |
hostinghosting | booleanoboolean | Activa la categoría hosting.Enables the hosting category. |
proxyproxy | booleanoboolean | Activa la categoría proxy.Enables the proxy category. |
proxy-asnproxy-asn | booleanoboolean | Comprueba el ASN del proveedor de proxy.Checks the proxy provider ASN. |
communitycommunity | booleanoboolean | Incluye la blocklist comunitaria.Includes the community blocklist. |
vpn, proxy, tor, abuse y hosting se evalúan siempre. datacenter, proxy-asn y community se activan con su flag.vpn, proxy, tor, abuse and hosting are always evaluated. datacenter, proxy-asn and community are enabled with their flag.
curl "https://guard.securityx.sbs/v1/check?ip=1.1.1.1&all=true&datacenter=true"
{
"ip": "1.1.1.1",
"version": 4,
"vpn": false,
"proxy": false,
"abuse": false,
"tor": false,
"hosting": false,
"flags": [],
"providers": []
}
Campos de la respuestaResponse fields
| CampoField | TipoType | SignificadoMeaning |
|---|---|---|
ipip | stringstring | IP consultada, tal como se envió.Queried IP, as submitted. |
versionversion | 4 | 64 | 6 | Familia de la IP.IP family. |
vpnvpn | booleanboolean | Salida de VPN conocida.Known VPN exit. |
proxyproxy | booleanboolean | Proxy abierto o residencial.Open or residential proxy. |
abuseabuse | booleanboolean | IP reportada por abuso.IP reported for abuse. |
tortor | booleanboolean | Nodo de salida Tor.Tor exit node. |
hostinghosting | booleanboolean | Rango de hosting.Hosting range. |
flagsflags | string[]string[] | Categorías que coincidieron. Vacío = limpio.Categories that matched. Empty = clean. |
providers[]providers[] | arrayarray | Solo con all=true: proveedor, categoría y rango.Only with all=true: provider, category and range. |
GET /check/meGET /check/me
Comprueba la IP del cliente que llama. Útil detrás de un proxy que reenvía X-Forwarded-For o CF-Connecting-IP.Checks the calling client IP. Useful behind a proxy that forwards X-Forwarded-For or CF-Connecting-IP.
POST /check/batchPOST /check/batch
Comprueba varias IPs en una sola petición. El límite por defecto es 1.000 IPs y se puede ajustar en el despliegue. Acepta los mismos flags que /check.Checks several IPs in one request. The default limit is 1,000 IPs and can be adjusted in the deployment. It accepts the same flags as /check.
{
"ips": ["1.1.1.1", "8.8.8.8"],
"all": true,
"datacenter": true
}
curl -X POST "https://guard.securityx.sbs/v1/check/batch" \
-H "Content-Type: application/json" \
-d '{"ips":["1.1.1.1","8.8.8.8"],"all":true}'
EjemplosExamples
const res = await fetch(
"https://guard.securityx.sbs/v1/check?ip=1.1.1.1&all=true",
);
const data = await res.json();
if (data.flags.length > 0) {
console.log("blocked categories:", data.flags);
}
import requests
res = requests.get(
"https://guard.securityx.sbs/v1/check",
params={"ip": "1.1.1.1", "all": "true"},
timeout=10,
)
res.raise_for_status()
data = res.json()
print(data["flags"])
ErroresErrors
| HTTPHTTP | CuerpoBody | CausaCause |
|---|---|---|
| 400400 | ip query param requiredip query param required | Falta ip.Missing ip. |
| 400400 | invalid IP addressinvalid IP address | La IP no es IPv4/IPv6 válida.The IP is not valid IPv4/IPv6. |
| 405405 | method_not_allowedmethod_not_allowed | Método HTTP incorrecto para la ruta.Wrong HTTP method for the route. |
| 429429 | too many requeststoo many requests | Límite en activación/heartbeat de licencia.License activation/heartbeat limit. |
| 500500 | internal_errorinternal_error | Fallo del servidor. Reintenta más tarde.Server failure. Retry later. |
Los dos puntos de una IPv6 son válidos en la query, pero si usas un script codifícala con URLSearchParams o --data-urlencode.Colons in an IPv6 address are valid in the query, but if you use a script encode it with URLSearchParams or --data-urlencode.
API del changelogChangelog API
Las releases también están disponibles como JSON en /v1/changelogs y como RSS en /changelogs.xml. La página pública está en /changelogs.Releases are also available as JSON at /v1/changelogs and as RSS at /changelogs.xml. The public page is at /changelogs.