API para desarrolladores

El endpoint principal de la API REST es /ip, autenticado con una clave de API. GET /ip/{ip} recibe una dirección IP y responde con las categorías de riesgo en que está marcada. Como alternativa, GET /ip/{ip}/full añade la inteligencia de red y localización asociada a ella - la misma lectura que el panel dibuja como un pasaporte, además de los riesgos.

El endpoint de consulta

GET /ip/{ip} responde con las categorías de riesgo en que está marcada la dirección, y nada más. 1 crédito de API.

curl 'https://api.ipraccoon.com/ip/172.58.147.73' \
  -H "Authorization: $IP_RACCOON_TOKEN" \
  -H 'Accept: application/json'

GET /ip/{ip}/full responde con los mismos riesgos más los objetos network y location que hay detrás - la lectura completa que el panel dibuja como un pasaporte. 1,5 créditos de API.

curl 'https://api.ipraccoon.com/ip/172.58.147.73/full' \
  -H "Authorization: $IP_RACCOON_TOKEN" \
  -H 'Accept: application/json'
ParámetroEnDescripción
ippathLa dirección a puntuar - solo se admiten direcciones IPv4

Ambas llamadas descuentan créditos de API de tu saldo. Si lo necesitas, puedes consultar el endpoint GET /me para ver tu saldo actual; mira la sección de Referencia de la API REST para más detalles.

La respuesta

Ejemplo de respuesta

Ten en cuenta que los campos network y location solo se incluyen si se usa /ip/{ip}/full; en caso contrario no vendrán definidos.

{
  "ip": "172.58.147.73",
  "risks": {
    "reputation": "abuse"
  },
  "network": {
    "asn": 21928,
    "as": "T-Mobile USA, Inc.",
    "isp": "T-Mobile USA",
    "org": "T-Mobile USA",
    "networkType": "Mobile",
    "mcc": "310",
    "mnc": "053"
  },
  "location": {
    "country": "US",
    "city": "Nashville",
    "latitude": 36.0711,
    "longitude": -86.7196,
    "timezone": "America/Chicago",
    "continent": "NA",
    "eu": false
  }
}

risks - las marcas

Un objeto con una clave por cada categoría en que la dirección está marcada ahora mismo, y como valor la detection (subcategoría) que la levantó. Cada categoría tiene su propio conjunto de detecciones posibles. Un objeto vacío significa que no se asoció ningún riesgo a esa dirección. Cada categoría la respalda un dataset al que también puedes suscribirte directamente - mira el Repositorio de activos de inteligencia.

CategoríaSignificado
reputationFeeds de reputación de amenazas, señales de spam y abuso de formularios, e historial de abuso de la IP
anonymizersVPN, proxies, rangos de centros de datos y nodos de salida de Tor
detected_botsPatrones de detección de bots maliciosos, por comportamiento y heurísticos, sobre tráfico real
known_botsFirmas de bots verificadas y registros de crawlers conocidos, incluidos LLM como Claude y ChatGPT

network - el operador

null cuando la dirección está fuera de cobertura. Cada campo interior es a su vez nullable: el registro es un formulario, y un campo que las fuentes no pueden rellenar queda vacío en lugar de adivinarse.

CampoTipoDescripción
asnintegerNúmero de sistema autónomo
asstringNombre del sistema autónomo
ispstringEl ISP que opera la dirección
orgstringLa organización a la que está asignado el rango
networkTypestringUnknown, Mobile o WiFi
mcc / mncstringCódigo móvil de país / red, en rangos móviles

location - la geografía

null cuando la dirección está fuera de cobertura - el panel lee una respuesta con network y location ambos null como Sin datos. La misma regla que la red: todo campo nullable, nada adivinado.

CampoTipoDescripción
countrystringCódigo de país ISO 3166-1 alfa-2
citystringLa ciudad más cercana
latitude / longitudenumberCoordenadas de ese contexto de ciudad
timezonestringNombre de zona horaria IANA
continentstringCódigo de continente de dos letras
eubooleanSi el país pertenece a la UE

La geolocalización tiene precisión de ciudad como mucho - trata las coordenadas como contexto de continente y ciudad, nunca como una dirección postal.

Límites y errores

  • 400 Bad Request - dirección IP inválida o no admitida.
  • 401 Unauthorized - clave de API no proporcionada, o inválida/revocada.
  • 402 Payment Required - la cuenta no tiene créditos de API suficientes. Considera activar la recarga automática para evitar cualquier interrupción del servicio.
  • Los cuerpos de error son texto plano, no JSON.