Validators are servers that validate user interactions, manage and enforce policies, store user data and broadcast data to other validators for consumption. A network is formed by having multiple validators running and communicating to each other. Validators also pin transactions onchain for public validation and finality. Users can interact with validators to consume and issue data with ease through their GraphQL API. PDA data that is stored on the validator can be accessed (as long as the user has the correct permissions). Onchain data is also indexed and can be freely accessed through the API.Documentation Index
Fetch the complete documentation index at: https://gateway-draft.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Event Lifecycle
When users interact with the validator through the GraphQL API, it will validate the content of the request, as well as the permissions of the user over the data. The lifecycle of an event (for example, issue a PDA) looks like this:- The user authenticates to API by signing a message.
- The user chooses a schema that matches the claim body of the PDA.
- The user does an authenticated call to API passing the action and body of the request (issuePDA with claim body and data model ID).
- The validator checks if the user has permission over the data model.
- The validator checks if the claim body matches the data model schema.
- The validator encrypts the PDA data with the owner’s key.
- The validator stores the data encrypted at rest.
- The validator broadcasts the transaction on-chain.