{"openapi":"3.1.0","info":{"title":"Netzhandwerker Energy Research Hub","version":"3.0.0","description":"EU power dispatch for wallet-enabled compute, DePIN, battery and power-trading agents. Public opportunity preflight plus two paid V3 products. Canonical payment: USDC on Base via x402.","contact":{"name":"Die Netzhandwerker","email":"info@netzhandwerker.de","url":"https://netzhandwerker.de"}},"servers":[{"url":"https://energy.netzhandwerker.de"}],"externalDocs":{"description":"Copy-paste x402 purchase quickstart with verified Node.js, Python, and curl flows","url":"https://energy.netzhandwerker.de/examples/quickstart"},"x-purchase-examples":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"components":{"securitySchemes":{"x402":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"Canonical x402 payment proof header. Production uses Base Mainnet (eip155:8453), chain 8453, USDC."}}},"x-service":{"endpoint_count":84,"paid_endpoint_count":31,"free_endpoint_count":53,"product_groups":[{"name":"Live Energy Data","description":"Raw data endpoints answer what is happening: prices, forecast, carbon intensity, grid load and renewable share.","endpoints":["/price/spot","/price/forecast","/carbon/now","/grid/load","/renewable/share"]},{"name":"Optimization Signals","description":"Decision endpoints answer what an agent should do next: EV charging, heat pump control, flexibility windows, battery arbitrage and trading signals.","endpoints":["/energy/decision","/optimizer/cheapest-window","/flexibility/window","/signals/buy-sell","/bundle/trading","/summary/today"]},{"name":"Research & Intelligence","description":"Research and intelligence endpoints produce market summaries, ESG reporting, track records and deeper energy research.","endpoints":["/research/quick","/research","/bundle/trading","/signals/track-record","/articles/{id}","/tasks"]}],"payment":{"protocol":"x402","asset":"USDC","assetAddress":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","walletAddress":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","networkName":"Base Mainnet","chainId":8453,"network":"eip155:8453","facilitator":"https://facilitator.xpay.sh","environment":"production","port":3007},"accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"},"payment_headers":{"primary":"PAYMENT-SIGNATURE","accepted":["PAYMENT-SIGNATURE","X-Payment","PAYMENT"],"challenge":["PAYMENT-REQUIRED"],"response":["PAYMENT-RESPONSE"]},"pricing":{"mode":"standard","active":false,"validUntil":null,"reason":"Stable pay-per-call pricing. No expired launch claim."},"purchase_examples":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"submit_need":{"method":"POST","url":"https://energy.netzhandwerker.de/demand/submit"},"demand_capture":{"honest_notice":"This endpoint is not available yet. You can request it.","purpose":"Submit an endpoint, data, decision or format request. This is a demand sensor, not a guarantee of implementation.","protocol":"x402","endpoint":"/demand/submit","method":"POST","submit_need":{"method":"POST","url":"https://energy.netzhandwerker.de/demand/submit"},"content_type":"application/json","fields":{"need":{"type":"string","description":"What endpoint, data, decision or signal does your agent want?"},"desired_endpoint":{"type":"string","description":"Preferred endpoint path, if known."},"desired_format":{"type":"string","enum":["json","mcp","openapi","csv","webhook"]},"max_budget_usdc":{"type":"number","description":"Maximum budget per call or request in USDC."},"recurring":{"type":"boolean"},"frequency":{"type":"string","enum":["one_time","hourly","daily","weekly","realtime"]},"required_freshness":{"type":"string"},"use_case":{"type":"string"},"agent_name":{"type":"string"},"agent_url":{"type":"string"},"wallet_type":{"type":"string"},"payment_network":{"type":"string"},"webhook_url":{"type":"string","description":"Optional. Stored, not called automatically."}},"hint_priority":"Optional 0.001 USDC payment lists your request as priority_demand.","optional_priority_price_usdc":0.001,"no_raw_payment_material_logged":true,"available_now":[{"method":"GET","path":"/v3/opportunities","payment_required":false,"price_usd":"0","category":"EU Power Dispatch","summary":"Find an energy opportunity"},{"method":"POST","path":"/v3/dispatch-plan","payment_required":true,"price_usd":"0.02","category":"EU Power Dispatch","summary":"Buy an executable dispatch plan"},{"method":"POST","path":"/v3/market-brief","payment_required":true,"price_usd":"0.05","category":"EU Power Dispatch","summary":"Buy a timestamped EU market brief"},{"method":"GET","path":"/","payment_required":false,"price_usd":"0","category":"Human and bot overview","summary":"Startseite mit serverseitigen Live-Werten"},{"method":"GET","path":"/health","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Health Check"},{"method":"GET","path":"/readiness","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Readiness Score"},{"method":"GET","path":"/discovery-status","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Agent Discovery Status"},{"method":"GET","path":"/agent-starter.json","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Agent Starter Pack"},{"method":"GET","path":"/directory-listing.json","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Directory Listing Pack"},{"method":"GET","path":"/distribution-kit","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Distribution Kit"},{"method":"GET","path":"/distribution-kit.json","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Distribution Kit JSON"},{"method":"GET","path":"/examples/agent-integrations","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Agent Integration Examples"},{"method":"GET","path":"/examples/agent-integrations.json","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Agent Integration Examples JSON"},{"method":"GET","path":"/examples/agent-integrations/README.md","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Agent Integration README"},{"method":"GET","path":"/docs","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Dokumentation"},{"method":"GET","path":"/openapi.json","payment_required":false,"price_usd":"0","category":"Discovery","summary":"OpenAPI 3.1 Spezifikation"},{"method":"GET","path":"/llms.txt","payment_required":false,"price_usd":"0","category":"Discovery","summary":"LLM Kurzkontext"},{"method":"GET","path":"/llms-full.txt","payment_required":false,"price_usd":"0","category":"Discovery","summary":"LLM Vollkontext"},{"method":"GET","path":"/robots.txt","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Robots Datei"},{"method":"GET","path":"/sitemap.xml","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Sitemap"},{"method":"GET","path":"/.well-known/ai-plugin.json","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"AI Plugin Manifest"},{"method":"GET","path":"/.well-known/mcp.json","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"MCP Discovery"},{"method":"GET","path":"/.well-known/agent.json","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"Agent Manifest"},{"method":"GET","path":"/.well-known/x402.json","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"x402 Manifest"},{"method":"GET","path":"/articles","payment_required":false,"price_usd":"0","category":"Free data","summary":"Artikel-Katalog"},{"method":"GET","path":"/capabilities","payment_required":false,"price_usd":"0","category":"Discovery","summary":"Capabilities"},{"method":"GET","path":"/agent","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"Agent Discovery"},{"method":"GET","path":"/pricing","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"Pricing"},{"method":"GET","path":"/trust","payment_required":false,"price_usd":"0","category":"Trust","summary":"Trust Page"},{"method":"GET","path":"/status","payment_required":false,"price_usd":"0","category":"Trust","summary":"Status"},{"method":"GET","path":"/sources","payment_required":false,"price_usd":"0","category":"Trust","summary":"Sources"},{"method":"GET","path":"/wallet-bot/needs-info","payment_required":false,"price_usd":"0","category":"Wallet Bot Feedback","summary":"Wallet Bot Needs Info"},{"method":"POST","path":"/wallet-bot/needs","payment_required":false,"price_usd":"0","category":"Wallet Bot Feedback","summary":"Submit Wallet Bot Need"},{"method":"GET","path":"/demand/submit","payment_required":true,"price_usd":"0.001","category":"Demand Intent Filter","summary":"Demand Intent Discovery"},{"method":"POST","path":"/demand/submit","payment_required":true,"price_usd":"0.001","category":"Demand Intent Filter","summary":"Submit endpoint demand"},{"method":"GET","path":"/for-ai-agents","payment_required":false,"price_usd":"0","category":"Bot Landingpages","summary":"For AI Agents"},{"method":"GET","path":"/for-mcp-clients","payment_required":false,"price_usd":"0","category":"Bot Landingpages","summary":"For MCP Clients"},{"method":"GET","path":"/for-x402-bots","payment_required":false,"price_usd":"0","category":"Bot Landingpages","summary":"For x402 Bots"},{"method":"GET","path":"/for-ev-charging-agents","payment_required":false,"price_usd":"0","category":"Bot Landingpages","summary":"For EV Charging Agents"},{"method":"GET","path":"/for-esg-reporting-agents","payment_required":false,"price_usd":"0","category":"Bot Landingpages","summary":"For ESG Reporting Agents"},{"method":"GET","path":"/for-energy-trading-agents","payment_required":false,"price_usd":"0","category":"Bot Landingpages","summary":"For Energy Trading Agents"},{"method":"GET","path":"/sample/research","payment_required":false,"price_usd":"0","category":"Free data","summary":"Research Sample"},{"method":"GET","path":"/sample/articles","payment_required":false,"price_usd":"0","category":"Free data","summary":"Artikel-Snippet"},{"method":"GET","path":"/mcp","payment_required":false,"price_usd":"0","category":"MCP","summary":"MCP Discovery"},{"method":"POST","path":"/mcp","payment_required":false,"price_usd":"0","category":"MCP","summary":"MCP JSON-RPC Endpoint"},{"method":"GET","path":"/agent-manifest","payment_required":false,"price_usd":"0","category":"Bot Discovery","summary":"Agent Manifest"},{"method":"GET","path":"/metrics","payment_required":false,"price_usd":"0","category":"Observability","summary":"Prometheus Metrics"},{"method":"GET","path":"/signals/track-record","payment_required":false,"price_usd":"0","category":"Trust","summary":"Track Record"},{"method":"GET","path":"/trust/dashboard","payment_required":false,"price_usd":"0","category":"Trust","summary":"Live Trust Dashboard JSON"},{"method":"GET","path":"/trust","payment_required":false,"price_usd":"0","category":"Trust","summary":"Live Trust Dashboard HTML"},{"method":"GET","path":"/tasks/{id}/result","payment_required":false,"price_usd":"0","category":"Async Tasks","summary":"Task Ergebnis"},{"method":"GET","path":"/netzhandwerker-radar","payment_required":false,"price_usd":"0","category":"Protected dashboard","summary":"Bot-Radar Dashboard"},{"method":"GET","path":"/research","payment_required":true,"price_usd":"0.05","category":"Payment Discovery","summary":"Research Payment Requirements"},{"method":"GET","path":"/articles/{id}","payment_required":true,"price_usd":"0.01","category":"Payment Discovery","summary":"Article Payment Requirements"},{"method":"GET","path":"/tasks","payment_required":true,"price_usd":"0.10","category":"Payment Discovery","summary":"Task Payment Requirements"},{"method":"POST","path":"/research","payment_required":true,"price_usd":"0.05","category":"Research","summary":"Energy Research"},{"method":"GET","path":"/demo/paid-sample","payment_required":true,"price_usd":"0.001","category":"Optimization Signals","summary":"x402 Paid Signal Test"},{"method":"GET","path":"/energy/decision","payment_required":false,"price_usd":"0","category":"Optimization Signals","summary":"Energy Decision Discovery"},{"method":"POST","path":"/energy/decision","payment_required":true,"price_usd":"0.01","category":"Optimization Signals","summary":"Energy Decision"},{"method":"POST","path":"/research/quick","payment_required":true,"price_usd":"0.003","category":"Research","summary":"Quick Research"},{"method":"POST","path":"/articles/{id}","payment_required":true,"price_usd":"0.01","category":"Premium content","summary":"Premium Artikel"},{"method":"POST","path":"/tasks","payment_required":true,"price_usd":"0.10","category":"Async Tasks","summary":"Async Bounty Task"},{"method":"POST","path":"/price/spot","payment_required":true,"price_usd":"0.001","category":"Live Energy Data API","summary":"Spotpreis jetzt"},{"method":"GET","path":"/price/current","payment_required":false,"price_usd":"0","category":"Live Energy Data API","summary":"Current Price DE/AT"},{"method":"POST","path":"/price/forecast","payment_required":true,"price_usd":"0.005","category":"Live Energy Data API","summary":"24h Preis-Forecast"},{"method":"POST","path":"/carbon/now","payment_required":true,"price_usd":"0.001","category":"Live Energy Data API","summary":"CO2-IntensitÃ¤t jetzt"},{"method":"POST","path":"/grid/load","payment_required":true,"price_usd":"0.001","category":"Live Energy Data API","summary":"Netzlast"},{"method":"POST","path":"/renewable/share","payment_required":true,"price_usd":"0.001","category":"Live Energy Data API","summary":"Erneuerbare Anteil"},{"method":"POST","path":"/flexibility/window","payment_required":true,"price_usd":"0.01","category":"Optimization","summary":"Flexibility Window"},{"method":"POST","path":"/signals/buy-sell","payment_required":true,"price_usd":"0.02","category":"Trading","summary":"Buy/Sell Signal"},{"method":"POST","path":"/bundle/trading","payment_required":true,"price_usd":"0.02","category":"Bundles","summary":"Trading Bundle"},{"method":"POST","path":"/history/prices","payment_required":true,"price_usd":"0.05","category":"History","summary":"Historische Preise"},{"method":"POST","path":"/history/prices/stats","payment_required":true,"price_usd":"0.01","category":"History","summary":"Preisstatistik"},{"method":"POST","path":"/subscribe/price-alert","payment_required":true,"price_usd":"0.10","category":"Subscriptions","summary":"Price Alert Subscription"},{"method":"POST","path":"/subscribe/co2-low","payment_required":true,"price_usd":"0.10","category":"Subscriptions","summary":"CO2 Low Subscription"},{"method":"POST","path":"/optimizer/cheapest-window","payment_required":true,"price_usd":"0.005","category":"Optimization","summary":"Cheapest Window"},{"method":"POST","path":"/price/negative-forecast","payment_required":true,"price_usd":"0.005","category":"Trading","summary":"Negative Price Forecast"},{"method":"GET","path":"/grid/cross-border-flows","payment_required":false,"price_usd":"0","category":"Live Energy Data API","summary":"Cross-Border Flows"},{"method":"GET","path":"/stream/alerts","payment_required":false,"price_usd":"0","category":"Alerts","summary":"SSE Alert Stream"},{"method":"GET","path":"/predict/negative-price","payment_required":false,"price_usd":"0","category":"Trading","summary":"Negative Price Signal Index"},{"method":"POST","path":"/predict/negative-price","payment_required":true,"price_usd":"0.001","category":"Trading","summary":"Buy Current Negative Price Signal"},{"method":"POST","path":"/summary/today","payment_required":true,"price_usd":"0.01","category":"Agent Decisions","summary":"Daily Summary"},{"method":"POST","path":"/region","payment_required":true,"price_usd":"0.005","category":"Regional","summary":"Regionale Energiedaten"},{"method":"POST","path":"/events/grid","payment_required":true,"price_usd":"0.005","category":"Grid","summary":"Grid Events"}]},"x-guidance":{"wallet_bot_need_request":{"question":"What does your wallet-enabled agent need from this energy API?","submit":{"method":"POST","endpoint":"/wallet-bot/needs","content_type":"application/json"},"examples":["I need live EPEX prices for Germany every hour.","I need a battery arbitrage schedule.","I need CO2-low charging windows.","I need Redispatch risk by region.","I need webhook alerts for negative prices."],"optional_fields":["wallet_type","payment_network","max_budget_usdc","desired_output_format","recurring_need"]},"submit_need_endpoint":"/wallet-bot/needs","needs_info_endpoint":"/wallet-bot/needs-info"}},"paths":{"/v3/opportunities":{"get":{"operationId":"gETV3Opportunities","tags":["EU Power Dispatch"],"summary":"Find an energy opportunity","description":"Public preflight for deadline-aware compute, DePIN, battery and power-trading workloads in Germany and Europe. Returns only actionability and value bands; exact execution timing remains in the paid dispatch plan.","security":[],"parameters":[{"name":"region","in":"query","required":true,"schema":{"type":"string","example":"DE-LU"}},{"name":"use_case","in":"query","required":true,"schema":{"type":"string","enum":["compute","depin","battery","trading"]}},{"name":"duration_minutes","in":"query","required":true,"schema":{"type":"integer","minimum":60,"maximum":1440,"multipleOf":60,"description":"Hourly granularity until 15-minute ENTSO-E ingestion is production-verified."}},{"name":"deadline","in":"query","required":true,"schema":{"type":"string","format":"date-time"}},{"name":"power_kw","in":"query","required":false,"schema":{"type":"number","exclusiveMinimum":0}},{"name":"energy_kwh","in":"query","required":false,"schema":{"type":"number","exclusiveMinimum":0}}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"opportunity_id":"opp_example_01","buy_recommended":true,"actionability":"high","expected_savings_band_eur":"1.00-5.00","carbon_band":"unknown","confidence_band":"high","generated_at":"2026-07-30T10:00:00.000Z","expires_at":"2026-07-30T10:15:00.000Z","data_freshness":{"status":"current","source":"ENTSO-E Transparency Platform A44","observed_through":"2026-07-31T22:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","license":"CC BY 4.0","attribution":"ENTSO-E Transparency Platform","licence_scope":"A44 day-ahead prices; DE-LU; preflight"},"paid_endpoint":"https://energy.netzhandwerker.de/v3/dispatch-plan","price_usdc":0.02,"model_version":"dispatch-deterministic-3.0.0"},"schema":{"type":"object","properties":{"opportunity_id":{"type":"string"},"buy_recommended":{"type":"boolean"},"actionability":{"type":"string"},"expected_savings_band_eur":{"type":"string"},"carbon_band":{"type":"string"},"confidence_band":{"type":"string"},"generated_at":{"type":"string"},"expires_at":{"type":"string"},"data_freshness":{"type":"object","properties":{"status":{"type":"string"},"source":{"type":"string"},"observed_through":{"type":"string"},"fetched_at":{"type":"string"},"license":{"type":"string"},"attribution":{"type":"string"},"licence_scope":{"type":"string"}},"required":["status","source","observed_through","fetched_at","license","attribution","licence_scope"],"additionalProperties":true},"paid_endpoint":{"type":"string"},"price_usdc":{"type":"number"},"model_version":{"type":"string"}},"required":["opportunity_id","buy_recommended","actionability","expected_savings_band_eur","carbon_band","confidence_band","generated_at","expires_at","data_freshness","paid_endpoint","price_usdc","model_version"],"additionalProperties":true}}}},"400":{"description":"Invalid region, use case, duration, deadline or energy constraint","content":{"application/json":{"example":{"error":"invalid_region_use_case_duration_deadline_or_energy_constraint"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}},"503":{"description":"Source is stale, unlicensed, missing or schema-incompatible; no opportunity is created","content":{"application/json":{"example":{"error":"source_is_stale_unlicensed_missing_or_schema_incompatible_no_opportunity_is_created"}}}}}}},"/v3/dispatch-plan":{"post":{"operationId":"pOSTV3DispatchPlan","tags":["EU Power Dispatch"],"summary":"Buy an executable dispatch plan","description":"Schedules a deadline-bound compute, DePIN, battery or power-trading workload into an actionable German or European power window. Returns exact timing, expected EUR cost and savings, uncertainty, freshness, expiry and decision trace.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["opportunity_id","power_kw","energy_kwh","deadline","risk_profile"],"properties":{"opportunity_id":{"type":"string"},"power_kw":{"type":"number","exclusiveMinimum":0},"energy_kwh":{"type":"number","exclusiveMinimum":0},"deadline":{"type":"string","format":"date-time"},"risk_profile":{"type":"string","enum":["conservative","balanced","aggressive"]},"constraints":{"type":"object","properties":{"earliest_start":{"type":"string","format":"date-time"},"latest_end":{"type":"string","format":"date-time"},"max_price_eur_mwh":{"type":"number","minimum":-1000,"maximum":10000},"must_run_continuously":{"type":"boolean","const":true}},"additionalProperties":false}},"additionalProperties":false},"example":{"opportunity_id":"opp_example_01","power_kw":25,"energy_kwh":50,"deadline":"2026-07-31T06:00:00.000Z","risk_profile":"balanced","constraints":{"earliest_start":"2026-07-30T18:00:00.000Z"}}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"schedule_start":"2026-07-31T01:00:00.000Z","schedule_end":"2026-07-31T03:00:00.000Z","action":"schedule","expected_cost_eur":4.12,"expected_savings_eur":1.38,"baseline_cost_eur":5.5,"expected_carbon_effect":"unknown","confidence":0.95,"uncertainty":{"type":"deterministic_day_ahead_market_data","price_range_eur_mwh":[82.4,82.4],"forecast_signal":"experimental_not_used_for_schedule"},"source_timestamps":{"first_available":"2026-07-30T10:00:00.000Z","last_available":"2026-07-31T22:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","observed_through":"2026-07-31T22:00:00.000Z"},"source_attribution":{"attribution":"ENTSO-E Transparency Platform","licence":"CC BY 4.0","licence_scope":"A44 day-ahead prices; DE-LU; preflight"},"model_version":"dispatch-deterministic-3.0.0","expires_at":"2026-07-30T10:15:00.000Z","risk_flags":[],"decision_trace":["constraints_validated","candidate_windows_ranked","lowest_cost_feasible_window_selected"],"payment_receipt":{"protocol":"x402","network":"eip155:8453","idempotent_replay":false}},"schema":{"type":"object","properties":{"schedule_start":{"type":"string"},"schedule_end":{"type":"string"},"action":{"type":"string"},"expected_cost_eur":{"type":"number"},"expected_savings_eur":{"type":"number"},"baseline_cost_eur":{"type":"number"},"expected_carbon_effect":{"type":"string"},"confidence":{"type":"number"},"uncertainty":{"type":"object","properties":{"type":{"type":"string"},"price_range_eur_mwh":{"type":"array","items":{"type":"number"}},"forecast_signal":{"type":"string"}},"required":["type","price_range_eur_mwh","forecast_signal"],"additionalProperties":true},"source_timestamps":{"type":"object","properties":{"first_available":{"type":"string"},"last_available":{"type":"string"},"fetched_at":{"type":"string"},"observed_through":{"type":"string"}},"required":["first_available","last_available","fetched_at","observed_through"],"additionalProperties":true},"source_attribution":{"type":"object","properties":{"attribution":{"type":"string"},"licence":{"type":"string"},"licence_scope":{"type":"string"}},"required":["attribution","licence","licence_scope"],"additionalProperties":true},"model_version":{"type":"string"},"expires_at":{"type":"string"},"risk_flags":{"type":"array","items":{}},"decision_trace":{"type":"array","items":{"type":"string"}},"payment_receipt":{"type":"object","properties":{"protocol":{"type":"string"},"network":{"type":"string"},"idempotent_replay":{"type":"boolean"}},"required":["protocol","network","idempotent_replay"],"additionalProperties":true}},"required":["schedule_start","schedule_end","action","expected_cost_eur","expected_savings_eur","baseline_cost_eur","expected_carbon_effect","confidence","uncertainty","source_timestamps","source_attribution","model_version","expires_at","risk_flags","decision_trace","payment_receipt"],"additionalProperties":true}}}},"400":{"description":"Invalid technical constraints","content":{"application/json":{"example":{"error":"invalid_technical_constraints"}}}},"402":{"description":"x402 payment required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.02,"resource":{"url":"https://energy.netzhandwerker.de/v3/dispatch-plan","method":"POST","description":"Schedules a deadline-bound compute, DePIN, battery or power-trading workload into an actionable German or European power window. Returns exact timing, expected EUR cost and savings, uncertainty, freshness, expiry and decision trace.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"extensions":{"bazaar":{"info":{"input":{"type":"http","method":"POST","bodyType":"json","body":{"opportunity_id":"opp_example_01","power_kw":25,"energy_kwh":50,"deadline":"2026-07-31T06:00:00.000Z","risk_profile":"balanced","constraints":{"earliest_start":"2026-07-30T18:00:00.000Z"}}},"output":{"type":"json","example":{"schedule_start":"2026-07-31T01:00:00.000Z","schedule_end":"2026-07-31T03:00:00.000Z","action":"schedule","expected_cost_eur":4.12,"expected_savings_eur":1.38,"baseline_cost_eur":5.5,"expected_carbon_effect":"unknown","confidence":0.95,"uncertainty":{"type":"deterministic_day_ahead_market_data","price_range_eur_mwh":[82.4,82.4],"forecast_signal":"experimental_not_used_for_schedule"},"source_timestamps":{"first_available":"2026-07-30T10:00:00.000Z","last_available":"2026-07-31T22:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","observed_through":"2026-07-31T22:00:00.000Z"},"source_attribution":{"attribution":"ENTSO-E Transparency Platform","licence":"CC BY 4.0","licence_scope":"A44 day-ahead prices; DE-LU; preflight"},"model_version":"dispatch-deterministic-3.0.0","expires_at":"2026-07-30T10:15:00.000Z","risk_flags":[],"decision_trace":["constraints_validated","candidate_windows_ranked","lowest_cost_feasible_window_selected"],"payment_receipt":{"protocol":"x402","network":"eip155:8453","idempotent_replay":false}}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","required":["opportunity_id","power_kw","energy_kwh","deadline","risk_profile"],"properties":{"opportunity_id":{"type":"string"},"power_kw":{"type":"number","exclusiveMinimum":0},"energy_kwh":{"type":"number","exclusiveMinimum":0},"deadline":{"type":"string"},"risk_profile":{"type":"string","enum":["conservative","balanced","aggressive"]},"constraints":{"type":"object","properties":{"earliest_start":{"type":"string"},"latest_end":{"type":"string"},"max_price_eur_mwh":{"type":"number","minimum":-1000,"maximum":10000},"must_run_continuously":{"type":"boolean","const":true}},"additionalProperties":false}},"additionalProperties":false}},"required":["type","method","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object"}},"required":["type"]}},"required":["input"]}}},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.02","amount_units":"20000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"20000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"409":{"description":"Opportunity is invalid, expired or incompatible; no settlement attempted","content":{"application/json":{"example":{"error":"opportunity_is_invalid_expired_or_incompatible_no_settlement_attempted"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}},"503":{"description":"Source is stale, unlicensed, missing or schema-incompatible; no settlement is attempted","content":{"application/json":{"example":{"error":"source_is_stale_unlicensed_missing_or_schema_incompatible_no_settlement_is_attempted"}}}}}}},"/v3/market-brief":{"post":{"operationId":"pOSTV3MarketBrief","tags":["EU Power Dispatch"],"summary":"Buy a timestamped EU market brief","description":"Returns licensed ENTSO-E and SMARD spot-market context for compute, DePIN, battery and power-trading agents: published day-ahead prices, volatility, load, renewable share when available, the observed share of published negative-price hours, uncertainty, freshness and expiry.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["region","horizon_hours","use_case"],"properties":{"region":{"type":"string","example":"DE-LU"},"horizon_hours":{"type":"integer","minimum":1,"maximum":48},"use_case":{"type":"string","enum":["compute","depin","battery","trading"]}},"additionalProperties":false},"example":{"region":"DE-LU","horizon_hours":24,"use_case":"trading"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"spot_market":{"region":"DE-LU","currency":"EUR/MWh"},"price_forecast":[{"start":"2026-07-30T11:00:00.000Z","end":"2026-07-30T12:00:00.000Z","price_eur_mwh":71.2,"type":"published_day_ahead"}],"volatility":{"standard_deviation_eur_mwh":12.4,"band":"low"},"load":{"value_mw":54321,"timestamp":"2026-07-30T09:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","source":"SMARD.de"},"renewable_share":{"value_pct":52.1,"method":"renewable_generation_as_share_of_load","timestamp":"2026-07-30T09:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","source":"SMARD.de"},"negative_price_probability":{"value":0.18,"method":"published_day_ahead_share","forecast_status":"not_used"},"uncertainty":{"published_price_hours":24,"missing_price_hours":0,"negative_price_ml_status":"not_used"},"source_timestamps":{"generated_at":"2026-07-30T10:00:00.000Z","spot_observed_through":"2026-07-31T10:00:00.000Z","spot_fetched_at":"2026-07-30T09:45:00.000Z","load_observed_at":"2026-07-30T09:00:00.000Z"},"source_attributions":[{"source_id":"entsoe_day_ahead","attribution":"ENTSO-E Transparency Platform","licence":"CC BY 4.0"},{"source_id":"smard_load","attribution":"Bundesnetzagentur | SMARD.de","licence":"CC BY 4.0"},{"source_id":"smard_generation","attribution":"Bundesnetzagentur | SMARD.de","licence":"CC BY 4.0"}],"model_version":"dispatch-deterministic-3.0.0","expires_at":"2026-07-30T10:15:00.000Z","payment_receipt":{"protocol":"x402","network":"eip155:8453","idempotent_replay":false}},"schema":{"type":"object","properties":{"spot_market":{"type":"object","properties":{"region":{"type":"string"},"currency":{"type":"string"}},"required":["region","currency"],"additionalProperties":true},"price_forecast":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"},"price_eur_mwh":{"type":"number"},"type":{"type":"string"}},"required":["start","end","price_eur_mwh","type"],"additionalProperties":true}},"volatility":{"type":"object","properties":{"standard_deviation_eur_mwh":{"type":"number"},"band":{"type":"string"}},"required":["standard_deviation_eur_mwh","band"],"additionalProperties":true},"load":{"type":"object","properties":{"value_mw":{"type":"integer"},"timestamp":{"type":"string"},"fetched_at":{"type":"string"},"source":{"type":"string"}},"required":["value_mw","timestamp","fetched_at","source"],"additionalProperties":true},"renewable_share":{"type":"object","properties":{"value_pct":{"type":"number"},"method":{"type":"string"},"timestamp":{"type":"string"},"fetched_at":{"type":"string"},"source":{"type":"string"}},"required":["value_pct","method","timestamp","fetched_at","source"],"additionalProperties":true},"negative_price_probability":{"type":"object","properties":{"value":{"type":"number"},"method":{"type":"string"},"forecast_status":{"type":"string"}},"required":["value","method","forecast_status"],"additionalProperties":true},"uncertainty":{"type":"object","properties":{"published_price_hours":{"type":"integer"},"missing_price_hours":{"type":"integer"},"negative_price_ml_status":{"type":"string"}},"required":["published_price_hours","missing_price_hours","negative_price_ml_status"],"additionalProperties":true},"source_timestamps":{"type":"object","properties":{"generated_at":{"type":"string"},"spot_observed_through":{"type":"string"},"spot_fetched_at":{"type":"string"},"load_observed_at":{"type":"string"}},"required":["generated_at","spot_observed_through","spot_fetched_at","load_observed_at"],"additionalProperties":true},"source_attributions":{"type":"array","items":{"type":"object","properties":{"source_id":{"type":"string"},"attribution":{"type":"string"},"licence":{"type":"string"}},"required":["source_id","attribution","licence"],"additionalProperties":true}},"model_version":{"type":"string"},"expires_at":{"type":"string"},"payment_receipt":{"type":"object","properties":{"protocol":{"type":"string"},"network":{"type":"string"},"idempotent_replay":{"type":"boolean"}},"required":["protocol","network","idempotent_replay"],"additionalProperties":true}},"required":["spot_market","price_forecast","volatility","load","renewable_share","negative_price_probability","uncertainty","source_timestamps","source_attributions","model_version","expires_at","payment_receipt"],"additionalProperties":true}}}},"400":{"description":"Invalid region, horizon or use case","content":{"application/json":{"example":{"error":"invalid_region_horizon_or_use_case"}}}},"402":{"description":"x402 payment required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.05,"resource":{"url":"https://energy.netzhandwerker.de/v3/market-brief","method":"POST","description":"Returns licensed ENTSO-E and SMARD spot-market context for compute, DePIN, battery and power-trading agents: published day-ahead prices, volatility, load, renewable share when available, the observed share of published negative-price hours, uncertainty, freshness and expiry.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"extensions":{"bazaar":{"info":{"input":{"type":"http","method":"POST","bodyType":"json","body":{"region":"DE-LU","horizon_hours":24,"use_case":"trading"}},"output":{"type":"json","example":{"spot_market":{"region":"DE-LU","currency":"EUR/MWh"},"price_forecast":[{"start":"2026-07-30T11:00:00.000Z","end":"2026-07-30T12:00:00.000Z","price_eur_mwh":71.2,"type":"published_day_ahead"}],"volatility":{"standard_deviation_eur_mwh":12.4,"band":"low"},"load":{"value_mw":54321,"timestamp":"2026-07-30T09:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","source":"SMARD.de"},"renewable_share":{"value_pct":52.1,"method":"renewable_generation_as_share_of_load","timestamp":"2026-07-30T09:00:00.000Z","fetched_at":"2026-07-30T09:45:00.000Z","source":"SMARD.de"},"negative_price_probability":{"value":0.18,"method":"published_day_ahead_share","forecast_status":"not_used"},"uncertainty":{"published_price_hours":24,"missing_price_hours":0,"negative_price_ml_status":"not_used"},"source_timestamps":{"generated_at":"2026-07-30T10:00:00.000Z","spot_observed_through":"2026-07-31T10:00:00.000Z","spot_fetched_at":"2026-07-30T09:45:00.000Z","load_observed_at":"2026-07-30T09:00:00.000Z"},"source_attributions":[{"source_id":"entsoe_day_ahead","attribution":"ENTSO-E Transparency Platform","licence":"CC BY 4.0"},{"source_id":"smard_load","attribution":"Bundesnetzagentur | SMARD.de","licence":"CC BY 4.0"},{"source_id":"smard_generation","attribution":"Bundesnetzagentur | SMARD.de","licence":"CC BY 4.0"}],"model_version":"dispatch-deterministic-3.0.0","expires_at":"2026-07-30T10:15:00.000Z","payment_receipt":{"protocol":"x402","network":"eip155:8453","idempotent_replay":false}}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","required":["region","horizon_hours","use_case"],"properties":{"region":{"type":"string","example":"DE-LU"},"horizon_hours":{"type":"integer","minimum":1,"maximum":48},"use_case":{"type":"string","enum":["compute","depin","battery","trading"]}},"additionalProperties":false}},"required":["type","method","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object"}},"required":["type"]}},"required":["input"]}}},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.05","amount_units":"50000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}},"503":{"description":"Source is stale, unlicensed, missing or schema-incompatible; no settlement is attempted","content":{"application/json":{"example":{"error":"source_is_stale_unlicensed_missing_or_schema_incompatible_no_settlement_is_attempted"}}}}}}},"/":{"get":{"operationId":"gET","tags":["Human and bot overview"],"summary":"Startseite mit serverseitigen Live-Werten","description":"Bot-taugliche HTML-Ãœbersicht mit Live-Kennzahlen, Preisen, Payment und Agent-Zugriff.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>Energy Research Hub overview</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/health":{"get":{"operationId":"gETHealth","tags":["Discovery"],"summary":"Health Check","description":"Status, Version, Uptime, Port, x402-Konfiguration und relevante Links ohne Secrets.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"status":"ok","service":"energy-research-hub","version":"3.0.0","network":"Base Mainnet"},"schema":{"type":"object","properties":{"status":{"type":"string"},"service":{"type":"string"},"version":{"type":"string"},"network":{"type":"string"}},"required":["status","service","version","network"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/readiness":{"get":{"operationId":"gETReadiness","tags":["Discovery"],"summary":"Readiness Score","description":"Maschinenlesbarer 10/10-Readiness-Check fuer Infrastruktur, Bot-Discovery und Kaufbarkeit.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"ratings":{"infrastructure":"10/10","bot_discovery":"10/10","purchase_readiness":"10/10"}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"ratings":{"type":"object","properties":{"infrastructure":{"type":"string"},"bot_discovery":{"type":"string"},"purchase_readiness":{"type":"string"}},"required":["infrastructure","bot_discovery","purchase_readiness"],"additionalProperties":true}},"required":["ok","ratings"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/discovery-status":{"get":{"operationId":"gETDiscoveryStatus","tags":["Discovery"],"summary":"Agent Discovery Status","description":"Maschinenlesbare Ãœbersicht fÃ¼r Agent-Verzeichnisse, x402-Scanner, MCP-Clients und LLM-Crawler.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"service":"energy-research-hub","links":{"home":"https://energy.netzhandwerker.de","status":"https://energy.netzhandwerker.de/status","health":"https://energy.netzhandwerker.de/health","discovery_status":"https://energy.netzhandwerker.de/discovery-status","agent_starter":"https://energy.netzhandwerker.de/agent-starter.json","directory_listing":"https://energy.netzhandwerker.de/directory-listing.json","pricing":"https://energy.netzhandwerker.de/pricing","docs":"https://energy.netzhandwerker.de/docs","purchase_quickstart":"https://energy.netzhandwerker.de/examples/quickstart","purchase_nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","purchase_python":"https://energy.netzhandwerker.de/examples/buy-python","purchase_curl":"https://energy.netzhandwerker.de/examples/buy-curl","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp","x402":"https://energy.netzhandwerker.de/.well-known/x402.json","x402_alias":"https://energy.netzhandwerker.de/.well-known/x402","agent":"https://energy.netzhandwerker.de/.well-known/agent.json","agent_alias":"https://energy.netzhandwerker.de/.well-known/agent","mcp_manifest":"https://energy.netzhandwerker.de/.well-known/mcp.json","mcp_manifest_alias":"https://energy.netzhandwerker.de/.well-known/mcp","ai_plugin":"https://energy.netzhandwerker.de/.well-known/ai-plugin.json","llms":"https://energy.netzhandwerker.de/llms.txt","llms_full":"https://energy.netzhandwerker.de/llms-full.txt","sitemap":"https://energy.netzhandwerker.de/sitemap.xml","robots":"https://energy.netzhandwerker.de/robots.txt","demand_submit":"https://energy.netzhandwerker.de/demand/submit","demand_requested":"https://energy.netzhandwerker.de/demand/requested","distribution_kit":"https://energy.netzhandwerker.de/distribution-kit","distribution_kit_json":"https://energy.netzhandwerker.de/distribution-kit.json","example_agent_integrations":"https://energy.netzhandwerker.de/examples/agent-integrations","example_agent_integrations_json":"https://energy.netzhandwerker.de/examples/agent-integrations.json","example_agent_integrations_readme":"https://energy.netzhandwerker.de/examples/agent-integrations/README.md","example_agent_integrations_archive":"https://energy.netzhandwerker.de/downloads/energy-hub-agent-examples.zip","mcp_registry_metadata":"https://energy.netzhandwerker.de/.well-known/mcp-registry/server.json","x402scan":"https://www.x402scan.com/recipient/0x2880edfff13100677bf97a3cbdf3bc34771c4e5e/resources","for_x402_bots":"https://energy.netzhandwerker.de/for-x402-bots","for_mcp_clients":"https://energy.netzhandwerker.de/for-mcp-clients"}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"service":{"type":"string"},"links":{"type":"object","properties":{"home":{"type":"string"},"status":{"type":"string"},"health":{"type":"string"},"discovery_status":{"type":"string"},"agent_starter":{"type":"string"},"directory_listing":{"type":"string"},"pricing":{"type":"string"},"docs":{"type":"string"},"purchase_quickstart":{"type":"string"},"purchase_nodejs":{"type":"string"},"purchase_python":{"type":"string"},"purchase_curl":{"type":"string"},"openapi":{"type":"string"},"mcp":{"type":"string"},"x402":{"type":"string"},"x402_alias":{"type":"string"},"agent":{"type":"string"},"agent_alias":{"type":"string"},"mcp_manifest":{"type":"string"},"mcp_manifest_alias":{"type":"string"},"ai_plugin":{"type":"string"},"llms":{"type":"string"},"llms_full":{"type":"string"},"sitemap":{"type":"string"},"robots":{"type":"string"},"demand_submit":{"type":"string"},"demand_requested":{"type":"string"},"distribution_kit":{"type":"string"},"distribution_kit_json":{"type":"string"},"example_agent_integrations":{"type":"string"},"example_agent_integrations_json":{"type":"string"},"example_agent_integrations_readme":{"type":"string"},"example_agent_integrations_archive":{"type":"string"},"mcp_registry_metadata":{"type":"string"},"x402scan":{"type":"string"},"for_x402_bots":{"type":"string"},"for_mcp_clients":{"type":"string"}},"required":["home","status","health","discovery_status","agent_starter","directory_listing","pricing","docs","purchase_quickstart","purchase_nodejs","purchase_python","purchase_curl","openapi","mcp","x402","x402_alias","agent","agent_alias","mcp_manifest","mcp_manifest_alias","ai_plugin","llms","llms_full","sitemap","robots","demand_submit","demand_requested","distribution_kit","distribution_kit_json","example_agent_integrations","example_agent_integrations_json","example_agent_integrations_readme","example_agent_integrations_archive","mcp_registry_metadata","x402scan","for_x402_bots","for_mcp_clients"],"additionalProperties":true}},"required":["ok","service","links"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/agent-starter.json":{"get":{"operationId":"gETAgentStarterJson","tags":["Discovery"],"summary":"Agent Starter Pack","description":"Kompakter Startpunkt fÃ¼r autonome Agenten mit gÃ¼nstigstem Test-Call, wichtigstem Paid Call, Demand-Submit und allen Discovery-Links.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"cheapest_test_call":"/demo/paid-sample","paid_decision_call":"/energy/decision"},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"cheapest_test_call":{"type":"string"},"paid_decision_call":{"type":"string"}},"required":["ok","cheapest_test_call","paid_decision_call"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/directory-listing.json":{"get":{"operationId":"gETDirectoryListingJson","tags":["Discovery"],"summary":"Directory Listing Pack","description":"Maschinenlesbare Listing-Daten fÃ¼r 402-, MCP-, OpenAPI- und Agent-Verzeichnisse.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"title":"Netzhandwerker Energy Research Hub","tags":["energy","x402","USDC","Base"]},"schema":{"type":"object","properties":{"title":{"type":"string"},"tags":{"type":"array","items":{"type":"string"}}},"required":["title","tags"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/distribution-kit":{"get":{"operationId":"gETDistributionKit","tags":["Discovery"],"summary":"Distribution Kit","description":"HTML-Ãœbersicht mit Directory-Copy, Discovery-Links, Facilitator-Status und realistischen nÃ¤chsten Verteilungsschritten.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":"<html>Distribution kit</html>","schema":{"type":"string"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/distribution-kit.json":{"get":{"operationId":"gETDistributionKitJson","tags":["Discovery"],"summary":"Distribution Kit JSON","description":"Maschinenlesbares Paket fÃ¼r 402-, MCP-, Agent- und API-Verzeichnisse.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"directories":["402index","x402 Bazaar","MCP directories"]},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"directories":{"type":"array","items":{"type":"string"}}},"required":["ok","directories"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/examples/agent-integrations":{"get":{"operationId":"gETExamplesAgentIntegrations","tags":["Discovery"],"summary":"Agent Integration Examples","description":"GitHub-ready Beispielpaket fÃ¼r CrewAI, LangGraph, AutoGen-kompatible Tools und MCP-Clients.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":"<html>Agent integration examples</html>","schema":{"type":"string"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/examples/agent-integrations.json":{"get":{"operationId":"gETExamplesAgentIntegrationsJson","tags":["Discovery"],"summary":"Agent Integration Examples JSON","description":"Dateimap fÃ¼r ein Beispiel-Repository mit fertigen Agent-Integrationen.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"files":["README.md","crewai_energy_tool.py","langgraph_energy_node.py"]},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"files":{"type":"array","items":{"type":"string"}}},"required":["ok","files"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/examples/agent-integrations/README.md":{"get":{"operationId":"gETExamplesAgentIntegrationsREADMEMd","tags":["Discovery"],"summary":"Agent Integration README","description":"Markdown-README fÃ¼r ein GitHub-ready Beispiel-Repository.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":"# Netzhandwerker Energy Hub Agent Examples","schema":{"type":"string"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/docs":{"get":{"operationId":"gETDocs","tags":["Discovery"],"summary":"Dokumentation","description":"HTML-Dokumentation aus derselben Endpunktliste wie OpenAPI und MCP.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>API docs</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/openapi.json":{"get":{"operationId":"gETOpenapiJson","tags":["Discovery"],"summary":"OpenAPI 3.1 Spezifikation","description":"Maschinenlesbare OpenAPI-Spezifikation fÃ¼r alle dokumentierten Public Routes.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"openapi":"3.1.0","info":{"title":"Netzhandwerker Energy Research Hub"}},"schema":{"type":"object","properties":{"openapi":{"type":"string"},"info":{"type":"object","properties":{"title":{"type":"string"}},"required":["title"],"additionalProperties":true}},"required":["openapi","info"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/llms.txt":{"get":{"operationId":"gETLlmsTxt","tags":["Discovery"],"summary":"LLM Kurzkontext","description":"Kompakte Textdatei fÃ¼r Bots, Crawler und Agenten.","security":[],"responses":{"200":{"description":"OK","content":{"text/plain":{"example":"Name: Netzhandwerker Energy Research Hub"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/llms-full.txt":{"get":{"operationId":"gETLlmsFullTxt","tags":["Discovery"],"summary":"LLM Vollkontext","description":"AusfÃ¼hrliche Textdatei mit Zweck, Endpunkten, Preisen und Payment-Hinweisen.","security":[],"responses":{"200":{"description":"OK","content":{"text/plain":{"example":"Endpoints: ..."}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/robots.txt":{"get":{"operationId":"gETRobotsTxt","tags":["Discovery"],"summary":"Robots Datei","description":"Crawler-Hinweise mit Sitemap- und LLM-Dateiverweisen.","security":[],"responses":{"200":{"description":"OK","content":{"text/plain":{"example":"User-agent: *"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/sitemap.xml":{"get":{"operationId":"gETSitemapXml","tags":["Discovery"],"summary":"Sitemap","description":"XML-Sitemap fÃ¼r frei erreichbare GET-Routen.","security":[],"responses":{"200":{"description":"OK","content":{"application/xml":{"example":"<urlset>...</urlset>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/.well-known/ai-plugin.json":{"get":{"operationId":"gETWellKnownAiPluginJson","tags":["Bot Discovery"],"summary":"AI Plugin Manifest","description":"Manifest fÃ¼r Plugin-Scanner mit OpenAPI-Link.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"schema_version":"v1","name_for_model":"netzhandwerker_energy_research_hub"},"schema":{"type":"object","properties":{"schema_version":{"type":"string"},"name_for_model":{"type":"string"}},"required":["schema_version","name_for_model"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/.well-known/mcp.json":{"get":{"operationId":"gETWellKnownMcpJson","tags":["Bot Discovery"],"summary":"MCP Discovery","description":"Discovery-Dokument mit MCP-Endpoint und Tool-Liste.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"endpoint":"https://energy.netzhandwerker.de/mcp","tools":[]},"schema":{"type":"object","properties":{"endpoint":{"type":"string"},"tools":{"type":"array","items":{}}},"required":["endpoint","tools"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/.well-known/agent.json":{"get":{"operationId":"gETWellKnownAgentJson","tags":["Bot Discovery"],"summary":"Agent Manifest","description":"Agenten-Manifest mit Zweck, Links, Preisen und Payment-Konfiguration.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"name":"Netzhandwerker Energy Research Hub","payment":"x402"},"schema":{"type":"object","properties":{"name":{"type":"string"},"payment":{"type":"string"}},"required":["name","payment"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/.well-known/x402.json":{"get":{"operationId":"gETWellKnownX402Json","tags":["Bot Discovery"],"summary":"x402 Manifest","description":"Payment-Manifest fÃ¼r x402-Scanner.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"payment_target":{"network":"eip155:8453","currency":"USDC"}},"schema":{"type":"object","properties":{"payment_target":{"type":"object","properties":{"network":{"type":"string"},"currency":{"type":"string"}},"required":["network","currency"],"additionalProperties":true}},"required":["payment_target"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/articles":{"get":{"operationId":"gETArticles","tags":["Free data"],"summary":"Artikel-Katalog","description":"Frei verfÃ¼gbarer Katalog der Premium-Artikel.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"articles":[{"id":"001","title":"Mieterstrom","price_usdc":"0.02"}]},"schema":{"type":"object","properties":{"articles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"price_usdc":{"type":"string"}},"required":["id","title","price_usdc"],"additionalProperties":true}}},"required":["articles"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/capabilities":{"get":{"operationId":"gETCapabilities","tags":["Discovery"],"summary":"Capabilities","description":"KurzÃ¼bersicht fÃ¼r API-Scanner mit Links und Kategorien.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"service":"Netzhandwerker Energy Research Hub","capabilities":["live_energy_data","x402_payment","mcp"]},"schema":{"type":"object","properties":{"service":{"type":"string"},"capabilities":{"type":"array","items":{"type":"string"}}},"required":["service","capabilities"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/agent":{"get":{"operationId":"gETAgent","tags":["Bot Discovery"],"summary":"Agent Discovery","description":"Short machine-readable product, pricing and payment discovery for AI agents, MCP clients and x402 bots.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"name":"Netzhandwerker Energy Research Hub","best_for":["German electricity prices","EV charging decisions"],"products":["Live Energy Data","Optimization Signals","Research & Intelligence"]},"schema":{"type":"object","properties":{"name":{"type":"string"},"best_for":{"type":"array","items":{"type":"string"}},"products":{"type":"array","items":{"type":"string"}}},"required":["name","best_for","products"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/pricing":{"get":{"operationId":"gETPricing","tags":["Bot Discovery"],"summary":"Pricing","description":"Machine-readable price list grouped by Live Energy Data, Optimization Signals and Research & Intelligence.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"currency":"USD","payment_protocol":"x402","settlement_asset":"USDC","products":[]},"schema":{"type":"object","properties":{"currency":{"type":"string"},"payment_protocol":{"type":"string"},"settlement_asset":{"type":"string"},"products":{"type":"array","items":{}}},"required":["currency","payment_protocol","settlement_asset","products"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/trust":{"get":{"operationId":"gETTrust","tags":["Trust"],"summary":"Live Trust Dashboard HTML","description":"Public browser dashboard for the live negative-price prediction track record. Fetches /trust/dashboard and refreshes every five minutes.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>Live Track Record</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/status":{"get":{"operationId":"gETStatus","tags":["Trust"],"summary":"Status","description":"Machine-readable service status with version, uptime, endpoint count, MCP tool count and x402 state.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"status":"ok","version":"3.0.0","endpoint_count":0},"schema":{"type":"object","properties":{"status":{"type":"string"},"version":{"type":"string"},"endpoint_count":{"type":"integer"}},"required":["status","version","endpoint_count"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/sources":{"get":{"operationId":"gETSources","tags":["Trust"],"summary":"Sources","description":"Transparent list of data sources used by the service, including freshness and limitations.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"sources":[{"name":"aWATTar EPEX DE/AT","type":"live","used_for":["spot prices","price forecast","optimization windows"],"freshness":"Usually hourly/day-ahead; cached by endpoint","limitations":["External API availability","Market data may lag provider updates"]},{"name":"Fraunhofer ISE energy-charts","type":"live/cached","used_for":["renewable share","generation mix","CO2 fallback model"],"freshness":"Cached by endpoint, usually minutes to hours","limitations":["Provider schema changes possible","Some values are modelled from generation mix"]},{"name":"SMARD Bundesnetzagentur","type":"live/cached","used_for":["grid load"],"freshness":"Cached by endpoint","limitations":["Quarter-hour data availability depends on SMARD publication"]},{"name":"Corrently GrünstromIndex","type":"forecast/cached","used_for":["regional green power index","regional CO2 estimate"],"freshness":"Forecast data, cached by endpoint","limitations":["Regional approximation by ZIP"]},{"name":"Open-Meteo","type":"forecast/cached","used_for":["solar forecast","wind forecast","weather-driven optimization"],"freshness":"Forecast data, cached by endpoint","limitations":["Weather forecast uncertainty"]},{"name":"Electricity Maps","type":"live","used_for":["carbon intensity when API key is available"],"freshness":"Provider latest value","limitations":["Requires configured provider key; fallback uses internal CO2 model"]},{"name":"ENTSO-E Transparency","type":"live/forecast","used_for":["day-ahead prices and selected premium research"],"freshness":"Provider publication schedule","limitations":["Requires configured ENTSO-E key"]},{"name":"Internal model","type":"model","used_for":["energy decisions","battery arbitrage","trading signal scoring"],"freshness":"Generated per request from cached/live inputs","limitations":["Decision outputs are estimates, not guarantees"]}]},"schema":{"type":"object","properties":{"sources":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"},"used_for":{"type":"array","items":{"type":"string"}},"freshness":{"type":"string"},"limitations":{"type":"array","items":{"type":"string"}}},"required":["name","type","used_for","freshness","limitations"],"additionalProperties":true}}},"required":["sources"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/wallet-bot/needs-info":{"get":{"operationId":"gETWalletBotNeedsInfo","tags":["Wallet Bot Feedback"],"summary":"Wallet Bot Needs Info","description":"Free discovery endpoint that invites wallet-enabled agents to declare what they want to buy.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"purpose":"Tell us what your wallet-enabled agent wants to buy.","submit_need":{"method":"POST","endpoint":"/wallet-bot/needs","content_type":"application/json","schema":{"type":"object","properties":{"agent_name":{"type":"string"},"wallet_type":{"type":"string","enum":["x402","evm","base","solana","lightning","other","unknown"]},"payment_network":{"type":"string"},"payment_asset":{"type":"string"},"need":{"type":"string","description":"What does your wallet-enabled agent want to buy?"},"requested_endpoint":{"type":"string"},"missing_endpoint":{"type":"string"},"desired_output_format":{"type":"string","enum":["json","mcp","openapi","webhook","csv","other"]},"desired_freshness":{"type":"string","enum":["live","hourly","daily","historical","unknown"]},"max_budget_usdc":{"type":"number","minimum":0},"recurring_need":{"type":"boolean"},"urgency":{"type":"string","enum":["low","normal","high"]},"callback_url":{"type":"string","description":"Stored as present/host only; never called automatically."},"notes":{"type":"string"}},"additionalProperties":false}},"wallet_bot_need_request":{"question":"What does your wallet-enabled agent need from this energy API?","submit":{"method":"POST","endpoint":"/wallet-bot/needs","content_type":"application/json"},"examples":["I need live EPEX prices for Germany every hour.","I need a battery arbitrage schedule.","I need CO2-low charging windows.","I need Redispatch risk by region.","I need webhook alerts for negative prices."],"optional_fields":["wallet_type","payment_network","max_budget_usdc","desired_output_format","recurring_need"]},"why":["We use wallet-bot needs to create better paid energy endpoints.","Tell us what data, decision, format or price your agent needs."],"examples":[{"need":"I need a 15-minute EV charging schedule for Germany before 07:00.","recommended_endpoint":"/energy/decision"},{"need":"I need current German grid load for an operational decision.","recommended_endpoint":"/grid/load"},{"need":"I need a cheaper payment test endpoint.","recommended_endpoint":"/demo/paid-sample"}]},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"purpose":{"type":"string"},"submit_need":{"type":"object","properties":{"method":{"type":"string"},"endpoint":{"type":"string"},"content_type":{"type":"string"},"schema":{"type":"object","properties":{"type":{"type":"string"},"properties":{"type":"object","properties":{"agent_name":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"wallet_type":{"type":"object","properties":{"type":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}}},"required":["type","enum"],"additionalProperties":true},"payment_network":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"payment_asset":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"need":{"type":"object","properties":{"type":{"type":"string"},"description":{"type":"string"}},"required":["type","description"],"additionalProperties":true},"requested_endpoint":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"missing_endpoint":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"desired_output_format":{"type":"object","properties":{"type":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}}},"required":["type","enum"],"additionalProperties":true},"desired_freshness":{"type":"object","properties":{"type":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}}},"required":["type","enum"],"additionalProperties":true},"max_budget_usdc":{"type":"object","properties":{"type":{"type":"string"},"minimum":{"type":"integer"}},"required":["type","minimum"],"additionalProperties":true},"recurring_need":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"urgency":{"type":"object","properties":{"type":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}}},"required":["type","enum"],"additionalProperties":true},"callback_url":{"type":"object","properties":{"type":{"type":"string"},"description":{"type":"string"}},"required":["type","description"],"additionalProperties":true},"notes":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true}},"required":["agent_name","wallet_type","payment_network","payment_asset","need","requested_endpoint","missing_endpoint","desired_output_format","desired_freshness","max_budget_usdc","recurring_need","urgency","callback_url","notes"],"additionalProperties":true},"additionalProperties":{"type":"boolean"}},"required":["type","properties","additionalProperties"],"additionalProperties":true}},"required":["method","endpoint","content_type","schema"],"additionalProperties":true},"wallet_bot_need_request":{"type":"object","properties":{"question":{"type":"string"},"submit":{"type":"object","properties":{"method":{"type":"string"},"endpoint":{"type":"string"},"content_type":{"type":"string"}},"required":["method","endpoint","content_type"],"additionalProperties":true},"examples":{"type":"array","items":{"type":"string"}},"optional_fields":{"type":"array","items":{"type":"string"}}},"required":["question","submit","examples","optional_fields"],"additionalProperties":true},"why":{"type":"array","items":{"type":"string"}},"examples":{"type":"array","items":{"type":"object","properties":{"need":{"type":"string"},"recommended_endpoint":{"type":"string"}},"required":["need","recommended_endpoint"],"additionalProperties":true}}},"required":["ok","purpose","submit_need","wallet_bot_need_request","why","examples"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/wallet-bot/needs":{"post":{"operationId":"pOSTWalletBotNeeds","tags":["Wallet Bot Feedback"],"summary":"Submit Wallet Bot Need","description":"Free endpoint where wallet-enabled agents can declare needed data, formats, missing endpoints and budget.","security":[],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"agent_name":{"type":"string"},"wallet_type":{"type":"string","enum":["x402","evm","base","solana","lightning","other","unknown"]},"payment_network":{"type":"string"},"payment_asset":{"type":"string"},"need":{"type":"string","description":"What does your wallet-enabled agent want to buy?"},"requested_endpoint":{"type":"string"},"missing_endpoint":{"type":"string"},"desired_output_format":{"type":"string","enum":["json","mcp","openapi","webhook","csv","other"]},"desired_freshness":{"type":"string","enum":["live","hourly","daily","historical","unknown"]},"max_budget_usdc":{"type":"number","minimum":0},"recurring_need":{"type":"boolean"},"urgency":{"type":"string","enum":["low","normal","high"]},"callback_url":{"type":"string","description":"Stored as present/host only; never called automatically."},"notes":{"type":"string"}},"additionalProperties":false},"example":{"agent_name":"DE","wallet_type":"x402","payment_network":"DE","payment_asset":"DE","need":"DE","requested_endpoint":"DE","missing_endpoint":"DE","desired_output_format":"json","desired_freshness":"live","max_budget_usdc":1,"recurring_need":true,"urgency":"low","callback_url":"DE","notes":"DE"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"need_id":"need_123","recommended_existing_offer":{"endpoint":"/energy/decision","price_usdc":0.01,"normal_price_usdc":0.25,"pricing_mode":"launch"}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"need_id":{"type":"string"},"recommended_existing_offer":{"type":"object","properties":{"endpoint":{"type":"string"},"price_usdc":{"type":"number"},"normal_price_usdc":{"type":"number"},"pricing_mode":{"type":"string"}},"required":["endpoint","price_usdc","normal_price_usdc","pricing_mode"],"additionalProperties":true}},"required":["ok","need_id","recommended_existing_offer"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/demand/submit":{"get":{"operationId":"gETDemandSubmit","tags":["Demand Intent Filter"],"summary":"Demand Intent Discovery","description":"Machine-readable discovery fallback for demand submissions. Optional x402 payment can mark a request as priority_demand.","security":[{"x402":[]}],"parameters":[{"name":"need","in":"query","required":true,"schema":{"type":"string","description":"What endpoint, data, decision or signal does your agent want?"}},{"name":"desired_endpoint","in":"query","required":false,"schema":{"type":"string","description":"Preferred endpoint path, if known."}},{"name":"desired_format","in":"query","required":false,"schema":{"type":"string","enum":["json","mcp","openapi","csv","webhook"]}},{"name":"max_budget_usdc","in":"query","required":false,"schema":{"type":"number","description":"Maximum budget per call or request in USDC."}},{"name":"recurring","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"frequency","in":"query","required":false,"schema":{"type":"string","enum":["one_time","hourly","daily","weekly","realtime"]}},{"name":"required_freshness","in":"query","required":false,"schema":{"type":"string"}},{"name":"use_case","in":"query","required":false,"schema":{"type":"string"}},{"name":"agent_name","in":"query","required":false,"schema":{"type":"string"}},{"name":"agent_url","in":"query","required":false,"schema":{"type":"string"}},{"name":"wallet_type","in":"query","required":false,"schema":{"type":"string"}},{"name":"payment_network","in":"query","required":false,"schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"schema":{"type":"string","description":"Optional. Stored, not called automatically."}}],"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"accepted":false,"payment_required":false,"optional_payment_supported":true,"demand_capture":{"honest_notice":"This endpoint is not available yet. You can request it.","purpose":"Submit an endpoint, data, decision or format request. This is a demand sensor, not a guarantee of implementation.","protocol":"x402","endpoint":"/demand/submit","method":"POST","submit_need":{"method":"POST","url":"/demand/submit"},"content_type":"application/json","fields":{"need":{"type":"string","description":"What endpoint, data, decision or signal does your agent want?"},"desired_endpoint":{"type":"string","description":"Preferred endpoint path, if known."},"desired_format":{"type":"string","enum":["json","mcp","openapi","csv","webhook"]},"max_budget_usdc":{"type":"number","description":"Maximum budget per call or request in USDC."},"recurring":{"type":"boolean"},"frequency":{"type":"string","enum":["one_time","hourly","daily","weekly","realtime"]},"required_freshness":{"type":"string"},"use_case":{"type":"string"},"agent_name":{"type":"string"},"agent_url":{"type":"string"},"wallet_type":{"type":"string"},"payment_network":{"type":"string"},"webhook_url":{"type":"string","description":"Optional. Stored, not called automatically."}},"hint_priority":"Optional 0.001 USDC payment lists your request as priority_demand.","optional_priority_price_usdc":0.001,"no_raw_payment_material_logged":true}},"schema":{"type":"object","properties":{"accepted":{"type":"boolean"},"payment_required":{"type":"boolean"},"optional_payment_supported":{"type":"boolean"},"demand_capture":{"type":"object","properties":{"honest_notice":{"type":"string"},"purpose":{"type":"string"},"protocol":{"type":"string"},"endpoint":{"type":"string"},"method":{"type":"string"},"submit_need":{"type":"object","properties":{"method":{"type":"string"},"url":{"type":"string"}},"required":["method","url"],"additionalProperties":true},"content_type":{"type":"string"},"fields":{"type":"object","properties":{"need":{"type":"object","properties":{"type":{"type":"string"},"description":{"type":"string"}},"required":["type","description"],"additionalProperties":true},"desired_endpoint":{"type":"object","properties":{"type":{"type":"string"},"description":{"type":"string"}},"required":["type","description"],"additionalProperties":true},"desired_format":{"type":"object","properties":{"type":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}}},"required":["type","enum"],"additionalProperties":true},"max_budget_usdc":{"type":"object","properties":{"type":{"type":"string"},"description":{"type":"string"}},"required":["type","description"],"additionalProperties":true},"recurring":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"frequency":{"type":"object","properties":{"type":{"type":"string"},"enum":{"type":"array","items":{"type":"string"}}},"required":["type","enum"],"additionalProperties":true},"required_freshness":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"use_case":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"agent_name":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"agent_url":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"wallet_type":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"payment_network":{"type":"object","properties":{"type":{"type":"string"}},"required":["type"],"additionalProperties":true},"webhook_url":{"type":"object","properties":{"type":{"type":"string"},"description":{"type":"string"}},"required":["type","description"],"additionalProperties":true}},"required":["need","desired_endpoint","desired_format","max_budget_usdc","recurring","frequency","required_freshness","use_case","agent_name","agent_url","wallet_type","payment_network","webhook_url"],"additionalProperties":true},"hint_priority":{"type":"string"},"optional_priority_price_usdc":{"type":"number"},"no_raw_payment_material_logged":{"type":"boolean"}},"required":["honest_notice","purpose","protocol","endpoint","method","submit_need","content_type","fields","hint_priority","optional_priority_price_usdc","no_raw_payment_material_logged"],"additionalProperties":true}},"required":["accepted","payment_required","optional_payment_supported","demand_capture"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/demand/submit","method":"GET","description":"Machine-readable discovery fallback for demand submissions. Optional x402 payment can mark a request as priority_demand.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTDemandSubmit","tags":["Demand Intent Filter"],"summary":"Submit endpoint demand","description":"Two-stage intent filter for agents to submit a data or endpoint request. Without payment it is stored as unverified_demand; optional verified 0.001 USDC lists it as priority_demand.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["need"],"properties":{"need":{"type":"string","description":"What endpoint, data, decision or signal does your agent want?"},"desired_endpoint":{"type":"string","description":"Preferred endpoint path, if known."},"desired_format":{"type":"string","enum":["json","mcp","openapi","csv","webhook"]},"max_budget_usdc":{"type":"number","description":"Maximum budget per call or request in USDC."},"recurring":{"type":"boolean"},"frequency":{"type":"string","enum":["one_time","hourly","daily","weekly","realtime"]},"required_freshness":{"type":"string"},"use_case":{"type":"string"},"agent_name":{"type":"string"},"agent_url":{"type":"string"},"wallet_type":{"type":"string"},"payment_network":{"type":"string"},"webhook_url":{"type":"string","description":"Optional. Stored, not called automatically."}},"additionalProperties":false},"example":{"need":"hourly German electricity price forecast","desired_endpoint":"/price/forecast","desired_format":"json","max_budget_usdc":0.001,"frequency":"hourly"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"accepted":true,"paid":false,"payment_verified":false,"request_id":"need_YYYYMMDD_slug_hash","status":"unverified_demand","implementation_not_guaranteed":true},"schema":{"type":"object","properties":{"accepted":{"type":"boolean"},"paid":{"type":"boolean"},"payment_verified":{"type":"boolean"},"request_id":{"type":"string"},"status":{"type":"string"},"implementation_not_guaranteed":{"type":"boolean"}},"required":["accepted","paid","payment_verified","request_id","status","implementation_not_guaranteed"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/demand/submit","method":"POST","description":"Two-stage intent filter for agents to submit a data or endpoint request. Without payment it is stored as unverified_demand; optional verified 0.001 USDC lists it as priority_demand.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/for-ai-agents":{"get":{"operationId":"gETForAiAgents","tags":["Bot Landingpages"],"summary":"For AI Agents","description":"Server-rendered landing page for AI agents with endpoints, prices and example responses.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>For AI agents</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/for-mcp-clients":{"get":{"operationId":"gETForMcpClients","tags":["Bot Landingpages"],"summary":"For MCP Clients","description":"Server-rendered landing page for MCP clients with setup and available tools.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>For MCP clients</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/for-x402-bots":{"get":{"operationId":"gETForX402Bots","tags":["Bot Landingpages"],"summary":"For x402 Bots","description":"Server-rendered landing page for x402 bots with payment test and paid endpoints.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>For x402 bots</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/for-ev-charging-agents":{"get":{"operationId":"gETForEvChargingAgents","tags":["Bot Landingpages"],"summary":"For EV Charging Agents","description":"Server-rendered landing page for EV charging optimization agents.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>For EV charging agents</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/for-esg-reporting-agents":{"get":{"operationId":"gETForEsgReportingAgents","tags":["Bot Landingpages"],"summary":"For ESG Reporting Agents","description":"Server-rendered landing page for ESG reporting agents.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>For ESG reporting agents</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/for-energy-trading-agents":{"get":{"operationId":"gETForEnergyTradingAgents","tags":["Bot Landingpages"],"summary":"For Energy Trading Agents","description":"Server-rendered landing page for energy trading agents.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>For energy trading agents</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/sample/research":{"get":{"operationId":"gETSampleResearch","tags":["Free data"],"summary":"Research Sample","description":"Frei verfÃ¼gbares Beispiel fÃ¼r Research-Ausgaben.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"note":"Frei verfÃ¼gbares Beispiel","full_endpoint":"POST /research"},"schema":{"type":"object","properties":{"note":{"type":"string"},"full_endpoint":{"type":"string"}},"required":["note","full_endpoint"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/sample/articles":{"get":{"operationId":"gETSampleArticles","tags":["Free data"],"summary":"Artikel-Snippet","description":"Frei verfÃ¼gbares Artikel-Snippet mit Link auf den bezahlten Volltext.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"preview":{"id":"001","title":"Mieterstrom"},"full_endpoint":"POST /articles/{id}"},"schema":{"type":"object","properties":{"preview":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"}},"required":["id","title"],"additionalProperties":true},"full_endpoint":{"type":"string"}},"required":["preview","full_endpoint"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/mcp":{"get":{"operationId":"gETMcp","tags":["MCP"],"summary":"MCP Discovery","description":"JSON-Discovery fÃ¼r MCP-Clients mit Tool-Namen, Input-Schemas, Endpoints, Preisen und Payment-Status.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"protocol":"Model Context Protocol","tools_count":32},"schema":{"type":"object","properties":{"protocol":{"type":"string"},"tools_count":{"type":"integer"}},"required":["protocol","tools_count"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTMcp","tags":["MCP"],"summary":"MCP JSON-RPC Endpoint","description":"JSON-RPC Endpoint fÃ¼r initialize, tools/list und tools/call. Paid Data Tools liefern Payment-Anweisungen.","security":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["method"],"properties":{"method":{"type":"string"},"id":{},"params":{"type":"object"}}},"example":{"method":"DE"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"jsonrpc":"2.0","result":{"tools":[]}},"schema":{"type":"object","properties":{"jsonrpc":{"type":"string"},"result":{"type":"object","properties":{"tools":{"type":"array","items":{}}},"required":["tools"],"additionalProperties":true}},"required":["jsonrpc","result"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/agent-manifest":{"get":{"operationId":"gETAgentManifest","tags":["Bot Discovery"],"summary":"Agent Manifest","description":"Frei verfÃ¼gbares Agenten-Manifest fÃ¼r Bots und x402-Scanner.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"name":"Netzhandwerker Energy Research Hub","openapi":"https://energy.netzhandwerker.de/openapi.json"},"schema":{"type":"object","properties":{"name":{"type":"string"},"openapi":{"type":"string"}},"required":["name","openapi"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/metrics":{"get":{"operationId":"gETMetrics","tags":["Observability"],"summary":"Prometheus Metrics","description":"Prometheus-kompatible Metriken fÃ¼r Requests, Revenue und x402-Probes.","security":[],"responses":{"200":{"description":"OK","content":{"text/plain":{"example":"energy_hub_requests_total 123"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/signals/track-record":{"get":{"operationId":"gETSignalsTrackRecord","tags":["Research & Intelligence"],"summary":"Track Record","description":"Transparenzdaten zu Historie, Quellen, Reliability und Methodik.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"reliability":{"success_rate_24h":"99.2%","network":"Base Mainnet"}},"schema":{"type":"object","properties":{"reliability":{"type":"object","properties":{"success_rate_24h":{"type":"string"},"network":{"type":"string"}},"required":["success_rate_24h","network"],"additionalProperties":true}},"required":["reliability"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/trust/dashboard":{"get":{"operationId":"gETTrustDashboard","tags":["Trust"],"summary":"Live Trust Dashboard JSON","description":"Public evidence endpoint with precision, recall, calibration, baseline comparison, economic savings, data period, sample size, model version and separately classified buyer metrics.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"status":"live","evaluation":{"precision":null,"recall":null,"pr_auc":null,"brier_score":null,"calibration_error":null,"price_mae_eur_mwh":null,"median_savings_eur":null,"sample_size":0,"data_period":null,"model_version":"pending-evaluation","production_advantage_claim":false},"business_metrics":{"independent_external_buyers":0,"external_repeat_buyers":0,"external_revenue_usdc":0,"internal_qa_reported_separately":true}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"status":{"type":"string"},"evaluation":{"type":"object","properties":{"precision":{},"recall":{},"pr_auc":{},"brier_score":{},"calibration_error":{},"price_mae_eur_mwh":{},"median_savings_eur":{},"sample_size":{"type":"integer"},"data_period":{},"model_version":{"type":"string"},"production_advantage_claim":{"type":"boolean"}},"required":["precision","recall","pr_auc","brier_score","calibration_error","price_mae_eur_mwh","median_savings_eur","sample_size","data_period","model_version","production_advantage_claim"],"additionalProperties":true},"business_metrics":{"type":"object","properties":{"independent_external_buyers":{"type":"integer"},"external_repeat_buyers":{"type":"integer"},"external_revenue_usdc":{"type":"integer"},"internal_qa_reported_separately":{"type":"boolean"}},"required":["independent_external_buyers","external_repeat_buyers","external_revenue_usdc","internal_qa_reported_separately"],"additionalProperties":true}},"required":["ok","status","evaluation","business_metrics"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/tasks/{id}/result":{"get":{"operationId":"gETTasksIdResult","tags":["Async Tasks"],"summary":"Task Ergebnis","description":"Ergebnisabruf fÃ¼r zuvor bezahlte Async-Tasks.","security":[],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"id":"task_123","status":"completed","result":{}},"schema":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"},"result":{"type":"object","properties":{},"required":[],"additionalProperties":true}},"required":["id","status","result"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Task not found","content":{"application/json":{"example":{"error":"task_not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/netzhandwerker-radar":{"get":{"operationId":"gETNetzhandwerkerRadar","tags":["Protected dashboard"],"summary":"Bot-Radar Dashboard","description":"Internes Radar-Dashboard. Zugriff nur mit ENV-Passwort per Header, Basic Auth oder Query-Fallback.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":"<html>Bot-Radar</html>"}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"401":{"description":"Authentication required","content":{"application/json":{"example":{"error":"authentication_required"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/research":{"get":{"operationId":"gETResearch","tags":["Research & Intelligence"],"summary":"Research Payment Requirements","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fÃ¼r POST /research.","security":[{"x402":[]}],"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"error":"payment_required","endpoint":"POST /research"},"schema":{"type":"object","properties":{"error":{"type":"string"},"endpoint":{"type":"string"}},"required":["error","endpoint"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.05,"resource":{"url":"https://energy.netzhandwerker.de/research","method":"GET","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fÃ¼r POST /research.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.05","amount_units":"50000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTResearch","tags":["Research & Intelligence"],"summary":"Energy Research","description":"Aggregierte Energie-Recherche fÃ¼r DE/EU aus Live-Datenquellen.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","minLength":1},"sources":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"example":{"query":"German electricity market summary today"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"summary":"...","key_metrics":[],"confidence_score":0.9},"schema":{"type":"object","properties":{"success":{"type":"boolean"},"summary":{"type":"string"},"key_metrics":{"type":"array","items":{}},"confidence_score":{"type":"number"}},"required":["success","summary","key_metrics","confidence_score"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.05,"resource":{"url":"https://energy.netzhandwerker.de/research","method":"POST","description":"Aggregierte Energie-Recherche fÃ¼r DE/EU aus Live-Datenquellen.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.05","amount_units":"50000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/articles/{id}":{"get":{"operationId":"gETArticlesId","tags":["Research & Intelligence"],"summary":"Article Payment Requirements","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fÃ¼r POST /articles/{id}.","security":[{"x402":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"error":"payment_required","endpoint":"POST /articles/{id}"},"schema":{"type":"object","properties":{"error":{"type":"string"},"endpoint":{"type":"string"}},"required":["error","endpoint"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.01,"resource":{"url":"https://energy.netzhandwerker.de/articles/{id}","method":"GET","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fÃ¼r POST /articles/{id}.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.01","amount_units":"10000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTArticlesId","tags":["Research & Intelligence"],"summary":"Premium Artikel","description":"Volltext eines Energie-Fachartikels.","security":[{"x402":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"type":"premium_article","article":{}},"schema":{"type":"object","properties":{"success":{"type":"boolean"},"type":{"type":"string"},"article":{"type":"object","properties":{},"required":[],"additionalProperties":true}},"required":["success","type","article"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.01,"resource":{"url":"https://energy.netzhandwerker.de/articles/{id}","method":"POST","description":"Volltext eines Energie-Fachartikels.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.01","amount_units":"10000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Article not found","content":{"application/json":{"example":{"error":"article_not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/tasks":{"get":{"operationId":"gETTasks","tags":["Research & Intelligence"],"summary":"Task Payment Requirements","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fÃ¼r POST /tasks.","security":[{"x402":[]}],"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"minimum","currency":"USD","amount":"0.10"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"error":"payment_required","endpoint":"POST /tasks"},"schema":{"type":"object","properties":{"error":{"type":"string"},"endpoint":{"type":"string"}},"required":["error","endpoint"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.1,"resource":{"url":"https://energy.netzhandwerker.de/tasks","method":"GET","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fÃ¼r POST /tasks.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.10","amount_units":"100000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"100000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTTasks","tags":["Research & Intelligence"],"summary":"Async Bounty Task","description":"Asynchroner Deep-Dive Task mit Mindest-Bounty.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["task_description","bounty"],"properties":{"task_description":{"type":"string"},"bounty":{"type":"string","description":"Launch minimum 0.10 USDC (normal minimum 1.00 USDC), maximum 100.00 USDC."}}},"example":{"task_description":"Deep research on German battery arbitrage","bounty":"0.10"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"minimum","currency":"USD","amount":"0.10"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"task_id":"task_123","status":"queued","pricing_mode":"launch","launch_min_price_usdc":0.1,"normal_min_price_usdc":1,"max_price_usdc":100},"schema":{"type":"object","properties":{"success":{"type":"boolean"},"task_id":{"type":"string"},"status":{"type":"string"},"pricing_mode":{"type":"string"},"launch_min_price_usdc":{"type":"number"},"normal_min_price_usdc":{"type":"integer"},"max_price_usdc":{"type":"integer"}},"required":["success","task_id","status","pricing_mode","launch_min_price_usdc","normal_min_price_usdc","max_price_usdc"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.1,"resource":{"url":"https://energy.netzhandwerker.de/tasks","method":"POST","description":"Asynchroner Deep-Dive Task mit Mindest-Bounty.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.10","amount_units":"100000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"100000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/demo/paid-sample":{"get":{"operationId":"gETDemoPaidSample","tags":["Optimization Signals"],"summary":"x402 Paid Signal Test","description":"Cheapest end-to-end x402 purchase test. Always returns a 402 challenge without payment and the current full NegPrice decision after a valid USDC payment.","security":[{"x402":[]}],"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"endpoint":"/demo/paid-sample","paid":true,"result":{"schema_version":"negprice_signal_v1","expires_at":"2026-07-12T13:00:00.000Z"}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"endpoint":{"type":"string"},"paid":{"type":"boolean"},"result":{"type":"object","properties":{"schema_version":{"type":"string"},"expires_at":{"type":"string"}},"required":["schema_version","expires_at"],"additionalProperties":true}},"required":["ok","endpoint","paid","result"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/demo/paid-sample","method":"GET","description":"Cheapest end-to-end x402 purchase test. Always returns a 402 challenge without payment and the current full NegPrice decision after a valid USDC payment.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/energy/decision":{"get":{"operationId":"gETEnergyDecision","tags":["Optimization Signals"],"summary":"Energy Decision Discovery","description":"GET discovery for the paid decision endpoint. Returns machine-readable endpoint metadata or method guidance.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"endpoint":"/energy/decision","method":"POST","payment_required":true,"pricing_mode":"standard","price_usd":0.01,"normal_price_usd":0.01,"asset":"USDC","network":"Base Mainnet","chain_id":8453},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"endpoint":{"type":"string"},"method":{"type":"string"},"payment_required":{"type":"boolean"},"pricing_mode":{"type":"string"},"price_usd":{"type":"number"},"normal_price_usd":{"type":"number"},"asset":{"type":"string"},"network":{"type":"string"},"chain_id":{"type":"integer"}},"required":["ok","endpoint","method","payment_required","pricing_mode","price_usd","normal_price_usd","asset","network","chain_id"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTEnergyDecision","tags":["Optimization Signals"],"summary":"Energy Decision","description":"EV, battery, and flexible-load agents buy this endpoint to receive an executable action with timing, expected value, confidence, and expiry.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"goal":{"type":"string","enum":["minimize_cost","minimize_carbon","balanced","maximize_self_consumption","trading_signal"],"default":"balanced"},"device":{"type":"string","enum":["ev","battery","heat_pump","flexible_load","generic"],"default":"generic"},"location":{"type":"string","default":"Germany"},"duration_hours":{"type":"integer","minimum":1,"maximum":24,"default":4},"deadline":{"type":"string","format":"date-time"},"policy_profile":{"type":"string","enum":["balanced","utility","precision","recall"],"description":"Optional override. Trading defaults to precision; flexible devices default to utility."},"constraints":{"type":"object","properties":{"min_soc":{"type":"number"},"target_soc":{"type":"number"},"max_power_kw":{"type":"number"},"must_finish_by":{"type":"string","format":"date-time"}},"additionalProperties":false}},"additionalProperties":false},"example":{"goal":"minimize_cost","device":"ev","location":"Germany","duration_hours":2,"constraints":{"target_soc":80,"max_power_kw":11}}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"product":"Optimization Signals","endpoint":"/energy/decision","query":{"goal":"minimize_cost","device":"ev","location":"Germany","duration_hours":2,"constraints":{"target_soc":80,"max_power_kw":11}},"result":{"schema_version":"energy_decision_v1","decision_id":"dec_mrjtggtb_639t85","product":"paid_energy_decision","buyer_task_fit":"schedule_or_trade_energy_with_money_at_risk","decision":"charge_later","action":"charge_later","recommendation":"charge_later between 2026-07-14T11:00:00.000Z and 2026-07-14T13:00:00.000Z","recommended_window":{"start":"2026-07-14T11:00:00.000Z","end":"2026-07-14T13:00:00.000Z","hours":[{"start":"2026-07-14T11:00:00.000Z","end":"2026-07-14T12:00:00.000Z","price_ct_kwh":5.18,"price_eur_mwh":51.83},{"start":"2026-07-14T12:00:00.000Z","end":"2026-07-14T13:00:00.000Z","price_ct_kwh":5.77,"price_eur_mwh":57.73}]},"reason":"Cheapest available window is materially below the day average.","why_paid":"This endpoint sells the decision layer: action, timing, expected value, confidence, freshness and source status. Raw electricity data remains available from public sources.","estimated_value":{"currency":"EUR","expected_saving":1.52,"energy_volume_kwh":22,"value_basis":"day_average_vs_recommended_window"},"expected_saving_eur":1.52,"carbon_impact":{"reduction_percent":13,"intensity_g_co2_kwh":419,"renewable_share_pct":51.2},"carbon_reduction_percent":13,"confidence":0.85,"expires_at":"2026-07-13T23:00:00+00:00","do_not_act_reason":null,"risk_flags":[],"source_status":{"price":"available","carbon":"fallback","renewable":"available"},"freshness":{"price_cache_ttl_seconds":600,"carbon_cache_ttl_seconds":600,"negative_price_ml_cache_ttl_seconds":60,"generated_at":"2026-07-13T22:51:07.679Z","decision":{"fresh":true,"generated_at":"2026-07-13T22:00:00+00:00","expires_at":"2026-07-13T23:00:00+00:00","age_seconds":3068,"seconds_until_expiry":532,"stale_reason":null}},"ml_decision_intelligence":{"source":"NegPrice Decision Intelligence v3","prediction":{"negative_price_in_2h":false,"probability":0.0012,"risk_level":"low","action":"no_action_normal_operation","target_window":{"start":"2026-07-14T00:00:00+00:00","end":"2026-07-14T01:00:00+00:00","lead_hours":2},"predicted_price_eur_mwh":110.53,"expected_saving_eur_mwh":29.11},"horizons":[{"lead_hours":2,"negative_price":false,"probability":0.0012,"risk_level":"low","predicted_price_eur_mwh":110.53,"expected_saving_eur_mwh":29.11,"target_window":{"start":"2026-07-14T00:00:00+00:00","end":"2026-07-14T01:00:00+00:00","lead_hours":2},"bot_value_score":5.82},{"lead_hours":4,"negative_price":false,"probability":0.0716,"risk_level":"low","predicted_price_eur_mwh":87.74,"expected_saving_eur_mwh":51.9,"target_window":{"start":"2026-07-14T02:00:00+00:00","end":"2026-07-14T03:00:00+00:00","lead_hours":4},"bot_value_score":10.38},{"lead_hours":6,"negative_price":false,"probability":0.1101,"risk_level":"low","predicted_price_eur_mwh":85.34,"expected_saving_eur_mwh":54.3,"target_window":{"start":"2026-07-14T04:00:00+00:00","end":"2026-07-14T05:00:00+00:00","lead_hours":6},"bot_value_score":10.86}],"decision_engine":{"schema_version":"negprice_bot_decision_v1","recommended_action":"no_action_normal_operation","should_act":false,"policy":"below_action_threshold","selected_horizon_hours":6,"target_window":{"start":"2026-07-14T04:00:00+00:00","end":"2026-07-14T05:00:00+00:00","lead_hours":6},"probability":0.1101,"expected_target_price_eur_mwh":85.34,"expected_saving_eur_mwh":54.3,"bot_value_score":10.86,"minimum_probability_threshold":0.25,"confidence":0.25,"valid_until":"2026-07-13T23:00:00+00:00","retry_after_seconds":900,"do_not_act_reason":"Probability/value threshold not met for paid bot execution.","buyer_work_removed":["multi_horizon_model_call","probability_threshold_selection","target_price_estimation","economic_value_scoring","risk_flag_packaging"]},"drivers":["rapid_price_decline","large_expected_price_spread"],"risk_flags":["low_confidence"],"model":{"name":"NegPrice-Decision-Intelligence-v4","version":"4.1","features":47,"weather_enhanced":true,"multi_horizon":true,"supported_horizons_hours":[2,4,6],"calibration":"isotonic probability calibration on final TimeSeriesSplit","precision":0.8115,"recall":0.8564,"f1":0.8333,"accuracy":0.9791,"price_mae_eur_mwh":13.36,"depth_mae_eur_mwh_in_sample":8.17,"duration_mae_h_in_sample":0.1,"validation":"5-fold expanding-window time-series cross-validation","training_period":{"end":"2026-07-03","start":"2023-07-02"},"trained_at":"2026-07-05T09:28:11.657666+00:00"}},"cross_market_spread":{"de_at":{"ts":1783976400,"timestamp":"2026-07-13T21:00:00.000Z","de_price_eur_mwh":144.07,"at_price_eur_mwh":149.81,"spread_de_minus_at_eur_mwh":-5.74,"cheaper_country":"DE"},"source":"Archived aWATTar DE/AT hourly prices","bot_use":"Detect whether a cross-country price context changes the preferred flexible-load action."},"automation_policy":{"schema_version":"energy_bot_automation_policy_v1","ready_to_execute":true,"recommended_action":"no_action_normal_operation","selected_window":{"start":"2026-07-14T11:00:00.000Z","end":"2026-07-14T13:00:00.000Z"},"expected_value_eur":1.52,"negative_price_probability_2h":0.0012,"minimum_confidence":0.6,"bot_work_removed":["source_fetching","window_optimization","negative_price_ml_scoring","economic_value_calculation","risk_flag_generation","execution_threshold_policy"]},"schema_contract":{"stable_fields":["decision","action","recommended_window","estimated_value","carbon_impact","confidence","risk_flags","source_status","freshness","ml_decision_intelligence","cross_market_spread","automation_policy"],"output_type":"decision_not_raw_data"},"estimated":true,"inputs_used":{"current_price_ct_kwh":13.96,"cheapest_avg_price_ct_kwh":5.475,"day_avg_price_ct_kwh":12.397,"carbon_intensity_g_co2_kwh":419,"renewable_share_pct":51.2,"assumed_power_kw":11},"limitations":[]},"recommendation":"charge_later between 2026-07-14T11:00:00.000Z and 2026-07-14T13:00:00.000Z","price_paid":"0.01","currency":"USDC","network":"eip155:8453","payment":{"required":true,"paid":true,"verified":true,"price_usd":0.01,"amount_usdc":0.01,"asset":"USDC","network":"eip155:8453","network_id":"eip155:8453","chain_id":8453,"protocol":"x402","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"meta":{"source":"aWATTar EPEX DE/AT + Electricity Maps/Fraunhofer + internal model","source_type":"mixed","updated_at":"2026-07-13T22:51:07.680Z","generated_at":"2026-07-13T22:51:07.680Z","cache_ttl_seconds":600,"confidence":0.85,"version":"2.0.0","limitations":[],"source_status":{"price":"available","carbon":"fallback","renewable":"available"},"negative_price_ml":{"model":"NegPrice-Decision-Intelligence-v4","version":"4.1","confidence":0.25,"action":"no_action_normal_operation"},"product_positioning":"paid decision layer, not raw data resale"}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"endpoint":{"type":"string"},"price_paid":{"type":"string"},"currency":{"type":"string","enum":["USDC"]},"network":{"type":"string","enum":["eip155:8453"]},"result":{"type":"object","properties":{"schema_version":{"type":"string"},"decision_id":{"type":"string"},"decision":{"type":"string"},"action":{"type":"string"},"recommended_window":{"type":["object","null"],"additionalProperties":true},"estimated_value":{"type":"object","additionalProperties":true},"confidence":{"type":"number"},"expires_at":{"type":["string","null"]},"do_not_act_reason":{"type":["string","null"]},"risk_flags":{"type":"array","items":{"type":"string"}},"source_status":{"type":"object","additionalProperties":true}},"required":["schema_version","decision_id","decision","action","confidence","expires_at","risk_flags"],"additionalProperties":true}},"required":["ok","endpoint","result","price_paid","currency","network"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.01,"resource":{"url":"https://energy.netzhandwerker.de/energy/decision","method":"POST","description":"EV, battery, and flexible-load agents buy this endpoint to receive an executable action with timing, expected value, confidence, and expiry.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.01","amount_units":"10000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/research/quick":{"post":{"operationId":"pOSTResearchQuick","tags":["Research & Intelligence"],"summary":"Quick Research","description":"Research and market-monitoring agents buy this endpoint to answer a focused question with a compact live market snapshot.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","minLength":1},"sources":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"example":{"query":"Summarize the German electricity market for the next 24 hours."}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.003"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"EPEX (aWATTar)","query":"Summarize the German electricity market for the next 24 hours.","current_price":{"start":"2026-07-13T22:00:00.000Z","end":"2026-07-13T23:00:00.000Z","price_eur_mwh":139.64,"price_ct_kwh":"13.96"},"timestamp":"2026-07-13T22:51:16.972Z"},"schema":{"type":"object","properties":{"source":{"type":"string"},"query":{"type":"string"},"current_price":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"},"price_eur_mwh":{"type":"number"},"price_ct_kwh":{"type":"string"}},"required":["start","end","price_eur_mwh","price_ct_kwh"],"additionalProperties":true},"timestamp":{"type":"string"}},"required":["source","query","current_price","timestamp"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.003,"resource":{"url":"https://energy.netzhandwerker.de/research/quick","method":"POST","description":"Research and market-monitoring agents buy this endpoint to answer a focused question with a compact live market snapshot.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.003","amount_units":"3000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"3000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/price/spot":{"post":{"operationId":"pOSTPriceSpot","tags":["Live Energy Data"],"summary":"Spotpreis jetzt","description":"Trading and dispatch agents buy this endpoint to obtain the current German EPEX spot price for immediate decisions.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"EPEX DE/AT (aWATTar)","timestamp":"2026-07-13T22:51:12.102Z","current_price_ct_kwh":"13.96","current_price_eur_mwh":139.64,"valid_until":"2026-07-13T23:00:00.000Z"},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"current_price_ct_kwh":{"type":"string"},"current_price_eur_mwh":{"type":"number"},"valid_until":{"type":"string"}},"required":["source","timestamp","current_price_ct_kwh","current_price_eur_mwh","valid_until"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/price/spot","method":"POST","description":"Trading and dispatch agents buy this endpoint to obtain the current German EPEX spot price for immediate decisions.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/price/current":{"get":{"operationId":"gETPriceCurrent","tags":["Live Energy Data"],"summary":"Current Price DE/AT","description":"Free current archived spot price for Germany or Austria. Query with country=DE or country=AT. Includes latest DE/AT spread when both markets are archived.","security":[],"parameters":[{"name":"country","in":"query","required":false,"schema":{"type":"string","enum":["DE","AT"],"default":"DE"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"country":"AT","price_eur_mwh":42.1,"spread":{"spread_de_minus_at_eur_mwh":-3.2,"cheaper_country":"DE"}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"country":{"type":"string"},"price_eur_mwh":{"type":"number"},"spread":{"type":"object","properties":{"spread_de_minus_at_eur_mwh":{"type":"number"},"cheaper_country":{"type":"string"}},"required":["spread_de_minus_at_eur_mwh","cheaper_country"],"additionalProperties":true}},"required":["ok","country","price_eur_mwh","spread"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/price/forecast":{"post":{"operationId":"pOSTPriceForecast","tags":["Live Energy Data"],"summary":"24h Preis-Forecast","description":"Energy-trading and flexible-load agents buy this endpoint to compare the next 24 hours of EPEX prices and volatility.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"EPEX DE/AT 24h forecast","timestamp":"2026-07-13T22:51:10.252Z","hours":24,"stats_eur_mwh":{"avg":"123.97","min":"51.83","max":"182.48","spread":"130.65"},"hourly":[{"start":"2026-07-13T22:00:00.000Z","end":"2026-07-13T23:00:00.000Z","price_eur_mwh":139.64,"price_ct_kwh":"13.96"},{"start":"2026-07-13T23:00:00.000Z","end":"2026-07-14T00:00:00.000Z","price_eur_mwh":133.89,"price_ct_kwh":"13.39"},{"start":"2026-07-14T00:00:00.000Z","end":"2026-07-14T01:00:00.000Z","price_eur_mwh":127.35,"price_ct_kwh":"12.73"},{"start":"2026-07-14T01:00:00.000Z","end":"2026-07-14T02:00:00.000Z","price_eur_mwh":127.22,"price_ct_kwh":"12.72"},{"start":"2026-07-14T02:00:00.000Z","end":"2026-07-14T03:00:00.000Z","price_eur_mwh":127.65,"price_ct_kwh":"12.77"},{"start":"2026-07-14T03:00:00.000Z","end":"2026-07-14T04:00:00.000Z","price_eur_mwh":135.02,"price_ct_kwh":"13.50"},{"start":"2026-07-14T04:00:00.000Z","end":"2026-07-14T05:00:00.000Z","price_eur_mwh":145.81,"price_ct_kwh":"14.58"},{"start":"2026-07-14T05:00:00.000Z","end":"2026-07-14T06:00:00.000Z","price_eur_mwh":152.27,"price_ct_kwh":"15.23"},{"start":"2026-07-14T06:00:00.000Z","end":"2026-07-14T07:00:00.000Z","price_eur_mwh":135.67,"price_ct_kwh":"13.57"},{"start":"2026-07-14T07:00:00.000Z","end":"2026-07-14T08:00:00.000Z","price_eur_mwh":121.89,"price_ct_kwh":"12.19"},{"start":"2026-07-14T08:00:00.000Z","end":"2026-07-14T09:00:00.000Z","price_eur_mwh":107.48,"price_ct_kwh":"10.75"},{"start":"2026-07-14T09:00:00.000Z","end":"2026-07-14T10:00:00.000Z","price_eur_mwh":91.69,"price_ct_kwh":"9.17"},{"start":"2026-07-14T10:00:00.000Z","end":"2026-07-14T11:00:00.000Z","price_eur_mwh":64.04,"price_ct_kwh":"6.40"},{"start":"2026-07-14T11:00:00.000Z","end":"2026-07-14T12:00:00.000Z","price_eur_mwh":51.83,"price_ct_kwh":"5.18"},{"start":"2026-07-14T12:00:00.000Z","end":"2026-07-14T13:00:00.000Z","price_eur_mwh":57.73,"price_ct_kwh":"5.77"},{"start":"2026-07-14T13:00:00.000Z","end":"2026-07-14T14:00:00.000Z","price_eur_mwh":70,"price_ct_kwh":"7.00"},{"start":"2026-07-14T14:00:00.000Z","end":"2026-07-14T15:00:00.000Z","price_eur_mwh":93.26,"price_ct_kwh":"9.33"},{"start":"2026-07-14T15:00:00.000Z","end":"2026-07-14T16:00:00.000Z","price_eur_mwh":117.44,"price_ct_kwh":"11.74"},{"start":"2026-07-14T16:00:00.000Z","end":"2026-07-14T17:00:00.000Z","price_eur_mwh":138.3,"price_ct_kwh":"13.83"},{"start":"2026-07-14T17:00:00.000Z","end":"2026-07-14T18:00:00.000Z","price_eur_mwh":159.01,"price_ct_kwh":"15.90"},{"start":"2026-07-14T18:00:00.000Z","end":"2026-07-14T19:00:00.000Z","price_eur_mwh":182.48,"price_ct_kwh":"18.25"},{"start":"2026-07-14T19:00:00.000Z","end":"2026-07-14T20:00:00.000Z","price_eur_mwh":175.32,"price_ct_kwh":"17.53"},{"start":"2026-07-14T20:00:00.000Z","end":"2026-07-14T21:00:00.000Z","price_eur_mwh":168.77,"price_ct_kwh":"16.88"},{"start":"2026-07-14T21:00:00.000Z","end":"2026-07-14T22:00:00.000Z","price_eur_mwh":151.52,"price_ct_kwh":"15.15"}]},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"hours":{"type":"integer"},"stats_eur_mwh":{"type":"object","properties":{"avg":{"type":"string"},"min":{"type":"string"},"max":{"type":"string"},"spread":{"type":"string"}},"required":["avg","min","max","spread"],"additionalProperties":true},"hourly":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"},"price_eur_mwh":{"type":"number"},"price_ct_kwh":{"type":"string"}},"required":["start","end","price_eur_mwh","price_ct_kwh"],"additionalProperties":true}}},"required":["source","timestamp","hours","stats_eur_mwh","hourly"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.005,"resource":{"url":"https://energy.netzhandwerker.de/price/forecast","method":"POST","description":"Energy-trading and flexible-load agents buy this endpoint to compare the next 24 hours of EPEX prices and volatility.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.005","amount_units":"5000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/carbon/now":{"post":{"operationId":"pOSTCarbonNow","tags":["Live Energy Data"],"summary":"CO2-IntensitÃ¤t jetzt","description":"Aktuelle CO2-IntensitÃ¤t des deutschen Strommix.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"carbon_intensity_g_co2_kwh":310,"classification":"medium"},"schema":{"type":"object","properties":{"carbon_intensity_g_co2_kwh":{"type":"integer"},"classification":{"type":"string"}},"required":["carbon_intensity_g_co2_kwh","classification"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/carbon/now","method":"POST","description":"Aktuelle CO2-IntensitÃ¤t des deutschen Strommix.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/grid/load":{"post":{"operationId":"pOSTGridLoad","tags":["Live Energy Data"],"summary":"Netzlast","description":"Grid-monitoring and dispatch agents buy this endpoint to obtain the latest German system load from SMARD.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"SMARD Bundesnetzagentur","timestamp":"2026-07-13T21:45:00.000Z","consumption_mwh":12349,"grid":"DE"},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"consumption_mwh":{"type":"integer"},"grid":{"type":"string"}},"required":["source","timestamp","consumption_mwh","grid"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/grid/load","method":"POST","description":"Grid-monitoring and dispatch agents buy this endpoint to obtain the latest German system load from SMARD.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/renewable/share":{"post":{"operationId":"pOSTRenewableShare","tags":["Live Energy Data"],"summary":"Erneuerbare Anteil","description":"Carbon-aware and ESG agents buy this endpoint to measure the current renewable share and generation mix in Germany.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"Fraunhofer ISE","timestamp":"2026-07-13T22:51:15.822Z","total_mw":35323,"renewable_mw":17468.8,"fossil_mw":15203.4,"renewable_share_pct":"49.5","breakdown_mw":{"Hydro Run-of-River":1243,"Biomass":3592.5,"Fossil brown coal / lignite":7877.1,"Fossil hard coal":2815.4,"Fossil oil":377.6,"Fossil coal-derived gas":462.5,"Fossil gas":4133.3,"Geothermal":13.4,"Hydro water reservoir":39.2,"Hydro pumped storage":550.5,"Others":136.6,"Waste":1448.6,"Wind offshore":3560.3,"Wind onshore":9073,"Solar":0}},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"total_mw":{"type":"integer"},"renewable_mw":{"type":"number"},"fossil_mw":{"type":"number"},"renewable_share_pct":{"type":"string"},"breakdown_mw":{"type":"object","properties":{"Hydro Run-of-River":{"type":"integer"},"Biomass":{"type":"number"},"Fossil brown coal / lignite":{"type":"number"},"Fossil hard coal":{"type":"number"},"Fossil oil":{"type":"number"},"Fossil coal-derived gas":{"type":"number"},"Fossil gas":{"type":"number"},"Geothermal":{"type":"number"},"Hydro water reservoir":{"type":"number"},"Hydro pumped storage":{"type":"number"},"Others":{"type":"number"},"Waste":{"type":"number"},"Wind offshore":{"type":"number"},"Wind onshore":{"type":"integer"},"Solar":{"type":"integer"}},"required":["Hydro Run-of-River","Biomass","Fossil brown coal / lignite","Fossil hard coal","Fossil oil","Fossil coal-derived gas","Fossil gas","Geothermal","Hydro water reservoir","Hydro pumped storage","Others","Waste","Wind offshore","Wind onshore","Solar"],"additionalProperties":true}},"required":["source","timestamp","total_mw","renewable_mw","fossil_mw","renewable_share_pct","breakdown_mw"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/renewable/share","method":"POST","description":"Carbon-aware and ESG agents buy this endpoint to measure the current renewable share and generation mix in Germany.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/flexibility/window":{"post":{"operationId":"pOSTFlexibilityWindow","tags":["Optimization Signals"],"summary":"Flexibility Window","description":"EV, heat-pump, and flexible-load agents buy this endpoint to identify the cheapest upcoming operating hours.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"EPEX + Corrently Analyse","timestamp":"2026-07-13T22:51:13.311Z","recommendation":"Beste Lade-/Heiz-Zeitfenster der nÃ¤chsten 24h basierend auf Spotpreisen und GrÃ¼nstromIndex","cheapest_hours":[{"hour":13,"start":"2026-07-14T11:00:00.000Z","price_ct_kwh":5.18,"score":-5.18},{"hour":14,"start":"2026-07-14T12:00:00.000Z","price_ct_kwh":5.77,"score":-5.77},{"hour":12,"start":"2026-07-14T10:00:00.000Z","price_ct_kwh":6.4,"score":-6.4}],"most_expensive_hours":[{"hour":20,"start":"2026-07-14T18:00:00.000Z","price_ct_kwh":18.25,"score":-18.25},{"hour":21,"start":"2026-07-14T19:00:00.000Z","price_ct_kwh":17.53,"score":-17.53},{"hour":22,"start":"2026-07-14T20:00:00.000Z","price_ct_kwh":16.88,"score":-16.88}],"hint":"Niedrige Preise korrelieren oft mit hoher EE-Einspeisung"},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"recommendation":{"type":"string"},"cheapest_hours":{"type":"array","items":{"type":"object","properties":{"hour":{"type":"integer"},"start":{"type":"string"},"price_ct_kwh":{"type":"number"},"score":{"type":"number"}},"required":["hour","start","price_ct_kwh","score"],"additionalProperties":true}},"most_expensive_hours":{"type":"array","items":{"type":"object","properties":{"hour":{"type":"integer"},"start":{"type":"string"},"price_ct_kwh":{"type":"number"},"score":{"type":"number"}},"required":["hour","start","price_ct_kwh","score"],"additionalProperties":true}},"hint":{"type":"string"}},"required":["source","timestamp","recommendation","cheapest_hours","most_expensive_hours","hint"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.01,"resource":{"url":"https://energy.netzhandwerker.de/flexibility/window","method":"POST","description":"EV, heat-pump, and flexible-load agents buy this endpoint to identify the cheapest upcoming operating hours.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.01","amount_units":"10000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/signals/buy-sell":{"post":{"operationId":"pOSTSignalsBuySell","tags":["Optimization Signals"],"summary":"Buy/Sell Signal","description":"Trading bots buy this endpoint to receive a multi-factor buy/sell signal with RSI, Z-score, trend, and confidence.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"Multi-Faktor Energy Trading Signal v2","timestamp":"2026-07-13T22:51:20.694Z","signal":"SELL","action":"Verkauf empfohlen","confidence_score":0.75,"composite_score":-2,"indicators":{"rsi_24h":"67.2","z_score_7d":"1.60","trend_ct_kwh":"-0.97","ee_pressure":0,"fossil_share_pct":"42.0"},"factors":{"rsi":"neutral","mean_reversion":"above_avg"},"market_data":{"current_price_ct_kwh":13.96,"day_avg_ct_kwh":"12.40","day_min_ct_kwh":"5.18","day_max_ct_kwh":"18.25","week_avg_ct_kwh":"10.58"},"valid_until":"2026-07-13T23:00:00.000Z","methodology":"RSI + Z-Score (7d) + Trend + EE-Druck + Fossil-Anteil. Backtest verfÃ¼gbar auf /signals/track-record"},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"signal":{"type":"string"},"action":{"type":"string"},"confidence_score":{"type":"number"},"composite_score":{"type":"integer"},"indicators":{"type":"object","properties":{"rsi_24h":{"type":"string"},"z_score_7d":{"type":"string"},"trend_ct_kwh":{"type":"string"},"ee_pressure":{"type":"integer"},"fossil_share_pct":{"type":"string"}},"required":["rsi_24h","z_score_7d","trend_ct_kwh","ee_pressure","fossil_share_pct"],"additionalProperties":true},"factors":{"type":"object","properties":{"rsi":{"type":"string"},"mean_reversion":{"type":"string"}},"required":["rsi","mean_reversion"],"additionalProperties":true},"market_data":{"type":"object","properties":{"current_price_ct_kwh":{"type":"number"},"day_avg_ct_kwh":{"type":"string"},"day_min_ct_kwh":{"type":"string"},"day_max_ct_kwh":{"type":"string"},"week_avg_ct_kwh":{"type":"string"}},"required":["current_price_ct_kwh","day_avg_ct_kwh","day_min_ct_kwh","day_max_ct_kwh","week_avg_ct_kwh"],"additionalProperties":true},"valid_until":{"type":"string"},"methodology":{"type":"string"}},"required":["source","timestamp","signal","action","confidence_score","composite_score","indicators","factors","market_data","valid_until","methodology"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.02,"resource":{"url":"https://energy.netzhandwerker.de/signals/buy-sell","method":"POST","description":"Trading bots buy this endpoint to receive a multi-factor buy/sell signal with RSI, Z-score, trend, and confidence.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.02","amount_units":"20000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"20000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/bundle/trading":{"post":{"operationId":"pOSTBundleTrading","tags":["Optimization Signals"],"summary":"Trading Bundle","description":"Energy-trading agents buy this endpoint to receive an eight-source market bundle with key metrics, insights, and raw evidence.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","minLength":1},"sources":{"type":"array","items":{"type":"string"}}},"additionalProperties":false},"example":{"query":"Assess DE-LU day-ahead trading conditions for the next 24 hours."}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.02"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"bundle":"trading-premium","summary":"Live-Analyse \"Assess DE-LU day-ahead trading conditions for the next 24 hours.\" basierend auf 8 aktiven Datenquellen. 13 Kennzahlen extrahiert. 5 Markteinblicke. Datenstand: 2026-07-13T22:51.","key_metrics":[{"label":"EPEX Spotpreis aktuell","value":"13.96","unit":"ct/kWh"},{"label":"EPEX Tagesmittel","value":"12.40","unit":"ct/kWh"},{"label":"Erneuerbarer Anteil (Gen, live)","value":"51.2","unit":"%"},{"label":"EE-Anteil Last (live)","value":"39.7","unit":"%"},{"label":"Fossiler Anteil (live)","value":"48.5","unit":"%"},{"label":"Stromerzeugung gesamt (live)","value":"35323","unit":"MW"},{"label":"Wind onshore live","value":"9073","unit":"MW"},{"label":"Wind offshore live","value":"3560.3","unit":"MW"},{"label":"Stromverbrauch DE (15min)","value":"12349","unit":"MWh"},{"label":"GruenstromIndex 24h-Schnitt","value":"49","unit":"%"},{"label":"Solarstrahlung 24h-Schnitt","value":"306","unit":"W/m2"},{"label":"Windgeschwindigkeit 24h-Schnitt","value":"6.5","unit":"m/s"},{"label":"ENTSO-E Day-Ahead Mittel","value":"121.85","unit":"EUR/MWh"}],"market_insights":["Hohe Tagesvolatilitaet: 131 EUR/MWh Spread. Arbitrage-Potential 13.1 ct/kWh fuer Batteriespeicher (>40% RTE benoetigt).","Billigste Stunde heute: 13:00 (5.18 ct/kWh). Teuerste: 20:00 (18.25 ct/kWh).","Hohe CO2-Intensitaet (419 g/kWh). Hoher fossiler Anteil im Netz - Verbrauch nach Moeglichkeit verschieben.","Hoher Strom-Import: 6537.7 MW. Indikator fuer Netzungleichgewicht.","Geringer Stromverbrauch (12349 MWh). Niedrige Last - typisch Nacht/Wochenende."],"regulatory_context":[],"data_sources_used":["awattar_de","fraunhofer_ise","open_meteo","smard","corrently","co2_intensity","entsoe_day_ahead","entsoe_generation"],"raw_data":{"awattar_de":{"source":"aWATTar EPEX DE/AT","count":24,"prices":[{"start":"2026-07-13T22:00:00.000Z","end":"2026-07-13T23:00:00.000Z","price_eur_mwh":139.64,"price_ct_kwh":"13.96"},{"start":"2026-07-13T23:00:00.000Z","end":"2026-07-14T00:00:00.000Z","price_eur_mwh":133.89,"price_ct_kwh":"13.39"},{"start":"2026-07-14T00:00:00.000Z","end":"2026-07-14T01:00:00.000Z","price_eur_mwh":127.35,"price_ct_kwh":"12.73"},{"start":"2026-07-14T01:00:00.000Z","end":"2026-07-14T02:00:00.000Z","price_eur_mwh":127.22,"price_ct_kwh":"12.72"},{"start":"2026-07-14T02:00:00.000Z","end":"2026-07-14T03:00:00.000Z","price_eur_mwh":127.65,"price_ct_kwh":"12.77"},{"start":"2026-07-14T03:00:00.000Z","end":"2026-07-14T04:00:00.000Z","price_eur_mwh":135.02,"price_ct_kwh":"13.50"},{"start":"2026-07-14T04:00:00.000Z","end":"2026-07-14T05:00:00.000Z","price_eur_mwh":145.81,"price_ct_kwh":"14.58"},{"start":"2026-07-14T05:00:00.000Z","end":"2026-07-14T06:00:00.000Z","price_eur_mwh":152.27,"price_ct_kwh":"15.23"},{"start":"2026-07-14T06:00:00.000Z","end":"2026-07-14T07:00:00.000Z","price_eur_mwh":135.67,"price_ct_kwh":"13.57"},{"start":"2026-07-14T07:00:00.000Z","end":"2026-07-14T08:00:00.000Z","price_eur_mwh":121.89,"price_ct_kwh":"12.19"},{"start":"2026-07-14T08:00:00.000Z","end":"2026-07-14T09:00:00.000Z","price_eur_mwh":107.48,"price_ct_kwh":"10.75"},{"start":"2026-07-14T09:00:00.000Z","end":"2026-07-14T10:00:00.000Z","price_eur_mwh":91.69,"price_ct_kwh":"9.17"},{"start":"2026-07-14T10:00:00.000Z","end":"2026-07-14T11:00:00.000Z","price_eur_mwh":64.04,"price_ct_kwh":"6.40"},{"start":"2026-07-14T11:00:00.000Z","end":"2026-07-14T12:00:00.000Z","price_eur_mwh":51.83,"price_ct_kwh":"5.18"},{"start":"2026-07-14T12:00:00.000Z","end":"2026-07-14T13:00:00.000Z","price_eur_mwh":57.73,"price_ct_kwh":"5.77"},{"start":"2026-07-14T13:00:00.000Z","end":"2026-07-14T14:00:00.000Z","price_eur_mwh":70,"price_ct_kwh":"7.00"},{"start":"2026-07-14T14:00:00.000Z","end":"2026-07-14T15:00:00.000Z","price_eur_mwh":93.26,"price_ct_kwh":"9.33"},{"start":"2026-07-14T15:00:00.000Z","end":"2026-07-14T16:00:00.000Z","price_eur_mwh":117.44,"price_ct_kwh":"11.74"},{"start":"2026-07-14T16:00:00.000Z","end":"2026-07-14T17:00:00.000Z","price_eur_mwh":138.3,"price_ct_kwh":"13.83"},{"start":"2026-07-14T17:00:00.000Z","end":"2026-07-14T18:00:00.000Z","price_eur_mwh":159.01,"price_ct_kwh":"15.90"},{"start":"2026-07-14T18:00:00.000Z","end":"2026-07-14T19:00:00.000Z","price_eur_mwh":182.48,"price_ct_kwh":"18.25"},{"start":"2026-07-14T19:00:00.000Z","end":"2026-07-14T20:00:00.000Z","price_eur_mwh":175.32,"price_ct_kwh":"17.53"},{"start":"2026-07-14T20:00:00.000Z","end":"2026-07-14T21:00:00.000Z","price_eur_mwh":168.77,"price_ct_kwh":"16.88"},{"start":"2026-07-14T21:00:00.000Z","end":"2026-07-14T22:00:00.000Z","price_eur_mwh":151.52,"price_ct_kwh":"15.15"}]},"fraunhofer_ise":{"source":"Fraunhofer ISE energy-charts","timestamp":"2026-07-13T22:51:18.343Z","production_mw":{"Hydro Run-of-River":1243,"Biomass":3592.5,"Fossil brown coal / lignite":7877.1,"Fossil hard coal":2815.4,"Fossil oil":377.6,"Fossil coal-derived gas":462.5,"Fossil gas":4133.3,"Geothermal":13.4,"Hydro water reservoir":39.2,"Hydro pumped storage":550.5,"Others":136.6,"Waste":1448.6,"Wind offshore":3560.3,"Wind onshore":9073,"Solar":0},"raw_all_metrics":{"Hydro pumped storage consumption":-25.7,"Cross border electricity trading":6537.7,"Hydro Run-of-River":1243,"Biomass":3592.5,"Fossil brown coal / lignite":7877.1,"Fossil hard coal":2815.4,"Fossil oil":377.6,"Fossil coal-derived gas":462.5,"Fossil gas":4133.3,"Geothermal":13.4,"Hydro water reservoir":39.2,"Hydro pumped storage":550.5,"Others":136.6,"Waste":1448.6,"Wind offshore":3560.3,"Wind onshore":9073,"Solar":0,"Load":45823.4,"Residual load":33190.1,"Renewable share of load":39.7,"Renewable share of generation":52.4},"summary":{"total_generation_mw":35323,"renewable_mw":18072,"fossil_mw":17115,"nuclear_mw":0,"renewable_share_pct":51.2,"fossil_share_pct":48.5,"load_mw":45823.4,"cross_border_mw":6537.7,"renewable_share_of_load_pct":39.7,"renewable_share_of_generation_pct":52.4},"types_count":15},"open_meteo":{"source":"Open-Meteo","location":{"lat":51.5,"lon":10.5,"label":"DE Mitte"},"hours":24,"avg_cloudcover_pct":36,"avg_windspeed_ms":"6.5","avg_solar_radiation":306,"next_hour":{"time":"2026-07-13T00:00","temp_c":17.4,"wind_ms":4.5,"cloud_pct":0}},"smard":{"source":"SMARD Bundesnetzagentur","latest_consumption_mwh":12349,"timestamp":"2026-07-13T21:45:00.000Z","series_count":96},"corrently":{"source":"Corrently GruenstromIndex","zip":"10115","avg_eevalue_pct":49,"next_3h":[{"time":"2026-07-13T20:00:00.000Z","gruenstrom_pct":18,"co2_g_kwh":55},{"time":"2026-07-13T21:00:00.000Z","gruenstrom_pct":17,"co2_g_kwh":55},{"time":"2026-07-13T22:00:00.000Z","gruenstrom_pct":26,"co2_g_kwh":50}]},"co2_intensity":{"source":"Die Netzhandwerker CO2-Calc (Fraunhofer + UBA Emissionsfaktoren)","zone":"DE","timestamp":"2026-07-13T22:51:18.400Z","carbon_intensity_g_co2_kwh":419,"method":"mix_weighted_generation_only","total_generation_mw":35323,"renewable_share_pct":51.2},"entsoe_day_ahead":{"source":"ENTSO-E Transparency","zone":"DE-LU","day_ahead_prices_eur_mwh":[143.9,138.1,135.81,131.84,136.38,135.53,134.67,133.82,133.01,132.15,131.3,130.45,129.99,128.9,132.8,129.51,128.71,131.36,134,136.65,132.68,138.43,144.17,143.4],"count":384,"avg_eur_mwh":"121.85","min_eur_mwh":"22.85","max_eur_mwh":"228.10"},"entsoe_generation":{"source":"ENTSO-E Generation","zone":"DE","period_hours":6,"raw_size_kb":54}},"confidence_score":0.95,"timestamp":"2026-07-13T22:51:19.511Z"},"schema":{"type":"object","properties":{"bundle":{"type":"string"},"summary":{"type":"string"},"key_metrics":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"unit":{"type":"string"}},"required":["label","value","unit"],"additionalProperties":true}},"market_insights":{"type":"array","items":{"type":"string"}},"regulatory_context":{"type":"array","items":{}},"data_sources_used":{"type":"array","items":{"type":"string"}},"raw_data":{"type":"object","properties":{"awattar_de":{"type":"object","properties":{"source":{"type":"string"},"count":{"type":"integer"},"prices":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"},"price_eur_mwh":{"type":"number"},"price_ct_kwh":{"type":"string"}},"required":["start","end","price_eur_mwh","price_ct_kwh"],"additionalProperties":true}}},"required":["source","count","prices"],"additionalProperties":true},"fraunhofer_ise":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"production_mw":{"type":"object","properties":{"Hydro Run-of-River":{"type":"integer"},"Biomass":{"type":"number"},"Fossil brown coal / lignite":{"type":"number"},"Fossil hard coal":{"type":"number"},"Fossil oil":{"type":"number"},"Fossil coal-derived gas":{"type":"number"},"Fossil gas":{"type":"number"},"Geothermal":{"type":"number"},"Hydro water reservoir":{"type":"number"},"Hydro pumped storage":{"type":"number"},"Others":{"type":"number"},"Waste":{"type":"number"},"Wind offshore":{"type":"number"},"Wind onshore":{"type":"integer"},"Solar":{"type":"integer"}},"required":["Hydro Run-of-River","Biomass","Fossil brown coal / lignite","Fossil hard coal","Fossil oil","Fossil coal-derived gas","Fossil gas","Geothermal","Hydro water reservoir","Hydro pumped storage","Others","Waste","Wind offshore","Wind onshore","Solar"],"additionalProperties":true},"raw_all_metrics":{"type":"object","properties":{"Hydro pumped storage consumption":{"type":"number"},"Cross border electricity trading":{"type":"number"},"Hydro Run-of-River":{"type":"integer"},"Biomass":{"type":"number"},"Fossil brown coal / lignite":{"type":"number"},"Fossil hard coal":{"type":"number"},"Fossil oil":{"type":"number"},"Fossil coal-derived gas":{"type":"number"},"Fossil gas":{"type":"number"},"Geothermal":{"type":"number"},"Hydro water reservoir":{"type":"number"},"Hydro pumped storage":{"type":"number"},"Others":{"type":"number"},"Waste":{"type":"number"},"Wind offshore":{"type":"number"},"Wind onshore":{"type":"integer"},"Solar":{"type":"integer"},"Load":{"type":"number"},"Residual load":{"type":"number"},"Renewable share of load":{"type":"number"},"Renewable share of generation":{"type":"number"}},"required":["Hydro pumped storage consumption","Cross border electricity trading","Hydro Run-of-River","Biomass","Fossil brown coal / lignite","Fossil hard coal","Fossil oil","Fossil coal-derived gas","Fossil gas","Geothermal","Hydro water reservoir","Hydro pumped storage","Others","Waste","Wind offshore","Wind onshore","Solar","Load","Residual load","Renewable share of load","Renewable share of generation"],"additionalProperties":true},"summary":{"type":"object","properties":{"total_generation_mw":{"type":"integer"},"renewable_mw":{"type":"integer"},"fossil_mw":{"type":"integer"},"nuclear_mw":{"type":"integer"},"renewable_share_pct":{"type":"number"},"fossil_share_pct":{"type":"number"},"load_mw":{"type":"number"},"cross_border_mw":{"type":"number"},"renewable_share_of_load_pct":{"type":"number"},"renewable_share_of_generation_pct":{"type":"number"}},"required":["total_generation_mw","renewable_mw","fossil_mw","nuclear_mw","renewable_share_pct","fossil_share_pct","load_mw","cross_border_mw","renewable_share_of_load_pct","renewable_share_of_generation_pct"],"additionalProperties":true},"types_count":{"type":"integer"}},"required":["source","timestamp","production_mw","raw_all_metrics","summary","types_count"],"additionalProperties":true},"open_meteo":{"type":"object","properties":{"source":{"type":"string"},"location":{"type":"object","properties":{"lat":{"type":"number"},"lon":{"type":"number"},"label":{"type":"string"}},"required":["lat","lon","label"],"additionalProperties":true},"hours":{"type":"integer"},"avg_cloudcover_pct":{"type":"integer"},"avg_windspeed_ms":{"type":"string"},"avg_solar_radiation":{"type":"integer"},"next_hour":{"type":"object","properties":{"time":{"type":"string"},"temp_c":{"type":"number"},"wind_ms":{"type":"number"},"cloud_pct":{"type":"integer"}},"required":["time","temp_c","wind_ms","cloud_pct"],"additionalProperties":true}},"required":["source","location","hours","avg_cloudcover_pct","avg_windspeed_ms","avg_solar_radiation","next_hour"],"additionalProperties":true},"smard":{"type":"object","properties":{"source":{"type":"string"},"latest_consumption_mwh":{"type":"integer"},"timestamp":{"type":"string"},"series_count":{"type":"integer"}},"required":["source","latest_consumption_mwh","timestamp","series_count"],"additionalProperties":true},"corrently":{"type":"object","properties":{"source":{"type":"string"},"zip":{"type":"string"},"avg_eevalue_pct":{"type":"integer"},"next_3h":{"type":"array","items":{"type":"object","properties":{"time":{"type":"string"},"gruenstrom_pct":{"type":"integer"},"co2_g_kwh":{"type":"integer"}},"required":["time","gruenstrom_pct","co2_g_kwh"],"additionalProperties":true}}},"required":["source","zip","avg_eevalue_pct","next_3h"],"additionalProperties":true},"co2_intensity":{"type":"object","properties":{"source":{"type":"string"},"zone":{"type":"string"},"timestamp":{"type":"string"},"carbon_intensity_g_co2_kwh":{"type":"integer"},"method":{"type":"string"},"total_generation_mw":{"type":"integer"},"renewable_share_pct":{"type":"number"}},"required":["source","zone","timestamp","carbon_intensity_g_co2_kwh","method","total_generation_mw","renewable_share_pct"],"additionalProperties":true},"entsoe_day_ahead":{"type":"object","properties":{"source":{"type":"string"},"zone":{"type":"string"},"day_ahead_prices_eur_mwh":{"type":"array","items":{"type":"number"}},"count":{"type":"integer"},"avg_eur_mwh":{"type":"string"},"min_eur_mwh":{"type":"string"},"max_eur_mwh":{"type":"string"}},"required":["source","zone","day_ahead_prices_eur_mwh","count","avg_eur_mwh","min_eur_mwh","max_eur_mwh"],"additionalProperties":true},"entsoe_generation":{"type":"object","properties":{"source":{"type":"string"},"zone":{"type":"string"},"period_hours":{"type":"integer"},"raw_size_kb":{"type":"integer"}},"required":["source","zone","period_hours","raw_size_kb"],"additionalProperties":true}},"required":["awattar_de","fraunhofer_ise","open_meteo","smard","corrently","co2_intensity","entsoe_day_ahead","entsoe_generation"],"additionalProperties":true},"confidence_score":{"type":"number"},"timestamp":{"type":"string"}},"required":["bundle","summary","key_metrics","market_insights","regulatory_context","data_sources_used","raw_data","confidence_score","timestamp"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.02,"resource":{"url":"https://energy.netzhandwerker.de/bundle/trading","method":"POST","description":"Energy-trading agents buy this endpoint to receive an eight-source market bundle with key metrics, insights, and raw evidence.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.02","amount_units":"20000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"20000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/history/prices":{"post":{"operationId":"pOSTHistoryPrices","tags":["Research & Intelligence"],"summary":"Historische Preise","description":"Stundendaten fÃ¼r EPEX-Preise nach Periode.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["period"],"properties":{"period":{"type":"string","examples":["last-7d","last-30d","2025-Q4","2024-01"]}}},"example":{"period":"last-7d"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.05"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"period":"last-7d","rows":[]},"schema":{"type":"object","properties":{"period":{"type":"string"},"rows":{"type":"array","items":{}}},"required":["period","rows"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.05,"resource":{"url":"https://energy.netzhandwerker.de/history/prices","method":"POST","description":"Stundendaten fÃ¼r EPEX-Preise nach Periode.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.05","amount_units":"50000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/history/prices/stats":{"post":{"operationId":"pOSTHistoryPricesStats","tags":["Research & Intelligence"],"summary":"Preisstatistik","description":"Statistik fÃ¼r eine historische Preisperiode.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["period"],"properties":{"period":{"type":"string","examples":["last-7d","last-30d","2025-Q4","2024-01"]}}},"example":{"period":"last-7d"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"avg_eur_mwh":92.1,"min_eur_mwh":40.2,"max_eur_mwh":160},"schema":{"type":"object","properties":{"avg_eur_mwh":{"type":"number"},"min_eur_mwh":{"type":"number"},"max_eur_mwh":{"type":"integer"}},"required":["avg_eur_mwh","min_eur_mwh","max_eur_mwh"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.01,"resource":{"url":"https://energy.netzhandwerker.de/history/prices/stats","method":"POST","description":"Statistik fÃ¼r eine historische Preisperiode.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.01","amount_units":"10000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/subscribe/price-alert":{"post":{"operationId":"pOSTSubscribePriceAlert","tags":["Subscriptions"],"summary":"Price Alert Subscription","description":"Webhook-Subscription fÃ¼r Strompreis-Thresholds.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["webhook_url"],"properties":{"webhook_url":{"type":"string","format":"uri"},"threshold_ct_kwh":{"type":"number"},"threshold_g_kwh":{"type":"number"},"direction":{"type":"string","enum":["above","below"]}}},"example":{"webhook_url":"DE"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.10"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"subscription":"price-alert"},"schema":{"type":"object","properties":{"success":{"type":"boolean"},"subscription":{"type":"string"}},"required":["success","subscription"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.1,"resource":{"url":"https://energy.netzhandwerker.de/subscribe/price-alert","method":"POST","description":"Webhook-Subscription fÃ¼r Strompreis-Thresholds.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.10","amount_units":"100000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"100000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/subscribe/co2-low":{"post":{"operationId":"pOSTSubscribeCo2Low","tags":["Subscriptions"],"summary":"CO2 Low Subscription","description":"Webhook-Subscription fÃ¼r niedrige CO2-IntensitÃ¤t.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["webhook_url"],"properties":{"webhook_url":{"type":"string","format":"uri"},"threshold_ct_kwh":{"type":"number"},"threshold_g_kwh":{"type":"number"},"direction":{"type":"string","enum":["above","below"]}}},"example":{"webhook_url":"DE"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.10"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"subscription":"co2-low"},"schema":{"type":"object","properties":{"success":{"type":"boolean"},"subscription":{"type":"string"}},"required":["success","subscription"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.1,"resource":{"url":"https://energy.netzhandwerker.de/subscribe/co2-low","method":"POST","description":"Webhook-Subscription fÃ¼r niedrige CO2-IntensitÃ¤t.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.10","amount_units":"100000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"100000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/optimizer/cheapest-window":{"post":{"operationId":"pOSTOptimizerCheapestWindow","tags":["Optimization Signals"],"summary":"Cheapest Window","description":"Flexible-load agents buy this endpoint to schedule a contiguous operating window at the lowest average electricity price.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"duration_hours":{"type":"integer","minimum":1,"maximum":24,"default":2}},"additionalProperties":false},"example":{"duration_hours":2}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"source":"Cheapest Window Optimizer","timestamp":"2026-07-13T22:51:21.971Z","duration_hours":2,"best_start":"2026-07-14T11:00:00.000Z","best_end":"2026-07-14T13:00:00.000Z","avg_price_ct_kwh":"5.475","day_avg_ct_kwh":"12.397","savings_vs_avg_pct":"55.8","action":"charge_during_window","window":[{"start":"2026-07-14T11:00:00.000Z","end":"2026-07-14T12:00:00.000Z","price":5.18},{"start":"2026-07-14T12:00:00.000Z","end":"2026-07-14T13:00:00.000Z","price":5.77}]},"schema":{"type":"object","properties":{"source":{"type":"string"},"timestamp":{"type":"string"},"duration_hours":{"type":"integer"},"best_start":{"type":"string"},"best_end":{"type":"string"},"avg_price_ct_kwh":{"type":"string"},"day_avg_ct_kwh":{"type":"string"},"savings_vs_avg_pct":{"type":"string"},"action":{"type":"string"},"window":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"},"price":{"type":"number"}},"required":["start","end","price"],"additionalProperties":true}}},"required":["source","timestamp","duration_hours","best_start","best_end","avg_price_ct_kwh","day_avg_ct_kwh","savings_vs_avg_pct","action","window"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.005,"resource":{"url":"https://energy.netzhandwerker.de/optimizer/cheapest-window","method":"POST","description":"Flexible-load agents buy this endpoint to schedule a contiguous operating window at the lowest average electricity price.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.005","amount_units":"5000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/price/negative-forecast":{"post":{"operationId":"pOSTPriceNegativeForecast","tags":["Optimization Signals"],"summary":"Negative Price Forecast","description":"Stunden mit negativen Strompreisen in den nÃ¤chsten 24 Stunden.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"negative_hours":[],"count":0},"schema":{"type":"object","properties":{"negative_hours":{"type":"array","items":{}},"count":{"type":"integer"}},"required":["negative_hours","count"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.005,"resource":{"url":"https://energy.netzhandwerker.de/price/negative-forecast","method":"POST","description":"Stunden mit negativen Strompreisen in den nÃ¤chsten 24 Stunden.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.005","amount_units":"5000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/grid/cross-border-flows":{"get":{"operationId":"gETGridCrossBorderFlows","tags":["Live Energy Data"],"summary":"Cross-Border Flows","description":"Free latest ENTSO-E physical cross-border flows around Germany, including outbound, inbound and net export MW. Used as model feature net_export_mw.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"available":true,"net_export_mw":4200,"outbound":[{"from_area":"DE","to_area":"AT","flow_mw":900}]},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"available":{"type":"boolean"},"net_export_mw":{"type":"integer"},"outbound":{"type":"array","items":{"type":"object","properties":{"from_area":{"type":"string"},"to_area":{"type":"string"},"flow_mw":{"type":"integer"}},"required":["from_area","to_area","flow_mw"],"additionalProperties":true}}},"required":["ok","available","net_export_mw","outbound"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/stream/alerts":{"get":{"operationId":"gETStreamAlerts","tags":["Alerts"],"summary":"SSE Alert Stream","description":"Free Server-Sent Events preview for negative-price alerts. Heartbeat every 30s, prediction check every 5 minutes, max 50 concurrent connections. Later subscription product.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":"event: alert\\ndata: {\"type\":\"warning\",\"probability\":0.62}\\n\\n","schema":{"type":"string"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/predict/negative-price":{"get":{"operationId":"gETPredictNegativePrice","tags":["Optimization Signals"],"summary":"Negative Price Signal Index","description":"Free poll endpoint. Reveals whether a fresh actionable signal exists, its probability band and expiry, but withholds exact probability, action, time window and expected value until paid POST.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"signal_id":"negprice_2026-07-12T13","actionable":true,"probability_band":"high","changed_since_last_signal":true,"generated_at":"2026-07-12T12:00:00.000Z","expires_at":"2026-07-12T13:00:00.000Z","paid_endpoint":"POST /predict/negative-price","price_usdc":"0.001"},"schema":{"type":"object","properties":{"signal_id":{"type":"string"},"actionable":{"type":"boolean"},"probability_band":{"type":"string"},"changed_since_last_signal":{"type":"boolean"},"generated_at":{"type":"string"},"expires_at":{"type":"string"},"paid_endpoint":{"type":"string"},"price_usdc":{"type":"string"}},"required":["signal_id","actionable","probability_band","changed_since_last_signal","generated_at","expires_at","paid_endpoint","price_usdc"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}},"post":{"operationId":"pOSTPredictNegativePrice","tags":["Optimization Signals"],"summary":"Buy Current Negative Price Signal","description":"Battery, EV, and trading agents buy this endpoint to receive calibrated 2h/4h/6h negative-price probabilities, reviewed threshold profiles and an executable response policy.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"policy_profile":{"type":"string","enum":["balanced","utility","precision","recall"],"default":"balanced","description":"Selects the reviewed probability threshold profile without changing the underlying calibrated probabilities."}},"additionalProperties":false},"example":{"policy_profile":"balanced"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"product":"Optimization Signals","endpoint":"/predict/negative-price","query":{},"result":{"ok":true,"prediction":{"negative_price_in_2h":false,"probability":0.0012,"risk_level":"low","action":"no_action_normal_operation","target_window":{"start":"2026-07-14T00:00:00+00:00","end":"2026-07-14T01:00:00+00:00","lead_hours":2},"predicted_price_eur_mwh":110.53,"expected_saving_eur_mwh":29.11},"horizons":[{"lead_hours":2,"negative_price":false,"probability":0.0012,"risk_level":"low","predicted_price_eur_mwh":110.53,"expected_saving_eur_mwh":29.11,"target_window":{"start":"2026-07-14T00:00:00+00:00","end":"2026-07-14T01:00:00+00:00","lead_hours":2},"bot_value_score":5.82},{"lead_hours":4,"negative_price":false,"probability":0.0716,"risk_level":"low","predicted_price_eur_mwh":87.74,"expected_saving_eur_mwh":51.9,"target_window":{"start":"2026-07-14T02:00:00+00:00","end":"2026-07-14T03:00:00+00:00","lead_hours":4},"bot_value_score":10.38},{"lead_hours":6,"negative_price":false,"probability":0.1101,"risk_level":"low","predicted_price_eur_mwh":85.34,"expected_saving_eur_mwh":54.3,"target_window":{"start":"2026-07-14T04:00:00+00:00","end":"2026-07-14T05:00:00+00:00","lead_hours":6},"bot_value_score":10.86}],"decision_engine":{"schema_version":"negprice_bot_decision_v1","recommended_action":"no_action_normal_operation","should_act":false,"policy":"below_action_threshold","selected_horizon_hours":6,"target_window":{"start":"2026-07-14T04:00:00+00:00","end":"2026-07-14T05:00:00+00:00","lead_hours":6},"probability":0.1101,"expected_target_price_eur_mwh":85.34,"expected_saving_eur_mwh":54.3,"bot_value_score":10.86,"minimum_probability_threshold":0.25,"confidence":0.25,"valid_until":"2026-07-13T23:00:00+00:00","retry_after_seconds":900,"do_not_act_reason":"Probability/value threshold not met for paid bot execution.","buyer_work_removed":["multi_horizon_model_call","probability_threshold_selection","target_price_estimation","economic_value_scoring","risk_flag_packaging"]},"historical_analogies":[{"date":"2026-06-01T22:00:00+00:00","similarity":0.9999,"price_trajectory_next_6h":[131.72,125.09,120.92,120.63,124.22,131.03],"negative_duration_h":0,"min_price_eur_mwh":120.63},{"date":"2026-06-22T22:00:00+00:00","similarity":0.9996,"price_trajectory_next_6h":[139.13,135.01,135.82,138.06,142.3,164.22],"negative_duration_h":0,"min_price_eur_mwh":135.01},{"date":"2026-05-18T22:00:00+00:00","similarity":0.9996,"price_trajectory_next_6h":[141.94,139.32,138.54,141.57,146.92,164.46],"negative_duration_h":0,"min_price_eur_mwh":138.54},{"date":"2026-05-25T22:00:00+00:00","similarity":0.9994,"price_trajectory_next_6h":[125.65,120.65,121.18,119.53,128.91,143.11],"negative_duration_h":0,"min_price_eur_mwh":119.53},{"date":"2026-03-23T22:00:00+00:00","similarity":0.9989,"price_trajectory_next_6h":[141.06,124.32,110,101.64,100.38,100.97],"negative_duration_h":0,"min_price_eur_mwh":100.38},{"date":"2026-06-15T22:00:00+00:00","similarity":0.9981,"price_trajectory_next_6h":[117.32,113.78,110.99,111.24,115.12,127.99],"negative_duration_h":0,"min_price_eur_mwh":110.99},{"date":"2026-06-29T22:00:00+00:00","similarity":0.9977,"price_trajectory_next_6h":[145.37,140.21,140.72,141.37,151.51,186.66],"negative_duration_h":0,"min_price_eur_mwh":140.21},{"date":"2026-06-08T22:00:00+00:00","similarity":0.9958,"price_trajectory_next_6h":[122.16,115.5,111.22,110.48,115.84,130.15],"negative_duration_h":0,"min_price_eur_mwh":110.48}],"current_market":{"price_eur_mwh":139.64,"price_ct_kwh":13.96,"timestamp":"2026-07-13T22:00:00+00:00","trend_1h_eur_mwh":-4.43,"trend_2h_eur_mwh":-19.43,"trend_4h_eur_mwh":-43.36,"rolling_avg_4h_eur_mwh":163.74,"is_weekend":false,"is_solar_peak":false,"net_export_mw":-793.28},"weather_input":{"wind_now_ms":4.7,"wind_2h_ms":8.4,"wind_4h_ms":10.2,"solar_now_wm2":0,"solar_2h_wm2":0,"solar_4h_wm2":0,"cloud_now_pct":100,"renewable_pressure":0.313,"renewable_pressure_2h":0.56},"crossborder_input":{"net_export_mw":-793.28,"available_for_latest_hour":true,"source":"ENTSO-E physical cross-border flows"},"smard_input":{"available_for_latest_hour":false,"total_renewable_generation_mw":0,"total_load_mw":0,"residual_load_mw":0,"gas_generation_mw":0,"coal_generation_mw":0,"nuclear_generation_mw":0},"gas_input":{"available":true,"gas_price_eur_mwh":48.655,"source":"Yahoo Finance TTF=F via gas_prices_daily"},"drivers":["rapid_price_decline","large_expected_price_spread"],"risk_flags":["low_confidence"],"bot_contract":{"product":"negative_price_decision_intelligence","output_type":"ready_to_execute_decision","stable_fields":["prediction","horizons","decision_engine","historical_analogies","current_market","weather_input","crossborder_input","drivers","risk_flags","model"],"why_paid":"The payload packages calibrated probabilities, target-price regression, economic threshold policy and bot-ready action fields."},"model":{"name":"NegPrice-Decision-Intelligence-v4","version":"4.1","features":47,"weather_enhanced":true,"multi_horizon":true,"supported_horizons_hours":[2,4,6],"calibration":"isotonic probability calibration on final TimeSeriesSplit","precision":0.8115,"recall":0.8564,"f1":0.8333,"accuracy":0.9791,"price_mae_eur_mwh":13.36,"depth_mae_eur_mwh_in_sample":8.17,"duration_mae_h_in_sample":0.1,"validation":"5-fold expanding-window time-series cross-validation","training_period":{"end":"2026-07-03","start":"2023-07-02"},"trained_at":"2026-07-05T09:28:11.657666+00:00"},"schema_version":"negprice_signal_v1","expires_at":"2026-07-13T23:00:00+00:00","freshness":{"fresh":true,"generated_at":"2026-07-13T22:00:00+00:00","expires_at":"2026-07-13T23:00:00+00:00","age_seconds":3069,"seconds_until_expiry":531,"stale_reason":null}},"recommendation":"no_action_normal_operation","price_paid":"0.001","currency":"USDC","network":"eip155:8453","payment":{"required":true,"paid":true,"verified":true,"price_usd":0.001,"amount_usdc":0.001,"asset":"USDC","network":"eip155:8453","network_id":"eip155:8453","chain_id":8453,"protocol":"x402","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"meta":{"source":"NegPrice Decision Intelligence v4.1","source_type":"ml_decision_intelligence","updated_at":"2026-07-13T22:51:09.080Z","generated_at":"2026-07-13T22:51:09.081Z","cache_ttl_seconds":60,"confidence":0.25,"version":"2.0.0","limitations":[]}},"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"endpoint":{"type":"string"},"price_paid":{"type":"string"},"currency":{"type":"string","enum":["USDC"]},"network":{"type":"string","enum":["eip155:8453"]},"result":{"type":"object","properties":{"schema_version":{"type":"string"},"expires_at":{"type":["string","null"]},"prediction":{"type":"object","additionalProperties":true},"horizons":{"type":"array","items":{"type":"object","additionalProperties":true}},"decision_engine":{"type":"object","additionalProperties":true},"model":{"type":"object","additionalProperties":true},"risk_flags":{"type":"array","items":{"type":"string"}}},"required":["schema_version","expires_at","prediction","horizons","decision_engine","model"],"additionalProperties":true}},"required":["ok","endpoint","result","price_paid","currency","network"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.001,"resource":{"url":"https://energy.netzhandwerker.de/predict/negative-price","method":"POST","description":"Battery, EV, and trading agents buy this endpoint to receive calibrated 2h/4h/6h negative-price probabilities, reviewed threshold profiles and an executable response policy.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.001","amount_units":"1000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/summary/today":{"post":{"operationId":"pOSTSummaryToday","tags":["Optimization Signals"],"summary":"Daily Summary","description":"Token-effiziente Tageszusammenfassung mit konkreter Handlungsempfehlung.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.01"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"market_sentiment":"neutral","recommendation":"shift flexible load to cheapest window"},"schema":{"type":"object","properties":{"market_sentiment":{"type":"string"},"recommendation":{"type":"string"}},"required":["market_sentiment","recommendation"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.01,"resource":{"url":"https://energy.netzhandwerker.de/summary/today","method":"POST","description":"Token-effiziente Tageszusammenfassung mit konkreter Handlungsempfehlung.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.01","amount_units":"10000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/region":{"post":{"operationId":"pOSTRegion","tags":["Optimization Signals"],"summary":"Regionale Energiedaten","description":"Preis, CO2, GrÃ¼nstrom und Wetter fÃ¼r eine PLZ-Region.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["plz"],"properties":{"plz":{"type":"string","pattern":"^[0-9]{5}$"}}},"example":{"plz":"DE"}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"plz":"48599","region":"DE","data":{}},"schema":{"type":"object","properties":{"plz":{"type":"string"},"region":{"type":"string"},"data":{"type":"object","properties":{},"required":[],"additionalProperties":true}},"required":["plz","region","data"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.005,"resource":{"url":"https://energy.netzhandwerker.de/region","method":"POST","description":"Preis, CO2, GrÃ¼nstrom und Wetter fÃ¼r eine PLZ-Region.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.005","amount_units":"5000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}},"/events/grid":{"post":{"operationId":"pOSTEventsGrid","tags":["Optimization Signals"],"summary":"Grid Events","description":"Ereignisfeed fÃ¼r Dunkelflaute, Sturm, negative Preise und Rekorde.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":false},"example":{}}}},"x-purchase-guide":{"quickstart":"https://energy.netzhandwerker.de/examples/quickstart","nodejs":"https://energy.netzhandwerker.de/examples/buy-nodejs","python":"https://energy.netzhandwerker.de/examples/buy-python","curl":"https://energy.netzhandwerker.de/examples/buy-curl","signing_helper":"https://energy.netzhandwerker.de/examples/sign-eip3009.mjs"},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005"},"protocols":[{"x402":{}}],"network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","accepted_tokens":[{"symbol":"USDC","name":"USD Coin","network":"eip155:8453","chain_id":8453,"contract_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"transfer_method":"eip3009"}],"recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","facilitators":{"primary":"CDP","fallback":"https://facilitator.xpay.sh"}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"events":[{"type":"negative_price","severity":"low"}]},"schema":{"type":"object","properties":{"events":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"severity":{"type":"string"}},"required":["type","severity"],"additionalProperties":true}}},"required":["events"],"additionalProperties":true}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","price_usdc":0.005,"resource":{"url":"https://energy.netzhandwerker.de/events/grid","method":"POST","description":"Ereignisfeed fÃ¼r Dunkelflaute, Sturm, negative Preise und Rekorde.","mimeType":"application/json","serviceName":"EU Power Dispatch API","tags":["compute-scheduling","depin-workloads","carbon-aware-compute","battery-dispatch","power-trading","germany","europe"],"iconUrl":"https://energy.netzhandwerker.de/favicon.svg"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.005","amount_units":"5000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"5000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","decimals":6,"assetTransferMethod":"eip3009","version":"2","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}}],"payment_headers":{"retry_with":"PAYMENT-SIGNATURE","challenge":"PAYMENT-REQUIRED","response":"PAYMENT-RESPONSE"},"docs":"https://energy.netzhandwerker.de/examples/quickstart","signing_guide":"https://energy.netzhandwerker.de/examples/buy-nodejs"}}}},"404":{"description":"Not found","content":{"application/json":{"example":{"error":"not_found"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"example":{"error":"rate_limit_exceeded"}}}},"500":{"description":"Internal server error","content":{"application/json":{"example":{"error":"internal_server_error"}}}}}}}}}