Abstract API · Arazzo Workflow

Abstract API IP Geolocation to Timezone and Holidays

Version 1.0.0

Geolocate an IP, get its local time, and list the country's public holidays.

1 workflow 3 source APIs 1 provider
View Spec View on GitHub AvatarsCompany EnrichmentContactsCurrencyEmail ValidationExchange RatesIBAN ValidationImage ProcessingIP GeolocationIP IntelligencePhone ValidationPublic HolidaysScreenshotsTimezonesVAT ValidationWeb ScrapingArazzoWorkflows

Provider

abstract-api

Workflows

ip-geolocation-to-timezone-holidays
Resolve location, local time, and holidays from a single IP address.
Geolocates an IP to coordinates and country, reads the current local time at those coordinates, and lists the public holidays for the resolved country in the requested year.
3 steps inputs: apiKey, ipAddress, year outputs: countryCode, firstHolidayName, localDatetime, timezoneName
1
geolocateIp
Geolocate the IP address to retrieve country code, coordinates, and the IANA timezone name.
2
getLocalTime
Resolve the current local time at the coordinates returned by the geolocation step.
3
getHolidays
List the public holidays for the country resolved from the IP address in the requested year.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Abstract API IP Geolocation to Timezone and Holidays
  summary: Geolocate an IP, get its local time, and list the country's public holidays.
  description: >-
    A localization flow that geolocates an IP address to coordinates, timezone,
    and country, then uses those coordinates to fetch the current local time and
    finally pulls the public holidays for the resolved country and year. This is
    the backbone of an "personalize by visitor IP" experience. Every step inlines
    the api_key query parameter and request so the flow reads and runs without
    opening the underlying OpenAPI descriptions.
  version: 1.0.0
sourceDescriptions:
- name: ipGeolocationApi
  url: ../openapi/abstract-api-ip-geolocation-api-openapi.yml
  type: openapi
- name: publicHolidaysApi
  url: ../openapi/abstract-api-public-holidays-api-openapi.yml
  type: openapi
- name: timezonesApi
  url: ../openapi/abstract-api-timezones-api-openapi.yml
  type: openapi
workflows:
- workflowId: ip-geolocation-to-timezone-holidays
  summary: Resolve location, local time, and holidays from a single IP address.
  description: >-
    Geolocates an IP to coordinates and country, reads the current local time at
    those coordinates, and lists the public holidays for the resolved country in
    the requested year.
  inputs:
    type: object
    required:
    - apiKey
    - ipAddress
    - year
    properties:
      apiKey:
        type: string
        description: Abstract API key valid for IP Geolocation, Timezones, and Public Holidays.
      ipAddress:
        type: string
        description: The IPv4 or IPv6 address to geolocate.
      year:
        type: integer
        description: The four-digit year to list public holidays for.
  steps:
  - stepId: geolocateIp
    description: >-
      Geolocate the IP address to retrieve country code, coordinates, and the
      IANA timezone name.
    operationId: getIPGeolocation
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    - name: ip_address
      in: query
      value: $inputs.ipAddress
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      countryCode: $response.body#/country_code
      latitude: $response.body#/latitude
      longitude: $response.body#/longitude
      timezoneName: $response.body#/timezone/name
  - stepId: getLocalTime
    description: >-
      Resolve the current local time at the coordinates returned by the
      geolocation step.
    operationId: getCurrentTime
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    - name: latitude
      in: query
      value: $steps.geolocateIp.outputs.latitude
    - name: longitude
      in: query
      value: $steps.geolocateIp.outputs.longitude
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      datetime: $response.body#/datetime
      gmtOffset: $response.body#/gmt_offset
      timezoneName: $response.body#/timezone_name
  - stepId: getHolidays
    description: >-
      List the public holidays for the country resolved from the IP address in
      the requested year.
    operationId: getPublicHolidays
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    - name: country
      in: query
      value: $steps.geolocateIp.outputs.countryCode
    - name: year
      in: query
      value: $inputs.year
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstHolidayName: $response.body#/0/name
  outputs:
    countryCode: $steps.geolocateIp.outputs.countryCode
    localDatetime: $steps.getLocalTime.outputs.datetime
    timezoneName: $steps.getLocalTime.outputs.timezoneName
    firstHolidayName: $steps.getHolidays.outputs.firstHolidayName

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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 workflow
curl "https://apis.io/api/v1/arazzo/abstract-api-ip-geolocation-to-timezone-holidays-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?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.