vc.proto
path agntcy/identity/core/v1alpha1/vc.proto
package agntcy.identity.core.v1alpha1
Messages
BadgeClaims
BadgeClaims represents the content of a Badge VC defined [here] [here]: https://spec.identity.agntcy.org/docs/vc/intro/
| Name | Type | Description |
|---|---|---|
id | optional string | The ID as defined [here] [here]: https://www.w3.org/TR/vc-data-model/#credential-subject |
badge | optional string | The content of the badge |
CredentialContent
CredentialContent represents the content of a Verifiable Credential.
| Name | Type | Description |
|---|---|---|
content_type | optional CredentialContentType | Type specifies the type of the content of the credential. |
content | optional google.protobuf.Struct | The content representation in JSON-LD format. |
CredentialSchema
CredentialSchema represents the credentialSchema property of a Verifiable Credential. more information can be found [here] [here]: https://www.w3.org/TR/vc-data-model-2.0/#data-schemas
| Name | Type | Description |
|---|---|---|
type | optional string | Type specifies the type of the file |
id | optional string | The URL identifying the schema file |
CredentialStatus
CredentialStatus represents the credentialStatus property of a Verifiable Credential. more information can be found [here] [here]: https://www.w3.org/TR/vc-data-model-2.0/#status
| Name | Type | Description |
|---|---|---|
id | optional string | The URL identifying the schema file |
type | optional string | Type specifies the type of the file |
created_at | optional Time | The creation date and time of the status |
purpose | optional CredentialStatusPurpose | The value of the purpose for the status entry |
EnvelopedCredential
EnvelopedCredential represents a Credential enveloped in a specific format.
| Name | Type | Description |
|---|---|---|
envelope_type | optional CredentialEnvelopeType | EnvelopeType specifies the type of the envelope used to store the credential. |
value | optional string | Value is the enveloped credential in the specified format. |
Proof
A data integrity proof provides information about the proof mechanism, parameters required to verify that proof, and the proof value itself.
| Name | Type | Description |
|---|---|---|
type | optional string | The type of the proof |
proof_purpose | optional string | The proof purpose |
proof_value | optional string | The proof value |
Time
| Name | Type | Description |
|---|
VerifiableCredential
DataModel represents the W3C Verifiable Credential Data Model defined [here] [here]: https://www.w3.org/TR/vc-data-model/
| Name | Type | Description |
|---|---|---|
context | repeated string | https://www.w3.org/TR/vc-data-model/#contexts |
type | repeated string | https://www.w3.org/TR/vc-data-model/#dfn-type |
issuer | optional string | https://www.w3.org/TR/vc-data-model/#issuer |
content | optional google.protobuf.Struct | https://www.w3.org/TR/vc-data-model/#credential-subject |
id | optional string | https://www.w3.org/TR/vc-data-model/#identifiers |
issuance_date | optional string | https://www.w3.org/TR/vc-data-model/#issuance-date |
expiration_date | optional string | https://www.w3.org/TR/vc-data-model/#expiration |
credential_schema | repeated CredentialSchema | https://www.w3.org/TR/vc-data-model-2.0/#data-schemas |
credential_status | repeated CredentialStatus | https://www.w3.org/TR/vc-data-model-2.0/#status |
proof | optional Proof | https://w3id.org/security#proof |
VerifiablePresentation
DataModel represents the W3C Verifiable Presentation Data Model defined [here] [here]: https://www.w3.org/TR/vc-data-model/
| Name | Type | Description |
|---|---|---|
context | repeated string | https://www.w3.org/TR/vc-data-model/#contexts |
type | repeated string | https://www.w3.org/TR/vc-data-model/#dfn-type |
verifiable_credential | repeated VerifiableCredential | https://www.w3.org/2018/credentials#verifiableCredential |
proof | optional Proof | https://w3id.org/security#proof |
VerificationResult
The result returned from the verification process defined [here] [here]: https://www.w3.org/TR/vc-data-model-2.0/#verification
| Name | Type | Description |
|---|---|---|
status | optional bool | A boolean status |
document | optional VerifiableCredential | A conforming document which represents the Verifiable Credential |
media_type | optional string | The media type of the Verifiable Credential (ex: application/vc) |
controller | optional string | The controller of the verification method associated with the securing mechanism, usually it represents the issuer. |
controlled_identifier_document | optional string | A controlled identifier document that is associated with the verification method used to verify the securing mechanism (i,e the DID) |
warnings | repeated ErrorInfo | A list represents zero or more warnings generated by the verification process |
errors | repeated ErrorInfo | A list represents zero or more errors generated by the verification process |
Enums
CredentialContentType
The content of the Credential. Multiple content types can be supported: AgentBadge, etc.
| Name | Number | Description |
|---|---|---|
CREDENTIAL_CONTENT_TYPE_UNSPECIFIED | 0 | Unspecified Content Type. |
CREDENTIAL_CONTENT_TYPE_AGENT_BADGE | 1 | AgentBadge Content Type. The Agent content representation following a defined schema OASF: https://schema.oasf.agntcy.org/schema/objects/agent Google A2A: https://github.com/google/A2A/blob/main/specification/json/a2a.json |
CREDENTIAL_CONTENT_TYPE_MCP_BADGE | 2 | McpBadge Content Type. The MCP content representation following a defined schema The schema is defined in the MCP specification as the MCPServer type |
CredentialEnvelopeType
The Envelope Type of the Credential. Multiple envelope types can be supported: Embedded Proof, JOSE, COSE etc.
| Name | Number | Description |
|---|---|---|
CREDENTIAL_ENVELOPE_TYPE_UNSPECIFIED | 0 | Unspecified Envelope Type. |
CREDENTIAL_ENVELOPE_TYPE_EMBEDDED_PROOF | 1 | Embedded Proof Envelope Type. |
CREDENTIAL_ENVELOPE_TYPE_JOSE | 2 | JOSE Envelope Type. |
CredentialStatusPurpose
The purpose of the status entry
| Name | Number | Description |
|---|---|---|
CREDENTIAL_STATUS_PURPOSE_UNSPECIFIED | 0 | Unspecified status purpose |
CREDENTIAL_STATUS_PURPOSE_REVOCATION | 1 | Used to cancel the validity of a verifiable credential. This status is not reversible. |