{"openapi":"3.1.0","info":{"title":"Netzhandwerker Energy Research Hub","version":"1.6.0","description":"Live electricity prices, carbon intensity, grid load, renewable share, flexibility windows, battery arbitrage, trading signals and ESG reporting for autonomous agents.","contact":{"name":"Die Netzhandwerker","email":"info@netzhandwerker.de","url":"https://netzhandwerker.de"}},"servers":[{"url":"https://energy.netzhandwerker.de"}],"components":{"securitySchemes":{"x402":{"type":"apiKey","in":"header","name":"PAYMENT","description":"x402 payment payload. Production uses Base Mainnet (eip155:8453), chain 8453, USDC. Legacy scanners may send PAYMENT-SIGNATURE."}}},"x-service":{"endpoint_count":74,"paid_endpoint_count":37,"free_endpoint_count":37,"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","/bundle/ev-charging","/bundle/heating","/flexibility/window","/arbitrage/battery","/signals/buy-sell","/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","/research/deep","/bundle/esg-reporting","/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://x402.org/facilitator","environment":"production","port":3007},"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":{"/":{"get":{"operationId":"gET","tags":["Human and bot overview"],"summary":"Startseite mit serverseitigen Live-Werten","description":"Bot-taugliche HTML-Uebersicht 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":"1.6.0","network":"Base Mainnet"}}}},"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 fuer alle dokumentierten Public Routes.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"openapi":"3.1.0","info":{"title":"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.txt":{"get":{"operationId":"gETLlmsTxt","tags":["Discovery"],"summary":"LLM Kurzkontext","description":"Kompakte Textdatei fuer 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":"Ausfuehrliche 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 fuer 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 fuer Plugin-Scanner mit OpenAPI-Link.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"schema_version":"v1","name_for_model":"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"}}}}}}},"/.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":[]}}}},"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"}}}},"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 fuer x402-Scanner.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"payment_target":{"network":"eip155:8453","currency":"USDC"}}}}},"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 verfuegbarer Katalog der Premium-Artikel.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"articles":[{"id":"001","title":"Mieterstrom","price_usdc":"0.02"}]}}}},"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":"Kurzuebersicht fuer 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"]}}}},"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"]}}}},"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":[]}}}},"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":"Trust Page","description":"Operator, payment network, uptime links, API version and risk notes as HTML or JSON via Accept header.","security":[],"responses":{"200":{"description":"OK","content":{"text/html":{"example":{"operator":"Die Netzhandwerker","chain_id":8453,"asset":"USDC"}}}},"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":"1.6.0","endpoint_count":0}}}},"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 GruenstromIndex","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"]}]}}}},"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 Redispatch risk for NRW in the next 24h.","recommended_endpoint":"/grid/congestion"},{"need":"I need a cheaper payment test endpoint.","recommended_endpoint":"/demo/paid-sample"}]}}}},"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}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"need_id":"need_123","recommended_existing_offer":{"endpoint":"/energy/decision","price_usdc":0.25}}}}},"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-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 verfuegbares Beispiel fuer Research-Ausgaben.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"note":"Frei verfuegbares Beispiel","full_endpoint":"POST /research"}}}},"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 verfuegbares 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}"}}}},"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 fuer 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}}}},"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 fuer 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"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"jsonrpc":"2.0","result":{"tools":[]}}}}},"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 verfuegbares Agenten-Manifest fuer 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"}}}},"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 fuer 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"}}}}},"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 fuer zuvor bezahlte Async-Tasks.","security":[],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"id":"task_123","status":"completed","result":{}}}}},"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 fuer POST /research.","security":[{"x402":[]}],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"error":"payment_required","endpoint":"POST /research"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/research","method":"GET","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fuer POST /research.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer 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"}}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"summary":"...","key_metrics":[],"confidence_score":0.9}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/research","method":"POST","description":"Aggregierte Energie-Recherche fuer DE/EU aus Live-Datenquellen.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer POST /articles/{id}.","security":[{"x402":[]}],"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"error":"payment_required","endpoint":"POST /articles/{id}"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/articles/{id}","method":"GET","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fuer POST /articles/{id}.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"type":"premium_article","article":{}}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/articles/{id}","method":"POST","description":"Volltext eines Energie-Fachartikels.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer POST /tasks.","security":[{"x402":[]}],"x-payment-info":{"price":{"mode":"minimum","currency":"USDC","amount":"1.00"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"error":"payment_required","endpoint":"POST /tasks"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/tasks","method":"GET","description":"GET-Fallback mit maschinenlesbarer 402-Antwort fuer POST /tasks.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"1.00","amount_units":"1000000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}},"x-payment-info":{"price":{"mode":"minimum","currency":"USDC","amount":"1.00"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"task_id":"task_123","status":"queued"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/tasks","method":"POST","description":"Asynchroner Deep-Dive Task mit Mindest-Bounty.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"1.00","amount_units":"1000000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"1000000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 Sample","description":"Machine-readable discovery for the x402 sample endpoint. The actual access flow is gated by x402 payment.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.001"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"endpoint":"/demo/paid-sample","payment_required":true,"price_usd":0.001,"asset":"USDC","network":"Base Mainnet","chain_id":8453}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/demo/paid-sample","method":"GET","description":"Machine-readable discovery for the x402 sample endpoint. The actual access flow is gated by x402 payment.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":[],"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"},"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"}}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"endpoint":"/energy/decision","method":"POST","payment_required":true,"price_usd":0.25,"asset":"USDC","network":"Base Mainnet","chain_id":8453}}}},"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":"Central premium decision endpoint. Use it if you want one paid answer instead of combining multiple raw data and signal endpoints.","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"},"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"}}}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.25"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"ok":true,"product":"Optimization Signals","endpoint":"/energy/decision","result":{"decision":"charge_later","recommended_window":{"start":"2026-06-18T01:00:00.000Z","end":"2026-06-18T05:00:00.000Z"},"reason":"Estimated cheapest low-carbon window in the requested period.","expected_saving_eur":0,"carbon_reduction_percent":0,"confidence":0.74,"alternatives":[]}}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/energy/decision","method":"POST","description":"Central premium decision endpoint. Use it if you want one paid answer instead of combining multiple raw data and signal endpoints.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.25","amount_units":"250000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"250000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"Kompakte Research-Antwort mit Live-Kennzahlen.","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"}}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.01"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"mode":"quick","summary":"..."}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/research/quick","method":"POST","description":"Kompakte Research-Antwort mit Live-Kennzahlen.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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/deep":{"post":{"operationId":"pOSTResearchDeep","tags":["Research & Intelligence"],"summary":"Deep Research","description":"Tiefe Research-Antwort mit Premium-Quellen und LLM-Synthese.","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"}}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.50"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"mode":"deep","synthesis":"..."}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/research/deep","method":"POST","description":"Tiefe Research-Antwort mit Premium-Quellen und LLM-Synthese.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.50","amount_units":"500000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"500000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"Aktueller EPEX Spot-Strompreis fuer Deutschland.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.01"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"current_price_ct_kwh":"8.40","source":"EPEX DE/AT (aWATTar)"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/price/spot","method":"POST","description":"Aktueller EPEX Spot-Strompreis fuer Deutschland.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"EPEX Day-Ahead Preise mit Min/Max/Spread.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"hours":24,"stats_eur_mwh":{"avg":"92.10","min":"40.20","max":"160.00"}}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/price/forecast","method":"POST","description":"EPEX Day-Ahead Preise mit Min/Max/Spread.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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-Intensitaet jetzt","description":"Aktuelle CO2-Intensitaet des deutschen Strommix.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.01"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"carbon_intensity_g_co2_kwh":310,"classification":"medium"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/carbon/now","method":"POST","description":"Aktuelle CO2-Intensitaet des deutschen Strommix.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"Aktuelle Netzlast aus SMARD.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"latest_consumption_mwh":57120,"source":"SMARD Bundesnetzagentur"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/grid/load","method":"POST","description":"Aktuelle Netzlast aus SMARD.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"Live-Anteil erneuerbarer Energien am deutschen Strommix.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.02"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"renewable_share_pct":"48.6","source":"Fraunhofer ISE"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/renewable/share","method":"POST","description":"Live-Anteil erneuerbarer Energien am deutschen Strommix.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"Guensigste Zeitfenster fuer flexible Verbraucher.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.03"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"best_hours":[]}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/flexibility/window","method":"POST","description":"Guensigste Zeitfenster fuer flexible Verbraucher.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.03","amount_units":"30000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"30000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}},"/arbitrage/battery":{"post":{"operationId":"pOSTArbitrageBattery","tags":["Optimization Signals"],"summary":"Battery Arbitrage","description":"Strategie fuer Batteriespeicher-Arbitrage mit ROI-Betrachtung.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"capacity_kwh":{"type":"number"},"efficiency":{"type":"number"}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.10"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"strategy":"charge_low_discharge_high","estimated_profit_eur":1.42}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/arbitrage/battery","method":"POST","description":"Strategie fuer Batteriespeicher-Arbitrage mit ROI-Betrachtung.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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-Signal aus Preis, RSI, Trend, EE-Druck und Fossil-Anteil.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.20"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"signal":"buy","confidence":0.72}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/signals/buy-sell","method":"POST","description":"Trading-Signal aus Preis, RSI, Trend, EE-Druck und Fossil-Anteil.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.20","amount_units":"200000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"200000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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/ev-charging":{"post":{"operationId":"pOSTBundleEvCharging","tags":["Optimization Signals"],"summary":"EV Charging Bundle","description":"Preis, CO2 und Ladefenster fuer Elektroauto-Ladung.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"recommendation":"charge_between_02_00_and_04_00"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/bundle/ev-charging","method":"POST","description":"Preis, CO2 und Ladefenster fuer Elektroauto-Ladung.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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/heating":{"post":{"operationId":"pOSTBundleHeating","tags":["Optimization Signals"],"summary":"Heating Bundle","description":"Preis, Wetter und EE-Anteil fuer Waermepumpen-Optimierung.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"recommendation":"preheat_during_low_price_window"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/bundle/heating","method":"POST","description":"Preis, Wetter und EE-Anteil fuer Waermepumpen-Optimierung.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":["Research & Intelligence"],"summary":"Trading Bundle","description":"Kombinierte Markt- und Trading-Daten.","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"}}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.30"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"signal":"hold","components":{}}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/bundle/trading","method":"POST","description":"Kombinierte Markt- und Trading-Daten.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.30","amount_units":"300000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"300000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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/esg-reporting":{"post":{"operationId":"pOSTBundleEsgReporting","tags":["Research & Intelligence"],"summary":"ESG Reporting Bundle","description":"CO2, EE-Anteil und Quellenhinweise fuer ESG-Reporting.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.40"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"carbon_intensity_g_co2_kwh":310,"renewable_share_pct":48.6}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/bundle/esg-reporting","method":"POST","description":"CO2, EE-Anteil und Quellenhinweise fuer ESG-Reporting.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.40","amount_units":"400000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"400000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer 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"]}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.50"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"period":"last-7d","rows":[]}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/history/prices","method":"POST","description":"Stundendaten fuer EPEX-Preise nach Periode.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.50","amount_units":"500000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"500000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer 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"]}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.20"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"avg_eur_mwh":92.1,"min_eur_mwh":40.2,"max_eur_mwh":160}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/history/prices/stats","method":"POST","description":"Statistik fuer eine historische Preisperiode.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.20","amount_units":"200000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"200000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}},"/solar/forecast":{"post":{"operationId":"pOSTSolarForecast","tags":["Optimization Signals"],"summary":"Solar Forecast","description":"Solarstrahlung und Bewoelkung fuer Region oder PLZ.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"plz":{"type":"string"},"lat":{"type":"number"},"lon":{"type":"number"}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"avg_solar_radiation":220,"avg_cloudcover_pct":54}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/solar/forecast","method":"POST","description":"Solarstrahlung und Bewoelkung fuer Region oder PLZ.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}},"/wind/forecast":{"post":{"operationId":"pOSTWindForecast","tags":["Optimization Signals"],"summary":"Wind Forecast","description":"Winddaten fuer Region oder PLZ.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"plz":{"type":"string"},"lat":{"type":"number"},"lon":{"type":"number"}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.03"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"avg_windspeed_ms":"5.7"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/wind/forecast","method":"POST","description":"Winddaten fuer Region oder PLZ.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.03","amount_units":"30000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"30000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer 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"]}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"5.00"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"subscription":"price-alert"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/subscribe/price-alert","method":"POST","description":"Webhook-Subscription fuer Strompreis-Thresholds.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"5.00","amount_units":"5000000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"5000000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer niedrige CO2-Intensitaet.","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"]}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"3.00"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"success":true,"subscription":"co2-low"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/subscribe/co2-low","method":"POST","description":"Webhook-Subscription fuer niedrige CO2-Intensitaet.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"3.00","amount_units":"3000000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"3000000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":"Billigstes zusammenhaengendes Zeitfenster fuer EV, Batterie oder Waermepumpe.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"duration_hours":{"type":"integer","default":2}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.10"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"best_start":"2026-06-17T02:00:00.000Z","best_end":"2026-06-17T04:00:00.000Z","avg_price_ct_kwh":4.8}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/optimizer/cheapest-window","method":"POST","description":"Billigstes zusammenhaengendes Zeitfenster fuer EV, Batterie oder Waermepumpe.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 naechsten 24 Stunden.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"negative_hours":[],"count":0}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/price/negative-forecast","method":"POST","description":"Stunden mit negativen Strompreisen in den naechsten 24 Stunden.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.10"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"market_sentiment":"neutral","recommendation":"shift flexible load to cheapest window"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/summary/today","method":"POST","description":"Token-effiziente Tageszusammenfassung mit konkreter Handlungsempfehlung.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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/congestion":{"post":{"operationId":"pOSTGridCongestion","tags":["Optimization Signals"],"summary":"Grid Congestion","description":"Netzengpass- und Redispatch-Risiko.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.15"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"risk_level":"medium","affected_regions":[]}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/grid/congestion","method":"POST","description":"Netzengpass- und Redispatch-Risiko.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.15","amount_units":"150000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"150000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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, Gruenstrom und Wetter fuer eine PLZ-Region.","security":[{"x402":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["plz"],"properties":{"plz":{"type":"string","pattern":"^[0-9]{5}$"}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"plz":"48599","region":"Gronau","data":{}}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/region","method":"POST","description":"Preis, CO2, Gruenstrom und Wetter fuer eine PLZ-Region.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}},"/mining/profitability":{"post":{"operationId":"pOSTMiningProfitability","tags":["Optimization Signals"],"summary":"BTC Mining Profitability","description":"Profitabilitaet fuer ASIC-Mining mit aktuellem Strompreis.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"asic_model":{"type":"string"},"electricity_price_ct_kwh":{"type":"number"}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.10"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"profitable":false,"daily_profit_eur":-2.4}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/mining/profitability","method":"POST","description":"Profitabilitaet fuer ASIC-Mining mit aktuellem Strompreis.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}},"/portfolio/optimize":{"post":{"operationId":"pOSTPortfolioOptimize","tags":["Optimization Signals"],"summary":"Portfolio Optimize","description":"24h Fahrplan fuer Batterie, PV und Verbrauch.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"battery_kwh":{"type":"number"},"pv_kwp":{"type":"number"},"daily_consumption_kwh":{"type":"number"}}}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.50"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"plan":[{"hour":0,"action":"charge"}],"estimated_savings_eur":3.2}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/portfolio/optimize","method":"POST","description":"24h Fahrplan fuer Batterie, PV und Verbrauch.","mimeType":"application/json"},"payment":{"protocol":"x402","scheme":"exact","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount_usdc":"0.50","amount_units":"500000","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","network":"Base Mainnet","network_id":"eip155:8453","chain_id":8453},"accepts":[{"scheme":"exact","network":"eip155:8453","amount":"500000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300,"extra":{"asset":"USDC","network_name":"Base Mainnet"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}},"/score/grid-health":{"post":{"operationId":"pOSTScoreGridHealth","tags":["Optimization Signals"],"summary":"Grid Health Score","description":"Score 0-100 fuer Netzgesundheit aus EE-Anteil, Preis, Wetter und Nachfrage.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"score":74,"status":"good"}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/score/grid-health","method":"POST","description":"Score 0-100 fuer Netzgesundheit aus EE-Anteil, Preis, Wetter und Nachfrage.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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 fuer Dunkelflaute, Sturm, negative Preise und Rekorde.","security":[{"x402":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"additionalProperties":true}}}},"x-payment-info":{"price":{"mode":"fixed","currency":"USDC","amount":"0.05"},"protocol":"x402","network":"eip155:8453","chain_id":8453,"asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"},"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"events":[{"type":"negative_price","severity":"low"}]}}}},"400":{"description":"Invalid request","content":{"application/json":{"example":{"error":"invalid_request"}}}},"402":{"description":"Payment Required","content":{"application/json":{"example":{"x402Version":2,"error":"payment_required","resource":{"url":"https://energy.netzhandwerker.de/events/grid","method":"POST","description":"Ereignisfeed fuer Dunkelflaute, Sturm, negative Preise und Rekorde.","mimeType":"application/json"},"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"}}],"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"]},"need_feedback":{"question":"If this is not the exact endpoint your agent needs, tell us what to build or return.","submit_need_endpoint":"/wallet-bot/needs","example":{"need":"I need a 24h Redispatch risk forecast for NRW.","max_budget_usdc":0.2,"desired_output_format":"json","recurring_need":true}},"docs":"https://energy.netzhandwerker.de/docs","openapi":"https://energy.netzhandwerker.de/openapi.json","mcp":"https://energy.netzhandwerker.de/mcp"}}}},"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"}}}}}}}}}