{"name":"IP Info API","version":"1.0.0","description":"API para consulta de informações de IP com geolocalização e reverse DNS","author":"Gabriel Prado","base_url":"http://ipinfo.gabrielp.com.br","endpoints":{"/api/ip":{"method":"GET","description":"Consulta informações de um IP (próprio ou informado)","parameters":{"ip":{"type":"string","required":false,"description":"Endereço IP para consultar"}},"examples":{"url":"http://ipinfo.gabrielp.com.br/api/ip","url_with_ip":"http://ipinfo.gabrielp.com.br/api/ip?ip=8.8.8.8","curl":"curl 'http://ipinfo.gabrielp.com.br/api/ip?ip=8.8.8.8'","javascript":"fetch('http://ipinfo.gabrielp.com.br/api/ip?ip=8.8.8.8')\n  .then(r => r.json())\n  .then(console.log);","python":"import requests\nresponse = requests.get('http://ipinfo.gabrielp.com.br/api/ip?ip=8.8.8.8')\nprint(response.json())"}},"/api/ip/validate":{"method":"GET","description":"Valida formato e tipo de um IP","parameters":{"ip":{"type":"string","required":true,"description":"Endereço IP para validar"}},"examples":{"url":"http://ipinfo.gabrielp.com.br/api/ip/validate?ip=8.8.8.8","curl":"curl 'http://ipinfo.gabrielp.com.br/api/ip/validate?ip=8.8.8.8'","javascript":"fetch('http://ipinfo.gabrielp.com.br/api/ip/validate?ip=8.8.8.8')\n  .then(r => r.json())\n  .then(console.log);"}},"/api/ip/bulk":{"method":"POST","description":"Consulta múltiplos IPs de uma vez (máximo 50)","parameters":{"ips":{"type":"array","required":true,"description":"Lista de endereços IP"}},"examples":{"curl":"curl -X POST 'http://ipinfo.gabrielp.com.br/api/ip/bulk' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"ips\": [\"8.8.8.8\", \"1.1.1.1\"]}'","javascript":"fetch('http://ipinfo.gabrielp.com.br/api/ip/bulk', {\n  method: 'POST',\n  headers: { 'Content-Type': 'application/json' },\n  body: JSON.stringify({ ips: ['8.8.8.8', '1.1.1.1'] })\n})\n  .then(r => r.json())\n  .then(console.log);","python":"import requests\nresponse = requests.post(\n  'http://ipinfo.gabrielp.com.br/api/ip/bulk',\n  json={'ips': ['8.8.8.8', '1.1.1.1']}\n)\nprint(response.json())"}},"/api/dns":{"method":"GET","description":"Resolve hostname para IPs (IPv4 ou IPv6)","parameters":{"hostname":{"type":"string","required":true,"description":"Hostname para resolver"}},"examples":{"url":"http://ipinfo.gabrielp.com.br/api/dns?hostname=google.com","curl":"curl 'http://ipinfo.gabrielp.com.br/api/dns?hostname=google.com'","javascript":"fetch('http://ipinfo.gabrielp.com.br/api/dns?hostname=google.com')\n  .then(r => r.json())\n  .then(console.log);"}},"/api/ip/range":{"method":"GET","description":"Calcula range de rede IPv4","parameters":{"ip":{"type":"string","required":true,"description":"Endereço IP da rede"},"prefix":{"type":"integer","required":true,"description":"Prefixo CIDR (1-32)"}},"examples":{"url":"http://ipinfo.gabrielp.com.br/api/ip/range?ip=192.168.1.1&prefix=24","curl":"curl 'http://ipinfo.gabrielp.com.br/api/ip/range?ip=192.168.1.1&prefix=24'","javascript":"fetch('http://ipinfo.gabrielp.com.br/api/ip/range?ip=192.168.1.1&prefix=24')\n  .then(r => r.json())\n  .then(console.log);"}}},"features":["Geolocalização","Informações de rede","Reverse DNS lookup","Validação de IP","Consulta em lote","Cálculo de range IPv4"]}