Skip to main content

Notices

Notices are informational statements that can be validated in the base layer blockchain.

1. Get Notice by Index

Retrieve a specific notice based on its index and associated input index.

query notice($noticeIndex: Int!, $inputIndex: Int!) {
notice(noticeIndex: $noticeIndex, inputIndex: $inputIndex) {
index
input {
index
timestamp
msgSender
blockNumber
}
payload
proof {
validity {
inputIndexWithinEpoch
outputIndexWithinInput
outputHashesRootHash
vouchersEpochRootHash
noticesEpochRootHash
machineStateHash
outputHashInOutputHashesSiblings
outputHashesInEpochSiblings
}
context
}
}
}

For notices, the API provides access to proof data that can be used for validation on the base layer blockchain. This proof data is accessible through the Proof field on notice objects.

Arguments

NameTypeDescription
noticeIndexInt!Index of the notice to retrieve.
inputIndexInt!Index of the input associated with the notice.

Response Type

Notice

2. Get Notices

Retrieve a list of notices with support for pagination.

query notices {
notices {
edges {
node {
index
input {
index
timestamp
msgSender
blockNumber
}
payload
}
}
}
}

Arguments

None

Response Type

NoticeConnection

3. Get Notices by Input

Retrieve notices associated with a specific input.

query noticesByInput($inputIndex: Int!) {
input(index: $inputIndex) {
notices {
edges {
node {
index
input {
index
timestamp
msgSender
blockNumber
}
payload
}
}
}
}
}

Arguments

NameTypeDescription
inputIndexInt!Index of the input to retrieve notices for.

Response Type

NoticeConnection

Examples

  1. Fetching a specific notice:
query {
notice(noticeIndex: 3, inputIndex: 2) {
index
payload
proof {
validity {
inputIndexWithinEpoch
outputIndexWithinInput
}
context
}
}
}
  1. Listing earlier(first 5) notices:
query {
notices(first: 5) {
edges {
node {
index
input {
index
timestamp
}
payload
}
cursor
}
pageInfo {
hasNextPage
endCursor
}
}
}
  1. Retrieving notices for a specific input:
query {
input(index: 10) {
notices(first: 3) {
edges {
node {
index
payload
}
cursor
}
pageInfo {
hasNextPage
endCursor
}
}
}
}

© 2024 Cartesi Foundation Ltd. All rights reserved.

The Cartesi Project is commissioned by the Cartesi Foundation.

We use cookies to ensure that we give you the best experience on our website. By using the website, you agree to the use of cookies.