{
  "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": "weather-company",
    "name": "The Weather Company Data APIs",
    "vendor": "The Weather Company, LLC",
    "vendorUrl": "https://www.weathercompany.com",
    "kind": "http-api",
    "category": "weather",
    "summary": "The Weather Company Data APIs return current conditions, forecasts to 15 days, historical data, government alerts, imagery and aviation weather from the company behind weather.com. Access is by API key at `api.weather.com`, sold in packages to businesses.",
    "url": "https://www.anchorterminal.com/tools/weather-company",
    "markdownUrl": "https://www.anchorterminal.com/tools/weather-company.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/weather-company.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/weather-company.json",
    "license": "Proprietary service. Use is under a content licensing agreement with The Weather Company, which is not published",
    "transports": [
      "http"
    ],
    "remoteUrl": "https://api.weather.com",
    "packages": [],
    "auth": "api-key",
    "authNotes": "An API key is required and is sent as the `apiKey` query parameter on every request. No header option is documented. Keys are not self-serve. A person requests a 30-day trial by form or contacts sales, the company provisions the key, and the key is read in the API customer portal after an invitation. Each key is entitled to the endpoints in the customer's package, and an endpoint outside it returns 401.",
    "pricing": "paid",
    "pricingNotes": "Standard package $500 a month on an annual plan for 1 million API calls. Enterprise plans and add-on packages are by quote, and overage is charged as the contract defines. A free 30-day trial allows 50,000 calls a day at 100 a minute, is requested by form and is limited to enterprise customers, so an agent cannot start without a person and sales approval (checked 2026-10-08).",
    "priceSummary": "$500 / mo",
    "where": "hosted",
    "x402": {
      "level": "no",
      "evidence": "No x402, MPP or L402 in the developer documentation, the API references or the pricing page (checked 2026-10-08).",
      "endpoints": []
    },
    "toolCount": null,
    "popularity": {
      "githubStars": null,
      "npmWeekly": null,
      "pypiWeekly": null,
      "asOf": "2026-10-08"
    },
    "docsUrl": "https://developer.weather.com/docs/home",
    "capabilities": [
      "weather.current",
      "weather.forecast",
      "weather.historical",
      "weather.alerts",
      "weather.marine",
      "data.weather"
    ],
    "tags": [
      "hosted",
      "paid",
      "enterprise",
      "sales-led",
      "closed-source",
      "status-page",
      "api-key",
      "aviation",
      "air-quality"
    ],
    "lastRelease": "2026-09-14",
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 52.6,
      "grade": "D",
      "agentReady": false,
      "rank": 565,
      "ranked": true,
      "rankOf": 722,
      "categoryRank": 9,
      "methodology": "0.4",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 54,
        "maintenance": 36,
        "payments": 20,
        "reliability": 73,
        "schema": 67,
        "security": 48,
        "transparency": 49
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 73,
          "points": 14.6,
          "reason": "Status page at theweathercompanyapis.statuspage.io with 16 components (20). Its incident feed shows nine incidents from 10 July to 8 October 2026, all rated minor or none, the longest a degraded Air Quality Global API from 15 to 17 August (20 of 30). Trial limits are published at 100 requests a minute and 50,000 a day, and paid limits are a monthly cap set by contract (15). No 429 is documented, an exceeded limit returns 401, and guidance is limited to spreading requests and honouring Cache-Control (3 of 15). The product page states a 99.95 per cent uptime SLA, with no SLA document published (5 of 10). The v1, v2 and v3 APIs are in production, although the documentation site is labelled beta (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": 67,
          "points": 10.89,
          "reason": "168 API reference sections are generated from OpenAPI documents (version 3.2.0 in the page data), and 11 Postman collections can be downloaded, but no standalone OpenAPI file was found (18 of 25). No llms.txt (404) and no Markdown copies (0). Overviews state sources, coverage, attribution and behaviour such as the 3 pm daypart change (16 of 20). Parameters carry enums, patterns and required flags (13 of 15). Each operation has an example response, 13 documented status codes and code samples in seven languages, though the error guide says messages may vary by system (12 of 15). Paths are versioned and each API reference has a changelog section, with one dated entry in the 42 we sampled and no central changelog (8 of 15)."
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 54,
          "points": 8.78,
          "reason": "Response size is controlled by choosing a duration endpoint, by the `products` field selection and compact mode on History on Demand, and by aggregation, which is capped at 10 products and 1 MB. There is no general field selection (14 of 25). Only two APIs paginate, Alert Headlines and History on Demand (10 of 20). Errors are JSON with a code and message, such as `CDN-0004` for a missing key, which we observed on an unauthenticated request. Authorisation failures and exceeded limits share 401 (11 of 20). All documented operations are GET requests, so retries are safe (15 of 20). Every v3 call needs a location plus `units`, `language` and `format`, gzip is required, and no official SDK was found (4 of 15)."
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 48,
          "points": 8.4,
          "reason": "A plain API key whose endpoints are set by the customer's package. It is accepted only in the query string, so we deducted 10. Revocation and rotation are not documented, and the best-practices page suggests a separate key per use case (10 of 30). The API is read-only (17 of 20). Alert text comes from national agencies and US alert summaries are AI-generated, with no guidance on handling that text (10 of 15). History on Demand has a usage endpoint for key consumption. The customer portal sits behind a login and was not read (3 of 15). weather.com publishes a valid security.txt that expires on 31 December 2026, and the site footer has a security incident contact. A Vanta trust centre exists but is drawn by script and was not read. No bug bounty was found (8 of 20)."
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 20,
          "points": 2.5,
          "reason": "No x402, MPP or L402 (0). The Standard package price is public at $500 a month for 1 million calls on an annual plan. Enterprise plans, add-on packages and overage rates are by contract (10 of 20). A 30-day trial at 50,000 calls a day is free, but it is requested by form and limited to enterprise customers. The form did not load for us, so whether it asks for a card is unchecked, and we gave half (10 of 20). A person requests the trial and sales provisions the 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": 36,
          "points": 3.15,
          "reason": "The History on Demand Direct reference records a specification change on 14 September 2026, 24 days before the check, and the documentation sitemap shows pages edited up to 5 October 2026 (30). We found one dated changelog entry in 42 API references sampled, short of three in 90 days (0). Support is by email and a ServiceNow customer portal, and the status page is updated during incidents. No public community channel was found (6 of 15). No official SDK was found (0). No package to assess (0)."
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 49,
          "points": 4.29,
          "note": "editorial 20, provenance 77",
          "reason": "A closed service. The website terms of use, updated 16 April 2026, say they do not apply to the business data APIs and refer to separate terms that we did not find published (5 of 30). The privacy policy, effective 30 April 2026, covers business contact data collected through developer.weather.com and says customer-managed personal data is used as business agreements specify. Retention is stated as as long as necessary, and no data processing agreement was found (10 of 30). No deprecation policy or dated deprecation notice was found (0). The policy says data is processed in the United States and other jurisdictions. No sub-processor list was read, since the trust centre is drawn by script (5 of 20)."
        }
      ],
      "assessment": {
        "date": "2026-10-08",
        "basis": "public evidence",
        "confidence": "medium",
        "notes": {
          "ergonomics": "Response size is controlled by choosing a duration endpoint, by the `products` field selection and compact mode on History on Demand, and by aggregation, which is capped at 10 products and 1 MB. There is no general field selection (14 of 25). Only two APIs paginate, Alert Headlines and History on Demand (10 of 20). Errors are JSON with a code and message, such as `CDN-0004` for a missing key, which we observed on an unauthenticated request. Authorisation failures and exceeded limits share 401 (11 of 20). All documented operations are GET requests, so retries are safe (15 of 20). Every v3 call needs a location plus `units`, `language` and `format`, gzip is required, and no official SDK was found (4 of 15).",
          "maintenance": "The History on Demand Direct reference records a specification change on 14 September 2026, 24 days before the check, and the documentation sitemap shows pages edited up to 5 October 2026 (30). We found one dated changelog entry in 42 API references sampled, short of three in 90 days (0). Support is by email and a ServiceNow customer portal, and the status page is updated during incidents. No public community channel was found (6 of 15). No official SDK was found (0). No package to assess (0).",
          "payments": "No x402, MPP or L402 (0). The Standard package price is public at $500 a month for 1 million calls on an annual plan. Enterprise plans, add-on packages and overage rates are by contract (10 of 20). A 30-day trial at 50,000 calls a day is free, but it is requested by form and limited to enterprise customers. The form did not load for us, so whether it asks for a card is unchecked, and we gave half (10 of 20). A person requests the trial and sales provisions the key (0).",
          "reliability": "Status page at theweathercompanyapis.statuspage.io with 16 components (20). Its incident feed shows nine incidents from 10 July to 8 October 2026, all rated minor or none, the longest a degraded Air Quality Global API from 15 to 17 August (20 of 30). Trial limits are published at 100 requests a minute and 50,000 a day, and paid limits are a monthly cap set by contract (15). No 429 is documented, an exceeded limit returns 401, and guidance is limited to spreading requests and honouring Cache-Control (3 of 15). The product page states a 99.95 per cent uptime SLA, with no SLA document published (5 of 10). The v1, v2 and v3 APIs are in production, although the documentation site is labelled beta (10).",
          "schema": "168 API reference sections are generated from OpenAPI documents (version 3.2.0 in the page data), and 11 Postman collections can be downloaded, but no standalone OpenAPI file was found (18 of 25). No llms.txt (404) and no Markdown copies (0). Overviews state sources, coverage, attribution and behaviour such as the 3 pm daypart change (16 of 20). Parameters carry enums, patterns and required flags (13 of 15). Each operation has an example response, 13 documented status codes and code samples in seven languages, though the error guide says messages may vary by system (12 of 15). Paths are versioned and each API reference has a changelog section, with one dated entry in the 42 we sampled and no central changelog (8 of 15).",
          "security": "A plain API key whose endpoints are set by the customer's package. It is accepted only in the query string, so we deducted 10. Revocation and rotation are not documented, and the best-practices page suggests a separate key per use case (10 of 30). The API is read-only (17 of 20). Alert text comes from national agencies and US alert summaries are AI-generated, with no guidance on handling that text (10 of 15). History on Demand has a usage endpoint for key consumption. The customer portal sits behind a login and was not read (3 of 15). weather.com publishes a valid security.txt that expires on 31 December 2026, and the site footer has a security incident contact. A Vanta trust centre exists but is drawn by script and was not read. No bug bounty was found (8 of 20).",
          "transparency": "A closed service. The website terms of use, updated 16 April 2026, say they do not apply to the business data APIs and refer to separate terms that we did not find published (5 of 30). The privacy policy, effective 30 April 2026, covers business contact data collected through developer.weather.com and says customer-managed personal data is used as business agreements specify. Retention is stated as as long as necessary, and no data processing agreement was found (10 of 30). No deprecation policy or dated deprecation notice was found (0). The policy says data is processed in the United States and other jurisdictions. No sub-processor list was read, since the trust centre is drawn by script (5 of 20)."
        },
        "sources": [
          {
            "what": "API hub home and package list",
            "url": "https://developer.weather.com/",
            "seen": "2026-10-08"
          },
          {
            "what": "getting started, base URL and key provisioning",
            "url": "https://developer.weather.com/docs/getting-started",
            "seen": "2026-10-08"
          },
          {
            "what": "authentication, rate limits and 401 behaviour",
            "url": "https://developer.weather.com/docs/authentication",
            "seen": "2026-10-08"
          },
          {
            "what": "error handling status codes",
            "url": "https://developer.weather.com/docs/error-handling",
            "seen": "2026-10-08"
          },
          {
            "what": "best practices, limits, pagination and caching",
            "url": "https://developer.weather.com/docs/best-practices",
            "seen": "2026-10-08"
          },
          {
            "what": "API common usage guide",
            "url": "https://developer.weather.com/docs/api-common-usage-guide",
            "seen": "2026-10-08"
          },
          {
            "what": "aggregation guide",
            "url": "https://developer.weather.com/docs/api-aggregation",
            "seen": "2026-10-08"
          },
          {
            "what": "Standard Weather Data Package contents",
            "url": "https://developer.weather.com/docs/standard-weather-data-package",
            "seen": "2026-10-08"
          },
          {
            "what": "History on Demand Package, archive depth",
            "url": "https://developer.weather.com/docs/history-on-demand-package",
            "seen": "2026-10-08"
          },
          {
            "what": "Daily Forecast API reference and operation page",
            "url": "https://developer.weather.com/docs/openapi/daily-forecast-3-0-0",
            "seen": "2026-10-08"
          },
          {
            "what": "History on Demand Direct reference with changelog entry",
            "url": "https://developer.weather.com/docs/openapi/history-on-demand-direct-3-0",
            "seen": "2026-10-08"
          },
          {
            "what": "Alert Headlines reference",
            "url": "https://developer.weather.com/docs/openapi/weather-alerts-headlines-3-0",
            "seen": "2026-10-08"
          },
          {
            "what": "sitemap of 168 API references with last-modified dates",
            "url": "https://developer.weather.com/sitemaps/openapi-specs/sitemap/0.xml",
            "seen": "2026-10-08"
          },
          {
            "what": "Postman collections",
            "url": "https://developer.weather.com/docs/postman-collections",
            "seen": "2026-10-08"
          },
          {
            "what": "packages and pricing",
            "url": "https://www.weathercompany.com/weather-data-apis/weather-data-apis-packages-pricing/",
            "seen": "2026-10-08"
          },
          {
            "what": "free trial page",
            "url": "https://www.weathercompany.com/weather-data-api-free-trial/",
            "seen": "2026-10-08"
          },
          {
            "what": "Weather Data APIs product page, SLA figure",
            "url": "https://www.weathercompany.com/weather-data-apis/",
            "seen": "2026-10-08"
          },
          {
            "what": "status page incident feed",
            "url": "https://theweathercompanyapis.statuspage.io/api/v2/incidents.json",
            "seen": "2026-10-08"
          },
          {
            "what": "status page components",
            "url": "https://theweathercompanyapis.statuspage.io/api/v2/components.json",
            "seen": "2026-10-08"
          },
          {
            "what": "unauthenticated request, 401 error body",
            "url": "https://api.weather.com/v3/wx/forecast/daily/3day",
            "seen": "2026-10-08"
          },
          {
            "what": "website terms of use, scope clause",
            "url": "https://weather.com/privacy/terms-of-use",
            "seen": "2026-10-08"
          },
          {
            "what": "privacy policy",
            "url": "https://weather.com/privacy/privacy-policy",
            "seen": "2026-10-08"
          },
          {
            "what": "security.txt",
            "url": "https://weather.com/.well-known/security.txt",
            "seen": "2026-10-08"
          },
          {
            "what": "RDAP record for weather.com",
            "url": "https://rdap.verisign.com/com/v1/domain/weather.com",
            "seen": "2026-10-08"
          }
        ],
        "openQuestions": [
          "unchecked: the trial request form at wsi.my.site.com/trial, which is drawn by script and did not load, so whether it asks for a card and which terms it links are unknown",
          "unchecked: the trust centre at trust.weathercompany.com, drawn by script, so certifications, sub-processors and documents were not read",
          "unchecked: the API customer portal at weather.service-now.com, behind a login, so key rotation, usage views and any terms shown there were not read",
          "The terms that govern the data APIs were not found on the pricing, trial or documentation pages, so `provenance.terms` is left out",
          "The 99.95 per cent uptime SLA is a figure on the product page. No SLA document was found",
          "Changelog sections were read on 42 of 168 API references. The other 126 may hold dated entries",
          "Overage rates, add-on package prices and Enterprise prices are by contract and not published",
          "Whether a downloadable OpenAPI file exists. The reference pages embed the documents but no file link was found",
          "The lead said public docs and a free trial, which is right, but the trial is limited to enterprise customers and is not self-serve"
        ]
      },
      "negative": 0,
      "verdict": "A wide weather data API with 168 API references built from OpenAPI documents, global 4 km current conditions, hourly history from June 2015 and a status page with component history. Keys come only through a sales-reviewed trial or contract, travel only in the URL, and the terms that govern the API are not published.",
      "bestFor": "A business that wants one contract for global forecasts, 4 km current conditions, alerts, imagery, aviation and deep history, and that can go through sales.",
      "strengths": [
        "168 API reference sections on developer.weather.com are generated from OpenAPI documents, with enums, patterns, required fields, example responses and 13 response codes per operation.",
        "The Standard package covers current conditions, daily and hourly forecasts to 15 days, alerts from six national agencies, imagery, marine tiles, tides and air quality.",
        "History on Demand returns hourly gridded history at about 4 km from June 2015, in JSON, CSV or Parquet, with paging, field selection and a compact mode.",
        "The status page lists 16 components. Its feed shows nine incidents between 10 July and 8 October 2026, all rated minor or none.",
        "The Standard package price is public, $500 a month on an annual plan for 1 million calls, and the trial allows 50,000 calls a day for 30 days."
      ],
      "weaknesses": [
        "No self-serve signup. The trial is requested through a form, is limited to enterprise customers, and the Buy now button opens a contact form.",
        "The API key is accepted only as the `apiKey` query parameter, so it appears in every request URL. No header option is documented.",
        "The website terms of use say they do not apply to the data APIs and point to separate terms, which we did not find published.",
        "Exceeding a rate limit returns 401, the same status as a missing key. No 429, Retry-After or backoff guidance is documented.",
        "No llms.txt, no downloadable OpenAPI file, no official SDK and no MCP server were found. Only one dated changelog entry appeared in 42 API references sampled."
      ],
      "agentNotes": [
        "Send `units`, `language` and `format=json` with a location on every v3 call, plus `Accept-Encoding: gzip`, which the usage guide marks as required.",
        "Keep the key out of logs and client-side code, because it travels in the query string as `apiKey`.",
        "Treat a 401 as either a bad key, an endpoint outside the key's package or an exceeded limit, and treat a 204 as no data for the query.",
        "Each forecast duration (`3day` to `15day`) is a separate entitlement. Request only durations the contract covers.",
        "Use `/v3/aggcommon` to combine up to 10 products in one request. Each product and each location still counts as one call."
      ],
      "metrics": {
        "kind": "remote",
        "measured": false
      },
      "reviewCount": 0,
      "avgRating": 0,
      "history": [
        {
          "basis": "public evidence",
          "confidence": "medium",
          "grade": "D",
          "methodology": "0.4",
          "pending": [
            "performance",
            "tasks"
          ],
          "run": "2026-10-01",
          "runLabel": "October 2026 research run",
          "score": 52.6
        }
      ],
      "editorialScores": {
        "ergonomics": 54,
        "maintenance": 36,
        "payments": 20,
        "reliability": 73,
        "schema": 67,
        "security": 48,
        "transparency": 20
      },
      "provenanceScore": 77
    },
    "connect": {
      "http": "curl --compressed \"https://api.weather.com/v3/wx/forecast/daily/3day?geocode=33.74,-84.39\u0026units=e\u0026language=en-US\u0026format=json\u0026apiKey=$TWC_API_KEY\""
    },
    "letme": {
      "capability": "https://letme.dev/weather.current",
      "tool": "https://letme.dev/weather-company"
    },
    "notable": [
      "All requests go to `api.weather.com` over HTTPS with the key as the `apiKey` query parameter, and `Accept-Encoding: gzip` is marked required (https://developer.weather.com/docs/api-common-usage-guide)",
      "The documentation sitemap lists 168 API references generated from OpenAPI documents, across 12 packages from Standard to Aviation Enroute (https://developer.weather.com/sitemaps/openapi-specs/sitemap/0.xml)",
      "History on Demand has hourly gridded data at about 4 km from June 2015, with up to 5 years per query in JSON, CSV or Parquet (https://developer.weather.com/docs/history-on-demand-package)",
      "Alert Headlines carries alerts from the NWS, Environment Canada, MeteoAlarm, the Australian Bureau of Meteorology, KMA and JMA, and attribution is required (https://developer.weather.com/docs/standard-weather-data-package)",
      "The aggregation endpoint `/v3/aggcommon` combines up to 10 products and several locations in one request, with each product and location counted as a call (https://developer.weather.com/docs/api-aggregation)",
      "The website terms of use, updated 16 April 2026, say they do not apply to the business data APIs, which are governed by separate terms (https://weather.com/privacy/terms-of-use)",
      "An exceeded rate limit returns 401, the same status as a missing or invalid key (https://developer.weather.com/docs/authentication)"
    ],
    "area": "domain-data",
    "details": [
      {
        "label": "Base URL",
        "value": "https://api.weather.com, with v1, v2 and v3 paths. JSON or GeoJSON responses, CSV and Parquet on History on Demand"
      },
      {
        "label": "Packages",
        "value": "Standard Weather Data, API Developer, Agriculture, Air Quality, Aviation Core, Aviation Enhanced Core, Aviation Enroute, Probabilistic Forecast, Recent Lightning Strikes, Renewable Energy, Seasonal Forecast, Severe Weather, plus History on Demand"
      },
      {
        "label": "Forecast range",
        "value": "Daily and intraday to 15 days, hourly to 360 hours, 15-minute steps for the next 7 hours. Each duration is a separately entitled endpoint"
      },
      {
        "label": "Current conditions",
        "value": "Currents On Demand, blended at request time on a global grid of about 4 km, plus site-based observations and personal weather stations"
      },
      {
        "label": "History",
        "value": "Hourly gridded history from June 2015 (History on Demand), agriculture and energy fields from March 2020, US almanac averages over 10 to 30 or more years"
      },
      {
        "label": "Alerts",
        "value": "Headlines and details from the NWS, Environment Canada, MeteoAlarm, the Australian Bureau of Meteorology, KMA and JMA. Attribution required. Paged with a `next` token"
      },
      {
        "label": "Rate limits",
        "value": "Trial 100 requests a minute and 50,000 a day. Paid plans have a monthly cap set by contract. Exceeding a limit returns 401"
      },
      {
        "label": "Errors",
        "value": "JSON body with a code and message, such as `CDN-0004` Missing apiKey. 204 means no data. No 429 is documented"
      },
      {
        "label": "Aggregation",
        "value": "`/v3/aggcommon` takes up to 10 products and several locations, URL up to about 4,096 characters, response under 1 MB"
      },
      {
        "label": "Documentation",
        "value": "56 guide pages and 168 API references generated from OpenAPI documents, 11 Postman collections. No llms.txt or downloadable OpenAPI file. The site is labelled beta"
      },
      {
        "label": "Status",
        "value": "theweathercompanyapis.statuspage.io, 16 components. Nine incidents from 10 July to 8 October 2026, all minor or none"
      },
      {
        "label": "Support",
        "value": "Email at apisupport@weather.com and the API customer portal on ServiceNow"
      }
    ],
    "unitPrices": [
      {
        "item": "Standard package, annual plan",
        "unit": "month",
        "usd": 500,
        "note": "1 million API calls a month"
      },
      {
        "item": "Call on Standard, at the plan cap",
        "unit": "1k-requests",
        "usd": 0.5,
        "note": "$500 over 1 million calls"
      }
    ],
    "provenance": {
      "legalEntity": "The Weather Company, LLC",
      "domain": "weather.com",
      "domainRegistered": "1994-08-09",
      "endpointOnVendorDomain": true,
      "terms": "",
      "privacy": "https://weather.com/privacy/privacy-policy",
      "statusPage": "https://theweathercompanyapis.statuspage.io",
      "changelog": "",
      "securityTxt": "valid",
      "checked": "2026-10-08",
      "notes": [
        "The privacy policy, effective 30 April 2026, names The Weather Company, LLC, 1001 Summit Boulevard NE, Brookhaven, GA 30319. Its section on data collection outside consumer products covers developer.weather.com enquiries and business customers.",
        "No terms document is given. The website terms of use (updated 16 April 2026) say they do not apply to the business data APIs, and the separate terms they refer to were not found on the pricing, trial or documentation pages.",
        "The API answers at api.weather.com and the documentation at developer.weather.com. The company site is www.weathercompany.com (registered 1998-03-24).",
        "weather.com/.well-known/security.txt gives a security contact and expires on 31 December 2026. www.weathercompany.com and developer.weather.com return 404 for the same path.",
        "RDAP for weather.com gives a registration date of 1994-08-09 and CSC Corporate Domains, Inc. as registrar.",
        "There is no central changelog. Each API reference has its own changelog section, most of them empty."
      ],
      "score": 77,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "The Weather Company, LLC",
          "points": 20,
          "max": 20,
          "state": "ok"
        },
        {
          "check": "Domain age",
          "value": "weather.com, registered 1994-08-09 (32 years)",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "api.weather.com",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "Privacy policy",
          "value": "published, but our reader couldn't read it",
          "points": 7,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Status page",
          "value": "theweathercompanyapis.statuspage.io",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "Changelog",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "security.txt",
          "value": "valid",
          "points": 10,
          "max": 10,
          "state": "ok"
        }
      ],
      "policies": [
        {
          "kind": "terms",
          "url": "",
          "state": "none-found",
          "points": 0,
          "max": 10
        },
        {
          "kind": "privacy",
          "url": "https://weather.com/privacy/privacy-policy",
          "state": "unreadable",
          "reason": "the page answered HTTP 403 to our reader",
          "readAt": "2026-10-08",
          "points": 7,
          "max": 10
        }
      ]
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/weather-company.json",
    "live": {
      "slug": "weather-company",
      "probe": {
        "target": "https://api.weather.com",
        "method": "get",
        "lastAt": "2026-10-08T21:12:25.691314952Z",
        "lastOk": true,
        "lastStatus": 401,
        "lastMs": 19,
        "lastNote": "asks for credentials",
        "authRequired": true,
        "uptime24h": 100,
        "uptime30d": 100,
        "p50ms24h": 23,
        "p95ms24h": 64,
        "samples24h": 21,
        "samples30d": 21,
        "days": [
          {
            "date": "2026-10-08",
            "probes": 21,
            "ok": 21
          }
        ]
      },
      "vendorStatus": {
        "page": "https://theweathercompanyapis.statuspage.io",
        "indicator": "none",
        "summary": "All Systems Operational",
        "checkedAt": "2026-10-08T21:06:30.225974996Z"
      },
      "updatedAt": "2026-10-08T21:12:25.691314952Z"
    }
  }
}
