object — Additional properties rejected
| Field | Required at this level | Type | Description and constraints |
|---|---|---|---|
organizationId |
Yes | string |
— |
eventId |
Yes | string |
— |
recordType |
Yes | Constant PROPOSAL_WORKSPACE |
— |
recordId |
Yes | string |
— |
eventKind |
Yes | Constant PROPOSAL_SAFE_SUBMISSION_VERIFIED |
— |
payload |
Yes | object |
Additional properties rejected |
payload.schemaVersion |
Yes | Constant proposal-safe-submission-evidence-v1 |
— |
payload.proposalId |
Yes | string |
Max length: 180 |
payload.proposalPacketHash |
Yes | Hash | — |
payload.chainId |
Yes | integer |
Allowed: 677, 968 |
payload.safeAddress |
Yes | Address | — |
payload.target |
Yes | Address | — |
payload.value |
Yes | Constant 0 |
— |
payload.operation |
Yes | Constant 0 |
— |
payload.calldata |
Yes | string |
Pattern: ^0x(?:[0-9a-fA-F]{2})+$; Max length: 200000 |
payload.calldataHash |
Yes | Hash | — |
payload.decodedControllerExecution |
Yes | ControllerExecutionBindingV2 | — |
payload.decodedControllerExecutionHash |
Yes | Hash | — |
payload.transactionHash |
Yes | Hash | — |
payload.safeTransactionHash |
Yes | Hash | — |
payload.finalizedBlockNumber |
Yes | string |
Pattern: ^[0-9]+$ |
payload.finalizedBlockHash |
Yes | Hash | — |
payload.finalizedAt |
Yes | string |
Format: date-time |
payload.finalityDepth |
Yes | integer |
Minimum: 1; Maximum: 1000000 |
payload.receiptStatus |
Yes | Constant 1 |
— |
payload.executionResult |
Yes | object |
Additional properties rejected |
payload.executionResult.schemaVersion |
Yes | Constant canonical-evm-execution-result-v1 |
— |
payload.executionResult.executionSucceeded |
Yes | Constant true |
— |
payload.executionResult.returnDataHash |
Yes | Hash | — |
payload.executionResult.logsHash |
Yes | Hash | — |
payload.executionResult.stateDeltaHash |
Yes | Hash | — |
payload.executionResultHash |
Yes | Hash | — |
payload.finalityEvidenceHash |
Yes | Hash | — |
payload.reconciliationBlockNumber |
Yes | string |
Pattern: ^[0-9]+$ |
payload.reconciliationBlockHash |
Yes | Hash | — |
payload.reconciledAt |
Yes | string |
Format: date-time |
payload.reconciliationStatus |
Yes | Constant MATCHED |
— |
payload.reconciliationEvidenceHash |
Yes | Hash | — |
payload.safeVerificationId |
Yes | string |
— |
payload.safeVerificationEvidenceHash |
Yes | Hash | — |
payload.signedReleaseDigest |
No | Hash | — |
payload.vaultId |
Yes | string |
— |
payload.vaultDeploymentProvenanceHash |
Yes | Hash | — |
payload.vaultDeploymentBlockHash |
Yes | Hash | — |
payload.venueId |
Yes | string |
— |
payload.venueResourceVersion |
Yes | Hash | — |
payload.venueArtifactHash |
Yes | Hash | — |
payload.callerSuppliedTransactionHashAccepted |
Yes | Constant false |
— |
payload.executionPerformedByRoute |
Yes | Constant false |
— |
payload.checkedAt |
Yes | string |
Format: date-time |
artifactHash |
Yes | Hash | — |
createdBy |
Yes | string |
— |
actorRole |
Yes | string |
— |
reason |
Yes | string |
— |
requestId |
Yes | string |
— |
createdAt |
Yes | string |
Format: date-time |
Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.
Exact definition: #/components/schemas/ProposalReviewSafeSubmissionEvent in the OpenAPI contract.