JSON Schemas
The JSON Schema 2020-12 files for every artifact kind and value object, exported from the ump-spec models.
The $id values are identifiers and do not yet resolve; the files are served under /schemas/v1/ on this site, and the ump-spec package regenerates them with python -m ump_spec export-schemas <dir>. Validators should load them from a local copy rather than fetch them over the network.
Download them one by one below, or start from index.json, which lists every file.
redacted-engine and redacted_engine stand in for one unpublished engine identifier. They are placeholders, not standard values. In benchmark-row.json the placeholder is an enum value, so the published copy differs from the package export at that one value: a document that uses the real identifier validates against the package but fails the published copy.
The OpenAPI documents for the core API (specification section 19) and the engine profile (section 8) are not published yet. They will be served under /openapi/ on this site.
Artifact kinds
Section titled “Artifact kinds”The doc body of each artifact kind. Each example is the smallest document the schema accepts, built from the schema and validated against it in CI; it shows shape, not realistic values.
| Kind | Schema | $id |
|---|---|---|
dataset | dataset.json | https://schemas.ump.dev/v1/dataset.json |
transform_step | transform-step.json | https://schemas.ump.dev/v1/transform-step.json |
model_manifest | model-manifest.json | https://schemas.ump.dev/v1/model-manifest.json |
capability_manifest | capability-manifest.json | https://schemas.ump.dev/v1/capability-manifest.json |
test_plan | test-plan.json | https://schemas.ump.dev/v1/test-plan.json |
test_result | test-result.json | https://schemas.ump.dev/v1/test-result.json |
calibration | calibration.json | https://schemas.ump.dev/v1/calibration.json |
scenario | scenario.json | https://schemas.ump.dev/v1/scenario.json |
optimisation_result | optimisation-result.json | https://schemas.ump.dev/v1/optimisation-result.json |
decision_record | decision-record.json | https://schemas.ump.dev/v1/decision-record.json |
evidence_card | evidence-card.json | https://schemas.ump.dev/v1/evidence-card.json |
acceptance_report | acceptance-report.json | https://schemas.ump.dev/v1/acceptance-report.json |
benchmark_row | benchmark-row.json | https://schemas.ump.dev/v1/benchmark-row.json |
prior_card | prior-card.json | https://schemas.ump.dev/v1/prior-card.json |
benchmark_cell | benchmark-cell.json | https://schemas.ump.dev/v1/benchmark-cell.json |
priority_snapshot | priority-snapshot.json | https://schemas.ump.dev/v1/priority-snapshot.json |
agent_eval_report | agent-eval-report.json | https://schemas.ump.dev/v1/agent-eval-report.json |
data_connection | data-connection.json | https://schemas.ump.dev/v1/data-connection.json |
Examples
Section titled “Examples”Example dataset document
{ "name": "example", "ref": "example", "scope": "example", "sha256": "example"}Example transform_step document
{ "type": "filter"}Example model_manifest document
{ "engine": "example", "name": "example", "tier": "A"}Example capability_manifest document
{ "engine": "example"}Example test_plan document
{ "channel": "example", "estimand": {}, "question": "example"}Example test_result document
{ "admissibility_class": "A", "channel": "example", "estimand": {}, "method": "example"}Example calibration document
{ "model_id_in": "example", "route": "R1"}Example scenario document
{ "plan": []}Example optimisation_result document
{ "allocation": [], "expected_kpi": { "estimand": {}, "interval": { "hi": 1, "lo": 1 }, "plain_words": "example", "value": 1 }, "total_budget": 1}Example decision_record document
{ "question": "example"}Example evidence_card document
{ "subject_id": "example", "summary": "example", "title": "example"}Example acceptance_report document
{ "engine": "example"}Example benchmark_row document
{ "channel": "example", "client_ref": "example", "quarter": "example", "source_type": "mmm_meridian", "vertical": "example"}Example prior_card document
{ "channel": "example", "client_ref": "example", "mu": 1, "sd": 1, "source_cell": "example", "vintage_id": "example"}Example benchmark_cell document
{ "channel": "example", "ci95": [ 1, 1 ], "k": 1, "mu": 1, "n": 1, "pi95": [ 1, 1 ], "se": 1, "tau": 1, "vertical": "example", "vintage_id": "example"}Example priority_snapshot document
{}Example agent_eval_report document
{ "agent": "example", "agent_version": "example"}Example data_connection document
{ "connector": "rest_api", "name": "example"}Other schemas
Section titled “Other schemas”Value objects, requests and records.
| Schema | File | $id |
|---|---|---|
access-policy | access-policy.json | https://schemas.ump.dev/v1/access-policy.json |
adapter-calibrate-request | adapter-calibrate-request.json | https://schemas.ump.dev/v1/adapter-calibrate-request.json |
adapter-calibrate-response | adapter-calibrate-response.json | https://schemas.ump.dev/v1/adapter-calibrate-response.json |
adapter-decompose-request | adapter-decompose-request.json | https://schemas.ump.dev/v1/adapter-decompose-request.json |
adapter-decompose-response | adapter-decompose-response.json | https://schemas.ump.dev/v1/adapter-decompose-response.json |
adapter-fit-request | adapter-fit-request.json | https://schemas.ump.dev/v1/adapter-fit-request.json |
adapter-fit-response | adapter-fit-response.json | https://schemas.ump.dev/v1/adapter-fit-response.json |
adapter-job-accepted | adapter-job-accepted.json | https://schemas.ump.dev/v1/adapter-job-accepted.json |
adapter-marginal-return-request | adapter-marginal-return-request.json | https://schemas.ump.dev/v1/adapter-marginal-return-request.json |
adapter-marginal-return-response | adapter-marginal-return-response.json | https://schemas.ump.dev/v1/adapter-marginal-return-response.json |
adapter-metadata | adapter-metadata.json | https://schemas.ump.dev/v1/adapter-metadata.json |
adapter-optimize-request | adapter-optimize-request.json | https://schemas.ump.dev/v1/adapter-optimize-request.json |
adapter-optimize-response | adapter-optimize-response.json | https://schemas.ump.dev/v1/adapter-optimize-response.json |
adapter-response-curve-request | adapter-response-curve-request.json | https://schemas.ump.dev/v1/adapter-response-curve-request.json |
adapter-response-curve-response | adapter-response-curve-response.json | https://schemas.ump.dev/v1/adapter-response-curve-response.json |
adapter-score-request | adapter-score-request.json | https://schemas.ump.dev/v1/adapter-score-request.json |
adapter-score-response | adapter-score-response.json | https://schemas.ump.dev/v1/adapter-score-response.json |
adapter-update-request | adapter-update-request.json | https://schemas.ump.dev/v1/adapter-update-request.json |
adapter-update-response | adapter-update-response.json | https://schemas.ump.dev/v1/adapter-update-response.json |
applies-to | applies-to.json | https://schemas.ump.dev/v1/applies-to.json |
approval | approval.json | https://schemas.ump.dev/v1/approval.json |
approve-request | approve-request.json | https://schemas.ump.dev/v1/approve-request.json |
artifact | artifact.json | https://schemas.ump.dev/v1/artifact.json |
checkpoint | checkpoint.json | https://schemas.ump.dev/v1/checkpoint.json |
client-maturity | client-maturity.json | https://schemas.ump.dev/v1/client-maturity.json |
client-profile | client-profile.json | https://schemas.ump.dev/v1/client-profile.json |
client | client.json | https://schemas.ump.dev/v1/client.json |
cloud-event | cloud-event.json | https://schemas.ump.dev/v1/cloud-event.json |
consistency-proof | consistency-proof.json | https://schemas.ump.dev/v1/consistency-proof.json |
contract-terms | contract-terms.json | https://schemas.ump.dev/v1/contract-terms.json |
estimand | estimand.json | https://schemas.ump.dev/v1/estimand.json |
fallback-entry | fallback-entry.json | https://schemas.ump.dev/v1/fallback-entry.json |
fetch-record | fetch-record.json | https://schemas.ump.dev/v1/fetch-record.json |
gate-definition | gate-definition.json | https://schemas.ump.dev/v1/gate-definition.json |
gate-result | gate-result.json | https://schemas.ump.dev/v1/gate-result.json |
inclusion-proof | inclusion-proof.json | https://schemas.ump.dev/v1/inclusion-proof.json |
input-contract | input-contract.json | https://schemas.ump.dev/v1/input-contract.json |
input-report | input-report.json | https://schemas.ump.dev/v1/input-report.json |
interval | interval.json | https://schemas.ump.dev/v1/interval.json |
job | job.json | https://schemas.ump.dev/v1/job.json |
lineage-edge | lineage-edge.json | https://schemas.ump.dev/v1/lineage-edge.json |
log-entry | log-entry.json | https://schemas.ump.dev/v1/log-entry.json |
materiality-inputs | materiality-inputs.json | https://schemas.ump.dev/v1/materiality-inputs.json |
note | note.json | https://schemas.ump.dev/v1/note.json |
problem | problem.json | https://schemas.ump.dev/v1/problem.json |
recipe-ref | recipe-ref.json | https://schemas.ump.dev/v1/recipe-ref.json |
release-ledger-entry | release-ledger-entry.json | https://schemas.ump.dev/v1/release-ledger-entry.json |
run-record | run-record.json | https://schemas.ump.dev/v1/run-record.json |
shown-number | shown-number.json | https://schemas.ump.dev/v1/shown-number.json |
transform-recipe | transform-recipe.json | https://schemas.ump.dev/v1/transform-recipe.json |
transition-request | transition-request.json | https://schemas.ump.dev/v1/transition-request.json |