> For the complete documentation index, see [llms.txt](https://docs.finenex.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.finenex.net/authentication-apis.md).

# Authentication API

## Endpoint

> **Real Server :** [**https://auth.finenex.net/v2**](https://auth.finenex.net/v2)
>
> **Test Server :** [**https://test-auth.finenex.net/v2**](https://test-auth.finenex.net/v2)

## API References

### Authenticate

Log in using your ID and password.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/auth/auth-user" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `userType` is ignored. Currently it is not used.
* You can authenticate through `id` and `password`.
* If there is a `token` value, the token validity period can be extended.
* If successful, you get a new JWT `token`. It also receives basic user information, such as user `name`, `userId`, `telNo`, and `email`.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/auth/auth-user' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "id": "test",
  "password": "1111"
}'
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0Iiwicm9sZSI6IlJPTEVfVVNFUiIsImV4cCI6MTY2ODc3ODEwMCwidXNlciI6IjQ3MDA2MDM2NDRCNzAwMDQiLCJpYXQiOjE2NjYxODYxMDB9.QQ_J1KMG58wG5D4THOCoXHqQVNd2SQ8jXqwpUnqmavY",
  "userId": "test",
  "name": "Test User",
  "telNo": "12345678",
  "email": ""
}
```

{% endtab %}
{% endtabs %}

Log in using your VP (Verifiable Presentation).

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/auth/auth-user-with-vp" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* Put the VP body in `vp`.
* In case of the application's own login, `requestId` is not needed. `requestId` is required for web site login. When the web site shows the QR code through the browser, the user application reads this value, puts it in the `requetId`, and calls this API to log in to the web site.
* If successful, you get a new JWT `token`. It also receives basic user information, such as user `name`, `userId`, `telNo`, and `email`.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/auth/auth-user-with-vp' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "vp": {
    "verifiableCredential" : [ {
      "credentialSubject" : {
        "name" : "asd",
        "phone" : "432-4324",
        "sub" : "01022223333",
        "id" : "did:ethr:0xb80a41cd53c3a42faa5a5f58e61909e50df811e0"
      },
      "issuer" : {
        "id" : "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
      },
      "type" : [ "VerifiableCredential", "Profile" ],
      "@context" : [ "https://www.w3.org/2018/credentials/v1" ],
      "issuanceDate" : "2022-10-18T09:14:22.000Z",
      "proof" : {
        "type" : "JwtProof2020",
        "jwt" : "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJuYW1lIjoiYXNkIiwicGhvbmUiOiI0MzItNDMyNCIsInN1YiI6IjAxMDIyMjIzMzMzIn19LCJzdWIiOiJkaWQ6ZXRocjoweGI4MGE0MWNkNTNjM2E0MmZhYTVhNWY1OGU2MTkwOWU1MGRmODExZTAiLCJuYmYiOjE2NjYwODQ0NjIsImlzcyI6ImRpZDpldGhyOjB4ZDI4NGNkYzk2NGFmOGEwMWQ4MmQwY2FhN2RlZWJhODI3ODViNTRmNCJ9.PqUOVrxFI8Bmt2UKjJ2oF6oFNkV_0s9xzJczPwkDf8_fueJdBoK3OuOKnWPfS-wgSDTDMpyNlf_m27DoxvA1pA"
      }
    } ],
    "holder" : "did:ethr:0xb80a41cd53c3a42faa5a5f58e61909e50df811e0",
    "verifier" : [ "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4" ],
    "type" : [ "VerifiablePresentation", "VerifiableCredential", "Profile" ],
    "@context" : [ "https://www.w3.org/2018/credentials/v1" ],
    "issuanceDate" : "2022-10-18T09:14:26.000Z",
    "proof" : {
      "type" : "JwtProof2020",
      "jwt" : "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2cCI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iLCJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlByb2ZpbGUiXSwidmVyaWZpYWJsZUNyZWRlbnRpYWwiOlsiZXlKaGJHY2lPaUpGVXpJMU5rc2lMQ0owZVhBaU9pSktWMVFpZlEuZXlKMll5STZleUpBWTI5dWRHVjRkQ0k2V3lKb2RIUndjem92TDNkM2R5NTNNeTV2Y21jdk1qQXhPQzlqY21Wa1pXNTBhV0ZzY3k5Mk1TSmRMQ0owZVhCbElqcGJJbFpsY21sbWFXRmliR1ZEY21Wa1pXNTBhV0ZzSWl3aVVISnZabWxzWlNKZExDSmpjbVZrWlc1MGFXRnNVM1ZpYW1WamRDSTZleUp1WVcxbElqb2lZWE5rSWl3aWNHaHZibVVpT2lJME16SXRORE15TkNJc0luTjFZaUk2SWpBeE1ESXlNakl6TXpNekluMTlMQ0p6ZFdJaU9pSmthV1E2WlhSb2Nqb3dlR0k0TUdFME1XTmtOVE5qTTJFME1tWmhZVFZoTldZMU9HVTJNVGt3T1dVMU1HUm1PREV4WlRBaUxDSnVZbVlpT2pFMk5qWXdPRFEwTmpJc0ltbHpjeUk2SW1ScFpEcGxkR2h5T2pCNFpESTROR05rWXprMk5HRm1PR0V3TVdRNE1tUXdZMkZoTjJSbFpXSmhPREkzT0RWaU5UUm1OQ0o5LlBxVU9WcnhGSThCbXQyVUtqSjJvRjZvRk5rVl8wczl4ekpjelB3a0RmOF9mdWVKZEJvSzNPdU9LbldQZlMtd2dTRFRETXB5TmxmX20yN0RveHZBMXBBIl19LCJuYmYiOjE2NjYwODQ0NjYsImlzcyI6ImRpZDpldGhyOjB4YjgwYTQxY2Q1M2MzYTQyZmFhNWE1ZjU4ZTYxOTA5ZTUwZGY4MTFlMCIsImF1ZCI6WyJkaWQ6ZXRocjoweGQyODRjZGM5NjRhZjhhMDFkODJkMGNhYTdkZWViYTgyNzg1YjU0ZjQiXX0.fLwCJfdJdtZDtAm8jipG7EJ_Qyrv-03XmwGWnWOhyGg_XNFKX4K271HB2zkTIUbcbU8VavjlWMNlkuwEiV8Kog"
    }
  }
}'
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIwMTAyMjIyMzMzMyIsInJvbGUiOiJST0xFX1VTRVIiLCJleHAiOjE2Njg3Nzg5NzAsInVzZXIiOiI0NzAwNjBFRkNCRUMwMDJDIiwiaWF0IjoxNjY2MTg2OTcwfQ.h9bMc-mmswRcI8vLfl1E-a65hcIvqdKikcj_50ZOI8k",
  "userId": "01022223333",
  "name": "test1",
  "telNo": "01022223333",
  "email": ""
}
```

{% endtab %}
{% endtabs %}

The following **auth-user-by-app**, **cancel-auth-user-by-app**, and **auth-user-result-by-app** are provided for web site login. These APIs are used by the web server script.

<figure><img src="/files/02PNKOfmfM6U5OlOFutE" alt=""><figcaption></figcaption></figure>

Request DID login.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/auth/auth-user-by-app" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `requestId` is an identifier that identifies the web site. In general, you can use the site URL + "?".
* `waitTime` is the maximum waiting time for login.
* If successful, new `requestId` is issued. This value should be used to check if a user is logged in by the user application.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/auth/auth-user-by-app' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "requestId": "https://my.domain?",
  "waitTime": 60
}'
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "requestId": "https://my.domain?requestId=1666327791844_5954",
  "waitTime": 60
}
```

{% endtab %}
{% endtabs %}

Cancel the authentication request.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/auth/cancel-auth-user-by-app" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `requestId` is the id you want to cancel.
* `waitTime` is ignored.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/auth/cancel-auth-user-by-app' \
  -H 'accept: */*' \
  -H 'Content-Type: application/json' \
  -d '{
  "requestId": "https://my.domain?requestId=1666328121807_6979"
}'
```

