# HALOWERK iotwerk > HALOWERK iotwerk provides machine-readable results paid via x402. > Netz Base Mainnet, Zahlungsmittel USDC, Empfänger 0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E. ## So wird bezahlt 1. Call the route without a payment header. The 402 response includes accepts, description, and inputSchema. 2. Bedingungen mit einem x402-Client signieren. 3. Repeat the call with the proof in the PAYMENT-SIGNATURE header. Eine 402-Antwort kostet nichts und löst keine Arbeit aus. Scheitert die Arbeit, trägt die Antwort charged=false und es wird nicht abgerechnet. ## Endpunkte ### POST /v1/device-auth Canonicalizes device_id, nonce and message, computes an HMAC-SHA256 tag with caller-supplied ephemeral key material, and optionally compares a claimed tag in constant time. It does not provision devices, store keys or replace asymmetric device identity; do not submit long-lived production secrets. - Preis: 0.002 USDC - MCP-Werkzeug: `iotwerk_device_auth` - Eingabe: `["device_id","nonce","message","ephemeral_key","claimed_tag_hex"]` ### POST /v1/sensor-calibration Fits reference = slope × observed + offset with ordinary least squares over paired caller-supplied readings. It reports residual diagnostics and does not claim traceability, uncertainty accreditation or suitability beyond the supplied calibration range. - Preis: 0.003 USDC - MCP-Werkzeug: `iotwerk_sensor_calibration` - Eingabe: `["observed","reference"]` ### POST /v1/ota-sign Canonicalizes firmware hash, version, device model and minimum bootloader version, then produces a SHA-256 manifest digest and HMAC-SHA256 release tag using caller-supplied ephemeral key material. This is a symmetric integrity tag, not a vendor PKI signature or code-signing service. - Preis: 0.003 USDC - MCP-Werkzeug: `iotwerk_ota_sign` - Eingabe: `["firmware_sha256","version","device_model","minimum_bootloader","ephemeral_release_key"]` ### POST /v1/mesh-route Computes a deterministic shortest path over caller-supplied directed or bidirectional links with non-negative costs. It does not measure live radio conditions, reserve capacity or push routes to devices. - Preis: 0.004 USDC - MCP-Werkzeug: `iotwerk_mesh_route` - Eingabe: `["nodes","links","start","goal"]` ### POST /v1/fleet-anomaly Computes cohort median, median absolute deviation and robust z-scores for one numeric reading per device. A caller-selected threshold determines flags. It detects cross-sectional outliers only and does not diagnose root cause or learn temporal behavior. - Preis: 0.003 USDC - MCP-Werkzeug: `iotwerk_fleet_anomaly` - Eingabe: `["readings","threshold"]` ### POST /v1/edge-compute-bid Filters caller-supplied bids by CPU, memory and latency constraints, computes workload cost from quoted unit prices, and ranks feasible candidates by total cost then latency. It does not contact providers, attest hardware or place a bid. - Preis: 0.004 USDC - MCP-Werkzeug: `iotwerk_edge_compute_bid` - Eingabe: `["cpu_seconds","memory_gb_seconds","max_latency_ms","candidates"]` ### POST /v1/lora-coverage Computes free-space loss at one metre, applies a caller-supplied path-loss exponent over distance, then reports estimated receive power and margin against receiver sensitivity. This planning estimate does not model terrain, Fresnel obstruction, interference, antenna mismatch or regulatory duty cycle. - Preis: 0.003 USDC - MCP-Werkzeug: `iotwerk_lora_coverage` - Eingabe: `["frequency_mhz","distance_km","tx_power_dbm","tx_antenna_gain_dbi","rx_antenna_gain_dbi","receiver_sensitivity_dbm","path_loss_exponent","miscellaneous_loss_db"]` ### POST /v1/digital-twin-sync Groups caller-supplied scalar field changes by field name, selects the highest version, and reports a conflict when equal-version values differ. It does not connect to a twin platform, merge nested documents or resolve semantic conflicts. - Preis: 0.004 USDC - MCP-Werkzeug: `iotwerk_digital_twin_sync` - Eingabe: `["local_changes","remote_changes"]` ### POST /v1/battery-degradation Applies a transparent heuristic: cycle fade scales with equivalent full cycles and depth-of-discharge exponent; calendar fade scales with square-root time and a temperature factor. Coefficients are caller supplied or declared defaults. This is not cell-chemistry validation, warranty advice or a safety prognosis. - Preis: 0.003 USDC - MCP-Werkzeug: `iotwerk_battery_degradation` - Eingabe: `["initial_capacity_ah","equivalent_full_cycles","average_depth_of_discharge_percent","average_temperature_c","calendar_days","cycle_fade_per_full_cycle_percent","calendar_fade_per_sqrt_year_percent"]` ### POST /v1/robotic-path-clearance Computes the minimum Euclidean distance from each circular obstacle center to every path segment, then subtracts obstacle radius and robot radius. It detects planar static clearance only; it does not model robot shape beyond a circle, dynamics, uncertainty or moving obstacles. - Preis: 0.004 USDC - MCP-Werkzeug: `iotwerk_robotic_path_clearance` - Eingabe: `["path","obstacles","robot_radius","required_margin"]` ## Weitere Flächen - OpenAPI: https://iot.halowerk.com/openapi.json - Preise: https://iot.halowerk.com/pricing - x402-Manifest: https://iot.halowerk.com/.well-known/x402 - Bazaar: https://iot.halowerk.com/.well-known/x402/bazaar - MCP: https://iot.halowerk.com/mcp ## Missing a capability? If you looked for something this service does not offer, say so. One call, no payment, no sign-up, no account: POST https://bedarf.halowerk.com/capabilities/request Content-Type: application/json {"requested_capability": "what you would buy", "description": "the use case, one sentence", "callback_url": "optional - we call back once it exists"} Only requested_capability is required, 3 to 160 characters. Schema and status: https://bedarf.halowerk.com/openapi.json Submissions are held for review and are never published verbatim.