{
  "opencollection": "1.0.0",
  "info": {
    "name": "Apifreaks Api Hub For Developers Weather APIs API",
    "version": "1.0.0"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "X-apiKey",
      "value": "{{X-apiKey}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "Weather APIs",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Air pollution monitoring and quality forecasts",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/air-quality",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "startDate",
                "value": "",
                "type": "query",
                "description": "Starting date for AQI forecast data in YYYY-MM-DD format. Must be supplied together with endDate — passing only one of the two returns a 400 error. Both dates must fall within a rolling window from today through 5 days ahead."
              },
              {
                "name": "endDate",
                "value": "",
                "type": "query",
                "description": "End date for AQI forecast data in YYYY-MM-DD format. Must be supplied together with startDate — passing only one of the two returns a 400 error, and endDate cannot be earlier than startDate. Both dates must fall within a rolling window from today through 5 days ahead."
              },
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location. Must be supplied together with long — passing only one of the two returns a 400 error."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location. Must be supplied together with lat — passing only one of the two returns a 400 error."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IP(v4 or v6) address for location inference."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "Timezone for the results."
              }
            ]
          },
          "docs": "Monitor and predict air quality conditions using European and US AQI standards. Track pollutant concentrations including PM10, PM2.5, carbon monoxide, nitrogen dioxide, sulfur dioxide, ozone, and dust particles. Get current readings plus hourly forecasts up to 5 days ahead, complete with UV index and aerosol measurements for comprehensive air quality assessment."
        },
        {
          "info": {
            "name": "Real-time weather conditions for any location on demand",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/current",
            "params": [
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IP(v4 or v6) address for location inference."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "Timezone for the results."
              }
            ]
          },
          "docs": "Get current weather data including temperature, humidity, precipitation, wind conditions, atmospheric pressure, and air quality for any location. Accepts city names, coordinates, or IP addresses. Also includes astronomy data and timezone-aware timestamps."
        },
        {
          "info": {
            "name": "Get real-time weather data for multiple locations, coordinates, or IP addresses",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.apifreaks.com/v1.0/weather/current",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "Override timezone for all returned data. Defaults to each location's local timezone."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Retrieve current weather conditions for up to `50 locations` in a single request. A maximum of 50 locations (city names, IP addresses, or geographic coordinates) can be included in the request body."
        },
        {
          "info": {
            "name": "Get flood risk and river discharge forecast",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/flood",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "startDate",
                "value": "",
                "type": "query",
                "description": "Starting date for flood forecast data in YYYY-MM-DD format. Forecast dates must be current or future dates only. Past dates are not allowed for forecast data. The difference between endDate and startDate must not exceed 16 days."
              },
              {
                "name": "endDate",
                "value": "",
                "type": "query",
                "description": "End date for flood forecast data in YYYY-MM-DD format. Forecast dates must be current or future dates only. Past dates are not allowed for forecast data. The difference between endDate and startDate must not exceed 16 days."
              },
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IP(v4 or v6) address for location inference."
              },
              {
                "name": "precision",
                "value": "",
                "type": "query",
                "description": "Forecast data granularity. Only 'daily' is supported; any other value returns a 400 error."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "Timezone for the results."
              }
            ]
          },
          "docs": "Provides flood forecast data for a given location, including river discharge metrics such as mean, median, maximum, minimum, and percentile values (p25, p75). Requires a startDate and endDate, with the date range limited to 16 days. Location can be specified using city name, latitude/longitude, or IP address; if omitted entirely, the caller's IP is used."
        },
        {
          "info": {
            "name": "Retrieve historical weather conditions for a specific past date and location, coordinates, or IP address",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/historical",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "date",
                "value": "",
                "type": "query",
                "description": "Specific date for which to fetch weather data in YYYY-MM-DD format. Historical dates must be past dates only. Current or future dates are not allowed for historical data. Data available from 1940 onwards."
              },
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address to look up historical weather for. Ignored when lat/long is provided."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location. Takes precedence over location and ip when more than one location parameter is supplied."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location. Must be provided together with lat."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IPv4 or IPv6 address for location inference. Ignored when location or lat/long is provided; if none of location, lat/long, or ip is supplied, the requesting client's IP address is used instead."
              },
              {
                "name": "precision",
                "value": "",
                "type": "query",
                "description": "Precision of the returned historical data. Possible values: daily (aggregated daily figures), hourly (24 hourly readings for the date). Default: daily."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "IANA timezone to render the astronomy time fields in, instead of the resolved location's own timezone. When set, sunrise/sunset/moonrise-type fields include the date (YYYY-MM-DD HH:MM) instead of only HH:MM."
              }
            ]
          },
          "docs": "Return daily aggregate or hourly weather readings plus astronomy data for a single past date going back to 1940, resolved by city/address, GPS coordinates, or IP address."
        },
        {
          "info": {
            "name": "Dive into detailed marine weather forecasts for coastal and offshore locations",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/marine",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "startDate",
                "value": "",
                "type": "query",
                "description": "Starting date for marine forecast data in YYYY-MM-DD format. Must be today or a future date, and must be supplied together with endDate — providing only one of the two returns a 400 error. The difference between endDate and startDate must not exceed 16 days."
              },
              {
                "name": "endDate",
                "value": "",
                "type": "query",
                "description": "End date for marine forecast data in YYYY-MM-DD format. Must be today or a future date, and must be supplied together with startDate — providing only one of the two returns a 400 error. The difference between endDate and startDate must not exceed 16 days."
              },
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IPv4, IPv6, or hostname for location inference. Defaults to the caller's IP address when location, lat/long, and ip are all omitted."
              },
              {
                "name": "precision",
                "value": "",
                "type": "query",
                "description": "Precision of the marine forecast data. Only one of daily, hourly, or minutely is returned per request, matching this value. Default is daily."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "IANA timezone identifier used to localize the results (e.g. America/New_York). Returns a 400 error if not a recognized timezone."
              }
            ]
          },
          "docs": "Provides current or forecast marine conditions including wave height, wave direction, wave period, swell info, sea surface temperature, sea level height, and ocean currents. Accepts a location by GPS coordinates, city name/address, or IP address, and returns forecast data at daily, hourly, or minutely precision for up to 16 days ahead."
        },
        {
          "info": {
            "name": "Get historical weather data across a date range",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/time-series",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "startDate",
                "value": "",
                "type": "query",
                "description": "Starting date for the data in YYYY-MM-DD format. Historical dates must be past dates only. Current or future dates are not allowed for historical data. Data available from 1940 onwards. For precision=daily, the difference between endDate and startDate must not exceed 90 days. For precision=hourly, the difference must not exceed 7 days."
              },
              {
                "name": "endDate",
                "value": "",
                "type": "query",
                "description": "End date for the data in YYYY-MM-DD format. Historical dates must be past dates only. Current or future dates are not allowed for historical data. Data available from 1940 onwards. For precision=daily, the difference between endDate and startDate must not exceed 90 days. For precision=hourly, the difference must not exceed 7 days."
              },
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location, used together with long. A value of exactly 0 is treated as missing by the live API and returns a 400, so use a small non-zero value (e.g. 0.0001) for equator queries."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location, used together with lat. A value of exactly 0 is treated as missing by the live API and returns a 400, so use a small non-zero value (e.g. 0.0001) for prime-meridian queries."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IP(v4 or v6) address for location inference."
              },
              {
                "name": "precision",
                "value": "",
                "type": "query",
                "description": "Precision of the data. daily returns a daily aggregate per date; hourly returns 24 hourly readings per date instead and requires the date range to be 7 days or less."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "Timezone for the results."
              }
            ]
          },
          "docs": "Pull historical weather information for date ranges up to 90 days (daily data) or 7 days (hourly data). Get consistent formatting across your specified date range with reliable historical weather patterns."
        },
        {
          "info": {
            "name": "Retrieve daily, hourly, or minutely weather forecasts for up to 16 days ahead",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.apifreaks.com/v1.0/weather/forecast",
            "params": [
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Format of the response. Possible values: json."
              },
              {
                "name": "location",
                "value": "",
                "type": "query",
                "description": "City name, place name, or full address to resolve to coordinates. Ignored when lat/long are also provided, since coordinates take priority."
              },
              {
                "name": "lat",
                "value": "",
                "type": "query",
                "description": "Latitude of the location. Must be supplied together with long or the request fails with a 400. Takes priority over location and ip when combined with them."
              },
              {
                "name": "long",
                "value": "",
                "type": "query",
                "description": "Longitude of the location. Must be supplied together with lat or the request fails with a 400."
              },
              {
                "name": "ip",
                "value": "",
                "type": "query",
                "description": "IPv4 or IPv6 address to infer location from. Used only when lat/long and location are not provided; if the whole parameter is omitted, the requester's own IP is used instead. Private/reserved IPs do not error — they return placeholder location fields (e.g. country_name \"ZZ\")."
              },
              {
                "name": "startDate",
                "value": "",
                "type": "query",
                "description": "Start date for the forecast in YYYY-MM-DD format. Must be supplied together with endDate — passing only one returns a 400. Forecast dates must be today or later, and the range between startDate and endDate must not exceed 16 days from today."
              },
              {
                "name": "endDate",
                "value": "",
                "type": "query",
                "description": "End date for the forecast in YYYY-MM-DD format. Must be supplied together with startDate — passing only one returns a 400. Forecast dates must be today or later, and the range between startDate and endDate must not exceed 16 days from today."
              },
              {
                "name": "forecastDays",
                "value": "",
                "type": "query",
                "description": "Number of days to forecast starting today, from 1 to 16. Default is 7. Not used together with startDate/endDate."
              },
              {
                "name": "precision",
                "value": "",
                "type": "query",
                "description": "Forecast granularity. Possible values: daily (default), hourly, minutely. Only one of the corresponding daily/hourly/minutely blocks is returned per day — astronomy data is always included regardless of precision. An unsupported value returns a 400."
              },
              {
                "name": "timezone",
                "value": "",
                "type": "query",
                "description": "IANA timezone identifier to convert forecast and astronomy times into (e.g. America/New_York). Defaults to the resolved location's local timezone. An invalid value returns a 400."
              }
            ]
          },
          "docs": "Returns forecast data for a location resolved from GPS coordinates, a place name/address, or an IP address, plus astronomy data for each requested day. Configure the date range with `forecastDays` or `startDate`/`endDate`, and choose forecast granularity with `precision`."
        }
      ]
    }
  ],
  "bundled": true
}