{% endtab %}

{% tab title="Response" %}

```
200 OK.
```

{% endtab %}
{% endtabs %}

Check whether the login was successful.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/auth/auth-user-result-by-app" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `requestId` is the ID that checks the login success response.
* `waitTime` is ignored.
* If successful, you get a new JWT `token`. It also receives basic user information, such as user `name`, `userId`, `telNo`, and `email`.
* If there is no request or the request time is old, a 400 error occurs.
* If you're waiting for a response from your app, you'll get a 401 error.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/auth/auth-user-result-by-app' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "requestId": "https://my.domain?requestId=1666328121807_6979"
}'
```

{% endtab %}

{% tab title="Response" %}
Never requested:

```json
{
  "error": {
    "code": "400",
    "message": "Never requested or timeout"
  }
}
```

Waiting for response from user app:

```json
{
  "error": {
    "code": "401",
    "message": "Wait for response from user app"
  }
}
```

Log in normally:

```json
{
  "token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI3MDA1NTUwMDAyIiwicm9sZSI6IlJPTEVfVVNFUiIsImV4cCI6MTY2Njc2MDYzMiwidXNlciI6IjQ3MDA2MzRGQjBGNDAwMUQiLCJpYXQiOjE2NjYzMjg2MzJ9.ltpfbFuoWEtOJRXZLAyvh5T2ZhG4g1GPjr-VwKF1AMk",
  "userId": "7005550002",
  "name": "dhjeon",
  "telNo": null,
  "email": "aaa0002@a.com"
}
```

{% endtab %}
{% endtabs %}

### DID (Decentralized Identifier)

Create your DID.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/create-did" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `alias` is an alias for identifying a DID.
* Use the `address` and `secretKey` that came out when you create the address to authenticate yourself.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/did/create-did' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "alias": "4700634FB09E0019",
  "address": "0x38b45217e81548733f9fd7443ecfe4ea6b5725cf",
  "secretKey": "a728102d411b1871f7ae91505b4e1558"
}'
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "controllerKeyId": "0x38b45217e81548733f9fd7443ecfe4ea6b5725cf",
  "provider": "did:ethr",
  "keys": [
    {
      "kid": "0x38b45217e81548733f9fd7443ecfe4ea6b5725cf",
      "kms": "...",
      "type": "Secp256k1",
      "publicKeyHex": "0x38b45217e81548733f9fd7443ecfe4ea6b5725cf",
      "privateKeyHex": "",
      "meta": {
        "algorithms": [
          "ES256K",
          "ES256K-R",
          "eth_signTransaction",
          "eth_signTypedData",
          "eth_signMessage"
        ],
        "secretKey": "a728102d411b1871f7ae91505b4e1558"
      }
    }
  ],
  "alias": "4700634FB09E0019",
  "services": [],
  "did": "did:ethr:0x38b45217e81548733f9fd7443ecfe4ea6b5725cf"
}
```

