{
  "schema": "kallipolis.resource-quality.v1",
  "id": "resource.public-data.reliefweb-api-v2",
  "version": "1.0.0",
  "title": "ReliefWeb API v2 boundary",
  "summary": "Official-source access, authentication, request-shaping, paging, freshness, legal, and interpretation boundaries for ReliefWeb API v2.",
  "content": {
    "kind": "public-data-api-boundary",
    "facts": [
      {
        "id": "fact.ocha.reliefweb-api-v2.access",
        "statement": "ReliefWeb API v2 provides read-only JSON access to curated reports, disasters, countries, jobs, training, sources, blog, book, and reference content.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.ocha.reliefweb-api-v2"
        ]
      },
      {
        "id": "fact.ocha.reliefweb-api-v2.authentication",
        "statement": "Public reads require a pre-approved appname from November 2025, while publishing is a separate organization-approved API with secret keys and editorial review.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.ocha.reliefweb-api-v2"
        ]
      },
      {
        "id": "fact.ocha.reliefweb-api-v2.request",
        "statement": "Clients must bind content type or item ID, appname, query, filters, fields, sorting, offset, and limit and stay within one thousand entries per call and one thousand calls per day.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.ocha.reliefweb-api-v2"
        ]
      },
      {
        "id": "fact.ocha.reliefweb-api-v2.boundary",
        "statement": "Content comes from information partners, can carry third-party copyright, and has source-specific quality and update limits; it does not prove real-time humanitarian conditions or operational safety.",
        "normativeLevel": "informative",
        "sourceIds": [
          "source.ocha.reliefweb-api-v2"
        ]
      }
    ]
  },
  "language": "en",
  "category": "public-data-api",
  "state": "prepared",
  "canonicalUrl": "https://platoskallipolis.com/resources/public-data-apis/reliefweb-api-v2.json",
  "contentHash": "sha256:6243b45a74b8188a9475a93478a2f2eb27bb908e74018ef03dbfe401092ee112",
  "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/reliefweb-api-v2.json",
    "authentication": "none",
    "robotsAllowed": true
  },
  "provenance": {
    "method": "primary-source",
    "sources": [
      {
        "id": "source.ocha.reliefweb-api-v2",
        "url": "https://apidoc.reliefweb.int/",
        "title": "ReliefWeb API Documentation",
        "publisher": "United Nations Office for the Coordination of Humanitarian Affairs",
        "observedAt": "2026-08-28T05:32:38Z"
      }
    ]
  },
  "observedAt": "2026-08-28T05:32:38Z",
  "freshness": {
    "policy": "max-age",
    "state": "current",
    "nextReviewAt": "2026-09-04T05:32:38Z",
    "maxAgeSeconds": 604800
  },
  "license": {
    "id": "source-terms-apply",
    "url": "https://reliefweb.int/terms-conditions",
    "redistributionAllowed": false
  },
  "evidence": [
    {
      "id": "evidence.ocha.reliefweb-api-v2",
      "type": "source-claim",
      "url": "https://apidoc.reliefweb.int/",
      "observedAt": "2026-08-28T05:32:38Z"
    }
  ]
}
