Ipinfo io

Learn how to use Ipinfo io with Composio

Overview

SLUG: IPINFO_IO

Description

IPinfo.io provides a comprehensive API for IP address geolocation and related data.

Authentication Details

generic_token
stringRequired

Connecting to Ipinfo io

Create an auth config

Use the dashboard to create an auth config for the Ipinfo io toolkit. This allows you to connect multiple Ipinfo io accounts to Composio for agents to use.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Ipinfo io Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4ipinfo_io_auth_config_id = "ac_YOUR_IPINFO_IO_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Ipinfo io for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, ipinfo_io_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the [Ipinfo io toolkit’s playground](https://app.composio.dev/app/Ipinfo io)

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["IPINFO_IO"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Batch Lite Lookup

Description

Tool to perform bulk Lite IP lookups. Use when you need to group up to 1000 IP or URL pattern lookups into a single request.

Action Parameters

queries
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Batch IP Lookup

Description

Tool to perform batch IP lookups. Use when grouping up to 1,000 IPs or URL patterns into a single POST request.

Action Parameters

filter
boolean
ips
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Abuse Contact

Description

Tool to retrieve abuse contact information for a specific IP address. Use when you need organizational abuse details of an IP.

Action Parameters

ip
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get IP Carrier Info

Description

Tool to get carrier information for a given IP address. Use when you need mobile carrier details.

Action Parameters

ip
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Company Info for an IP

Description

Tool to retrieve company info for a specific IP. Use when you need organization details behind an IP.

Action Parameters

callback
string
ip
stringRequired
token
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get IP Information

Description

Tool to retrieve detailed information about an IP address. Use when you need geolocation, ASN, and network flags for a specific IP or 'me'.

Action Parameters

ip
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get IP Privacy Details

Description

Tool to retrieve privacy-related flags (VPN, proxy, Tor, relay, hosting) for an IP address. Use when you need to detect anonymizing usage after confirming an IP.

Action Parameters

callback
string
ip
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired