Esri Geocoding API
The Geocoding API from Esri — 4 operation(s) for geocoding.
Operations 6
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
The Geocoding API from Esri — 4 operation(s) for geocoding.
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/esri:esri-geocoding-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Esri Geocoding API
version: 1.0.0
description: 'Operations tagged Geocoding across 2 of this provider''s published API definitions: esri-openapi.yml, esri-geocoding-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted geocoding base URL
- url: https://route-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted routing base URL
- url: https://www.arcgis.com
description: ArcGIS Online / OAuth base URL
- url: https://www.arcgis.com/sharing/rest
description: ArcGIS Online production
- url: https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer
description: ArcGIS Geocoding Service
- url: https://route.arcgis.com/arcgis/rest/services
description: ArcGIS Routing Service
- url: https://places-api.arcgis.com/arcgis/rest/services/v1
description: ArcGIS Places Service
tags:
- name: Geocoding
paths:
/World/GeocodeServer/findAddressCandidates:
get:
tags:
- Geocoding
summary: Find candidate address matches
operationId: findAddressCandidates
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
parameters:
- in: query
name: SingleLine
schema:
type: string
- in: query
name: address
schema:
type: string
- in: query
name: city
schema:
type: string
- in: query
name: region
schema:
type: string
- in: query
name: postal
schema:
type: string
- in: query
name: countryCode
schema:
type: string
- in: query
name: outFields
schema:
type: string
example: '*'
- in: query
name: maxLocations
schema:
type: integer
default: 1
maximum: 50
- in: query
name: f
required: true
schema:
type: string
enum:
- json
- pjson
- html
default: json
- in: query
name: token
schema:
type: string
responses:
'200':
description: Candidate matches
content:
application/json:
schema:
type: object
properties:
candidates:
type: array
items:
$ref: '#/components/schemas/Candidate'
security:
- apiKeyAuth: []
- oauth2: []
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted geocoding base URL
- url: https://route-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted routing base URL
- url: https://www.arcgis.com
description: ArcGIS Online / OAuth base URL
/World/GeocodeServer/geocodeAddresses:
post:
tags:
- Geocoding
summary: Batch geocode addresses
operationId: geocodeAddresses
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
required:
- addresses
- f
properties:
addresses:
type: string
description: JSON string containing the batch payload
f:
type: string
enum:
- json
- pjson
token:
type: string
outSR:
type: string
responses:
'200':
description: Batch geocoding results
security:
- apiKeyAuth: []
- oauth2: []
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted geocoding base URL
- url: https://route-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted routing base URL
- url: https://www.arcgis.com
description: ArcGIS Online / OAuth base URL
/World/GeocodeServer/reverseGeocode:
get:
tags:
- Geocoding
summary: Reverse geocode a coordinate to an address
operationId: reverseGeocode
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
parameters:
- in: query
name: location
required: true
description: x,y coordinate or JSON point.
schema:
type: string
example: -117.196,34.056
- in: query
name: outSR
schema:
type: string
- in: query
name: featureTypes
schema:
type: string
- in: query
name: locationType
schema:
type: string
enum:
- rooftop
- street
- in: query
name: f
required: true
schema:
type: string
enum:
- json
- pjson
- in: query
name: token
schema:
type: string
responses:
'200':
description: Address record for the coordinate
security:
- apiKeyAuth: []
- oauth2: []
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted geocoding base URL
- url: https://route-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted routing base URL
- url: https://www.arcgis.com
description: ArcGIS Online / OAuth base URL
/World/GeocodeServer/suggest:
get:
tags:
- Geocoding
summary: Autocomplete suggestions for an address query
operationId: suggestAddresses
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
parameters:
- in: query
name: text
required: true
schema:
type: string
- in: query
name: location
schema:
type: string
- in: query
name: maxSuggestions
schema:
type: integer
default: 5
- in: query
name: countryCode
schema:
type: string
- in: query
name: f
required: true
schema:
type: string
enum:
- json
- pjson
- in: query
name: token
schema:
type: string
responses:
'200':
description: Suggestion list
content:
application/json:
schema:
type: object
properties:
suggestions:
type: array
items:
type: object
properties:
text:
type: string
magicKey:
type: string
isCollection:
type: boolean
security:
- apiKeyAuth: []
- oauth2: []
servers:
- url: https://geocode-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted geocoding base URL
- url: https://route-api.arcgis.com/arcgis/rest/services
description: ArcGIS hosted routing base URL
- url: https://www.arcgis.com
description: ArcGIS Online / OAuth base URL
/findAddressCandidates:
servers:
- url: https://www.arcgis.com/sharing/rest
description: ArcGIS Online production
- url: https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer
description: ArcGIS Geocoding Service
- url: https://route.arcgis.com/arcgis/rest/services
description: ArcGIS Routing Service
- url: https://places-api.arcgis.com/arcgis/rest/services/v1
description: ArcGIS Places Service
get:
operationId: getFindAddressCandidates
summary: Geocode an address
description: Converts address text into geographic coordinates (forward geocoding). Returns a list of address candidates with location coordinates and match scores.
tags:
- Geocoding
servers:
- url: https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer
parameters:
- name: SingleLine
in: query
schema:
type: string
description: Single-line address string (e.g., "380 New York St, Redlands, CA 92373")
- name: Address
in: query
schema:
type: string
description: Street address component
- name: City
in: query
schema:
type: string
- name: Region
in: query
schema:
type: string
description: State or province
- name: Postal
in: query
schema:
type: string
- name: CountryCode
in: query
schema:
type: string
description: ISO 3166-1 alpha-2 or alpha-3 country code
- name: maxLocations
in: query
schema:
type: integer
default: 1
maximum: 50
- name: outFields
in: query
schema:
type: string
description: Comma-separated list of output fields (* for all)
- name: outSR
in: query
schema:
type: integer
default: 4326
description: Output spatial reference WKID
- name: token
in: query
schema:
type: string
- name: f
in: query
schema:
type: string
enum:
- json
- pjson
default: json
responses:
'200':
description: Address candidates returned
content:
application/json:
schema:
$ref: '#/components/schemas/GeocodeResponse'
security:
- ApiKeyAuth: []
- OAuth2:
- openid
x-operation-id-source: normalized
x-operation-id-original: findAddressCandidates
/reverseGeocode:
servers:
- url: https://www.arcgis.com/sharing/rest
description: ArcGIS Online production
- url: https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer
description: ArcGIS Geocoding Service
- url: https://route.arcgis.com/arcgis/rest/services
description: ArcGIS Routing Service
- url: https://places-api.arcgis.com/arcgis/rest/services/v1
description: ArcGIS Places Service
get:
operationId: getReverseGeocode
summary: Reverse geocode coordinates
description: Converts geographic coordinates to a readable address (reverse geocoding).
tags:
- Geocoding
servers:
- url: https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer
parameters:
- name: location
in: query
required: true
schema:
type: string
description: Point location as JSON (e.g., {"x":-117.2,"y":34.06,"spatialReference":{"wkid":4326}})
- name: distance
in: query
schema:
type: number
description: Distance in meters to search from the input location
- name: outSR
in: query
schema:
type: integer
default: 4326
- name: token
in: query
schema:
type: string
- name: f
in: query
schema:
type: string
enum:
- json
- pjson
default: json
responses:
'200':
description: Reverse geocode result returned
content:
application/json:
schema:
$ref: '#/components/schemas/ReverseGeocodeResponse'
security:
- ApiKeyAuth: []
- OAuth2:
- openid
x-operation-id-source: normalized
x-operation-id-original: reverseGeocode
components:
schemas:
Candidate:
type: object
properties:
address:
type: string
score:
type: number
location:
type: object
properties:
x:
type: number
y:
type: number
attributes:
type: object
additionalProperties: true
extent:
type: object
properties:
xmin:
type: number
ymin:
type: number
xmax:
type: number
ymax:
type: number
Point:
type: object
properties:
x:
type: number
description: Longitude
y:
type: number
description: Latitude
spatialReference:
$ref: '#/components/schemas/SpatialReference'
SpatialReference:
type: object
properties:
wkid:
type: integer
description: Well-known ID for the spatial reference (e.g., 4326 for WGS84)
latestWkid:
type: integer
GeocodeResponse:
type: object
properties:
spatialReference:
$ref: '#/components/schemas/SpatialReference'
candidates:
type: array
items:
$ref: '#/components/schemas/GeocodeCandidate'
ReverseGeocodeResponse:
type: object
properties:
address:
type: object
properties:
Match_addr:
type: string
LongLabel:
type: string
ShortLabel:
type: string
Addr_type:
type: string
AddNum:
type: string
Address:
type: string
City:
type: string
Region:
type: string
RegionAbbr:
type: string
Postal:
type: string
CountryCode:
type: string
location:
$ref: '#/components/schemas/Point'
GeocodeCandidate:
type: object
properties:
address:
type: string
location:
$ref: '#/components/schemas/Point'
score:
type: number
description: Match quality score (0-100)
attributes:
type: object
additionalProperties: true
securitySchemes:
apiKeyAuth:
type: apiKey
in: query
name: token
description: 'ArcGIS Platform API key or access token passed as the `token` query parameter (or `Authorization: Bearer <token>` header on REST services).'
oauth2:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://www.arcgis.com/sharing/rest/oauth2/token
scopes: {}
authorizationCode:
authorizationUrl: https://www.arcgis.com/sharing/rest/oauth2/authorize
tokenUrl: https://www.arcgis.com/sharing/rest/oauth2/token
scopes: {}
ApiKeyAuth:
type: apiKey
in: query
name: token
description: ArcGIS API key or token
OAuth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://www.arcgis.com/sharing/rest/oauth2/authorize
tokenUrl: https://www.arcgis.com/sharing/rest/oauth2/token
scopes:
openid: OpenID Connect identity
urn:arcgis:scope:root: Full access to ArcGIS Online
externalDocs:
description: ArcGIS REST API Reference
url: https://developers.arcgis.com/rest/
x-refined-from:
- esri-openapi.yml
- esri-geocoding-api-openapi.yml