CINXE.COM
Weather API for Developers and IoT | weatherUSA
<!DOCTYPE html> <!--[if lt IE 7]><html class="ie ie6 ltie8"><![endif]--> <!--[if IE 7]><html class="ie ltie8" xmlns:fb="http://ogp.me/ns/fb#"><![endif]--> <!--[if IE 8]><html class="ie ie8" xmlns:fb="http://ogp.me/ns/fb#"><![endif]--> <!--[if gt IE 8]><!--><html xmlns:fb="http://ogp.me/ns/fb#"><!--<![endif]--> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title>Weather API for Developers and IoT | weatherUSA</title> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" /> <link rel="manifest" href="/site.webmanifest" /> <meta name="theme-color" content="#255598" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha256-bZLfwXAP04zRMK2BjiO8iu9pf4FbLqX6zitd+tIvLhE=" crossorigin="anonymous" /> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css"> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/v4-shims.css"> <link rel="stylesheet" href="https://mozilla.github.io/Fira/fira.css" type="text/css" /> <link rel="stylesheet" href="/assets/css/default.css?1593900049" type="text/css" /> <script src="/assets/js/mootools-core-1.6.0-nc.min.js" type="text/javascript"></script> <script src="/assets/js/mootools-more-1.6.0-4d2ae48c.min.js" type="text/javascript"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script> <script>$.noConflict();</script> <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha256-nuL8/2cJ5NDSSwnKD8VqreErSWHtnEP9E7AySL+1ev4=" crossorigin="anonymous"></script> <script src="/assets/js/default.js?1550268330" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ var fav_place_ids = [975772,423587,1662328]; var fav_place_aliases = {"975772":"New York, NY","423587":"Chicago, IL","1662328":"Los Angeles, CA"}; var fav_customized = false; window.addEvent('domready', function() { favoritesBarApiRequest.send({'method': 'get', 'data': {'type': 'favoriteobs', 'place_id': fav_place_ids}}); }); //]]> </script> <!-- Start extra head data --> <!-- End extra head data --> </head> <body> <p class="nodisplay"><a href="#content-start">Skip to content</a></p> <div id="layer_pretty" class="default_tpl"> <div id="page"> <div id="header" class="page_width row"> <div id="button_open_nav_menu" class="col-xs-2 visible-xs-inline-block visible-sm-inline-block"><i class="fa fa-fw fa-navicon"></i><span>Menu</span></div> <div id="header_logo_wrap" class="col-xs-8 col-md-4"><a id="header_logo" href="/">weatherUSA</a></div> <div id="button_open_search" class="col-xs-2 visible-xs-inline-block visible-sm-inline-block"><i class="fa fa-fw fa-search"></i></div> <nav id="layer_menu" class="col-md-8 visible-md-block visible-lg-block"><ul id="mainmenu"> <li><a href="/forecasts">Current Weather</a> <ul> <li><a href="/forecasts">Forecast & Report</a></li> <li><a title="View live weather, local conditions, and alerts fullscreen" href="/weathernet/live/">WeatherNet Live Map</a></li> <li><a href="/weathernet/live/?layers=radar">National Radar</a></li> <li><a href="/skycamnet">Weather Cameras</a></li> </ul> </li> <li><a href="#">Severe Weather</a> <ul> <li><a href="/wxwarnings">Watches & Warnings</a></li> <li><a href="/winter">Winter Center</a></li> <li><a href="/tropical">Tropical Center</a></li> <!-- <li><a href="/lightningnet/" title="Live lightning maps and data; lightning strike locations and counts">Lightning Maps</a></li>--> <li><a href="/radio">Weather Radio</a></li> </ul> </li> <li><a href="#">Services</a> <ul> <li><a href="/alerts/">Weather Alerts</a></li> <li><a href="/services">Business Services</a></li> <li><a href="/services/weather-api">Weather Data API</a></li> <li><a href="/services/mobile">Mobile Apps</a></li> <li><a href="/wxonyoursite/">Webmaster Tools</a></li> </ul> </li> <li><a href="/faq/">More...</a> <ul> <li><a href="/weathernet/oh-columbus/">Columbus Ohio Live Weather</a></li> <!-- <li><a href="/advertise/">Advertise With Us</a></li>--> <!-- <li><a href="/faq/">FAQs</a></li>--> <li><a href="/search.php">Search</a></li> <!-- <li><a href="/network/">System Status</a></li>--> <li><a href="/contact/">Contact Us</a></li> </ul> </li> <li style="float: right;"><a id="menu_account_icon"><i class="fa fa-sign-in fa-lg fa-inverse"></i> Log in/Sign up</a> <ul id="menu_account_list"> <li><a rel="nofollow" href="/members/login?return=%2Fservices%2Fweather-api">Log in</a></li> <li><a rel="nofollow" href="/members/new?return=%2Fservices%2Fweather-api">Create an account</a></li> </ul> </li> </ul></nav> <nav id="layer_menu_mobile"><ul> <li><a href="/forecasts">Current Weather</a> <ul> <li><a href="/forecasts">Forecast & Report</a></li> <li><a title="View live weather, local conditions, and alerts fullscreen" href="/weathernet/live/">WeatherNet Live Map</a></li> <li><a href="/weathernet/live/?layers=radar">National Radar</a></li> <li><a href="/skycamnet">Weather Cameras</a></li> </ul> </li> <li><a href="#">Severe Weather</a> <ul> <li><a href="/wxwarnings">Watches & Warnings</a></li> <li><a href="/winter">Winter Center</a></li> <li><a href="/tropical">Tropical Center</a></li> <!-- <li><a href="/lightningnet/" title="Live lightning maps and data; lightning strike locations and counts">Lightning Maps</a></li>--> <li><a href="/radio">Weather Radio</a></li> </ul> </li> <li><a href="#">Services</a> <ul> <li><a href="/alerts/">Weather Alerts</a></li> <li><a href="/services">Business Services</a></li> <li><a href="/services/weather-api">Weather Data API</a></li> <li><a href="/services/mobile">Mobile Apps</a></li> <li><a href="/wxonyoursite/">Webmaster Tools</a></li> </ul> </li> <li><a href="/faq/">Contact & More...</a> <ul> <li><a href="/weathernet/oh-columbus/">Columbus Ohio Live Weather</a></li> <li><a href="/search.php">Search</a></li> <li><a href="/contact/">Contact Us</a></li> </ul> </li> <li><a id="menu_account_icon_mobile"><i class="fa fa-sign-in fa-lg fa-inverse"></i> Log in/Sign up</a> <ul> <li><a rel="nofollow" href="/members/login?return=%2Fservices%2Fweather-api">Log in</a></li> <li><a rel="nofollow" href="/members/new?return=%2Fservices%2Fweather-api">Create an account</a></li> </ul> </li> </ul> </nav> <div id="layer_search_mobile"> <form id="form_place_search_mobile" action="/forecasts" method="get"> <div class="input"> <input type="text" name="q" size="25" autocomplete="off" placeholder="Enter city, ZIP, location..." required /> </div> <button type="submit" name="submit" class="btn color_white"> <i class="fa fa-search" title="Search"></i> </button> </form> </div> </div> <div id="layer_ticker" class="clearfix page_width block_justify"> <div class="layer_ticker_row ticker_row_1"> <div class="layer_ticker_select">Favorites</div> <div class="ticker_msg" id="layer_favorites"> <!--<div class="loc"><a class="btn btn-primary btn-sm" href="/forecasts?gps=1"><i class="fa fa-plus fa-lg"></i> Add My Location</a></div>--> </div> </div> <div class="layer_ticker_row ticker_row_2"> <div class="layer_ticker_select">Tropical Center</div> <div class="ticker_msg" id="layer_tropical_banner"> <a href="/tropical">Tracking <i>Disturbance 99B</i> »</a> </div> </div> <div id="layer_search"> <form id="form_place_search" action="/forecasts" method="get"> <div class="input"> <input type="text" id="qstr" name="q" size="25" autocomplete="off" placeholder="Enter city, ZIP, location..." required /> </div> <button type="submit" name="submit" class="btn color_white"> <i class="fa fa-search" title="Search"></i> </button> </form> </div> </div> <div id="layer_hero_content"></div> <div id="layer_main_wrap" class="page_width"> <div id="layer_page_backdrop"></div> <div id="layer_content_wrap" class="clearfix"> <div id="layer_content_header"> <h1 id="content-start">Weather API for Developers</h1> </div> <div id="content" class="container-fluid noads"> <div class="row"> <div class="col-xs-12"> <p class="service-subheader"> The Weather API provides real-time weather observations, alerts, map tiles, and other data at an affordable price. </p> <h2 id="api_intro">About the API <span class="label label-info" style="font-size: 9pt; vertical-align: middle; padding-bottom: 2px;">BETA</span></h2> <p> The weatherUSA Weather API is a simple-to-use REST/KVP interface for retrieving weather data primarily for locations across the United States, although current conditions are available worldwide. Some weather API providers only provide data every hour or less; our API provides <b>real-time</b> data for critical local information including mesonet (weather station) observations and severe weather alerts.</p> <p>Real-time weather, historical weather, forecasts, and climate information are available via the API. The API accepts standard HTTP requests and returns standard HTTP response codes and JSON response messages for most endpoints. User management (for alerts & notifications), custom, and batch processing endpoints are also available by request. </p> <p> <a class="btn btn-lg btn-primary" href="/services/weather-api/docs">View API usage & docs</a> </p> </div> </div> <div class="service-feature-detail row"> <div class="col-xs-12"> <h2>Data Feeds & Pricing Packages</h2> <div class="alert alert-info"> Need <b>custom or enterprise</b> access? Chat with us or contact for details. </div> <p class="visible-xs-block"> <b>Choose a plan below to switch between plan options.</b> </p> <ul class="table-service-compare-menu-mobile visible-xs-flex" role="menu"> <li class="active"> <button>Starter</button> </li> <li class=""> <button>Sunrise</button> </li> <li class=""> <button>Storm</button> </li> <li class=""> <button>Hurricane</button> </li> </ul> <table class="table table-condensed table-service-compare" id="price_comparison"> <thead> <tr> <th class="feature" style="width: 30%; text-align: center;"> <h3>Weather API & Data Feeds <span class="label label-info" style="font-size: 9pt; vertical-align: middle; padding-bottom: 2px;">BETA</span> </h3> <div><a href="/services/weather-api/docs" class="btn btn-link btn-bordered">API Documentation</a></div> </th> <td class="plan" style="width: 17.5%"> <h4 class="item-header bg-gray color-white" style="background-color: #8a8a8a;">Starter</h4> <div class="price"><div class="price-value">Free</div> </div> <div class="btn-actions"> <a href="/members/new" class="btn btn-primary btn-lg btn-block">Sign Up</a> </div> </td> <td class="plan" style="width: 17.5%"> <h4 class="item-header bg-blue color-white">Sunrise</h4> <div class="price"><div class="price-value">$30</div> monthly </div> <div class="btn-actions"> <a href="/members/new" class="btn btn-primary btn-lg btn-block">Subscribe</a> </div> </td> <td class="plan" style="width: 17.5%"> <h4 class="item-header bg-blue color-white">Storm</h4> <div class="price"><div class="price-value">$150</div> monthly </div> <div class="btn-actions"> <a href="/members/new" class="btn btn-primary btn-lg btn-block">Subscribe</a> </div> </td> <td class="plan" style="width: 17.5%"> <h4 class="item-header bg-red color-white">Hurricane</h4> <div class="price"><div class="price-value">$500</div> monthly </div> <div class="btn-actions"> <a href="/members/new" class="btn btn-primary btn-lg btn-block">Subscribe</a> </div> </td> </tr> </thead> <tbody> <tr class="section-divider"> <th class="feature"><b>Calls/minute</b> (max)</th> <td>10</td> <td>60</td> <td>600</td> <td>1,500</td> </tr> <tr> <th class="feature"><b>Calls/day</b></th> <td>1,000</td> <td>25,000</td> <td>500,000</td> <td>2M</td> </tr> <tr> <th class="feature"><b>Overage calls</b> (option)</th> <td>—</td> <td>$0.15 per 1K</td> <td>$0.07 per 1K</td> <td>$0.02 per 1K</td> </tr> <tr> <th class="feature"><b>Website (public) keys</b></th> <td>1</td> <td>5</td> <td>unlimited</td> <td>unlimited</td> </tr> <tr> <th class="feature"><b>Server (private) keys</b></th> <td>1</td> <td>5</td> <td>unlimited</td> <td>unlimited</td> </tr> <tr> <th class="feature">Streaming connections <a tabindex="0" role="button" class="popover-dismissible" title="" data-content="Simultaneous connections for push alerts and observations"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td></td> <td>2</td> <td>5</td> </tr> <tr class="section-divider"> <th class="feature">Live weather observations <a tabindex="0" role="button" class="popover-dismissible" title="Live weather observations" data-content="<b>34,000+</b> stations worldwide including METAR, CWOP, mesonet stations, roadway, and others."> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Streaming weather observations <a tabindex="0" role="button" class="popover-dismissible" title="Streaming weather observations" data-content="Live mesonet feed over WebSocket/ZeroMQ"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Historical weather observations <a tabindex="0" role="button" class="popover-dismissible" title="Historical weather observations" data-content="8,000+ stations worldwide<br />Back to 2014; longer-term data coming soon"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Place search <a tabindex="0" role="button" class="popover-dismissible" title="Place search" data-content="US towns, ZIP codes, parks, counties, airports, and more; autocomplete support. Canadian places coming soon"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Place lookup by reverse geocode</th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">List of nearby reporting weather stations</th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Weather forecasts, hourly/daily <a tabindex="0" role="button" class="popover-dismissible" title="Weather forecasts" data-content="US only.<br />Weather forecasts by place ID or point coordinates.<br />Hourly (to 3-day) / daily (to 7-day)"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Weather and environmental alerts <a tabindex="0" role="button" class="popover-dismissible" title="Weather and environmental alerts" data-content="Severe, weather, and environmental alerts for <b>US and Canada</b> by coordinates, place ID, or county. Includes severe, winter, tropical weather and more."> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Streaming weather alerts <a tabindex="0" role="button" class="popover-dismissible" title="Streaming weather alerts" data-content="Live feed via WebSocket or ZeroMQ"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Weather forecast & observation rules <a tabindex="0" role="button" class="popover-dismissible" title="Weather forecast & observation rules" data-content="Push (to webhook/ZeroMQ) or pull alerts for a forecast or observation meeting specific criteria"> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Active tropical cyclones <a tabindex="0" role="button" class="popover-dismissible" title="Active tropical cyclones" data-content="Includes current storm info, past path, and official forecast track."> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Tropical cyclone forecast tracks <a tabindex="0" role="button" class="popover-dismissible" title="" data-content="Data feed of latest computer model positions (spaghetti) and intensity forecasts."> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Historical tropical cyclone database <a tabindex="0" role="button" class="popover-dismissible" title="Historical tropical cyclone database" data-content="1851–present."> <i class="fas fa-info-circle fa-lg"></i> </a> </th> <td></td> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <!-- <tr> <th class="feature">Surface analysis</th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> --> <tr> <th class="feature">Live weather & traffic cameras (SkyCams)</th> <td>(2) cameras</td> <td>(10) cameras</td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Local storm reports <a tabindex="0" role="button" class="popover-dismissible" title="Local storm reports" data-content="US-only, real-time and historical to 2015"> <i class="fas fa-info-circle fa-lg"></i> </a> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Air Quality & UV Index</th> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Active wildfires</th> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Recent earthquakes</th> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">NOAA Weather Radio streaming feeds list</th> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr> <th class="feature">Map Tiles <span class="label label-warning">Coming Soon</span></th> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> <tr class="section-divider"> <th class="feature">Usage Agreement</th> <td>Personal, development</td> <td>Commercial/white-label</td> <td>Commercial/white-label</td> <td>Commercial/white-label</td> </tr> <tr> <th class="feature">Attribution</th> <td>Required</td> <td>—</td> <td>—</td> <td>—</td> </tr> <tr> <th class="feature">Support level</th> <td>Email</td> <td>Email/Phone</td> <td>Email/Phone</td> <td>Email/Phone 24/7</td> </tr> <tr> <th class="feature">Availability</th> <td>99.0%</td> <td>99.0%</td> <td>99.9%</td> <td>99.9%</td> </tr> <tr> <th class="feature">99.9%+ Service level agreement (SLA)</th> <td></td> <td></td> <td></td> <td><i class="fa fa-check" aria-label="yes"></i></td> </tr> </tbody> </table> </div> </div> <script> jQuery(function($) { $('.popover-dismissible').popover({ trigger: 'hover focus', placement: 'bottom', html: true, container: 'body' }); $('ul.table-service-compare-menu-mobile').on('click', 'li', function() { var pos = $(this).index()+2; $('#price_comparison tr').find('td').hide(); $('#price_comparison td:nth-child('+pos+')').css('display', 'table-cell'); $(this).siblings().removeClass('active'); $(this).addClass('active'); }); }); </script> <!-- End of content --> </div> <div id="ad-vertical" class="noarrow"> </div> <!-- end layer_content_wrap --> </div> <!-- end layer_main_wrap --> </div> <div id="footer" class="page_width"> <div class="row"> <div class="col-xs-12 col-sm-3"> <a class="social_icons" href="https://www.facebook.com/weatherUSA"><img src="/assets/icons/social_facebook_32x32.png" width="32" height="32" alt="Find us on Facebook" /></a> <a class="social_icons" href="https://twitter.com/wxusa"><img src="/assets/icons/social_twitter_32x32.png" width="32" height="32" alt="Follow us on Twitter" /></a> </div> <!-- <div class="col-xs-12 col-sm-3 col-md-2"> <a class="addthis_button_facebook_like" fb:like:href="https://www.facebook.com/weatherUSA" fb:like:layout="button_count"></a><br /> <a class="addthis_button_twitter_follow_native" tw:screen_name="wxusa" tw:show-count="false"></a> </div> --> <div class="col-xs-12 col-sm-9 col-md-9" style="text-align: right;"> <p><strong><a href="/contact/">Contact Us</a></strong></p> <p><a href="/privacy.php">Privacy Policy</a><br /> <a href="/legal/tos">Terms of Service</a></p> <p>©2001–2024 weatherUSA®</p> </div> </div> </div> <!-- end footer --> <!-- end page --> </div> <!-- end layer_pretty --> </div> </body> </html>