Api Endpoint

solar.halowerk.com

Integrates the supplied current over time by the trapezoidal rule, so the result is only as good as the sampling interval; gaps longer than the stated max_gap_seconds are excluded and reported. Sign convention: positive current is charging, negative is discharging. Internal resistance is estimated from the largest current step in the series and is a rough figure, not a measurement under defined conditions.

Open interactive test console

Offering

Provider
solar.halowerk.com
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
General Utilities
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://solar.halowerk.com/battery-cycle
MIME type
Not provided
First seen
2026-10-16T01:58:26.121Z
Last seen
Tags
None supplied

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.004 USDC
Atomic price: 4000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "4000",
    "payTo": "0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E"
  }
]

Observed health

Status
Healthy
Latest latency
317 ms
Average latency
897 ms
HTTP status
204
Last checked
Reachability
100% over 10 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "additionalProperties": false,
  "properties": {
    "body": {
      "additionalProperties": false,
      "properties": {
        "cells_in_series": {
          "default": 4,
          "maximum": 64,
          "minimum": 1,
          "type": "integer"
        },
        "max_gap_seconds": {
          "default": 300,
          "maximum": 86400,
          "minimum": 1,
          "type": "number"
        },
        "nominal_capacity_ah": {
          "maximum": 10000,
          "minimum": 0.1,
          "type": "number"
        },
        "rest_current_a": {
          "default": 0.5,
          "description": "Below this absolute current a sample counts as resting.",
          "maximum": 100,
          "minimum": 0,
          "type": "number"
        },
        "samples": {
          "items": {
            "additionalProperties": false,
            "properties": {
              "current_a": {
                "description": "Positive charging, negative discharging.",
                "maximum": 2000,
                "minimum": -2000,
                "type": "number"
              },
              "t_s": {
                "description": "Seconds since series start, strictly increasing.",
                "maximum": 100000000,
                "minimum": 0,
                "type": "number"
              },
              "temperature_c": {
                "maximum": 120,
                "minimum": -60,
                "type": "number"
              },
              "voltage_v": {
                "description": "Pack voltage.",
                "maximum": 1000,
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "t_s",
              "voltage_v",
              "current_a"
            ],
            "type": "object"
          },
          "maxItems": 5000,
          "minItems": 3,
          "type": "array"
        }
      },
      "required": [
        "samples"
      ],
      "type": "object"
    },
    "bodyType": {
      "enum": [
        "json",
        "form-data",
        "text"
      ],
      "type": "string"
    },
    "method": {
      "enum": [
        "POST",
        "PUT",
        "PATCH"
      ],
      "type": "string"
    },
    "type": {
      "const": "http",
      "type": "string"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "additionalProperties": false,
          "properties": {
            "cells_in_series": {
              "default": 4,
              "maximum": 64,
              "minimum": 1,
              "type": "integer"
            },
            "max_gap_seconds": {
              "default": 300,
              "maximum": 86400,
              "minimum": 1,
              "type": "number"
            },
            "nominal_capacity_ah": {
              "maximum": 10000,
              "minimum": 0.1,
              "type": "number"
            },
            "rest_current_a": {
              "default": 0.5,
              "description": "Below this absolute current a sample counts as resting.",
              "maximum": 100,
              "minimum": 0,
              "type": "number"
            },
            "samples": {
              "items": {
                "additionalProperties": false,
                "properties": {
                  "current_a": {
                    "description": "Positive charging, negative discharging.",
                    "maximum": 2000,
                    "minimum": -2000,
                    "type": "number"
                  },
                  "t_s": {
                    "description": "Seconds since series start, strictly increasing.",
                    "maximum": 100000000,
                    "minimum": 0,
                    "type": "number"
                  },
                  "temperature_c": {
                    "maximum": 120,
                    "minimum": -60,
                    "type": "number"
                  },
                  "voltage_v": {
                    "description": "Pack voltage.",
                    "maximum": 1000,
                    "minimum": 0,
                    "type": "number"
                  }
                },
                "required": [
                  "t_s",
                  "voltage_v",
                  "current_a"
                ],
                "type": "object"
              },
              "maxItems": 5000,
              "minItems": 3,
              "type": "array"
            }
          },
          "required": [
            "samples"
          ],
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST",
            "PUT",
            "PATCH"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}