Readiness
Readiness runs a number of application specific checks to see if all the relied upon services are healthy.
Responses
Response samples
- 200
{- "serviceStatuses": {
- "property1": {
- "message": "string",
- "status": "string"
}, - "property2": {
- "message": "string",
- "status": "string"
}
}, - "status": {
- "message": "string",
- "status": "string"
}
}
Get Credentials
Checks for the presence of a query parameter and calls the associated filtered get method. Only one parameter is allowed to be specified.
query Parameters
issuer | string Example: issuer=did:key:z6MkiTBz1ymuepAQ4HEHYSF1H8quG5GLVVQR3djdX3mDooWp The issuer id |
schema | string The credentialSchema.id value to filter by |
subject | string The credentialSubject.id value to filter by |
Responses
Response samples
- 200
- 400
- 500
{- "credentials": [
- {
- "credential": {
- "@context": null,
- "credentialSchema": {
- "id": "string",
- "type": "string"
}, - "credentialStatus": null,
- "credentialSubject": {
- "property1": null,
- "property2": null
}, - "evidence": [
- null
], - "expirationDate": "string",
- "id": "string",
- "issuanceDate": "string",
- "issuer": null,
- "proof": null,
- "refreshService": {
- "id": "string",
- "type": "string"
}, - "termsOfUse": [
- {
- "id": "string",
- "profile": "string",
- "prohibition": [
- {
- "action": [
- "string"
], - "assignee": "string",
- "assigner": "string",
- "target": "string"
}
], - "type": "string"
}
], - "type": null
}, - "credentialJWT": "string",
- "id": "string",
- "issuerKID": "string",
- "revoked": true,
- "suspended": true
}
]
}
Create Credential
Create a verifiable credential
Request Body schema: application/json
request body
@context | string A context is optional. If not present, we'll apply default, required context values. |
required | object Claims about the subject. The keys should be predicates (e.g. "alumniOf"), and the values can be any object. |
expiry | string Optional. Corresponds to |
issuer required | string The issuer id. |
issuerKid required | string The KID used to sign the credential |
revocable | boolean Whether this credential can be revoked. When true, the created VC will have the "credentialStatus" property set. |
schemaId | string A schema ID is optional. If present, we'll attempt to look it up and validate the data against it. |
subject required | string The subject id. |
suspendable | boolean Whether this credential can be suspended. When true, the created VC will have the "credentialStatus" property set. |
Responses
Request samples
- Payload
{- "@context": "string",
- "data": {
- "alumniOf": "did_for_uni"
}, - "expiry": "2020-01-01T19:23:24Z",
- "issuer": "did:key:z6MkiTBz1ymuepAQ4HEHYSF1H8quG5GLVVQR3djdX3mDooWp",
- "issuerKid": "#z6MkiTBz1ymuepAQ4HEHYSF1H8quG5GLVVQR3djdX3mDooWp",
- "revocable": true,
- "schemaId": "string",
- "subject": "did:key:z6MkiTBz1ymuepAQ4HEHYSF1H8quG5GLVVQR3djdX3mDooWp",
- "suspendable": true
}
Response samples
- 201
- 400
- 500
{- "credential": {
- "@context": null,
- "credentialSchema": {
- "id": "string",
- "type": "string"
}, - "credentialStatus": null,
- "credentialSubject": {
- "property1": null,
- "property2": null
}, - "evidence": [
- null
], - "expirationDate": "string",
- "id": "string",
- "issuanceDate": "string",
- "issuer": null,
- "proof": null,
- "refreshService": {
- "id": "string",
- "type": "string"
}, - "termsOfUse": [
- {
- "id": "string",
- "profile": "string",
- "prohibition": [
- {
- "action": [
- "string"
], - "assignee": "string",
- "assigner": "string",
- "target": "string"
}
], - "type": "string"
}
], - "type": null
}, - "credentialJwt": "string"
}
Response samples
- 200
- 400
- 500
{- "credential": {
- "@context": null,
- "credentialSchema": {
- "id": "string",
- "type": "string"
}, - "credentialStatus": null,
- "credentialSubject": {
- "property1": null,
- "property2": null
}, - "evidence": [
- null
], - "expirationDate": "string",
- "id": "string",
- "issuanceDate": "string",
- "issuer": null,
- "proof": null,
- "refreshService": {
- "id": "string",
- "type": "string"
}, - "termsOfUse": [
- {
- "id": "string",
- "profile": "string",
- "prohibition": [
- {
- "action": [
- "string"
], - "assignee": "string",
- "assigner": "string",
- "target": "string"
}
], - "type": "string"
}
], - "type": null
}, - "credentialJwt": "string",
- "id": "string"
}
Update Credential Status
Update a credential's status
Request Body schema: application/json
request body
revoked | boolean The new revoked status of this credential. The status will be saved in the encodedList of the StatusList2021 credential associated with this VC. |
suspended | boolean |
Responses
Request samples
- Payload
{- "revoked": true,
- "suspended": true
}
Response samples
- 201
- 400
- 500
{- "revoked": true,
- "suspended": true
}
Get Credential Status List
Get credential status list by id.
path Parameters
id required | string ID |
Responses
Response samples
- 200
- 400
- 500
{- "credential": {
- "@context": null,
- "credentialSchema": {
- "id": "string",
- "type": "string"
}, - "credentialStatus": null,
- "credentialSubject": {
- "property1": null,
- "property2": null
}, - "evidence": [
- null
], - "expirationDate": "string",
- "id": "string",
- "issuanceDate": "string",
- "issuer": null,
- "proof": null,
- "refreshService": {
- "id": "string",
- "type": "string"
}, - "termsOfUse": [
- {
- "id": "string",
- "profile": "string",
- "prohibition": [
- {
- "action": [
- "string"
], - "assignee": "string",
- "assigner": "string",
- "target": "string"
}
], - "type": "string"
}
], - "type": null
}, - "credentialJwt": "string",
- "id": "string"
}
Verify Credential
Verify a given credential by its id. The system does the following levels of verification:
- Makes sure the credential has a valid signature
- Makes sure the credential has is not expired
- Makes sure the credential complies with the VC Data Model
- If the credential has a schema, makes sure its data complies with the schema
Request Body schema: application/json
request body
object (credential.VerifiableCredential) | |
credentialJwt | string A JWT that encodes a credential. |
Responses
Request samples
- Payload
{- "credential": {
- "@context": null,
- "credentialSchema": {
- "id": "string",
- "type": "string"
}, - "credentialStatus": null,
- "credentialSubject": {
- "property1": null,
- "property2": null
}, - "evidence": [
- null
], - "expirationDate": "string",
- "id": "string",
- "issuanceDate": "string",
- "issuer": null,
- "proof": null,
- "refreshService": {
- "id": "string",
- "type": "string"
}, - "termsOfUse": [
- {
- "id": "string",
- "profile": "string",
- "prohibition": [
- {
- "action": [
- "string"
], - "assignee": "string",
- "assigner": "string",
- "target": "string"
}
], - "type": "string"
}
], - "type": null
}, - "credentialJwt": "string"
}
Response samples
- 200
- 400
- 500
{- "reason": "string",
- "verified": true
}
Get DIDs
Get DIDs by method. Checks for an optional "deleted=true" query parameter, which exclusively returns DIDs that have been "Soft Deleted".
query Parameters
deleted | boolean When true, returns soft-deleted DIDs. Otherwise, returns DIDs that have not been soft-deleted. Default is false. |
Request Body schema: application/json
request body
filter | string A standard filter expression conforming to https://google.aip.dev/160. Not implemented yet. |
Responses
Request samples
- Payload
{- "filter": "string"
}
Response samples
- 200
- 400
- 500
{- "dids": [
- {
- "@context": null,
- "alsoKnownAs": "string",
- "assertionMethod": [
- null
], - "authentication": [
- null
], - "capabilityDelegation": [
- null
], - "capabilityInvocation": [
- null
], - "controller": "string",
- "id": "string",
- "keyAgreement": [
- null
], - "service": [
- { }
], - "verificationMethod": [
- {
- "blockchainAccountId": "string",
- "controller": "string",
- "id": "string",
- "publicKeyBase58": "string",
- "publicKeyJwk": {
- "alg": "string",
- "crv": "string",
- "e": "string",
- "key_ops": "string",
- "kid": "string",
- "kty": "string",
- "n": "string",
- "use": "string",
- "x": "string",
- "y": "string"
}, - "publicKeyMultibase": "string",
- "type": "string"
}
]
}
]
}
Create DID Document
Creates a fully custodial DID document with the given method. The document created is stored internally and can be retrieved using the GetOperation. Method dependent registration (for example, DID web registration) is left up to the clients of this API. The private key(s) created by the method are stored internally never leave the service boundary.
path Parameters
method required | string Method |
Request Body schema: application/json
request body
keyType required | string Identifies the cryptographic algorithm family to use when generating this key. One of the following: "Ed25519", "X25519", "secp256k1", "P-224","P-256","P-384", "P-521", "RSA" |
options | any Options for creating the DID. Implementation dependent on the method. |
Responses
Request samples
- Payload
{- "keyType": "string",
- "options": null
}
Response samples
- 201
- 400
- 500
{- "did": {
- "@context": null,
- "alsoKnownAs": "string",
- "assertionMethod": [
- null
], - "authentication": [
- null
], - "capabilityDelegation": [
- null
], - "capabilityInvocation": [
- null
], - "controller": "string",
- "id": "string",
- "keyAgreement": [
- null
], - "service": [
- { }
], - "verificationMethod": [
- {
- "blockchainAccountId": "string",
- "controller": "string",
- "id": "string",
- "publicKeyBase58": "string",
- "publicKeyJwk": {
- "alg": "string",
- "crv": "string",
- "e": "string",
- "key_ops": "string",
- "kid": "string",
- "kty": "string",
- "n": "string",
- "use": "string",
- "x": "string",
- "y": "string"
}, - "publicKeyMultibase": "string",
- "type": "string"
}
]
}
}
Soft Delete DID
When this is called with the correct did method and id it will flip the softDelete flag to true for the db entry. A user can still get the did if they know the DID ID, and the did keys will still exist, but this did will not show up in the GetDIDsByMethod call This facilitates a clean SSI-Service Admin UI but not leave any hanging VCs with inaccessible hanging DIDs. Soft Deletes DID by method
path Parameters
method required | string Method |
id required | string ID |
Responses
Response samples
- 204
- 400
- 500
"string"
Get DID
Get DID by method
path Parameters
method required | string Method |
id required | string ID |
Request Body schema: application/json
request body
keyType required | string Identifies the cryptographic algorithm family to use when generating this key. One of the following: "Ed25519", "X25519", "secp256k1", "P-224","P-256","P-384", "P-521", "RSA" |
options | any Options for creating the DID. Implementation dependent on the method. |
Responses
Request samples
- Payload
{- "keyType": "string",
- "options": null
}
Response samples
- 200
- 400
{- "did": {
- "@context": null,
- "alsoKnownAs": "string",
- "assertionMethod": [
- null
], - "authentication": [
- null
], - "capabilityDelegation": [
- null
], - "capabilityInvocation": [
- null
], - "controller": "string",
- "id": "string",
- "keyAgreement": [
- null
], - "service": [
- { }
], - "verificationMethod": [
- {
- "blockchainAccountId": "string",
- "controller": "string",
- "id": "string",
- "publicKeyBase58": "string",
- "publicKeyJwk": {
- "alg": "string",
- "crv": "string",
- "e": "string",
- "key_ops": "string",
- "kid": "string",
- "kty": "string",
- "n": "string",
- "use": "string",
- "x": "string",
- "y": "string"
}, - "publicKeyMultibase": "string",
- "type": "string"
}
]
}
}
Resolve a DID
Resolve a DID that may not be stored in this service
path Parameters
id required | string ID |
Responses
Response samples
- 200
- 400
{- "didDocument": {
- "@context": null,
- "alsoKnownAs": "string",
- "assertionMethod": [
- null
], - "authentication": [
- null
], - "capabilityDelegation": [
- null
], - "capabilityInvocation": [
- null
], - "controller": "string",
- "id": "string",
- "keyAgreement": [
- null
], - "service": [
- { }
], - "verificationMethod": [
- {
- "blockchainAccountId": "string",
- "controller": "string",
- "id": "string",
- "publicKeyBase58": "string",
- "publicKeyJwk": {
- "alg": "string",
- "crv": "string",
- "e": "string",
- "key_ops": "string",
- "kid": "string",
- "kty": "string",
- "n": "string",
- "use": "string",
- "x": "string",
- "y": "string"
}, - "publicKeyMultibase": "string",
- "type": "string"
}
]
}, - "didDocumentMetadata": {
- "canonicalId": "string",
- "created": "string",
- "deactivated": true,
- "equivalentId": "string",
- "nextUpdate": "string",
- "nextVersionId": "string",
- "updated": "string",
- "versionId": "string"
}, - "didResolutionMetadata": {
- "contentType": "string",
- "error": {
- "code": "string",
- "invalidDid": true,
- "notFound": true,
- "representationNotSupported": true
}
}
}
Create issuance template
Create issuance template
Request Body schema: application/json
request body
credentialManifest required | string ID of the credential manifest that this template corresponds to. |
Array of objects (issuing.CredentialTemplate) Info required to create a credential from a credential application. | |
id | string ID of this template. |
issuer required | string ID of the issuer that will be issuing the credentials. |
issuerKid required | string ID of the key that will be used to sign the credentials. |
Responses
Request samples
- Payload
{- "credentialManifest": "string",
- "credentials": [
- {
- "credentialInputDescriptor": "string",
- "data": {
- "property1": null,
- "property2": null
}, - "expiry": {
- "duration": 0,
- "time": "string"
}, - "id": "string",
- "revocable": true,
- "schema": "string"
}
], - "id": "string",
- "issuer": "string",
- "issuerKid": "string"
}
Response samples
- 201
- 400
- 500
{- "credentialManifest": "string",
- "credentials": [
- {
- "credentialInputDescriptor": "string",
- "data": {
- "property1": null,
- "property2": null
}, - "expiry": {
- "duration": 0,
- "time": "string"
}, - "id": "string",
- "revocable": true,
- "schema": "string"
}
], - "id": "string",
- "issuer": "string",
- "issuerKid": "string"
}
Get issuance template
Get an issuance template by its id
path Parameters
id required | string ID |
Responses
Response samples
- 200
- 400
{- "credentialManifest": "string",
- "credentials": [
- {
- "credentialInputDescriptor": "string",
- "data": {
- "property1": null,
- "property2": null
}, - "expiry": {
- "duration": 0,
- "time": "string"
}, - "id": "string",
- "revocable": true,
- "schema": "string"
}
], - "id": "string",
- "issuer": "string",
- "issuerKid": "string"
}
Store Key
Stores a key to be used by the service
Request Body schema: application/json
request body
base58PrivateKey required | string Base58 encoding of the bytes that result from marshalling the private key using golang's implementation. |
controller required | |
id required | string The |
type required | string Identifies the cryptographic algorithm family used with the key. One of the following: "Ed25519", "X25519", "secp256k1", "P-224", "P-256", "P-384", "P-521", "RSA". |
Responses
Request samples
- Payload
{- "base58PrivateKey": "string",
- "controller": "string",
- "id": "string",
- "type": "string"
}
Response samples
- 400
- 500
"string"
Revoke Key
Marks the stored key as being revoked, along with the timestamps of when it was revoked. NB: the key can still be used for signing. This will likely be addressed before v1 is released.
path Parameters
id required | string ID of the key to revoke |
Responses
Response samples
- 400
- 500
"string"
Get manifests
Checks for the presence of a query parameter and calls the associated filtered get method
query Parameters
issuer | string string issuer |
schema | string string schema |
subject | string string subject |
Responses
Response samples
- 200
- 400
- 500
{- "manifests": [
- {
- "credential_manifest": {
- "description": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "id": "string",
- "issuer": {
- "id": "string",
- "name": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}, - "name": "string",
- "output_descriptors": [
- {
- "description": "string",
- "display": {
- "description": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "properties": [
- {
- "fallback": "string",
- "label": "string",
- "path": [
- null
], - "schema": {
- "format": null,
- "type": null
}, - "text": "string"
}
], - "subtitle": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "title": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
}, - "id": "string",
- "name": "string",
- "schema": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}
], - "presentation_definition": {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": null,
- "id": null,
- "intent_to_retain": null,
- "name": null,
- "optional": null,
- "path": [ ],
- "predicate": null,
- "purpose": null
}
], - "is_holder": [
- {
- "directive": null,
- "field_id": [ ]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": null,
- "field_id": [ ]
}
], - "statuses": {
- "active": {
- "directive": null
}, - "revoked": {
- "directive": null
}, - "suspended": {
- "directive": null
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- null
]
}, - "jwt_vc": {
- "alg": [
- null
]
}, - "jwt_vp": {
- "alg": [
- null
]
}, - "ldp": {
- "proof_type": [
- null
]
}, - "ldp_vc": {
- "proof_type": [
- null
]
}, - "ldp_vp": {
- "proof_type": [
- null
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}, - "spec_version": "string"
}, - "id": "string",
- "manifestJwt": "string"
}
]
}
Create manifest
Create manifest
Request Body schema: application/json
request body
description | string |
required | object (exchange.ClaimFormat) |
issuerDid required | string |
issuerKid required | string |
issuerName | string |
name | string |
required | Array of objects (manifest.OutputDescriptor) |
object (exchange.PresentationDefinition) |
Responses
Request samples
- Payload
{- "description": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "issuerDid": "string",
- "issuerKid": "string",
- "issuerName": "string",
- "name": "string",
- "outputDescriptors": [
- {
- "description": "string",
- "display": {
- "description": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "properties": [
- {
- "fallback": "string",
- "label": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
], - "subtitle": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "title": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
}, - "id": "string",
- "name": "string",
- "schema": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}
], - "presentationDefinition": {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- "string"
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}
}
Response samples
- 201
- 400
- 500
{- "credential_manifest": {
- "description": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "id": "string",
- "issuer": {
- "id": "string",
- "name": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}, - "name": "string",
- "output_descriptors": [
- {
- "description": "string",
- "display": {
- "description": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "properties": [
- {
- "fallback": "string",
- "label": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
], - "subtitle": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "title": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
}, - "id": "string",
- "name": "string",
- "schema": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}
], - "presentation_definition": {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- null
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}, - "spec_version": "string"
}, - "manifestJwt": "string"
}
Response samples
- 200
- 400
{- "credential_manifest": {
- "description": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "id": "string",
- "issuer": {
- "id": "string",
- "name": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}, - "name": "string",
- "output_descriptors": [
- {
- "description": "string",
- "display": {
- "description": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "properties": [
- {
- "fallback": "string",
- "label": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
], - "subtitle": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}, - "title": {
- "fallback": "string",
- "path": [
- "string"
], - "schema": {
- "format": "string",
- "type": "string"
}, - "text": "string"
}
}, - "id": "string",
- "name": "string",
- "schema": "string",
- "styles": {
- "background": {
- "color": "string"
}, - "hero": {
- "alt": "string",
- "uri": "string"
}, - "text": {
- "color": "string"
}, - "thumbnail": {
- "alt": "string",
- "uri": "string"
}
}
}
], - "presentation_definition": {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- null
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}, - "spec_version": "string"
}, - "id": "string",
- "manifestJwt": "string"
}
Response samples
- 200
- 500
{- "applications": [
- {
- "applicant": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "id": "string",
- "manifest_id": "string",
- "presentation_submission": {
- "definition_id": "string",
- "descriptor_map": [
- {
- "format": "string",
- "id": "string",
- "path": "string",
- "path_nested": { }
}
], - "id": "string"
}, - "spec_version": "string"
}
]
}
Submit application
Submit a credential application in response to a credential manifest. The request body is expected to
Request Body schema: application/json
request body
applicationJwt required | string Contains the following properties:
Application manifestsdk.CredentialApplication |
Responses
Request samples
- Payload
{- "applicationJwt": "string"
}
Response samples
- 201
- 400
- 500
{- "done": true,
- "id": "string",
- "result": {
- "error": "string",
- "response": null
}
}
Response samples
- 200
- 400
{- "application": {
- "applicant": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "id": "string",
- "manifest_id": "string",
- "presentation_submission": {
- "definition_id": "string",
- "descriptor_map": [
- {
- "format": "string",
- "id": "string",
- "path": "string",
- "path_nested": { }
}
], - "id": "string"
}, - "spec_version": "string"
}, - "id": "string"
}
Reviews an application
Reviewing an application either fulfills or denies the credential.
Request Body schema: application/json
request body
approved | boolean |
object Overrides to apply to the credentials that will be created. Keys are the ID that corresponds to an OutputDescriptor.ID from the manifest. | |
reason | string |
Responses
Request samples
- Payload
{- "approved": true,
- "credential_overrides": {
- "property1": {
- "data": {
- "property1": null,
- "property2": null
}, - "expiry": "string",
- "revocable": true
}, - "property2": {
- "data": {
- "property1": null,
- "property2": null
}, - "expiry": "string",
- "revocable": true
}
}, - "reason": "string"
}
Response samples
- 201
- 400
- 500
{- "credential_response": {
- "applicant": "string",
- "application_id": "string",
- "denial": {
- "input_descriptors": [
- "string"
], - "reason": "string"
}, - "fulfillment": {
- "descriptor_map": [
- {
- "format": "string",
- "id": "string",
- "path": "string",
- "path_nested": { }
}
]
}, - "id": "string",
- "manifest_id": "string",
- "spec_version": "string"
}, - "responseJwt": "string",
- "verifiableCredentials": [
- null
]
}
Get responses
Checks for the presence of a query parameter and calls the associated filtered get method
Responses
Response samples
- 200
- 500
{- "responses": [
- {
- "applicant": "string",
- "application_id": "string",
- "denial": {
- "input_descriptors": [
- "string"
], - "reason": "string"
}, - "fulfillment": {
- "descriptor_map": [
- {
- "format": "string",
- "id": "string",
- "path": "string",
- "path_nested": { }
}
]
}, - "id": "string",
- "manifest_id": "string",
- "spec_version": "string"
}
]
}
Response samples
- 200
- 400
- 500
{- "credential_response": {
- "applicant": "string",
- "application_id": "string",
- "denial": {
- "input_descriptors": [
- "string"
], - "reason": "string"
}, - "fulfillment": {
- "descriptor_map": [
- {
- "format": "string",
- "id": "string",
- "path": "string",
- "path_nested": { }
}
]
}, - "id": "string",
- "manifest_id": "string",
- "spec_version": "string"
}, - "responseJwt": "string",
- "verifiableCredentials": null
}
List operations
List operations according to the request
Request Body schema: application/json
request body
filter | string A standard filter expression conforming to https://google.aip.dev/160.
For example: |
parent | string The name of the parent's resource. For example: "/presentation/submissions". |
Responses
Request samples
- Payload
{- "filter": "string",
- "parent": "string"
}
Response samples
- 200
- 400
- 500
{- "operations": [
- {
- "done": true,
- "id": "string",
- "result": {
- "error": "string",
- "response": null
}
}
]
}
Create PresentationDefinition
Create presentation definition
Request Body schema: application/json
request body
author required | string DID of the author of this presentation definition. The DID must have been previously created with the DID API, or the PrivateKey must have been added independently. |
authorKid required | string The privateKey associated with the KID will be used to sign an envelope that contains the created presentation definition. |
object (exchange.ClaimFormat) | |
required | Array of objects (exchange.InputDescriptor) |
name | string |
purpose | string |
Array of objects (exchange.SubmissionRequirement) |
Responses
Request samples
- Payload
{- "author": "string",
- "authorKid": "string",
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "inputDescriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- "string"
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submissionRequirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}
Response samples
- 201
- 400
- 500
{- "presentation_definition": {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- "string"
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}, - "presentationDefinitionJWT": "string"
}
Get PresentationDefinition
Get a presentation definition by its ID
path Parameters
id required | string ID |
Responses
Response samples
- 200
- 400
{- "presentation_definition": {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- "string"
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}, - "presentationDefinitionJWT": "string"
}
List Presentation Definitions
Lists all the existing presentation definitions
Request Body schema: application/json
request body
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- 500
{- "definitions": [
- {
- "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "frame": null,
- "id": "string",
- "input_descriptors": [
- {
- "constraints": {
- "fields": [
- {
- "filter": {
- "additionalProperties": true,
- "allOf": null,
- "const": null,
- "enum": [
- null
], - "exclusiveMaximum": null,
- "exclusiveMinimum": null,
- "format": "string",
- "maxLength": 0,
- "maximum": null,
- "minLength": 0,
- "minimum": null,
- "not": null,
- "oneOf": null,
- "pattern": "string",
- "properties": null,
- "required": [
- null
], - "type": "string"
}, - "id": "string",
- "intent_to_retain": true,
- "name": "string",
- "optional": true,
- "path": [
- "string"
], - "predicate": "string",
- "purpose": "string"
}
], - "is_holder": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "limit_disclosure": "string",
- "same_subject": [
- {
- "directive": "string",
- "field_id": [
- "string"
]
}
], - "statuses": {
- "active": {
- "directive": "string"
}, - "revoked": {
- "directive": "string"
}, - "suspended": {
- "directive": "string"
}
}, - "subject_is_issuer": "string"
}, - "format": {
- "jwt": {
- "alg": [
- "string"
]
}, - "jwt_vc": {
- "alg": [
- "string"
]
}, - "jwt_vp": {
- "alg": [
- "string"
]
}, - "ldp": {
- "proof_type": [
- "string"
]
}, - "ldp_vc": {
- "proof_type": [
- "string"
]
}, - "ldp_vp": {
- "proof_type": [
- "string"
]
}
}, - "group": [
- "string"
], - "id": "string",
- "name": "string",
- "purpose": "string"
}
], - "name": "string",
- "purpose": "string",
- "submission_requirements": [
- {
- "count": 1,
- "from": "string",
- "from_nested": [
- { }
], - "max": 0,
- "min": 0,
- "name": "string",
- "purpose": "string",
- "rule": "string"
}
]
}
]
}
List Submissions
List existing submissions according to a filtering query. The filter
field follows the syntax described in https://google.aip.dev/160.
Request Body schema: application/json
request body
filter | string A standard filter expression conforming to https://google.aip.dev/160.
For example: |
Responses
Request samples
- Payload
{- "filter": "string"
}
Response samples
- 200
- 400
- 500
{- "submissions": [
- {
- "reason": "string",
- "status": "string",
- "verifiablePresentation": {
- "@context": null,
- "holder": "string",
- "id": "string",
- "presentation_submission": null,
- "proof": null,
- "type": null,
- "verifiableCredential": [
- null
]
}
}
]
}
Create Submission
Creates a submission in this server ready to be reviewed.
Request Body schema: application/json
request body
submissionJwt required | string Signed envelope that contains the PresentationDefinition created using the privateKey of the author of the definition. |
Responses
Request samples
- Payload
{- "submissionJwt": "string"
}
Response samples
- 201
- 400
- 500
{- "done": true,
- "id": "string",
- "result": {
- "error": "string",
- "response": null
}
}
Response samples
- 200
- 400
{- "reason": "string",
- "status": "string",
- "verifiablePresentation": {
- "@context": null,
- "holder": "string",
- "id": "string",
- "presentation_submission": null,
- "proof": null,
- "type": null,
- "verifiableCredential": [
- null
]
}
}
Review a pending submission
Reviews a pending submission. After this method is called, the operation with id==presentations/submissions/{submission_id}
will be updated with the result of this invocation.
Request Body schema: application/json
request body
approved required | boolean |
reason | string |
Responses
Request samples
- Payload
{- "approved": true,
- "reason": "string"
}
Response samples
- 200
- 400
- 500
{- "reason": "string",
- "status": "string",
- "verifiablePresentation": {
- "@context": null,
- "holder": "string",
- "id": "string",
- "presentation_submission": null,
- "proof": null,
- "type": null,
- "verifiableCredential": [
- null
]
}
}
Create SchemaID
Create schema
Request Body schema: application/json
request body
author required | string |
authorKid | string AuthorKID represents the KID of the author's private key to sign the schema. Required if sign is true. |
name required | string |
required | object (schema.JSONSchema) |
sign | boolean Sign represents whether the schema should be signed by the author. Default is false. If sign is true, the schema will be signed by the author's private key with the specified KID |
Responses
Request samples
- Payload
{- "author": "string",
- "authorKid": "string",
- "name": "string",
- "schema": {
- "property1": null,
- "property2": null
}, - "sign": true
}
Response samples
- 201
- 400
- 500
{- "id": "string",
- "schema": {
- "author": "string",
- "authored": "string",
- "id": "string",
- "name": "string",
- "schema": {
- "property1": null,
- "property2": null
}, - "type": "string",
- "version": "string"
}, - "schemaJwt": "string"
}
Response samples
- 200
- 400
{- "schema": {
- "author": "string",
- "authored": "string",
- "id": "string",
- "name": "string",
- "schema": {
- "property1": null,
- "property2": null
}, - "type": "string",
- "version": "string"
}, - "schemaJwt": "string"
}
Verify SchemaID
Verify a given schema by its id
Request Body schema: application/json
request body
schemaJwt required | string Signed envelope that contains the PresentationDefinition created using the privateKey of the author of the definition. |
Responses
Request samples
- Payload
{- "schemaJwt": "string"
}
Response samples
- 200
- 400
{- "reason": "string",
- "verified": true
}
Create Webhook
Create webhook
Request Body schema: application/json
request body
noun required | string The noun (entity) for the new webhook.eg: Credential |
url required | string The URL to post the output of this request to Noun.Verb action to. |
verb required | string The verb for the new webhook.eg: Create |
Responses
Request samples
- Payload
{- "noun": "string",
- "url": "string",
- "verb": "string"
}
Response samples
- 201
- 400
- 500
{- "webhook": {
- "noun": "string",
- "urls": [
- "string"
], - "verb": "string"
}
}