Programmable Messaging API  ·  View 10 of 22  ·  Data

Data Flow

One message from submission to evidence, and where each store's retention clock starts.

Editable source SVG draw.io All views
Sources Tenant submission body + destination Carrier events receipts, inbound Landing Message ledger submission + attempts Body store 30 days default Receipt stream 13 months Inbound stream 90 days Processing Correlate to attempt provider reference Monotonic state fold no backwards moves Rate the attempt segments x price Route quality rollup Dataflow Serving State projection Bigtable Route quality store Memorystore Analytics and evidence BigQuery Consumers Status API and callbacks Route selector reads quality Metering and billing Regulator and dispute 7 years late, duplicated rebuildable one per attempt Data Flow — One Message, From Submission To Evidence External / third party Data store Queue / topic Application we own Interface / broker event / async synchronous The projection is a cache of the ledger; the receipt stream outlives the bodies it describes. v 1.0 · owner Integration Platform Architecture

Decisions

  • The state projection is a cache of the ledger, so it may lag and must be rebuildable without a maintenance window.
  • Route quality is derived from the same receipt stream that answers tenant queries, so routing is driven by observed delivery rather than by contracted promises.
  • Rating happens per attempt, because a fallback hop, a re-route and a multi-segment body each cost money independently.

Assumptions

  • Ledger and attempts 90 days hot, 13 months archived; receipts 13 months; bodies 30 days default.
  • RTO 2 h to rebuild the full projection from the ledger, with status queries degraded but available.

Risks

  • If receipts are retained no longer than bodies, a billing dispute arrives after the evidence has gone.