Record the confirmed current order's full SHADOW policy result
Default off; requires COMMERCE_MCP_OAUTH_CONNECTED_ENABLED, the exact fresh nine-scope v3 consent, current Microsoft purchase and membership, and signed supported-source eligibility. It never upgrades a legacy v1 or v2 grant. Also requires COMMERCE_MCP_BUSINESS_CENTRAL_NATIVE_ENABLED and a separately verified current company connection/native read grant within the purchaser tenant extracted by Accounts. No caller-supplied tenant, economics or source URL is accepted. Eight-second deadline and fixed bounded source reads apply. Requires erp:read and erp:validate, explicit confirmation, snapshot digest, policy digest and matching idempotency header. Re-reads the exact source and executes the canonical sixteen-check Commerce SHADOW workflow with one durable evaluation reservation. Missing landed cost, inventory, promotion or other required facts produce HOLD. The original PROCEED/HOLD/BLOCK/ESCALATE verdict, signed dossier and policy identity remain visible. No callback or integration is dispatched. Commerce may separately request native margin and agent-budget authorization only after unchanged PROCEED.
Authorization
CommerceAccountsOAuth Opaque Accounts-issued Commerce OAuth access credential with resource-bound current purchase. Legacy base3, signed v2 ERP/history and fresh signed v3 nine-scope connected grants retain distinct route profiles. Refresh credentials never authenticate. Per-operation connection, current role, proof, quota and confirmation checks remain mandatory.
In: header
Path Parameters
uuidHeader Parameters
Must equal the confirmed body idempotency_key; retries cannot rebind the operation.
^[A-Za-z0-9._:-]+$1 <= length <= 200Request Body
application/json
uuiduuid-9007199254740991 <= value <= 90071992547409911 <= length <= 100^sha256:[a-f0-9]{64}$^[a-f0-9]{64}$^[A-Za-z0-9._:-]+$1 <= length <= 200Response Body
application/json
curl -X POST "https://example.com/v1/protocol/commerce/connected/business-central/497f6eca-6276-4993-bfeb-53cbbbba6f08/preflight" \ -H "Idempotency-Key: string" \ -H "Content-Type: application/json" \ -d '{ "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b", "document_id": "b792e8ae-2cb4-4209-85b9-32be4c2fcdd6", "connection_revision": -9007199254740991, "policy_version": "string", "policy_digest": "string", "snapshot_sha256": "string", "idempotency_key": "string", "confirmation": true }'{ "version": "commerce-native-bc-preflight-v1", "input_version": "commerce-preflight-partial-v1", "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b", "connection_id": "d3547de1-d1f2-4344-b4c2-17169b7526f9", "connection_revision": -9007199254740991, "document_id": "b792e8ae-2cb4-4209-85b9-32be4c2fcdd6", "snapshot_sha256": "string", "policy": { "bundle_id": "fc6f5a67-caa1-4339-9c14-a67826143b60", "version": "string", "policy_digest": "string" }, "mode": "SHADOW", "outcome": "APPROVE", "verdict": "PROCEED", "preflight": { "version": "commerce-preflight-v2", "action_type": "PRICE_CHANGE", "action_digest": "string", "facts_digest": "string", "policy_version": "string", "idempotency_key": "string", "evaluated_at": "2019-08-24T14:15:22Z", "disposition": "PROCEED", "execution_available": false, "checks": [ { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } }, { "id": "P01", "status": "evaluated", "verdict": "PROCEED", "reason_codes": [ "string" ], "missing_facts": [ "string" ], "measurements": { "property1": 0, "property2": 0 } } ] }, "evaluation_id": "4108ec8e-6efd-4b9b-bace-0bb4c296c324", "dossier_id": "8a9bfc13-db6c-4e62-a117-1a4399450d29", "dossier_sha256": "string", "idempotent_replay": true, "execution_available": false}Prepare current company-native order evidence and exact policy GET
Default off; requires COMMERCE_MCP_OAUTH_CONNECTED_ENABLED, the exact fresh nine-scope v3 consent, current Microsoft purchase and membership, and signed supported-source eligibility. It never upgrades a legacy v1 or v2 grant. Also requires COMMERCE_MCP_BUSINESS_CENTRAL_NATIVE_ENABLED and a separately verified current company connection/native read grant within the purchaser tenant extracted by Accounts. No caller-supplied tenant, economics or source URL is accepted. Eight-second deadline and fixed bounded source reads apply. Requires erp:read and erp:validate. Returns an immutable snapshot digest, explicit cost provenance and exact signed policy. Admitted v2 evidence binds complete source cost from the verified effective company profile; v1 retains its native current-estimate provenance and missing landed cost. Preparation does not reserve budget or authorize an ERP write.
Read actual company fallback settings and recorded outages GET
Default off; requires COMMERCE_MCP_OAUTH_CONNECTED_ENABLED, the exact fresh nine-scope v3 consent, current Microsoft purchase and membership, and signed supported-source eligibility. It never upgrades a legacy v1 or v2 grant. Also requires COMMERCE_MCP_BUSINESS_CENTRAL_NATIVE_ENABLED and a separately verified current company connection/native read grant within the purchaser tenant extracted by Accounts. No caller-supplied tenant, economics or source URL is accepted. Eight-second deadline and fixed bounded source reads apply. Requires erp:read. Reads enabled status and provider-observed can_configure; enabled remains read-only.

