Klineo/Docs
Open app ↗

API schemas

ProjectControlProof

All API schemas

object — Additional properties rejected

Field Required at this level Type Description and constraints
challenge Yes object Additional properties rejected
challenge.organizationId Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
challenge.projectId Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
challenge.projectResourceVersion Yes string Pattern: ^0x[0-9a-f]{64}$
challenge.chainId Yes integer Maximum: 9007199254740991; Exclusive minimum: 0
challenge.genesisHash Yes string Pattern: ^0x[0-9a-f]{64}$
challenge.token Yes string Pattern: ^0x[0-9a-f]{40}$
challenge.schemaVersion Yes Constant project-control-challenge-v1 —
challenge.actorId Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
challenge.controller Yes string Pattern: ^0x[0-9a-f]{40}$
challenge.custodyAccount Yes string Pattern: ^0x[0-9a-f]{40}$
challenge.attestationHash Yes string Pattern: ^0x[0-9a-f]{64}$
challenge.nonce Yes string Pattern: ^0x[0-9a-f]{64}$
challenge.audience Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
challenge.deployment Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
challenge.purpose Yes Constant PROJECT_TREASURY_READ_ACCESS_ONLY —
challenge.issuedAt Yes integer Minimum: 0; Maximum: 9007199254740991
challenge.expiresAt Yes integer Minimum: 0; Maximum: 9007199254740991
identity Yes object Additional properties rejected
identity.payload Yes object Additional properties rejected
identity.payload.organizationId Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
identity.payload.projectId Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
identity.payload.projectResourceVersion Yes string Pattern: ^0x[0-9a-f]{64}$
identity.payload.chainId Yes integer Maximum: 9007199254740991; Exclusive minimum: 0
identity.payload.genesisHash Yes string Pattern: ^0x[0-9a-f]{64}$
identity.payload.token Yes string Pattern: ^0x[0-9a-f]{40}$
identity.payload.schemaVersion Yes Constant project-identity-attestation-v1 —
identity.payload.publisher Yes object Additional properties rejected
identity.payload.publisher.id Yes string Pattern: ^[a-zA-Z0-9][a-zA-Z0-9:_-]{2,159}$
identity.payload.publisher.resourceVersion Yes string Pattern: ^0x[0-9a-f]{64}$
identity.payload.controller Yes string Pattern: ^0x[0-9a-f]{40}$
identity.payload.issuedAt Yes integer Minimum: 0; Maximum: 9007199254740991
identity.payload.expiresAt Yes integer Minimum: 0; Maximum: 9007199254740991
identity.payloadHash Yes string Pattern: ^0x[0-9a-f]{64}$
identity.signature Yes string Pattern: ^[A-Za-z0-9+/]{86}==$
controllerSignature Yes string Pattern: ^0x(?:[0-9a-fA-F]{2}){1,8192}$
custodySignature Yes string Pattern: ^0x(?:[0-9a-fA-F]{2}){1,8192}$

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/ProjectControlProof in the OpenAPI contract.