Verifiable Presentation

Create a new authorisation request to start a verification process.

post

Endpoint facilitates the retrieval of a correlationId, definitionId, authStatusURIand authRequestURI. The correlationId is a unique identifier for the request. The definitionId is a name that's passed in the request and represents name of credential (characterCredential). The authStatusURI is a URI that shows where auth-status endpoint is located. The authRequestURI contains info that is put in QR data and is used to scan with mobile wallet app.


Claim-based access control: Verifier_Admin, Verifier_User

Authorizations
Path parameters
definitionIdstringRequired

The definitionId defines the credential to ask for, eg: emailCredential.The value should start with lowercase and continue using camelCase pattern.Must be one of the allowed definitions in the template endpoint.

Example: emailCredential
Responses
201
Successful response
application/json
post
POST /products/web/$IDENTITY_ENV_ID/verifier/api/private/verifiable-presentations/definition/{definitionId} HTTP/1.1
Host: identity.nchainplatform.com
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "correlationId": "f9dbff8e-6dba-4955-bd7f-61c083db290d",
  "definitionId": "emailCredential",
  "authRequestURI": "openid-vc://?request_uri=https%3A%2F%2Fverifier-api-url%2Fprivate%2Fsiop%2Fdefinitions%2FcharacterCredential%2Fauth-requests%2Fc35f4780-8570-4346-9252-6941747107b5",
  "authStatusURI": "https://verifier-api-url/private/verifiable-presentations/definition/:definitionId/correlation/:correlationId"
}

Get verifiable presentation

get

Retrieve a single verifiable presentation record


Claim-based access control: Verifier_Admin, Verifier_Auditor, Verifier_User

Authorizations
Path parameters
definitionIdstringRequired

The definitionId defines the credential to ask for, eg: emailCredential.The value should start with lowercase and continue using camelCase pattern.Must be one of the allowed definitions in the template endpoint.

Example: emailCredential
correlationIdstring · uuidRequired

A UUID value that is bound to the VP

Example: f9dbff8e-6dba-4955-bd7f-61c083db290d
Responses
200
OK
application/json
get
GET /products/web/$IDENTITY_ENV_ID/verifier/api/private/verifiable-presentations/definition/{definitionId}/correlation/{correlationId} HTTP/1.1
Host: identity.nchainplatform.com
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "correlationId": "f9dbff8e-6dba-4955-bd7f-61c083db290d",
  "definitionId": "emailCredential",
  "createdAt": "2025-06-20T05:44:26.055Z",
  "updatedAt": "2025-06-20T05:44:26.055Z",
  "deletedAt": "2025-06-20T05:44:26.055Z",
  "createdBy": "123e4567-e89b-12d3-a456-426614174000",
  "updatedBy": "123e4567-e89b-12d3-a456-426614174000",
  "deletedBy": "123e4567-e89b-12d3-a456-426614174000",
  "organisationDID": "text",
  "status": "created",
  "credentials": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "createdAt": "2025-06-20T05:44:26.055Z",
      "updatedAt": "2025-06-20T05:44:26.055Z",
      "deletedAt": "2025-06-20T05:44:26.055Z",
      "createdBy": "123e4567-e89b-12d3-a456-426614174000",
      "updatedBy": "123e4567-e89b-12d3-a456-426614174000",
      "deletedBy": "123e4567-e89b-12d3-a456-426614174000",
      "types": [
        "EmailCredential",
        "VerifiableCredential"
      ],
      "expirationDate": "2025-06-20T05:44:26.055Z",
      "issuanceDate": "2025-06-20T05:44:26.055Z",
      "issuer": "did:bsv:b04e2654c39dfb1a900128f698694591735661a0d972defcf63ac1f71cdfd882",
      "subject": "did:bsv:5f93a09f9dc79f5ac8dd701a612e3417612c669dda802b107545537c32f2b08b",
      "revoked": false,
      "claims": [
        {
          "id": "123e4567-e89b-12d3-a456-426614174000",
          "dataType": "string",
          "claimName": "fullName",
          "claimValue": "John Doe"
        }
      ]
    }
  ],
  "verifiedAt": "2025-06-20T05:44:26.055Z"
}

Get verifiable presentations

get

Retrieve a paginated response of verifiable presentations


Claim-based access control: Verifier_Admin, Verifier_Auditor, Verifier_User

Authorizations
Query parameters
pagenumberOptional

Page number to retrieve.If you provide invalid value the default page number will applied Example: 1 Default Value: 1

limitnumberOptional

Number of records per page. Example: 20 Default Value: 20 Max Value: 100

  If provided value is greater than max value, max value will be applied.
filter.correlationIdstring[]Optional

Filter by correlationId query param. Format: filter.correlationId={$not}:OPERATION:VALUE Example: filter.correlationId=$not:$like:John Doe&filter.correlationId=like:John Available Operations$eq

filter.definitionIdstring[]Optional

Filter by definitionId query param. Format: filter.definitionId={$not}:OPERATION:VALUE Example: filter.definitionId=$not:$like:John Doe&filter.definitionId=like:John Available Operations$eq

filter.createdBystring[]Optional

Filter by createdBy query param. Format: filter.createdBy={$not}:OPERATION:VALUE Example: filter.createdBy=$not:$like:John Doe&filter.createdBy=like:John Available Operations$eq

filter.modifiedBystring[]Optional

Filter by modifiedBy query param. Format: filter.modifiedBy={$not}:OPERATION:VALUE Example: filter.modifiedBy=$not:$like:John Doe&filter.modifiedBy=like:John Available Operations$eq

filter.createdAtstring[]Optional

Filter by createdAt query param. Format: filter.createdAt={$not}:OPERATION:VALUE Example: filter.createdAt=$not:$like:John Doe&filter.createdAt=like:John Available Operations$eq

filter.updatedAtstring[]Optional

Filter by updatedAt query param. Format: filter.updatedAt={$not}:OPERATION:VALUE Example: filter.updatedAt=$not:$like:John Doe&filter.updatedAt=like:John Available Operations$eq

filter.verifiedAtstring[]Optional

Filter by verifiedAt query param. Format: filter.verifiedAt={$not}:OPERATION:VALUE Example: filter.verifiedAt=$not:$like:John Doe&filter.verifiedAt=like:John Available Operations$eq

filter.statusstring[]Optional

Filter by status query param. Format: filter.status={$not}:OPERATION:VALUE Example: filter.status=$not:$like:John Doe&filter.status=like:John Available Operations$eq

filter.searchstring[]Optional

Filter by search query param. Format: filter.search={$not}:OPERATION:VALUE Example: filter.search=$not:$like:John Doe&filter.search=like:John Available Operations$fulltext

Responses
200Success
application/json
Responseall of
and
get
GET /products/web/$IDENTITY_ENV_ID/verifier/api/private/verifiable-presentations HTTP/1.1
Host: identity.nchainplatform.com
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "data": [
    {
      "correlationId": "f9dbff8e-6dba-4955-bd7f-61c083db290d",
      "definitionId": "emailCredential",
      "createdAt": "2025-06-20T05:44:26.055Z",
      "updatedAt": "2025-06-20T05:44:26.055Z",
      "deletedAt": "2025-06-20T05:44:26.055Z",
      "createdBy": "123e4567-e89b-12d3-a456-426614174000",
      "updatedBy": "123e4567-e89b-12d3-a456-426614174000",
      "deletedBy": "123e4567-e89b-12d3-a456-426614174000",
      "organisationDID": "text",
      "status": "created",
      "credentials": [
        {
          "id": "123e4567-e89b-12d3-a456-426614174000",
          "createdAt": "2025-06-20T05:44:26.055Z",
          "updatedAt": "2025-06-20T05:44:26.055Z",
          "deletedAt": "2025-06-20T05:44:26.055Z",
          "createdBy": "123e4567-e89b-12d3-a456-426614174000",
          "updatedBy": "123e4567-e89b-12d3-a456-426614174000",
          "deletedBy": "123e4567-e89b-12d3-a456-426614174000",
          "types": [
            "EmailCredential",
            "VerifiableCredential"
          ],
          "expirationDate": "2025-06-20T05:44:26.055Z",
          "issuanceDate": "2025-06-20T05:44:26.055Z",
          "issuer": "did:bsv:b04e2654c39dfb1a900128f698694591735661a0d972defcf63ac1f71cdfd882",
          "subject": "did:bsv:5f93a09f9dc79f5ac8dd701a612e3417612c669dda802b107545537c32f2b08b",
          "revoked": false,
          "claims": [
            {
              "id": "123e4567-e89b-12d3-a456-426614174000",
              "dataType": "string",
              "claimName": "fullName",
              "claimValue": "John Doe"
            }
          ]
        }
      ],
      "verifiedAt": "2025-06-20T05:44:26.055Z"
    }
  ],
  "meta": {
    "select": [
      "text"
    ],
    "filter": {
      "correlationId": "text",
      "definitionId": "text",
      "createdBy": "text",
      "modifiedBy": "text",
      "createdAt": "text",
      "updatedAt": "text",
      "verifiedAt": "text",
      "status": "text",
      "search": "text"
    }
  },
  "links": {
    "first": "text",
    "previous": "text",
    "current": "text",
    "next": "text",
    "last": "text"
  }
}

Verifiable presentation search history audit log pagination

get

Endpoint returns history of verifiable presentation search requests


Claim-based access control: Verifier_Admin, Verifier_Auditor, Verifier_User

Authorizations
Query parameters
pagenumberOptional

Page number to retrieve.If you provide invalid value the default page number will applied Example: 1 Default Value: 1

limitnumberOptional

Number of records per page. Example: 20 Default Value: 20 Max Value: 100

  If provided value is greater than max value, max value will be applied.
filter.createdBystring[]Optional

Filter by createdBy query param. Format: filter.createdBy={$not}:OPERATION:VALUE Example: filter.createdBy=$not:$like:John Doe&filter.createdBy=like:John Available Operations$eq

filter.updatedBystring[]Optional

Filter by updatedBy query param. Format: filter.updatedBy={$not}:OPERATION:VALUE Example: filter.updatedBy=$not:$like:John Doe&filter.updatedBy=like:John Available Operations$eq

filter.createdAtstring[]Optional

Filter by createdAt query param. Format: filter.createdAt={$not}:OPERATION:VALUE Example: filter.createdAt=$not:$like:John Doe&filter.createdAt=like:John Available Operations$gt

filter.updatedAtstring[]Optional

Filter by updatedAt query param. Format: filter.updatedAt={$not}:OPERATION:VALUE Example: filter.updatedAt=$not:$like:John Doe&filter.updatedAt=like:John Available Operations$gt

Responses
200Success
application/json
Responseall of
and
get
GET /products/web/$IDENTITY_ENV_ID/verifier/api/private/verifiable-presentations/search-history HTTP/1.1
Host: identity.nchainplatform.com
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "createdAt": "2025-06-20T05:44:26.055Z",
      "updatedAt": "2025-06-20T05:44:26.055Z",
      "deletedAt": "2025-06-20T05:44:26.055Z",
      "createdBy": "123e4567-e89b-12d3-a456-426614174000",
      "updatedBy": "123e4567-e89b-12d3-a456-426614174000",
      "deletedBy": "123e4567-e89b-12d3-a456-426614174000",
      "searchQuery": {
        "filter": {},
        "sortBy": [
          "text"
        ],
        "page": 1,
        "limit": 1,
        "path": "text"
      },
      "recordsFound": 1
    }
  ],
  "meta": {
    "select": [
      "text"
    ],
    "filter": {
      "createdBy": "text",
      "updatedBy": "text",
      "createdAt": "text",
      "updatedAt": "text"
    }
  },
  "links": {
    "first": "text",
    "previous": "text",
    "current": "text",
    "next": "text",
    "last": "text"
  }
}