Anrok Address resolution API

The Anrok Address Resolution endpoint resolves a customer address to its normalized form, suitable for sales tax calculations, as well as taxable jurisdiction(s). It uses the same address resolution that tax calculation relies on, so a successful response means the address would process on an invoice. For addresses in the United States and Canada, Anrok returns the full resolved address. For all other countries, only the country is returned. **Resolving international addresses to street-level is a premium feature. Please contact hello@anrok.com for more information to enable this on your seller account.**

Operations 1

POST /v1/seller/address/resolve Resolve an address #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/anrok:anrok-address-resolution-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

anrok-address-resolution-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Anrok Address resolution API
  version: '1.1'
  termsOfService: https://www.anrok.com/privacy-terms
  contact:
    email: support@anrok.com
  license:
    name: All rights reserved
    url: https://www.anrok.com
  x-logo:
    url: https://global-uploads.webflow.com/632add85afcd1ac30aa74675/6357842d130e1f3e0e23d1fe_anrok_logo.svg
  description: '# API reference


    The Anrok API server is accessible at `https://api.anrok.com`.


    All requests are HTTP POSTs with JSON in the body.


    Authentication is via an HTTP header `Authorization: Bearer {apiKey}`.


    The default rate limit for a seller account is 10 API requests per second.'
servers:
- url: https://api.anrok.com
security:
- http: []
tags:
- name: Address resolution
  description: 'The Anrok Address Resolution endpoint resolves a customer address to its normalized form, suitable for sales tax calculations, as well as taxable

    jurisdiction(s). It uses the same address resolution that tax calculation relies on, so a

    successful response means the address would process on an invoice.


    For addresses in the United States and Canada, Anrok returns the full resolved address. For all other countries, only the country is returned.


    **Resolving international addresses to street-level is a premium feature. Please contact hello@anrok.com for more information to enable this on your seller account.**'
paths:
  /v1/seller/address/resolve:
    post:
      tags:
      - Address resolution
      summary: Resolve an address
      description: Resolve a customer address to its normalized form for sales tax calculation, and compute its taxable jurisdiction(s). The address fields are provided at the top level of the request body. This endpoint uses the same address resolution that tax calculation relies on, so a successful response means the address would process on an invoice. Resolving international addresses to street-level is a premium feature. Please contact hello@anrok.com for more information to enable this on your seller account.
      operationId: addressResolve
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomerAddress'
            examples:
              usAddress:
                summary: US address
                value:
                  country: US
                  line1: 100 Fake St
                  city: San Francisco
                  region: CA
                  postalCode: '94111'
              nonUsAddress:
                summary: Address outside the US and Canada
                value:
                  country: France
                  line1: 55 Rue du Faubourg Saint-Honoré
                  city: Paris
                  postalCode: '75008'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResolveAddressSuccess'
              examples:
                usAddress:
                  summary: Full address returned for US/Canada
                  value:
                    resolvedAddress:
                      country: United States
                      line1: 100 Fake St
                      city: San Francisco
                      region: CA
                      postalCode: '94111'
                    jurisdictions:
                    - id: us-CA
                      name: California
                nonUsAddress:
                  summary: Country-only resolution outside the US and Canada
                  value:
                    resolvedAddress:
                      country: France
                      line1: null
                      city: null
                      region: null
                      postalCode: null
                    jurisdictions:
                    - id: eu-oss
                      name: EU OSS
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: string
              examples:
                unrecognizedField:
                  value: 'Request body: Unrecognized key(s) in object: ''line2'''
                  summary: An unrecognized property was provided
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                    - addressCouldNotResolve
                    - jurisNotFound
                    - externalServiceError
                  message:
                    description: A human-readable description, present for addressCouldNotResolve and jurisNotFound.
                    type: string
                required:
                - type
              examples:
                addressCouldNotResolve:
                  summary: The address could not be resolved to a taxable jurisdiction
                  value:
                    type: addressCouldNotResolve
                jurisNotFound:
                  summary: The address resolved but no matching jurisdiction was found
                  value:
                    type: jurisNotFound
                    message: No jurisdiction found for the resolved address.
                externalServiceError:
                  summary: An upstream address resolution service error occurred
                  value:
                    type: externalServiceError
        '429':
          $ref: '#/components/responses/RateLimit'
      x-codeSamples:
      - lang: cURL
        source: "apiToken='sxxx/saxxx/secret.xxx'\n\ncurl -X POST https://api.anrok.com/v1/seller/address/resolve \\\n  -H 'Content-Type: application/json' \\\n  -H \"Authorization: Bearer $apiToken\" \\\n  -d '{\n    \"country\": \"US\",\n    \"line1\": \"100 Fake St\",\n    \"city\": \"San Francisco\",\n    \"region\": \"CA\",\n    \"postalCode\": \"94111\"\n  }'\n"
components:
  schemas:
    CustomerAddress:
      type: object
      title: Address
      properties:
        country:
          description: The country's full name or 2-letter ISO code
          type:
          - string
          - 'null'
          examples:
          - UK
          - United Kingdom
        line1:
          description: The "delivery line" of the address
          type:
          - string
          - 'null'
        city:
          description: City or town name
          type:
          - string
          - 'null'
        region:
          description: Other principal subdivision (i.e. province, state, county)
          type:
          - string
          - 'null'
        postalCode:
          description: Postal code
          type:
          - string
          - 'null'
      required: []
      examples:
      - country: ENGLAND
        line1: 2045 ROYAL ROAD
        city: LONDON
        postalCode: WIP 6HQ
      - country: AU
        line1: 71 Gaggin Street
        city: Heddon Greta
        region: New South Wales
        postalCode: '2321'
    ResolveAddressSuccess:
      type: object
      properties:
        resolvedAddress:
          description: The resolved customer address. For addresses in the United States and Canada the full address is returned; for all other countries only the country is populated.
          $ref: '#/components/schemas/CustomerAddress'
        jurisdictions:
          description: The taxable jurisdiction(s) the address resolves to.
          type: array
          items:
            type: object
            properties:
              id:
                description: The jurisdiction's unique identifier.
                type: string
              name:
                description: A user-friendly name for the jurisdiction.
                type: string
            required:
            - id
            - name
      required:
      - resolvedAddress
      - jurisdictions
  responses:
    RateLimit:
      description: Too Many Requests
      headers:
        Retry-After:
          description: Number of seconds to wait for rate limit to reset.
          schema:
            type: integer
      content:
        text/plain:
          schema:
            type: string
          example: You've exceeded your API limit of 10 per second
  securitySchemes:
    http:
      type: http
      description: 'The Anrok API uses API keys to authenticate requests. You can view and manage your API keys in [Anrok](https://app.anrok.com/-/api-keys). Use an Authorization header in the format `Bearer {apiKey}` to authenticate Anrok API requests.

        '
      scheme: Bearer
externalDocs:
  description: API Tutorials
  url: https://apidocs.anrok.com/tutorials
x-provenance:
  method: harvested
  publisher: Anrok
  source: https://apidocs.anrok.com/openapi.yaml
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)