API Get Privacy Data
Server-Side API endpoint to fetch Privacy Data
API endpoint to get PII data that has been granted to your dApp
GET
https://int.quadrata.com/api/v1/privacy/data/${account}
Path Parameters
Name
Type
Description
account*
User's wallet address
Query Parameters
Name
Type
Description
scopes
List[String]
Sparse privacy scopes to fetch
?scopes=FN,EM
If not provided, all granted scopes will be returned.
Use the scope, KYB_FULL
, to fetch all business information.
Headers
Name
Type
Description
Authorization*
Basic ${base64(apiKey)}
Date*
String
Date and time of current request
Wed, 04 Oct 2023 02:39:37 GMT
{
"data": {
"attributes": {
"ADR": {
"value": "address city state zip country"
},
"DOB": {
"value": "1985-02-28"
},
"EM": {
"value": "[email protected]"
},
"FN": {
"value": "FirstName"
},
"G": {
"value": "123-gov-id"
},
"GC": {
"value": "class"
},
"GE": {
"value": "2031-05-15"
},
"GI": {
"value": "2022-02-13"
},
"GIS": {
"value": "CA"
},
"GP": {
"value": {
"backPhoto": {
"byteSize": 248197,
"filename": "photo1.jpg",
"url": "https://..."
},
"frontPhoto": {
"byteSize": 2005573,
"filename": "photo2.jpg",
"url": "https://..."
}
}
},
"LN": {
"value": "LastName"
},
"MN": {
"value": "MiddleName"
},
},
"type": "privacy.data"
}
}
In order to authenticate properly with this endpoint, you must first request a Privacy Access Token.
Privacy Access Tokens are one time use tokens. Attempting to reuse an access token will return a 401 Unauthorized
response.
Example With Access Token
const buffer = require('buffer');
const privateKeyDer = '...';
// You can find `getPrivateKeyFromDer` in "How to sign API"."Full Example" page
const privateKey = await getPrivateKeyFromDer(privateKeyDer);
const walletAddress = '...';
// You can find `makeRequest` in "How to sign API"."Full Example" page
const accessResponse = await makeRequest({
method: 'get',
privateKey: privateKey,
path: `/api/v1/privacy/access/${walletAddress}`
});
const { data: { authToken, accessToken } } = accessResponse;
const xAccessToken = Buffer
.from(`${authToken}:${accessToken}`)
.toString('base64');
const walletAddress = '...';
const json = await makeRequest({
method: 'get',
privateKey: privateKey,
queryString: 'scopes=FN,EM', // sparse scopes (optional)
path: `/api/v1/privacy/data/${walletAddress}`,
extraHeaders: {
'X-Access-Token': xAccessToken
}
});
console.log(json.data.attributes);
Last updated