{% endtab %}
{% endtabs %}

Create your VCs (Verifiable Credential).

Because this is the credentials used by this system, the JWT authenticated by /auth/auth-user in advance is required.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/create-vc" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `holder` is your issued DID.
* `issuer` is the issuer DID provided by this authentication system.
* Provides additional information to `userInfo` in key/value format.
* If successful, you will get your VC.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/did/create-vc' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0Iiwicm9sZSI6IlJPTEVfVVNFUiIsImV4cCI6MTY2ODkyMzY5MSwidXNlciI6IjQ3MDA2MDM2NDRCNzAwMDQiLCJpYXQiOjE2NjYzMzE2OTF9.c2BMNGbTUNV6HQAIBy9nHOTEK8nZOex1r-ntO3KLlNY' \
  -H 'Content-Type: application/json' \
  -d '{
  "holder": "did:ethr:0x38b45217e81548733f9fd7443ecfe4ea6b5725cf",
  "issuer": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4",
  "userInfo": {
     "name": "Hong"
  }
}'
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "credentialSubject": {
    "name": "Hong",
    "sub": "test",
    "id": "did:ethr:0x38b45217e81548733f9fd7443ecfe4ea6b5725cf"
  },
  "issuanceDate": "2022-10-21T05:56:06.000Z",
  "proof": {
    "type": "JwtProof2020",
    "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJuYW1lIjoiSG9uZyIsInN1YiI6InRlc3QifX0sInN1YiI6ImRpZDpldGhyOjB4MzhiNDUyMTdlODE1NDg3MzNmOWZkNzQ0M2VjZmU0ZWE2YjU3MjVjZiIsIm5iZiI6MTY2NjMzMTc2NiwiaXNzIjoiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0In0.IvrseTkX-lnadHg7TrPcBaTC5utYIr72nbQRgdNS_jwSPy4fypUxu7_2xaJw1IqHy71-uTp1B52hAz7ZeRb89g"
  },
  "type": [
    "VerifiableCredential",
    "Profile"
  ],
  "@context": [
    "https://www.w3.org/2018/credentials/v1"
  ],
  "issuer": {
    "id": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  }
}
```

{% endtab %}
{% endtabs %}

Verify the VC.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/verify-vc" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* The `body` of the request has the VC.
* If successful, `verified` is true.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/did/verify-vc' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "credentialSubject": {
    "name": "Hong",
    "sub": "test",
    "id": "did:ethr:0x38b45217e81548733f9fd7443ecfe4ea6b5725cf"
  },
  "issuanceDate": "2022-10-21T05:56:06.000Z",
  "proof": {
    "type": "JwtProof2020",
    "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJuYW1lIjoiSG9uZyIsInN1YiI6InRlc3QifX0sInN1YiI6ImRpZDpldGhyOjB4MzhiNDUyMTdlODE1NDg3MzNmOWZkNzQ0M2VjZmU0ZWE2YjU3MjVjZiIsIm5iZiI6MTY2NjMzMTc2NiwiaXNzIjoiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0In0.IvrseTkX-lnadHg7TrPcBaTC5utYIr72nbQRgdNS_jwSPy4fypUxu7_2xaJw1IqHy71-uTp1B52hAz7ZeRb89g"
  },
  "type": [
    "VerifiableCredential",
    "Profile"
  ],
  "@context": [
    "https://www.w3.org/2018/credentials/v1"
  ],
  "issuer": {
    "id": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  }
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "didResolutionResult": {
    "didDocumentMetadata": {},
    "didResolutionMetadata": {
      "contentType": "application/did+ld+json"
    },
    "didDocument": {
      "@context": [
        "https://www.w3.org/ns/did/v1",
        "https://w3id.org/security/suites/secp256k1recovery-2020/v2"
      ],
      "id": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4",
      "verificationMethod": [
        {
          "id": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4#controller",
          "type": "EcdsaSecp256k1RecoveryMethod2020",
          "controller": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4",
          "blockchainAccountId": "eip155:1:0xd284CDC964aF8a01d82D0cAA7DeeBA82785B54f4"
        }
      ],
      "authentication": [
        "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4#controller"
      ],
      "assertionMethod": [
        "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4#controller"
      ]
    }
  },
  "payload": {
    "vc": {
      "@context": [
        "https://www.w3.org/2018/credentials/v1"
      ],
      "type": [
        "VerifiableCredential",
        "Profile"
      ],
      "credentialSubject": {
        "name": "Hong",
        "sub": "test"
      }
    },
    "sub": "did:ethr:0x38b45217e81548733f9fd7443ecfe4ea6b5725cf",
    "nbf": 1666331766,
    "iss": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  },
  "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJuYW1lIjoiSG9uZyIsInN1YiI6InRlc3QifX0sInN1YiI6ImRpZDpldGhyOjB4MzhiNDUyMTdlODE1NDg3MzNmOWZkNzQ0M2VjZmU0ZWE2YjU3MjVjZiIsIm5iZiI6MTY2NjMzMTc2NiwiaXNzIjoiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0In0.IvrseTkX-lnadHg7TrPcBaTC5utYIr72nbQRgdNS_jwSPy4fypUxu7_2xaJw1IqHy71-uTp1B52hAz7ZeRb89g",
  "verified": true,
  "policies": {},
  "issuer": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4",
  "signer": {
    "id": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4#controller",
    "type": "EcdsaSecp256k1RecoveryMethod2020",
    "controller": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4",
    "blockchainAccountId": "eip155:1:0xd284CDC964aF8a01d82D0cAA7DeeBA82785B54f4"
  },
  "verifiableCredential": {
    "credentialSubject": {
      "name": "Hong",
      "sub": "test",
      "id": "did:ethr:0x38b45217e81548733f9fd7443ecfe4ea6b5725cf"
    },
    "issuer": {
      "id": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
    },
    "type": [
      "VerifiableCredential",
      "Profile"
    ],
    "@context": [
      "https://www.w3.org/2018/credentials/v1"
    ],
    "issuanceDate": "2022-10-21T05:56:06.000Z",
    "proof": {
      "type": "JwtProof2020",
      "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJuYW1lIjoiSG9uZyIsInN1YiI6InRlc3QifX0sInN1YiI6ImRpZDpldGhyOjB4MzhiNDUyMTdlODE1NDg3MzNmOWZkNzQ0M2VjZmU0ZWE2YjU3MjVjZiIsIm5iZiI6MTY2NjMzMTc2NiwiaXNzIjoiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0In0.IvrseTkX-lnadHg7TrPcBaTC5utYIr72nbQRgdNS_jwSPy4fypUxu7_2xaJw1IqHy71-uTp1B52hAz7ZeRb89g"
    }
  }
}
```

