Skip to content
MirrorFirm

What tables, fields and keys would a release use for this workflow?

A release can ship one JSONL or Parquet file per record type, with a schema file and foreign keys linking requests, matrix rows, delegations and decisions.

A release can ship as one file per record type, in JSONL or Parquet, with a schema file describing each column and key. A typical layout:

- `requests`: `request_id`, `category`, `amount`, `currency`, `risk_rating`, `requester_role_id`, `submitted_at`, `state` - `roles`: `role_id`, `title`, `team`, `reports_to_role_id` - `authority_matrix`: `row_id`, `role_id`, `category`, `max_amount`, `max_risk_rating`, `effective_from`, `effective_to` - `delegations`: `delegation_id`, `grantor_role_id`, `delegate_role_id`, `cap_amount`, `scope_category`, `valid_from`, `valid_to`, `revoked_at` - `decisions`: `decision_id`, `request_id`, `approver_role_id`, `matrix_row_id`, `delegation_id`, `outcome`, `decided_at`, `reason_code` - `exceptions`: `exception_id`, `request_id`, `type`, `notes`

Foreign keys follow the names: `decisions.request_id` points to `requests.request_id`, and `decisions.matrix_row_id` points to `authority_matrix.row_id`. The field `delegation_id` is null when no delegation was used. Timestamps are ISO 8601 in a single stated timezone, and amounts are stored as decimals rather than floats in Parquet.

Ask for the schema file and a key-integrity report with a sample, and check that every foreign key resolves before you list the release. Column names can be adjusted to match your catalogue's conventions; scope this in a pilot.

Named fields and resolvable foreign keys let your ingestion pipeline validate a release automatically before it reaches a listing.

Audience:
Licensed resellers
Content type:
Integration
Buyer question:
What can be generated

Content release: r-a220eb6e099b243b

More on Delegated approval