Skip to main content

Export

Generated from apiome-rest/openapi.yaml (API version 1.204.1) — do not edit by hand. How to authenticate is on the REST API reference.

Tag: export · 11 operations

GET /v1/export/{tenant_slug}/capability-registry​

Get the destination capability & documentation registry

Return the versioned destination capability registry (EFP-1.2): one reviewed capability entry per registered export destination (label, availability state, and host-allowlisted destination-format documentation with a safe fallback) plus the reviewed explanation for every projection reason code. This is static reference data — the same for every source — that lets the export UI render honest loss reasons and authoritative documentation links from reviewed data instead of hard-coding URLs in components.

Operation id: get_capability_registry_v1_export__tenant_slug__capability_registry_get

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Responses

StatusDescriptionBody
200Successful response for get the destination capability & documentation registry.application/json CapabilityRegistrySnapshot
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/dispatch​

Dispatch an export: emit one target and attach its fidelity report

The one-shot transcode (MFX-3.2): load the source artifact/version, resolve the target emitter, run it, and return the emitted document together with its full fidelity envelope (report + advisory + summary). The synchronous twin of submitting an export job and polling it — for small artifacts and the apiome export CLI; large or toolchain-backed exports should use POST …/jobs. dry_run: true stops after the fidelity report (no artifact), the same shape POST …/preview returns.

Operation id: dispatch_export_document_v1_export__tenant_slug__dispatch_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for dispatch an export: emit one target and attach its fidelity report.

Responses

StatusDescriptionBody
200Successful response for dispatch an export: emit one target and attach its fidelity report.application/json ExportDispatchResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/document​

Emit the export document for one target

Emit the source artifact/version to one target through the Emitter SPI and return the document itself — JSON by default, YAML when Accept: application/yaml is sent. This is the emit counterpart to /preview (which predicts the loss without emitting); the apiome export <target> CLI pairs the two to write the artifact and surface its fidelity. Gives non-OpenAPI targets (AsyncAPI) a byte source the OpenAPI-only browse reconstruction cannot supply.

Operation id: emit_export_document_v1_export__tenant_slug__document_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
acceptheaderstring or nullnoRequested response content type (Accept header).
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for emit the export document for one target.

Responses

StatusDescriptionBody
200Successful response for emit the export document for one target.—
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/preview​

Preview export fidelity for one target

Compute the full fidelity report for exporting the given source artifact/version to one target — the per-construct LossinessReport, the user-facing advisory (MFX-2.4), and the tier summary — without producing the artifact. Backs the export dialog's detailed fidelity panel; the same envelope is embedded in an export job result.

Operation id: preview_export_fidelity_v1_export__tenant_slug__preview_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for preview export fidelity for one target.

Responses

StatusDescriptionBody
200Successful response for preview export fidelity for one target.application/json ExportPreviewResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/preview-manifest​

Structural manifest of the emitted artifact: entities, fidelity, locations

