submit_presentation
Generate and submit verifiable presentations from evaluation results, ensuring compliance with DIF PEX v2.0 standards, holder binding, and proof generation for secure credential validation.
Instructions
Create and submit verifiable presentations from evaluation results. Builds presentations that satisfy DIF PEX v2.0 requirements with holder binding and proof generation.
Input Schema
Name | Required | Description | Default |
---|---|---|---|
challenge | No | Challenge for the presentation proof | |
credentials | Yes | ||
domain | No | Domain for the presentation proof | |
holderDid | No | DID of the presentation holder | |
presentationDefinition | Yes | DIF PEX Presentation Definition |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"definitions": {},
"properties": {
"challenge": {
"description": "Challenge for the presentation proof",
"type": "string"
},
"credentials": {
"items": {
"additionalProperties": true,
"description": "W3C Verifiable Credential",
"properties": {
"@context": {
"anyOf": [
{
"type": "string"
},
{
"items": {
"type": "string"
},
"type": "array"
}
]
},
"credentialStatus": {
"additionalProperties": true,
"properties": {},
"type": "object"
},
"credentialSubject": {
"anyOf": [
{
"additionalProperties": true,
"properties": {},
"type": "object"
},
{
"items": {
"additionalProperties": true,
"properties": {},
"type": "object"
},
"type": "array"
}
]
},
"expirationDate": {
"type": "string"
},
"id": {
"type": "string"
},
"issuanceDate": {
"type": "string"
},
"issuer": {
"anyOf": [
{
"type": "string"
},
{
"additionalProperties": true,
"properties": {},
"type": "object"
}
]
},
"proof": {
"anyOf": [
{
"additionalProperties": true,
"properties": {},
"type": "object"
},
{
"items": {
"additionalProperties": true,
"properties": {},
"type": "object"
},
"type": "array"
}
]
},
"type": {
"items": {
"type": "string"
},
"type": "array"
},
"validFrom": {
"type": "string"
},
"validUntil": {
"type": "string"
}
},
"required": [
"type",
"issuer",
"credentialSubject"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"domain": {
"description": "Domain for the presentation proof",
"type": "string"
},
"holderDid": {
"description": "DID of the presentation holder",
"type": "string"
},
"presentationDefinition": {
"additionalProperties": false,
"description": "DIF PEX Presentation Definition",
"properties": {
"id": {
"minLength": 1,
"type": "string"
},
"input_descriptors": {
"items": {
"additionalProperties": false,
"description": "DIF PEX Input Descriptor",
"properties": {
"constraints": {
"additionalProperties": false,
"description": "DIF PEX Constraints",
"properties": {
"fields": {
"items": {
"additionalProperties": false,
"description": "DIF PEX Field constraint",
"properties": {
"filter": {
"additionalProperties": true,
"properties": {},
"type": "object"
},
"name": {
"type": "string"
},
"path": {
"items": {
"type": "string"
},
"minItems": 1,
"type": "array"
},
"predicate": {
"enum": [
"required",
"preferred"
],
"type": "string"
},
"purpose": {
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
},
"type": "array"
},
"limit_disclosure": {
"enum": [
"required",
"preferred"
],
"type": "string"
},
"statuses": {
"additionalProperties": false,
"properties": {
"active": {
"additionalProperties": false,
"properties": {
"directive": {
"enum": [
"required",
"allowed",
"disallowed"
],
"type": "string"
}
},
"required": [
"directive"
],
"type": "object"
},
"revoked": {
"additionalProperties": false,
"properties": {
"directive": {
"enum": [
"required",
"allowed",
"disallowed"
],
"type": "string"
}
},
"required": [
"directive"
],
"type": "object"
},
"suspended": {
"additionalProperties": false,
"properties": {
"directive": {
"enum": [
"required",
"allowed",
"disallowed"
],
"type": "string"
}
},
"required": [
"directive"
],
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
},
"id": {
"minLength": 1,
"type": "string"
},
"name": {
"type": "string"
},
"purpose": {
"type": "string"
},
"schema": {
"items": {
"additionalProperties": false,
"properties": {
"required": {
"type": "boolean"
},
"uri": {
"format": "uri",
"type": "string"
}
},
"required": [
"uri"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"id"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"name": {
"type": "string"
},
"purpose": {
"type": "string"
},
"submission_requirements": {
"items": {
"additionalProperties": true,
"properties": {},
"type": "object"
},
"type": "array"
}
},
"required": [
"id",
"input_descriptors"
],
"type": "object"
}
},
"required": [
"presentationDefinition",
"credentials"
],
"type": "object"
}