{% endtab %}
{% endtabs %}

Create your VP (Verifiable Presentation).

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/create-vp" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* `holder` is your DID.
* `verifier` is the verifier DID provided by this authentication system.
* `credentials` contains a list of VCs.
* If succesful, your VP is created.

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'POST' \
  '{endpoint}/did/create-vp' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "holder": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
  "verifier": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4",
  "credentials": [
  {
    "credentialSubject" : {
      "userId" : "sus",
      "name" : "ss",
      "phone" : "019-3992-6444",
      "birthdate" : "2022-10-19",
      "dRegNumber" : "ss",
      "sub" : "7005550002",
      "id" : "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9"
    },
    "issuer" : {
      "id" : "did:ethr:0xa3bbf50a3c3a4180521325cb99ea301142b3634e"
    },
    "type" : [ "VerifiableCredential", "Profile" ],
    "@context" : [ "https://www.w3.org/2018/credentials/v1" ],
    "issuanceDate" : "2022-10-19T10:42:13.000Z",
    "proof" : {
      "type" : "JwtProof2020",
      "jwt" : "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJ1c2VySWQiOiJzdXMiLCJuYW1lIjoic3MiLCJwaG9uZSI6IjAxOS0zOTkyLTY0NDQiLCJiaXJ0aGRhdGUiOiIyMDIyLTEwLTE5IiwiZFJlZ051bWJlciI6InNzIiwic3ViIjoiNzAwNTU1MDAwMiJ9fSwic3ViIjoiZGlkOmV0aHI6MHhhNTQ1NDVhNGU0NWNmNWEyMjk0Mzg2OTVjNmJlYTIzYzVkMTQxNGM5IiwibmJmIjoxNjY2MTc2MTMzLCJpc3MiOiJkaWQ6ZXRocjoweGEzYmJmNTBhM2MzYTQxODA1MjEzMjVjYjk5ZWEzMDExNDJiMzYzNGUifQ.LrTCG_SPXE-qpicQvTlaw666cmDpsZEILPpCAVRMBbjB-Yp-GMY0arqTxgc0rTRD3XlXV57JhCkZKYBZ261Dxg"
    }
  }  
  ]
}'
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "issuanceDate": "2022-10-21T06:16:23.000Z",
  "verifier": [
    "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  ],
  "holder": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
  "proof": {
    "type": "JwtProof2020",
    "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2cCI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iLCJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlByb2ZpbGUiXSwidmVyaWZpYWJsZUNyZWRlbnRpYWwiOlsiZXlKaGJHY2lPaUpGVXpJMU5rc2lMQ0owZVhBaU9pSktWMVFpZlEuZXlKMll5STZleUpBWTI5dWRHVjRkQ0k2V3lKb2RIUndjem92TDNkM2R5NTNNeTV2Y21jdk1qQXhPQzlqY21Wa1pXNTBhV0ZzY3k5Mk1TSmRMQ0owZVhCbElqcGJJbFpsY21sbWFXRmliR1ZEY21Wa1pXNTBhV0ZzSWl3aVVISnZabWxzWlNKZExDSmpjbVZrWlc1MGFXRnNVM1ZpYW1WamRDSTZleUoxYzJWeVNXUWlPaUp6ZFhNaUxDSnVZVzFsSWpvaWMzTWlMQ0p3YUc5dVpTSTZJakF4T1Mwek9Ua3lMVFkwTkRRaUxDSmlhWEowYUdSaGRHVWlPaUl5TURJeUxURXdMVEU1SWl3aVpGSmxaMDUxYldKbGNpSTZJbk56SWl3aWMzVmlJam9pTnpBd05UVTFNREF3TWlKOWZTd2ljM1ZpSWpvaVpHbGtPbVYwYUhJNk1IaGhOVFExTkRWaE5HVTBOV05tTldFeU1qazBNemcyT1RWak5tSmxZVEl6WXpWa01UUXhOR001SWl3aWJtSm1Jam94TmpZMk1UYzJNVE16TENKcGMzTWlPaUprYVdRNlpYUm9jam93ZUdFelltSm1OVEJoTTJNellUUXhPREExTWpFek1qVmpZams1WldFek1ERXhOREppTXpZek5HVWlmUS5MclRDR19TUFhFLXFwaWNRdlRsYXc2NjZjbURwc1pFSUxQcENBVlJNQmJqQi1ZcC1HTVkwYXJxVHhnYzByVFJEM1hsWFY1N0poQ2taS1lCWjI2MUR4ZyJdfSwibmJmIjoxNjY2MzMyOTgzLCJpc3MiOiJkaWQ6ZXRocjoweGE1NDU0NWE0ZTQ1Y2Y1YTIyOTQzODY5NWM2YmVhMjNjNWQxNDE0YzkiLCJhdWQiOlsiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0Il19.AjFvyK-4yYH7PHMZT2c-ZsBiquX8ZPZARwmMHcYNtkup15CqCgq1GFcQOWEtvDfwkj8abJH4kH4ffCreWR1tWQ"
  },
  "type": [
    "VerifiablePresentation",
    "VerifiableCredential",
    "Profile"
  ],
  "@context": [
    "https://www.w3.org/2018/credentials/v1"
  ],
  "verifiableCredential": [
    {
      "credentialSubject": {
        "userId": "sus",
        "name": "ss",
        "phone": "019-3992-6444",
        "birthdate": "2022-10-19",
        "dRegNumber": "ss",
        "sub": "7005550002",
        "id": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9"
      },
      "issuer": {
        "id": "did:ethr:0xa3bbf50a3c3a4180521325cb99ea301142b3634e"
      },
      "type": [
        "VerifiableCredential",
        "Profile"
      ],
      "@context": [
        "https://www.w3.org/2018/credentials/v1"
      ],
      "issuanceDate": "2022-10-19T10:42:13.000Z",
      "proof": {
        "type": "JwtProof2020",
        "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJ1c2VySWQiOiJzdXMiLCJuYW1lIjoic3MiLCJwaG9uZSI6IjAxOS0zOTkyLTY0NDQiLCJiaXJ0aGRhdGUiOiIyMDIyLTEwLTE5IiwiZFJlZ051bWJlciI6InNzIiwic3ViIjoiNzAwNTU1MDAwMiJ9fSwic3ViIjoiZGlkOmV0aHI6MHhhNTQ1NDVhNGU0NWNmNWEyMjk0Mzg2OTVjNmJlYTIzYzVkMTQxNGM5IiwibmJmIjoxNjY2MTc2MTMzLCJpc3MiOiJkaWQ6ZXRocjoweGEzYmJmNTBhM2MzYTQxODA1MjEzMjVjYjk5ZWEzMDExNDJiMzYzNGUifQ.LrTCG_SPXE-qpicQvTlaw666cmDpsZEILPpCAVRMBbjB-Yp-GMY0arqTxgc0rTRD3XlXV57JhCkZKYBZ261Dxg"
      }
    }
  ]
}
```

{% endtab %}
{% endtabs %}

Verify the VP

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/verify-vp" method="post" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

* The `body` of the request has the VP.
* If successful, `verified` is true.

#### Example

{% tabs %}
{% tab title="Request" %}

```json
{
  "issuanceDate": "2022-10-21T06:16:23.000Z",
  "verifier": [
    "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  ],
  "holder": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
  "proof": {
    "type": "JwtProof2020",
    "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2cCI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iLCJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlByb2ZpbGUiXSwidmVyaWZpYWJsZUNyZWRlbnRpYWwiOlsiZXlKaGJHY2lPaUpGVXpJMU5rc2lMQ0owZVhBaU9pSktWMVFpZlEuZXlKMll5STZleUpBWTI5dWRHVjRkQ0k2V3lKb2RIUndjem92TDNkM2R5NTNNeTV2Y21jdk1qQXhPQzlqY21Wa1pXNTBhV0ZzY3k5Mk1TSmRMQ0owZVhCbElqcGJJbFpsY21sbWFXRmliR1ZEY21Wa1pXNTBhV0ZzSWl3aVVISnZabWxzWlNKZExDSmpjbVZrWlc1MGFXRnNVM1ZpYW1WamRDSTZleUoxYzJWeVNXUWlPaUp6ZFhNaUxDSnVZVzFsSWpvaWMzTWlMQ0p3YUc5dVpTSTZJakF4T1Mwek9Ua3lMVFkwTkRRaUxDSmlhWEowYUdSaGRHVWlPaUl5TURJeUxURXdMVEU1SWl3aVpGSmxaMDUxYldKbGNpSTZJbk56SWl3aWMzVmlJam9pTnpBd05UVTFNREF3TWlKOWZTd2ljM1ZpSWpvaVpHbGtPbVYwYUhJNk1IaGhOVFExTkRWaE5HVTBOV05tTldFeU1qazBNemcyT1RWak5tSmxZVEl6WXpWa01UUXhOR001SWl3aWJtSm1Jam94TmpZMk1UYzJNVE16TENKcGMzTWlPaUprYVdRNlpYUm9jam93ZUdFelltSm1OVEJoTTJNellUUXhPREExTWpFek1qVmpZams1WldFek1ERXhOREppTXpZek5HVWlmUS5MclRDR19TUFhFLXFwaWNRdlRsYXc2NjZjbURwc1pFSUxQcENBVlJNQmJqQi1ZcC1HTVkwYXJxVHhnYzByVFJEM1hsWFY1N0poQ2taS1lCWjI2MUR4ZyJdfSwibmJmIjoxNjY2MzMyOTgzLCJpc3MiOiJkaWQ6ZXRocjoweGE1NDU0NWE0ZTQ1Y2Y1YTIyOTQzODY5NWM2YmVhMjNjNWQxNDE0YzkiLCJhdWQiOlsiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0Il19.AjFvyK-4yYH7PHMZT2c-ZsBiquX8ZPZARwmMHcYNtkup15CqCgq1GFcQOWEtvDfwkj8abJH4kH4ffCreWR1tWQ"
  },
  "type": [
    "VerifiablePresentation",
    "VerifiableCredential",
    "Profile"
  ],
  "@context": [
    "https://www.w3.org/2018/credentials/v1"
  ],
  "verifiableCredential": [
    {
      "credentialSubject": {
        "userId": "sus",
        "name": "ss",
        "phone": "019-3992-6444",
        "birthdate": "2022-10-19",
        "dRegNumber": "ss",
        "sub": "7005550002",
        "id": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9"
      },
      "issuer": {
        "id": "did:ethr:0xa3bbf50a3c3a4180521325cb99ea301142b3634e"
      },
      "type": [
        "VerifiableCredential",
        "Profile"
      ],
      "@context": [
        "https://www.w3.org/2018/credentials/v1"
      ],
      "issuanceDate": "2022-10-19T10:42:13.000Z",
      "proof": {
        "type": "JwtProof2020",
        "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJ1c2VySWQiOiJzdXMiLCJuYW1lIjoic3MiLCJwaG9uZSI6IjAxOS0zOTkyLTY0NDQiLCJiaXJ0aGRhdGUiOiIyMDIyLTEwLTE5IiwiZFJlZ051bWJlciI6InNzIiwic3ViIjoiNzAwNTU1MDAwMiJ9fSwic3ViIjoiZGlkOmV0aHI6MHhhNTQ1NDVhNGU0NWNmNWEyMjk0Mzg2OTVjNmJlYTIzYzVkMTQxNGM5IiwibmJmIjoxNjY2MTc2MTMzLCJpc3MiOiJkaWQ6ZXRocjoweGEzYmJmNTBhM2MzYTQxODA1MjEzMjVjYjk5ZWEzMDExNDJiMzYzNGUifQ.LrTCG_SPXE-qpicQvTlaw666cmDpsZEILPpCAVRMBbjB-Yp-GMY0arqTxgc0rTRD3XlXV57JhCkZKYBZ261Dxg"
      }
    }
  ]
}
```

{% endtab %}

{% tab title="Response" %}

```json
{
  "didResolutionResult": {
    "didDocumentMetadata": {},
    "didResolutionMetadata": {
      "contentType": "application/did+ld+json"
    },
    "didDocument": {
      "@context": [
        "https://www.w3.org/ns/did/v1",
        "https://w3id.org/security/suites/secp256k1recovery-2020/v2"
      ],
      "id": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
      "verificationMethod": [
        {
          "id": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9#controller",
          "type": "EcdsaSecp256k1RecoveryMethod2020",
          "controller": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
          "blockchainAccountId": "eip155:1:0xA54545a4e45CF5a229438695C6Bea23C5d1414c9"
        }
      ],
      "authentication": [
        "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9#controller"
      ],
      "assertionMethod": [
        "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9#controller"
      ]
    }
  },
  "verifiablePresentation": {
    "verifiableCredential": [
      {
        "credentialSubject": {
          "userId": "sus",
          "name": "ss",
          "phone": "019-3992-6444",
          "birthdate": "2022-10-19",
          "dRegNumber": "ss",
          "sub": "7005550002",
          "id": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9"
        },
        "issuer": {
          "id": "did:ethr:0xa3bbf50a3c3a4180521325cb99ea301142b3634e"
        },
        "type": [
          "VerifiableCredential",
          "Profile"
        ],
        "@context": [
          "https://www.w3.org/2018/credentials/v1"
        ],
        "issuanceDate": "2022-10-19T10:42:13.000Z",
        "proof": {
          "type": "JwtProof2020",
          "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJ1c2VySWQiOiJzdXMiLCJuYW1lIjoic3MiLCJwaG9uZSI6IjAxOS0zOTkyLTY0NDQiLCJiaXJ0aGRhdGUiOiIyMDIyLTEwLTE5IiwiZFJlZ051bWJlciI6InNzIiwic3ViIjoiNzAwNTU1MDAwMiJ9fSwic3ViIjoiZGlkOmV0aHI6MHhhNTQ1NDVhNGU0NWNmNWEyMjk0Mzg2OTVjNmJlYTIzYzVkMTQxNGM5IiwibmJmIjoxNjY2MTc2MTMzLCJpc3MiOiJkaWQ6ZXRocjoweGEzYmJmNTBhM2MzYTQxODA1MjEzMjVjYjk5ZWEzMDExNDJiMzYzNGUifQ.LrTCG_SPXE-qpicQvTlaw666cmDpsZEILPpCAVRMBbjB-Yp-GMY0arqTxgc0rTRD3XlXV57JhCkZKYBZ261Dxg"
        }
      }
    ],
    "holder": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
    "verifier": [
      "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
    ],
    "type": [
      "VerifiablePresentation",
      "VerifiableCredential",
      "Profile"
    ],
    "@context": [
      "https://www.w3.org/2018/credentials/v1"
    ],
    "issuanceDate": "2022-10-21T06:16:23.000Z",
    "proof": {
      "type": "JwtProof2020",
      "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2cCI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iLCJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlByb2ZpbGUiXSwidmVyaWZpYWJsZUNyZWRlbnRpYWwiOlsiZXlKaGJHY2lPaUpGVXpJMU5rc2lMQ0owZVhBaU9pSktWMVFpZlEuZXlKMll5STZleUpBWTI5dWRHVjRkQ0k2V3lKb2RIUndjem92TDNkM2R5NTNNeTV2Y21jdk1qQXhPQzlqY21Wa1pXNTBhV0ZzY3k5Mk1TSmRMQ0owZVhCbElqcGJJbFpsY21sbWFXRmliR1ZEY21Wa1pXNTBhV0ZzSWl3aVVISnZabWxzWlNKZExDSmpjbVZrWlc1MGFXRnNVM1ZpYW1WamRDSTZleUoxYzJWeVNXUWlPaUp6ZFhNaUxDSnVZVzFsSWpvaWMzTWlMQ0p3YUc5dVpTSTZJakF4T1Mwek9Ua3lMVFkwTkRRaUxDSmlhWEowYUdSaGRHVWlPaUl5TURJeUxURXdMVEU1SWl3aVpGSmxaMDUxYldKbGNpSTZJbk56SWl3aWMzVmlJam9pTnpBd05UVTFNREF3TWlKOWZTd2ljM1ZpSWpvaVpHbGtPbVYwYUhJNk1IaGhOVFExTkRWaE5HVTBOV05tTldFeU1qazBNemcyT1RWak5tSmxZVEl6WXpWa01UUXhOR001SWl3aWJtSm1Jam94TmpZMk1UYzJNVE16TENKcGMzTWlPaUprYVdRNlpYUm9jam93ZUdFelltSm1OVEJoTTJNellUUXhPREExTWpFek1qVmpZams1WldFek1ERXhOREppTXpZek5HVWlmUS5MclRDR19TUFhFLXFwaWNRdlRsYXc2NjZjbURwc1pFSUxQcENBVlJNQmJqQi1ZcC1HTVkwYXJxVHhnYzByVFJEM1hsWFY1N0poQ2taS1lCWjI2MUR4ZyJdfSwibmJmIjoxNjY2MzMyOTgzLCJpc3MiOiJkaWQ6ZXRocjoweGE1NDU0NWE0ZTQ1Y2Y1YTIyOTQzODY5NWM2YmVhMjNjNWQxNDE0YzkiLCJhdWQiOlsiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0Il19.AjFvyK-4yYH7PHMZT2c-ZsBiquX8ZPZARwmMHcYNtkup15CqCgq1GFcQOWEtvDfwkj8abJH4kH4ffCreWR1tWQ"
    }
  },
  "payload": {
    "vp": {
      "@context": [
        "https://www.w3.org/2018/credentials/v1"
      ],
      "type": [
        "VerifiablePresentation",
        "VerifiableCredential",
        "Profile"
      ],
      "verifiableCredential": [
        "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiUHJvZmlsZSJdLCJjcmVkZW50aWFsU3ViamVjdCI6eyJ1c2VySWQiOiJzdXMiLCJuYW1lIjoic3MiLCJwaG9uZSI6IjAxOS0zOTkyLTY0NDQiLCJiaXJ0aGRhdGUiOiIyMDIyLTEwLTE5IiwiZFJlZ051bWJlciI6InNzIiwic3ViIjoiNzAwNTU1MDAwMiJ9fSwic3ViIjoiZGlkOmV0aHI6MHhhNTQ1NDVhNGU0NWNmNWEyMjk0Mzg2OTVjNmJlYTIzYzVkMTQxNGM5IiwibmJmIjoxNjY2MTc2MTMzLCJpc3MiOiJkaWQ6ZXRocjoweGEzYmJmNTBhM2MzYTQxODA1MjEzMjVjYjk5ZWEzMDExNDJiMzYzNGUifQ.LrTCG_SPXE-qpicQvTlaw666cmDpsZEILPpCAVRMBbjB-Yp-GMY0arqTxgc0rTRD3XlXV57JhCkZKYBZ261Dxg"
      ]
    },
    "nbf": 1666332983,
    "iss": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
    "aud": [
      "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
    ]
  },
  "jwt": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2cCI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVQcmVzZW50YXRpb24iLCJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlByb2ZpbGUiXSwidmVyaWZpYWJsZUNyZWRlbnRpYWwiOlsiZXlKaGJHY2lPaUpGVXpJMU5rc2lMQ0owZVhBaU9pSktWMVFpZlEuZXlKMll5STZleUpBWTI5dWRHVjRkQ0k2V3lKb2RIUndjem92TDNkM2R5NTNNeTV2Y21jdk1qQXhPQzlqY21Wa1pXNTBhV0ZzY3k5Mk1TSmRMQ0owZVhCbElqcGJJbFpsY21sbWFXRmliR1ZEY21Wa1pXNTBhV0ZzSWl3aVVISnZabWxzWlNKZExDSmpjbVZrWlc1MGFXRnNVM1ZpYW1WamRDSTZleUoxYzJWeVNXUWlPaUp6ZFhNaUxDSnVZVzFsSWpvaWMzTWlMQ0p3YUc5dVpTSTZJakF4T1Mwek9Ua3lMVFkwTkRRaUxDSmlhWEowYUdSaGRHVWlPaUl5TURJeUxURXdMVEU1SWl3aVpGSmxaMDUxYldKbGNpSTZJbk56SWl3aWMzVmlJam9pTnpBd05UVTFNREF3TWlKOWZTd2ljM1ZpSWpvaVpHbGtPbVYwYUhJNk1IaGhOVFExTkRWaE5HVTBOV05tTldFeU1qazBNemcyT1RWak5tSmxZVEl6WXpWa01UUXhOR001SWl3aWJtSm1Jam94TmpZMk1UYzJNVE16TENKcGMzTWlPaUprYVdRNlpYUm9jam93ZUdFelltSm1OVEJoTTJNellUUXhPREExTWpFek1qVmpZams1WldFek1ERXhOREppTXpZek5HVWlmUS5MclRDR19TUFhFLXFwaWNRdlRsYXc2NjZjbURwc1pFSUxQcENBVlJNQmJqQi1ZcC1HTVkwYXJxVHhnYzByVFJEM1hsWFY1N0poQ2taS1lCWjI2MUR4ZyJdfSwibmJmIjoxNjY2MzMyOTgzLCJpc3MiOiJkaWQ6ZXRocjoweGE1NDU0NWE0ZTQ1Y2Y1YTIyOTQzODY5NWM2YmVhMjNjNWQxNDE0YzkiLCJhdWQiOlsiZGlkOmV0aHI6MHhkMjg0Y2RjOTY0YWY4YTAxZDgyZDBjYWE3ZGVlYmE4Mjc4NWI1NGY0Il19.AjFvyK-4yYH7PHMZT2c-ZsBiquX8ZPZARwmMHcYNtkup15CqCgq1GFcQOWEtvDfwkj8abJH4kH4ffCreWR1tWQ",
  "verified": true,
  "policies": {},
  "issuer": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
  "signer": {
    "id": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9#controller",
    "type": "EcdsaSecp256k1RecoveryMethod2020",
    "controller": "did:ethr:0xa54545a4e45cf5a229438695c6bea23c5d1414c9",
    "blockchainAccountId": "eip155:1:0xA54545a4e45CF5a229438695C6Bea23C5d1414c9"
  }
}
```

{% endtab %}
{% endtabs %}

List issuers and verifiers.

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/issuers" method="get" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

#### Example

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'GET' \
  '{endpoint}/did/issuers' \
  -H 'accept: application/json'
```

{% endtab %}

{% tab title="Response" %}

```json
[
  {
    "alias": "...",
    "did": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  },
  {
    "alias": "...",
    "did": "did:ethr:0xa3bbf50a3c3a4180521325cb99ea301142b3634e"
  }
]
```

{% endtab %}
{% endtabs %}

{% openapi src="/files/6b2YsvYVWqaNb0xcSpOv" path="/did/verifiers" method="get" %}
[pos-auth.yaml](https://1515857786-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5KMVYVhl4nQjYvpkUrV4%2Fuploads%2F7hSOMIww0qRCa8ClSYPH%2Fpos-auth.yaml?alt=media\&token=b1d46fab-41de-454d-9d21-3c8adf130e91)
{% endopenapi %}

#### Examples

{% tabs %}
{% tab title="Request" %}

```bash
curl -X 'GET' \
  '{endpoint}/did/verifiers' \
  -H 'accept: application/json'
```

{% endtab %}

{% tab title="Response" %}

```json
[
  {
    "alias": "...",
    "did": "did:ethr:0xd284cdc964af8a01d82d0caa7deeba82785b54f4"
  },
  {
    "alias": "...",
    "did": "did:ethr:0xa3bbf50a3c3a4180521325cb99ea301142b3634e"
  }
]
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.finenex.net/authentication-apis.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
