@cheqd/studio 3.6.10-develop.2 → 3.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controllers/api/account.js +1 -1
- package/dist/controllers/api/accreditation.d.ts +1 -1
- package/dist/controllers/api/accreditation.js +17 -17
- package/dist/controllers/api/credential-status.js +1 -1
- package/dist/controllers/api/presentation.js +1 -1
- package/dist/database/migrations/1750427001486-studio-migrations.d.ts.map +1 -1
- package/dist/database/migrations/1750427001486-studio-migrations.js +0 -2
- package/dist/database/migrations/1750427001486-studio-migrations.js.map +1 -1
- package/dist/services/api/accreditation.d.ts +1 -1
- package/dist/services/api/accreditation.js +7 -7
- package/dist/static/swagger-api.json +6 -6
- package/dist/types/accreditation.d.ts +4 -4
- package/dist/types/accreditation.js +2 -2
- package/dist/types/swagger-api-types.d.ts +5 -5
- package/dist/types/swagger-api-types.js +5 -5
- package/package.json +1 -1
|
@@ -120,7 +120,7 @@ export class AccountController {
|
|
|
120
120
|
async getIdToken(request, response) {
|
|
121
121
|
if (!request.user || !request.session.idToken) {
|
|
122
122
|
return response.status(StatusCodes.BAD_REQUEST).json({
|
|
123
|
-
error: 'Seems like
|
|
123
|
+
error: 'Seems like Authorization process was corrupted. Please contact administrator.',
|
|
124
124
|
});
|
|
125
125
|
}
|
|
126
126
|
const identityStrategySetup = new IdentityServiceStrategySetup(response.locals.customer.customerId);
|
|
@@ -21,7 +21,7 @@ export class AccreditationController {
|
|
|
21
21
|
query('accreditationType')
|
|
22
22
|
.exists()
|
|
23
23
|
.isIn([
|
|
24
|
-
AccreditationRequestType.
|
|
24
|
+
AccreditationRequestType.authorize,
|
|
25
25
|
AccreditationRequestType.accredit,
|
|
26
26
|
AccreditationRequestType.attest,
|
|
27
27
|
])
|
|
@@ -35,23 +35,23 @@ export class AccreditationController {
|
|
|
35
35
|
.custom((value) => typeof value === 'string' || (Array.isArray(value) && typeof value[0] === 'string'))
|
|
36
36
|
.withMessage('schema.types must be a string or a string array'),
|
|
37
37
|
body('parentAccreditation').optional().isString().withMessage('parentAccreditation must be a string').bail(),
|
|
38
|
-
body('
|
|
38
|
+
body('rootAuthorization').optional().isString().withMessage('rootAuthorization must be a string').bail(),
|
|
39
39
|
body('trustFramework').optional().isString().withMessage('trustFramework must be a string').bail(),
|
|
40
40
|
body('trustFrameworkId').optional().isString().withMessage('trustFrameworkId must be a string').bail(),
|
|
41
41
|
query('accreditationType')
|
|
42
42
|
.custom((value, { req }) => {
|
|
43
|
-
const { parentAccreditation,
|
|
44
|
-
const hasParentOrRoot = parentAccreditation ||
|
|
43
|
+
const { parentAccreditation, rootAuthorization, trustFramework, trustFrameworkId } = req.body;
|
|
44
|
+
const hasParentOrRoot = parentAccreditation || rootAuthorization;
|
|
45
45
|
if (!hasParentOrRoot &&
|
|
46
46
|
(value === AccreditationRequestType.accredit || value === AccreditationRequestType.attest)) {
|
|
47
|
-
throw new Error('parentAccreditation or
|
|
47
|
+
throw new Error('parentAccreditation or rootAuthorization is required');
|
|
48
48
|
}
|
|
49
|
-
if (hasParentOrRoot && value === AccreditationRequestType.
|
|
50
|
-
throw new Error('parentAccreditation or
|
|
49
|
+
if (hasParentOrRoot && value === AccreditationRequestType.authorize) {
|
|
50
|
+
throw new Error('parentAccreditation or rootAuthorization is not required for an authorize operation');
|
|
51
51
|
}
|
|
52
52
|
const hasTrustFramework = trustFramework && trustFrameworkId;
|
|
53
|
-
if (!hasTrustFramework && value === AccreditationRequestType.
|
|
54
|
-
throw new Error('trustFramework and trustFrameworkId are required for an
|
|
53
|
+
if (!hasTrustFramework && value === AccreditationRequestType.authorize) {
|
|
54
|
+
throw new Error('trustFramework and trustFrameworkId are required for an authorize operation');
|
|
55
55
|
}
|
|
56
56
|
return true;
|
|
57
57
|
})
|
|
@@ -121,7 +121,7 @@ export class AccreditationController {
|
|
|
121
121
|
* schema:
|
|
122
122
|
* type: string
|
|
123
123
|
* enum:
|
|
124
|
-
* -
|
|
124
|
+
* - authorize
|
|
125
125
|
* - accredit
|
|
126
126
|
* - attest
|
|
127
127
|
* required: true
|
|
@@ -159,7 +159,7 @@ export class AccreditationController {
|
|
|
159
159
|
if (typeof request.body['@context'] === 'string') {
|
|
160
160
|
request.body['@context'] = [request.body['@context']];
|
|
161
161
|
}
|
|
162
|
-
const { issuerDid, subjectDid, schemas, type, parentAccreditation,
|
|
162
|
+
const { issuerDid, subjectDid, schemas, type, parentAccreditation, rootAuthorization, trustFramework, trustFrameworkId, attributes, accreditationName, format, credentialStatus, } = request.body;
|
|
163
163
|
try {
|
|
164
164
|
// Validate issuer DID
|
|
165
165
|
const resolvedResult = await identityServiceStrategySetup.agent.resolve(issuerDid);
|
|
@@ -210,8 +210,8 @@ export class AccreditationController {
|
|
|
210
210
|
};
|
|
211
211
|
let resourceType;
|
|
212
212
|
switch (accreditationType) {
|
|
213
|
-
case AccreditationRequestType.
|
|
214
|
-
resourceType = DIDAccreditationTypes.
|
|
213
|
+
case AccreditationRequestType.authorize:
|
|
214
|
+
resourceType = DIDAccreditationTypes.VerifiableAuthorizationForTrustChain;
|
|
215
215
|
credentialRequest.type = [...(type || []), resourceType];
|
|
216
216
|
credentialRequest.termsOfUse = {
|
|
217
217
|
type: resourceType,
|
|
@@ -225,7 +225,7 @@ export class AccreditationController {
|
|
|
225
225
|
credentialRequest.termsOfUse = {
|
|
226
226
|
type: resourceType,
|
|
227
227
|
parentAccreditation,
|
|
228
|
-
|
|
228
|
+
rootAuthorization,
|
|
229
229
|
};
|
|
230
230
|
break;
|
|
231
231
|
case AccreditationRequestType.attest:
|
|
@@ -234,17 +234,17 @@ export class AccreditationController {
|
|
|
234
234
|
credentialRequest.termsOfUse = {
|
|
235
235
|
type: resourceType,
|
|
236
236
|
parentAccreditation,
|
|
237
|
-
|
|
237
|
+
rootAuthorization,
|
|
238
238
|
};
|
|
239
239
|
break;
|
|
240
240
|
}
|
|
241
241
|
// validate parent and root accreditations
|
|
242
242
|
if (accreditationType === AccreditationRequestType.accredit ||
|
|
243
243
|
accreditationType === AccreditationRequestType.attest) {
|
|
244
|
-
const result = await AccreditationService.instance.verify_accreditation(issuerDid, parentAccreditation, accreditedFor, true, false, response.locals.customer,
|
|
244
|
+
const result = await AccreditationService.instance.verify_accreditation(issuerDid, parentAccreditation, accreditedFor, true, false, response.locals.customer, rootAuthorization);
|
|
245
245
|
if (result.success === false) {
|
|
246
246
|
return response.status(result.status).send({
|
|
247
|
-
error: `Invalid Request: Root
|
|
247
|
+
error: `Invalid Request: Root Authorization or parent Accreditation is not valid: ${result.error}`,
|
|
248
248
|
});
|
|
249
249
|
}
|
|
250
250
|
}
|
|
@@ -967,7 +967,7 @@ export class CredentialStatusController {
|
|
|
967
967
|
return response.status(StatusCodes.UNAUTHORIZED).json({
|
|
968
968
|
checked: false,
|
|
969
969
|
error: `check: error: ${errorRef?.message
|
|
970
|
-
? '
|
|
970
|
+
? 'unauthorized: decryption conditions are not met'
|
|
971
971
|
: error.toString()}`,
|
|
972
972
|
});
|
|
973
973
|
// handle incorrect access control conditions
|
|
@@ -240,7 +240,7 @@ export class PresentationController {
|
|
|
240
240
|
if (errorRef?.errorCode === 'NodeAccessControlConditionsReturnedNotAuthorized')
|
|
241
241
|
return response.status(StatusCodes.UNAUTHORIZED).json({
|
|
242
242
|
error: `check: error: ${errorRef?.message
|
|
243
|
-
? '
|
|
243
|
+
? 'unauthorized: decryption conditions are not met'
|
|
244
244
|
: error.toString()}`,
|
|
245
245
|
});
|
|
246
246
|
// handle incorrect access control conditions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1750427001486-studio-migrations.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/1750427001486-studio-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE1D,qBAAa,6BAA8B,YAAW,kBAAkB;IACpE,IAAI,SAAkC;IAEzB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"1750427001486-studio-migrations.d.ts","sourceRoot":"","sources":["../../../src/database/migrations/1750427001486-studio-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE1D,qBAAa,6BAA8B,YAAW,kBAAkB;IACpE,IAAI,SAAkC;IAEzB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAK7D"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
export class StudioMigrations1750427001486 {
|
|
2
2
|
name = 'StudioMigrations1750427001486';
|
|
3
3
|
async up(queryRunner) {
|
|
4
|
-
await queryRunner.query(`ALTER TABLE "subscription" DROP CONSTRAINT "FK_4fb9a7c3c5b5fecf58989794dcc"`);
|
|
5
4
|
await queryRunner.query(`ALTER TABLE "role" ALTER COLUMN "logToRoleIds" SET DEFAULT '{}'`);
|
|
6
5
|
await queryRunner.query(`ALTER TABLE "payment" ALTER COLUMN "resourceId" DROP NOT NULL`);
|
|
7
6
|
}
|
|
8
7
|
async down(queryRunner) {
|
|
9
8
|
await queryRunner.query(`ALTER TABLE "payment" ALTER COLUMN "resourceId" SET NOT NULL`);
|
|
10
9
|
await queryRunner.query(`ALTER TABLE "role" ALTER COLUMN "logToRoleIds" SET DEFAULT ARRAY[]`);
|
|
11
|
-
await queryRunner.query(`ALTER TABLE "subscription" ADD CONSTRAINT "FK_4fb9a7c3c5b5fecf58989794dcc" FOREIGN KEY ("customerId") REFERENCES "customer"("customerId") ON DELETE CASCADE ON UPDATE NO ACTION`);
|
|
12
10
|
}
|
|
13
11
|
}
|
|
14
12
|
//# sourceMappingURL=1750427001486-studio-migrations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1750427001486-studio-migrations.js","sourceRoot":"","sources":["../../../src/database/migrations/1750427001486-studio-migrations.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,6BAA6B;IACtC,IAAI,GAAG,+BAA+B,CAAA;IAE/B,KAAK,CAAC,EAAE,CAAC,WAAwB;
|
|
1
|
+
{"version":3,"file":"1750427001486-studio-migrations.js","sourceRoot":"","sources":["../../../src/database/migrations/1750427001486-studio-migrations.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,6BAA6B;IACtC,IAAI,GAAG,+BAA+B,CAAA;IAE/B,KAAK,CAAC,EAAE,CAAC,WAAwB;QAEpC,MAAM,WAAW,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;QAC3F,MAAM,WAAW,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;IAC7F,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,WAAwB;QACtC,MAAM,WAAW,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QACxF,MAAM,WAAW,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAClG,CAAC;CAEJ"}
|
|
@@ -4,7 +4,7 @@ import { AccreditationSchemaType } from '../../types/accreditation.js';
|
|
|
4
4
|
import type { VerificationPolicies } from '@veramo/core';
|
|
5
5
|
export declare class AccreditationService {
|
|
6
6
|
static instance: AccreditationService;
|
|
7
|
-
verify_accreditation(subjectDid: string, didUrl: string, accreditedFor: AccreditationSchemaType[] | undefined, verifyStatus: boolean, allowDeactivatedDid: boolean, customer: CustomerEntity,
|
|
7
|
+
verify_accreditation(subjectDid: string, didUrl: string, accreditedFor: AccreditationSchemaType[] | undefined, verifyStatus: boolean, allowDeactivatedDid: boolean, customer: CustomerEntity, rootAuthorization?: string, policies?: VerificationPolicies): Promise<SafeAPIResponse<{
|
|
8
8
|
verified: boolean;
|
|
9
9
|
}>>;
|
|
10
10
|
}
|
|
@@ -4,7 +4,7 @@ import { IdentityServiceStrategySetup } from '../identity/index.js';
|
|
|
4
4
|
import { StatusCodes } from 'http-status-codes';
|
|
5
5
|
export class AccreditationService {
|
|
6
6
|
static instance = new AccreditationService();
|
|
7
|
-
async verify_accreditation(subjectDid, didUrl, accreditedFor = [], verifyStatus, allowDeactivatedDid, customer,
|
|
7
|
+
async verify_accreditation(subjectDid, didUrl, accreditedFor = [], verifyStatus, allowDeactivatedDid, customer, rootAuthorization, policies) {
|
|
8
8
|
// Get strategy e.g. postgres or local
|
|
9
9
|
const identityServiceStrategySetup = new IdentityServiceStrategySetup();
|
|
10
10
|
let accreditationUrl = didUrl;
|
|
@@ -59,7 +59,7 @@ export class AccreditationService {
|
|
|
59
59
|
policies,
|
|
60
60
|
}, customer);
|
|
61
61
|
if (!initialVerifyResult) {
|
|
62
|
-
initialVerifyResult = { ...verifyResult,
|
|
62
|
+
initialVerifyResult = { ...verifyResult, rootAuthorization };
|
|
63
63
|
}
|
|
64
64
|
if (verifyResult.error) {
|
|
65
65
|
return {
|
|
@@ -90,27 +90,27 @@ export class AccreditationService {
|
|
|
90
90
|
if (isTypeAccreditation === DIDAccreditationTypes.VerifiableAccreditationToAccredit ||
|
|
91
91
|
isTypeAccreditation === DIDAccreditationTypes.VerifiableAccreditationToAttest) {
|
|
92
92
|
const termsOfUse = accreditation.termsOfUse;
|
|
93
|
-
if (!termsOfUse || !termsOfUse.parentAccreditation || !termsOfUse.
|
|
93
|
+
if (!termsOfUse || !termsOfUse.parentAccreditation || !termsOfUse.rootAuthorization) {
|
|
94
94
|
return {
|
|
95
95
|
success: false,
|
|
96
96
|
status: StatusCodes.BAD_REQUEST,
|
|
97
97
|
data: initialVerifyResult,
|
|
98
|
-
error: `Error on verifying accreditation ${accreditationUrl}: Missing parentAccreditaiton and
|
|
98
|
+
error: `Error on verifying accreditation ${accreditationUrl}: Missing parentAccreditaiton and rootAuthorization in termsOfUse for accreditation: ${accreditationUrl}`,
|
|
99
99
|
};
|
|
100
100
|
}
|
|
101
101
|
const accreditorDid = typeof accreditation.issuer === 'string' ? accreditation.issuer : accreditation.issuer.id;
|
|
102
102
|
accreditationUrl = termsOfUse.parentAccreditation;
|
|
103
103
|
accreditedSubject = accreditorDid;
|
|
104
104
|
accreditedFor = accreditation.credentialSubject.accreditedFor;
|
|
105
|
-
if (
|
|
105
|
+
if (rootAuthorization && rootAuthorization !== termsOfUse.rootAuthorization) {
|
|
106
106
|
return {
|
|
107
107
|
status: StatusCodes.OK,
|
|
108
108
|
success: false,
|
|
109
109
|
data: initialVerifyResult,
|
|
110
|
-
error: `Error on verifying accreditation ${accreditationUrl}: Expected accreditation to be linked to root accreditation ${
|
|
110
|
+
error: `Error on verifying accreditation ${accreditationUrl}: Expected accreditation to be linked to root accreditation ${rootAuthorization}, but found it linked to DID ${termsOfUse.rootAuthorization} instead`,
|
|
111
111
|
};
|
|
112
112
|
}
|
|
113
|
-
|
|
113
|
+
rootAuthorization = termsOfUse.rootAuthorization;
|
|
114
114
|
}
|
|
115
115
|
else {
|
|
116
116
|
return {
|
|
@@ -557,16 +557,16 @@
|
|
|
557
557
|
"description": "DID URL of the parent Verifiable Accreditation, required for accredit/attest operation.",
|
|
558
558
|
"type": "string"
|
|
559
559
|
},
|
|
560
|
-
"
|
|
560
|
+
"rootAuthorization": {
|
|
561
561
|
"description": "DID URL of the root Verifiable Accreditation, required for accredit/attest operation.",
|
|
562
562
|
"type": "string"
|
|
563
563
|
},
|
|
564
564
|
"trustFramework": {
|
|
565
|
-
"description": "Name or Type of the Trust Framework, required for
|
|
565
|
+
"description": "Name or Type of the Trust Framework, required for authorize operation.",
|
|
566
566
|
"type": "string"
|
|
567
567
|
},
|
|
568
568
|
"trustFrameworkId": {
|
|
569
|
-
"description": "Url of the Trust Framework, required for
|
|
569
|
+
"description": "Url of the Trust Framework, required for authorize operation.",
|
|
570
570
|
"type": "string"
|
|
571
571
|
},
|
|
572
572
|
"type": {
|
|
@@ -702,11 +702,11 @@
|
|
|
702
702
|
}
|
|
703
703
|
],
|
|
704
704
|
"format": "jwt",
|
|
705
|
-
"accreditationName": "
|
|
705
|
+
"accreditationName": "authorizeAccreditation",
|
|
706
706
|
"trustFramework": "https://learn.cheqd.io/governance/start",
|
|
707
707
|
"trustFrameworkId": "cheqd Governance Framework",
|
|
708
708
|
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
|
|
709
|
-
"
|
|
709
|
+
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain",
|
|
710
710
|
"credentialStatus": {
|
|
711
711
|
"statusPurpose": "revocation",
|
|
712
712
|
"statusListName": "employee-credentials",
|
|
@@ -2512,7 +2512,7 @@
|
|
|
2512
2512
|
"schema": {
|
|
2513
2513
|
"type": "string",
|
|
2514
2514
|
"enum": [
|
|
2515
|
-
"
|
|
2515
|
+
"authorize",
|
|
2516
2516
|
"accredit",
|
|
2517
2517
|
"attest"
|
|
2518
2518
|
]
|
|
@@ -2,12 +2,12 @@ import { VerifiableCredential } from '@veramo/core';
|
|
|
2
2
|
import type { CredentialRequest, PublishRequest, VerifyCredentialRequestBody } from './credential';
|
|
3
3
|
import { BulkRevocationResult, BulkSuspensionResult, BulkUnsuspensionResult, RevocationResult, SuspensionResult, UnsuspensionResult } from '@cheqd/did-provider-cheqd/build/types';
|
|
4
4
|
export declare enum DIDAccreditationTypes {
|
|
5
|
-
|
|
5
|
+
VerifiableAuthorizationForTrustChain = "VerifiableAuthorizationForTrustChain",
|
|
6
6
|
VerifiableAccreditationToAccredit = "VerifiableAccreditationToAccredit",
|
|
7
7
|
VerifiableAccreditationToAttest = "VerifiableAccreditationToAttest"
|
|
8
8
|
}
|
|
9
9
|
export declare enum AccreditationRequestType {
|
|
10
|
-
|
|
10
|
+
authorize = "authorize",
|
|
11
11
|
accredit = "accredit",
|
|
12
12
|
attest = "attest"
|
|
13
13
|
}
|
|
@@ -24,13 +24,13 @@ export type DIDAccreditationRequestBody = Omit<CredentialRequest, 'attributes' |
|
|
|
24
24
|
accreditationName: string;
|
|
25
25
|
attributes?: Record<string, unknown>;
|
|
26
26
|
type: string[] | undefined;
|
|
27
|
-
|
|
27
|
+
rootAuthorization?: string;
|
|
28
28
|
parentAccreditation?: string;
|
|
29
29
|
trustFramework?: string;
|
|
30
30
|
trustFrameworkId?: string;
|
|
31
31
|
};
|
|
32
32
|
export type DIDAccreditationRequestParams = {
|
|
33
|
-
accreditationType: '
|
|
33
|
+
accreditationType: 'authorize' | 'accredit' | 'attest';
|
|
34
34
|
};
|
|
35
35
|
export interface DIDUrlParams {
|
|
36
36
|
didUrl?: string;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
// Enums
|
|
2
2
|
export var DIDAccreditationTypes;
|
|
3
3
|
(function (DIDAccreditationTypes) {
|
|
4
|
-
DIDAccreditationTypes["
|
|
4
|
+
DIDAccreditationTypes["VerifiableAuthorizationForTrustChain"] = "VerifiableAuthorizationForTrustChain";
|
|
5
5
|
DIDAccreditationTypes["VerifiableAccreditationToAccredit"] = "VerifiableAccreditationToAccredit";
|
|
6
6
|
DIDAccreditationTypes["VerifiableAccreditationToAttest"] = "VerifiableAccreditationToAttest";
|
|
7
7
|
})(DIDAccreditationTypes || (DIDAccreditationTypes = {}));
|
|
8
8
|
export var AccreditationRequestType;
|
|
9
9
|
(function (AccreditationRequestType) {
|
|
10
|
-
AccreditationRequestType["
|
|
10
|
+
AccreditationRequestType["authorize"] = "authorize";
|
|
11
11
|
AccreditationRequestType["accredit"] = "accredit";
|
|
12
12
|
AccreditationRequestType["attest"] = "attest";
|
|
13
13
|
})(AccreditationRequestType || (AccreditationRequestType = {}));
|
|
@@ -360,14 +360,14 @@
|
|
|
360
360
|
* parentAccreditation:
|
|
361
361
|
* description: DID URL of the parent Verifiable Accreditation, required for accredit/attest operation.
|
|
362
362
|
* type: string
|
|
363
|
-
*
|
|
363
|
+
* rootAuthorization:
|
|
364
364
|
* description: DID URL of the root Verifiable Accreditation, required for accredit/attest operation.
|
|
365
365
|
* type: string
|
|
366
366
|
* trustFramework:
|
|
367
|
-
* description: Name or Type of the Trust Framework, required for
|
|
367
|
+
* description: Name or Type of the Trust Framework, required for authorize operation.
|
|
368
368
|
* type: string
|
|
369
369
|
* trustFrameworkId:
|
|
370
|
-
* description: Url of the Trust Framework, required for
|
|
370
|
+
* description: Url of the Trust Framework, required for authorize operation.
|
|
371
371
|
* type: string
|
|
372
372
|
* type:
|
|
373
373
|
* description: Optional properties to be included in the `type` property of the Accreditation.
|
|
@@ -466,11 +466,11 @@
|
|
|
466
466
|
* - type: MuseumPassCredential
|
|
467
467
|
* url: https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018
|
|
468
468
|
* format: jwt
|
|
469
|
-
* accreditationName:
|
|
469
|
+
* accreditationName: authorizeAccreditation
|
|
470
470
|
* trustFramework: https://learn.cheqd.io/governance/start
|
|
471
471
|
* trustFrameworkId: cheqd Governance Framework
|
|
472
472
|
* parentAccreditation: did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit
|
|
473
|
-
*
|
|
473
|
+
* rootAuthorization: did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain
|
|
474
474
|
* credentialStatus:
|
|
475
475
|
* statusPurpose: revocation
|
|
476
476
|
* statusListName: employee-credentials
|
|
@@ -361,14 +361,14 @@
|
|
|
361
361
|
* parentAccreditation:
|
|
362
362
|
* description: DID URL of the parent Verifiable Accreditation, required for accredit/attest operation.
|
|
363
363
|
* type: string
|
|
364
|
-
*
|
|
364
|
+
* rootAuthorization:
|
|
365
365
|
* description: DID URL of the root Verifiable Accreditation, required for accredit/attest operation.
|
|
366
366
|
* type: string
|
|
367
367
|
* trustFramework:
|
|
368
|
-
* description: Name or Type of the Trust Framework, required for
|
|
368
|
+
* description: Name or Type of the Trust Framework, required for authorize operation.
|
|
369
369
|
* type: string
|
|
370
370
|
* trustFrameworkId:
|
|
371
|
-
* description: Url of the Trust Framework, required for
|
|
371
|
+
* description: Url of the Trust Framework, required for authorize operation.
|
|
372
372
|
* type: string
|
|
373
373
|
* type:
|
|
374
374
|
* description: Optional properties to be included in the `type` property of the Accreditation.
|
|
@@ -467,11 +467,11 @@
|
|
|
467
467
|
* - type: MuseumPassCredential
|
|
468
468
|
* url: https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018
|
|
469
469
|
* format: jwt
|
|
470
|
-
* accreditationName:
|
|
470
|
+
* accreditationName: authorizeAccreditation
|
|
471
471
|
* trustFramework: https://learn.cheqd.io/governance/start
|
|
472
472
|
* trustFrameworkId: cheqd Governance Framework
|
|
473
473
|
* parentAccreditation: did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit
|
|
474
|
-
*
|
|
474
|
+
* rootAuthorization: did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain
|
|
475
475
|
* credentialStatus:
|
|
476
476
|
* statusPurpose: revocation
|
|
477
477
|
* statusListName: employee-credentials
|