submit_presentation
Generate and submit verifiable presentations using evaluation results, adhering to DIF PEX v2.0 standards with holder binding and proof generation.
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"
}