What is a DID?

A DID is a W3C standard and is defined as a new type of identifier that enables verifiable, decentralised digital identity. A DID refers to any subject (e.g., a person, organization, thing, data model, abstract entity, etc.) as determined by the controller of the DID. You can read more about this here.

❗️

To perform most of the API requests, you will have to know what the DID of your VASP is.


Finding a DID using the API

If you don't already have your vaspDID, you can call:

GET https://api.notabene.dev/auth/viewer

with the accessToken that you generated in the previous step to see information about the authenticated user: "role, jobTitle", name, email, vasps, role-permissions"

In "vasps" you will see the DID(s) of the VASP(s) that you have access to:

{
    "did": "did:ethr:0xefbb14b73473ccfd610543af4b1c8fda027c57bf", <-- this is your user's DID
    "fields": [
        {
            "fieldName": "role",
            "values": [
                {
                    "value": "admin",
                    "issuer": "did:ethr:0xc9dc97121e4d0ab0ec2b569c3a16858f5e309ef0",
                    "issuanceDate": "2022-04-05T08:11:56.000Z",
                    "expirationDate": null
                },
            ]
        },
        {
            "fieldName": "jobTitle",
            "values": [
                {
                    "value": "Solution Wizard",
                    "issuer": "did:ethr:0xefbb14b73473ccfd610543af4b1c8fda027c57bf",
                    "issuanceDate": "2022-04-04T10:04:37.000Z",
                    "expirationDate": null
                }
            ]
        },
        {
            "fieldName": "name",
            "values": [
                {
                    "value": "Christoffer Nilsvik",
                    "issuer": "did:ethr:0xefbb14b73473ccfd610543af4b1c8fda027c57bf",
                    "issuanceDate": "2022-04-04T10:04:37.000Z",
                    "expirationDate": null
                }
            ]
        },
        {
            "fieldName": "email",
            "values": [
                {
                    "value": "[email protected]",
                    "issuer": "did:ethr:0xefbb14b73473ccfd610543af4b1c8fda027c57bf",
                    "issuanceDate": "2022-02-09T11:09:29.000Z",
                    "expirationDate": null
                }
            ]
        }
    ],
    "vasps": [
            "did:ethr:0x940a4b2a0932733b842e4aa906761bb3d3bd8148" < -- this is your VASP's DID
    ],
    "roles": [
        {
            "vaspDID": "did:ethr:0x940a4b2a0932733b842e4aa906761bb3d3bd8148",
            "permissions": [
                "manage",
                "address.uploadAddressList",
                "address.registerCustomer",
                "auth.customerToken",
                "auth.addUserToVASP",
                "auth.removeUserFromVASP",
                "auth.vaspUsers",
                "auth.vaspAdminsUserInfo",
                "auth.newCustomer",
                "auth.getCustomer",
                "integrations.configChainalysis",
                "integrations.getChainalysis",
                "integrations.deleteChainalysis",
                "integrations.queryChainalysisAddress",
                "integrations.configElliptic",
                "integrations.getElliptic",
                "integrations.deleteElliptic",
                "integrations.queryEllipticAddress",
                "integrations.configBitgo",
                "integrations.getBitgo",
                "integrations.deleteBitgo",
                "integrations.getBitgoAddress",
                "integrations.configRefinitiv",
                "integrations.getRefinitiv",
                "integrations.deleteRefinitiv",
                "integrations.performScreeningCheckRefinitiv",
                "integrations.configTxNotification",
                "integrations.getTxNotification",
                "integrations.configTRM",
                "integrations.getTRM",
                "integrations.deleteTRM",
                "integrations.walletScreeningTRM",
                "integrations.configTRMSanctions",
                "integrations.getTRMSanctions",
                "integrations.deleteTRMSanctions",
                "integrations.sanctionsScreeningTRMSanctions",
                "integrations.configComplyAdvantage",
                "integrations.getComplyAdvantage",
                "integrations.deleteComplyAdvantage",
                "integrations.complyAdvantageSearch",
                "integrations.configAddressQueryWebhook",
                "integrations.deleteAddressQueryWebhook",
                "integrations.getThirdPartyProviders",
                "payment.subscribeTravelRule",
                "payment.subscriptionInfo",
                "rules.get",
                "rules.set",
                "transactions.create",
                "transactions.list",
                "transactions.info",
                "transactions.approve",
                "transactions.cancel",
                "transactions.update",
                "transactions.notify",
                "transactions.accept",
                "transactions.decline",
                "transactions.confirm",
                "transactions.reject",
                "transactions.query",
                "transactions.validateFull",
                "trustframework.listVASP",
                "trustframework.getVASP",
                "trustframework.updateVASP",
                "trustframework.uploadVASPDocument",
                "trustframework.approveDocumentRequest",
                "trustFramework.getVaspAnalytics"
            ]
        }
        }
    ]
}

📘

No information

If the call to authViewer doesn't return any specific details, make sure that your VASP has been created in the test directory.


Finding a DID using the UI


Finding a DID by searching the network

You can also search for a VASP in our network here and see the DID in the URL: https://app.notabene.dev/network/did:ethr:0x46a7ed5813ce735387df2bfb245bd7722e0de992/hello-crypto


What’s Next

Now that you have your accessToken and VASP DID, let's use those to generate a customerToken: