{
  "info": {
    "_postman_id": "7ca4811f-7c95-5b19-8eb0-5127eb5cf3e1",
    "description": "Generated from canonical CertaRail OpenAPI 0.29.0.\n\nUse the numbered guided lifecycle in Collection Runner.\n\nCaller-supplied credentials and expiry metadata remain environment values; no credential is embedded or minted by this collection.\n\nSynthetic sandbox responses are evidence only of the local runtime that produced them.",
    "name": "CertaRail Sandbox API 0.29.0",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "x-certarail-source": "api/openapi/certarail.v1.yaml",
    "x-certarail-source-sha256": "b99b1fed7c86e352cb1ee818ba5ce8e74200dc70e7a6ab1ea25258b3795e633c"
  },
  "item": [
    {
      "description": "Run requests 01–12 in order. The final two requests revoke the mutable sandbox resources created by this run.",
      "item": [
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));",
                  "if (pm.collectionVariables.get('checkout_session_id') || pm.collectionVariables.get('webhook_subscription_id')) {",
                  "  throw new Error('A prior guided run still has mutable resources. Run both cleanup requests before starting again.');",
                  "}",
                  "const runId = pm.variables.replaceIn('{{$guid}}');",
                  "pm.collectionVariables.set('a18_run_id', runId);",
                  "pm.collectionVariables.set('facts_observed_at', new Date().toISOString());",
                  "pm.collectionVariables.set('decision_idempotency_key', 'a18-decision-' + runId);",
                  "pm.collectionVariables.set('checkout_create_idempotency_key', 'a18-checkout-create-' + runId);",
                  "pm.collectionVariables.set('webhook_subscription_idempotency_key', 'a18-webhook-subscription-' + runId);",
                  "pm.collectionVariables.set('webhook_test_idempotency_key', 'a18-webhook-test-' + runId);",
                  "pm.collectionVariables.set('webhook_verify_idempotency_key', 'a18-webhook-verify-' + runId);",
                  "pm.collectionVariables.set('webhook_revoke_idempotency_key', 'a18-webhook-revoke-' + runId);",
                  "pm.collectionVariables.set('checkout_revoke_idempotency_key', 'a18-checkout-revoke-' + runId);"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "01 — Validate short-lived credential",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "description": "Validates a caller-supplied short-lived bearer and its explicit local expiry metadata. This does not mint a credential.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              }
            ],
            "method": "GET",
            "url": "{{base_url}}/v1/platform/overview?tenant_id={{tenant_id}}"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "credential",
            "sourceOperationId": "getPlatformOverview"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});",
                  "if (pm.response.code === 200) {",
                  "  const responseBytes = pm.response.text();",
                  "  const payload = JSON.parse(responseBytes);",
                  "  pm.expect(payload.decision?.decision_id, 'decision_id').to.be.a('string').and.not.empty;",
                  "  pm.collectionVariables.set('decision_id', payload.decision.decision_id);",
                  "  pm.collectionVariables.set('decision_response_bytes', responseBytes);",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "02 — Create decision",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"request_id\": \"a18-decision-{{a18_run_id}}\",\n  \"tenant_id\": \"{{tenant_id}}\",\n  \"facts_observed_at\": \"{{facts_observed_at}}\",\n  \"operation\": \"BUY\",\n  \"asset_code\": \"DEMO-BTC\",\n  \"amount\": {\n    \"currency\": \"RUB\",\n    \"minor_units\": 25000000\n  },\n  \"client\": {\n    \"subject_ref\": \"cust_7fd2\",\n    \"facts_version\": \"kyc-443\",\n    \"residency\": \"RU\",\n    \"investor_category\": \"RETAIL\",\n    \"kyc_status\": \"VERIFIED\",\n    \"screening_status\": \"CLEAR\",\n    \"knowledge_test\": {\n      \"passed\": true,\n      \"passed_at\": \"2026-08-01T00:00:00Z\",\n      \"valid_until\": \"2027-08-01T00:00:00Z\"\n    },\n    \"risk_disclosure\": {\n      \"accepted\": true,\n      \"version\": \"sandbox-risk-v1\",\n      \"accepted_at\": \"2026-08-24T18:15:00Z\"\n    },\n    \"annual_volume\": {\n      \"currency\": \"RUB\",\n      \"minor_units\": 10000000\n    }\n  },\n  \"intermediary\": {\n    \"kind\": \"BROKER\",\n    \"regulated\": true\n  }\n}"
            },
            "description": "Commits one canonical eligibility decision using a run-scoped idempotency key.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{decision_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/eligibility/evaluations"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "decision",
            "sourceOperationId": "createEligibilityEvaluation"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});",
                  "pm.test('Exact committed response was replayed', function () {",
                  "  pm.expect(pm.response.headers.get('Idempotency-Replayed')).to.eql('true');",
                  "  pm.expect(pm.response.text()).to.eql(pm.collectionVariables.get('decision_response_bytes'));",
                  "});"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "03 — Exact decision replay",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"request_id\": \"a18-decision-{{a18_run_id}}\",\n  \"tenant_id\": \"{{tenant_id}}\",\n  \"facts_observed_at\": \"{{facts_observed_at}}\",\n  \"operation\": \"BUY\",\n  \"asset_code\": \"DEMO-BTC\",\n  \"amount\": {\n    \"currency\": \"RUB\",\n    \"minor_units\": 25000000\n  },\n  \"client\": {\n    \"subject_ref\": \"cust_7fd2\",\n    \"facts_version\": \"kyc-443\",\n    \"residency\": \"RU\",\n    \"investor_category\": \"RETAIL\",\n    \"kyc_status\": \"VERIFIED\",\n    \"screening_status\": \"CLEAR\",\n    \"knowledge_test\": {\n      \"passed\": true,\n      \"passed_at\": \"2026-08-01T00:00:00Z\",\n      \"valid_until\": \"2027-08-01T00:00:00Z\"\n    },\n    \"risk_disclosure\": {\n      \"accepted\": true,\n      \"version\": \"sandbox-risk-v1\",\n      \"accepted_at\": \"2026-08-24T18:15:00Z\"\n    },\n    \"annual_volume\": {\n      \"currency\": \"RUB\",\n      \"minor_units\": 10000000\n    }\n  },\n  \"intermediary\": {\n    \"kind\": \"BROKER\",\n    \"regulated\": true\n  }\n}"
            },
            "description": "Sends the exact same bytes and Idempotency-Key and verifies the committed response replay.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{decision_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/eligibility/evaluations"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "replay",
            "sourceOperationId": "createEligibilityEvaluation"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([409]);",
                  "});",
                  "pm.test('Changed payload is rejected as an idempotency conflict', function () {",
                  "  pm.expect(pm.response.code).to.eql(409);",
                  "});"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "04 — Changed-payload conflict",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"request_id\": \"a18-decision-{{a18_run_id}}\",\n  \"tenant_id\": \"{{tenant_id}}\",\n  \"facts_observed_at\": \"{{facts_observed_at}}\",\n  \"operation\": \"BUY\",\n  \"asset_code\": \"DEMO-BTC\",\n  \"amount\": {\n    \"currency\": \"RUB\",\n    \"minor_units\": 25000001\n  },\n  \"client\": {\n    \"subject_ref\": \"cust_7fd2\",\n    \"facts_version\": \"kyc-443\",\n    \"residency\": \"RU\",\n    \"investor_category\": \"RETAIL\",\n    \"kyc_status\": \"VERIFIED\",\n    \"screening_status\": \"CLEAR\",\n    \"knowledge_test\": {\n      \"passed\": true,\n      \"passed_at\": \"2026-08-01T00:00:00Z\",\n      \"valid_until\": \"2027-08-01T00:00:00Z\"\n    },\n    \"risk_disclosure\": {\n      \"accepted\": true,\n      \"version\": \"sandbox-risk-v1\",\n      \"accepted_at\": \"2026-08-24T18:15:00Z\"\n    },\n    \"annual_volume\": {\n      \"currency\": \"RUB\",\n      \"minor_units\": 10000000\n    }\n  },\n  \"intermediary\": {\n    \"kind\": \"BROKER\",\n    \"regulated\": true\n  }\n}"
            },
            "description": "Changes one amount field while retaining the committed Idempotency-Key; the expected result is 409.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{decision_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/eligibility/evaluations"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              409
            ],
            "kind": "conflict",
            "sourceOperationId": "createEligibilityEvaluation"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([201]);",
                  "});",
                  "if (pm.response.code === 201) {",
                  "  const payload = pm.response.json();",
                  "  pm.expect(payload.session?.session_id, 'session_id').to.be.a('string').and.not.empty;",
                  "  pm.expect(payload.session?.version, 'session version').to.be.a('number');",
                  "  pm.collectionVariables.set('checkout_session_id', payload.session.session_id);",
                  "  pm.collectionVariables.set('checkout_session_version', String(payload.session.version));",
                  "  pm.test('One-time checkout token is not persisted by the collection', function () {",
                  "    pm.expect(pm.collectionVariables.has('session_token')).to.eql(false);",
                  "  });",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "05 — Create checkout evidence fixture",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"partner_ref\": \"a18-{{a18_run_id}}\",\n  \"customer_ref\": \"synthetic-a18-{{a18_run_id}}\",\n  \"mode\": \"HEADLESS\",\n  \"return_urls\": {\n    \"success\": \"https://example.invalid/success\",\n    \"pending\": \"https://example.invalid/pending\",\n    \"cancel\": \"https://example.invalid/cancel\",\n    \"error\": \"https://example.invalid/error\"\n  },\n  \"locale\": \"ru-RU\",\n  \"scenario\": \"HAPPY_PATH\"\n}"
            },
            "description": "Creates a local sandbox-only checkout fixture used by the evidence and webhook steps.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{checkout_create_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/checkout/sandbox/sessions"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              201
            ],
            "kind": "checkout-fixture",
            "sourceOperationId": "createSandboxCheckoutScenarioSession"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "06 — Look up evidence",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"opaque_id\": \"{{checkout_session_id}}\"\n}"
            },
            "description": "Resolves the checkout fixture through the tenant-scoped evidence lookup.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/developer/evidence/lookups"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "evidence",
            "sourceOperationId": "lookupDeveloperEvidence"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([201]);",
                  "});",
                  "if (pm.response.code === 201) {",
                  "  const payload = pm.response.json();",
                  "  pm.expect(payload.subscription?.subscription_id, 'subscription_id').to.be.a('string').and.not.empty;",
                  "  pm.collectionVariables.set('webhook_subscription_id', payload.subscription.subscription_id);",
                  "  pm.test('One-time signing secret is not persisted by the collection', function () {",
                  "    pm.expect(pm.collectionVariables.has('signing_secret')).to.eql(false);",
                  "  });",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "07 — Create Webhook Inbox",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"event_types\": [\n    \"checkout.test\"\n  ]\n}"
            },
            "description": "Creates a logical local Webhook Inbox. The one-time signing secret is deliberately not stored or logged.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{webhook_subscription_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              201
            ],
            "kind": "webhook-subscription",
            "sourceOperationId": "createSandboxWebhookSubscription"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([201]);",
                  "});",
                  "if (pm.response.code === 201) {",
                  "  const payload = pm.response.json();",
                  "  pm.expect(payload.delivery?.delivery_id, 'delivery_id').to.be.a('string').and.not.empty;",
                  "  pm.expect(payload.delivery?.envelope, 'webhook envelope').to.be.an('object');",
                  "  pm.collectionVariables.set('webhook_delivery_id', payload.delivery.delivery_id);",
                  "  pm.collectionVariables.set('webhook_envelope', JSON.stringify(payload.delivery.envelope));",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "08 — Send signed webhook test",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"session_id\": \"{{checkout_session_id}}\",\n  \"simulate_outcome\": \"ACCEPTED\"\n}"
            },
            "description": "Commits a signed synthetic event to the logical inbox without an external network call.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{webhook_test_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{webhook_subscription_id}}/test-events"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              201
            ],
            "kind": "webhook-test",
            "sourceOperationId": "sendSandboxWebhookTestEvent"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});",
                  "if (pm.response.code === 200) {",
                  "  const payload = pm.response.json();",
                  "  pm.test('Webhook signature and replay window are valid', function () {",
                  "    pm.expect(payload.valid).to.eql(true);",
                  "  });",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "09 — Verify webhook envelope",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{{webhook_envelope}}"
            },
            "description": "Verifies the exact signed envelope captured from the synthetic delivery response.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{webhook_verify_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/checkout/webhooks/verify"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "webhook-verify",
            "sourceOperationId": "verifyCheckoutWebhook"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "10 — Read webhook evidence",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "description": "Reads the safe subscription projection and its append-only delivery observations.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              }
            ],
            "method": "GET",
            "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{webhook_subscription_id}}/inbox"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "webhook-evidence",
            "sourceOperationId": "getSandboxWebhookInbox"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});",
                  "if (pm.response.code === 200) {",
                  "  pm.collectionVariables.unset('webhook_subscription_id');",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "11 — Cleanup Webhook Inbox",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{}"
            },
            "description": "Revokes the mutable logical Webhook Inbox created by this run.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{webhook_revoke_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{webhook_subscription_id}}/revoke"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "cleanup-webhook",
            "sourceOperationId": "revokeSandboxWebhookSubscription"
          }
        },
        {
          "event": [
            {
              "listen": "prerequest",
              "script": {
                "exec": [
                  "const credential = pm.environment.get('sandbox_credential');",
                  "if (!credential) { throw new Error('Set sandbox_credential in the selected Postman environment.'); }",
                  "const expiresAtRaw = pm.environment.get('credential_expires_at');",
                  "if (!expiresAtRaw) { throw new Error('Set credential_expires_at to the short-lived credential expiry in ISO-8601 format.'); }",
                  "const expiresAt = Date.parse(expiresAtRaw);",
                  "if (!Number.isFinite(expiresAt)) { throw new Error('credential_expires_at must be a valid ISO-8601 timestamp.'); }",
                  "if (expiresAt <= Date.now()) { throw new Error('sandbox_credential is expired; replace it and credential_expires_at.'); }",
                  "pm.variables.set('request_id', pm.variables.replaceIn('{{$guid}}'));"
                ],
                "type": "text/javascript"
              }
            },
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test('Expected HTTP status', function () {",
                  "  pm.expect(pm.response.code).to.be.oneOf([200]);",
                  "});",
                  "if (pm.response.code === 200) {",
                  "  pm.collectionVariables.unset('a18_run_id');",
                  "  pm.collectionVariables.unset('facts_observed_at');",
                  "  pm.collectionVariables.unset('decision_idempotency_key');",
                  "  pm.collectionVariables.unset('decision_response_bytes');",
                  "  pm.collectionVariables.unset('decision_id');",
                  "  pm.collectionVariables.unset('checkout_create_idempotency_key');",
                  "  pm.collectionVariables.unset('checkout_session_id');",
                  "  pm.collectionVariables.unset('checkout_session_version');",
                  "  pm.collectionVariables.unset('webhook_subscription_idempotency_key');",
                  "  pm.collectionVariables.unset('webhook_subscription_id');",
                  "  pm.collectionVariables.unset('webhook_test_idempotency_key');",
                  "  pm.collectionVariables.unset('webhook_delivery_id');",
                  "  pm.collectionVariables.unset('webhook_envelope');",
                  "  pm.collectionVariables.unset('webhook_verify_idempotency_key');",
                  "  pm.collectionVariables.unset('webhook_revoke_idempotency_key');",
                  "  pm.collectionVariables.unset('checkout_revoke_idempotency_key');",
                  "}"
                ],
                "type": "text/javascript"
              }
            }
          ],
          "name": "12 — Cleanup checkout fixture",
          "request": {
            "auth": {
              "bearer": [
                {
                  "key": "token",
                  "type": "string",
                  "value": "{{sandbox_credential}}"
                }
              ],
              "type": "bearer"
            },
            "body": {
              "mode": "raw",
              "options": {
                "raw": {
                  "language": "json"
                }
              },
              "raw": "{\n  \"expected_version\": {{checkout_session_version}},\n  \"reason\": \"A18 collection cleanup\"\n}"
            },
            "description": "Revokes the mutable checkout fixture and clears run-scoped collection variables. Immutable decision and evidence records are retained.",
            "header": [
              {
                "key": "Accept",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "X-Request-ID",
                "type": "text",
                "value": "{{request_id}}"
              },
              {
                "key": "Content-Type",
                "type": "text",
                "value": "application/json"
              },
              {
                "key": "Idempotency-Key",
                "type": "text",
                "value": "{{checkout_revoke_idempotency_key}}"
              }
            ],
            "method": "POST",
            "url": "{{base_url}}/v1/checkout/sessions/{{checkout_session_id}}/revoke"
          },
          "x-certarail-scenario": {
            "expectedStatuses": [
              200
            ],
            "kind": "cleanup-checkout",
            "sourceOperationId": "revokeCheckoutSession"
          }
        }
      ],
      "name": "Guided sandbox lifecycle"
    },
    {
      "description": "One generated request for every canonical OpenAPI operation.",
      "item": [
        {
          "description": "Generated from operations tagged AssetLink in canonical OpenAPI.",
          "item": [
            {
              "name": "Record a sandbox purchase or transfer journey intent.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"kind\": \"PURCHASE\",\n  \"portfolio_ref\": \"portfolio_example\",\n  \"asset_ref\": \"assetref_A\",\n  \"quantity\": {\n    \"atomic_units\": \"1\",\n    \"scale\": 0\n  },\n  \"decision_ref\": \"decision_example\",\n  \"funding_account_ref\": \"accountref_A\"\n}"
                },
                "description": "Creates only a durable, subject-scoped orchestration record. The opaque decision_ref is correlation evidence and is not independently treated as authorization. The endpoint does not reserve funds, place an order, move an asset, call a provider, or broadcast a blockchain transaction. A recipient_resolution_id can be bound to at most one TRANSFER intent. X-CertaRail-Subject-Ref is caller-asserted in this sandbox; production must derive the subject from bank-authenticated identity.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 7 required and 2 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createAssetOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{create_asset_operation_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_asset_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/asset-operations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/createAssetOperation",
                "method": "POST",
                "operationId": "createAssetOperation",
                "path": "/v1/asset-operations"
              }
            },
            {
              "name": "List subject-scoped local AssetLink orchestration records.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns local journey evidence only. No item is a wallet balance, settlement fact, provider receipt, or proof that money or an asset moved.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 2 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listAssetOperations\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{list_asset_operations_x_certa_rail_subject_ref}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/asset-operations?tenant_id={{list_asset_operations_tenant_id}}&limit={{list_asset_operations_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/listAssetOperations",
                "method": "GET",
                "operationId": "listAssetOperations",
                "path": "/v1/asset-operations"
              }
            },
            {
              "name": "Read one subject-scoped local AssetLink orchestration record.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one subject-scoped local AssetLink orchestration record.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getAssetOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{get_asset_operation_x_certa_rail_subject_ref}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/asset-operations/{{get_asset_operation_operation_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/getAssetOperation",
                "method": "GET",
                "operationId": "getAssetOperation",
                "path": "/v1/asset-operations/{operation_id}"
              }
            },
            {
              "name": "Record customer confirmation of a local journey intent.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"expected_version\": 1\n}"
                },
                "description": "Confirmation changes only the local intent lifecycle. It does not mark compliance ALLOW, reserve funds, start execution, or complete delivery.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: confirmAssetOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{confirm_asset_operation_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{confirm_asset_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/asset-operations/{{confirm_asset_operation_operation_id}}/confirm"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/confirmAssetOperation",
                "method": "POST",
                "operationId": "confirmAssetOperation",
                "path": "/v1/asset-operations/{operation_id}/confirm"
              }
            },
            {
              "name": "Cancel one local journey intent with optimistic version evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"expected_version\": 1,\n  \"reason\": \"example\"\n}"
                },
                "description": "Cancels only the local orchestration record. There is no provider cancel, asset reversal, payment release, or refund side effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 4 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: cancelAssetOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{cancel_asset_operation_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{cancel_asset_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/asset-operations/{{cancel_asset_operation_operation_id}}/cancel"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/cancelAssetOperation",
                "method": "POST",
                "operationId": "cancelAssetOperation",
                "path": "/v1/asset-operations/{operation_id}/cancel"
              }
            },
            {
              "name": "Create a short-lived single-use local asset transfer link.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"recipient_account_ref\": \"accountref_A\",\n  \"asset_ref\": \"assetref_A\",\n  \"expires_at\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Returns a high-entropy token only on the transaction that first creates the link. The durable repository stores only its SHA-256 digest; an exact idempotent replay deliberately omits the token. After an ambiguous lost response, replay recovers the link_id only: the caller must revoke that link and then explicitly create a new one with a new command key. The link carries opaque bank references only and performs zero provider, payment, custody, or blockchain calls.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createAssetTransferLink\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{create_asset_transfer_link_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_asset_transfer_link_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/asset-transfer-links"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/createAssetTransferLink",
                "method": "POST",
                "operationId": "createAssetTransferLink",
                "path": "/v1/asset-transfer-links"
              }
            },
            {
              "name": "Resolve and atomically claim one short-lived transfer-link token.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"token\": \"example\"\n}"
                },
                "description": "The raw token is accepted only in the JSON body and is never returned. Durable resolution evidence contains its digest and opaque account references, never a phone number, name, or other direct identifier.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 410, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: resolveAssetTransferLink\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{resolve_asset_transfer_link_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{resolve_asset_transfer_link_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/asset-transfer-links/resolve"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/resolveAssetTransferLink",
                "method": "POST",
                "operationId": "resolveAssetTransferLink",
                "path": "/v1/asset-transfer-links/resolve"
              }
            },
            {
              "name": "Revoke one active local transfer link.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"expected_version\": 1\n}"
                },
                "description": "Records a local optimistic-version transition only. No provider, payment, asset, or blockchain reversal is attempted.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 410, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: revokeAssetTransferLink\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{revoke_asset_transfer_link_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{revoke_asset_transfer_link_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/asset-transfer-links/{{revoke_asset_transfer_link_link_id}}/revoke"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/AssetLink/operation/revokeAssetTransferLink",
                "method": "POST",
                "operationId": "revokeAssetTransferLink",
                "path": "/v1/asset-transfer-links/{link_id}/revoke"
              }
            }
          ],
          "name": "AssetLink"
        },
        {
          "description": "Generated from operations tagged Corporate Treasury in canonical OpenAPI.",
          "item": [
            {
              "name": "Read the authenticated legal entity profile.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Tenant, principal, organization and roles come only from the verified bearer credential. The returned profile is sandbox governance evidence, not a production KYB approval or execution authority.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateProfile\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/profile"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateProfile",
                "method": "GET",
                "operationId": "getCorporateProfile",
                "path": "/v2/corporate/profile"
              }
            },
            {
              "name": "Create or version-update the authenticated legal entity profile.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"facts\": {\n    \"external_ref\": \"external_example\",\n    \"legal_name\": \"example\",\n    \"legal_form_code\": \"EXAMPLE_CODE\",\n    \"incorporation_country\": \"RU\",\n    \"tax_residence\": \"RU\",\n    \"facts_version\": \"example\",\n    \"facts_observed_at\": \"2026-01-01T00:00:00Z\",\n    \"facts_expires_at\": \"2026-01-01T00:00:00Z\",\n    \"kyb_evidence\": {\n      \"ref\": \"example\",\n      \"version\": \"example\",\n      \"status\": \"VERIFIED\",\n      \"observed_at\": \"2026-01-01T00:00:00Z\",\n      \"expires_at\": \"2026-01-01T00:00:00Z\"\n    },\n    \"sanctions_evidence\": {\n      \"ref\": \"example\",\n      \"version\": \"example\",\n      \"status\": \"CLEAR\",\n      \"observed_at\": \"2026-01-01T00:00:00Z\",\n      \"expires_at\": \"2026-01-01T00:00:00Z\"\n    },\n    \"ubo_evidence\": {\n      \"ref\": \"example\",\n      \"version\": \"example\",\n      \"status\": \"VERIFIED\",\n      \"observed_at\": \"2026-01-01T00:00:00Z\",\n      \"expires_at\": \"2026-01-01T00:00:00Z\"\n    }\n  }\n}"
                },
                "description": "expected_version=0 creates the profile; a positive value performs an optimistic update. All evidence remains production_enforceable=false.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 1 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: putCorporateProfile\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{put_corporate_profile_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/profile"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/putCorporateProfile",
                "method": "PUT",
                "operationId": "putCorporateProfile",
                "path": "/v2/corporate/profile"
              }
            },
            {
              "name": "Resume the authenticated organization's onboarding draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns only the draft bound to the tenant and organization resolved from the verified bearer credential. The caller cannot select a tenant, organization, account, or session in the path or query. OWNER, EDITOR, and REVIEWER workspace roles may read the draft. The draft expires 30 days after its latest successful save; an expired draft returns 410.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 410, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateOnboardingWorkspaceDraft\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/draft"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateOnboardingWorkspaceDraft",
                "method": "GET",
                "operationId": "getCorporateOnboardingWorkspaceDraft",
                "path": "/v2/corporate/onboarding-workspace/draft"
              }
            },
            {
              "name": "Create or version-save the authenticated organization's onboarding draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 0,\n  \"progress\": {\n    \"current_step\": 0,\n    \"highest_step\": 0,\n    \"completed_steps\": [\n      0\n    ],\n    \"answers\": {}\n  }\n}"
                },
                "description": "expected_version=0 creates the single organization draft or explicitly restarts an expired draft from empty progress; a positive value performs an optimistic update. Tenant, organization, account, credential-backed session, and roles are server-derived. OWNER and EDITOR may save; REVIEWER is read-only. Exact retries are session-bound and idempotent. No provider call, official submission, document upload, or production activation occurs.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 410, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: putCorporateOnboardingWorkspaceDraft\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{put_corporate_onboarding_workspace_draft_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/draft"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/putCorporateOnboardingWorkspaceDraft",
                "method": "PUT",
                "operationId": "putCorporateOnboardingWorkspaceDraft",
                "path": "/v2/corporate/onboarding-workspace/draft"
              }
            },
            {
              "name": "Submit the current ready draft for independent internal review.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1\n}"
                },
                "description": "OWNER or EDITOR submits an exact optimistic version only when all server-derived readiness blockers are cleared. Progress becomes frozen while the review is pending. This is an internal review transition, not an official submission, provider call, production activation, or money movement.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 410, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: submitCorporateOnboardingWorkspaceDraftReview\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{submit_corporate_onboarding_workspace_draft_review_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/draft/submit"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/submitCorporateOnboardingWorkspaceDraftReview",
                "method": "POST",
                "operationId": "submitCorporateOnboardingWorkspaceDraftReview",
                "path": "/v2/corporate/onboarding-workspace/draft/submit"
              }
            },
            {
              "name": "Record an independent review decision for the submitted draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"decision\": \"APPROVE_REVIEW\",\n  \"reason\": \"example\"\n}"
                },
                "description": "REVIEWER may approve or request changes on the exact pending version. The server rejects a decision by the account that submitted the draft. APPROVED remains internal NOT_EXECUTED evidence and creates no external effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 410, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: decideCorporateOnboardingWorkspaceDraftReview\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{decide_corporate_onboarding_workspace_draft_review_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/draft/review"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/decideCorporateOnboardingWorkspaceDraftReview",
                "method": "POST",
                "operationId": "decideCorporateOnboardingWorkspaceDraftReview",
                "path": "/v2/corporate/onboarding-workspace/draft/review"
              }
            },
            {
              "name": "List the authenticated organization's onboarding activity.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns at most 100 newest append-only activity records for the fixed tenant and organization draft. Raw session, credential, idempotency, request, and snapshot digests are never returned to the browser.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listCorporateOnboardingWorkspaceDraftActivity\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/draft/activity"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/listCorporateOnboardingWorkspaceDraftActivity",
                "method": "GET",
                "operationId": "listCorporateOnboardingWorkspaceDraftActivity",
                "path": "/v2/corporate/onboarding-workspace/draft/activity"
              }
            },
            {
              "name": "Read the authenticated organization's onboarding case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns the single organization-scoped onboarding projection, including append-only document evidence, isolated mock-rail bindings, derived mock readiness and the explicit blocked production-activation boundary.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateOnboardingCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/onboarding-case"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateOnboardingCase",
                "method": "GET",
                "operationId": "getCorporateOnboardingCase",
                "path": "/v2/corporate/onboarding-case"
              }
            },
            {
              "name": "Create or version-update the organization's onboarding case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"intents\": [\n    \"BUY\"\n  ],\n  \"owners\": {\n    \"organization_owner_ref\": \"organization_owner_example\",\n    \"legal_owner_ref\": \"legal_owner_example\",\n    \"compliance_owner_ref\": \"compliance_owner_example\",\n    \"security_owner_ref\": \"security_owner_example\",\n    \"operations_owner_ref\": \"operations_owner_example\",\n    \"uat_acceptor_ref\": \"uat_acceptor_example\"\n  }\n}"
                },
                "description": "expected_version=0 creates the case; a positive value performs an optimistic update. Tenant, organization, principal and roles are derived only from the verified bearer credential.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 1 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: putCorporateOnboardingCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{put_corporate_onboarding_case_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/onboarding-case"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/putCorporateOnboardingCase",
                "method": "PUT",
                "operationId": "putCorporateOnboardingCase",
                "path": "/v2/corporate/onboarding-case"
              }
            },
            {
              "name": "Append document-status evidence to the onboarding case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"document_type\": \"MASTER_SERVICE_AGREEMENT\",\n  \"status\": \"IN_REVIEW\",\n  \"evidence_ref\": \"evidence_example\",\n  \"evidence_version\": \"example\",\n  \"evidence_sha256\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"owner_ref\": \"owner_example\"\n}"
                },
                "description": "Records an immutable reference, version and SHA-256 digest. CertaRail does not sign, upload or officially submit the referenced document.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: recordCorporateOnboardingDocument\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{record_corporate_onboarding_document_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-case/documents"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/recordCorporateOnboardingDocument",
                "method": "POST",
                "operationId": "recordCorporateOnboardingDocument",
                "path": "/v2/corporate/onboarding-case/documents"
              }
            },
            {
              "name": "Record one isolated mock-rail adapter binding.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"rail\": \"IDENTITY_KYB\",\n  \"adapter_ref\": \"adapter_example\",\n  \"contract_ref\": \"contract_example\",\n  \"evidence_ref\": \"evidence_example\",\n  \"evidence_version\": \"example\",\n  \"evidence_sha256\": \"0000000000000000000000000000000000000000000000000000000000000000\"\n}"
                },
                "description": "Proves only that a local adapter contract is wired. The binding performs no external call, moves no money, submits nothing officially and cannot activate a production provider connection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 7 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: connectCorporateOnboardingMockRail\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{connect_corporate_onboarding_mock_rail_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-case/mock-rails"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/connectCorporateOnboardingMockRail",
                "method": "POST",
                "operationId": "connectCorporateOnboardingMockRail",
                "path": "/v2/corporate/onboarding-case/mock-rails"
              }
            },
            {
              "name": "List the authenticated organization's self-service connection drafts.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns versioned CertaRail-side configuration for OIDC, payment, venue, custody and regulator boundaries. No response state proves that a production provider was contacted or activated.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listCorporateSelfServiceConnections\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/connections?kind={{list_corporate_self_service_connections_kind}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/listCorporateSelfServiceConnections",
                "method": "GET",
                "operationId": "listCorporateSelfServiceConnections",
                "path": "/v2/corporate/connections"
              }
            },
            {
              "name": "Create a server-side self-service connection draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"name\": \"example\",\n  \"kind\": \"OIDC\",\n  \"environment\": \"MOCK\",\n  \"settings\": {\n    \"provider_ref\": \"provider_example\",\n    \"issuer_url\": \"https://example.invalid/callback\",\n    \"client_id\": \"client_example\",\n    \"scopes\": \"example\",\n    \"redirect_uri\": \"https://example.invalid/callback\"\n  }\n}"
                },
                "description": "Stores public endpoint metadata and opaque secret-store references only. Raw passwords, client secrets, tokens, private keys and certificate bodies are outside this closed request contract. This operation makes zero provider calls and does not activate production.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateSelfServiceConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_corporate_self_service_connection_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/connections"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/createCorporateSelfServiceConnection",
                "method": "POST",
                "operationId": "createCorporateSelfServiceConnection",
                "path": "/v2/corporate/connections"
              }
            },
            {
              "name": "Read one organization-scoped self-service connection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one organization-scoped self-service connection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateSelfServiceConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/connections/{{get_corporate_self_service_connection_connection_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateSelfServiceConnection",
                "method": "GET",
                "operationId": "getCorporateSelfServiceConnection",
                "path": "/v2/corporate/connections/{connection_id}"
              }
            },
            {
              "name": "Update a connection draft and invalidate its previous local verification.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"name\": \"example\",\n  \"kind\": \"OIDC\",\n  \"environment\": \"MOCK\",\n  \"settings\": {\n    \"provider_ref\": \"provider_example\",\n    \"issuer_url\": \"https://example.invalid/callback\",\n    \"client_id\": \"client_example\",\n    \"scopes\": \"example\",\n    \"redirect_uri\": \"https://example.invalid/callback\"\n  }\n}"
                },
                "description": "Uses the onboarding aggregate version as an optimistic precondition. The closed body accepts only public metadata and opaque secret-store references; the updated record returns to DRAFT.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: updateCorporateSelfServiceConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{update_corporate_self_service_connection_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/connections/{{update_corporate_self_service_connection_connection_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/updateCorporateSelfServiceConnection",
                "method": "PUT",
                "operationId": "updateCorporateSelfServiceConnection",
                "path": "/v2/corporate/connections/{connection_id}"
              }
            },
            {
              "name": "Verify a saved connection against a registered local adapter contract.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1\n}"
                },
                "description": "Performs schema, secret-reference and local adapter-registry checks only. MOCK becomes MOCK_CONNECTED. PRODUCTION stops at ACTIVATION_REQUIRED. external_calls remains zero and no provider, payment, asset movement or official regulator submission occurs.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: verifyCorporateSelfServiceConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{verify_corporate_self_service_connection_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/connections/{{verify_corporate_self_service_connection_connection_id}}/verify"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/verifyCorporateSelfServiceConnection",
                "method": "POST",
                "operationId": "verifyCorporateSelfServiceConnection",
                "path": "/v2/corporate/connections/{connection_id}/verify"
              }
            },
            {
              "name": "List mandates in the authenticated organization.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List mandates in the authenticated organization.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 0 required and 3 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 3 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listCorporateMandates\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/mandates?limit={{list_corporate_mandates_limit}}&representative_id={{list_corporate_mandates_representative_id}}&status={{list_corporate_mandates_status}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/listCorporateMandates",
                "method": "GET",
                "operationId": "listCorporateMandates",
                "path": "/v2/corporate/mandates"
              }
            },
            {
              "name": "Create a versioned corporate mandate.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 0,\n  \"representative_id\": \"representative_example\",\n  \"status\": \"ACTIVE\",\n  \"allowed_operations\": [\n    \"BUY\"\n  ],\n  \"allowed_provider_connection_ids\": [\n    \"pconn_00000000000000000000000000000000\"\n  ],\n  \"currency\": \"RUB\",\n  \"maximum_amount_minor_units\": 1,\n  \"valid_from\": \"2026-01-01T00:00:00Z\",\n  \"valid_until\": \"2026-01-01T00:00:00Z\",\n  \"authority_evidence\": {\n    \"ref\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"VERIFIED\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  }\n}"
                },
                "description": "Create a versioned corporate mandate.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 9 required and 1 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateMandate\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_corporate_mandate_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/mandates"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/createCorporateMandate",
                "method": "POST",
                "operationId": "createCorporateMandate",
                "path": "/v2/corporate/mandates"
              }
            },
            {
              "name": "Read one organization-scoped mandate.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one organization-scoped mandate.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateMandate\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/mandates/{{get_corporate_mandate_mandate_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateMandate",
                "method": "GET",
                "operationId": "getCorporateMandate",
                "path": "/v2/corporate/mandates/{mandate_id}"
              }
            },
            {
              "name": "Optimistically update one corporate mandate.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"representative_id\": \"representative_example\",\n  \"status\": \"ACTIVE\",\n  \"allowed_operations\": [\n    \"BUY\"\n  ],\n  \"allowed_provider_connection_ids\": [\n    \"pconn_00000000000000000000000000000000\"\n  ],\n  \"currency\": \"RUB\",\n  \"maximum_amount_minor_units\": 1,\n  \"valid_from\": \"2026-01-01T00:00:00Z\",\n  \"valid_until\": \"2026-01-01T00:00:00Z\",\n  \"authority_evidence\": {\n    \"ref\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"VERIFIED\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  }\n}"
                },
                "description": "Optimistically update one corporate mandate.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 10 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: updateCorporateMandate\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{update_corporate_mandate_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/mandates/{{update_corporate_mandate_mandate_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/updateCorporateMandate",
                "method": "PUT",
                "operationId": "updateCorporateMandate",
                "path": "/v2/corporate/mandates/{mandate_id}"
              }
            },
            {
              "name": "List governed external-provider connection evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List governed external-provider connection evidence.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 0 required and 2 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 2 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listCorporateProviderConnections\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/provider-connections?limit={{list_corporate_provider_connections_limit}}&status={{list_corporate_provider_connections_status}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/listCorporateProviderConnections",
                "method": "GET",
                "operationId": "listCorporateProviderConnections",
                "path": "/v2/corporate/provider-connections"
              }
            },
            {
              "name": "Register non-secret provider contract and regulatory evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 0,\n  \"provider_ref\": \"provider_example\",\n  \"provider_kind\": \"BROKER\",\n  \"external\": true,\n  \"regulated\": false,\n  \"status\": \"ACTIVE\",\n  \"account_ref\": \"account_example\",\n  \"supported_operations\": [\n    \"BUY\"\n  ],\n  \"quote_currencies\": [\n    \"RUB\"\n  ],\n  \"regulatory_evidence\": {\n    \"ref\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"VERIFIED\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  },\n  \"contract_evidence\": {\n    \"ref\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"ACTIVE\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  }\n}"
                },
                "description": "This endpoint never accepts provider credentials and never activates a network adapter or external side effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 10 required and 1 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateProviderConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_corporate_provider_connection_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/provider-connections"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/createCorporateProviderConnection",
                "method": "POST",
                "operationId": "createCorporateProviderConnection",
                "path": "/v2/corporate/provider-connections"
              }
            },
            {
              "name": "Read one organization-scoped provider connection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one organization-scoped provider connection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateProviderConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/provider-connections/{{get_corporate_provider_connection_connection_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateProviderConnection",
                "method": "GET",
                "operationId": "getCorporateProviderConnection",
                "path": "/v2/corporate/provider-connections/{connection_id}"
              }
            },
            {
              "name": "Optimistically update provider connection evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"provider_ref\": \"provider_example\",\n  \"provider_kind\": \"BROKER\",\n  \"external\": true,\n  \"regulated\": false,\n  \"status\": \"ACTIVE\",\n  \"account_ref\": \"account_example\",\n  \"supported_operations\": [\n    \"BUY\"\n  ],\n  \"quote_currencies\": [\n    \"RUB\"\n  ],\n  \"regulatory_evidence\": {\n    \"ref\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"VERIFIED\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  },\n  \"contract_evidence\": {\n    \"ref\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"ACTIVE\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  }\n}"
                },
                "description": "Optimistically update provider connection evidence.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 11 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: updateCorporateProviderConnection\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{update_corporate_provider_connection_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/provider-connections/{{update_corporate_provider_connection_connection_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/updateCorporateProviderConnection",
                "method": "PUT",
                "operationId": "updateCorporateProviderConnection",
                "path": "/v2/corporate/provider-connections/{connection_id}"
              }
            },
            {
              "name": "List corporate operation intents and approval evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List corporate operation intents and approval evidence.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 0 required and 2 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 2 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listCorporateOperations\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/operations?limit={{list_corporate_operations_limit}}&state={{list_corporate_operations_state}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/listCorporateOperations",
                "method": "GET",
                "operationId": "listCorporateOperations",
                "path": "/v2/corporate/operations"
              }
            },
            {
              "name": "Create a non-monetary BUY or TRANSFER intent.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 0,\n  \"mandate_id\": \"mandate_00000000000000000000000000000000\",\n  \"provider_connection_id\": \"pconn_00000000000000000000000000000000\",\n  \"kind\": \"BUY\",\n  \"purpose\": \"TREASURY\",\n  \"asset_code\": \"BTC\",\n  \"quantity\": {\n    \"atomic_units\": \"1\",\n    \"scale\": 0\n  },\n  \"quote_currency\": \"RUB\",\n  \"quote_amount_minor_units\": 1,\n  \"source_account_ref\": \"source_account_example\"\n}"
                },
                "description": "Create a non-monetary BUY or TRANSFER intent.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 9 required and 2 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_corporate_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/operations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/createCorporateOperation",
                "method": "POST",
                "operationId": "createCorporateOperation",
                "path": "/v2/corporate/operations"
              }
            },
            {
              "name": "Read one corporate operation lifecycle projection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one corporate operation lifecycle projection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/operations/{{get_corporate_operation_operation_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/getCorporateOperation",
                "method": "GET",
                "operationId": "getCorporateOperation",
                "path": "/v2/corporate/operations/{operation_id}"
              }
            },
            {
              "name": "Update a DRAFT corporate operation with optimistic locking.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"mandate_id\": \"mandate_00000000000000000000000000000000\",\n  \"provider_connection_id\": \"pconn_00000000000000000000000000000000\",\n  \"kind\": \"BUY\",\n  \"purpose\": \"TREASURY\",\n  \"asset_code\": \"BTC\",\n  \"quantity\": {\n    \"atomic_units\": \"1\",\n    \"scale\": 0\n  },\n  \"quote_currency\": \"RUB\",\n  \"quote_amount_minor_units\": 1,\n  \"source_account_ref\": \"source_account_example\"\n}"
                },
                "description": "Update a DRAFT corporate operation with optimistic locking.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 10 required and 1 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: updateCorporateOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{update_corporate_operation_idempotency_key}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/operations/{{update_corporate_operation_operation_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/updateCorporateOperation",
                "method": "PUT",
                "operationId": "updateCorporateOperation",
                "path": "/v2/corporate/operations/{operation_id}"
              }
            },
            {
              "name": "Read the immutable lifecycle evidence for one operation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read the immutable lifecycle evidence for one operation.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listCorporateOperationEvents\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/operations/{{list_corporate_operation_events_operation_id}}/events"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/listCorporateOperationEvents",
                "method": "GET",
                "operationId": "listCorporateOperationEvents",
                "path": "/v2/corporate/operations/{operation_id}/events"
              }
            },
            {
              "name": "Evaluate a maker's draft and place it in an approval queue.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1\n}"
                },
                "description": "Submission performs policy evaluation only; it never sends a provider command.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: submitCorporateOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{submit_corporate_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/operations/{{submit_corporate_operation_operation_id}}/submit"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/submitCorporateOperation",
                "method": "POST",
                "operationId": "submitCorporateOperation",
                "path": "/v2/corporate/operations/{operation_id}/submit"
              }
            },
            {
              "name": "Record an independent approval without executing externally.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"decision_ref\": \"decision_example\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Record an independent approval without executing externally.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: approveCorporateOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{approve_corporate_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/operations/{{approve_corporate_operation_operation_id}}/approve"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/approveCorporateOperation",
                "method": "POST",
                "operationId": "approveCorporateOperation",
                "path": "/v2/corporate/operations/{operation_id}/approve"
              }
            },
            {
              "name": "Record an independent reasoned rejection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1,\n  \"decision_ref\": \"decision_example\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Record an independent reasoned rejection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: rejectCorporateOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{reject_corporate_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/operations/{{reject_corporate_operation_operation_id}}/reject"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Corporate%20Treasury/operation/rejectCorporateOperation",
                "method": "POST",
                "operationId": "rejectCorporateOperation",
                "path": "/v2/corporate/operations/{operation_id}/reject"
              }
            }
          ],
          "name": "Corporate Treasury"
        },
        {
          "description": "Generated from operations tagged Cross-border Drafts in canonical OpenAPI.",
          "item": [
            {
              "name": "Build a local, non-submittable cross-border data-pack draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"case_ref\": \"case_example\",\n  \"origin_jurisdiction_ref\": \"origin_jurisdiction_example\",\n  \"target_jurisdiction_ref\": \"target_jurisdiction_example\",\n  \"asset_ref\": \"BTC\",\n  \"rule_pack\": {\n    \"id\": \"example\",\n    \"version\": \"example\",\n    \"status\": \"DRAFT\",\n    \"source_refs\": [\n      \"example\"\n    ],\n    \"required_facts\": [\n      \"example\"\n    ]\n  },\n  \"facts\": [\n    {\n      \"code\": \"a\",\n      \"value\": \"example\"\n    }\n  ]\n}"
                },
                "description": "The authenticated tenant is server-bound. Inputs are opaque governed references and caller-supplied rule-pack evidence; no raw PII is needed. The result performs zero external calls, does not assure legal sufficiency, and cannot be submitted or enforced in production.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 7 required and 0 optional fields. Parameters add 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: buildCrossBorderDataPackDraft\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/cross-border/data-pack-drafts"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Cross-border%20Drafts/operation/buildCrossBorderDataPackDraft",
                "method": "POST",
                "operationId": "buildCrossBorderDataPackDraft",
                "path": "/v1/cross-border/data-pack-drafts"
              }
            }
          ],
          "name": "Cross-border Drafts"
        },
        {
          "description": "Generated from operations tagged Crypto Checkout in canonical OpenAPI.",
          "item": [
            {
              "name": "Create a partner-scoped checkout session.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"partner_ref\": \"partner_example\",\n  \"customer_ref\": \"customer_example\",\n  \"mode\": \"HOSTED\",\n  \"return_urls\": {\n    \"success\": \"https://example.invalid/callback\",\n    \"pending\": \"https://example.invalid/callback\",\n    \"cancel\": \"https://example.invalid/callback\",\n    \"error\": \"https://example.invalid/callback\"\n  },\n  \"locale\": \"ru-RU\"\n}"
                },
                "description": "Returns the initial single-use browser token exactly once in the response body and checkout URL.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 2 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: createCheckoutSession\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_checkout_session_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sessions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/createCheckoutSession",
                "method": "POST",
                "operationId": "createCheckoutSession",
                "path": "/v1/checkout/sessions"
              }
            },
            {
              "name": "Create an operator-authorized sandbox fault scenario.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"partner_ref\": \"partner_example\",\n  \"customer_ref\": \"customer_example\",\n  \"mode\": \"HOSTED\",\n  \"return_urls\": {\n    \"success\": \"https://example.invalid/callback\",\n    \"pending\": \"https://example.invalid/callback\",\n    \"cancel\": \"https://example.invalid/callback\",\n    \"error\": \"https://example.invalid/callback\"\n  },\n  \"locale\": \"ru-RU\",\n  \"scenario\": \"HAPPY_PATH\"\n}"
                },
                "description": "Scenario selection is available only on the partner bearer surface and never through the customer credential.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 6 required and 2 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: createSandboxCheckoutScenarioSession\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_sandbox_checkout_scenario_session_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/sessions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/createSandboxCheckoutScenarioSession",
                "method": "POST",
                "operationId": "createSandboxCheckoutScenarioSession",
                "path": "/v1/checkout/sandbox/sessions"
              }
            },
            {
              "name": "Read a tenant-scoped public checkout projection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read a tenant-scoped public checkout projection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getPartnerCheckoutSession\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sessions/{{get_partner_checkout_session_session_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getPartnerCheckoutSession",
                "method": "GET",
                "operationId": "getPartnerCheckoutSession",
                "path": "/v1/checkout/sessions/{session_id}"
              }
            },
            {
              "name": "Read operator-safe session, timeline, and signed webhook delivery evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "This bearer-authenticated projection is for the existing operator console and is never available to a customer checkout grant.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getPartnerCheckoutTimeline\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sessions/{{get_partner_checkout_timeline_session_id}}/timeline"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getPartnerCheckoutTimeline",
                "method": "GET",
                "operationId": "getPartnerCheckoutTimeline",
                "path": "/v1/checkout/sessions/{session_id}/timeline"
              }
            },
            {
              "name": "Revoke an active checkout session.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1\n}"
                },
                "description": "Revoke an active checkout session.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 1 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: revokeCheckoutSession\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{revoke_checkout_session_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sessions/{{revoke_checkout_session_session_id}}/revoke"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/revokeCheckoutSession",
                "method": "POST",
                "operationId": "revokeCheckoutSession",
                "path": "/v1/checkout/sessions/{session_id}/revoke"
              }
            },
            {
              "name": "Verify a signed checkout webhook envelope and replay window.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"contract\": \"certarail.checkout.v1\",\n  \"event_id\": \"event_example\",\n  \"event_type\": \"checkout.a\",\n  \"tenant_id\": \"tenant_example\",\n  \"session_id\": \"session_example\",\n  \"occurred_at\": \"2026-01-01T00:00:00Z\",\n  \"key_id\": \"key_example\",\n  \"body\": {},\n  \"body_sha256\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"signature\": \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\",\n  \"safety\": {\n    \"environment\": \"SANDBOX\",\n    \"execution_mode\": \"SANDBOX\",\n    \"external_calls\": 0,\n    \"monetary\": false,\n    \"production_enforceable\": false\n  }\n}"
                },
                "description": "Verify a signed checkout webhook envelope and replay window.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 11 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: verifyCheckoutWebhook\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{verify_checkout_webhook_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/webhooks/verify"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/verifyCheckoutWebhook",
                "method": "POST",
                "operationId": "verifyCheckoutWebhook",
                "path": "/v1/checkout/webhooks/verify"
              }
            },
            {
              "name": "Create a tenant-scoped logical TEST Webhook Inbox endpoint.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"environment\": \"TEST\"\n}"
                },
                "description": "Creates a PENDING_VERIFICATION endpoint. Returns the derived signing secret only on the first commit; the secret is never persisted and no external network call is made. LIVE is a separate authority and is not accepted by this sandbox route.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 2 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: createSandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_sandbox_webhook_subscription_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/createSandboxWebhookSubscription",
                "method": "POST",
                "operationId": "createSandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions"
              }
            },
            {
              "name": "List tenant-scoped sandbox Webhook Inbox subscriptions.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List tenant-scoped sandbox Webhook Inbox subscriptions.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: listSandboxWebhookSubscriptions\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/listSandboxWebhookSubscriptions",
                "method": "GET",
                "operationId": "listSandboxWebhookSubscriptions",
                "path": "/v1/checkout/sandbox/webhook-subscriptions"
              }
            },
            {
              "name": "Read one tenant-scoped sandbox Webhook Inbox subscription.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one tenant-scoped sandbox Webhook Inbox subscription.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getSandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{get_sandbox_webhook_subscription_subscription_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getSandboxWebhookSubscription",
                "method": "GET",
                "operationId": "getSandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}"
              }
            },
            {
              "name": "Delete a revoked sandbox Webhook Inbox endpoint.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"confirmed\": true\n}"
                },
                "description": "Creates a durable DELETED tombstone. Historical key generations, commands, and delivery evidence remain available to the internal evidence store; the endpoint disappears from public reads and cannot dispatch.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: deleteSandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{delete_sandbox_webhook_subscription_idempotency_key}}"
                  }
                ],
                "method": "DELETE",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{delete_sandbox_webhook_subscription_subscription_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/deleteSandboxWebhookSubscription",
                "method": "DELETE",
                "operationId": "deleteSandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}"
              }
            },
            {
              "name": "Read the logical tenant-scoped sandbox Webhook Inbox and its delivery journal.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read the logical tenant-scoped sandbox Webhook Inbox and its delivery journal.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getSandboxWebhookInbox\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{get_sandbox_webhook_inbox_subscription_id}}/inbox"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getSandboxWebhookInbox",
                "method": "GET",
                "operationId": "getSandboxWebhookInbox",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/inbox"
              }
            },
            {
              "name": "Verify possession of the current one-time endpoint signing secret.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"challenge_response\": \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\"\n}"
                },
                "description": "Compute base64url-without-padding HMAC-SHA256 over verification_challenge using the 43-character signing_secret as the ASCII HMAC key. Submit only the resulting challenge_response; never send signing_secret back to CertaRail. Successful verification moves PENDING_VERIFICATION to VERIFIED and makes no external call.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: verifySandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{verify_sandbox_webhook_subscription_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{verify_sandbox_webhook_subscription_subscription_id}}/verify"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/verifySandboxWebhookSubscription",
                "method": "POST",
                "operationId": "verifySandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/verify"
              }
            },
            {
              "name": "Activate a verified or paused sandbox Webhook Inbox endpoint.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "VERIFIED or PAUSED moves to ACTIVE. Only ACTIVE endpoints can accept new synthetic delivery evidence.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: activateSandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{activate_sandbox_webhook_subscription_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{activate_sandbox_webhook_subscription_subscription_id}}/activate"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/activateSandboxWebhookSubscription",
                "method": "POST",
                "operationId": "activateSandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/activate"
              }
            },
            {
              "name": "Pause an active sandbox Webhook Inbox endpoint.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "ACTIVE moves to PAUSED. Pending retry evidence is retained and cannot be claimed until the verified endpoint is activated again.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: pauseSandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{pause_sandbox_webhook_subscription_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{pause_sandbox_webhook_subscription_subscription_id}}/pause"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/pauseSandboxWebhookSubscription",
                "method": "POST",
                "operationId": "pauseSandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/pause"
              }
            },
            {
              "name": "Rotate a sandbox Webhook Inbox signing secret.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "Returns the new derived secret only on the first successful rotation; exact replay omits it. Rotation moves any non-terminal endpoint back to PENDING_VERIFICATION before it can dispatch with the new generation.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: rotateSandboxWebhookSigningSecret\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{rotate_sandbox_webhook_signing_secret_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{rotate_sandbox_webhook_signing_secret_subscription_id}}/rotate"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/rotateSandboxWebhookSigningSecret",
                "method": "POST",
                "operationId": "rotateSandboxWebhookSigningSecret",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/rotate"
              }
            },
            {
              "name": "Irreversibly revoke a sandbox Webhook Inbox endpoint.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"confirmed\": true\n}"
                },
                "description": "Irreversibly revoke a sandbox Webhook Inbox endpoint.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: revokeSandboxWebhookSubscription\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{revoke_sandbox_webhook_subscription_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{revoke_sandbox_webhook_subscription_subscription_id}}/revoke"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/revokeSandboxWebhookSubscription",
                "method": "POST",
                "operationId": "revokeSandboxWebhookSubscription",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/revoke"
              }
            },
            {
              "name": "Commit a signed safe event to the logical sandbox Webhook Inbox.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"session_id\": \"checkout_session_0123456789abcdef0123456789abcdef\",\n  \"simulate_outcome\": \"ACCEPTED\",\n  \"signature_scenario\": \"VALID_CURRENT_KEY\"\n}"
                },
                "description": "Deterministic test-event generator for a current-key signature, an intentionally invalid signature, or the immediately previous rotated key during its bounded five-minute overlap. Uses the existing append-only delivery evidence and retry projection; it never contacts the configured endpoint and external_calls remains 0. INVALID_SIGNATURE is durably quarantined with expected_verification=WEBHOOK_SIGNATURE_INVALID.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 2 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: sendSandboxWebhookTestEvent\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{send_sandbox_webhook_test_event_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{send_sandbox_webhook_test_event_subscription_id}}/test-events"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/sendSandboxWebhookTestEvent",
                "method": "POST",
                "operationId": "sendSandboxWebhookTestEvent",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/test-events"
              }
            },
            {
              "name": "List signed delivery observations for one sandbox Webhook Inbox.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List signed delivery observations for one sandbox Webhook Inbox.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: listSandboxWebhookDeliveries\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{list_sandbox_webhook_deliveries_subscription_id}}/deliveries"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/listSandboxWebhookDeliveries",
                "method": "GET",
                "operationId": "listSandboxWebhookDeliveries",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/deliveries"
              }
            },
            {
              "name": "Read one signed sandbox Webhook Inbox delivery observation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one signed sandbox Webhook Inbox delivery observation.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getSandboxWebhookDelivery\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{get_sandbox_webhook_delivery_subscription_id}}/deliveries/{{get_sandbox_webhook_delivery_delivery_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getSandboxWebhookDelivery",
                "method": "GET",
                "operationId": "getSandboxWebhookDelivery",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/deliveries/{delivery_id}"
              }
            },
            {
              "name": "Immediately retry one retryable synthetic delivery after explicit confirmation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"confirmed\": true\n}"
                },
                "description": "Replays the exact stored envelope through the in-process synthetic Inbox; no external HTTPS delivery occurs.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: retrySandboxWebhookDelivery\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{retry_sandbox_webhook_delivery_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{retry_sandbox_webhook_delivery_subscription_id}}/deliveries/{{retry_sandbox_webhook_delivery_delivery_id}}/retry"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/retrySandboxWebhookDelivery",
                "method": "POST",
                "operationId": "retrySandboxWebhookDelivery",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/deliveries/{delivery_id}/retry"
              }
            },
            {
              "name": "Replay one terminal delivery through the synthetic Inbox after explicit confirmation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"confirmed\": true\n}"
                },
                "description": "Appends a receipt for the exact stored signed envelope without changing the source delivery, consuming retry attempts, or making an external HTTPS call. The Inbox must remain ACTIVE and the source must be DELIVERED or QUARANTINED.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 422, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: replaySandboxWebhookDelivery\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{replay_sandbox_webhook_delivery_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sandbox/webhook-subscriptions/{{replay_sandbox_webhook_delivery_subscription_id}}/deliveries/{{replay_sandbox_webhook_delivery_delivery_id}}/replay"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/replaySandboxWebhookDelivery",
                "method": "POST",
                "operationId": "replaySandboxWebhookDelivery",
                "path": "/v1/checkout/sandbox/webhook-subscriptions/{subscription_id}/deliveries/{delivery_id}/replay"
              }
            },
            {
              "name": "Bootstrap a hosted, embedded, or headless checkout.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "description": "Bootstrap a hosted, embedded, or headless checkout.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: bootstrapCustomerCheckout\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/bootstrap"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/bootstrapCustomerCheckout",
                "method": "GET",
                "operationId": "bootstrapCustomerCheckout",
                "path": "/v1/checkout/bootstrap"
              }
            },
            {
              "name": "Commit the immutable eligibility and selection snapshot.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"amount\": {\n    \"type\": \"I_PAY\",\n    \"fiat_minor_units\": \"1\"\n  },\n  \"asset_code\": \"DEMO-BTC\",\n  \"network\": \"DEMO-BITCOIN\",\n  \"payment_method\": \"SBP\",\n  \"destination_mode\": \"PARTNER_CUSTODY_ACCOUNT\"\n}"
                },
                "description": "Commit the immutable eligibility and selection snapshot.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: preflightCustomerCheckout\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{preflight_customer_checkout_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sessions/{{preflight_customer_checkout_session_id}}/preflight"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/preflightCustomerCheckout",
                "method": "POST",
                "operationId": "preflightCustomerCheckout",
                "path": "/v1/checkout/sessions/{session_id}/preflight"
              }
            },
            {
              "name": "Create a short-lived immutable firm sandbox quote.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"amount\": {\n    \"type\": \"I_PAY\",\n    \"fiat_minor_units\": \"1\"\n  },\n  \"asset_code\": \"DEMO-BTC\",\n  \"network\": \"DEMO-BITCOIN\",\n  \"payment_method\": \"SBP\",\n  \"destination_mode\": \"PARTNER_CUSTODY_ACCOUNT\"\n}"
                },
                "description": "Create a short-lived immutable firm sandbox quote.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: createCustomerCheckoutQuote\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_customer_checkout_quote_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/sessions/{{create_customer_checkout_quote_session_id}}/quotes"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/createCustomerCheckoutQuote",
                "method": "POST",
                "operationId": "createCustomerCheckoutQuote",
                "path": "/v1/checkout/sessions/{session_id}/quotes"
              }
            },
            {
              "name": "Read the immutable quote in the scoped session.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "description": "Read the immutable quote in the scoped session.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getCustomerCheckoutQuote\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/quotes/{{get_customer_checkout_quote_quote_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getCustomerCheckoutQuote",
                "method": "GET",
                "operationId": "getCustomerCheckoutQuote",
                "path": "/v1/checkout/quotes/{quote_id}"
              }
            },
            {
              "name": "Confirm the exact quote with optimistic concurrency.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"quote_id\": \"quote_example\",\n  \"expected_version\": 1\n}"
                },
                "description": "Before Deal Core assigns a deal ID, the path handle is the confirmation_ref (quote_id).\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: confirmCustomerCheckout\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{confirm_customer_checkout_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/deals/{{confirm_customer_checkout_deal_id}}/confirm"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/confirmCustomerCheckout",
                "method": "POST",
                "operationId": "confirmCustomerCheckout",
                "path": "/v1/checkout/deals/{deal_id}/confirm"
              }
            },
            {
              "name": "Cancel a checkout before an irreversible synthetic stage.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_version\": 1\n}"
                },
                "description": "Cancel a checkout before an irreversible synthetic stage.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 1 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact command identity; replay is allowed only for the same canonical request.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: cancelCustomerCheckout\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact command identity; replay is allowed only for the same canonical request.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{cancel_customer_checkout_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/checkout/deals/{{cancel_customer_checkout_deal_id}}/cancel"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/cancelCustomerCheckout",
                "method": "POST",
                "operationId": "cancelCustomerCheckout",
                "path": "/v1/checkout/deals/{deal_id}/cancel"
              }
            },
            {
              "name": "Read the multi-axis checkout and Deal Core projection.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "description": "Read the multi-axis checkout and Deal Core projection.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getCustomerCheckoutStatus\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/deals/{{get_customer_checkout_status_deal_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getCustomerCheckoutStatus",
                "method": "GET",
                "operationId": "getCustomerCheckoutStatus",
                "path": "/v1/checkout/deals/{deal_id}"
              }
            },
            {
              "name": "Read the append-only customer-safe timeline.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "description": "Read the append-only customer-safe timeline.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getCustomerCheckoutTimeline\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/deals/{{get_customer_checkout_timeline_deal_id}}/timeline"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getCustomerCheckoutTimeline",
                "method": "GET",
                "operationId": "getCustomerCheckoutTimeline",
                "path": "/v1/checkout/deals/{deal_id}/timeline"
              }
            },
            {
              "name": "Read the polling-compatible checkout event feed.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "description": "Read the polling-compatible checkout event feed.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getCustomerCheckoutEvents\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/deals/{{get_customer_checkout_events_deal_id}}/events"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getCustomerCheckoutEvents",
                "method": "GET",
                "operationId": "getCustomerCheckoutEvents",
                "path": "/v1/checkout/deals/{deal_id}/events"
              }
            },
            {
              "name": "Read the immutable completed receipt.",
              "request": {
                "auth": {
                  "apikey": [
                    {
                      "key": "key",
                      "type": "string",
                      "value": "X-CertaRail-Checkout-Token"
                    },
                    {
                      "key": "value",
                      "type": "string",
                      "value": "{{checkout_session_token}}"
                    },
                    {
                      "key": "in",
                      "type": "string",
                      "value": "header"
                    }
                  ],
                  "type": "apikey"
                },
                "description": "Read the immutable completed receipt.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses checkoutSessionHeader (X-CertaRail-Checkout-Token header) or checkoutSessionCookie (certarail_checkout cookie).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 404, 409 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\n- [certarail.checkout.lifecycle.v1](/docs/events#channels) — NOT_PRODUCED; certarail.checkout.lifecycle.v1\n- [certarail.checkout.partner-delivery.v1](/docs/events#channels) — SANDBOX_INBOX_DERIVED; certarail.checkout.partner-delivery.v1\nCanonical operationId: getCustomerCheckoutReceipt\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/checkout/deals/{{get_customer_checkout_receipt_deal_id}}/receipt"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Crypto%20Checkout/operation/getCustomerCheckoutReceipt",
                "method": "GET",
                "operationId": "getCustomerCheckoutReceipt",
                "path": "/v1/checkout/deals/{deal_id}/receipt"
              }
            }
          ],
          "name": "Crypto Checkout"
        },
        {
          "description": "Generated from operations tagged Deal Core Sandbox in canonical OpenAPI.",
          "item": [
            {
              "name": "Admit and run one retail SPOT_BUY/RUB sandbox deal.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"evaluation\": {\n    \"request_id\": \"request_example\",\n    \"tenant_id\": \"tenant_example\",\n    \"facts_observed_at\": \"2026-01-01T00:00:00Z\",\n    \"operation\": \"BUY\",\n    \"asset_code\": \"BTC\",\n    \"amount\": {\n      \"currency\": \"RUB\",\n      \"minor_units\": 1\n    },\n    \"client\": {\n      \"subject_ref\": \"subject_example\",\n      \"facts_version\": \"example\",\n      \"residency\": \"example\",\n      \"investor_category\": \"RETAIL\",\n      \"kyc_status\": \"VERIFIED\",\n      \"screening_status\": \"CLEAR\"\n    },\n    \"intermediary\": {\n      \"kind\": \"BROKER\",\n      \"regulated\": false\n    }\n  },\n  \"outcome\": \"COMPLETED\"\n}"
                },
                "description": "Evaluates the supplied retail admission facts, seals their digests into a single-use RETAIL AdmissionGrant, and runs the local shared Deal Core contour. Network, provider profile, opaque portfolio reference, and the deterministic sandbox quantity mapping are server-derived and cannot be selected by the caller. Idempotency-Key is required and must exactly equal evaluation.request_id. COMPLETED returns 201; SUBMIT_UNKNOWN and RECONCILIATION_BREAK return 202. No provider, bank, custodian, blockchain, or production system is called and no money or asset moves.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201, 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable source command identity. It must appear exactly once. Retail callers must use evaluation.request_id; corporate callers must use the operation_id path value. Exact replay returns committed evidence and a changed request under the same source identity returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded local control-plane concurrency limit is exhausted; retry the exact command. Retry-After: documented header. 503: The local admission, Deal Core, provider journal, ledger, or authoritative store is unavailable. This never means an external request was attempted. Retry-After: documented header. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createRetailDealScenario\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable source command identity. It must appear exactly once. Retail callers must use evaluation.request_id; corporate callers must use the operation_id path value. Exact replay returns committed evidence and a changed request under the same source identity returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_retail_deal_scenario_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/retail/deal-scenarios"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Deal%20Core%20Sandbox/operation/createRetailDealScenario",
                "method": "POST",
                "operationId": "createRetailDealScenario",
                "path": "/v2/retail/deal-scenarios"
              }
            },
            {
              "name": "Run one approved corporate BUY through the shared sandbox Deal Core.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"outcome\": \"COMPLETED\"\n}"
                },
                "description": "Loads the authenticated organization's immutable approved BUY and its append-only approval event. Before the first provider-submit boundary, it also re-evaluates the current provider connection, mandate, and KYB evidence; post-submit recovery reuses committed evidence and never resubmits. Idempotency-Key must exactly equal operation_id. Provider, amount, asset quantity, network, opaque portfolio, organization, and authenticated initiating actor are server-derived. Exact replay is bound to that actor; cross-principal recovery is rejected until a separate durable recovery-access journal exists. COMPLETED returns 201; SUBMIT_UNKNOWN and RECONCILIATION_BREAK return 202. All effects remain local and synthetic.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201, 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable source command identity. It must appear exactly once. Retail callers must use evaluation.request_id; corporate callers must use the operation_id path value. Exact replay returns committed evidence and a changed request under the same source identity returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded local control-plane concurrency limit is exhausted; retry the exact command. Retry-After: documented header. 503: The local admission, Deal Core, provider journal, ledger, or authoritative store is unavailable. This never means an external request was attempted. Retry-After: documented header. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateOperationDealScenario\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable source command identity. It must appear exactly once. Retail callers must use evaluation.request_id; corporate callers must use the operation_id path value. Exact replay returns committed evidence and a changed request under the same source identity returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_corporate_operation_deal_scenario_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/operations/{{create_corporate_operation_deal_scenario_operation_id}}/deal-scenarios"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Deal%20Core%20Sandbox/operation/createCorporateOperationDealScenario",
                "method": "POST",
                "operationId": "createCorporateOperationDealScenario",
                "path": "/v2/corporate/operations/{operation_id}/deal-scenarios"
              }
            },
            {
              "name": "Read one tenant-scoped Deal Core projection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns the current local Deal projection after role and party or organization authorization. It is operational evidence, not a provider receipt, bank ledger, custody statement, or proof of a monetary effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded local control-plane concurrency limit is exhausted; retry the exact command. Retry-After: documented header. 503: The local admission, Deal Core, provider journal, ledger, or authoritative store is unavailable. This never means an external request was attempted. Retry-After: documented header. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeal\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/deals/{{get_deal_deal_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Deal%20Core%20Sandbox/operation/getDeal",
                "method": "GET",
                "operationId": "getDeal",
                "path": "/v2/deals/{deal_id}"
              }
            },
            {
              "name": "List the append-only evidence events for one authorized Deal.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List the append-only evidence events for one authorized Deal.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded local control-plane concurrency limit is exhausted; retry the exact command. Retry-After: documented header. 503: The local admission, Deal Core, provider journal, ledger, or authoritative store is unavailable. This never means an external request was attempted. Retry-After: documented header. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listDealEvents\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/deals/{{list_deal_events_deal_id}}/events"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Deal%20Core%20Sandbox/operation/listDealEvents",
                "method": "GET",
                "operationId": "listDealEvents",
                "path": "/v2/deals/{deal_id}/events"
              }
            }
          ],
          "name": "Deal Core Sandbox"
        },
        {
          "description": "Generated from operations tagged Decision in canonical OpenAPI.",
          "item": [
            {
              "name": "Evaluate one transaction intent against the effective policy.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"bank-order-000001\",\n  \"tenant_id\": \"sandbox-bank\",\n  \"facts_observed_at\": \"2026-08-24T18:20:00Z\",\n  \"operation\": \"BUY\",\n  \"asset_code\": \"DEMO-BTC\",\n  \"amount\": {\n    \"currency\": \"RUB\",\n    \"minor_units\": 25000000\n  },\n  \"client\": {\n    \"subject_ref\": \"cust_7fd2\",\n    \"facts_version\": \"kyc-443\",\n    \"residency\": \"RU\",\n    \"investor_category\": \"RETAIL\",\n    \"kyc_status\": \"VERIFIED\",\n    \"screening_status\": \"CLEAR\",\n    \"knowledge_test\": {\n      \"passed\": true,\n      \"passed_at\": \"2026-08-01T00:00:00Z\",\n      \"valid_until\": \"2027-08-01T00:00:00Z\"\n    },\n    \"risk_disclosure\": {\n      \"accepted\": true,\n      \"version\": \"sandbox-risk-v1\",\n      \"accepted_at\": \"2026-08-24T18:15:00Z\"\n    },\n    \"annual_volume\": {\n      \"currency\": \"RUB\",\n      \"minor_units\": 10000000\n    }\n  },\n  \"intermediary\": {\n    \"kind\": \"BROKER\",\n    \"regulated\": true\n  }\n}"
                },
                "description": "The server sets the authoritative evaluation timestamp. facts_observed_at describes the bank assertion snapshot and cannot select a policy version. The response is released only after the decision, idempotency record, audit evidence and outbox event are committed atomically. If the header is omitted, request_id is used as the idempotency key.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 8 required and 0 optional fields. Parameters add 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is optional. Stable client command key. Reusing it with the identical payload returns the exact committed response; a different payload returns 409.\n\n### Rate-limit behaviour\n\n429: Configured in-flight concurrency limit is exhausted; retry the same command. Retry-After: documented header. 503: The atomic decision commit failed, or authoritative outbox backpressure denied a new write. OUTBOX_BACKPRESSURE responses set Retry-After to 5 seconds. Exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.decision.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.eligibility.decision.v1\nCanonical operationId: createEligibilityEvaluation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable client command key. Reusing it with the identical payload returns the exact committed response; a different payload returns 409.",
                    "disabled": true,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_eligibility_evaluation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/eligibility/evaluations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Decision/operation/createEligibilityEvaluation",
                "method": "POST",
                "operationId": "createEligibilityEvaluation",
                "path": "/v1/eligibility/evaluations"
              }
            }
          ],
          "name": "Decision"
        },
        {
          "description": "Generated from operations tagged Developer Console in canonical OpenAPI.",
          "item": [
            {
              "name": "Resolve a tenant-scoped operation from an exact opaque reference.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"opaque_id\": \"opaque_example\"\n}"
                },
                "description": "Looks up only SHA-256 correlation edges stored by the Checkout evidence repository. The submitted opaque_id is accepted in the JSON body, never echoed, never persisted in plaintext, and cannot select another tenant. A recent movement request_id or report_id may use an explicitly bounded alias scan whose scope and truncation state remain visible. The response contains only the existing operator-safe timeline and never canonical requests, credentials, raw PII, or private provider payloads. When a durable developer run exists, the backend may also return closed, same-origin console paths for that run and its latest pack graph; the submitted opaque reference is never embedded in those paths.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: lookupDeveloperEvidence\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/developer/evidence/lookups"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/lookupDeveloperEvidence",
                "method": "POST",
                "operationId": "lookupDeveloperEvidence",
                "path": "/v1/developer/evidence/lookups"
              }
            },
            {
              "name": "Read the real producer state of one tenant-scoped outbox event.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns a privacy-minimised projection from the authoritative PostgreSQL outbox. PUBLISHED proves that the configured producer acknowledged the event; it does not prove downstream consumer processing. Payload, partition key, decision identity, worker lease, and failure text are never exposed. This read performs no external webhook call.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperOutboxEvidence\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/outbox-events/{{get_developer_outbox_evidence_event_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperOutboxEvidence",
                "method": "GET",
                "operationId": "getDeveloperOutboxEvidence",
                "path": "/v1/developer/outbox-events/{event_id}"
              }
            },
            {
              "name": "List the versioned sandbox Scenario Run catalog.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns server-owned scenario definitions. Catalog visibility does not imply that every documented scenario has a durable runtime executor.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 429 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listDeveloperScenarios\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/scenarios"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/listDeveloperScenarios",
                "method": "GET",
                "operationId": "listDeveloperScenarios",
                "path": "/v1/developer/scenarios"
              }
            },
            {
              "name": "Read exact organization-scoped sandbox binding readiness.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Projects the bearer-derived tenant and organization from the durable corporate onboarding aggregate. A binding is ready only when exactly one MOCK_CONNECTED configuration has matching server-registry rail evidence and the corresponding sandbox platform capability or adapter is ready. No provider is probed.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperSandboxBindings\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/sandbox-bindings"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperSandboxBindings",
                "method": "GET",
                "operationId": "getDeveloperSandboxBindings",
                "path": "/v1/developer/sandbox-bindings"
              }
            },
            {
              "name": "Create, locally verify, and activate one closed synthetic binding.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"expected_onboarding_version\": 0\n}"
                },
                "description": "Requires the exact developer:admin role. The server derives tenant, organization, actor, adapter contract, and all synthetic settings. It persists a versioned corporate DRAFT and then local verification evidence before returning MOCK_CONNECTED. The operation accepts no credential, secret, provider URL, or caller-selected adapter and makes zero external calls.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: activateDeveloperSandboxBinding\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{activate_developer_sandbox_binding_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/developer/sandbox-bindings/{{activate_developer_sandbox_binding_binding}}/activate"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/activateDeveloperSandboxBinding",
                "method": "POST",
                "operationId": "activateDeveloperSandboxBinding",
                "path": "/v1/developer/sandbox-bindings/{binding}/activate"
              }
            },
            {
              "name": "Create or exactly replay a tenant-scoped sandbox Scenario Run.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"scenario_id\": \"scenario_example\"\n}"
                },
                "description": "Creates a durable run index around an existing synthetic checkout scenario. Before the first checkout mutation it requires the exact activated organization bindings plus platform readiness. A committed exact replay is resolved before those mutable checks; changed canonical payload under the same key returns 409. It performs no external call and moves no money or assets.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 1 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createDeveloperScenarioRun\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_developer_scenario_run_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/developer/scenario-runs"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/createDeveloperScenarioRun",
                "method": "POST",
                "operationId": "createDeveloperScenarioRun",
                "path": "/v1/developer/scenario-runs"
              }
            },
            {
              "name": "List recent tenant-scoped Scenario Runs.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List recent tenant-scoped Scenario Runs.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listDeveloperScenarioRuns\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/scenario-runs?limit={{list_developer_scenario_runs_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/listDeveloperScenarioRuns",
                "method": "GET",
                "operationId": "listDeveloperScenarioRuns",
                "path": "/v1/developer/scenario-runs"
              }
            },
            {
              "name": "Read one tenant-scoped Scenario Run.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one tenant-scoped Scenario Run.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperScenarioRun\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/scenario-runs/{{get_developer_scenario_run_run_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperScenarioRun",
                "method": "GET",
                "operationId": "getDeveloperScenarioRun",
                "path": "/v1/developer/scenario-runs/{run_id}"
              }
            },
            {
              "name": "Read the source-backed operator timeline for a Scenario Run.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read the source-backed operator timeline for a Scenario Run.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperScenarioRunTimeline\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/scenario-runs/{{get_developer_scenario_run_timeline_run_id}}/timeline"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperScenarioRunTimeline",
                "method": "GET",
                "operationId": "getDeveloperScenarioRunTimeline",
                "path": "/v1/developer/scenario-runs/{run_id}/timeline"
              }
            },
            {
              "name": "Read the latest committed Evidence Graph for a Scenario Run.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Integrity status concerns only the portable sandbox bytes and their Merkle binding.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperScenarioRunEvidence\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/scenario-runs/{{get_developer_scenario_run_evidence_run_id}}/evidence"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperScenarioRunEvidence",
                "method": "GET",
                "operationId": "getDeveloperScenarioRunEvidence",
                "path": "/v1/developer/scenario-runs/{run_id}/evidence"
              }
            },
            {
              "name": "Evaluate the catalog assertions supported by the bounded runtime.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Evaluate the catalog assertions supported by the bounded runtime.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperScenarioRunAssertions\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/scenario-runs/{{get_developer_scenario_run_assertions_run_id}}/assertions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperScenarioRunAssertions",
                "method": "GET",
                "operationId": "getDeveloperScenarioRunAssertions",
                "path": "/v1/developer/scenario-runs/{run_id}/assertions"
              }
            },
            {
              "name": "Build or exactly replay a portable Evidence Pack for a Scenario Run.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "Canonicalizes explicitly safe projections of existing source facts. It neither manufactures execution evidence nor supplies legal effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: buildDeveloperScenarioEvidencePack\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{build_developer_scenario_evidence_pack_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/developer/scenario-runs/{{build_developer_scenario_evidence_pack_run_id}}/evidence-pack"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/buildDeveloperScenarioEvidencePack",
                "method": "POST",
                "operationId": "buildDeveloperScenarioEvidencePack",
                "path": "/v1/developer/scenario-runs/{run_id}/evidence-pack"
              }
            },
            {
              "name": "Read one committed portable Evidence Pack record.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one committed portable Evidence Pack record.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperEvidencePack\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/evidence-packs/{{get_developer_evidence_pack_pack_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperEvidencePack",
                "method": "GET",
                "operationId": "getDeveloperEvidencePack",
                "path": "/v1/developer/evidence-packs/{pack_id}"
              }
            },
            {
              "name": "Read the portable manifest and explicit algorithm metadata.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read the portable manifest and explicit algorithm metadata.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDeveloperEvidencePackManifest\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/evidence-packs/{{get_developer_evidence_pack_manifest_pack_id}}/manifest"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/getDeveloperEvidencePackManifest",
                "method": "GET",
                "operationId": "getDeveloperEvidencePackManifest",
                "path": "/v1/developer/evidence-packs/{pack_id}/manifest"
              }
            },
            {
              "name": "Download the exact compact portable Evidence Pack JSON.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "The response is the evidence-pack envelope itself, not the surrounding Developer Evidence record. It is unsigned sandbox evidence and is sent with no-store and attachment headers.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: downloadDeveloperEvidencePack\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/developer/evidence-packs/{{download_developer_evidence_pack_pack_id}}/download"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/downloadDeveloperEvidencePack",
                "method": "GET",
                "operationId": "downloadDeveloperEvidencePack",
                "path": "/v1/developer/evidence-packs/{pack_id}/download"
              }
            },
            {
              "name": "Re-verify a committed pack without mutating it.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "This read-only POST recomputes item digests, the manifest digest, and Merkle root. VERIFIED does not assert real execution, signature, certification, admissibility, or legal effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: verifyDeveloperEvidencePack\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/developer/evidence-packs/{{verify_developer_evidence_pack_pack_id}}/verify"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Developer%20Console/operation/verifyDeveloperEvidencePack",
                "method": "POST",
                "operationId": "verifyDeveloperEvidencePack",
                "path": "/v1/developer/evidence-packs/{pack_id}/verify"
              }
            }
          ],
          "name": "Developer Console"
        },
        {
          "description": "Generated from operations tagged Digital Depository in canonical OpenAPI.",
          "item": [
            {
              "name": "Register an asset as an opaque governed identifier.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"display_name\": \"example\",\n  \"identifier_scheme\": \"A\",\n  \"identifier_value\": \"example\",\n  \"governance_ref\": \"governance_example\",\n  \"governance_version\": \"example\",\n  \"scale\": 0\n}"
                },
                "description": "Sandbox Book of Record only. Tenant is derived from the bearer; actor is caller-asserted. Identifier registry validation is NOT_CONFIGURED, the record is NOT_OFFICIAL, GOST signing is NOT_CONFIGURED, and external_calls is 0.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 7 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: registerDepositoryAsset\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{register_depository_asset_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{register_depository_asset_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/depository/assets"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/registerDepositoryAsset",
                "method": "POST",
                "operationId": "registerDepositoryAsset",
                "path": "/v1/depository/assets"
              }
            },
            {
              "name": "Read one tenant-scoped sandbox asset record.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns NOT_OFFICIAL local evidence with zero external calls and no registry validation claim.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDepositoryAsset\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/assets/{{get_depository_asset_asset_id}}?tenant_id={{get_depository_asset_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/getDepositoryAsset",
                "method": "GET",
                "operationId": "getDepositoryAsset",
                "path": "/v1/depository/assets/{asset_id}"
              }
            },
            {
              "name": "Open a CONTROL or HOLDER account in the sandbox Book of Record.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"asset_id\": \"dasset_00000000000000000000000000000000\",\n  \"holder_ref\": \"holder_example\",\n  \"kind\": \"CONTROL\",\n  \"scale\": 0\n}"
                },
                "description": "Creates no provider account, custody relationship, or legal ownership statement. The record is NOT_OFFICIAL, unsigned, local, and performs zero external calls.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: openDepositoryAccount\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{open_depository_account_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{open_depository_account_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/depository/accounts"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/openDepositoryAccount",
                "method": "POST",
                "operationId": "openDepositoryAccount",
                "path": "/v1/depository/accounts"
              }
            },
            {
              "name": "Read an exact local account projection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Balance uses atomic units plus scale and is not an official custody or ownership statement.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDepositoryAccount\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/accounts/{{get_depository_account_account_id}}?tenant_id={{get_depository_account_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/getDepositoryAccount",
                "method": "GET",
                "operationId": "getDepositoryAccount",
                "path": "/v1/depository/accounts/{account_id}"
              }
            },
            {
              "name": "List local journal entries for an account and time period.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Append-only design evidence; no official statement, provider query, or GOST signature is produced.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n5 parameters: 4 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 4 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listDepositoryAccountEntries\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/accounts/{{list_depository_account_entries_account_id}}/entries?tenant_id={{list_depository_account_entries_tenant_id}}&from={{list_depository_account_entries_from}}&to={{list_depository_account_entries_to}}&limit={{list_depository_account_entries_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/listDepositoryAccountEntries",
                "method": "GET",
                "operationId": "listDepositoryAccountEntries",
                "path": "/v1/depository/accounts/{account_id}/entries"
              }
            },
            {
              "name": "Post an ISSUE, TRANSFER, or REDEEM sandbox journal operation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"asset_id\": \"dasset_00000000000000000000000000000000\",\n  \"kind\": \"ISSUE\",\n  \"quantity\": {\n    \"atomic_units\": \"0\",\n    \"scale\": 0\n  },\n  \"authority_ref\": \"authority_example\",\n  \"to_account_id\": \"dacc_00000000000000000000000000000000\"\n}"
                },
                "description": "Exact atomic-unit entries and account projections commit atomically and fail on overdraft. This is a local design ledger: no asset or money moves, no provider is called, and the result is not production-enforceable or official.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: postDepositoryOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{post_depository_operation_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{post_depository_operation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/depository/operations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/postDepositoryOperation",
                "method": "POST",
                "operationId": "postDepositoryOperation",
                "path": "/v1/depository/operations"
              }
            },
            {
              "name": "Read one Local environment journal operation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns NOT_OFFICIAL exact-unit evidence; external_calls is 0 and no settlement occurred.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDepositoryOperation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/operations/{{get_depository_operation_operation_id}}?tenant_id={{get_depository_operation_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/getDepositoryOperation",
                "method": "GET",
                "operationId": "getDepositoryOperation",
                "path": "/v1/depository/operations/{operation_id}"
              }
            },
            {
              "name": "Create a point-in-time local account extract.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"account_id\": \"dacc_00000000000000000000000000000000\",\n  \"period_from\": \"2026-01-01T00:00:00Z\",\n  \"period_to\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "The extract is reproducible evidence from the sandbox ledger, explicitly NOT_OFFICIAL and GOST NOT_CONFIGURED. It is not a legal account statement and makes no provider or registry call.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 4 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createDepositoryExtract\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{create_depository_extract_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_depository_extract_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/depository/extracts"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/createDepositoryExtract",
                "method": "POST",
                "operationId": "createDepositoryExtract",
                "path": "/v1/depository/extracts"
              }
            },
            {
              "name": "Read one immutable local extract.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "NOT_OFFICIAL, unsigned sandbox evidence only; no external lookup is performed.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDepositoryExtract\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/extracts/{{get_depository_extract_extract_id}}?tenant_id={{get_depository_extract_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/getDepositoryExtract",
                "method": "GET",
                "operationId": "getDepositoryExtract",
                "path": "/v1/depository/extracts/{extract_id}"
              }
            },
            {
              "name": "Record caller-supplied provider balance evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"account_id\": \"dacc_00000000000000000000000000000000\",\n  \"provider_ref\": \"provider_example\",\n  \"provider_account_ref\": \"provider_account_example\",\n  \"provider_asset_ref\": \"BTC\",\n  \"observed_balance\": {\n    \"atomic_units\": \"0\",\n    \"scale\": 0\n  },\n  \"observed_at\": \"2026-01-01T00:00:00Z\",\n  \"raw_evidence_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\"\n}"
                },
                "description": "The API stores opaque provider references and a caller-supplied raw evidence digest. It does not contact or authenticate the provider and makes no claim that the observation is official.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 8 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: recordDepositoryProviderObservation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{record_depository_provider_observation_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{record_depository_provider_observation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/depository/provider-observations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/recordDepositoryProviderObservation",
                "method": "POST",
                "operationId": "recordDepositoryProviderObservation",
                "path": "/v1/depository/provider-observations"
              }
            },
            {
              "name": "Read one caller-supplied provider observation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Local NOT_OFFICIAL evidence; reading it performs no provider call.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDepositoryProviderObservation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/provider-observations/{{get_depository_provider_observation_observation_id}}?tenant_id={{get_depository_provider_observation_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/getDepositoryProviderObservation",
                "method": "GET",
                "operationId": "getDepositoryProviderObservation",
                "path": "/v1/depository/provider-observations/{observation_id}"
              }
            },
            {
              "name": "Reconcile one stored observation against the local ledger.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"observation_id\": \"dobs_00000000000000000000000000000000\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Produces MATCH or MISMATCH evidence from already stored values. It does not correct balances, contact a provider, move assets, or create an official reconciliation statement.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: reconcileDepositoryObservation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{reconcile_depository_observation_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{reconcile_depository_observation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/depository/reconciliations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/reconcileDepositoryObservation",
                "method": "POST",
                "operationId": "reconcileDepositoryObservation",
                "path": "/v1/depository/reconciliations"
              }
            },
            {
              "name": "Read one immutable local reconciliation result.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "NOT_OFFICIAL, GOST NOT_CONFIGURED, external_calls 0, and never production-enforceable.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getDepositoryReconciliation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/depository/reconciliations/{{get_depository_reconciliation_reconciliation_id}}?tenant_id={{get_depository_reconciliation_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Digital%20Depository/operation/getDepositoryReconciliation",
                "method": "GET",
                "operationId": "getDepositoryReconciliation",
                "path": "/v1/depository/reconciliations/{reconciliation_id}"
              }
            }
          ],
          "name": "Digital Depository"
        },
        {
          "description": "Generated from operations tagged Integration Lab in canonical OpenAPI.",
          "item": [
            {
              "name": "Run one isolated synthetic recovery or full mock capability scenario.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"scenario\": \"VENUE_LOST_RESPONSE_RECOVERY\"\n}"
                },
                "description": "Creates fresh deterministic in-process mock state for this request only. Recovery scenarios demonstrate UNKNOWN handling, lookup-only recovery, exact replay, and fail-closed canonical-digest conflict rejection. The full capability suite accepts only bounded fixture facts and returns identity, market-data, exact P&L, simulated hold, venue, custody, regulatory, governance, security, operations, and release evidence. It accepts no URL, credential, secret, key, certificate, or free-form provider payload. Every scenario performs zero network or external provider calls, moves no funds or assets, makes no official submission, and is never production-enforceable. State is discarded after the response and is not production durability evidence.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: runIntegrationLabScenario\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/integration-lab/scenarios"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Integration%20Lab/operation/runIntegrationLabScenario",
                "method": "POST",
                "operationId": "runIntegrationLabScenario",
                "path": "/v1/integration-lab/scenarios"
              }
            }
          ],
          "name": "Integration Lab"
        },
        {
          "description": "Generated from operations tagged Limits in canonical OpenAPI.",
          "item": [
            {
              "name": "Configure one approved sandbox limit account.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"key\": {\n    \"tenant_id\": \"tenant_example\",\n    \"subject_ref\": \"subject_example\",\n    \"period_from\": \"2026-01-01T00:00:00Z\",\n    \"period_to\": \"2026-01-01T00:00:00Z\",\n    \"currency\": \"RUB\"\n  },\n  \"limit_minor_units\": 1,\n  \"approved_source\": \"example\",\n  \"approved_source_version\": \"example\",\n  \"approver_id\": \"approver_example\",\n  \"change_ticket\": \"example\"\n}"
                },
                "description": "The key tenant must match the server-bound bearer. Caller-asserted actor, a distinct approver, and Idempotency-Key are evidence only; the ledger is authoritative inside this sandbox and not a production enforcement rail.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 6 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: configureSandboxLimitAccount\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{configure_sandbox_limit_account_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{configure_sandbox_limit_account_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/limit-accounts"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Limits/operation/configureSandboxLimitAccount",
                "method": "POST",
                "operationId": "configureSandboxLimitAccount",
                "path": "/v1/limit-accounts"
              }
            },
            {
              "name": "Atomically reserve exact minor units against a sandbox limit.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"key\": {\n    \"tenant_id\": \"tenant_example\",\n    \"subject_ref\": \"subject_example\",\n    \"period_from\": \"2026-01-01T00:00:00Z\",\n    \"period_to\": \"2026-01-01T00:00:00Z\",\n    \"currency\": \"RUB\"\n  },\n  \"amount_minor_units\": 1,\n  \"ttl_seconds\": 1\n}"
                },
                "description": "Reservation and expiry use the authoritative sandbox PostgreSQL clock and row lock. This reserves no bank funds and is not production-enforceable.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: reserveSandboxLimit\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{reserve_sandbox_limit_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{reserve_sandbox_limit_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/limit-reservations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Limits/operation/reserveSandboxLimit",
                "method": "POST",
                "operationId": "reserveSandboxLimit",
                "path": "/v1/limit-reservations"
              }
            },
            {
              "name": "Finalize a RESERVED sandbox limit reservation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Records a local terminal ledger state; it does not settle or move funds.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: finalizeSandboxLimitReservation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{finalize_sandbox_limit_reservation_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{finalize_sandbox_limit_reservation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/limit-reservations/{{finalize_sandbox_limit_reservation_reservation_id}}/finalize"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Limits/operation/finalizeSandboxLimitReservation",
                "method": "POST",
                "operationId": "finalizeSandboxLimitReservation",
                "path": "/v1/limit-reservations/{reservation_id}/finalize"
              }
            },
            {
              "name": "Release a RESERVED sandbox limit reservation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Records a local release only; it does not release or move bank funds.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: releaseSandboxLimitReservation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{release_sandbox_limit_reservation_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{release_sandbox_limit_reservation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/limit-reservations/{{release_sandbox_limit_reservation_reservation_id}}/release"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Limits/operation/releaseSandboxLimitReservation",
                "method": "POST",
                "operationId": "releaseSandboxLimitReservation",
                "path": "/v1/limit-reservations/{reservation_id}/release"
              }
            },
            {
              "name": "Expire due reservations for one sandbox limit account.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"key\": {\n    \"tenant_id\": \"tenant_example\",\n    \"subject_ref\": \"subject_example\",\n    \"period_from\": \"2026-01-01T00:00:00Z\",\n    \"period_to\": \"2026-01-01T00:00:00Z\",\n    \"currency\": \"RUB\"\n  },\n  \"batch_size\": 1\n}"
                },
                "description": "Uses the database clock and bounded batch; it changes no external account or funds.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: expireSandboxLimitReservations\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{expire_sandbox_limit_reservations_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{expire_sandbox_limit_reservations_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/limit-reservations/expire"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Limits/operation/expireSandboxLimitReservations",
                "method": "POST",
                "operationId": "expireSandboxLimitReservations",
                "path": "/v1/limit-reservations/expire"
              }
            }
          ],
          "name": "Limits"
        },
        {
          "description": "Generated from operations tagged Movement in canonical OpenAPI.",
          "item": [
            {
              "name": "Record one immutable digital-asset movement observation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"decision_id\": \"decision_example\",\n  \"kind\": \"BUY_FILL\",\n  \"direction\": \"CREDIT\",\n  \"asset_code\": \"BTC\",\n  \"quantity\": {\n    \"atomic_units\": \"1\",\n    \"decimals\": 0\n  },\n  \"network\": \"bitcoin\",\n  \"status\": \"OBSERVED\",\n  \"wallet_ref\": \"wallet_example\",\n  \"source_system\": \"example\",\n  \"source_event_ref\": \"source_event_example\",\n  \"observed_at\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Evidence ingestion only. The referenced eligibility decision must exist for the tenant. The movement, its idempotent response, and Kafka outbox event are committed in one PostgreSQL transaction. This endpoint cannot cause an exchange order, payment, withdrawal, or blockchain broadcast. A lifecycle change is represented by a new observation rather than an update to an existing row.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 13 required and 7 optional fields. Parameters add 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is optional. Defaults to request_id when omitted.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.movement.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.asset.movement.v1\nCanonical operationId: recordAssetMovement\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Defaults to request_id when omitted.",
                    "disabled": true,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{record_asset_movement_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/movements"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Movement/operation/recordAssetMovement",
                "method": "POST",
                "operationId": "recordAssetMovement",
                "path": "/v1/movements"
              }
            },
            {
              "name": "List tenant movement evidence in descending observation order.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "List tenant movement evidence in descending observation order.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n4 parameters: 0 required and 4 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 4 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.movement.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.asset.movement.v1\nCanonical operationId: listAssetMovements\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/movements?tenant_id={{list_asset_movements_tenant_id}}&from={{list_asset_movements_from}}&to={{list_asset_movements_to}}&limit={{list_asset_movements_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Movement/operation/listAssetMovements",
                "method": "GET",
                "operationId": "listAssetMovements",
                "path": "/v1/movements"
              }
            }
          ],
          "name": "Movement"
        },
        {
          "description": "Generated from operations tagged Operational Ledger Sandbox in canonical OpenAPI.",
          "item": [
            {
              "name": "Commit one balanced operational posting in the PostgreSQL sandbox ledger.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"deal_ref\": \"deal_example\",\n  \"entries\": [\n    {\n      \"account_ref\": \"account_example\",\n      \"bucket\": \"AVAILABLE\",\n      \"instrument\": {\n        \"asset_code\": \"BTC\",\n        \"network\": \"bitcoin\",\n        \"scale\": 0\n      },\n      \"direction\": \"DEBIT\",\n      \"atomic_units\": \"1\"\n    },\n    {\n      \"account_ref\": \"account_example\",\n      \"bucket\": \"AVAILABLE\",\n      \"instrument\": {\n        \"asset_code\": \"BTC\",\n        \"network\": \"bitcoin\",\n        \"scale\": 0\n      },\n      \"direction\": \"DEBIT\",\n      \"atomic_units\": \"1\"\n    }\n  ]\n}"
                },
                "description": "Appends an immutable exact-unit posting to the existing operational ledger and updates its rebuildable projections atomically. This is a sandbox subledger command, not a bank, statutory, custody, payment, or asset-movement event. No external system is contacted.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 1 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 2 optional fields. Parameters add 1 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createSandboxLedgerPosting\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_sandbox_ledger_posting_idempotency_key}}"
                  },
                  {
                    "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
                    "disabled": true,
                    "key": "X-Correlation-ID",
                    "type": "text",
                    "value": "{{create_sandbox_ledger_posting_x_correlation_id}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/sandbox/ledger/postings"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operational%20Ledger%20Sandbox/operation/createSandboxLedgerPosting",
                "method": "POST",
                "operationId": "createSandboxLedgerPosting",
                "path": "/v1/sandbox/ledger/postings"
              }
            },
            {
              "name": "Reserve an exact operational hold against AVAILABLE units.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"deal_ref\": \"deal_example\",\n  \"account_ref\": \"account_example\",\n  \"instrument\": {\n    \"asset_code\": \"BTC\",\n    \"network\": \"bitcoin\",\n    \"scale\": 0\n  },\n  \"atomic_units\": \"1\",\n  \"ttl_seconds\": 1\n}"
                },
                "description": "Moves an exact local projection from AVAILABLE to HELD in the existing PostgreSQL operational ledger. The hold is bounded by ttl_seconds and never freezes or reserves bank money, custody assets, or provider funds.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 1 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 2 optional fields. Parameters add 1 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createSandboxLedgerHold\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_sandbox_ledger_hold_idempotency_key}}"
                  },
                  {
                    "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
                    "disabled": true,
                    "key": "X-Correlation-ID",
                    "type": "text",
                    "value": "{{create_sandbox_ledger_hold_x_correlation_id}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/sandbox/ledger/holds"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operational%20Ledger%20Sandbox/operation/createSandboxLedgerHold",
                "method": "POST",
                "operationId": "createSandboxLedgerHold",
                "path": "/v1/sandbox/ledger/holds"
              }
            },
            {
              "name": "Finalize one RESERVED operational hold into SETTLEMENT evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"deal_ref\": \"deal_example\",\n  \"settlement_account_ref\": \"settlement_account_example\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Appends the terminal HOLD_FINALIZED journal and updates the same hold projection atomically. It records local accounting evidence only and does not settle, transfer, release, or move real money or assets.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 2 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 1 optional fields. Parameters add 2 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: finalizeSandboxLedgerHold\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{finalize_sandbox_ledger_hold_idempotency_key}}"
                  },
                  {
                    "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
                    "disabled": true,
                    "key": "X-Correlation-ID",
                    "type": "text",
                    "value": "{{finalize_sandbox_ledger_hold_x_correlation_id}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/sandbox/ledger/holds/{{finalize_sandbox_ledger_hold_hold_id}}/finalize"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operational%20Ledger%20Sandbox/operation/finalizeSandboxLedgerHold",
                "method": "POST",
                "operationId": "finalizeSandboxLedgerHold",
                "path": "/v1/sandbox/ledger/holds/{hold_id}/finalize"
              }
            },
            {
              "name": "Read one immutable tenant-scoped operational journal.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Reads the authoritative PostgreSQL journal from the authenticated tenant. It is Local environment evidence and not proof of an external monetary effect.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 1 required and 2 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 2 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getSandboxLedgerJournal\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
                    "disabled": true,
                    "key": "X-Correlation-ID",
                    "type": "text",
                    "value": "{{get_sandbox_ledger_journal_x_correlation_id}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/sandbox/ledger/journals/{{get_sandbox_ledger_journal_journal_id}}?tenant_id={{get_sandbox_ledger_journal_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operational%20Ledger%20Sandbox/operation/getSandboxLedgerJournal",
                "method": "GET",
                "operationId": "getSandboxLedgerJournal",
                "path": "/v1/sandbox/ledger/journals/{journal_id}"
              }
            },
            {
              "name": "Append an exact compensating reversal for one ordinary posting.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"deal_ref\": \"deal_example\",\n  \"reason\": \"example\"\n}"
                },
                "description": "Creates a new immutable REVERSAL journal whose entries exactly invert one POSTING. The original journal remains unchanged. Hold lifecycle journals cannot be reversed through this command; they use their own terminal transitions. No external or monetary action is performed.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 2 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 1 optional fields. Parameters add 2 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: reverseSandboxLedgerPosting\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{reverse_sandbox_ledger_posting_idempotency_key}}"
                  },
                  {
                    "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
                    "disabled": true,
                    "key": "X-Correlation-ID",
                    "type": "text",
                    "value": "{{reverse_sandbox_ledger_posting_x_correlation_id}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/sandbox/ledger/journals/{{reverse_sandbox_ledger_posting_journal_id}}/reversals"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operational%20Ledger%20Sandbox/operation/reverseSandboxLedgerPosting",
                "method": "POST",
                "operationId": "reverseSandboxLedgerPosting",
                "path": "/v1/sandbox/ledger/journals/{journal_id}/reversals"
              }
            }
          ],
          "name": "Operational Ledger Sandbox"
        },
        {
          "description": "Generated from operations tagged Operations in canonical OpenAPI.",
          "item": [
            {
              "name": "Report whether the API process is serving requests.",
              "request": {
                "auth": {
                  "type": "noauth"
                },
                "description": "Report whether the API process is serving requests.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication is not required by this operation.\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nThe operation declares no HTTP error response; the reference does not invent one.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getHealth\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/healthz"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operations/operation/getHealth",
                "method": "GET",
                "operationId": "getHealth",
                "path": "/healthz"
              }
            },
            {
              "name": "Report whether the authoritative decision store is reachable.",
              "request": {
                "auth": {
                  "type": "noauth"
                },
                "description": "Report whether the authoritative decision store is reachable.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication is not required by this operation.\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\nThe OpenAPI operation declares no operation-specific rate-limit response. No quota, capacity, or production SLA should be inferred.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getReadiness\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/readyz"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Operations/operation/getReadiness",
                "method": "GET",
                "operationId": "getReadiness",
                "path": "/readyz"
              }
            }
          ],
          "name": "Operations"
        },
        {
          "description": "Generated from operations tagged Platform in canonical OpenAPI.",
          "item": [
            {
              "name": "Get a tenant-scoped operational snapshot and truthful capability matrix.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Get a tenant-scoped operational snapshot and truthful capability matrix.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getPlatformOverview\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/platform/overview?tenant_id={{get_platform_overview_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Platform/operation/getPlatformOverview",
                "method": "GET",
                "operationId": "getPlatformOverview",
                "path": "/v1/platform/overview"
              }
            }
          ],
          "name": "Platform"
        },
        {
          "description": "Generated from operations tagged Policy Studio in canonical OpenAPI.",
          "item": [
            {
              "name": "Create a governed sandbox policy revision in DRAFT.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"policy\": {\n    \"id\": \"example\",\n    \"version\": \"example\",\n    \"tenant_id\": \"tenant_example\",\n    \"jurisdiction\": \"RU\",\n    \"status\": \"DRAFT\",\n    \"mode\": \"SANDBOX\",\n    \"effective_from\": \"2026-01-01T00:00:00Z\",\n    \"retail\": {},\n    \"assets\": {\n      \"additionalProperty1\": \"example\"\n    },\n    \"sources\": [\n      {}\n    ]\n  },\n  \"change_ticket\": \"example\",\n  \"rationale\": \"example\"\n}"
                },
                "description": "Tenant comes from the server-bound bearer. X-CertaRail-Sandbox-Actor is a caller assertion, not production IAM. The revision is not installed in the eligibility runtime and is never production-enforceable. Idempotency-Key is tenant-scoped and durably bound to the exact canonical command: an exact replay returns the committed revision, while reuse with different command evidence returns 409.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 4 required and 1 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createPolicyStudioRevision\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{create_policy_studio_revision_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_policy_studio_revision_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/policy-studio/revisions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Policy%20Studio/operation/createPolicyStudioRevision",
                "method": "POST",
                "operationId": "createPolicyStudioRevision",
                "path": "/v1/policy-studio/revisions"
              }
            },
            {
              "name": "Move a DRAFT revision to PENDING_APPROVAL.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"ticket\": \"example\"\n}"
                },
                "description": "Uses a caller-asserted sandbox actor and digest precondition; no runtime policy is changed. Idempotency-Key is tenant-scoped and durably bound to the exact canonical transition: exact replay returns committed evidence, while changed command evidence returns 409.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: submitPolicyStudioRevision\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{submit_policy_studio_revision_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{submit_policy_studio_revision_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/policy-studio/revisions/{{submit_policy_studio_revision_revision_id}}/submit"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Policy%20Studio/operation/submitPolicyStudioRevision",
                "method": "POST",
                "operationId": "submitPolicyStudioRevision",
                "path": "/v1/policy-studio/revisions/{revision_id}/submit"
              }
            },
            {
              "name": "Approve a pending sandbox revision with maker/checker separation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"ticket\": \"example\"\n}"
                },
                "description": "Caller-asserted actor evidence is sandbox-only; approval does not install or production-enable the policy. Idempotency-Key is tenant-scoped and durably binds the exact canonical transition; changed evidence returns 409 and exact replay returns the committed approval.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: approvePolicyStudioRevision\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{approve_policy_studio_revision_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{approve_policy_studio_revision_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/policy-studio/revisions/{{approve_policy_studio_revision_revision_id}}/approve"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Policy%20Studio/operation/approvePolicyStudioRevision",
                "method": "POST",
                "operationId": "approvePolicyStudioRevision",
                "path": "/v1/policy-studio/revisions/{revision_id}/approve"
              }
            },
            {
              "name": "Mark an approved revision EFFECTIVE_SANDBOX for replay and export.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"ticket\": \"example\"\n}"
                },
                "description": "This lifecycle marker is not hot reload. runtime_activation remains RESTART_REQUIRED and production_enforceable remains false. Idempotency-Key is tenant-scoped and durably binds the exact canonical transition; exact replay returns committed evidence and changed evidence returns 409.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: activateSandboxPolicyStudioRevision\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{activate_sandbox_policy_studio_revision_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{activate_sandbox_policy_studio_revision_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/policy-studio/revisions/{{activate_sandbox_policy_studio_revision_revision_id}}/activate-sandbox"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Policy%20Studio/operation/activateSandboxPolicyStudioRevision",
                "method": "POST",
                "operationId": "activateSandboxPolicyStudioRevision",
                "path": "/v1/policy-studio/revisions/{revision_id}/activate-sandbox"
              }
            },
            {
              "name": "Retire a governed sandbox revision.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"ticket\": \"example\"\n}"
                },
                "description": "Records a local lifecycle event; it does not alter a running production policy. Idempotency-Key is tenant-scoped and durably binds the exact canonical transition; exact replay returns committed evidence and changed evidence returns 409.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: retirePolicyStudioRevision\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{retire_policy_studio_revision_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{retire_policy_studio_revision_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/policy-studio/revisions/{{retire_policy_studio_revision_revision_id}}/retire"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Policy%20Studio/operation/retirePolicyStudioRevision",
                "method": "POST",
                "operationId": "retirePolicyStudioRevision",
                "path": "/v1/policy-studio/revisions/{revision_id}/retire"
              }
            },
            {
              "name": "Replay historical samples against a revision or candidate policy.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"revision_id\": \"prev_00000000000000000000000000000000\"\n}"
                },
                "description": "Deterministic sandbox analysis for the server-bound tenant. It performs zero external calls, changes no effective runtime, and produces no production authorization.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 4 optional fields. Parameters add 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: evaluatePolicyStudioImpact\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/policy-studio/impact-evaluations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Policy%20Studio/operation/evaluatePolicyStudioImpact",
                "method": "POST",
                "operationId": "evaluatePolicyStudioImpact",
                "path": "/v1/policy-studio/impact-evaluations"
              }
            }
          ],
          "name": "Policy Studio"
        },
        {
          "description": "Generated from operations tagged Provider Conformance in canonical OpenAPI.",
          "item": [
            {
              "name": "Evaluate a caller-supplied adapter manifest against an offline contract fixture.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"provider_label\": \"example\",\n  \"profile\": \"VENUE_ORDER_V1\",\n  \"manifest\": {\n    \"capabilities\": [\n      \"example\"\n    ]\n  }\n}"
                },
                "description": "The server-bound bearer supplies the authoritative tenant. This is a deterministic local set-containment check: external_calls is 0, provider_contacted and provider_certified are false, and a pass is not production approval or evidence about a live provider.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 4 required and 0 optional fields. Parameters add 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: evaluateProviderConformance\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/integration-lab/conformance-evaluations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Provider%20Conformance/operation/evaluateProviderConformance",
                "method": "POST",
                "operationId": "evaluateProviderConformance",
                "path": "/v1/integration-lab/conformance-evaluations"
              }
            }
          ],
          "name": "Provider Conformance"
        },
        {
          "description": "Generated from operations tagged Public Submissions in canonical OpenAPI.",
          "item": [
            {
              "name": "Atomically store one public-form submission and its dispatch outbox.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"kind\": \"CONTACT_REQUEST\",\n  \"initial_payload\": {}\n}"
                },
                "description": "Shared server-to-server intake for contact requests, non-binding RFQ intents, technical requests, and security/compliance inquiries. The authenticated tenant and actor are derived from the bearer credential. The immutable initial payload, reference, correlation ID, PENDING delivery projection, dispatch outbox, SUBMISSION_RECEIVED event, and DELIVERY_ENQUEUED event commit in one PostgreSQL transaction. The raw Idempotency-Key is not stored; only its SHA-256 digest is durable. A background worker leases due outbox entries and idempotently inserts them into the tenant-scoped PostgreSQL working queue.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable server-generated command key. Identical replay returns the original submission; different content returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createPublicSubmission\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable server-generated command key. Identical replay returns the original submission; different content returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_public_submission_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/submissions"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Public%20Submissions/operation/createPublicSubmission",
                "method": "POST",
                "operationId": "createPublicSubmission",
                "path": "/v1/submissions"
              }
            },
            {
              "name": "Read one tenant-scoped submission, audit history, and delivery journal.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Read one tenant-scoped submission, audit history, and delivery journal.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getPublicSubmission\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/submissions/{{get_public_submission_reference_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Public%20Submissions/operation/getPublicSubmission",
                "method": "GET",
                "operationId": "getPublicSubmission",
                "path": "/v1/submissions/{reference_id}"
              }
            },
            {
              "name": "Start one audited delivery cycle for a dead-letter submission.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"reason_code\": \"TRANSPORT_RECOVERED\"\n}"
                },
                "description": "Requires submission:operator, developer:admin, or corporate:admin on the authenticated credential. The command can move only DEAD_LETTER or legacy QUARANTINED back to PENDING. It resets the per-cycle attempt counter, increments replay_number, and appends immutable audit and replay evidence in the same PostgreSQL transaction. It does not edit the initial payload and does not prove CRM or human delivery.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable operator command key; reuse after an uncertain response.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: replayPublicSubmissionDelivery\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable operator command key; reuse after an uncertain response.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{replay_public_submission_delivery_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/submissions/{{replay_public_submission_delivery_reference_id}}/delivery-replay"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Public%20Submissions/operation/replayPublicSubmissionDelivery",
                "method": "POST",
                "operationId": "replayPublicSubmissionDelivery",
                "path": "/v1/submissions/{reference_id}/delivery-replay"
              }
            },
            {
              "name": "Read the payload-free backlog, alerts, and dead-letter operations.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns no initial payload or contact fields. The tenant-scoped snapshot contains opaque reference/correlation IDs, bounded state and error codes, attempt/replay counters, automatic retry timing, alert summaries, and whether the authenticated identity may invoke manual replay.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listPublicSubmissionDeliveryOperations\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/submission-delivery-operations?limit={{list_public_submission_delivery_operations_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Public%20Submissions/operation/listPublicSubmissionDeliveryOperations",
                "method": "GET",
                "operationId": "listPublicSubmissionDeliveryOperations",
                "path": "/v1/submission-delivery-operations"
              }
            },
            {
              "name": "List open submissions accepted by the tenant working-queue adapter.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns the tenant-scoped PostgreSQL working queue populated by the idempotent delivery adapter. Each item keeps the immutable accepted payload and the same reference, outbox, delivery, and correlation IDs. Presence here proves internal queue delivery only; it does not prove CRM synchronization, mailbox delivery, or human handling.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 0 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 0 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listPublicSubmissionWorkQueue\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/submission-work-queue?limit={{list_public_submission_work_queue_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Public%20Submissions/operation/listPublicSubmissionWorkQueue",
                "method": "GET",
                "operationId": "listPublicSubmissionWorkQueue",
                "path": "/v1/submission-work-queue"
              }
            }
          ],
          "name": "Public Submissions"
        },
        {
          "description": "Generated from operations tagged Reporting in canonical OpenAPI.",
          "item": [
            {
              "name": "Compatibility alias for the idempotent non-submittable reporting draft command.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"period_from\": \"2026-01-01T00:00:00Z\",\n  \"period_to\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Compatibility route with the same durable command semantics as /v1/reports/cbr-drafts. Idempotency-Key is mandatory and tenant-scoped; exact replay returns the first committed PostgreSQL draft and a changed canonical tenant/period request returns 409 without creating another draft. The returned CBR_CRYPTO_MOVEMENT_DRAFT_V0 is an unmapped local evidence draft, not an official Bank of Russia form. schema.status is NOT_CONFIGURED, schema.official is false and submission.allowed is always false. No outbound regulator transport is implemented or invoked.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Unique caller command key. It must appear exactly once; PostgreSQL stores only its SHA-256 digest and the canonical request digest.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: buildCBRCryptoMovementDraft\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Unique caller command key. It must appear exactly once; PostgreSQL stores only its SHA-256 digest and the canonical request digest.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{build_cbrcrypto_movement_draft_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/regulatory-reports/cbr/crypto-movements/drafts"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Reporting/operation/buildCBRCryptoMovementDraft",
                "method": "POST",
                "operationId": "buildCBRCryptoMovementDraft",
                "path": "/v1/regulatory-reports/cbr/crypto-movements/drafts"
              }
            },
            {
              "name": "Materialize an idempotent non-submittable reporting draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"period_from\": \"2026-01-01T00:00:00Z\",\n  \"period_to\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Direct Developer Console mutation. The authenticated credential is the tenant authority; tenant_id, period_from and period_to form the canonical request. Idempotency-Key is mandatory and tenant-scoped. An exact replay resolves the append-only PostgreSQL command receipt before rereading mutable movement evidence and returns the exact first committed draft with Idempotency-Replayed true. Reusing a key for a different canonical request returns 409 and creates no draft. The raw key is never persisted. generated_at is assigned by PostgreSQL. This is an unmapped local evidence draft, not an official Bank of Russia form; submission.allowed remains false and no regulator transport is invoked.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Unique caller command key. It must appear exactly once; PostgreSQL stores only its SHA-256 digest and the canonical request digest.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: buildIdempotentCBRCryptoMovementDraft\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Unique caller command key. It must appear exactly once; PostgreSQL stores only its SHA-256 digest and the canonical request digest.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{build_idempotent_cbrcrypto_movement_draft_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/reports/cbr-drafts"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Reporting/operation/buildIdempotentCBRCryptoMovementDraft",
                "method": "POST",
                "operationId": "buildIdempotentCBRCryptoMovementDraft",
                "path": "/v1/reports/cbr-drafts"
              }
            }
          ],
          "name": "Reporting"
        },
        {
          "description": "Generated from operations tagged Review Cases in canonical OpenAPI.",
          "item": [
            {
              "name": "Open a durable tenant-scoped REVIEW case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"source_decision_id\": \"source_decision_example\",\n  \"reason_codes\": [\n    \"AA\"\n  ],\n  \"priority\": \"LOW\",\n  \"sla_seconds\": 60\n}"
                },
                "description": "The server-bound tenant, caller-asserted actor, and idempotency evidence are recorded locally. Any safeguard is a design recommendation only; execution_status is always NOT_EXECUTED and no funds are frozen.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 4 required and 2 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createReviewCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{create_review_case_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_review_case_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/review-cases"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Review%20Cases/operation/createReviewCase",
                "method": "POST",
                "operationId": "createReviewCase",
                "path": "/v1/review-cases"
              }
            },
            {
              "name": "Read one review-case projection for the authenticated tenant.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Safeguard execution remains NOT_EXECUTED; this endpoint never freezes or releases funds.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getReviewCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/review-cases/{{get_review_case_case_id}}?tenant_id={{get_review_case_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Review%20Cases/operation/getReviewCase",
                "method": "GET",
                "operationId": "getReviewCase",
                "path": "/v1/review-cases/{case_id}"
              }
            },
            {
              "name": "List append-only evidence events for one review case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Tenant is derived from the bearer; events contain local review evidence, not execution receipts.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listReviewCaseEvents\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/review-cases/{{list_review_case_events_case_id}}/events?tenant_id={{list_review_case_events_tenant_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Review%20Cases/operation/listReviewCaseEvents",
                "method": "GET",
                "operationId": "listReviewCaseEvents",
                "path": "/v1/review-cases/{case_id}/events"
              }
            },
            {
              "name": "Assign an OPEN review case with an optimistic version precondition.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_version\": 1,\n  \"assignee_id\": \"assignee_example\"\n}"
                },
                "description": "Local workflow transition only; caller actor assurance is caller-asserted-sandbox.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: assignReviewCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{assign_review_case_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{assign_review_case_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/review-cases/{{assign_review_case_case_id}}/assign"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Review%20Cases/operation/assignReviewCase",
                "method": "POST",
                "operationId": "assignReviewCase",
                "path": "/v1/review-cases/{case_id}/assign"
              }
            },
            {
              "name": "Resolve an ASSIGNED review case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_version\": 1,\n  \"disposition\": \"example\",\n  \"evidence_refs\": [\n    \"example\"\n  ],\n  \"safeguard_design\": \"NONE\"\n}"
                },
                "description": "Any FREEZE_DESIGN or RELEASE_DESIGN is evidence only and remains NOT_EXECUTED.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: resolveReviewCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{resolve_review_case_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{resolve_review_case_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/review-cases/{{resolve_review_case_case_id}}/resolve"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Review%20Cases/operation/resolveReviewCase",
                "method": "POST",
                "operationId": "resolveReviewCase",
                "path": "/v1/review-cases/{case_id}/resolve"
              }
            },
            {
              "name": "Escalate an ASSIGNED review case.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"expected_version\": 1,\n  \"disposition\": \"example\",\n  \"evidence_refs\": [\n    \"example\"\n  ],\n  \"safeguard_design\": \"NONE\"\n}"
                },
                "description": "Records local review evidence only; no safeguard or external escalation is executed.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: escalateReviewCase\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{escalate_review_case_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{escalate_review_case_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/review-cases/{{escalate_review_case_case_id}}/escalate"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Review%20Cases/operation/escalateReviewCase",
                "method": "POST",
                "operationId": "escalateReviewCase",
                "path": "/v1/review-cases/{case_id}/escalate"
              }
            }
          ],
          "name": "Review Cases"
        },
        {
          "description": "Generated from operations tagged Secure Documents in canonical OpenAPI.",
          "item": [
            {
              "name": "Create a tenant-bound short-lived upload session.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"filename\": \"example\",\n  \"content_type\": \"application/pdf\",\n  \"size_bytes\": 1\n}"
                },
                "description": "OWNER or EDITOR creates one upload session for the tenant, organization, account, and credential expiry derived by the server from the verified bearer. The response contains an opaque encrypted and authenticated grant as a required header value for one exact upload-session resource; credentials never appear in URLs. Tenant, organization, account, object key, and bearer material are never accepted in the body or returned. The object is private, immutable, and application-encrypted with AES-256-GCM. Optional replaces_document_id creates a candidate next version; only CLEAN confirmation atomically supersedes the prior version. PENDING is explicit: session creation does not claim that bytes were uploaded, validated, scanned, legally reviewed, or approved for onboarding.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\nThis operation declares no path, query, header, or cookie parameters.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 1 optional fields. Parameters add 0 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateDocumentUploadSession\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/document-uploads"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/createCorporateDocumentUploadSession",
                "method": "POST",
                "operationId": "createCorporateDocumentUploadSession",
                "path": "/v2/corporate/onboarding-workspace/document-uploads"
              }
            },
            {
              "name": "Store the exact bytes authorized by a short-lived upload grant.",
              "request": {
                "auth": {
                  "type": "noauth"
                },
                "body": {
                  "file": {
                    "src": ""
                  },
                  "mode": "file"
                },
                "description": "This endpoint deliberately has no bearer authentication. It accepts only one opaque encrypted and authenticated X-CertaRail-Document-Grant header bound to the exact tenant, organization, upload_session_id, UPLOAD purpose, and expiry. Content-Type and fixed Content-Length must exactly match the server-side session. The object is AES-256-GCM encrypted and written once under an opaque key outside every public directory; an identical retry is safe and different bytes conflict. The 202 receipt records observed size and SHA-256 and moves the object to QUARANTINED; it is not available for confirmation or download until a CLEAN scan.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication is not required by this operation.\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: putCorporateDocumentUploadContent\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/pdf"
                  },
                  {
                    "description": "Single-resource, single-purpose opaque grant. Query credentials and permanent public URLs are rejected.",
                    "disabled": false,
                    "key": "X-CertaRail-Document-Grant",
                    "type": "text",
                    "value": "{{put_corporate_document_upload_content_x_certa_rail_document_grant}}"
                  },
                  {
                    "description": "Fixed positive byte count; chunked transfer is rejected.",
                    "disabled": false,
                    "key": "Content-Length",
                    "type": "text",
                    "value": "{{put_corporate_document_upload_content_content_length}}"
                  }
                ],
                "method": "PUT",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/document-uploads/{{put_corporate_document_upload_content_upload_session_id}}/content"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/putCorporateDocumentUploadContent",
                "method": "PUT",
                "operationId": "putCorporateDocumentUploadContent",
                "path": "/v2/corporate/onboarding-workspace/document-uploads/{upload_session_id}/content"
              }
            },
            {
              "name": "Validate and malware-scan one quarantined upload.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "OWNER or EDITOR requests validation for one upload session in the tenant and organization derived from the verified bearer. The server re-reads the immutable private object, verifies stored size and SHA-256, detects PDF, PNG, or JPEG from strict magic bytes, compares the detected format with the declared MIME, and streams the exact bytes to the configured ClamAV clamd scanner. A CLEAN verdict moves the file to ACCEPTED. A deterministic validation failure or malware finding moves it to REJECTED with a bounded rejected_file_reason; the scanner threat name remains server-only. Scanner timeout or infrastructure error leaves the object QUARANTINED and retriable. CLEAN is malware-scan evidence for those exact bytes only, never legal, compliance, or onboarding approval.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: scanCorporateDocumentUpload\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/document-uploads/{{scan_corporate_document_upload_upload_session_id}}/scan"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/scanCorporateDocumentUpload",
                "method": "POST",
                "operationId": "scanCorporateDocumentUpload",
                "path": "/v2/corporate/onboarding-workspace/document-uploads/{upload_session_id}/scan"
              }
            },
            {
              "name": "Confirm that private bytes still match recorded server metadata.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "OWNER or EDITOR confirms only the upload session in the tenant and organization resolved from the verified bearer. The server re-reads the private object and requires its observed size and SHA-256 to equal the CLEAN validation receipt before moving ACCEPTED to CONFIRMED. CONFIRMED binds that exact private object to its CLEAN scan evidence; it is never legal, compliance, or onboarding approval.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: confirmCorporateDocumentUpload\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/document-uploads/{{confirm_corporate_document_upload_upload_session_id}}/confirm"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/confirmCorporateDocumentUpload",
                "method": "POST",
                "operationId": "confirmCorporateDocumentUpload",
                "path": "/v2/corporate/onboarding-workspace/document-uploads/{upload_session_id}/confirm"
              }
            },
            {
              "name": "Read lifecycle metadata for one confirmed document.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "OWNER, EDITOR, or REVIEWER reads tenant- and organization-bound metadata. The effective state exposes CONFIRMED, SUPERSEDED, EXPIRED, or DELETED; object keys and raw deletion errors remain server-only. This endpoint never returns document bytes or a reusable public URL.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateDocumentMetadata\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/documents/{{get_corporate_document_metadata_document_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/getCorporateDocumentMetadata",
                "method": "GET",
                "operationId": "getCorporateDocumentMetadata",
                "path": "/v2/corporate/onboarding-workspace/documents/{document_id}"
              }
            },
            {
              "name": "Apply or release a legal hold with append-only evidence.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"action\": \"APPLY\",\n  \"reason\": \"example\"\n}"
                },
                "description": "OWNER or REVIEWER may apply or release a hold for one confirmed CLEAN document. Applying a hold cancels pending deletion; release re-schedules an expired document through the durable deletion hook. This technical control does not determine whether a legal hold is required.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 410, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: setCorporateDocumentLegalHold\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/documents/{{set_corporate_document_legal_hold_document_id}}/legal-hold"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/setCorporateDocumentLegalHold",
                "method": "POST",
                "operationId": "setCorporateDocumentLegalHold",
                "path": "/v2/corporate/onboarding-workspace/documents/{document_id}/legal-hold"
              }
            },
            {
              "name": "Create a tenant-bound short-lived download session.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "OWNER, EDITOR, or REVIEWER may request a download only for a CONFIRMED document with a CLEAN scan in the tenant and organization derived from the verified bearer. The returned opaque grant is encrypted and authenticated for the exact tenant, organization, principal, one-time download session, document_id, DOWNLOAD purpose, and expiry. Issuance, claim, completion/failure and byte count form the durable download audit. Expired or deleted documents are unavailable; held and superseded versions require OWNER or REVIEWER.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 410, 422, 423, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createCorporateDocumentDownloadSession\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/documents/{{create_corporate_document_download_session_document_id}}/download-session"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/createCorporateDocumentDownloadSession",
                "method": "POST",
                "operationId": "createCorporateDocumentDownloadSession",
                "path": "/v2/corporate/onboarding-workspace/documents/{document_id}/download-session"
              }
            },
            {
              "name": "Download one confirmed private object through its short-lived grant.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "This endpoint requires both the authenticated onboarding identity and one X-CertaRail-Document-Grant header bound to the exact tenant, organization, principal, one-time session, document_id, DOWNLOAD purpose, and expiry. No grant is accepted in the URL. The response is attachment-only, nosniff, and private no-store. The service rechecks the CONFIRMED and CLEAN state before opening the object. A CLEAN scan does not mean legal, compliance, or onboarding approval.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 410, 423, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCorporateDocumentContent\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Exact-resource, principal-bound, one-time short-lived opaque download grant.",
                    "disabled": false,
                    "key": "X-CertaRail-Document-Grant",
                    "type": "text",
                    "value": "{{get_corporate_document_content_x_certa_rail_document_grant}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v2/corporate/onboarding-workspace/documents/{{get_corporate_document_content_document_id}}/content"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Secure%20Documents/operation/getCorporateDocumentContent",
                "method": "GET",
                "operationId": "getCorporateDocumentContent",
                "path": "/v2/corporate/onboarding-workspace/documents/{document_id}/content"
              }
            }
          ],
          "name": "Secure Documents"
        },
        {
          "description": "Generated from operations tagged Self-service Sandbox in canonical OpenAPI.",
          "item": [
            {
              "name": "Atomically create one synthetic hosted-sandbox identity contour.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"environment\": \"HOSTED_SANDBOX\"\n}"
                },
                "description": "Server-to-server endpoint for the public website onboarding relay. The authenticated identity must have the exact sandbox:onboarding:create role. One PostgreSQL transaction commits the issuer command, synthetic tenant, active sandbox account, fixed sandbox:limited role, onboarding state ACCOUNT_CREATED, first append-only audit event, digest-only management grant, and a 30-minute API credential with fixed scopes and a 100-request budget. The raw Idempotency-Key and plaintext secrets are not stored. The API credential and management grant are returned only on the first 201 response; an exact replay returns the durable projection without either plaintext value. Every created tenant and credential has production_access=false.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable browser-generated command key forwarded by the website service. Exact replay returns the original sandbox; reuse inside the same issuer tenant with different request identity or content returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createSelfServiceSandbox\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable browser-generated command key forwarded by the website service. Exact replay returns the original sandbox; reuse inside the same issuer tenant with different request identity or content returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_self_service_sandbox_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/self-service/sandbox-enrollments"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Self-service%20Sandbox/operation/createSelfServiceSandbox",
                "method": "POST",
                "operationId": "createSelfServiceSandbox",
                "path": "/v1/self-service/sandbox-enrollments"
              }
            },
            {
              "name": "Read the authoritative current sandbox credential projection.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Requires the server-side sandbox:onboarding:create bearer and the separate X-CertaRail-Sandbox-Management-Grant. Returns lifecycle state, expiry, fixed scopes, and usage counters, but never returns the plaintext API credential. Unknown and expired management grants share one 401 response. Hosted-sandbox credentials themselves cannot call this route.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getCurrentSelfServiceSandboxCredential\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Management-Grant",
                    "type": "text",
                    "value": "{{get_current_self_service_sandbox_credential_x_certa_rail_sandbox_management_grant}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/self-service/sandbox-credentials/current"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Self-service%20Sandbox/operation/getCurrentSelfServiceSandboxCredential",
                "method": "GET",
                "operationId": "getCurrentSelfServiceSandboxCredential",
                "path": "/v1/self-service/sandbox-credentials/current"
              }
            },
            {
              "name": "Atomically rotate the current sandbox credential.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "Marks the current credential ROTATED and issues generation N+1 in one append-only PostgreSQL transaction. The new 30-minute token is returned once on 201. Exact idempotent replay returns the same durable credential projection with display=UNAVAILABLE and no access_token.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact management-command identity. Exact replay never reveals a credential value again; different action or identity returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: rotateSelfServiceSandboxCredential\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Management-Grant",
                    "type": "text",
                    "value": "{{rotate_self_service_sandbox_credential_x_certa_rail_sandbox_management_grant}}"
                  },
                  {
                    "description": "Exact management-command identity. Exact replay never reveals a credential value again; different action or identity returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{rotate_self_service_sandbox_credential_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/self-service/sandbox-credentials/rotate"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Self-service%20Sandbox/operation/rotateSelfServiceSandboxCredential",
                "method": "POST",
                "operationId": "rotateSelfServiceSandboxCredential",
                "path": "/v1/self-service/sandbox-credentials/rotate"
              }
            },
            {
              "name": "Atomically revoke the current sandbox credential.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{}"
                },
                "description": "Appends a terminal REVOKED event. Subsequent API authentication fails closed. Revocation never returns or issues credential material and a revoked enrollment cannot be rotated; create a new sandbox if access is needed again.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 0 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact management-command identity. Exact replay never reveals a credential value again; different action or identity returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane request budget is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: revokeSelfServiceSandboxCredential\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Management-Grant",
                    "type": "text",
                    "value": "{{revoke_self_service_sandbox_credential_x_certa_rail_sandbox_management_grant}}"
                  },
                  {
                    "description": "Exact management-command identity. Exact replay never reveals a credential value again; different action or identity returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{revoke_self_service_sandbox_credential_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/self-service/sandbox-credentials/revoke"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Self-service%20Sandbox/operation/revokeSelfServiceSandboxCredential",
                "method": "POST",
                "operationId": "revokeSelfServiceSandboxCredential",
                "path": "/v1/self-service/sandbox-credentials/revoke"
              }
            },
            {
              "name": "Read the authoritative fixture catalog, active scenario, quota, and reset history.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Requires the website service bearer with sandbox:onboarding:create and the separate management grant. Returns the closed deterministic ALLOW, REVIEW, and DENY catalog, the concrete active request, remaining reset quota, append-only reset history, and FIRST_API_SUCCESS progress when the exact active request has produced a committed decision. It returns no credential or management-grant plaintext.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getSelfServiceSandboxFixtures\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Management-Grant",
                    "type": "text",
                    "value": "{{get_self_service_sandbox_fixtures_x_certa_rail_sandbox_management_grant}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/self-service/sandbox-fixtures"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Self-service%20Sandbox/operation/getSelfServiceSandboxFixtures",
                "method": "GET",
                "operationId": "getSelfServiceSandboxFixtures",
                "path": "/v1/self-service/sandbox-fixtures"
              }
            },
            {
              "name": "Append one safe deterministic fixture generation.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"scenario_id\": \"decision-review\"\n}"
                },
                "description": "Requires the website service bearer with sandbox:onboarding:create and the separate management grant. Selects one documented scenario and atomically appends generation N+1, its concrete request, and a reset-history event. The operation never deletes earlier fixture generations, decisions, audit events, or outbox evidence; cleanup_mode remains LOGICAL_GENERATION, deleted_records=0, external_calls=0, and production_access=false. A synthetic tenant may use at most ten resets. Exact idempotent replay returns the stored command response; changed content under the same key returns 409.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 1 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200, 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact fixture-reset command identity. The same key and scenario returns the stored response; reuse with another scenario returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane budget or the fixed ten-reset tenant quota is exhausted. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: resetSelfServiceSandboxFixtures\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Management-Grant",
                    "type": "text",
                    "value": "{{reset_self_service_sandbox_fixtures_x_certa_rail_sandbox_management_grant}}"
                  },
                  {
                    "description": "Exact fixture-reset command identity. The same key and scenario returns the stored response; reuse with another scenario returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{reset_self_service_sandbox_fixtures_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/self-service/sandbox-fixtures/reset"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Self-service%20Sandbox/operation/resetSelfServiceSandboxFixtures",
                "method": "POST",
                "operationId": "resetSelfServiceSandboxFixtures",
                "path": "/v1/self-service/sandbox-fixtures/reset"
              }
            }
          ],
          "name": "Self-service Sandbox"
        },
        {
          "description": "Generated from operations tagged Trading Sandbox in canonical OpenAPI.",
          "item": [
            {
              "name": "Create one durable, non-monetary sandbox order.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"trade-create-001\",\n  \"tenant_id\": \"sandbox-bank\",\n  \"decision_id\": \"dec_0123456789abcdef0123456789abcdef\",\n  \"subject_ref\": \"cust_7fd2\",\n  \"portfolio_ref\": \"portfolio-opaque\",\n  \"approval_ref\": \"sandbox-approval-correlation\",\n  \"connection_id\": \"synthetic-route\",\n  \"account_ref\": \"synthetic-account\",\n  \"client_order_id\": \"bank-order-001\",\n  \"instrument\": {\n    \"base_asset\": \"DEMO-BTC\",\n    \"quote_currency\": \"RUB\"\n  },\n  \"side\": \"BUY\",\n  \"order_type\": \"MARKET\",\n  \"base_quantity\": {\n    \"atomic_units\": \"125000\",\n    \"decimals\": 8\n  },\n  \"time_in_force\": \"IOC\",\n  \"max_notional\": {\n    \"currency\": \"RUB\",\n    \"minor_units\": 25000000\n  }\n}"
                },
                "description": "Binds one tenant-scoped SANDBOX ALLOW decision to one local order in PostgreSQL. The current runtime accepts BUY + MARKET + IOC only, records an OPEN synthetic projection and transactional outbox event, and performs zero external calls. subject_ref must equal client.subject_ref in the linked canonical eligibility evidence, whose decision.input_digest is reproduced before the order is accepted. The committed decision must also be no older than five minutes and no more than 30 seconds ahead of the authoritative PostgreSQL clock; otherwise the caller must obtain a fresh eligibility decision. This gate does not re-run bank KYC/KYT or a production policy. The endpoint does not obtain a quote, reserve funds, submit to a venue, move an asset, create a ledger posting, or prove that approval_ref represents maker-checker approval.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 15 required and 1 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. 503: The PostgreSQL sandbox fact was not committed or authoritative evidence integrity could not be verified. OUTBOX_BACKPRESSURE responses carry Retry-After: 5; exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.trade.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.trade.order.v1, certarail.trade.order.v2\nCanonical operationId: createSandboxTradingOrder\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_sandbox_trading_order_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/trading/orders"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Trading%20Sandbox/operation/createSandboxTradingOrder",
                "method": "POST",
                "operationId": "createSandboxTradingOrder",
                "path": "/v1/trading/orders"
              }
            },
            {
              "name": "List durable Local environment order projections.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns PostgreSQL projections for the authenticated tenant. These rows are synthetic operational facts, not exchange orders, balances, client holdings, accounting positions, or evidence of moved funds. Historical projections may contain side=SELL and legacy exact-replay payloads may omit subject_ref; new create commands remain subject-bound and BUY-only.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 1 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. 503: The PostgreSQL sandbox fact was not committed or authoritative evidence integrity could not be verified. OUTBOX_BACKPRESSURE responses carry Retry-After: 5; exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.trade.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.trade.order.v1, certarail.trade.order.v2\nCanonical operationId: listSandboxTradingOrders\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/trading/orders?tenant_id={{list_sandbox_trading_orders_tenant_id}}&limit={{list_sandbox_trading_orders_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Trading%20Sandbox/operation/listSandboxTradingOrders",
                "method": "GET",
                "operationId": "listSandboxTradingOrders",
                "path": "/v1/trading/orders"
              }
            },
            {
              "name": "Read one sandbox order with its synthetic fills and event trace.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Tenant scope comes from the authenticated credential. Fills and events are local immutable evidence; they do not assert provider execution, settlement, custody, ledger posting, or ownership of an asset. The response schema intentionally preserves legacy SELL projections and an absent or empty subject_ref without making either valid for new writes.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. 503: The PostgreSQL sandbox fact was not committed or authoritative evidence integrity could not be verified. OUTBOX_BACKPRESSURE responses carry Retry-After: 5; exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.trade.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.trade.order.v1, certarail.trade.order.v2\nCanonical operationId: getSandboxTradingOrder\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/trading/orders/{{get_sandbox_trading_order_order_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Trading%20Sandbox/operation/getSandboxTradingOrder",
                "method": "GET",
                "operationId": "getSandboxTradingOrder",
                "path": "/v1/trading/orders/{order_id}"
              }
            },
            {
              "name": "Append one manual synthetic fill to a sandbox order.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"fill_ref\": \"fill_example\",\n  \"quantity\": {\n    \"atomic_units\": \"1\",\n    \"decimals\": 0\n  },\n  \"price\": {\n    \"value\": \"1\",\n    \"scale\": 0\n  }\n}"
                },
                "description": "This operator/test endpoint records caller-supplied exact quantity and price as a local synthetic fact. Price is not market data and fill_ref is not a live-provider receipt. The order projection, fill evidence and outbox event commit atomically in PostgreSQL; no exchange, ledger, custody system, wallet, blockchain or money rail is called. Synthetic fills are accepted only for BUY orders. A stored legacy BUY projection may retain this local lifecycle, with v1 events when its subject or quote does not satisfy v2. A stored legacy SELL projection remains readable and locally cancellable, but it cannot receive a new fill or otherwise be executed.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 5 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 422, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. 503: The PostgreSQL sandbox fact was not committed or authoritative evidence integrity could not be verified. OUTBOX_BACKPRESSURE responses carry Retry-After: 5; exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.trade.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.trade.order.v1, certarail.trade.order.v2\nCanonical operationId: recordSyntheticTradingFill\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{record_synthetic_trading_fill_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/trading/orders/{{record_synthetic_trading_fill_order_id}}/sandbox-fills"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Trading%20Sandbox/operation/recordSyntheticTradingFill",
                "method": "POST",
                "operationId": "recordSyntheticTradingFill",
                "path": "/v1/trading/orders/{order_id}/sandbox-fills"
              }
            },
            {
              "name": "Append a local cancellation transition to a sandbox order.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\"\n}"
                },
                "description": "Cancels only the PostgreSQL sandbox projection. It does not send a live cancel, prove that an exchange accepted a cancel, resolve a fill/cancel race, release funds, or reverse a fill. Those provider and accounting semantics remain production-blocked. This local transition is also the only write allowed for a still-open legacy SELL projection; it emits a legacy v1 lifecycle fact and does not execute that SELL.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 2 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. 503: The PostgreSQL sandbox fact was not committed or authoritative evidence integrity could not be verified. OUTBOX_BACKPRESSURE responses carry Retry-After: 5; exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.trade.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.trade.order.v1, certarail.trade.order.v2\nCanonical operationId: cancelSandboxTradingOrder\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{cancel_sandbox_trading_order_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/trading/orders/{{cancel_sandbox_trading_order_order_id}}/cancel"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Trading%20Sandbox/operation/cancelSandboxTradingOrder",
                "method": "POST",
                "operationId": "cancelSandboxTradingOrder",
                "path": "/v1/trading/orders/{order_id}/cancel"
              }
            },
            {
              "name": "Derive a non-authoritative position projection from synthetic fills.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Aggregates local synthetic fill facts by portfolio and asset. The result is rebuildable and authoritative=false; it is not a bank/custody balance, ownership record, available-to-trade amount, settlement result, tax lot, or double-entry ledger.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. 503: The PostgreSQL sandbox fact was not committed or authoritative evidence integrity could not be verified. OUTBOX_BACKPRESSURE responses carry Retry-After: 5; exact committed replay remains available. Retry-After: 5. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\n- [certarail.trade.v1](/docs/events#channels) — LOCAL_OUTBOX_PRODUCED; certarail.trade.order.v1, certarail.trade.order.v2\nCanonical operationId: listSyntheticTradingPositions\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/trading/positions?tenant_id={{list_synthetic_trading_positions_tenant_id}}&portfolio_ref={{list_synthetic_trading_positions_portfolio_ref}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Trading%20Sandbox/operation/listSyntheticTradingPositions",
                "method": "GET",
                "operationId": "listSyntheticTradingPositions",
                "path": "/v1/trading/positions"
              }
            }
          ],
          "name": "Trading Sandbox"
        },
        {
          "description": "Generated from operations tagged Travel Rule in canonical OpenAPI.",
          "item": [
            {
              "name": "Register an immutable sandbox Travel Rule ruleset.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"version\": \"example\",\n  \"jurisdiction\": \"AA\",\n  \"currency\": \"RUB\",\n  \"threshold_minor_units\": 0,\n  \"threshold_mode\": \"AT_OR_ABOVE\",\n  \"required_fields\": [\n    \"example\"\n  ],\n  \"source_ref\": \"source_example\",\n  \"source_version\": \"example\",\n  \"source_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"approver_id\": \"approver_example\",\n  \"change_ticket\": \"example\",\n  \"valid_from\": \"2026-01-01T00:00:00Z\",\n  \"valid_to\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Tenant is server-bound. Source refs and digests are caller-governed, maker/checker actor assurance is sandbox-only, and no authority or provider is contacted.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 14 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: registerTravelRuleRuleset\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{register_travel_rule_ruleset_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{register_travel_rule_ruleset_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/travel-rule/rulesets"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Travel%20Rule/operation/registerTravelRuleRuleset",
                "method": "POST",
                "operationId": "registerTravelRuleRuleset",
                "path": "/v1/travel-rule/rulesets"
              }
            },
            {
              "name": "Register a versioned local VASP directory evidence entry.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"vasp_ref\": \"vasp_example\",\n  \"jurisdiction\": \"AA\",\n  \"accepted_fields\": [\n    \"example\"\n  ],\n  \"endpoint_ref\": \"endpoint_example\",\n  \"source_ref\": \"source_example\",\n  \"source_version\": \"example\",\n  \"source_digest\": \"0000000000000000000000000000000000000000000000000000000000000000\",\n  \"valid_from\": \"2026-01-01T00:00:00Z\",\n  \"valid_to\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Stores opaque references only; the endpoint is not probed and no VASP is contacted.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 10 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: registerTravelRuleDirectoryEntry\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Sandbox-Actor",
                    "type": "text",
                    "value": "{{register_travel_rule_directory_entry_x_certa_rail_sandbox_actor}}"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{register_travel_rule_directory_entry_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/travel-rule/directory-entries"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Travel%20Rule/operation/registerTravelRuleDirectoryEntry",
                "method": "POST",
                "operationId": "registerTravelRuleDirectoryEntry",
                "path": "/v1/travel-rule/directory-entries"
              }
            },
            {
              "name": "Assess local Travel Rule evidence completeness.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"jurisdiction\": \"AA\",\n  \"currency\": \"RUB\",\n  \"amount_minor_units\": 0,\n  \"originator_subject_ref\": \"subref_A\",\n  \"beneficiary_subject_ref\": \"subref_A\",\n  \"destination_vasp_ref\": \"vasp_A\"\n}"
                },
                "description": "Accepts opaque subject and encrypted-payload references only. A true broadcast_allowed value means local completeness, not that a broadcast occurred or is production-authorized; external_calls is always 0 and transport is NOT_CONFIGURED.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 7 required and 3 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 201 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: assessTravelRule\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{assess_travel_rule_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/travel-rule/assessments"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Travel%20Rule/operation/assessTravelRule",
                "method": "POST",
                "operationId": "assessTravelRule",
                "path": "/v1/travel-rule/assessments"
              }
            }
          ],
          "name": "Travel Rule"
        },
        {
          "description": "Generated from operations tagged Wallet Provisioning Designs in canonical OpenAPI.",
          "item": [
            {
              "name": "Record one local, non-executable wallet provisioning design.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"facts_version\": \"example\",\n  \"wallet_purpose\": \"INVESTMENT\",\n  \"administration_model\": \"RF_DIGITAL_DEPOSITARY\",\n  \"key_control_model\": \"PROVIDER_CONTROLLED\",\n  \"provider_ref\": \"provider_example\",\n  \"provider_registry_evidence\": {\n    \"ref\": \"example\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  },\n  \"identity_assertion_ref\": \"identity_assertion_example\",\n  \"kyc_assertion\": {\n    \"ref\": \"example\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  },\n  \"contract_evidence\": {\n    \"ref\": \"example\",\n    \"observed_at\": \"2026-01-01T00:00:00Z\",\n    \"expires_at\": \"2026-01-01T00:00:00Z\"\n  },\n  \"legal_basis_ref\": \"legal_basis_example\",\n  \"risk_disclosure_ref\": \"risk_disclosure_example\"\n}"
                },
                "description": "Tenant-scoped sandbox endpoint. It binds a tenant and opaque subject reference to a proposed RF digital-depositary model and time-bounded evidence references. A caller using the tenant-bound static sandbox bearer supplies X-CertaRail-Subject-Ref; this does not prove the caller's or end user's identity. The result is DESIGN_ONLY, NOT_PERMITTED for provider submission, and NOT_EVALUATED for legal eligibility. The endpoint never accepts seed phrases, private keys, MPC shares, or recovery material; it performs zero provider and blockchain calls and does not open a wallet.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 13 required and 0 optional fields. Parameters add 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay reads the authoritative design evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createWalletProvisioningDesign\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{create_wallet_provisioning_design_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay reads the authoritative design evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_wallet_provisioning_design_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/wallet-provisioning-designs"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Wallet%20Provisioning%20Designs/operation/createWalletProvisioningDesign",
                "method": "POST",
                "operationId": "createWalletProvisioningDesign",
                "path": "/v1/wallet-provisioning-designs"
              }
            },
            {
              "name": "List local provisioning designs for one caller-asserted subject.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns only design evidence for the authenticated tenant and exact subject reference supplied by the caller. It is not a wallet balance, provider inventory, ownership statement, or legal eligibility result.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 2 required and 1 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 1 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: listWalletProvisioningDesigns\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{list_wallet_provisioning_designs_x_certa_rail_subject_ref}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/wallet-provisioning-designs?tenant_id={{list_wallet_provisioning_designs_tenant_id}}&limit={{list_wallet_provisioning_designs_limit}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Wallet%20Provisioning%20Designs/operation/listWalletProvisioningDesigns",
                "method": "GET",
                "operationId": "listWalletProvisioningDesigns",
                "path": "/v1/wallet-provisioning-designs"
              }
            },
            {
              "name": "Read one design and its immutable address provisioning designs.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Tenant and subject scoped. Address designs intentionally contain no blockchain address because no depositary or blockchain was called.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n2 parameters: 2 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 2 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getWalletProvisioningDesign\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{get_wallet_provisioning_design_x_certa_rail_subject_ref}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/wallet-provisioning-designs/{{get_wallet_provisioning_design_design_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Wallet%20Provisioning%20Designs/operation/getWalletProvisioningDesign",
                "method": "GET",
                "operationId": "getWalletProvisioningDesign",
                "path": "/v1/wallet-provisioning-designs/{design_id}"
              }
            },
            {
              "name": "Record a non-executable deposit-address provisioning design.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"request_id\": \"request_example\",\n  \"tenant_id\": \"tenant_example\",\n  \"asset_code\": \"BTC\",\n  \"network\": \"bitcoin\",\n  \"address_purpose\": \"DEPOSIT\",\n  \"address_kind\": \"DEDICATED\"\n}"
                },
                "description": "Creates only immutable local intent for a dedicated or omnibus deposit address. It never generates a key, calls a provider, broadcasts to a blockchain, or returns an address. Omnibus designs require an opaque provider_account_ref so the public blockchain address is not treated as the customer identifier.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n3 parameters: 3 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 6 required and 1 optional fields. Parameters add 3 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 404, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Stable tenant-scoped command key. Exact canonical replay reads the authoritative design evidence; the same key with different bytes returns 409.\n\n### Rate-limit behaviour\n\n429: The bounded control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: createWalletAddressProvisioningDesign\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
                    "disabled": false,
                    "key": "X-CertaRail-Subject-Ref",
                    "type": "text",
                    "value": "{{create_wallet_address_provisioning_design_x_certa_rail_subject_ref}}"
                  },
                  {
                    "description": "Stable tenant-scoped command key. Exact canonical replay reads the authoritative design evidence; the same key with different bytes returns 409.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{create_wallet_address_provisioning_design_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/wallet-provisioning-designs/{{create_wallet_address_provisioning_design_design_id}}/address-designs"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Wallet%20Provisioning%20Designs/operation/createWalletAddressProvisioningDesign",
                "method": "POST",
                "operationId": "createWalletAddressProvisioningDesign",
                "path": "/v1/wallet-provisioning-designs/{design_id}/address-designs"
              }
            }
          ],
          "name": "Wallet Provisioning Designs"
        },
        {
          "description": "Generated from operations tagged Workflows in canonical OpenAPI.",
          "item": [
            {
              "name": "Start durable preparation of a non-submittable reporting draft.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "body": {
                  "mode": "raw",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  },
                  "raw": "{\n  \"tenant_id\": \"tenant_example\",\n  \"period_from\": \"2026-01-01T00:00:00Z\",\n  \"period_to\": \"2026-01-01T00:00:00Z\"\n}"
                },
                "description": "Optional asynchronous control-plane workflow. Temporal receives the tenant-scoped period and opaque digests, while activity results contain only report summary fields; movement records never enter workflow results. This endpoint is independent of eligibility readiness and cannot submit a report or move money or assets. Idempotency-Key is mandatory. Reusing the key with the same canonical request returns the existing execution; changed request data returns 409. The sandbox deduplication window is bounded by Temporal workflow retention.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nRequest body is required; its top-level schema has 3 required and 0 optional fields. Parameters add 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 403, 409, 415, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nIdempotency-Key is required. Caller command key. The raw value is hashed before workflow history; it is never exposed in the workflow identifier or response.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: startRegulatoryDraftPreparation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  },
                  {
                    "key": "Content-Type",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "description": "Caller command key. The raw value is hashed before workflow history; it is never exposed in the workflow identifier or response.",
                    "disabled": false,
                    "key": "Idempotency-Key",
                    "type": "text",
                    "value": "{{start_regulatory_draft_preparation_idempotency_key}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/workflows/regulatory-draft-preparations"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Workflows/operation/startRegulatoryDraftPreparation",
                "method": "POST",
                "operationId": "startRegulatoryDraftPreparation",
                "path": "/v1/workflows/regulatory-draft-preparations"
              }
            },
            {
              "name": "Read one tenant-authorized workflow status.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Returns summary-only status. A workflow owned by another tenant has the same 404 response as an unknown identifier to prevent cross-tenant existence probing.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 200 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nThis is a read-only HTTP operation. Idempotency-Key is not part of its contract and the operation does not declare a command replay record.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: getRegulatoryDraftPreparation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "GET",
                "url": "{{base_url}}/v1/workflows/regulatory-draft-preparations/{{get_regulatory_draft_preparation_workflow_id}}"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Workflows/operation/getRegulatoryDraftPreparation",
                "method": "GET",
                "operationId": "getRegulatoryDraftPreparation",
                "path": "/v1/workflows/regulatory-draft-preparations/{workflow_id}"
              }
            },
            {
              "name": "Request cancellation of a running draft-preparation workflow.",
              "request": {
                "auth": {
                  "bearer": [
                    {
                      "key": "token",
                      "type": "string",
                      "value": "{{sandbox_credential}}"
                    }
                  ],
                  "type": "bearer"
                },
                "description": "Cancellation is asynchronous and tenant-authorized. It cannot revoke a completed draft and does not invoke any external provider or regulator.\n\n<!-- certarail.operation-page.v1 -->\n\n### Auth\n\nAuthentication uses bearerAuth (HTTP bearer).\n\n### Parameters\n\n1 parameters: 1 required and 0 optional. The parameter table below is authoritative.\n\n### Required and optional fields\n\nThere is no request body. Parameters contain 1 required and 0 optional values.\n\n### Schema\n\nRequest and response schemas are rendered from the standard OpenAPI requestBody and responses objects below.\n\n### Request example\n\nSchema-derived cURL, JavaScript, Python, and Go examples are shown in the request sample panel. Credentials remain environment placeholders and generated values are not runtime evidence.\n\n### Response examples\n\nSynthetic success examples are rendered for 202 from the declared response schemas.\n\n### Error examples\n\nDeclared error responses 400, 401, 404, 409, 429, 503 are shown below. Where a response declares a body schema, its example is generated from that schema.\n\n### Idempotency behaviour\n\nNo Idempotency-Key contract is declared. Callers must not infer that replaying this mutation is safe.\n\n### Rate-limit behaviour\n\n429: Control-plane concurrency limit is exhausted. Retry-After: 1. This documents bounded admission or concurrency behaviour, not a production SLA or tenant quota.\n\n### Related events\n\nNo related event family is declared for this operation in canonical AsyncAPI metadata.\nCanonical operationId: cancelRegulatoryDraftPreparation\nGenerated request values are synthetic documentation fixtures, not runtime evidence.",
                "header": [
                  {
                    "key": "Accept",
                    "type": "text",
                    "value": "application/json"
                  },
                  {
                    "key": "X-Request-ID",
                    "type": "text",
                    "value": "{{$guid}}"
                  }
                ],
                "method": "POST",
                "url": "{{base_url}}/v1/workflows/regulatory-draft-preparations/{{cancel_regulatory_draft_preparation_workflow_id}}/cancel"
              },
              "x-certarail-canonical-catalog": true,
              "x-certarail-operation": {
                "deepLink": "{{docs_base_url}}/docs/api#tag/Workflows/operation/cancelRegulatoryDraftPreparation",
                "method": "POST",
                "operationId": "cancelRegulatoryDraftPreparation",
                "path": "/v1/workflows/regulatory-draft-preparations/{workflow_id}/cancel"
              }
            }
          ],
          "name": "Workflows"
        }
      ],
      "name": "Canonical API catalog"
    }
  ],
  "variable": [
    {
      "description": "Canonical LOCAL server. Override only with an explicitly approved compatible runtime.",
      "key": "base_url",
      "type": "default",
      "value": "http://localhost:8080"
    },
    {
      "description": "Local developer documentation origin.",
      "key": "docs_base_url",
      "type": "default",
      "value": "http://localhost:3000"
    },
    {
      "description": "Tenant assertion used by the decision fixture; it must match the bearer-bound tenant.",
      "key": "tenant_id",
      "type": "default",
      "value": "sandbox-bank"
    },
    {
      "description": "Caller-supplied short-lived bearer. Prefer the Postman environment secret value.",
      "key": "sandbox_credential",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Optional short-lived checkout header credential for canonical customer-surface requests. The guided workflow does not persist the one-time session token.",
      "key": "checkout_session_token",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Closed server-owned synthetic binding kind.",
      "key": "activate_developer_sandbox_binding_binding",
      "type": "default",
      "value": "identity"
    },
    {
      "description": "Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.",
      "key": "activate_developer_sandbox_binding_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "activate_sandbox_policy_studio_revision_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic Policy Studio revision identifier.",
      "key": "activate_sandbox_policy_studio_revision_revision_id",
      "type": "default",
      "value": "prev_00000000000000000000000000000000"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "activate_sandbox_policy_studio_revision_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "activate_sandbox_webhook_subscription_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "activate_sandbox_webhook_subscription_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "approve_corporate_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "approve_corporate_operation_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "approve_policy_studio_revision_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic Policy Studio revision identifier.",
      "key": "approve_policy_studio_revision_revision_id",
      "type": "default",
      "value": "prev_00000000000000000000000000000000"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "approve_policy_studio_revision_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "assess_travel_rule_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic local REVIEW case identifier.",
      "key": "assign_review_case_case_id",
      "type": "default",
      "value": "case_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "assign_review_case_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "assign_review_case_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Unique caller command key. It must appear exactly once; PostgreSQL stores only its SHA-256 digest and the canonical request digest.",
      "key": "build_cbrcrypto_movement_draft_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.",
      "key": "build_developer_scenario_evidence_pack_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque Scenario Run identifier resolved only inside the bearer-bound tenant.",
      "key": "build_developer_scenario_evidence_pack_run_id",
      "type": "default",
      "value": "run_id_example"
    },
    {
      "description": "Unique caller command key. It must appear exactly once; PostgreSQL stores only its SHA-256 digest and the canonical request digest.",
      "key": "build_idempotent_cbrcrypto_movement_draft_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
      "key": "cancel_asset_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic local AssetLink operation identifier.",
      "key": "cancel_asset_operation_operation_id",
      "type": "default",
      "value": "aop_00000000000000000000000000000000"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "cancel_asset_operation_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "The confirmation_ref before allocation, then the existing shared Deal Core deal_id.",
      "key": "cancel_customer_checkout_deal_id",
      "type": "default",
      "value": "deal_id_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "cancel_customer_checkout_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque hash-derived workflow identifier; it contains no raw tenant or idempotency key.",
      "key": "cancel_regulatory_draft_preparation_workflow_id",
      "type": "default",
      "value": "workflow_id_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.",
      "key": "cancel_sandbox_trading_order_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque, deterministic Local environment order identifier.",
      "key": "cancel_sandbox_trading_order_order_id",
      "type": "default",
      "value": "ord_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "configure_sandbox_limit_account_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "configure_sandbox_limit_account_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
      "key": "confirm_asset_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic local AssetLink operation identifier.",
      "key": "confirm_asset_operation_operation_id",
      "type": "default",
      "value": "aop_00000000000000000000000000000000"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "confirm_asset_operation_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "confirm_corporate_document_upload_upload_session_id",
      "type": "default",
      "value": "document_upload_00000000000000000000000000000000"
    },
    {
      "description": "The confirmation_ref before allocation, then the existing shared Deal Core deal_id.",
      "key": "confirm_customer_checkout_deal_id",
      "type": "default",
      "value": "deal_id_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "confirm_customer_checkout_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "connect_corporate_onboarding_mock_rail_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
      "key": "create_asset_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "create_asset_operation_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
      "key": "create_asset_transfer_link_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "create_asset_transfer_link_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "create_checkout_session_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "create_corporate_document_download_session_document_id",
      "type": "default",
      "value": "document_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "create_corporate_mandate_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable source command identity. It must appear exactly once. Retail callers must use evaluation.request_id; corporate callers must use the operation_id path value. Exact replay returns committed evidence and a changed request under the same source identity returns 409.",
      "key": "create_corporate_operation_deal_scenario_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "create_corporate_operation_deal_scenario_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "create_corporate_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "create_corporate_provider_connection_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "create_corporate_self_service_connection_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "create_customer_checkout_quote_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque session identifier; customer credentials are additionally pinned to this exact session.",
      "key": "create_customer_checkout_quote_session_id",
      "type": "default",
      "value": "session_id_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "create_depository_extract_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "create_depository_extract_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact tenant-scoped identity for a state-changing binding activation, Scenario Run, or pack build command. Exact canonical replay returns the committed resource; changed command bytes under the same key return 409.",
      "key": "create_developer_scenario_run_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable client command key. Reusing it with the identical payload returns the exact committed response; a different payload returns 409.",
      "key": "create_eligibility_evaluation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "create_policy_studio_revision_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "create_policy_studio_revision_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Stable server-generated command key. Identical replay returns the original submission; different content returns 409.",
      "key": "create_public_submission_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable source command identity. It must appear exactly once. Retail callers must use evaluation.request_id; corporate callers must use the operation_id path value. Exact replay returns committed evidence and a changed request under the same source identity returns 409.",
      "key": "create_retail_deal_scenario_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "create_review_case_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "create_review_case_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "create_sandbox_checkout_scenario_session_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
      "key": "create_sandbox_ledger_hold_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
      "key": "create_sandbox_ledger_hold_x_correlation_id",
      "type": "default",
      "value": "x_correlation_id_example"
    },
    {
      "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
      "key": "create_sandbox_ledger_posting_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
      "key": "create_sandbox_ledger_posting_x_correlation_id",
      "type": "default",
      "value": "x_correlation_id_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.",
      "key": "create_sandbox_trading_order_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "create_sandbox_webhook_subscription_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable browser-generated command key forwarded by the website service. Exact replay returns the original sandbox; reuse inside the same issuer tenant with different request identity or content returns 409.",
      "key": "create_self_service_sandbox_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic local wallet provisioning design identifier.",
      "key": "create_wallet_address_provisioning_design_design_id",
      "type": "default",
      "value": "wdesign_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay reads the authoritative design evidence; the same key with different bytes returns 409.",
      "key": "create_wallet_address_provisioning_design_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
      "key": "create_wallet_address_provisioning_design_x_certa_rail_subject_ref",
      "type": "default",
      "value": "x_certa_rail_subject_ref_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay reads the authoritative design evidence; the same key with different bytes returns 409.",
      "key": "create_wallet_provisioning_design_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
      "key": "create_wallet_provisioning_design_x_certa_rail_subject_ref",
      "type": "default",
      "value": "x_certa_rail_subject_ref_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "decide_corporate_onboarding_workspace_draft_review_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "delete_sandbox_webhook_subscription_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "delete_sandbox_webhook_subscription_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Opaque portable Evidence Pack identifier resolved only inside the bearer-bound tenant.",
      "key": "download_developer_evidence_pack_pack_id",
      "type": "default",
      "value": "evidence_pack_00000000000000000000000000000000"
    },
    {
      "description": "Opaque deterministic local REVIEW case identifier.",
      "key": "escalate_review_case_case_id",
      "type": "default",
      "value": "case_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "escalate_review_case_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "escalate_review_case_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "expire_sandbox_limit_reservations_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "expire_sandbox_limit_reservations_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Opaque deterministic hold identifier inside the authenticated tenant.",
      "key": "finalize_sandbox_ledger_hold_hold_id",
      "type": "default",
      "value": "hold_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
      "key": "finalize_sandbox_ledger_hold_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
      "key": "finalize_sandbox_ledger_hold_x_correlation_id",
      "type": "default",
      "value": "x_correlation_id_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "finalize_sandbox_limit_reservation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic sandbox limit reservation identifier.",
      "key": "finalize_sandbox_limit_reservation_reservation_id",
      "type": "default",
      "value": "limres_00000000000000000000000000000000"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "finalize_sandbox_limit_reservation_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Opaque deterministic local AssetLink operation identifier.",
      "key": "get_asset_operation_operation_id",
      "type": "default",
      "value": "aop_00000000000000000000000000000000"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "get_asset_operation_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "get_corporate_document_content_document_id",
      "type": "default",
      "value": "document_00000000000000000000000000000000"
    },
    {
      "description": "Exact-resource, principal-bound, one-time short-lived opaque download grant.",
      "key": "get_corporate_document_content_x_certa_rail_document_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "get_corporate_document_metadata_document_id",
      "type": "default",
      "value": "document_00000000000000000000000000000000"
    },
    {
      "description": "Opaque deterministic mandate identifier.",
      "key": "get_corporate_mandate_mandate_id",
      "type": "default",
      "value": "mandate_00000000000000000000000000000000"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "get_corporate_operation_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Opaque deterministic provider-connection identifier.",
      "key": "get_corporate_provider_connection_connection_id",
      "type": "default",
      "value": "pconn_00000000000000000000000000000000"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "get_corporate_self_service_connection_connection_id",
      "type": "default",
      "value": "connection_00000000000000000000000000000000"
    },
    {
      "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
      "key": "get_current_self_service_sandbox_credential_x_certa_rail_sandbox_management_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "The confirmation_ref before allocation, then the existing shared Deal Core deal_id.",
      "key": "get_customer_checkout_events_deal_id",
      "type": "default",
      "value": "deal_id_example"
    },
    {
      "description": "Opaque immutable quote identifier scoped to the authenticated session.",
      "key": "get_customer_checkout_quote_quote_id",
      "type": "default",
      "value": "quote_id_example"
    },
    {
      "description": "The confirmation_ref before allocation, then the existing shared Deal Core deal_id.",
      "key": "get_customer_checkout_receipt_deal_id",
      "type": "default",
      "value": "deal_id_example"
    },
    {
      "description": "The confirmation_ref before allocation, then the existing shared Deal Core deal_id.",
      "key": "get_customer_checkout_status_deal_id",
      "type": "default",
      "value": "deal_id_example"
    },
    {
      "description": "The confirmation_ref before allocation, then the existing shared Deal Core deal_id.",
      "key": "get_customer_checkout_timeline_deal_id",
      "type": "default",
      "value": "deal_id_example"
    },
    {
      "description": "Opaque deterministic Deal Core identifier inside the authenticated tenant.",
      "key": "get_deal_deal_id",
      "type": "default",
      "value": "deal_00000000000000000000000000000000"
    },
    {
      "description": "Opaque local Book of Record account identifier.",
      "key": "get_depository_account_account_id",
      "type": "default",
      "value": "dacc_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_depository_account_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque local design-only asset record identifier.",
      "key": "get_depository_asset_asset_id",
      "type": "default",
      "value": "dasset_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_depository_asset_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque local NOT_OFFICIAL extract identifier.",
      "key": "get_depository_extract_extract_id",
      "type": "default",
      "value": "dext_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_depository_extract_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque local journal operation identifier.",
      "key": "get_depository_operation_operation_id",
      "type": "default",
      "value": "dop_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_depository_operation_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque identifier for caller-supplied provider observation evidence.",
      "key": "get_depository_provider_observation_observation_id",
      "type": "default",
      "value": "dobs_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_depository_provider_observation_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque identifier for a local reconciliation result.",
      "key": "get_depository_reconciliation_reconciliation_id",
      "type": "default",
      "value": "drec_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_depository_reconciliation_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque portable Evidence Pack identifier resolved only inside the bearer-bound tenant.",
      "key": "get_developer_evidence_pack_manifest_pack_id",
      "type": "default",
      "value": "evidence_pack_00000000000000000000000000000000"
    },
    {
      "description": "Opaque portable Evidence Pack identifier resolved only inside the bearer-bound tenant.",
      "key": "get_developer_evidence_pack_pack_id",
      "type": "default",
      "value": "evidence_pack_00000000000000000000000000000000"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "get_developer_outbox_evidence_event_id",
      "type": "default",
      "value": "event_id_example"
    },
    {
      "description": "Opaque Scenario Run identifier resolved only inside the bearer-bound tenant.",
      "key": "get_developer_scenario_run_assertions_run_id",
      "type": "default",
      "value": "run_id_example"
    },
    {
      "description": "Opaque Scenario Run identifier resolved only inside the bearer-bound tenant.",
      "key": "get_developer_scenario_run_evidence_run_id",
      "type": "default",
      "value": "run_id_example"
    },
    {
      "description": "Opaque Scenario Run identifier resolved only inside the bearer-bound tenant.",
      "key": "get_developer_scenario_run_run_id",
      "type": "default",
      "value": "run_id_example"
    },
    {
      "description": "Opaque Scenario Run identifier resolved only inside the bearer-bound tenant.",
      "key": "get_developer_scenario_run_timeline_run_id",
      "type": "default",
      "value": "run_id_example"
    },
    {
      "description": "Opaque session identifier; customer credentials are additionally pinned to this exact session.",
      "key": "get_partner_checkout_session_session_id",
      "type": "default",
      "value": "session_id_example"
    },
    {
      "description": "Opaque session identifier; customer credentials are additionally pinned to this exact session.",
      "key": "get_partner_checkout_timeline_session_id",
      "type": "default",
      "value": "session_id_example"
    },
    {
      "description": "Optional compatibility assertion. When supplied, it must equal the tenant bound to the authenticated credential; the response tenant is always derived from that credential.",
      "key": "get_platform_overview_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "get_public_submission_reference_id",
      "type": "default",
      "value": "submission_00000000000000000000000000000000"
    },
    {
      "description": "Opaque hash-derived workflow identifier; it contains no raw tenant or idempotency key.",
      "key": "get_regulatory_draft_preparation_workflow_id",
      "type": "default",
      "value": "workflow_id_example"
    },
    {
      "description": "Opaque deterministic local REVIEW case identifier.",
      "key": "get_review_case_case_id",
      "type": "default",
      "value": "case_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "get_review_case_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque immutable journal identifier inside the authenticated tenant.",
      "key": "get_sandbox_ledger_journal_journal_id",
      "type": "default",
      "value": "journal_00000000000000000000000000000000"
    },
    {
      "description": "Optional exact assertion. Tenant identity is always derived from the bearer; a different supplied value is rejected with 403.",
      "key": "get_sandbox_ledger_journal_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
      "key": "get_sandbox_ledger_journal_x_correlation_id",
      "type": "default",
      "value": "x_correlation_id_example"
    },
    {
      "description": "Opaque, deterministic Local environment order identifier.",
      "key": "get_sandbox_trading_order_order_id",
      "type": "default",
      "value": "ord_00000000000000000000000000000000"
    },
    {
      "description": "Opaque tenant-scoped signed delivery evidence identifier.",
      "key": "get_sandbox_webhook_delivery_delivery_id",
      "type": "default",
      "value": "webhook_delivery_00000000000000000000000000000000"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "get_sandbox_webhook_delivery_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "get_sandbox_webhook_inbox_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "get_sandbox_webhook_subscription_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
      "key": "get_self_service_sandbox_fixtures_x_certa_rail_sandbox_management_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Opaque deterministic local wallet provisioning design identifier.",
      "key": "get_wallet_provisioning_design_design_id",
      "type": "default",
      "value": "wdesign_00000000000000000000000000000000"
    },
    {
      "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
      "key": "get_wallet_provisioning_design_x_certa_rail_subject_ref",
      "type": "default",
      "value": "x_certa_rail_subject_ref_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_asset_movements_from",
      "type": "default",
      "value": "from_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_asset_movements_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Optional compatibility assertion. When supplied, it must equal the tenant bound to the authenticated credential; the response tenant is always derived from that credential.",
      "key": "list_asset_movements_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_asset_movements_to",
      "type": "default",
      "value": "to_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_asset_operations_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Must equal the tenant bound to the authenticated sandbox credential.",
      "key": "list_asset_operations_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "list_asset_operations_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Maximum number of organization-scoped projections to return.",
      "key": "list_corporate_mandates_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_corporate_mandates_representative_id",
      "type": "default",
      "value": "representative_id_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_corporate_mandates_status",
      "type": "default",
      "value": "ACTIVE"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "list_corporate_operation_events_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Maximum number of organization-scoped projections to return.",
      "key": "list_corporate_operations_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_corporate_operations_state",
      "type": "default",
      "value": "DRAFT"
    },
    {
      "description": "Maximum number of organization-scoped projections to return.",
      "key": "list_corporate_provider_connections_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_corporate_provider_connections_status",
      "type": "default",
      "value": "ACTIVE"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_corporate_self_service_connections_kind",
      "type": "default",
      "value": "OIDC"
    },
    {
      "description": "Opaque deterministic Deal Core identifier inside the authenticated tenant.",
      "key": "list_deal_events_deal_id",
      "type": "default",
      "value": "deal_00000000000000000000000000000000"
    },
    {
      "description": "Opaque local Book of Record account identifier.",
      "key": "list_depository_account_entries_account_id",
      "type": "default",
      "value": "dacc_00000000000000000000000000000000"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_depository_account_entries_from",
      "type": "default",
      "value": "from_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_depository_account_entries_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "list_depository_account_entries_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_depository_account_entries_to",
      "type": "default",
      "value": "to_example"
    },
    {
      "description": "Maximum number of newest runs to return.",
      "key": "list_developer_scenario_runs_limit",
      "type": "default",
      "value": "50"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_public_submission_delivery_operations_limit",
      "type": "default",
      "value": "50"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_public_submission_work_queue_limit",
      "type": "default",
      "value": "50"
    },
    {
      "description": "Opaque deterministic local REVIEW case identifier.",
      "key": "list_review_case_events_case_id",
      "type": "default",
      "value": "case_00000000000000000000000000000000"
    },
    {
      "description": "Must exactly equal the tenant bound server-side to the authenticated sandbox bearer; it cannot select or override another tenant.",
      "key": "list_review_case_events_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_sandbox_trading_orders_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Must equal the tenant bound to the authenticated sandbox credential.",
      "key": "list_sandbox_trading_orders_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "list_sandbox_webhook_deliveries_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Opaque portfolio reference; no customer identity or entitlement is inferred.",
      "key": "list_synthetic_trading_positions_portfolio_ref",
      "type": "default",
      "value": "portfolio_ref_example"
    },
    {
      "description": "Must equal the tenant bound to the authenticated sandbox credential.",
      "key": "list_synthetic_trading_positions_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "list_wallet_provisioning_designs_limit",
      "type": "default",
      "value": "100"
    },
    {
      "description": "Must equal the tenant bound to the authenticated sandbox credential.",
      "key": "list_wallet_provisioning_designs_tenant_id",
      "type": "default",
      "value": "tenant_id_example"
    },
    {
      "description": "Opaque subject reference supplied by a caller using the tenant-bound static sandbox bearer. It is exact and must have no surrounding whitespace. The bearer proves neither the individual caller nor the end user; a production self-service route must derive this value from an authenticated claim.",
      "key": "list_wallet_provisioning_designs_x_certa_rail_subject_ref",
      "type": "default",
      "value": "x_certa_rail_subject_ref_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "open_depository_account_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "open_depository_account_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "pause_sandbox_webhook_subscription_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "pause_sandbox_webhook_subscription_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "post_depository_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "post_depository_operation_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "preflight_customer_checkout_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque session identifier; customer credentials are additionally pinned to this exact session.",
      "key": "preflight_customer_checkout_session_id",
      "type": "default",
      "value": "session_id_example"
    },
    {
      "description": "Fixed positive byte count; chunked transfer is rejected.",
      "key": "put_corporate_document_upload_content_content_length",
      "type": "default",
      "value": "1"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "put_corporate_document_upload_content_upload_session_id",
      "type": "default",
      "value": "document_upload_00000000000000000000000000000000"
    },
    {
      "description": "Single-resource, single-purpose opaque grant. Query credentials and permanent public URLs are rejected.",
      "key": "put_corporate_document_upload_content_x_certa_rail_document_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "put_corporate_onboarding_case_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "put_corporate_onboarding_workspace_draft_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "put_corporate_profile_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "reconcile_depository_observation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "reconcile_depository_observation_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Defaults to request_id when omitted.",
      "key": "record_asset_movement_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "record_corporate_onboarding_document_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "record_depository_provider_observation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "record_depository_provider_observation_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed response; the same key with different bytes returns 409.",
      "key": "record_synthetic_trading_fill_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque, deterministic Local environment order identifier.",
      "key": "record_synthetic_trading_fill_order_id",
      "type": "default",
      "value": "ord_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "register_depository_asset_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "register_depository_asset_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "register_travel_rule_directory_entry_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "register_travel_rule_directory_entry_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "register_travel_rule_ruleset_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "register_travel_rule_ruleset_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "reject_corporate_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "reject_corporate_operation_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "release_sandbox_limit_reservation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic sandbox limit reservation identifier.",
      "key": "release_sandbox_limit_reservation_reservation_id",
      "type": "default",
      "value": "limres_00000000000000000000000000000000"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "release_sandbox_limit_reservation_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Stable operator command key; reuse after an uncertain response.",
      "key": "replay_public_submission_delivery_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "replay_public_submission_delivery_reference_id",
      "type": "default",
      "value": "submission_00000000000000000000000000000000"
    },
    {
      "description": "Opaque tenant-scoped signed delivery evidence identifier.",
      "key": "replay_sandbox_webhook_delivery_delivery_id",
      "type": "default",
      "value": "webhook_delivery_00000000000000000000000000000000"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "replay_sandbox_webhook_delivery_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "replay_sandbox_webhook_delivery_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "reserve_sandbox_limit_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "reserve_sandbox_limit_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact fixture-reset command identity. The same key and scenario returns the stored response; reuse with another scenario returns 409.",
      "key": "reset_self_service_sandbox_fixtures_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
      "key": "reset_self_service_sandbox_fixtures_x_certa_rail_sandbox_management_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
      "key": "resolve_asset_transfer_link_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "resolve_asset_transfer_link_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Opaque deterministic local REVIEW case identifier.",
      "key": "resolve_review_case_case_id",
      "type": "default",
      "value": "case_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "resolve_review_case_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "resolve_review_case_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "retire_policy_studio_revision_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic Policy Studio revision identifier.",
      "key": "retire_policy_studio_revision_revision_id",
      "type": "default",
      "value": "prev_00000000000000000000000000000000"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "retire_policy_studio_revision_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Opaque tenant-scoped signed delivery evidence identifier.",
      "key": "retry_sandbox_webhook_delivery_delivery_id",
      "type": "default",
      "value": "webhook_delivery_00000000000000000000000000000000"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "retry_sandbox_webhook_delivery_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "retry_sandbox_webhook_delivery_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped operational command identity. Exact canonical replay returns the committed journal; changed evidence under the same key returns 409.",
      "key": "reverse_sandbox_ledger_posting_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque immutable journal identifier inside the authenticated tenant.",
      "key": "reverse_sandbox_ledger_posting_journal_id",
      "type": "default",
      "value": "journal_00000000000000000000000000000000"
    },
    {
      "description": "Request-scoped correlation reference echoed in the response. When omitted, the server generates an opaque value; it is not an accounting identity.",
      "key": "reverse_sandbox_ledger_posting_x_correlation_id",
      "type": "default",
      "value": "x_correlation_id_example"
    },
    {
      "description": "Stable tenant-scoped command key. Exact canonical replay returns the committed local evidence; the same key with different bytes returns 409.",
      "key": "revoke_asset_transfer_link_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic local AssetLink transfer-link identifier.",
      "key": "revoke_asset_transfer_link_link_id",
      "type": "default",
      "value": "alink_00000000000000000000000000000000"
    },
    {
      "description": "Opaque subject reference asserted by the sandbox caller. It is bound server-side into every command/read and therefore must not appear in an AssetLink request body. The tenant bearer does not authenticate this end user; production must derive the subject from bank-authenticated identity.",
      "key": "revoke_asset_transfer_link_x_certa_rail_subject_ref",
      "type": "default",
      "value": "subref_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "revoke_checkout_session_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque session identifier; customer credentials are additionally pinned to this exact session.",
      "key": "revoke_checkout_session_session_id",
      "type": "default",
      "value": "session_id_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "revoke_sandbox_webhook_subscription_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "revoke_sandbox_webhook_subscription_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Exact management-command identity. Exact replay never reveals a credential value again; different action or identity returns 409.",
      "key": "revoke_self_service_sandbox_credential_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
      "key": "revoke_self_service_sandbox_credential_x_certa_rail_sandbox_management_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "rotate_sandbox_webhook_signing_secret_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "rotate_sandbox_webhook_signing_secret_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Exact management-command identity. Exact replay never reveals a credential value again; different action or identity returns 409.",
      "key": "rotate_self_service_sandbox_credential_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Separate 24-hour management grant returned only on initial creation. The plaintext value is held server-side by the website relay and is never persisted by the API.",
      "key": "rotate_self_service_sandbox_credential_x_certa_rail_sandbox_management_grant",
      "type": "secret",
      "value": ""
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "scan_corporate_document_upload_upload_session_id",
      "type": "default",
      "value": "document_upload_00000000000000000000000000000000"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "send_sandbox_webhook_test_event_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "send_sandbox_webhook_test_event_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "set_corporate_document_legal_hold_document_id",
      "type": "default",
      "value": "document_00000000000000000000000000000000"
    },
    {
      "description": "Caller command key. The raw value is hashed before workflow history; it is never exposed in the workflow identifier or response.",
      "key": "start_regulatory_draft_preparation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "submit_corporate_onboarding_workspace_draft_review_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "submit_corporate_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "submit_corporate_operation_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Exact tenant-scoped sandbox command key. It must appear once; exact canonical replay returns committed evidence and changed input returns 409.",
      "key": "submit_policy_studio_revision_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic Policy Studio revision identifier.",
      "key": "submit_policy_studio_revision_revision_id",
      "type": "default",
      "value": "prev_00000000000000000000000000000000"
    },
    {
      "description": "Opaque actor reference asserted by the sandbox caller. It is recorded as governance evidence but is not a verified human identity or production IAM claim.",
      "key": "submit_policy_studio_revision_x_certa_rail_sandbox_actor",
      "type": "default",
      "value": "x_certa_rail_sandbox_actor_example"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "update_corporate_mandate_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic mandate identifier.",
      "key": "update_corporate_mandate_mandate_id",
      "type": "default",
      "value": "mandate_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "update_corporate_operation_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque deterministic corporate-operation identifier.",
      "key": "update_corporate_operation_operation_id",
      "type": "default",
      "value": "corp_op_00000000000000000000000000000000"
    },
    {
      "description": "Opaque deterministic provider-connection identifier.",
      "key": "update_corporate_provider_connection_connection_id",
      "type": "default",
      "value": "pconn_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "update_corporate_provider_connection_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "update_corporate_self_service_connection_connection_id",
      "type": "default",
      "value": "connection_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "update_corporate_self_service_connection_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "verify_checkout_webhook_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Generated from the canonical OpenAPI parameter.",
      "key": "verify_corporate_self_service_connection_connection_id",
      "type": "default",
      "value": "connection_00000000000000000000000000000000"
    },
    {
      "description": "Stable tenant-scoped command identity. An exact canonical replay returns the committed snapshot; changed evidence under the same key returns 409.",
      "key": "verify_corporate_self_service_connection_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque portable Evidence Pack identifier resolved only inside the bearer-bound tenant.",
      "key": "verify_developer_evidence_pack_pack_id",
      "type": "default",
      "value": "evidence_pack_00000000000000000000000000000000"
    },
    {
      "description": "Exact command identity; replay is allowed only for the same canonical request.",
      "key": "verify_sandbox_webhook_subscription_idempotency_key",
      "type": "default",
      "value": "idempotency_key_example"
    },
    {
      "description": "Opaque tenant-scoped sandbox Webhook Inbox subscription identifier.",
      "key": "verify_sandbox_webhook_subscription_subscription_id",
      "type": "default",
      "value": "webhook_subscription_00000000000000000000000000000000"
    }
  ]
}
