Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ default_stages: [pre-commit]
# This is a template for connector pre-commit hooks
repos:
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v4.1.0
rev: v4.4.0
hooks:
- id: conventional-pre-commit
stages: [commit-msg]
args: [--verbose]
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: v6.0.0
hooks:
- id: check-merge-conflict
- id: end-of-file-fixer
Expand All @@ -27,7 +27,7 @@ repos:
- id: check-json
- id: check-yaml
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.11.7
rev: v0.15.14
hooks:
- id: ruff
args: [ "--fix", "--unsafe-fixes"] # Allow unsafe fixes (ruff pretty strict about what it can fix)
Expand All @@ -43,15 +43,14 @@ repos:
- id: soar-app-linter
args: ["--single-repo", "--message-level", "error"]
- repo: https://github.com/hukkin/mdformat
rev: 0.7.22
rev: 1.0.0
hooks:
- id: mdformat
exclude: "release_notes/.*"
- repo: https://github.com/returntocorp/semgrep
rev: v1.136.0
rev: v1.154.0
hooks:
- id: semgrep
additional_dependencies: ["setuptools==81.0.0"]
- repo: https://github.com/Yelp/detect-secrets
rev: v1.5.0
hooks:
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright (c) IP2Location.io, 2024-2025
Copyright (c) IP2Location.io, 2024-2026

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion NOTICE
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
Splunk SOAR App: IP2Location IO
Copyright (c) IP2Location.io, 2024-2025
Copyright (c) IP2Location.io, 2024-2026
242 changes: 130 additions & 112 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# IP2Location IO

Publisher: IP2Location.io \
Connector Version: 1.0.2 \
Product Vendor: IP2Location.io \
Product Name: IP2Location.io \
Minimum Product Version: 6.1.1
Publisher: IP2Location.io <br>
Connector Version: 1.0.2 <br>
Product Vendor: IP2Location.io <br>
Product Name: IP2Location.io <br>
Minimum Product Version: 6.3.0

Query IP geolocation data from IP2Location.io API

Expand All @@ -31,109 +31,127 @@ Below is an example output if you're subscribed to the Security plan.
JSON

<pre>{
"ip":"8.8.8.8",
"country_code":"US",
"country_name":"United States of America",
"region_name":"California",
"city_name":"Mountain View",
"latitude":37.405992,
"longitude":-122.078515,
"zip_code":"94043",
"time_zone":"-07:00",
"asn":"15169",
"as":"Google LLC",
"isp":"Google LLC",
"domain":"google.com",
"net_speed":"T1",
"idd_code":"1",
"area_code":"650",
"weather_station_code":"USCA0746",
"weather_station_name":"Mountain View",
"mcc":"-",
"mnc":"-",
"mobile_brand":"-",
"elevation":32,
"usage_type":"DCH",
"address_type":"Anycast",
"continent":{
"name":"North America",
"code":"NA",
"hemisphere":["north","west"],
"translation":{
"lang":"ko",
"value":"북아메리카"
}
},
"country":{
"name":"United States of America",
"alpha3_code":"USA",
"numeric_code":840,
"demonym":"Americans",
"flag":"https://cdn.ip2location.io/assets/img/flags/us.png",
"capital":"Washington, D.C.",
"total_area":9826675,
"population":331002651,
"currency":{
"code":"USD",
"name":"United States Dollar",
"symbol":"$"
},
"language":{
"code":"EN",
"name":"English"
},
"tld":"us",
"translation":{
"lang":"ko",
"value":"미국"
}
},
"region":{
"name":"California",
"code":"US-CA",
"translation":{
"lang":"ko",
"value":"캘리포니아주"
}
},
"city":{
"name":"Mountain View",
"translation":{
"lang":null,
"value":null
}
},
"time_zone_info":{
"olson":"America/Los_Angeles",
"current_time":"2022-04-18T23:41:57-07:00",
"gmt_offset":-25200,
"is_dst":true,
"sunrise":"06:27",
"sunset":"19:47"
},
"geotargeting":{
"metro":"807"
},
"ads_category":"IAB19",
"ads_category_name":"Technology & Computing",
"district":"San Diego County",
"is_proxy":false,
"proxy":{
"last_seen":18,
"proxy_type":"DCH",
"threat":"-",
"provider":"-",
"is_vpn": false,
"is_tor": false,
"is_data_center": true,
"is_public_proxy": false,
"is_web_proxy": false,
"is_web_crawler": false,
"is_residential_proxy": false,
"is_spammer": false,
"is_scanner": false,
"is_botnet": false
}
"ip": "8.8.8.8",
"country_code": "US",
"country_name": "United States of America",
"region_name": "California",
"district": "Santa Clara County",
"city_name": "Mountain View",
"latitude": 37.38605,
"longitude": -122.08385,
"zip_code": "94035",
"time_zone": "-07:00",
"asn": "15169",
"as": "Google LLC",
"as_info": {
"as_number": "15169",
"as_name": "Google LLC",
"as_domain": "google.com",
"as_usage_type": "DCH",
"as_cidr": "8.8.8.0/24"
},
"isp": "Google LLC",
"domain": "google.com",
"net_speed": "T1",
"idd_code": "1",
"area_code": "650",
"weather_station_code": "USCA0746",
"weather_station_name": "Mountain View",
"mcc": "-",
"mnc": "-",
"mobile_brand": "-",
"elevation": 32,
"usage_type": "DCH",
"address_type": "Anycast",
"ads_category": "IAB19-11",
"ads_category_name": "Data Centers",
"continent": {
"name": "North America",
"code": "NA",
"hemisphere": [
"north",
"west"
],
"translation": {
"lang": "ko",
"value": "북아메리카"
}
},
"country": {
"name": "United States of America",
"alpha3_code": "USA",
"numeric_code": 840,
"demonym": "Americans",
"flag": "https://cdn.ip2location.io/assets/img/flags/us.png",
"capital": "Washington, D.C.",
"total_area": 9826675,
"population": 339665118,
"currency": {
"code": "USD",
"name": "United States Dollar",
"symbol": "$"
},
"language": {
"code": "EN",
"name": "English"
},
"tld": "us",
"translation": {
"lang": "ko",
"value": "미국"
}
},
"region": {
"name": "California",
"code": "US-CA",
"translation": {
"lang": "ko",
"value": "캘리포니아주"
}
},
"city": {
"name": "Mountain View",
"translation": {
"lang": null,
"value": null
}
},
"time_zone_info": {
"olson": "America/Los_Angeles",
"current_time": "2026-04-29T23:36:52-07:00",
"gmt_offset": -25200,
"is_dst": true,
"abbreviation": "PDT",
"dst_start_date": "2026-03-08",
"dst_end_date": "2026-11-01",
"sunrise": "06:12",
"sunset": "19:58"
},
"geotargeting": {
"metro": "807"
},
"is_proxy": false,
"fraud_score": 0,
"proxy": {
"last_seen": 1,
"proxy_type": "DCH",
"threat": "-",
"provider": "-",
"is_vpn": false,
"is_tor": false,
"is_data_center": true,
"is_public_proxy": false,
"is_web_proxy": false,
"is_web_crawler": false,
"is_ai_crawler": false,
"is_residential_proxy": false,
"is_consumer_privacy_network": false,
"is_enterprise_private_network": false,
"is_spammer": false,
"is_scanner": false,
"is_botnet": false,
"is_bogon": false
}
}
</pre>

