{
  "x402Version": 2,
  "id": 5485,
  "slug": "5485",
  "resource": "https://x402-portdwell.nobodytools.com/index",
  "description": "Port/chokepoint congestion index (daily & live, computed from public AIS)",
  "type": "http",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0x6e3e1104911423509112E755e7366659452d72a8",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "10000",
      "maxTimeoutSeconds": 60
    }
  ],
  "outputSchema": {
    "bazaar": {
      "info": {
        "input": {
          "method": "GET",
          "queryParams": {
            "current": "1 (live now)",
            "date": "YYYY-MM-DD",
            "from": "YYYY-MM-DD",
            "latest": "1 (most recent day)",
            "port": "LALB (see /sites for all)",
            "to": "YYYY-MM-DD (range)"
          },
          "type": "http"
        },
        "output": {
          "example": {
            "port": "LALB",
            "query": "point",
            "result": {
              "at_anchor": 14,
              "cargo": 39,
              "data_quality": "USABLE",
              "date": "2025-11-15",
              "ge150": 54,
              "ge200": 38,
              "len_km": 14.63,
              "regime": "merchant",
              "tanker": 19,
              "waiting": 58
            },
            "source": "NOAA/MarineCadastre AIS"
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "description": "Query params: port + EXACTLY ONE selector (latest | current | date | from&to | dates).",
            "properties": {
              "current": {
                "description": "Live 'right now' value from today's rollup (PAID; flat premium 0.05 USDC)",
                "type": "boolean"
              },
              "date": {
                "description": "One completed day; no data -> free result:null",
                "format": "date",
                "type": "string"
              },
              "dates": {
                "description": "Comma list of days YYYY-MM-DD,...",
                "type": "string"
              },
              "from": {
                "description": "Range start (inclusive), with 'to'",
                "format": "date",
                "type": "string"
              },
              "latest": {
                "description": "Most recent completed day with data (PAID 0.01 USDC; default)",
                "type": "boolean"
              },
              "port": {
                "default": "LALB",
                "description": "Site code (GET /sites)",
                "type": "string"
              },
              "to": {
                "description": "Range end (inclusive), with 'from'",
                "format": "date",
                "type": "string"
              }
            },
            "type": "object"
          },
          "output": {
            "description": "result is a point, a list (range/dates), or null when no data (GAP; free, not charged).",
            "properties": {
              "note": {
                "description": "present when result is null: why no data (that day is free)",
                "type": "string"
              },
              "port": {
                "type": "string"
              },
              "query": {
                "type": "string"
              },
              "result": {
                "properties": {
                  "as_of": {
                    "description": "UTC ts for live",
                    "type": "string"
                  },
                  "at_anchor": {
                    "type": "integer"
                  },
                  "cargo": {
                    "type": "integer"
                  },
                  "data_quality": {
                    "description": "USABLE|SPARSE|GAP",
                    "type": "string"
                  },
                  "date": {
                    "type": "string"
                  },
                  "ge150": {
                    "description": ">=150m LOA",
                    "type": "integer"
                  },
                  "ge200": {
                    "description": ">=200m LOA",
                    "type": "integer"
                  },
                  "len_km": {
                    "description": "sum of lengths, km",
                    "type": "number"
                  },
                  "regime": {
                    "description": "merchant=historical, live/live-rollup=today",
                    "type": "string"
                  },
                  "tanker": {
                    "type": "integer"
                  },
                  "waiting": {
                    "description": "all waiting merchant vessels, any size",
                    "type": "integer"
                  }
                },
                "type": [
                  "object",
                  "array",
                  "null"
                ]
              },
              "source": {
                "description": "data provenance",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        "type": "object"
      }
    }
  },
  "tags": [
    "bazaar"
  ],
  "sourceHost": "x402-portdwell.nobodytools.com",
  "lastUpdated": "2026-09-12T17:12:24.082Z",
  "quality": {
    "calls30d": 1,
    "uniquePayers30d": 1,
    "lastCalledAt": "2026-09-12T17:12:23.51Z"
  },
  "liveness": {},
  "verified": false,
  "featured": false,
  "provider": {
    "host": "x402-portdwell.nobodytools.com",
    "manifest_name": "x402-portdwell.nobodytools.com",
    "source": "cdp-mirror",
    "source_manifest_url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources",
    "submitted_at": "2026-09-18T22:00:31.484Z"
  }
}