{"note":"OpenAPI conversion -- returning structured metadata","name":"weatherbit-io","description":"Weatherbit - Interactive Swagger UI Documentation","version":"2.0.0","base_url":"https://api.weatherbit.io/v2.0","endpoints":18,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Weatherbit - Interactive Swagger UI Documentation\n@base https://api.weatherbit.io/v2.0\n@version 2.0.0\n@auth ApiKey key in query\n@common_fields {key: any # Your registered API key., lat: any # Latitude component of location., lon: any # Longitude component of location.}\n@endpoints 18\n@toc alerts(1), current(3), history(7), forecast(6), normals(1)\n\n@group alerts\n@endpoint GET /alerts\n@desc Returns severe weather alerts issued by meteorological agencies - Given a lat/lon.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID.}\n@returns(200) Weather Alert Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group current\n@endpoint GET /current\n@desc Returns a Current Observation - Given a lat/lon.\n@optional {include: any # Include 1 hour - minutely precip forecast in the response, or severe weather alerts, city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., stations: any # Comma separated list of Station Call ID's. Example: KRDU,KBFI,KVNY, points: any # Comma separated list of points. Example: (35.5, -75.5),(45, 65),(45.12, -130.5), cities: any # Comma separated list of City ID's. Example: 4487042, 4494942, 4504871, units: any # Convert to units. Default Metric See units field description, lang: any # Language (Default: English) See language field description}\n@returns(200) An Observation Group object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group history\n@endpoint GET /history/lightning\n@desc Returns lightning data by lat/lon from a given date.\n@required {date: any # Date to retrieve data for. (YYYY-MM-DD)}\n@optional {limit: any # Limit result lightning. (Default 1500, Max 2500), skip: any # Number of results to skip in response. (Offset), search_distance_km: any # Radial search distance from point in KM. (Default 20 KM - Max 75 KM), sort: any # Sort results by either most recent occurrence, or least distance from point. (Default distance), output_type: any # Data type of reponse JSON or GeoJSON. Default JSON., tz: any # Assumed timezone option to use for date parameter. Default is local.}\n@returns(200) Lightning data.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group current\n@endpoint GET /current/lightning\n@desc Returns nearest and most recent lightning observations - Given a lat/lon.\n@optional {limit: any # Limit result lightning. (Default 20), skip: any # Number of results to skip in response. (Offset), search_distance_km: any # Radial search distance from point in KM. (Default 20 KM - Max 75 KM), search_mins: any # Search time backwards from current time in minutes. (Default 30 minutes - Max 45 minutes), sort: any # Sort results by either most recent occurrence, or least distance from point. (Default distance), output_type: any # Data type of reponse JSON or GeoJSON. Default JSON.}\n@returns(200) Lightning data.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group forecast\n@endpoint GET /forecast/daily\n@desc Returns a daily forecast - Given Lat/Lon.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., days: any # Number of days to return. Default 16., units: any # Convert to units. Default Metric See units field description, lang: any # Language (Default: English) See language field description}\n@returns(200) A forecast object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endpoint GET /forecast/minutely\n@desc Returns a 60 minute precipitation forecast - Given Lat/Lon.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., units: any # Convert to units. Default Metric See units field description}\n@returns(200) A forecast object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endpoint GET /forecast/airquality\n@desc Returns 72 hour (hourly) Air Quality forecast - Given a geolocation.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., hours: any # Number of hours to return.}\n@returns(200) A forecast object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group history\n@endpoint GET /history/airquality\n@desc Returns 72 hours of historical air quality conditions - Given a geolocation.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code.}\n@returns(200) Historical air quality conditions\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group current\n@endpoint GET /current/airquality\n@desc Returns current air quality conditions - Given a geolocation.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code.}\n@returns(200) Current air quality conditions\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group forecast\n@endpoint GET /forecast/hourly\n@desc Returns an hourly forecast - Given a lat/lon.\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., units: any # Convert to units. Default Metric See units field description, lang: any # Language (Default: English) See language field description, hours: any # Number of hours to return.}\n@returns(200) A forecast object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endpoint GET /forecast/agweather\n@desc Returns Agweather Forecast - Given a lat/lon.\n@required {start_date: any # Start Date (YYYY-MM-DD or YYYY-MM-DD:HH)., end_date: any # End Date (YYYY-MM-DD or YYYY-MM-DD:HH).}\n@optional {units: any # Convert to units. Default Metric See units field description}\n@returns(200) An AGWeather Forecast Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group history\n@endpoint GET /history/agweather\n@desc Returns Historical Agweather - Given a lat/lon.\n@required {start_date: any # Start Date (YYYY-MM-DD or YYYY-MM-DD:HH)., end_date: any # End Date (YYYY-MM-DD or YYYY-MM-DD:HH)., tp: any # Time period of calculation (daily [DEFAULT], or hourly).}\n@optional {units: any # Convert to units. Default Metric See units field description}\n@returns(200) An AGWeather Historical Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group normals\n@endpoint GET /normals\n@desc Returns Historical Climate Normals (Averages) - Given a lat/lon.\n@required {start_day: any # Start Day (MM-DD)., end_day: any # End Day (MM-DD)., tp: any # Time period of calculation (daily, monthly, or hourly)., series_year: any # Series year for calculation. 2020 for 1991-2020. 2010 for 1981-2010.}\n@optional {units: any # Convert to units. Default Metric See units field description}\n@returns(200) An Normals Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group history\n@endpoint GET /history/daily\n@desc Returns Historical Observations - Given a lat/lon.\n@required {start_date: any # Start Date (YYYY-MM-DD or YYYY-MM-DD:HH)., end_date: any # End Date (YYYY-MM-DD or YYYY-MM-DD:HH).}\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., units: any # Convert to units. Default Metric See units field description, lang: any # Language (Default: English) See language field description}\n@returns(200) An Historical Day Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endpoint GET /history/hourly\n@desc Returns Historical Observations - Given a lat/lon.\n@required {start_date: any # Start Date (YYYY-MM-DD or YYYY-MM-DD:HH)., end_date: any # End Date (YYYY-MM-DD or YYYY-MM-DD:HH).}\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., units: any # Convert to units. Default Metric See units field description, lang: any # Language (Default: English) See language field description, tz: any # Assume utc (default) or local time for start_date, end_date}\n@returns(200) An Historical Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endpoint GET /history/subhourly\n@desc Returns Historical Observations - Given a lat/lon.\n@required {start_date: any # Start Date (YYYY-MM-DD or YYYY-MM-DD:HH)., end_date: any # End Date (YYYY-MM-DD or YYYY-MM-DD:HH).}\n@optional {city_id: any # City ID. Example: 4487042, city: any # City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR, postal_code: any # Postal Code. Example: 28546, country: any # Country Code (2 letter) - to be used with postal_code., station: any # Station Call ID., units: any # Convert to units. Default Metric See units field description, lang: any # Language (Default: English) See language field description, tz: any # Assume utc (default) or local time for start_date, end_date}\n@returns(200) An Historical Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group forecast\n@endpoint GET /forecast/energy\n@desc Returns Energy Forecast API response  - Given a single lat/lon.\n@optional {threshold: any # Temperature threshold to use to calculate degree days (default 18 C), units: any # Convert to units. Default Metric See units field description, tp: any # Time period (default: daily)}\n@returns(200) An Energy Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@group history\n@endpoint GET /history/energy\n@desc Returns Energy API response  - Given a single lat/lon.\n@required {start_date: any # Start Date (YYYY-MM-DD or YYYY-MM-DD:HH)., end_date: any # End Date (YYYY-MM-DD or YYYY-MM-DD:HH).}\n@optional {tp: any # Time period to aggregate by (daily, monthly), threshold: any # Temperature threshold to use to calculate degree days (default 18 C), units: any # Convert to units. Default Metric See units field description}\n@returns(200) An Energy Data Object.\n@returns(204) No Data Found\n@errors {400: Client Error, 403: Unauthorized/No Access for current plan level, 429: Daily or Velocity limit exceeded, 500: Internal Server Error}\n\n@endgroup\n\n@end\n"}