{"uid":"cap_U1c5-pJq_VKIP44yhrZ5Z","slug":"pjm-nowcast-rto-lmp-load-descriptive-statistics-66b21573","name":"PJM Nowcast — RTO LMP & Load Descriptive Statistics","description":"Trailing and semi-live descriptive statistics on PJM RTO LMP, selected zonal LMP price spreads, and RTO load. Not a forecast, signal, trading recommendation, or advice. Not a substitute for official PJM data products. Buyer beware: figures are aggregated from public market sources; freshness equals the last successful background poll. Descriptive statistics only. Not a forecast, signal, or trading recommendation. Aggregated from public market sources. Freshness depends on the last successful background poll.","url":"https://pjm-nowcast-production.up.railway.app/v1/nowcast/latest","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"families":{"type":"string","description":"Subset of rto_lmp, zonal_spread, rto_load. Default: all."}}},"responseSchema":{"type":"object","example":{"stale":false,"mix_n_obs":40,"price_vol":2.5,"ageSeconds":120,"mix_std_price":8.1,"price_vol_missing":false},"properties":{"asOf":{"type":"string","format":"date-time"},"kStar":{"type":["integer","null"],"description":"Regime route. Dominant state index."},"stale":{"type":"boolean"},"rtoLmp":{"type":"object"},"entropy":{"type":["number","null"],"description":"Regime route. HMM entropy; not a forecast."},"product":{"type":"string"},"rtoLoad":{"type":"object"},"polledAt":{"type":"string","format":"date-time"},"timezone":{"type":"string"},"mix_n_obs":{"type":["integer","null"],"description":"Latest only. Observation count paired with mix_std_price."},"price_vol":{"type":["number","null"],"description":"Latest only. Rolling realized LMP std in $/MWh from the last 8 SQLite RTO LMP prints (RMS of successive diffs; not annualized Black vol, not rtoLmp.std). Null when price_vol_missing is true."},"ageSeconds":{"type":"integer"},"disclaimer":{"type":"string"},"posteriors":{"type":"array","items":{"type":"number"},"description":"Regime route. State posteriors."},"resolution":{"type":"string"},"priorPeriod":{"type":"object"},"windowHours":{"type":"integer"},"zonalSpread":{"type":"object"},"maxAgeSeconds":{"type":"integer"},"mix_std_price":{"type":["number","null"],"description":"Latest only. Mixture std of RTO LMP in $/MWh from the poller mix.json sidecar. Not price_vol and not rtoLmp.std."},"observationCount":{"type":"integer"},"price_vol_missing":{"type":"boolean"}},"description":"Descriptive statistics envelope. Fields asOf, polledAt, ageSeconds, maxAgeSeconds, stale are always present."},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_KIT2B1USy1pyGztac1uhU","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns trailing and semi-live descriptive statistics on PJM RTO Locational Marginal Prices (LMP), selected zonal LMP price spreads, and RTO load.","exampleAgentPrompt":"Pull the latest PJM nowcast stats for RTO LMP and zonal spreads — I want to see current descriptive statistics including how stale the data is.","exampleUseCases":[{"title":"Energy analyst dashboard refresh","prompt":"Grab the latest PJM nowcast data for all families — RTO LMP, zonal spreads, and RTO load — and tell me the current stats, how many observations are in the window, and whether the data is fresh or stale."},{"title":"Zonal spread monitoring for arbitrage research","prompt":"I only need the zonal spread stats from PJM right now — pull just the zonal_spread family and tell me the current spread figures and when they were last polled."},{"title":"Grid load tracking for demand-side operations","prompt":"What does PJM grid load look like right now? Pull only the rto_load family from the nowcast and summarize the trailing statistics."}],"resultDescription":"A JSON envelope containing a timestamp (asOf), a staleness flag, age in seconds, the poll timestamp, timezone, window hours, observation count, and optional objects for rtoLmp (LMP descriptive statistics), zonalSpread (zonal LMP spread statistics), and rtoLoad (load statistics), plus prior period comparisons and a disclaimer string.","failureModes":["Stale data: the 'stale' flag is true when the background poll has not refreshed within maxAgeSeconds — data may be outdated","No data returned for a specific family if not available or if an invalid family name is supplied","Network or server error from the Railway deployment causing a non-200 response","Payment failure via x402 protocol resulting in a 402 Payment Required response before data is delivered"],"whenToPreferThis":"Choose this endpoint when you need a quick, low-cost snapshot of PJM RTO LMP, zonal spread, or load descriptive statistics without building your own PJM data pipeline. It is ideal for agents that need near-real-time energy market context for research, dashboards, or monitoring workflows. It is not suitable when you require official, certified PJM data, precise tick-level data, or forecasts.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T18:37:27.749Z","isFirstParty":false}