SupplyNode
Maritime Logistics & Bill of Lading API
Global port congestion metrics and standardized US Customs bill of lading shipping manifests.
[
{
"id": "supply-0000",
"source": "example",
"source_id": "supply-0000",
"type": "supply",
"discovered_at": "1970-01-01T00:00:00.000Z",
"payload": {
"origin_port": "Busan, KR",
"weight": 34601
}
},
{
"id": "supply-0001",
"source": "example",
"source_id": "supply-0001",
"type": "supply",
"discovered_at": "1969-12-31T21:00:00.000Z",
"payload": {
"origin_port": "Busan, KR",
"weight": 45080
}
},
{
"id": "supply-0002",
"source": "example",
"source_id": "supply-0002",
"type": "supply",
"discovered_at": "1969-12-31T18:00:00.000Z",
"payload": {
"origin_port": "Shanghai, CN",
"weight": 6994
}
}
]titleConsignee / Importerpayload.origin_portPort of Originpayload.weightCargo Weight (KG) · number
Wire SupplyNode into your agent — one snippet, seven frameworks.
curl https://www.aiagentnode.io/api/v1/nodes/supply/records?limit=10 \ -H "Authorization: Bearer $AIAGENTNODE_KEY"
SupplyNode powers…
Pipe SupplyNode into your LangChain / Vercel AI / Lovable agent for real-time decisions.
Schema-stable JSON drops straight into your vector store with predictable embeddings and no parsing.
Webhook into Slack, Notion, Linear, or your own ops console. Same auth across every node.
Sourced from primary registries. Normalized for agents.
- US Customs and Border Protection AMS bill of lading
- Marine Traffic AIS cross-checks
- Major port authority bulletins
We ingest from the upstream of record — never from secondary scrapers — so every supplynode record in your agent traces back to an authoritative publisher.
- Continuous polling of upstream sources with adaptive backoff
- Deduplication via stable source_id + content fingerprint
- LLM-friendly normalization into a single JSON envelope
- Schema versioning so existing agents never break
- HMAC-signed webhooks for guaranteed-delivery push
Stop maintaining brittle scrapers. Ship the agent.
Most teams spend a quarter rebuilding what SupplyNode ships in a single API key. Here's the honest tradeoff.
| Dimension | SupplyNode | DIY scraper |
|---|---|---|
| Setup time | One API key, one endpoint | Weeks of scraper engineering |
| Schema stability | Versioned JSON contract | Breaks every upstream redesign |
| Freshness | <60s from publication | Cron job, often hours stale |
| Delivery | Polling + HMAC webhooks | Build your own queue |
| LLM readiness | Token-optimized payload | Manual cleaning per record |
| Compliance | Source TOS handled upstream | Your legal exposure |
From signup to first SupplyNode record in under 5 minutes.
- 1. Generate an API key
Pick a tier, complete checkout, and a Bearer token is minted instantly — no email handoff.
- 2. Call /v1/shipping
Send an authenticated GET to receive a paginated JSON envelope. Cursor in, more records out.
- 3. Subscribe to webhooks
Register an HTTPS endpoint to receive HMAC-signed pushes within seconds of upstream publication.
SupplyNode questions, answered.
How fresh is the SupplyNode API data?+
New records appear in /v1/shipping within ~60 seconds of being published upstream. The full dataset is polled every 5 minutes and pushed to webhook subscribers in the same window.
What format does SupplyNode return?+
Every endpoint returns a stable JSON envelope: { id, source, source_id, type, discovered_at, payload }. The payload mirrors the source's natural shape, normalized and token-optimized for direct ingestion into LLMs, vector stores, and RAG pipelines.
Is SupplyNode suitable for AI agents and RAG pipelines?+
Yes — that is the primary design goal. Field keys are stable, units are normalized, free text is cleaned, and total token weight per record is minimized so you can drop responses directly into LangChain, Vercel AI SDK, OpenAI tools, MCP, n8n, or Lovable agents without preprocessing.
How is authentication handled?+
A single API key (Bearer token) works across every node. Webhook payloads are HMAC-SHA256 signed with your tenant secret so you can verify provenance before acting on a record.
Can I get historical SupplyNode data for backtesting?+
Pro tiers include a rolling 24-month backfill via the same endpoint with ?since=<ISO date>. Scale and Agency tiers can request full historical exports as compressed JSONL.
What is the rate limit?+
Curator: 60 req/min. Pro: 600 req/min. Scale: 6,000 req/min. Agency: 60,000 req/min. Enterprise: negotiated. All tiers support paginated cursors so you never need to spike for a backfill.
Why not just scrape supplynode sources directly?+
Upstream sources change formats, throttle aggressively, and break silently. We absorb that fragility, version the schema, sign deliveries, and republish a single contract so your agent stays online when the source moves.
Five tiers. One API surface.
- 10,000 API requests / month
- 5 req/sec burst
- No webhooks · poll only
- 100,000 API requests / month
- 20 req/sec burst
- Webhooks (10 endpoints)
- 1,000,000 API requests / month
- 100 req/sec burst
- Webhooks + GraphQL endpoint
- 10,000,000 API requests / month
- 500 req/sec burst
- Webhooks + GraphQL + MCP server
- Unmetered API access
- Private endpoints + dedicated edge
- Multi-region data residency