RoboLedger: Information Blocks

Assert Metrics for a Metric Block

Writes externally-observed metric values (usage counts, marketing numbers, hand-carried figures) into the period's standing factset_type='metric' FactSet with AssertedProvenance — the observation sibling of compute-metrics. One standing FactSet per (structure, entity, period_end); re-asserting a period replaces its facts. Structures carrying Derive rules are compute-owned and rejected: asserted and derived metric series keep disjoint structures. Observations must resolve to concepts on the structure's presentation catalog. Deterministic and non-AI — no credits consumed.

Idempotency: supply an Idempotency-Key header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

post/extensions/roboledger/{graph_id}/operations/assert-metrics

Request

  • Base URL: https://api.robosystems.ai (the document declares no server; this is the origin it was published from)
  • URL: https://api.robosystems.ai/extensions/roboledger/{graph_id}/operations/assert-metrics
  • Auth: one of:
    • API key in header X-API-Key
    • HTTP bearer

Path parameters

graph_idstring required

Headers

Idempotency-Keystring nullable

Request body

structure_idstring required

Metric block structure (block_type='metric') to assert into.

period_endstring date required

Period end the observations are for — instant concepts (a follower count at month end) land as of this date; duration concepts (monthly downloads) end on it.

period_startstring date nullable

Window start for duration concepts and the standing FactSet's period_start. Instant concepts ignore it.

entity_idstring nullable

The entity the asserted values belong to, by id. Omit for the group parent.

source_systemstring required

Identifier of the asserting system (e.g. 'content-machine') — recorded as the AssertedProvenance source_system.

basis_notestring nullable

Free-text basis / source reference for the observations.

Example request

{
  "observations": [
    {
      "qname": "rsx:GithubStars",
      "value": 1240
    },
    {
      "qname": "rsx:NpmDownloads",
      "value": 3811
    }
  ],
  "period_end": "2026-07-31",
  "period_start": "2026-07-01",
  "source_system": "content-machine",
  "structure_id": "str_growth_metrics"
}

Response

Successful Response

operationstring required

Kebab-case operation name

operationIdstring required

op_-prefixed ULID for audit and SSE correlation

status'completed' | 'pending' | 'failed' required

Operation lifecycle state

atstring required

ISO-8601 UTC timestamp

createdBystring nullable

User ID that initiated the operation

idempotentReplayboolean

True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.

Changes

No recorded changes to this operation across all 1 revision of this API.