{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "slug": "weatherbit",
    "name": "Weatherbit API",
    "vendor": "Weatherbit LLC",
    "vendorUrl": "https://www.weatherbit.io",
    "kind": "http-api",
    "category": "weather",
    "summary": "Weather data API from Weatherbit LLC of North Carolina. It returns current conditions, daily, hourly and minutely forecasts, severe weather alerts, historical weather, air quality and agricultural and energy datasets by coordinates, over HTTPS with an API key.",
    "url": "https://www.anchorterminal.com/tools/weatherbit",
    "markdownUrl": "https://www.anchorterminal.com/tools/weatherbit.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/weatherbit.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/weatherbit.json",
    "repo": "https://github.com/weatherbit/weatherbit-python",
    "license": "Proprietary service under Weatherbit's terms of service. The free plan's data is under a Creative Commons non-commercial licence. The Python SDK is MIT",
    "transports": [
      "http"
    ],
    "remoteUrl": "https://api.weatherbit.io/v2.0",
    "packages": [
      {
        "registry": "pypi",
        "name": "pyweatherbit"
      }
    ],
    "auth": "api-key",
    "authNotes": "Self-serve key from a browser signup. The key goes in the `key` query parameter on every request, and no header option is documented. Free, Standard and Plus accounts have one key. Business has up to 10.",
    "pricing": "freemium",
    "pricingNotes": "Free plan at 50 requests a day for non-commercial use, and a 21-day Business trial with no card and up to 1,500 requests a day. Paid plans are monthly subscriptions with daily quotas and no overage price. The pricing page showed us pounds only, Standard £40, Plus £179 and Business £410 a month, Enterprise from £820. Billing can be in USD, EUR or GBP, and we did not see the dollar prices (https://www.weatherbit.io/pricing, checked 2026-10-08).",
    "priceSummary": "Freemium",
    "where": "hosted",
    "x402": {
      "level": "no",
      "evidence": "No x402, MPP or L402 in the API docs, the Swagger spec or the pricing page (checked 2026-10-08).",
      "endpoints": []
    },
    "toolCount": null,
    "popularity": {
      "githubStars": null,
      "npmWeekly": null,
      "pypiWeekly": 78,
      "asOf": "2026-10-08"
    },
    "docsUrl": "https://www.weatherbit.io/api",
    "openapi": "https://www.weatherbit.io/static/swagger.json",
    "capabilities": [
      "weather.current",
      "weather.forecast",
      "weather.alerts",
      "weather.historical",
      "data.weather"
    ],
    "tags": [
      "hosted",
      "freemium",
      "free-tier",
      "no-card",
      "closed-source",
      "openapi",
      "python",
      "status-page",
      "us"
    ],
    "lastRelease": "2025-08-01",
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 57.7,
      "grade": "C",
      "agentReady": false,
      "rank": 466,
      "ranked": true,
      "rankOf": 722,
      "categoryRank": 7,
      "methodology": "0.4",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 61,
        "maintenance": 21,
        "payments": 30,
        "reliability": 91,
        "schema": 72,
        "security": 39,
        "transparency": 63
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 91,
          "points": 18.2,
          "reason": "Graded as a hosted service. Status page at status.weatherbit.io on UptimeRobot, with API Central, East and West as monitors and 90 days of daily figures (20). All three show 100 per cent over 90 days, and the event feed lists nothing between 8 September and 8 October 2026 (30). Requests per day and per second are published for every plan, 50 and 1 on Free up to 2 million and 150 on Business (15). 429 is documented for both limits, every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and the help centre says to slow down or retry. No Retry-After or backoff schedule was found. Every call is a GET (11 of 15). The pricing table lists 99.5 per cent uptime on paid plans, which the help centre calls best effort, with custom SLAs on request and no published credits (5 of 10). The v2.0 API is generally available (10)."
        },
        {
          "key": "performance",
          "name": "Performance",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
        },
        {
          "key": "schema",
          "name": "Schema \u0026 documentation",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 72,
          "points": 11.7,
          "reason": "Swagger 2.0 at weatherbit.io/static/swagger.json, version 2.0.0, with 21 GET paths, 37 response models and bodies for 400, 403, 429 and 500. It declares no security definition and lists plain http as a scheme (23 of 25). No llms.txt, which returns 404, and no Markdown docs found (0). Each endpoint page lists parameters, return fields with types and a quota estimate, and warns against station lookups, but says little on when to pick one endpoint over another (13 of 20). `units` and `lang` are enums, 31 enum parameters in all. Location is six optional parameters with none marked required, and `include` and `days` carry no constraints in the spec (11 of 15). Request examples in curl, Ruby, Node.js and Python, sample responses and a status table with example bodies. Errors are one free-text string (12 of 15). The path is versioned as /v2.0. The changelog is a blog whose latest API post is dated 1 August 2025 (8 of 15)."
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 61,
          "points": 9.91,
          "reason": "This is an API with no MCP server. `days` and `hours` cap forecast length and `include` adds minutely data, alerts or lightning only on request. There is no field selection, and a daily forecast row carries about 40 fields (14 of 25). Date ranges, `units`, `lang` and a one-month cap per historical call. No pagination is needed (13 of 20). Five status codes with a JSON `error` string and no machine-readable code. 204 with an empty body means no data, and 403 covers both a missing key and a plan without access (12 of 20). All 21 endpoints are read-only GETs, safe to retry (15 of 20). Only `key` and a location are required and units default to metric. One official SDK, pyweatherbit for Python, last released in February 2024 (7 of 15)."
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 39,
          "points": 6.83,
          "reason": "One plain key per account on Free, Standard and Plus, up to 10 on Business. It is accepted only as the `key` query parameter, so it lands in URLs and logs, and the spec lists http beside https (20 less 10, 10 of 30). Read-only data with nothing to approve (15 of 20). Alert titles and descriptions are relayed from meteorological agencies, and the rest is numeric (10 of 15). Quota counters come back in response headers and from /subscription/usage, but no per-call log for the account holder was found in the docs (4 of 15). security.txt returns 404, and no disclosure policy, bounty or certification was found on the site (0)."
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 30,
          "points": 3.75,
          "reason": "No x402, MPP or L402 in the docs, the spec or the pricing page (0). Plan prices are public without a login, with daily quotas and no per-call or overage price. The page showed us pounds only, £40, £179 and £410 a month (10 of 20). A free plan at 50 requests a day and a 21-day Business trial, neither needing a card (20). A person signs up in a browser to get a key (0)."
        },
        {
          "key": "tasks",
          "name": "Task success",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
        },
        {
          "key": "maintenance",
          "name": "Maintenance \u0026 community",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 21,
          "points": 1.84,
          "reason": "The latest dated API announcement on the blog is 1 August 2025, 433 days before this check. The help article on the rate limit headers was updated on 9 July 2026, 91 days before, and the docs' sample responses are dated June 2026, so we scored the last visible change as within 180 days (10 of 30). No dated changelog entry falls in the last 90 days (0 of 20). A public blog for API updates that has gone quiet, a help centre with articles edited in 2026, and email support with a stated three business day response that we did not test (6 of 15). pyweatherbit 2.2.2 on PyPI dates from 14 February 2024 and is the only official SDK (3 of 15). Its repository has no CI and no commit since 13 February 2024 (2 of 10)."
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 63,
          "points": 5.51,
          "note": "editorial 42, provenance 84",
          "reason": "Closed service with terms updated on 1 May 2025 that set out a commercial licence for paid plans and a Creative Commons non-commercial licence for the free plan. The terms say BY-NC-SA 4.0 and the pricing page links BY-NC 4.0. The Python SDK is MIT (15 of 30). The privacy policy, updated 26 December 2023, covers the API, lists what is logged (IP address, user agent, requested locations) and keeps request logs for no more than two weeks and account records for up to ten years. No DPA was found (17 of 30). No deprecation policy was found, and the terms let Weatherbit end access at any time without notice or reason, though they promise seven days' notice before a renewal when a paid subscription is ended without cause (2 of 20). Stripe and Google Analytics are named. Hosting is given as the United States and Canada, while the help centre says North America and Europe and our call was answered from a region labelled EU (8 of 20)."
        }
      ],
      "assessment": {
        "date": "2026-10-08",
        "basis": "public evidence",
        "confidence": "medium",
        "notes": {
          "ergonomics": "This is an API with no MCP server. `days` and `hours` cap forecast length and `include` adds minutely data, alerts or lightning only on request. There is no field selection, and a daily forecast row carries about 40 fields (14 of 25). Date ranges, `units`, `lang` and a one-month cap per historical call. No pagination is needed (13 of 20). Five status codes with a JSON `error` string and no machine-readable code. 204 with an empty body means no data, and 403 covers both a missing key and a plan without access (12 of 20). All 21 endpoints are read-only GETs, safe to retry (15 of 20). Only `key` and a location are required and units default to metric. One official SDK, pyweatherbit for Python, last released in February 2024 (7 of 15).",
          "maintenance": "The latest dated API announcement on the blog is 1 August 2025, 433 days before this check. The help article on the rate limit headers was updated on 9 July 2026, 91 days before, and the docs' sample responses are dated June 2026, so we scored the last visible change as within 180 days (10 of 30). No dated changelog entry falls in the last 90 days (0 of 20). A public blog for API updates that has gone quiet, a help centre with articles edited in 2026, and email support with a stated three business day response that we did not test (6 of 15). pyweatherbit 2.2.2 on PyPI dates from 14 February 2024 and is the only official SDK (3 of 15). Its repository has no CI and no commit since 13 February 2024 (2 of 10).",
          "payments": "No x402, MPP or L402 in the docs, the spec or the pricing page (0). Plan prices are public without a login, with daily quotas and no per-call or overage price. The page showed us pounds only, £40, £179 and £410 a month (10 of 20). A free plan at 50 requests a day and a 21-day Business trial, neither needing a card (20). A person signs up in a browser to get a key (0).",
          "reliability": "Graded as a hosted service. Status page at status.weatherbit.io on UptimeRobot, with API Central, East and West as monitors and 90 days of daily figures (20). All three show 100 per cent over 90 days, and the event feed lists nothing between 8 September and 8 October 2026 (30). Requests per day and per second are published for every plan, 50 and 1 on Free up to 2 million and 150 on Business (15). 429 is documented for both limits, every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and the help centre says to slow down or retry. No Retry-After or backoff schedule was found. Every call is a GET (11 of 15). The pricing table lists 99.5 per cent uptime on paid plans, which the help centre calls best effort, with custom SLAs on request and no published credits (5 of 10). The v2.0 API is generally available (10).",
          "schema": "Swagger 2.0 at weatherbit.io/static/swagger.json, version 2.0.0, with 21 GET paths, 37 response models and bodies for 400, 403, 429 and 500. It declares no security definition and lists plain http as a scheme (23 of 25). No llms.txt, which returns 404, and no Markdown docs found (0). Each endpoint page lists parameters, return fields with types and a quota estimate, and warns against station lookups, but says little on when to pick one endpoint over another (13 of 20). `units` and `lang` are enums, 31 enum parameters in all. Location is six optional parameters with none marked required, and `include` and `days` carry no constraints in the spec (11 of 15). Request examples in curl, Ruby, Node.js and Python, sample responses and a status table with example bodies. Errors are one free-text string (12 of 15). The path is versioned as /v2.0. The changelog is a blog whose latest API post is dated 1 August 2025 (8 of 15).",
          "security": "One plain key per account on Free, Standard and Plus, up to 10 on Business. It is accepted only as the `key` query parameter, so it lands in URLs and logs, and the spec lists http beside https (20 less 10, 10 of 30). Read-only data with nothing to approve (15 of 20). Alert titles and descriptions are relayed from meteorological agencies, and the rest is numeric (10 of 15). Quota counters come back in response headers and from /subscription/usage, but no per-call log for the account holder was found in the docs (4 of 15). security.txt returns 404, and no disclosure policy, bounty or certification was found on the site (0).",
          "transparency": "Closed service with terms updated on 1 May 2025 that set out a commercial licence for paid plans and a Creative Commons non-commercial licence for the free plan. The terms say BY-NC-SA 4.0 and the pricing page links BY-NC 4.0. The Python SDK is MIT (15 of 30). The privacy policy, updated 26 December 2023, covers the API, lists what is logged (IP address, user agent, requested locations) and keeps request logs for no more than two weeks and account records for up to ten years. No DPA was found (17 of 30). No deprecation policy was found, and the terms let Weatherbit end access at any time without notice or reason, though they promise seven days' notice before a renewal when a paid subscription is ended without cause (2 of 20). Stripe and Google Analytics are named. Hosting is given as the United States and Canada, while the help centre says North America and Europe and our call was answered from a region labelled EU (8 of 20)."
        },
        "sources": [
          {
            "what": "API documentation",
            "url": "https://www.weatherbit.io/api",
            "seen": "2026-10-08"
          },
          {
            "what": "Swagger 2.0 spec",
            "url": "https://www.weatherbit.io/static/swagger.json",
            "seen": "2026-10-08"
          },
          {
            "what": "current weather endpoint docs",
            "url": "https://www.weatherbit.io/api/weather-current",
            "seen": "2026-10-08"
          },
          {
            "what": "subscription usage endpoint docs",
            "url": "https://www.weatherbit.io/api/subscription-usage",
            "seen": "2026-10-08"
          },
          {
            "what": "pricing and plan table",
            "url": "https://www.weatherbit.io/pricing",
            "seen": "2026-10-08"
          },
          {
            "what": "terms of service",
            "url": "https://www.weatherbit.io/terms",
            "seen": "2026-10-08"
          },
          {
            "what": "privacy policy",
            "url": "https://www.weatherbit.io/privacy",
            "seen": "2026-10-08"
          },
          {
            "what": "status page",
            "url": "https://status.weatherbit.io",
            "seen": "2026-10-08"
          },
          {
            "what": "status monitor data, 90 days",
            "url": "https://status.weatherbit.io/api/getMonitorList/NKXNzFNOoM",
            "seen": "2026-10-08"
          },
          {
            "what": "rate limit article",
            "url": "https://help.weatherbit.io/faq/what-happens-when-i-exceed-a-rate-limit/",
            "seen": "2026-10-08"
          },
          {
            "what": "usage headers article",
            "url": "https://help.weatherbit.io/faq/how-can-i-monitor-my-usage/",
            "seen": "2026-10-08"
          },
          {
            "what": "reliability article",
            "url": "https://help.weatherbit.io/faq/how-reliable-is-the-weatherbit-api/",
            "seen": "2026-10-08"
          },
          {
            "what": "support levels",
            "url": "https://help.weatherbit.io/faq/what-is-included-with-email-support/",
            "seen": "2026-10-08"
          },
          {
            "what": "billing currencies",
            "url": "https://help.weatherbit.io/can-i-be-billed-in-a-different-currency/",
            "seen": "2026-10-08"
          },
          {
            "what": "blog, latest API update",
            "url": "https://blog.weatherbit.io/api-update-historical-revision-versions/",
            "seen": "2026-10-08"
          },
          {
            "what": "Python SDK on PyPI",
            "url": "https://pypi.org/project/pyweatherbit/",
            "seen": "2026-10-08"
          },
          {
            "what": "Python SDK repository",
            "url": "https://github.com/weatherbit/weatherbit-python",
            "seen": "2026-10-08"
          },
          {
            "what": "security.txt, 404",
            "url": "https://www.weatherbit.io/.well-known/security.txt",
            "seen": "2026-10-08"
          },
          {
            "what": "domain registration",
            "url": "https://rdap.identitydigital.services/rdap/domain/weatherbit.io",
            "seen": "2026-10-08"
          }
        ],
        "openQuestions": [
          "unchecked: the plan prices in US dollars. The pricing page served pounds to us and fills the numbers by script, and billing currency is chosen after login, so unitPrices is empty",
          "unchecked: GitHub stars for weatherbit/weatherbit-python, because the GitHub API refused our request",
          "Whether the account dashboard shows a per-call log or lets a key be rotated. The docs we read do not say",
          "Whether the API accepts the key in a header. Only the query parameter is documented",
          "The privacy policy says hosting is in the United States and Canada, while the help centre says North America and Europe and the API answered us with api_region: EU",
          "The lead said the free tier includes a 16-day daily and a 240-hour hourly forecast and history. The plan table gives Free a 7-day daily forecast only, hourly from Standard and history from Plus",
          "Email support response times are the vendor's statement and were not tested"
        ]
      },
      "negative": 0,
      "verdict": "A read-only weather API with a Swagger 2.0 spec, quota headers on every response and a status page showing 100 per cent on three API monitors over 90 days. The key travels only in the query string, the free plan allows 50 requests a day for non-commercial use, and the last dated API announcement is 1 August 2025.",
      "bestFor": "An application that needs forecasts plus specialised datasets (air quality, lightning, soil and degree days) from one paid subscription, queried by coordinates.",
      "strengths": [
        "Status page with three API monitors, each at 100 per cent over the 90 days to 8 October 2026",
        "Swagger 2.0 spec at /static/swagger.json with 21 GET endpoints, typed response models and 400, 403, 429 and 500 bodies",
        "Every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and /subscription/usage returns the same counters",
        "Daily and per-second limits published for every plan, from 50 a day on Free to 2 million a day on Business",
        "The privacy policy states that API request logs are kept for no more than two weeks"
      ],
      "weaknesses": [
        "The key is accepted only as the `key` query parameter, and the spec lists plain http as a scheme",
        "Free plan is 50 requests a day, non-commercial, with a 7-day daily forecast and no hourly forecast or history",
        "The last dated API announcement on the blog is 1 August 2025, and the Python SDK was last released in February 2024",
        "No security.txt, disclosure policy, certification or DPA found on the site",
        "The terms let Weatherbit end access at any time without notice or reason, and no deprecation policy was found"
      ],
      "agentNotes": [
        "Pass lat and lon. City, postal code and station lookups are accepted, but the docs recommend coordinates and mark station ID as use with caution",
        "Read X-RateLimit-Remaining and X-RateLimit-Reset on each response. Daily quotas reset at 00:00 UTC and a spent quota returns 429 until then",
        "Treat HTTP 204 with an empty body as no data found, not as an error",
        "Split historical requests into ranges of one month or less. History needs the Plus plan or higher and has its own daily quota",
        "Keep the key out of logs. It is part of the URL on every call, so always use https://api.weatherbit.io/v2.0"
      ],
      "metrics": {
        "kind": "remote",
        "measured": false
      },
      "reviewCount": 0,
      "avgRating": 0,
      "history": [
        {
          "basis": "public evidence",
          "confidence": "medium",
          "grade": "C",
          "methodology": "0.4",
          "pending": [
            "performance",
            "tasks"
          ],
          "run": "2026-10-01",
          "runLabel": "October 2026 research run",
          "score": 57.7
        }
      ],
      "editorialScores": {
        "ergonomics": 61,
        "maintenance": 21,
        "payments": 30,
        "reliability": 91,
        "schema": 72,
        "security": 39,
        "transparency": 42
      },
      "provenanceScore": 84
    },
    "connect": {
      "install": "pip install pyweatherbit",
      "http": "curl -s \"https://api.weatherbit.io/v2.0/forecast/daily?days=16\u0026key=API_KEY\u0026lat=35.7796\u0026lon=-78.6382\""
    },
    "letme": {
      "capability": "https://letme.dev/weather.current",
      "tool": "https://letme.dev/weatherbit"
    },
    "notable": [
      "The pricing table lists 50 requests a day and 1 a second on Free, 25,000 and 25 on Standard, 250,000 and 50 on Plus, and 2 million and 150 on Business, with a separate historical quota of 10,000 a day on Plus and 100,000 on Business (https://www.weatherbit.io/pricing)",
      "The free plan is licensed for non-commercial use with attribution and a link. The terms name CC BY-NC-SA 4.0 and the pricing page links CC BY-NC 4.0 (https://www.weatherbit.io/terms)",
      "Stored API data has to be deleted when a paid subscription ends, unless it was bought through a custom historical data order (https://help.weatherbit.io/faq/can-i-store-data-retrieved-from-the-api-locally/)",
      "Forecast sources named by the vendor are GFS, NAM, HRRR, ICON, DWD, ECMWF, CAMS, SILAM, ACCESS, JMA and AROME, with bias correction per model (https://help.weatherbit.io/faq/what-are-the-data-sources-for-the-forecast-api/)",
      "Historical endpoints carry a revision_version field, announced on 1 August 2025, so a client can tell when past data was recomputed (https://blog.weatherbit.io/api-update-historical-revision-versions/)",
      "The terms bar use in mission-critical applications where failure could lead to injury, death or environmental damage (https://www.weatherbit.io/terms)"
    ],
    "area": "domain-data",
    "details": [
      {
        "label": "Endpoints",
        "value": "21 GET paths under https://api.weatherbit.io/v2.0. /current, /alerts, /forecast/daily, /forecast/hourly, /forecast/minutely, /history/daily, /history/hourly, /history/subhourly, /normals, air quality, lightning, ag-weather, energy, /geocode and /subscription/usage"
      },
      {
        "label": "Free plan",
        "value": "50 requests a day, 1 a second, current weather, alerts and a 7-day daily forecast, non-commercial use with attribution. A 21-day Business trial needs no card and allows up to 1,500 requests a day"
      },
      {
        "label": "Forecast range",
        "value": "16 days daily on paid plans (7 on Free), 240 hours hourly and 60 minutes minutely from Standard up"
      },
      {
        "label": "History",
        "value": "5 years on Plus, 30 years on Business and Enterprise, at most one month per call. Ag-weather history goes back 10 years"
      },
      {
        "label": "Rate limits",
        "value": "Per day and per second by plan. 429 on either limit. Daily quotas reset at 00:00 UTC. X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset on every response"
      },
      {
        "label": "Errors",
        "value": "204 no data, 400 client error, 403 no key or no access on the plan, 429 limit exceeded, 500 server error, each with an `error` string in JSON"
      },
      {
        "label": "Plan prices as shown to us",
        "value": "Standard £40, Plus £179 and Business £410 a month, Enterprise from £820. Paid yearly, Plus is £175 and Business £385 a month. Billing in USD, EUR or GBP is chosen in the account"
      },
      {
        "label": "Uptime stated",
        "value": "95 per cent on Free and 99.5 per cent on paid plans in the pricing table. The help centre calls the 99.5 per cent figure best effort. Custom SLAs on request"
      },
      {
        "label": "Update frequency",
        "value": "Current conditions typically every 15 to 30 minutes, radar and satellite every 10 to 15 minutes, forecasts hourly in most locations, per the help centre"
      },
      {
        "label": "SDK",
        "value": "pyweatherbit 2.2.2 on PyPI, MIT, last released 14 February 2024. Request examples in the docs for curl, Ruby, Node.js and Python"
      },
      {
        "label": "Data kept",
        "value": "API request logs, with IP address, user agent and any location sent, for no more than two weeks. Account and billing records for up to ten years"
      }
    ],
    "provenance": {
      "legalEntity": "Weatherbit LLC",
      "domain": "weatherbit.io",
      "domainRegistered": "2016-12-25",
      "endpointOnVendorDomain": true,
      "terms": "https://www.weatherbit.io/terms",
      "privacy": "https://www.weatherbit.io/privacy",
      "statusPage": "https://status.weatherbit.io",
      "changelog": "https://blog.weatherbit.io/tag/news/",
      "securityTxt": "none",
      "checked": "2026-10-08",
      "notes": [
        "The terms (updated 1 May 2025) cover the Weatherbit API and the website in one document and name Weatherbit LLC, 921 Town Centre Blvd #1129, Clayton, NC 27520, under North Carolina law.",
        "The privacy policy (updated 26 December 2023) covers the site and the API, and says hosting is in the United States and Canada. The help centre says the API runs in North America and Europe, and our unauthenticated call answered with an api_region: EU header.",
        "www.weatherbit.io/.well-known/security.txt returns 404.",
        "status.weatherbit.io runs on UptimeRobot with three monitors, API Central, East and West.",
        "The changelog is the news tag of the vendor's blog. Its latest post is dated 1 August 2025.",
        "RDAP for weatherbit.io gives a registration date of 2016-12-25."
      ],
      "score": 84,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "Weatherbit LLC",
          "points": 20,
          "max": 20,
          "state": "ok"
        },
        {
          "check": "Domain age",
          "value": "weatherbit.io, registered 2016-12-25 (9 years)",
          "points": 11,
          "max": 15,
          "state": "part"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "api.weatherbit.io",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "read, states 5 of the 7 things a reader expects",
          "points": 8.3,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Privacy policy",
          "value": "read, states 7 of the 8 things a reader expects",
          "points": 9.3,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Status page",
          "value": "status.weatherbit.io",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "Changelog",
          "value": "published",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "security.txt",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        }
      ],
      "policies": [
        {
          "kind": "terms",
          "url": "https://www.weatherbit.io/terms",
          "state": "read",
          "readAt": "2026-10-08",
          "statedDate": "2025-05-01",
          "words": 4323,
          "points": 8.3,
          "max": 10,
          "expected": [
            {
              "key": "terms.date",
              "label": "Gives the date it was last updated",
              "found": true,
              "quote": "UPDATED: May 1st, 2025",
              "says": "Last updated 2025-05-01"
            },
            {
              "key": "terms.law",
              "label": "Names the governing law or courts",
              "found": true,
              "quote": "You also agree that the laws of the State of North Carolina and, to the extent applicable, the laws of the United States of America will govern these Terms of Service, as well as any legal claim that might arise between you and the Company (without reference to conflict of laws principles).",
              "says": "The law of the State of North Carolina"
            },
            {
              "key": "terms.liability",
              "label": "States a limit on its liability",
              "found": true,
              "quote": "NOTWITHSTANDING ANYTHING TO THE CONTRARY, WEATHERBIT LLC AND ITS SUPPLIERS (INCLUDING BUT NOT LIMITED TO ALL EQUIPMENT AND TECHNOLOGY SUPPLIERS), OFFICERS, AFFILIATES, REPRESENTATIVES, CONTRACTORS AND EMPLOYEES SHALL NOT BE RESPONSIBLE OR LIABLE WITH RESPECT TO ANY SUBJECT MATTER OF THIS AGREEMENT OR TERMS AND CONDITI…"
            },
            {
              "key": "terms.termination",
              "label": "Says how the agreement or account can be ended",
              "found": true,
              "quote": "Weatherbit may terminate your use of the API service and/or take appropriate legal actions if you violate these Terms of Service."
            },
            {
              "key": "terms.changes",
              "label": "Says how changes to the terms are announced",
              "found": false
            },
            {
              "key": "terms.use",
              "label": "Lists what users may not do",
              "found": true,
              "quote": "If you do not agree to these Terms of Service, you may not access or use the Weatherbit API or Weatherbit Site."
            },
            {
              "key": "terms.sla",
              "label": "Refers to a service level or uptime commitment",
              "found": false
            }
          ],
          "toKnow": [
            {
              "key": "terms.cutoff",
              "label": "Says access can be ended without notice or for any reason",
              "found": true,
              "quote": "Weatherbit LLC reserves the right, in its sole discretion, to terminate your access to the Service at any time, without notice or reason."
            }
          ],
          "notes": [
            {
              "date": "2026-10-08",
              "text": "Weatherbit may name the customer as a user of the service and publish case studies in its marketing unless the customer objects in writing.",
              "quote": "Unless you notify the Company otherwise in writing, we may identify you as a user of the Service on our website, mobile application and in other online or offline marketing materials and press releases, and we may publish case studies and other marketing materials related to your use of the Service."
            },
            {
              "date": "2026-10-08",
              "text": "Liability is capped at the fees paid in the month before the event or 100 US dollars, whichever is higher.",
              "quote": "EXCEED THE FEES PAID BY USER TO COMPANY FOR THE SERVICES UNDER THIS AGREEMENT IN THE 1 MONTH PRIOR TO THE ACT THAT GAVE RISE TO THE LIABILITY OR $100 (WHICHEVER IS HIGHER)"
            },
            {
              "date": "2026-10-08",
              "text": "The customer's indemnity covers injury or death of any person even where Weatherbit's negligence caused it, except for recklessness or wilful misconduct by Weatherbit.",
              "quote": "This includes injury or death of any person, even if caused by Weatherbit LLC's negligence, except in cases of recklessness or willful misconduct by Weatherbit LLC."
            }
          ]
        },
        {
          "kind": "privacy",
          "url": "https://www.weatherbit.io/privacy",
          "state": "read",
          "readAt": "2026-10-08",
          "statedDate": "2023-12-26",
          "words": 1367,
          "points": 9.3,
          "max": 10,
          "expected": [
            {
              "key": "privacy.date",
              "label": "Gives the date it was last updated",
              "found": true,
              "quote": "UPDATED: December 26th, 2023",
              "says": "Last updated 2023-12-26"
            },
            {
              "key": "privacy.collected",
              "label": "Says what personal data is collected",
              "found": true,
              "quote": "We use the information we collect to provide, analyze, administer, enhance, and personalize the Service for you and others."
            },
            {
              "key": "privacy.retention",
              "label": "Says how long data is kept",
              "found": true,
              "quote": "We retain your information only as long as necessary to provide our services.",
              "says": "For as long as needed, with no period named"
            },
            {
              "key": "privacy.processors",
              "label": "Says who else receives the data",
              "found": true,
              "quote": "At your option, we may pass information you provide on the Service’s website to Stripe, a third-party payment processor."
            },
            {
              "key": "privacy.sale",
              "label": "Says whether personal data is sold or shared for advertising",
              "found": false
            },
            {
              "key": "privacy.rights",
              "label": "Says what rights people have over their data",
              "found": true,
              "quote": "In such cases, you have a right to withdraw the consent at any time."
            },
            {
              "key": "privacy.contact",
              "label": "Gives a privacy contact",
              "found": true,
              "quote": "To request a report of personal information collected, please email us at privacy@weatherbit.io.",
              "says": "privacy@weatherbit.io"
            },
            {
              "key": "privacy.transfers",
              "label": "Says where data is transferred or stored",
              "found": true,
              "quote": "Please be aware that when you provide information to us, this information is stored, and processed in the United States or Canada by us as data controller and as data processor.",
              "says": "Data goes to the United States"
            }
          ]
        }
      ]
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/weatherbit.json",
    "live": {
      "slug": "weatherbit",
      "probe": {
        "target": "https://api.weatherbit.io/v2.0",
        "method": "get",
        "lastAt": "2026-10-08T19:53:06.392760015Z",
        "lastOk": true,
        "lastStatus": 400,
        "lastMs": 93,
        "authRequired": false,
        "uptime24h": 100,
        "uptime30d": 100,
        "p50ms24h": 95,
        "p95ms24h": 144,
        "samples24h": 27,
        "samples30d": 27,
        "days": [
          {
            "date": "2026-10-08",
            "probes": 27,
            "ok": 27
          }
        ]
      },
      "vendorStatus": {
        "page": "https://status.weatherbit.io",
        "indicator": "unknown",
        "summary": "no machine-readable status found",
        "checkedAt": "2026-10-08T19:39:20.126331622Z"
      },
      "pages": [
        {
          "url": "https://blog.weatherbit.io/tag/news/",
          "kind": "changelog",
          "status": 200,
          "checkedAt": "2026-10-08T18:15:50.177777534Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "427edce4e014"
        },
        {
          "url": "https://www.weatherbit.io/pricing",
          "kind": "pricing",
          "status": 200,
          "checkedAt": "2026-10-08T18:31:33.789419573Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "e20e5b8f5c6c"
        },
        {
          "url": "https://www.weatherbit.io/privacy",
          "kind": "privacy",
          "status": 200,
          "checkedAt": "2026-10-08T18:31:35.93530729Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "05c1785284ba"
        },
        {
          "url": "https://www.weatherbit.io/terms",
          "kind": "terms",
          "status": 200,
          "checkedAt": "2026-10-08T18:31:37.876349999Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "5f7fdca11857"
        }
      ],
      "updatedAt": "2026-10-08T19:53:06.392760015Z"
    }
  }
}
