{"adapterRegistryPath": "/api/web/v1/plugins/nails/crawl-adapters", "apiVersion": "openeyes.nails.web.v1", "contract": {"additionalProperties": false, "contractVersion": 1, "inputModes": ["inline_json", "path"], "name": "nails-crawl-exports-dry-run-request", "optionalFields": ["now"], "requiredFields": ["stateRoot", "objectRoot", "crawlExports"], "schemaDigest": "10eb58ad9c669f8de5605f6ecb39475f3b3c94fe81c8d719b2be873a532ac501", "schemaId": "https://openeyes.local/plugins/nails/web/v1/crawl-exports-dry-run-request.schema.json", "uniqueAdapterIds": true}, "crawlExportContractPath": "/api/web/v1/plugins/nails/crawl-export-contract", "dryRunPath": "/api/web/v1/plugins/nails/crawl-exports:dry-run", "method": "GET", "network": false, "ok": true, "pluginId": "nails", "responseLinks": {"authorizedSubmitPreviewRequest": {"approvalLedgerFallback": {"contractPath": "/api/web/v1/plugins/nails/online-pilot:approval-ledger-contract", "digestFields": ["authorizationRequirementsDigest", "approvalEvidencePolicyDigest", "nextGateRequestsDigest", "authorizationRequestBundleVerificationDigest"], "mode": "used_when_approvalEvidence_is_omitted", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:approval-ledger", "requiresStateRoot": true, "sourceField": "currentApprovalEvidence"}, "bodyFields": ["stateRoot", "payloadDigest", "approvalEvidence", "authorizationRequirementsDigest", "approvalEvidencePolicyDigest", "nextGateRequestsDigest", "authorizationRequestBundleVerificationDigest"], "bodyTemplate": {"approvalEvidence": "<online-pilot:evidence-packet.approvalEvidenceTemplate>", "approvalEvidencePolicyDigest": "<online-pilot:evidence-packet.approvalEvidencePolicyDigest>", "authorizationRequestBundleVerificationDigest": "<online-pilot:authorization-request-bundle-verify.verificationDigest>", "authorizationRequirementsDigest": "<online-pilot:evidence-packet.authorizationRequirementsDigest>", "nextGateRequestsDigest": "<online-pilot:evidence-packet.nextGateRequestsDigest>", "payloadDigest": "<payloadDigest>", "stateRoot": "<stateRoot>"}, "condition": "external_authorization_required_before_submit", "contractPath": "/api/web/v1/plugins/nails/online-pilot:authorized-submit-preview-contract", "deployEnabled": false, "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:authorized-submit-preview", "requiresStateRoot": true, "sourceFields": {"approvalEvidence": "online-pilot:evidence-packet.approvalEvidenceTemplate", "approvalEvidencePolicyDigest": "online-pilot:evidence-packet.approvalEvidencePolicyDigest", "authorizationRequestBundleVerificationDigest": "online-pilot:authorization-request-bundle-verify.verificationDigest", "authorizationRequirementsDigest": "online-pilot:evidence-packet.authorizationRequirementsDigest", "nextGateRequestsDigest": "online-pilot:evidence-packet.nextGateRequestsDigest", "payloadDigest": "online-pilot:review-package.payloadDigest", "stateRoot": "caller.localStateRoot"}, "submitEnabled": false, "uploadEnabled": false}, "designPackageRequest": {"bodyFields": ["stateDigest"], "condition": "when_verified_design_package_is_persisted", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/design-packages:get", "requiresStateRoot": true}, "designPackagesQueryRequest": {"bodyFields": [], "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/design-packages:query", "requiresStateRoot": true}, "maliangExportsQueryRequest": {"bodyFields": [], "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/maliang-exports:query", "requiresStateRoot": true}, "maliangHandoffPackageRequest": {"bodyFields": ["payloadDigest"], "condition": "when_maliang_export_record_is_persisted", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/maliang-exports:handoff-package", "requiresStateRoot": true}, "maliangReadinessRequest": {"bodyFields": ["payloadDigest"], "condition": "when_maliang_export_record_is_persisted", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/maliang-exports:readiness", "requiresStateRoot": true}, "onlinePilotReviewPackageRequest": {"bodyFields": ["payloadDigest"], "condition": "external_authorization_required_before_submit", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:review-package", "requiresStateRoot": true}, "submitGateReportRequest": {"bodyFields": ["payloadDigest"], "condition": "when_maliang_export_record_is_persisted", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/maliang-exports:submit-gate-report", "requiresStateRoot": true}}, "route": "/api/web/v1/plugins/nails/crawl-exports:dry-run-contract", "schema": {"$id": "https://openeyes.local/plugins/nails/web/v1/crawl-exports-dry-run-request.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": {"crawlExports": {"description": "Crawl exports must all be paths or all be inline crawl-export objects; adapterIds must be unique.", "items": {"anyOf": [{"minLength": 1, "type": "string"}, {"type": "object"}]}, "minItems": 1, "type": "array"}, "now": {"description": "Optional RFC3339 timestamp for deterministic dry-runs.", "type": "string"}, "objectRoot": {"description": "Local object root resolved under the repository root.", "minLength": 1, "type": "string"}, "stateRoot": {"description": "Local state root resolved under the repository root.", "minLength": 1, "type": "string"}}, "required": ["stateRoot", "objectRoot", "crawlExports"], "title": "Nails Crawl Exports Dry Run Request v1", "type": "object"}}