{
  "schema": "kallipolis.resource-quality.v1",
  "id": "resource.public-data.noaa-climate-data-online-api",
  "version": "1.0.0",
  "title": "NOAA Climate Data Online API boundary",
  "summary": "Official-source access, authentication, request-shaping, paging, freshness, legal, and interpretation boundaries for NOAA Climate Data Online API.",
  "content": {
    "kind": "public-data-api-boundary",
    "facts": [
      {
        "id": "fact.noaa.climate-data-online-api.access",
        "statement": "Climate Data Online web services v2 expose datasets, data categories, data types, locations, stations, and weather or climate observations.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.noaa.climate-data-online-api"
        ]
      },
      {
        "id": "fact.noaa.climate-data-online-api.authentication",
        "statement": "Every request requires an access token and is subject to the documented per-second and daily request limits for that token.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.noaa.climate-data-online-api"
        ]
      },
      {
        "id": "fact.noaa.climate-data-online-api.request",
        "statement": "Clients must bind dataset, station or location, date range, units, paging limit, and offset and should not infer complete coverage from one response page.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.noaa.climate-data-online-api"
        ]
      },
      {
        "id": "fact.noaa.climate-data-online-api.boundary",
        "statement": "Observed climate records can contain station gaps, revisions, quality flags, and spatial limitations and do not by themselves establish present conditions or safety guidance.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.noaa.climate-data-online-api"
        ]
      }
    ]
  },
  "language": "en",
  "category": "public-data-api",
  "state": "prepared",
  "canonicalUrl": "https://platoskallipolis.com/resources/public-data-apis/noaa-climate-data-online-api.json",
  "contentHash": "sha256:f38480b3eb3e6e0ff263ebde1abc2b25296e8c255d229383a256bb939663ca92",
  "owner": {
    "id": "platos-kallipolis",
    "name": "Plato's Kallipolis",
    "type": "organization",
    "accountabilityUrl": "https://platoskallipolis.com/about"
  },
  "access": {
    "mode": "public",
    "url": "https://platoskallipolis.com/resources/public-data-apis/noaa-climate-data-online-api.json",
    "authentication": "none",
    "robotsAllowed": true
  },
  "provenance": {
    "method": "primary-source",
    "sources": [
      {
        "id": "source.noaa.climate-data-online-api",
        "url": "https://www.ncdc.noaa.gov/cdo-web/webservices/v2",
        "title": "Climate Data Online Web Services v2",
        "publisher": "NOAA National Centers for Environmental Information",
        "observedAt": "2026-08-27T09:30:00Z"
      }
    ]
  },
  "observedAt": "2026-08-27T09:30:00Z",
  "freshness": {
    "policy": "max-age",
    "state": "current",
    "nextReviewAt": "2026-09-03T09:30:00Z",
    "maxAgeSeconds": 604800
  },
  "license": {
    "id": "source-terms-apply",
    "url": "https://www.weather.gov/disclaimer",
    "redistributionAllowed": false
  },
  "evidence": [
    {
      "id": "evidence.noaa.climate-data-online-api",
      "type": "source-claim",
      "url": "https://www.ncdc.noaa.gov/cdo-web/webservices/v2",
      "observedAt": "2026-08-27T09:30:00Z"
    }
  ]
}