Expand All @@ -147,14 +165,14 @@ VARIABLE | REQUIRED | TYPE | DESCRIPTION

### Supported Actions

[test connectivity](#action-test-connectivity) - Validate the asset configuration for connectivity using supplied configuration \
[test connectivity](#action-test-connectivity) - Validate the asset configuration for connectivity using supplied configuration <br>
[geolocate ip](#action-geolocate-ip) - Queries IP2Location.io API for geolocation info

## action: 'test connectivity'

Validate the asset configuration for connectivity using supplied configuration

Type: **test** \
Type: **test** <br>
Read only: **True**

#### Action Parameters
Expand All @@ -169,7 +187,7 @@ No Output

Queries IP2Location.io API for geolocation info

Type: **investigate** \
Type: **investigate** <br>
Read only: **True**

#### Action Parameters
Expand All @@ -194,7 +212,7 @@ ______________________________________________________________________

Auto-generated Splunk SOAR Connector documentation.

Copyright 2025 Splunk Inc.
Copyright 2026 Splunk Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion __init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# File: __init__.py
#
# Copyright (c) IP2Location.io, 2024-2025
# Copyright (c) IP2Location.io, 2024-2026
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
12 changes: 9 additions & 3 deletions ip2locationio.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@
"name": "IP2Location.io"
}
],
"license": "Copyright (c) IP2Location.io, 2024-2025",
"license": "Copyright (c) IP2Location.io, 2024-2026",
"app_version": "1.0.2",
"utctime_updated": "2025-04-14T18:54:51.681828Z",
"package_name": "phantom_ip2locationio",
"main_module": "ip2locationio_connector.py",
"min_phantom_version": "6.1.1",
"min_phantom_version": "6.3.0",
"app_wizard_version": "1.0.0",
"configuration": {
"api_key": {
Expand Down Expand Up @@ -106,5 +106,11 @@
},
"versions": "EQ(*)"
}
]
],
"pip39_dependencies": {
"wheel": []
},
"pip313_dependencies": {
"wheel": []
}
}
4 changes: 2 additions & 2 deletions ip2locationio_connector.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# File: ip2locationio_connector.py
#
# Copyright (c) IP2Location.io, 2024-2025
# Copyright (c) IP2Location.io, 2024-2026
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -123,7 +123,7 @@ def _handle_test_connectivity(self, param):

self.save_progress("Connecting to endpoint")
# make rest call
ret_val, response = self._make_rest_call("/", action_result, params=None, headers=None)
ret_val, _response = self._make_rest_call("/", action_result, params=None, headers=None)

if phantom.is_fail(ret_val):
self.save_progress("Test Connectivity Failed.")
Expand Down
Loading
Loading