NYC Transit Live — MPP Grade B
On-chain Activity
Compliance Checks
1 issue
- POST endpoint challenge missing digest parameter (SHOULD per spec)
Paid Operations (5)
POST /citibike/nearest dynamic
Canonical agent invocation uses POST with JSON body { lat, lng, limit? }. GET with query parameters remains supported for browser/manual use.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:USDC intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| lat | number | Yes | Latitude in WGS84 decimal degrees. |
| limit | integer | No |
Optional number of nearby results to return (1–10, defaults to 5). Fetch the full set to filter by user constraints (min bikes, max walk time, e-bikes only, specific lines/routes), then present the top 3 to the user.
default: 5
|
| lng | number | Yes | Longitude in WGS84 decimal degrees. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| results | array[object] | - |
POST /citibike/dock dynamic
Canonical agent invocation uses POST with JSON body { lat, lng, limit? }. GET with query parameters remains supported for browser/manual use.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:USDC intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| lat | number | Yes | Latitude in WGS84 decimal degrees. |
| limit | integer | No |
Optional number of nearby results to return (1–10, defaults to 5). Fetch the full set to filter by user constraints (min bikes, max walk time, e-bikes only, specific lines/routes), then present the top 3 to the user.
default: 5
|
| lng | number | Yes | Longitude in WGS84 decimal degrees. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| results | array[object] | - |
POST /subway/nearest dynamic
Canonical agent invocation uses POST with JSON body { lat, lng, limit? }. GET with query parameters remains supported for browser/manual use.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:USDC intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| lat | number | Yes | Latitude in WGS84 decimal degrees. |
| limit | integer | No |
Optional number of nearby results to return (1–10, defaults to 5). Fetch the full set to filter by user constraints (min bikes, max walk time, e-bikes only, specific lines/routes), then present the top 3 to the user.
default: 5
|
| lng | number | Yes | Longitude in WGS84 decimal degrees. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| results | array[object] | - |
POST /subway/alerts dynamic
Returns active MTA subway alerts with a normalized severity bucket, direction (Uptown / Downtown / both), and estimated delay minutes when the MTA includes them in the description text. Canonical invocation uses POST with JSON body { lines?: string[], limit? }. Omit lines (or pass an empty array) for all active alerts. GET clients may pass lines as a comma-separated string: GET /subway/alerts?lines=L,G.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:USDC intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| limit | integer | No |
Optional maximum number of alerts to return (1–50, default 20).
default: 20
|
| lines | array | No | Optional list of subway line letters/numbers to filter by (e.g. ["L", "G"]). Omit or pass an empty array to get all currently active alerts. GET clients may pass a comma-separated string. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| results | array[object] | - |
POST /bus/nearest dynamic
Canonical agent invocation uses POST with JSON body { lat, lng, limit? }. GET with query parameters remains supported for browser/manual use.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:USDC intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| lat | number | Yes | Latitude in WGS84 decimal degrees. |
| limit | integer | No |
Optional number of nearby results to return (1–10, defaults to 5). Fetch the full set to filter by user constraints (min bikes, max walk time, e-bikes only, specific lines/routes), then present the top 3 to the user.
default: 5
|
| lng | number | Yes | Longitude in WGS84 decimal degrees. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| results | array[object] | - |
Payment Methods
- Methods
- tempo (from challenge)
- Intents
- charge (from challenge)
- Currencies (discovery)
- -
- Currency (challenge)
- USDC.e on Tempo Mainnet Presto (Tempo Mainnet Presto)
- Multiple Challenges
- No
Recipients
- 0x687E3217668DDe7c32478A3F2613750c8Bd505E9
Per-endpoint breakdown
- POST /bus/nearest
- 0x687E3217668DDe7c32478A3F2613750c8Bd505E9
- POST /citibike/dock
- 0x687E3217668DDe7c32478A3F2613750c8Bd505E9
- POST /citibike/nearest
- 0x687E3217668DDe7c32478A3F2613750c8Bd505E9
- POST /subway/alerts
- 0x687E3217668DDe7c32478A3F2613750c8Bd505E9
- POST /subway/nearest
- 0x687E3217668DDe7c32478A3F2613750c8Bd505E9
Security
- TLS Version
- TLSv1.3
- Challenge ID Unique
- Yes
- Challenge ID Length
- 43
- Digest Binding
- -
Uptime
- Discovery
- Reachable (297ms)
- Challenge
- Reachable (238ms)
- Last Checked
Schema Completeness
- Paid Operations
- 5
- With Input Schema
- 5
- With Description
- 5
Documentation
- Homepage
- https://transit402.dev
- API Reference
- -
- llms.txt
- -
Discovery
- OpenAPI URL
- https://transit402.dev/openapi.json
- OpenAPI Version
- 3.1.0
- Service Version
- 2.2.1
- Document Size
- 14428 bytes
- Document Hash
- a57212950c631a4dd4d47c23cf271c862f34381501f497281ae56de5796a3ba1
Version History (47 snapshots)
- new endpoint: POST /subway/alerts
Scan snapshots
| Date | Grade | Score | Response | Status |
|---|---|---|---|---|
| 2026-04-20 | B | 80% | 266ms | Up |
| 2026-04-21 | B | 80% | 230ms | Up |
| 2026-04-22 | B | 80% | 298ms | Up |
| 2026-04-23 | B | 80% | 764ms | Up |
| 2026-04-24 | B | 80% | 273ms | Up |
| 2026-04-25 | B | 80% | 291ms | Up |
| 2026-04-26 | B | 80% | 312ms | Up |
| 2026-04-27 | B | 80% | 290ms | Up |
| 2026-04-28 | B | 80% | 256ms | Up |
| 2026-04-29 | B | 80% | 301ms | Up |
| 2026-04-30 | B | 80% | 839ms | Up |
| 2026-05-01 | B | 80% | 242ms | Up |
| 2026-05-02 | B | 80% | 290ms | Up |
| 2026-05-03 | B | 80% | 251ms | Up |
| 2026-05-04 | B | 80% | 266ms | Up |
| 2026-05-05 | B | 80% | 284ms | Up |
| 2026-05-06 | B | 80% | 349ms | Up |
| 2026-05-07 | B | 80% | 423ms | Up |
| 2026-05-08 | B | 80% | 322ms | Up |
| 2026-05-09 | B | 80% | 259ms | Up |
| 2026-05-10 | B | 80% | 453ms | Up |
| 2026-05-11 | B | 80% | 357ms | Up |
| 2026-05-12 | B | 80% | 282ms | Up |
| 2026-05-13 | B | 80% | 288ms | Up |
| 2026-05-14 | B | 80% | 506ms | Up |
| 2026-05-15 | B | 80% | 288ms | Up |
| 2026-05-16 | B | 80% | 465ms | Up |
| 2026-05-17 | B | 80% | 712ms | Up |
| 2026-05-18 | B | 80% | 298ms | Up |
| 2026-05-19 | B | 80% | 919ms | Up |
| 2026-05-20 | B | 80% | 280ms | Up |
| 2026-05-21 | B | 80% | 324ms | Up |
| 2026-05-22 | B | 80% | 300ms | Up |
| 2026-05-23 | B | 80% | 292ms | Up |
| 2026-05-24 | B | 80% | 423ms | Up |
| 2026-05-25 | B | 80% | 279ms | Up |
| 2026-05-26 | B | 80% | 397ms | Up |
| 2026-05-27 | B | 80% | 420ms | Up |
| 2026-05-28 | B | 80% | 256ms | Up |
| 2026-05-29 | B | 80% | 400ms | Up |
| 2026-05-30 | B | 80% | 2583ms | Up |
| 2026-05-31 | B | 80% | 354ms | Up |
| 2026-06-01 | B | 80% | 266ms | Up |
| 2026-06-02 | B | 80% | 347ms | Up |
| 2026-06-03 | B | 80% | 250ms | Up |
| 2026-06-04 | B | 80% | 262ms | Up |
| 2026-06-05 | B | 80% | 353ms | Up |