Geocodio

Learn how to use Geocodio with Composio

Overview

SLUG: GEOCODIO

Description

Geocodio provides straightforward and easy-to-use geocoding, reverse geocoding, and data matching services for US and Canadian addresses.

Authentication Details

generic_api_key
stringRequired

Connecting to Geocodio

Create an auth config

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

1

Select App

Navigate to Geocodio.

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 Geocodio 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
4geocodio_auth_config_id = "ac_YOUR_GEOCODIO_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 Geocodio 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, geocodio_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 Geocodio toolkit’s playground

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=["GEOCODIO"])
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: Append Canadian StatCan Boundaries

Description

Tool to append Canadian statistical boundaries from Statistics Canada. Use after geocoding addresses to enrich results with StatCan geography data.

Action Parameters

city
string
country
string
county
string
fields
stringDefaults to statcan
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append Canadian Provincial Electoral District

Description

Tool to append Canadian provincial electoral district to geocode results. Use when you need the provincial riding for a Canadian address.

Action Parameters

city
string
country
string
county
string
fields
stringDefaults to provriding
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append Census Data to Geocoded Address

Description

Tool to append Census block/tract FIPS and MSA/CSA codes to geocoded addresses. Use when you need detailed Census boundaries and metropolitan area codes.

Action Parameters

city
string
country
string
county
string
fields
array
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append Congressional District

Description

Tool to append Congressional District information to a geocoded address. Use after confirming address validity.

Action Parameters

city
string
country
string
county
string
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Geocodio List

Description

Tool to delete a specific list. Use when you need to permanently remove an existing list after confirming its list_id.

Action Parameters

list_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append FFIEC Fair Lending Data

Description

Tool to append FFIEC (Fair Lending) data to a geocoded address. Use after validating address input for detailed lending and demographic metrics.

Action Parameters

city
string
country
string
county
string
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Batch Reverse Geocode

Description

Tool to batch reverse geocode up to 10,000 coordinates in one request. Use when you need addresses for many lat/lon pairs.

Action Parameters

coordinates
arrayRequired
fields
string
limit
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Single Reverse Geocode

Description

Tool to reverse geocode a single coordinate. Use when you need to convert one lat,lng to an address.

Action Parameters

fields
string
format
string
lat
numberRequired
limit
integer
lng
numberRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Coordinates for Batch Reverse Geocode

Description

Tool to provide a predefined set of latitude,longitude strings. Use when testing batch reverse geocoding without calling external APIs.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append School District

Description

Tool to append School District information to a geocoded address. Use after confirming address validity for K12 district boundaries.

Action Parameters

city
string
country
string
county
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Single Forward Geocode

Description

Tool to forward geocode a single address. Use when you need coordinates and metadata for one address.

Action Parameters

city
string
country
string
county
string
fields
string
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append State Legislative District

Description

Tool to append state legislative district information to a geocoded address. Use after confirming the address validity.

Action Parameters

city
string
country
string
county
string
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Append Timezone

Description

Tool to append timezone information to geocode results. Use when you need local timezone details for a given address.

Action Parameters

city
string
country
string
county
string
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: USPS ZIP+4 Append

Description

Tool to append USPS ZIP+4 information to US addresses. Use when detailed ZIP+4 data is required.

Action Parameters

city
string
country
string
county
string
format
string
limit
integer
postal_code
string
q
string
state
string
street
string
street2
string

Action Response

data
objectRequired
error
string
successful
booleanRequired