Skip to content
Proud to collaborate with Microsoft for Startups

data.commerce.artifact.persist ​

Persist safe metadata and an object reference for a generated artifact

Idempotently record one generated provider artifact.

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-commerce
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
organization_uuiduuidYes——
cloud_connection_uuiduuidYes——
providerstringYes——
scope_refstringYes—Provider partition such as merchant, store, account, or company reference.
artifact_typestringYes—Kind of generated artifact, e.g. 'reconciliation' or 'statement'.
period_keystringYes—Accounting period the artifact covers, e.g. '2026-08'.
data_environmentstringNoproductionWhich data set produced the artifact: 'production' (default) or 'homologation'. Part of the row identity, so test and production artifacts for the same period never collapse into one.
request_refstringNo—Provider handle for the generation request, used to resume polling.
statusstringNo——
document_refstringNo—Durable pointer into our own object store. Never a provider download URL: those expire and must not be persisted.
content_typestringNo——
byte_sizeintegerNo——
checksumstringNo—Digest of the retrieved bytes, so a truncated download is detectable.
row_countintegerNo——
requested_atstringNo——
expires_atstringNo—When the provider's grant lapses; a stale artifact is re-requested, not retried.
retrieved_atstringNo——
last_sync_workflow_uuidstringNo——
last_errorstringNo——
artifact_metadatajsonNo——

Output Schema ​

FieldTypeRequiredDefaultDescription
organization_uuiduuidYes——
cloud_connection_uuiduuidYes——
providerstringYes——
scope_refstringYes—Provider partition such as merchant, store, account, or company reference.
artifact_typestringYes—Kind of generated artifact, e.g. 'reconciliation' or 'statement'.
period_keystringYes—Accounting period the artifact covers, e.g. '2026-08'.
data_environmentstringNoproductionWhich data set produced the artifact: 'production' (default) or 'homologation'. Part of the row identity, so test and production artifacts for the same period never collapse into one.
request_refstringNo—Provider handle for the generation request, used to resume polling.
statusstringNo——
document_refstringNo—Durable pointer into our own object store. Never a provider download URL: those expire and must not be persisted.
content_typestringNo——
byte_sizeintegerNo——
checksumstringNo—Digest of the retrieved bytes, so a truncated download is detectable.
row_countintegerNo——
requested_atstringNo——
expires_atstringNo—When the provider's grant lapses; a stale artifact is re-requested, not retried.
retrieved_atstringNo——
last_sync_workflow_uuidstringNo——
last_errorstringNo——
artifact_metadatajsonNo——
commerce_artifact_uuiduuidNo——
createdbooleanYes——
persisted_atstringNo——
updated_atstringNo——
failure_reasonstringNo——
failure_typestringNo——
failed_actionstringNo——
failed_at_statestringNo——
failed_stepjsonNo——
failed_layerjsonNo——
errorstringNo——
error_typestringNo——
failed_atstringNo——

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—complete—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingcompletecompleted—
pendingfailfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "data.commerce.artifact.persist",
  "initial_data": {
    "organization_uuid": "value",
    "cloud_connection_uuid": "value",
    "provider": "value",
    "scope_ref": "value"
  }
}