{
  "contract": {
    "endpoints": {
      "networkSummary": {
        "path": "/api/network/summary",
        "topLevelFields": [
          "nodeId",
          "generatedAtMs",
          "uptimeSeconds",
          "totals",
          "profiles",
          "regions"
        ],
        "totalsFields": [
          "nodes",
          "onlineNodes",
          "verifiedNodes",
          "verifiedOnlineNodes",
          "peers",
          "messages24h",
          "federationForwardAttempts",
          "federationSessions",
          "federationForwarded",
          "federationBloomSent",
          "federationBloomReceived",
          "federationEfficiencyPercent",
          "relayRejectionPercentAvg",
          "onlineRelayRejectionPercentAvg",
          "reliabilityConfidencePercentAvg",
          "onlineReliabilityConfidencePercentAvg",
          "guardianHealthScoreAvg",
          "onlineGuardianHealthScoreAvg",
          "reliability24hSuccessRatePercent",
          "reliability6hSuccessRatePercent",
          "reliability24hEvents",
          "reliability6hEvents"
        ]
      },
      "nodes": {
        "announcedPath": "/api/nodes/announced",
        "federationBloomCountersFields": [
          "advertiseSent",
          "advertiseReceived"
        ],
        "federationCountersFields": [
          "authenticatedSessions",
          "forwardAttempts",
          "forwarded",
          "skippedByRemoteBloom",
          "skippedNoCandidate",
          "skippedHopLimit",
          "skippedFromFederationSender",
          "sendErrors",
          "receivedBundles",
          "rateLimitedRejects"
        ],
        "itemFields": [
          "nodeId",
          "fingerprint",
          "type",
          "region",
          "capabilities",
          "endpoints",
          "endpointCount",
          "verified",
          "online",
          "lastSeenAtMs",
          "firstSeenAtMs",
          "lastSeenBucketMs",
          "firstSeenBucketMs",
          "peers",
          "messages24h",
          "uptimePercent",
          "reliabilityScore",
          "relayLimits",
          "relayProfile",
          "relayCounters",
          "federationCounters",
          "federationBloomCounters",
          "federationEfficiencyPercent",
          "guardianHealthScore",
          "relayRejectionPercent",
          "reliabilityConfidencePercent",
          "reliabilityTrend24h",
          "lat",
          "lng",
          "locationPrecision",
          "operatorOptInPreciseLocation"
        ],
        "listPath": "/api/nodes",
        "relayCountersFields": [
          "pendingBundles",
          "delivered",
          "stored",
          "rejected",
          "expired",
          "duplicate",
          "pendingEvictionsExpired",
          "pendingEvictionsFairness",
          "pendingStoreFullRejects",
          "relayAckTotal",
          "relaySuccessAcks",
          "relayRejectedAcks",
          "relayRejectionPercent",
          "onlinePeers",
          "totalConnections",
          "authFailures",
          "rateLimitTriggered"
        ]
      },
      "relayReceipts": {
        "ackPath": "/api/relay-receipts/acks",
        "creditsPath": "/api/credits",
        "entitlementsPath": "/api/credits/entitlements",
        "ingestPath": "/api/relay-receipts",
        "policyPath": "/api/credits/policy",
        "poolBuyPath": "/api/credits/pool/buy",
        "poolOfferCancelPath": "/api/credits/pool/offer/cancel",
        "poolOfferPath": "/api/credits/pool/offer",
        "poolQuotePath": "/api/credits/pool/quote",
        "spendPath": "/api/credits/spend",
        "spendRequestsPath": "/api/credits/spend-requests"
      },
      "reliability": {
        "fields": [
          "generatedAtMs",
          "backend",
          "scope",
          "nodeId",
          "trend"
        ],
        "hoursRange": "1..720",
        "networkTrendPath": "/api/reliability/trend",
        "nodeTrendPathTemplate": "/api/nodes/:id/reliability"
      },
      "revenue": {
        "guardianCreditsPathTemplate": "/api/revenue/guardian/:nodeId/credits/:periodKey",
        "guardianEarningsPathTemplate": "/api/revenue/guardian/:nodeId/earnings",
        "guardianPayoutConfigPathTemplate": "/api/revenue/guardian/:nodeId/payout-config",
        "markPaidPathTemplate": "/api/revenue/settlements/:periodKey/:nodeId/mark-paid",
        "periodClosePath": "/api/revenue/periods/:periodKey/close",
        "periodKeyFormat": "YYYY-MM",
        "periodsPath": "/api/revenue/periods",
        "settlementExecutePath": "/api/revenue/periods/:periodKey/settle/execute",
        "settlementPreviewPath": "/api/revenue/periods/:periodKey/settle/preview",
        "summaryPath": "/api/revenue/summary"
      }
    },
    "version": "2026-03-06"
  },
  "generatedAtMs": 1776422535576
}