Describe the emitted artifact structurally (IXH-4.1): every canonical entity (services → operations, channels, types → fields) with its stable canonical key, its per-entity fidelity status and reason from the shared CPDO-1.3 taxonomy, and — for entities the artifact carries — its location in the bundle (file, 1-based line in the download-serialized text, and a JSON Pointer where derivable). Entities the source has but the artifact does not carry are listed with their drop reason, never hidden. The emit runs read-only in a temporary buffer (no artifact, no job row, no field-identity persistence — the verify route's discipline) and a severe conversion is described, not blocked. Deterministic: identical (revision, target, options) yield an identical manifest_hash; entities are cursor-paginated (codec shared with the import preview manifest) and the full manifest is cached per (tenant, revision, target, options) so paging re-emits nothing. Backs the Export Studio's structural artifact explorer with two-way entity ↔ code selection.

Operation id: preview_export_manifest_v1_export__tenant_slug__preview_manifest_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for structural manifest of the emitted artifact: entities, fidelity, locations.

Responses

StatusDescriptionBody
200Successful response for structural manifest of the emitted artifact: entities, fidelity, locations.application/json ExportPreviewManifestResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/projection-evidence​

Page through projection evidence for one configured export

Return one bounded, cursor-paginated page of source→target projection evidence (EFP-2.1 / EFP-3.2) for the given source revision, target, and options — the traceable rows behind the projection summary that preview, verify, dispatch, and job results embed. The same inputs resolve to the same snapshot hash on every surface. Tenant-scoped. Source-native evidence is always redacted (EFP-3.2); redact_source is accepted for compatibility and ignored. How to interpret the statuses, reason categories, and destination-documentation links is documented in the Understand export fidelity guide, apiome-docs/docs/ship/export-fidelity.md (EFP-3.3).

Operation id: get_projection_evidence_v1_export__tenant_slug__projection_evidence_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for page through projection evidence for one configured export.

Responses

StatusDescriptionBody
200Successful response for page through projection evidence for one configured export.application/json ExportProjectionEvidenceResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/projection-metrics​

Record a privacy-safe projection metric

Increment an in-process counter and emit a structured export.projection log line for UI/ops telemetry (EFP-3.2). Payload is a strict whitelist of kinds and optional integer/reason-category fields — never construct labels or source content.

Operation id: record_projection_metric_v1_export__tenant_slug__projection_metrics_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for record a privacy-safe projection metric.

Responses

StatusDescriptionBody
200Successful response for record a privacy-safe projection metric.application/json ExportProjectionMetricResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/roundtrip​

On-demand round-trip comparison: emit → re-import → diff → reconcile with fidelity

The Export Studio's round-trip evidence action (IXH-4.4): emit the source revision to target in a temporary buffer, re-import the emitted artifact through the matching import adapter, diff the re-imported canonical model against the source with canonical_diff, and reconcile every difference against the fidelity report — the same loop the IXH-1.7 conformance matrix runs in CI, applied to the user's own document on demand. Differences the report explains come back matched (expected loss); unexplained differences and overclaims flag a fidelity bug worth reporting, with reproduction provenance (fingerprints + emitter/registry/apiome versions) inline. When no import adapter can re-ingest the emit format the comparison is skipped with the matrix's own explanation (status: unsupported), never silently. The run is explicit and bounded — one emit, one re-import, nothing persisted (no artifact, no job row, no field-identity rows) — and is rate-limited by the global per-tenant middleware. A severe conversion (MFX-3.3) is measured, not blocked: the round-trip exists precisely to show what a lossy conversion does.

Operation id: roundtrip_export_v1_export__tenant_slug__roundtrip_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for on-demand round-trip comparison: emit → re-import → diff → reconcile with fidelity.

Responses

StatusDescriptionBody
200Successful response for on-demand round-trip comparison: emit → re-import → diff → reconcile with fidelity.application/json ExportRoundtripResponse
422Validation Errorapplication/json HTTPValidationError

GET /v1/export/{tenant_slug}/targets​

List export targets with per-source fidelity

For the given source artifact/version, enumerate every registered export target (descriptor + capability profile + options) with a cheap per-target fidelity badge (tier + preserved-%), computed from the prediction engine without emitting an artifact. Drives the export dialog's card badges (MFX-6.1) and the version pre-summary (MFX-6.5).

Operation id: list_export_targets_v1_export__tenant_slug__targets_get

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
artifactquerystringyesThe artifact (project) id to export.
versionquerystring or nullnoRevision UUID, version label (1.0.0), or omitted for the latest revision.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Responses

StatusDescriptionBody
200Successful response for list export targets with per-source fidelity.application/json ExportTargetsResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/export/{tenant_slug}/verify​

One-call pre-generation verify: fidelity + validation + lint + verdict

The Verify workbench's dry run (MFX-42.5, backing MFX-42.1): emit the source artifact/version to one target in a temporary buffer, then run fidelity (MFX-2.5) + emitted-output validation (MFX-5.1/5.3) + emitted-artifact lint (MFX-5.2) over it, and return all three lenses plus an overall go/no-go verdict — without persisting an artifact or a job row. The emit is read-only (no field-identity persistence), so a verify never mutates tenant state. The emitted artifact rides back inline under a size cap (include_content) for the Monaco viewer (MFX-43.x). A severe conversion (MFX-3.3) is verified, not blocked — its verdict reports the loss so the user can decide. Rate-limited by the global per-tenant middleware (it does real emit work). Lint (MFX-5.2) is not yet implemented, so lint is currently null. Typical p50 for the five MVP emitters (OpenAPI, AsyncAPI, GraphQL, gRPC/Protobuf, Avro) is dominated by the single emit + re-parse and runs in the tens of milliseconds for pure-Python validators; protobuf/AsyncAPI add their toolchain's startup when installed.

Operation id: verify_export_v1_export__tenant_slug__verify_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for one-call pre-generation verify: fidelity + validation + lint + verdict.

Responses

StatusDescriptionBody
200Successful response for one-call pre-generation verify: fidelity + validation + lint + verdict.application/json ExportVerifyResponse
422Validation Errorapplication/json HTTPValidationError

POST /v1/tenants/{tenant_slug}/export/preflight​

Pre-flight an export: source lint + target-readiness ranking (no job, no artifact)

Rank every export target for one source revision before a job exists (IXH-2.4). Lints the source under the tenant's resolved style guide — the check the export path otherwise only makes against the emitted artifact, and only after the job — then, per target, returns the projected fidelity envelope (tier, preserved %, DROP/APPROX/SYNTH counts from the same prediction engine a job embeds in its result), the capability verdict (which construct classes this source uses vs. which the target declares it can carry), the tenant export quality-policy verdict (IXH-2.3) with any honoured waiver, and a composite readiness score with a one-line rationale.

Targets are returned best-readiness first: ready → caution → blocked → unavailable, then by descending score and target key. A target the policy blocks is ranked and returned with its reason, never hidden. Nothing is emitted and nothing is persisted — no export job, no artifact, no field-identity rows. The ranking is deterministic for a fixed source revision, style guide, and policy; ranking_fingerprint lets a caller assert that without diffing the body. This is the pre-job counterpart to POST …/export/verify.

Operation id: preflight_export_v1_tenants__tenant_slug__export_preflight_post

Parameters

NameInTypeRequiredDescription
tenant_slugpathstringyesURL-safe tenant slug that scopes the request.
authorizationheaderstring or nullnoJWT bearer token for authenticated access (Authorization: Bearer <token>).
X-API-Keyheaderstring or nullnoTenant-scoped API key used as an alternative to JWT bearer authentication.

Request body (required)

Request body for pre-flight an export: source lint + target-readiness ranking (no job, no artifact).

Responses

StatusDescriptionBody
200Successful response for pre-flight an export: source lint + target-readiness ranking (no job, no artifact).application/json ExportPreflightReport
422Validation Errorapplication/json HTTPValidationError

Schemas used​

CapabilityRegistrySnapshot​

The full, deterministic registry view exposed to the REST contract + UI (EFP-1.2).

Carries the :attr:version, the reviewed :class:ReasonExplanation for every reason code (the drawer's honest wording), and a :class:DestinationCapability for every runtime-available emitter, all in a stable order. Because it is derived from the static registry and the (deterministic) emitter registry, identical inputs yield an identical snapshot — safe to cache and to mirror in a TypeScript contract.

PropertyTypeRequiredDescription
versionstringyesThe registry contract version (REGISTRY_VERSION).
review_datestringyesWhen the registry links/explanations were last reviewed.
reason_codesarray of stringyesThe canonical set of valid reason-code strings, sorted. Contract tests reject any reason code outside this set.
reasonsarray of ReasonExplanationyesThe reviewed explanation for each reason code, in taxonomy order.
destinationsarray of DestinationCapabilityyesOne capability entry per registered destination, in key order.

ExportDispatchRequest​

A dispatch request: source revision + chosen target + options + dry-run flag (MFX-3.2).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to export.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (openapi) or format key (openapi-3.1).
optionsobject or nullnoPer-target emit options (MFX-1.4); null or empty applies the target defaults.
dry_runbooleannoWhen true, stop after the fidelity report: no artifact is emitted.
confirmbooleannoWhen true, proceed with a severe conversion (MFX-3.3) the transcoding guard would otherwise block with 409. Ignored for non-severe conversions and dry-runs.
min_severityLossinessSeveritynoLowest loss severity that raises the advisory (MFX-2.4); does not affect the report or counts.

ExportDispatchResponse​

The dispatch result: resolved coordinates + fidelity envelope + emitted artifact (MFX-3.2).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the dispatch exported.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
targetstringyesThe resolved target format key (e.g. openapi-3.1).
dry_runbooleanyesTrue when the dispatch stopped after the fidelity report.
fidelityExportFidelityyesThe full fidelity envelope (target + tier + report + advisory).
guardTranscodeGuardyesThe pre-flight transcoding guard (MFX-3.3): the conversion band and why. A severe conversion only reaches a real (non-dry-run) dispatch when confirm was set.
filesarray of ExportDispatchFilenoThe emitted files (inline); empty for a dry-run.
media_typestring or nullnoThe bundle's primary media type; null for a dry-run.
deliveryDeliveryGateReport or nullnoThe delivery gate decision for this dispatch (IXH-2.5) with its named reasons and the signed attestation for the returned artifact. Null for a dry-run (nothing is delivered).

ExportDocumentRequest​

An emit request: source revision + chosen target + per-emit options (MFX-11.5).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to export.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (asyncapi) or format key (asyncapi-3).
optionsobject or nullnoPer-target emit options (MFX-1.4); null or empty applies the target defaults.

ExportPreflightReport​

The full export pre-flight: one source lint verdict plus every target, ranked.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the pre-flight ran for.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
paradigmstring or nullnoThe source model's canonical paradigm (rest, event…).
formatstring or nullnoThe source model's format key (openapi-3.1).
lintImportPreflightLintyesThe source's lint verdict under the resolved style guide — the same engine and scoring formula an import pre-flight reports, run over the reconstructed source model rather than a candidate document.
style_guideImportPreflightStyleGuide or nullnoThe style guide that governed the lint, when one resolved.
capability_demandarray of stringnoThe capability axes this source uses — the yardstick every target's capability verdict is measured against.
targetsarray of ExportPreflightTargetnoEvery ranked target, best readiness first. Blocked and unavailable targets are included (ranked last), never hidden.
ranking_fingerprintstringyesStable hash over the ranked (target, readiness, band) triples. Identical for two pre-flights of the same revision under the same guide and policy.

ExportPreflightRequest​

A pre-flight request: the source revision, optionally narrowed to some targets.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to export.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetsarray of string or nullnoRestrict the ranking to these target keys or format keys (openapi / openapi-3.1); null ranks every registered target. Unknown entries are ignored — a pre-flight reports what it can rank rather than failing on a stale client's target list.
include_findingsbooleannoWhen false, the source lint verdict is returned without its ranked finding list (score, grade, and tallies are always present). Lets a target-grid caller skip the findings payload it does not render.
include_conformancebooleannoWhen true, run the IXH-5.6 instance-conformance check per ranked target: source-valid instances (IXH-5.2) are validated against each target's actually-emitted schema, the per-target verdict is attached beside the fidelity envelope, and a ready target whose emitted schema rejected instances is demoted to caution. Off by default because it emits every ranked target for real — heavier than the prediction-only pre-flight.

ExportPreviewManifestRequest​

The preview-manifest request: source coordinates + target + options + page window.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to describe.
versionstring or nullnoA revision UUID, a version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (openapi) or format key (openapi-3.1).
optionsobject or nullnoPer-target emit options; null/empty applies the target defaults. Folded (normalized) into the manifest hash, so different options are a different snapshot.
cursorstring or nullnoOpaque entity-page cursor from a previous response; null for the first page.
page_sizeintegernoMaximum entities per page; clamped to 1000.

ExportPreviewManifestResponse​

The preview-manifest endpoint's response (IXH-4.1).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the manifest describes.
versionstring or nullnoThe requested version selector, echoed.
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label, when it has one.
manifestExportPreviewManifestyesThe requested manifest page.

ExportPreviewRequest​

A dry-run fidelity preview request: source revision + chosen target (MFX-2.5).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to export.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (openapi) or format key (openapi-3.1).
optionsobject or nullnoPer-target emit options (MFX-1.4); null or empty applies the target defaults. Folded (normalized) into the projection snapshot hash (EFP-2.1), so a preview, a verify, and a dispatch of the same source, target, and options reference the same snapshot.
min_severityLossinessSeveritynoLowest loss severity that raises the advisory (MFX-2.4); does not affect the report or counts.

ExportPreviewResponse​

The dry-run fidelity preview: the full envelope + the resolved source coordinates (MFX-2.5).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the preview was computed for.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
fidelityExportFidelityyesThe full fidelity envelope (target + tier + report + advisory), no artifact.
guardTranscodeGuardyesThe pre-flight transcoding guard (MFX-3.3): the conversion band (clean / lossy / near-empty / severe), whether it needs an explicit confirmation, and why. Lets the UI/CLI warn (near-empty) or prompt for confirmation (severe) before dispatching the export.

ExportProjectionEvidenceRequest​

A bounded projection-evidence page request for one configured export (EFP-2.1).

Identifies the same (source revision, target, options) triple a preview / verify / dispatch describes, plus the cursor/limit window into the manifest's evidence rows. Matching inputs resolve to the same snapshot (manifest_hash) every surface shares.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to export.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (openapi) or format key (openapi-3.1).
optionsobject or nullnoPer-target emit options (MFX-1.4); null or empty applies the target defaults. Folded (normalized) into the snapshot hash — different options are a different snapshot.
cursorstring or nullnoOpaque cursor from a previous page, or null to start at the beginning. A malformed cursor is rejected with 422.
limitintegernoMaximum evidence rows per page; clamped to 500.
redact_sourcebooleannoIgnored (EFP-3.2). Source-native evidence is always redacted; kept for request-body compatibility with earlier callers. Response redacted is always true.

ExportProjectionEvidenceResponse​

One bounded, cursor-paginated page of projection evidence (EFP-2.1).

The authenticated evidence surface behind the preview/verify summaries: the resolved source coordinates, the snapshot provenance (:class:~app.export_projection.ManifestTarget carries the emitter/registry versions and destination documentation), the bounded :class:~app.export_projection.ProjectionManifestSummary, and one :class:~app.export_projection.ProjectionEvidencePage of outcome edges + their nodes. Deterministic: the same (revision, target, options) yields the same snapshot hash a preview / verify / dispatch / job result references, and paging the same snapshot twice yields identical pages.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the evidence describes.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
summaryProjectionManifestSummaryyesThe bounded snapshot summary — hash, target/version provenance (emitter/registry versions), and status/reason counts.
pageProjectionEvidencePageyesThis page of outcome edges + the nodes they reference, with the opaque cursor for the next page (null on the last page).
redactedbooleanyesAlways true (EFP-3.2): source-native evidence values are redacted.

ExportProjectionMetricRequest​

Whitelist-only client/server projection metric event (EFP-3.2).

Rejects unknown fields. Only :data:~app.projection_telemetry.ALLOWED_METRIC_KINDS are accepted; reason categories are optional and themselves whitelisted.

PropertyTypeRequiredDescription
kindenum "preview_failure", "stale_acknowledgement", "evidence_page", "aggregation_used", "documentation_link_available", "documentation_link_missing"yesPrivacy-safe metric kind (whitelist).
page_totalinteger or nullnoOptional integer page/evidence total (no labels).
reason_categorystring or nullnoOptional controlled failure category (whitelist only).

ExportProjectionMetricResponse​

Acknowledgement that a privacy-safe metric was recorded.

PropertyTypeRequiredDescription
recordedbooleannoRecorded.
kindstringyesKind.

ExportRoundtripRequest​

A round-trip comparison request: source revision + chosen target + options.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to round-trip.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (openapi) or format key (openapi-3.1).
optionsobject or nullnoPer-target emit options (MFX-1.4); null or empty applies the target defaults.
min_severityLossinessSeveritynoLowest loss severity that raises the advisory (MFX-2.4); does not affect the round-trip verdict, the report, or the reconciliation.

ExportRoundtripResponse​

The round-trip comparison result the Export Studio renders (IXH-4.4).

status speaks the IXH-1.7 matrix's vocabulary so a Studio run over a corpus entry reconciles with the published matrix cell:

  • pass — every empirical difference is explained by the fidelity report and nothing over-claims preservation;
  • fail — at least one unexplained difference or over-claim (a fidelity bug worth reporting), or the emitted artifact could not be re-imported at all;
  • unsupported — the comparison was skipped with an explanation (no import adapter can re-ingest the emit format, or the emitter is unavailable here).

The three difference groups are exactly the reconciliation's: matched (explained by the report — expected loss), unexplained (the report does not account for them), and overclaims (the report claimed preservation reality contradicts). The provenance fields (emitter_version / apiome_version / registry_version / fingerprints) give an unexplained difference's issue report its reproduction coordinates without shipping any source bytes.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the round-trip ran for.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
targetstringyesThe resolved target format key (e.g. openapi-3.1).
emit_keystringyesThe resolved emitter registry key (e.g. openapi).
adapter_keystring or nullnoThe import-adapter registry key that re-imported the emitted artifact; null when the comparison was skipped (status: unsupported).
statusMatrixCellStatusyesThe round-trip verdict (pass / fail / unsupported), in the IXH-1.7 matrix's vocabulary.
reasonstring or nullnoHuman-readable explanation for a non-pass status: why the comparison was skipped, what failed to re-import, or which differences are unaccounted for.
diff_countintegernoTotal empirical differences between source and re-import.
matched_countintegernoDifferences the fidelity report explains (expected loss).
matchedarray of MatchedDiffnoEach explained difference paired with the fidelity finding that explains it.
unexplainedarray of CanonicalDiffEntrynoDifferences no fidelity finding accounts for — a fidelity bug the user should report.
overclaimsarray of LossItemnoOK findings whose construct empirically changed or vanished — the report over-claimed preservation.
loss_dropintegernodrop findings in the fidelity report.
loss_approxintegernoapprox findings in the fidelity report.
loss_synthintegernosynth findings in the fidelity report.
loss_okintegernook findings in the fidelity report.
source_fingerprintstringyesDeterministic fingerprint of the source canonical model (reproduction coordinate for issue reports; carries no source content).
reimported_fingerprintstring or nullnoFingerprint of the re-imported canonical model; equals source_fingerprint for a byte-honest round-trip. Null when the loop did not close.
emitter_versionstringyesThe emitter implementation version.
apiome_versionstringyesThe apiome-rest package version that ran the loop.
registry_versionstringyesThe capability-registry snapshot version.

ExportTargetsResponse​

The per-target fidelity list for one source revision (MFX-2.5).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the fidelity was computed for.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
targetsarray of ExportTargetFidelitynoEvery registered target with its per-source fidelity, sorted by target key.

ExportVerifyRequest​

A one-call verify request: source revision + chosen target + options (MFX-42.5).

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id to export.
versionstring or nullnoRevision UUID, version label (1.0.0), or null for the latest revision.
targetstringyesTarget emitter key (openapi) or format key (openapi-3.1).
optionsobject or nullnoPer-target emit options (MFX-1.4); null or empty applies the target defaults.
include_contentbooleannoWhen true, return the emitted artifact inline (under the size cap) so the Monaco viewer (MFX-43.x) can render the preview from this same call; the bytes are still discarded server-side.
min_severityLossinessSeveritynoLowest loss severity that raises the advisory (MFX-2.4); does not affect the report or counts.

ExportVerifyResponse​

The one-call verify result: fidelity + validation + lint + verdict (MFX-42.5).

Everything the Studio's Verify workbench (MFX-42.1) needs in one round-trip, computed by emitting the artifact to a temporary buffer — no artifact and no job row are persisted. The emit is read-only (no field-identity persistence), so a verify never mutates tenant state.

PropertyTypeRequiredDescription
artifactstringyesThe artifact (project) id the verify was computed for.
versionstring or nullnoThe version selector as requested (label, UUID, or null).
version_record_idstringyesThe resolved revision (versions.id).
version_labelstring or nullnoThe resolved revision's version label (e.g. 1.0.0).
targetstringyesThe resolved target format key (e.g. openapi-3.1).
fidelityExportFidelityyesThe full fidelity envelope (target + tier + per-construct report + advisory).
guardTranscodeGuardyesThe pre-flight transcoding guard (MFX-3.3): the conversion band and why.
validationEmittedValidationReportyesThe emitted-output validation gate + structured report (MFX-5.1/5.3).
lintEmittedArtifactLint or nullnoThe emitted-artifact lint report (MFX-5.2); null until MFX-5.2 lands, which the Verify workbench renders as the lint lens's empty state.
verdictExportVerifyVerdictyesThe overall go/no-go band the Generate gate reads (clean / lossy / invalid).
filesarray of ExportDispatchFilenoThe emitted artifact inline (under the size cap); empty when the caller opted out (include_content: false) or the artifact exceeded the cap (truncated).
truncatedbooleannoTrue when the emitted artifact exceeded the inline size cap and was omitted from files; the Monaco viewer should fetch it via the job/document surface instead.

HTTPValidationError​

Validation error response emitted when request data fails schema checks.

PropertyTypeRequiredDescription
detailarray of ValidationErrornoDetail.