pub struct CredentialAccessNotarizationEnvelope {
pub aph_version: String,
pub context: Vec<String>,
pub type: Vec<String>,
pub id: String,
pub issuer: String,
pub valid_from: String,
pub valid_until: String,
pub credential_access_subject: CredentialAccessSubject,
pub linked_mandate: Option<LinkedMandate>,
pub proof: EnvelopeProof,
}Expand description
Top-level envelope for agent-credential-access authorization. Mirrors
the JSON-LD + W3C VC 2.0 shape of crate::envelope::NotarizationEnvelope
but with a credential-access subject in place of the message-send
subject.
The type array MUST include "VerifiableCredential" and
"AgentCredentialAccessAuthorization".
Fields§
§aph_version: StringAPH version pin ("0.1").
context: Vec<String>JSON-LD @context array. Always begins with W3C VC 2.0 context.
type: Vec<String>JSON-LD type array; MUST include "VerifiableCredential" and
"AgentCredentialAccessAuthorization".
id: Stringurn:uuid:... envelope identifier.
issuer: StringDID of the notary service.
valid_from: StringRFC 3339 issuance timestamp.
valid_until: StringRFC 3339 expiry timestamp.
credential_access_subject: CredentialAccessSubjectInner credential-access subject (the notarized claim).
linked_mandate: Option<LinkedMandate>Optional link to an AP2 IntentMandate (for cross-protocol mandates).
proof: EnvelopeProofCryptographic proof block (reuses the canonical APH proof shape).
Deliberately a SINGLE crate::envelope::EnvelopeProof, not the
crate::envelope::EnvelopeProofs object-or-array union: §7.1.11’s
proof-chain rules govern NotarizationEnvelope only, and this variant
is a spec v0.2 candidate. Widening it here would invent wire shapes no
normative text defines.