Skip to content

IPDataInfo/ipdata-action

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IPData.info IP Lookup — GitHub Action for Free IP Geolocation & Threat Intelligence

Test License: MIT Marketplace

Official GitHub Action for ipdata.info — a free, fast IP geolocation, ASN, and threat-intelligence API. Use it in CI to enrich logs, gate deploys by country, or block requests from known proxies/VPNs/Tor exit nodes. Zero runtime dependencies beyond curl and jq, which ship on every GitHub-hosted runner.

Get a free API key

The public endpoint is free — 50 requests/min, no signup, no key. For higher rate limits, create a free API key at ipdata.info/register and manage it in your dashboard. Store it as a repository secret (e.g. IPDATA_API_KEY) — never hardcode it in the workflow file.

Usage

- name: Look up IP
  id: ipdata
  uses: IPDataInfo/ipdata-action@v1
  with:
    ip: '8.8.8.8'
    # api_key: ${{ secrets.IPDATA_API_KEY }}   # optional, for higher limits

- name: Print result
  run: |
    echo "Country: ${{ steps.ipdata.outputs.country }} (${{ steps.ipdata.outputs.country_code }})"
    echo "ASN: ${{ steps.ipdata.outputs.asn }} - ${{ steps.ipdata.outputs.asn_org }}"
    echo "Is proxy: ${{ steps.ipdata.outputs.is_proxy }}"

Inputs

Input Required Default Description
ip yes IPv4 or IPv6 address to look up.
api_key no '' ipdata.info API key. Pass via ${{ secrets.* }}, never inline. Omit for free-tier anonymous lookups.
host no https://ipdata.info API host. Use https://pro.ipdata.info with a paid key for higher limits.

Outputs

Output Description
country Full country name (e.g. United States).
country_code ISO 3166-1 alpha-2 code (e.g. US).
asn Autonomous System Number (e.g. 15169).
asn_org ASN organization name (e.g. Google LLC).
is_proxy true/false — known proxy IP.
threat_listed true/false — any of security.tor/proxy/vpn/hosting set.
json Full raw JSON response from the API.

Full response schema: ipdata.info API docs · SDK contract.

Example: gate a deploy by proxy detection

See examples/gate-by-country.yml for a full workflow that fails a job when the triggering IP is flagged as a proxy.

- uses: IPDataInfo/ipdata-action@v1
  id: ipdata
  with:
    ip: ${{ github.event.client_payload.ip }}

- name: Block proxies
  if: steps.ipdata.outputs.is_proxy == 'true'
  run: |
    echo "::error::Request blocked: source IP is a known proxy"
    exit 1

Rate limits

  • Free (ipdata.info): 50 req/min, no key.
  • Paid (pro.ipdata.info): higher limits, with an API key.

Other SDKs

12 official SDKs — see the full list at ipdata.info/docs/sdks: Python, Node.js, Go, PHP, Java, Rust, .NET, Kotlin, Swift, Dart, Bash, Objective-C.

License

MIT © ipdata.info

About

GitHub Action: look up an IP geolocation, ASN and threat status via ipdata.info

Topics

Resources

License

Stars

3 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages