Store

Organizing the Jobs' outputs across time and entities

The Store is Deck’s persistent memory. It captures and organizes everything jobs produce — not just during a single session, but across all sessions and all connections related to an end-user or entity.

It’s where developers retrieve the actual value generated by their jobs.


Structure of the Store

  • Entity-centric: All data is indexed by the real-world entities that Jobs act on (e.g. accounts, locations, meters)
  • Time-aware: Every output is timestamped and stored with Job lineage
  • Job-aware: You can query data from a specific Job or across Jobs of a given type

Why it matters

  • Stability across connections: Even if credentials change or expire, data remains linked to the same account or entity
  • Structured access: Developers can query the Store via simple API endpoints — by account, Job type, or time range
  • Enables product logic: Power timelines, dashboards, monitoring, history comparisons, and more

What lives in the Store

  • Documents — statements, confirmations, exports
  • Normalized records — balances, usage, payments, statuses
  • Messages — confirmations, error logs, or audit trails

When to use the Store

When an agent extracts data from a website, the usual endeavor is to return said data as JSON via a webhook. However, there are cases where the amount of data extracted exceeds what a webhook can return. In these cases, the data will be written in a CSV file, then stored in our Store.

The webhook will return a URL which has already been filtered so you can access only the document that was created with the data you wanted at the endpoint /jobs/documents/list. Using that URL will give you a list of documents, each with a document ID, which you can then download from the endpoint /jobs/documents/file.