1id 0.5.0 → 0.8.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/LICENSE +0 -0
- package/README.md +0 -0
- package/dist/auth.d.ts +21 -13
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +128 -20
- package/dist/auth.js.map +1 -1
- package/dist/cli.d.ts +0 -0
- package/dist/cli.d.ts.map +0 -0
- package/dist/cli.js +0 -0
- package/dist/cli.js.map +0 -0
- package/dist/client.d.ts +5 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +9 -0
- package/dist/client.js.map +1 -1
- package/dist/credentialPointers.d.ts +99 -0
- package/dist/credentialPointers.d.ts.map +1 -0
- package/dist/credentialPointers.js +138 -0
- package/dist/credentialPointers.js.map +1 -0
- package/dist/credentials.d.ts +2 -4
- package/dist/credentials.d.ts.map +1 -1
- package/dist/credentials.js +3 -7
- package/dist/credentials.js.map +1 -1
- package/dist/devices.d.ts +76 -0
- package/dist/devices.d.ts.map +1 -0
- package/dist/devices.js +103 -0
- package/dist/devices.js.map +1 -0
- package/dist/enroll.d.ts +0 -0
- package/dist/enroll.d.ts.map +0 -0
- package/dist/enroll.js +0 -0
- package/dist/enroll.js.map +0 -0
- package/dist/exceptions.d.ts +15 -1
- package/dist/exceptions.d.ts.map +1 -1
- package/dist/exceptions.js +20 -1
- package/dist/exceptions.js.map +1 -1
- package/dist/helper.d.ts +0 -0
- package/dist/helper.d.ts.map +0 -0
- package/dist/helper.js +0 -0
- package/dist/helper.js.map +0 -0
- package/dist/identity.d.ts +0 -0
- package/dist/identity.d.ts.map +0 -0
- package/dist/identity.js +0 -0
- package/dist/identity.js.map +0 -0
- package/dist/index.d.ts +49 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +60 -25
- package/dist/index.js.map +1 -1
- package/dist/keys.d.ts +0 -0
- package/dist/keys.d.ts.map +0 -0
- package/dist/keys.js +0 -0
- package/dist/keys.js.map +0 -0
- package/dist/test/test_declared_enrollment.d.ts +0 -0
- package/dist/test/test_declared_enrollment.d.ts.map +0 -0
- package/dist/test/test_declared_enrollment.js +0 -0
- package/dist/test/test_declared_enrollment.js.map +0 -0
- package/dist/test/test_peer_verification.d.ts +15 -0
- package/dist/test/test_peer_verification.d.ts.map +1 -0
- package/dist/test/test_peer_verification.js +481 -0
- package/dist/test/test_peer_verification.js.map +1 -0
- package/dist/trustRoots.d.ts +38 -0
- package/dist/trustRoots.d.ts.map +1 -0
- package/dist/trustRoots.js +145 -0
- package/dist/trustRoots.js.map +1 -0
- package/dist/verify.d.ts +71 -0
- package/dist/verify.d.ts.map +1 -0
- package/dist/verify.js +315 -0
- package/dist/verify.js.map +1 -0
- package/dist/world.d.ts +83 -0
- package/dist/world.d.ts.map +1 -0
- package/dist/world.js +122 -0
- package/dist/world.js.map +1 -0
- package/package.json +1 -1
package/LICENSE
CHANGED
|
File without changes
|
package/README.md
CHANGED
|
File without changes
|
package/dist/auth.d.ts
CHANGED
|
@@ -1,31 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* OAuth2 token management for the 1id.com Node.js SDK.
|
|
3
3
|
*
|
|
4
|
-
* After enrollment, agents authenticate
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* -
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
4
|
+
* After enrollment, agents authenticate via hardware challenge-response
|
|
5
|
+
* (TPM for sovereign/virtual, PIV for portable) or OAuth2 client_credentials
|
|
6
|
+
* grant (declared tier only).
|
|
7
|
+
*
|
|
8
|
+
* SECURITY RULE: Hardware-tier identities NEVER fall back to bare
|
|
9
|
+
* client_credentials. If the hardware device is absent, get_token() throws
|
|
10
|
+
* HardwareDeviceNotPresentError. This is intentional: a stolen
|
|
11
|
+
* credentials.json is useless without the physical device.
|
|
12
12
|
*/
|
|
13
13
|
import { type StoredCredentials } from "./credentials.js";
|
|
14
14
|
import type { Token } from "./identity.js";
|
|
15
15
|
/**
|
|
16
16
|
* Get a valid OAuth2 access token, refreshing if needed.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
19
|
-
* the
|
|
20
|
-
*
|
|
18
|
+
* For hardware-backed tiers (sovereign, portable, virtual), this invokes
|
|
19
|
+
* the hardware challenge-response flow via the Go binary. The physical
|
|
20
|
+
* device must be present. If it is absent, HardwareDeviceNotPresentError
|
|
21
|
+
* is thrown -- there is NO fallback to bare client_credentials.
|
|
21
22
|
*
|
|
22
|
-
*
|
|
23
|
-
* are within 60s of expiry.
|
|
23
|
+
* For declared tier, the standard OAuth2 client_credentials grant is used.
|
|
24
24
|
*
|
|
25
25
|
* @param force_refresh If true, always fetch a new token even if cached.
|
|
26
26
|
* @param credentials Optional pre-loaded credentials.
|
|
27
27
|
* @returns A valid Token object.
|
|
28
28
|
* @throws NotEnrolledError if no credentials file exists.
|
|
29
|
+
* @throws HardwareDeviceNotPresentError if hardware tier and device is absent.
|
|
29
30
|
* @throws AuthenticationError if the token request fails.
|
|
30
31
|
* @throws NetworkError if the token endpoint cannot be reached.
|
|
31
32
|
*/
|
|
@@ -52,4 +53,11 @@ export declare function clear_cached_token(): void;
|
|
|
52
53
|
* @returns A valid Token object.
|
|
53
54
|
*/
|
|
54
55
|
export declare function authenticate_with_tpm(identity_id?: string | null, ak_handle?: string | null, api_base_url?: string | null, credentials?: StoredCredentials | null): Promise<Token>;
|
|
56
|
+
/**
|
|
57
|
+
* Authenticate using a PIV device (YubiKey) -- passwordless sign-in.
|
|
58
|
+
*
|
|
59
|
+
* Same challenge-response flow as TPM but uses PIV slot 9a ECDSA signing.
|
|
60
|
+
* No PIN, no elevation, no human interaction required.
|
|
61
|
+
*/
|
|
62
|
+
export declare function authenticate_with_piv(identity_id?: string | null, api_base_url?: string | null, credentials?: StoredCredentials | null): Promise<Token>;
|
|
55
63
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAY3C;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,SAAS,CAC7B,aAAa,GAAE,OAAe,EAC9B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CAqBhB;AA2ED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CA2FhB;AAGD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CA6EhB"}
|
package/dist/auth.js
CHANGED
|
@@ -1,57 +1,91 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* OAuth2 token management for the 1id.com Node.js SDK.
|
|
3
3
|
*
|
|
4
|
-
* After enrollment, agents authenticate
|
|
5
|
-
*
|
|
4
|
+
* After enrollment, agents authenticate via hardware challenge-response
|
|
5
|
+
* (TPM for sovereign/virtual, PIV for portable) or OAuth2 client_credentials
|
|
6
|
+
* grant (declared tier only).
|
|
6
7
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* - Authorization header formatting
|
|
8
|
+
* SECURITY RULE: Hardware-tier identities NEVER fall back to bare
|
|
9
|
+
* client_credentials. If the hardware device is absent, get_token() throws
|
|
10
|
+
* HardwareDeviceNotPresentError. This is intentional: a stolen
|
|
11
|
+
* credentials.json is useless without the physical device.
|
|
12
12
|
*/
|
|
13
13
|
import { load_credentials } from "./credentials.js";
|
|
14
|
-
import { AuthenticationError, NetworkError } from "./exceptions.js";
|
|
14
|
+
import { AuthenticationError, HardwareDeviceNotPresentError, NetworkError } from "./exceptions.js";
|
|
15
15
|
import { OneIDAPIClient } from "./client.js";
|
|
16
|
-
|
|
17
|
-
const TOKEN_REFRESH_MARGIN_MILLISECONDS = 60_000; // Refresh tokens 60s before expiry
|
|
16
|
+
const TOKEN_REFRESH_MARGIN_MILLISECONDS = 60_000;
|
|
18
17
|
const TOKEN_REQUEST_TIMEOUT_MILLISECONDS = 15_000;
|
|
19
|
-
|
|
18
|
+
const TIERS_REQUIRING_HARDWARE_AUTH = new Set(["sovereign", "portable", "virtual"]);
|
|
19
|
+
const TIERS_USING_TPM = new Set(["sovereign", "virtual"]);
|
|
20
|
+
const TIERS_USING_PIV = new Set(["portable"]);
|
|
20
21
|
let cached_token = null;
|
|
21
22
|
/**
|
|
22
23
|
* Get a valid OAuth2 access token, refreshing if needed.
|
|
23
24
|
*
|
|
24
|
-
*
|
|
25
|
-
* the
|
|
26
|
-
*
|
|
25
|
+
* For hardware-backed tiers (sovereign, portable, virtual), this invokes
|
|
26
|
+
* the hardware challenge-response flow via the Go binary. The physical
|
|
27
|
+
* device must be present. If it is absent, HardwareDeviceNotPresentError
|
|
28
|
+
* is thrown -- there is NO fallback to bare client_credentials.
|
|
27
29
|
*
|
|
28
|
-
*
|
|
29
|
-
* are within 60s of expiry.
|
|
30
|
+
* For declared tier, the standard OAuth2 client_credentials grant is used.
|
|
30
31
|
*
|
|
31
32
|
* @param force_refresh If true, always fetch a new token even if cached.
|
|
32
33
|
* @param credentials Optional pre-loaded credentials.
|
|
33
34
|
* @returns A valid Token object.
|
|
34
35
|
* @throws NotEnrolledError if no credentials file exists.
|
|
36
|
+
* @throws HardwareDeviceNotPresentError if hardware tier and device is absent.
|
|
35
37
|
* @throws AuthenticationError if the token request fails.
|
|
36
38
|
* @throws NetworkError if the token endpoint cannot be reached.
|
|
37
39
|
*/
|
|
38
40
|
export async function get_token(force_refresh = false, credentials) {
|
|
39
|
-
// Check if cached token is still valid (with margin)
|
|
40
41
|
if (!force_refresh && cached_token != null) {
|
|
41
42
|
const margin_adjusted_expiry = new Date(cached_token.expires_at.getTime() - TOKEN_REFRESH_MARGIN_MILLISECONDS);
|
|
42
43
|
if (new Date() < margin_adjusted_expiry) {
|
|
43
44
|
return cached_token;
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
|
-
// Load credentials
|
|
47
47
|
if (credentials == null) {
|
|
48
48
|
credentials = load_credentials();
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
if (TIERS_REQUIRING_HARDWARE_AUTH.has(credentials.trust_tier)) {
|
|
51
|
+
const token = await authenticate_with_hardware_challenge_response(credentials);
|
|
52
|
+
cached_token = token;
|
|
53
|
+
return token;
|
|
54
|
+
}
|
|
51
55
|
const token = await request_token_from_keycloak(credentials);
|
|
52
56
|
cached_token = token;
|
|
53
57
|
return token;
|
|
54
58
|
}
|
|
59
|
+
async function authenticate_with_hardware_challenge_response(credentials) {
|
|
60
|
+
if (TIERS_USING_TPM.has(credentials.trust_tier)) {
|
|
61
|
+
try {
|
|
62
|
+
return await authenticate_with_tpm(null, null, null, credentials);
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
if (error instanceof HardwareDeviceNotPresentError) {
|
|
66
|
+
throw error;
|
|
67
|
+
}
|
|
68
|
+
throw new HardwareDeviceNotPresentError(`TPM authentication failed and hardware is required for ` +
|
|
69
|
+
`${credentials.trust_tier} tier. Device may be absent or ` +
|
|
70
|
+
`inaccessible: ${error instanceof Error ? error.message : String(error)}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (TIERS_USING_PIV.has(credentials.trust_tier)) {
|
|
74
|
+
try {
|
|
75
|
+
return await authenticate_with_piv(null, null, credentials);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
if (error instanceof HardwareDeviceNotPresentError) {
|
|
79
|
+
throw error;
|
|
80
|
+
}
|
|
81
|
+
throw new HardwareDeviceNotPresentError(`PIV authentication failed and hardware is required for ` +
|
|
82
|
+
`${credentials.trust_tier} tier. YubiKey may be absent or ` +
|
|
83
|
+
`inaccessible: ${error instanceof Error ? error.message : String(error)}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
throw new HardwareDeviceNotPresentError(`Trust tier '${credentials.trust_tier}' requires hardware but no ` +
|
|
87
|
+
`supported authentication method is available.`);
|
|
88
|
+
}
|
|
55
89
|
/**
|
|
56
90
|
* Request a new access token from Keycloak using client_credentials grant.
|
|
57
91
|
*/
|
|
@@ -124,12 +158,12 @@ export async function authenticate_with_tpm(identity_id, ak_handle, api_base_url
|
|
|
124
158
|
if (api_base_url == null) {
|
|
125
159
|
api_base_url = credentials.api_base_url;
|
|
126
160
|
}
|
|
127
|
-
// Step 1: Request a challenge nonce from the server
|
|
128
161
|
const api_client = new OneIDAPIClient(api_base_url, TOKEN_REQUEST_TIMEOUT_MILLISECONDS);
|
|
129
162
|
let challenge_data;
|
|
130
163
|
try {
|
|
131
164
|
challenge_data = await api_client["_make_request"]("POST", "/api/v1/auth/challenge", {
|
|
132
165
|
identity_id,
|
|
166
|
+
device_type: "tpm",
|
|
133
167
|
});
|
|
134
168
|
}
|
|
135
169
|
catch (error) {
|
|
@@ -185,4 +219,78 @@ export async function authenticate_with_tpm(identity_id, ak_handle, api_base_url
|
|
|
185
219
|
"The Keycloak token endpoint may be unavailable.");
|
|
186
220
|
}
|
|
187
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* Authenticate using a PIV device (YubiKey) -- passwordless sign-in.
|
|
224
|
+
*
|
|
225
|
+
* Same challenge-response flow as TPM but uses PIV slot 9a ECDSA signing.
|
|
226
|
+
* No PIN, no elevation, no human interaction required.
|
|
227
|
+
*/
|
|
228
|
+
export async function authenticate_with_piv(identity_id, api_base_url, credentials) {
|
|
229
|
+
if (credentials == null) {
|
|
230
|
+
credentials = load_credentials();
|
|
231
|
+
}
|
|
232
|
+
if (identity_id == null) {
|
|
233
|
+
identity_id = credentials.client_id;
|
|
234
|
+
}
|
|
235
|
+
if (api_base_url == null) {
|
|
236
|
+
api_base_url = credentials.api_base_url;
|
|
237
|
+
}
|
|
238
|
+
const api_client = new OneIDAPIClient(api_base_url, TOKEN_REQUEST_TIMEOUT_MILLISECONDS);
|
|
239
|
+
let challenge_data;
|
|
240
|
+
try {
|
|
241
|
+
challenge_data = await api_client["_make_request"]("POST", "/api/v1/auth/challenge", {
|
|
242
|
+
identity_id,
|
|
243
|
+
device_type: "piv",
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
if (error instanceof NetworkError) {
|
|
248
|
+
throw error;
|
|
249
|
+
}
|
|
250
|
+
throw new AuthenticationError(`Challenge request failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
251
|
+
}
|
|
252
|
+
const challenge_id = challenge_data.challenge_id;
|
|
253
|
+
const nonce_b64 = challenge_data.nonce_b64;
|
|
254
|
+
if (!challenge_id || !nonce_b64) {
|
|
255
|
+
throw new AuthenticationError("Server returned incomplete challenge response");
|
|
256
|
+
}
|
|
257
|
+
const { sign_challenge_with_piv } = await import("./helper.js");
|
|
258
|
+
const sign_result = await sign_challenge_with_piv(nonce_b64);
|
|
259
|
+
const signature_b64 = sign_result.signature_b64 ?? "";
|
|
260
|
+
if (!signature_b64) {
|
|
261
|
+
throw new AuthenticationError("PIV signing returned empty signature");
|
|
262
|
+
}
|
|
263
|
+
let verify_data;
|
|
264
|
+
try {
|
|
265
|
+
verify_data = await api_client["_make_request"]("POST", "/api/v1/auth/verify", {
|
|
266
|
+
challenge_id,
|
|
267
|
+
signature_b64,
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
catch (error) {
|
|
271
|
+
if (error instanceof NetworkError) {
|
|
272
|
+
throw error;
|
|
273
|
+
}
|
|
274
|
+
throw new AuthenticationError(`PIV authentication failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
275
|
+
}
|
|
276
|
+
if (!verify_data.authenticated) {
|
|
277
|
+
throw new AuthenticationError("Server did not confirm PIV authentication");
|
|
278
|
+
}
|
|
279
|
+
const tokens = verify_data.tokens;
|
|
280
|
+
if (tokens?.access_token) {
|
|
281
|
+
const expires_in_seconds = tokens.expires_in ?? 3600;
|
|
282
|
+
const token = {
|
|
283
|
+
access_token: tokens.access_token,
|
|
284
|
+
token_type: tokens.token_type ?? "Bearer",
|
|
285
|
+
expires_at: new Date(Date.now() + expires_in_seconds * 1000),
|
|
286
|
+
refresh_token: tokens.refresh_token ?? null,
|
|
287
|
+
};
|
|
288
|
+
cached_token = token;
|
|
289
|
+
return token;
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
throw new AuthenticationError("PIV signature verified but no tokens were issued. " +
|
|
293
|
+
"The Keycloak token endpoint may be unavailable.");
|
|
294
|
+
}
|
|
295
|
+
}
|
|
188
296
|
//# sourceMappingURL=auth.js.map
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAA0B,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
CHANGED
|
File without changes
|
package/dist/cli.d.ts.map
CHANGED
|
File without changes
|
package/dist/cli.js
CHANGED
|
File without changes
|
package/dist/cli.js.map
CHANGED
|
File without changes
|
package/dist/client.d.ts
CHANGED
|
@@ -62,5 +62,10 @@ export declare class OneIDAPIClient {
|
|
|
62
62
|
* Check whether a vanity handle is available.
|
|
63
63
|
*/
|
|
64
64
|
check_handle_availability(handle_name: string): Promise<Record<string, unknown>>;
|
|
65
|
+
/**
|
|
66
|
+
* Make an authenticated API request with a Bearer token.
|
|
67
|
+
* Used by world/status, devices, lock-hardware, and operator-email endpoints.
|
|
68
|
+
*/
|
|
69
|
+
make_authenticated_request(method: string, api_path: string, access_token: string, json_body?: Record<string, unknown> | null): Promise<Record<string, unknown>>;
|
|
65
70
|
}
|
|
66
71
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6FH;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,oBAAoB,EAAE,MAAM,CAAC;gBAG3C,YAAY,GAAE,MAA6B,EAC3C,oBAAoB,GAAE,MAA0C;IAMlE;;OAEG;YACW,aAAa;IAyB3B;;OAEG;IACG,eAAe,CACnB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAWnC;;OAEG;IACG,YAAY,CAChB,kBAAkB,EAAE,MAAM,EAC1B,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,GAAE,MAAW,EAC/B,iBAAiB,GAAE,MAAW,EAC9B,wBAAwB,CAAC,EAAE,MAAM,EAAE,EACnC,QAAQ,GAAE,MAAc,EACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAenC;;;;;;;OAOG;IACG,gBAAgB,CACpB,oBAAoB,EAAE,MAAM,EAC5B,qBAAqB,EAAE,MAAM,EAAE,EAC/B,sBAAsB,EAAE,MAAM,EAC9B,QAAQ,GAAE,MAAkB,EAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAanC;;OAEG;IACG,eAAe,CACnB,qBAAqB,EAAE,MAAM,EAC7B,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAOnC;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAItE;;;;OAIG;IACG,iCAAiC,CACrC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAuEnC;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6FH;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,oBAAoB,EAAE,MAAM,CAAC;gBAG3C,YAAY,GAAE,MAA6B,EAC3C,oBAAoB,GAAE,MAA0C;IAMlE;;OAEG;YACW,aAAa;IAyB3B;;OAEG;IACG,eAAe,CACnB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAWnC;;OAEG;IACG,YAAY,CAChB,kBAAkB,EAAE,MAAM,EAC1B,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,GAAE,MAAW,EAC/B,iBAAiB,GAAE,MAAW,EAC9B,wBAAwB,CAAC,EAAE,MAAM,EAAE,EACnC,QAAQ,GAAE,MAAc,EACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAenC;;;;;;;OAOG;IACG,gBAAgB,CACpB,oBAAoB,EAAE,MAAM,EAC5B,qBAAqB,EAAE,MAAM,EAAE,EAC/B,sBAAsB,EAAE,MAAM,EAC9B,QAAQ,GAAE,MAAkB,EAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAanC;;OAEG;IACG,eAAe,CACnB,qBAAqB,EAAE,MAAM,EAC7B,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAOnC;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAItE;;;;OAIG;IACG,iCAAiC,CACrC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAuEnC;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAItF;;;OAGG;IACG,0BAA0B,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACzC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAKpC"}
|
package/dist/client.js
CHANGED
|
@@ -243,5 +243,14 @@ export class OneIDAPIClient {
|
|
|
243
243
|
async check_handle_availability(handle_name) {
|
|
244
244
|
return this._make_request("GET", `/api/v1/handle/${handle_name}`);
|
|
245
245
|
}
|
|
246
|
+
/**
|
|
247
|
+
* Make an authenticated API request with a Bearer token.
|
|
248
|
+
* Used by world/status, devices, lock-hardware, and operator-email endpoints.
|
|
249
|
+
*/
|
|
250
|
+
async make_authenticated_request(method, api_path, access_token, json_body) {
|
|
251
|
+
return this._make_request(method, api_path, json_body, {
|
|
252
|
+
"Authorization": `Bearer ${access_token}`,
|
|
253
|
+
});
|
|
254
|
+
}
|
|
246
255
|
}
|
|
247
256
|
//# sourceMappingURL=client.js.map
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credential Pointer management for the 1id.com Node.js SDK.
|
|
3
|
+
*
|
|
4
|
+
* Manages the lightweight pointer registry that links an agent's identity
|
|
5
|
+
* to credentials held by external credential authorities. 1ID never stores
|
|
6
|
+
* credential content -- only pointer metadata (issuer, type, verification URL).
|
|
7
|
+
*
|
|
8
|
+
* Consent tokens enforce agent-initiated registration:
|
|
9
|
+
* 1. Agent calls generateConsentToken(issuer_id, credential_type) -> token
|
|
10
|
+
* 2. Agent gives the token to the credential authority
|
|
11
|
+
* 3. Authority calls the server's register endpoint with the token
|
|
12
|
+
* 4. Server validates: token is valid, not expired, not used, scopes match
|
|
13
|
+
*
|
|
14
|
+
* Usage:
|
|
15
|
+
* import oneid from "1id";
|
|
16
|
+
* import { generateConsentToken, listCredentialPointers } from "1id";
|
|
17
|
+
*
|
|
18
|
+
* const token = await generateConsentToken("did:web:university.example", "degree");
|
|
19
|
+
* console.log(`Send this to the CA: ${token.consent_token_id}`);
|
|
20
|
+
*
|
|
21
|
+
* const result = await listCredentialPointers();
|
|
22
|
+
* for (const p of result.pointers) {
|
|
23
|
+
* console.log(`${p.issuer_name}: ${p.credential_type} [${p.verification_url}]`);
|
|
24
|
+
* }
|
|
25
|
+
*/
|
|
26
|
+
import { StoredCredentials } from "./credentials.js";
|
|
27
|
+
export interface ConsentTokenResult {
|
|
28
|
+
consent_token_id: string;
|
|
29
|
+
issuer_id: string;
|
|
30
|
+
credential_type: string;
|
|
31
|
+
expires_at: string;
|
|
32
|
+
}
|
|
33
|
+
export interface CredentialPointerInfo {
|
|
34
|
+
pointer_id: string;
|
|
35
|
+
issuer_id: string;
|
|
36
|
+
issuer_name: string;
|
|
37
|
+
credential_type: string;
|
|
38
|
+
credential_scope: string | null;
|
|
39
|
+
verification_url: string;
|
|
40
|
+
publicly_visible: boolean;
|
|
41
|
+
valid_from: string | null;
|
|
42
|
+
valid_until: string | null;
|
|
43
|
+
registered_at: string | null;
|
|
44
|
+
removed_at: string | null;
|
|
45
|
+
}
|
|
46
|
+
export interface CredentialPointerListResult {
|
|
47
|
+
agent_id: string;
|
|
48
|
+
pointers: CredentialPointerInfo[];
|
|
49
|
+
pointer_count: number;
|
|
50
|
+
view: string;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Generate a scoped, single-use consent token for a credential authority.
|
|
54
|
+
*
|
|
55
|
+
* Give the returned token_id to the credential authority. The authority
|
|
56
|
+
* uses it in a POST /api/v1/identity/credential-pointers call to register
|
|
57
|
+
* a pointer.
|
|
58
|
+
*
|
|
59
|
+
* @param issuer_id DID or URI of the credential authority (e.g. "did:web:university.example").
|
|
60
|
+
* @param credential_type The type of credential being authorized (e.g. "degree", "license").
|
|
61
|
+
* @param valid_for_seconds How long the token is valid (60..604800, default 86400).
|
|
62
|
+
* @param credentials Optional pre-loaded credentials.
|
|
63
|
+
* @returns ConsentTokenResult with the token_id, scoped issuer/type, and expiry.
|
|
64
|
+
*/
|
|
65
|
+
export declare function generateConsentToken(issuer_id: string, credential_type: string, valid_for_seconds?: number, credentials?: StoredCredentials | null): Promise<ConsentTokenResult>;
|
|
66
|
+
/**
|
|
67
|
+
* List credential pointers for an identity.
|
|
68
|
+
*
|
|
69
|
+
* If agent_id is null or matches the current identity, makes an
|
|
70
|
+
* authenticated request returning all active pointers (full view).
|
|
71
|
+
* If agent_id is a different identity, makes an unauthenticated
|
|
72
|
+
* request returning only publicly visible pointers.
|
|
73
|
+
*
|
|
74
|
+
* @param agent_id Identity to query. Null = query your own pointers.
|
|
75
|
+
* @param credentials Optional pre-loaded credentials.
|
|
76
|
+
* @returns CredentialPointerListResult with the list of pointers and metadata.
|
|
77
|
+
*/
|
|
78
|
+
export declare function listCredentialPointers(agent_id?: string | null, credentials?: StoredCredentials | null): Promise<CredentialPointerListResult>;
|
|
79
|
+
/**
|
|
80
|
+
* Toggle a credential pointer between public and private visibility.
|
|
81
|
+
*
|
|
82
|
+
* @param pointer_id The pointer to update (prefix: cp-).
|
|
83
|
+
* @param publicly_visible True to make public, False to make private.
|
|
84
|
+
* @param credentials Optional pre-loaded credentials.
|
|
85
|
+
* @returns The updated CredentialPointerInfo.
|
|
86
|
+
*/
|
|
87
|
+
export declare function setCredentialPointerVisibility(pointer_id: string, publicly_visible: boolean, credentials?: StoredCredentials | null): Promise<CredentialPointerInfo>;
|
|
88
|
+
/**
|
|
89
|
+
* Soft-delete a credential pointer.
|
|
90
|
+
*
|
|
91
|
+
* The pointer is marked as removed and no longer appears in list results.
|
|
92
|
+
* The pointer is never hard-deleted, preserving the audit trail.
|
|
93
|
+
*
|
|
94
|
+
* @param pointer_id The pointer to remove (prefix: cp-).
|
|
95
|
+
* @param credentials Optional pre-loaded credentials.
|
|
96
|
+
* @returns The removed CredentialPointerInfo (with removed_at set).
|
|
97
|
+
*/
|
|
98
|
+
export declare function removeCredentialPointer(pointer_id: string, credentials?: StoredCredentials | null): Promise<CredentialPointerInfo>;
|
|
99
|
+
//# sourceMappingURL=credentialPointers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credentialPointers.d.ts","sourceRoot":"","sources":["../src/credentialPointers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAE,iBAAiB,EAA0C,MAAM,kBAAkB,CAAC;AAI7F,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAgCD;;;;;;;;;;;;GAYG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,iBAAiB,GAAE,MAAc,EACjC,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,kBAAkB,CAAC,CAc7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,EACxB,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,2BAA2B,CAAC,CA6BtC;AAED;;;;;;;GAOG;AACH,wBAAsB,8BAA8B,CAClD,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,OAAO,EACzB,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,qBAAqB,CAAC,CAShC;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,qBAAqB,CAAC,CAShC"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credential Pointer management for the 1id.com Node.js SDK.
|
|
3
|
+
*
|
|
4
|
+
* Manages the lightweight pointer registry that links an agent's identity
|
|
5
|
+
* to credentials held by external credential authorities. 1ID never stores
|
|
6
|
+
* credential content -- only pointer metadata (issuer, type, verification URL).
|
|
7
|
+
*
|
|
8
|
+
* Consent tokens enforce agent-initiated registration:
|
|
9
|
+
* 1. Agent calls generateConsentToken(issuer_id, credential_type) -> token
|
|
10
|
+
* 2. Agent gives the token to the credential authority
|
|
11
|
+
* 3. Authority calls the server's register endpoint with the token
|
|
12
|
+
* 4. Server validates: token is valid, not expired, not used, scopes match
|
|
13
|
+
*
|
|
14
|
+
* Usage:
|
|
15
|
+
* import oneid from "1id";
|
|
16
|
+
* import { generateConsentToken, listCredentialPointers } from "1id";
|
|
17
|
+
*
|
|
18
|
+
* const token = await generateConsentToken("did:web:university.example", "degree");
|
|
19
|
+
* console.log(`Send this to the CA: ${token.consent_token_id}`);
|
|
20
|
+
*
|
|
21
|
+
* const result = await listCredentialPointers();
|
|
22
|
+
* for (const p of result.pointers) {
|
|
23
|
+
* console.log(`${p.issuer_name}: ${p.credential_type} [${p.verification_url}]`);
|
|
24
|
+
* }
|
|
25
|
+
*/
|
|
26
|
+
import { OneIDAPIClient } from "./client.js";
|
|
27
|
+
import { load_credentials } from "./credentials.js";
|
|
28
|
+
import { get_token } from "./auth.js";
|
|
29
|
+
function parse_pointer_from_api_response(raw) {
|
|
30
|
+
return {
|
|
31
|
+
pointer_id: (raw.pointer_id ?? ""),
|
|
32
|
+
issuer_id: (raw.issuer_id ?? ""),
|
|
33
|
+
issuer_name: (raw.issuer_name ?? ""),
|
|
34
|
+
credential_type: (raw.credential_type ?? ""),
|
|
35
|
+
credential_scope: (raw.credential_scope ?? null),
|
|
36
|
+
verification_url: (raw.verification_url ?? ""),
|
|
37
|
+
publicly_visible: Boolean(raw.publicly_visible),
|
|
38
|
+
valid_from: (raw.valid_from ?? null),
|
|
39
|
+
valid_until: (raw.valid_until ?? null),
|
|
40
|
+
registered_at: (raw.registered_at ?? null),
|
|
41
|
+
removed_at: (raw.removed_at ?? null),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
async function make_authenticated_credential_pointer_request(method, api_path, json_body, credentials) {
|
|
45
|
+
if (credentials == null) {
|
|
46
|
+
credentials = load_credentials();
|
|
47
|
+
}
|
|
48
|
+
const token = await get_token(false, credentials);
|
|
49
|
+
const api_client = new OneIDAPIClient(credentials.api_base_url);
|
|
50
|
+
return api_client.make_authenticated_request(method, api_path, token.access_token, json_body);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Generate a scoped, single-use consent token for a credential authority.
|
|
54
|
+
*
|
|
55
|
+
* Give the returned token_id to the credential authority. The authority
|
|
56
|
+
* uses it in a POST /api/v1/identity/credential-pointers call to register
|
|
57
|
+
* a pointer.
|
|
58
|
+
*
|
|
59
|
+
* @param issuer_id DID or URI of the credential authority (e.g. "did:web:university.example").
|
|
60
|
+
* @param credential_type The type of credential being authorized (e.g. "degree", "license").
|
|
61
|
+
* @param valid_for_seconds How long the token is valid (60..604800, default 86400).
|
|
62
|
+
* @param credentials Optional pre-loaded credentials.
|
|
63
|
+
* @returns ConsentTokenResult with the token_id, scoped issuer/type, and expiry.
|
|
64
|
+
*/
|
|
65
|
+
export async function generateConsentToken(issuer_id, credential_type, valid_for_seconds = 86400, credentials) {
|
|
66
|
+
const raw_data = await make_authenticated_credential_pointer_request("POST", "/api/v1/identity/credential-pointer-consent", { issuer_id, credential_type, valid_for_seconds }, credentials);
|
|
67
|
+
return {
|
|
68
|
+
consent_token_id: (raw_data.token_id ?? ""),
|
|
69
|
+
issuer_id: (raw_data.issuer_id ?? issuer_id),
|
|
70
|
+
credential_type: (raw_data.credential_type ?? credential_type),
|
|
71
|
+
expires_at: (raw_data.expires_at ?? ""),
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* List credential pointers for an identity.
|
|
76
|
+
*
|
|
77
|
+
* If agent_id is null or matches the current identity, makes an
|
|
78
|
+
* authenticated request returning all active pointers (full view).
|
|
79
|
+
* If agent_id is a different identity, makes an unauthenticated
|
|
80
|
+
* request returning only publicly visible pointers.
|
|
81
|
+
*
|
|
82
|
+
* @param agent_id Identity to query. Null = query your own pointers.
|
|
83
|
+
* @param credentials Optional pre-loaded credentials.
|
|
84
|
+
* @returns CredentialPointerListResult with the list of pointers and metadata.
|
|
85
|
+
*/
|
|
86
|
+
export async function listCredentialPointers(agent_id, credentials) {
|
|
87
|
+
if (credentials == null) {
|
|
88
|
+
credentials = load_credentials();
|
|
89
|
+
}
|
|
90
|
+
if (agent_id == null) {
|
|
91
|
+
agent_id = credentials.client_id;
|
|
92
|
+
}
|
|
93
|
+
const this_request_is_for_own_identity = (credentials.client_id === agent_id);
|
|
94
|
+
const api_path = `/api/v1/identity/${agent_id}/credential-pointers`;
|
|
95
|
+
let raw_data;
|
|
96
|
+
if (this_request_is_for_own_identity) {
|
|
97
|
+
raw_data = await make_authenticated_credential_pointer_request("GET", api_path, null, credentials);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
const api_client = new OneIDAPIClient(credentials.api_base_url);
|
|
101
|
+
raw_data = await api_client["_make_request"]("GET", api_path);
|
|
102
|
+
}
|
|
103
|
+
const raw_pointers = (raw_data.pointers ?? []);
|
|
104
|
+
const pointers = raw_pointers.map(parse_pointer_from_api_response);
|
|
105
|
+
return {
|
|
106
|
+
agent_id: (raw_data.agent_id ?? agent_id),
|
|
107
|
+
pointers,
|
|
108
|
+
pointer_count: (raw_data.pointer_count ?? pointers.length),
|
|
109
|
+
view: (raw_data.view ?? "public_only"),
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Toggle a credential pointer between public and private visibility.
|
|
114
|
+
*
|
|
115
|
+
* @param pointer_id The pointer to update (prefix: cp-).
|
|
116
|
+
* @param publicly_visible True to make public, False to make private.
|
|
117
|
+
* @param credentials Optional pre-loaded credentials.
|
|
118
|
+
* @returns The updated CredentialPointerInfo.
|
|
119
|
+
*/
|
|
120
|
+
export async function setCredentialPointerVisibility(pointer_id, publicly_visible, credentials) {
|
|
121
|
+
const raw_data = await make_authenticated_credential_pointer_request("PUT", `/api/v1/identity/credential-pointers/${pointer_id}/visibility`, { publicly_visible }, credentials);
|
|
122
|
+
return parse_pointer_from_api_response(raw_data);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Soft-delete a credential pointer.
|
|
126
|
+
*
|
|
127
|
+
* The pointer is marked as removed and no longer appears in list results.
|
|
128
|
+
* The pointer is never hard-deleted, preserving the audit trail.
|
|
129
|
+
*
|
|
130
|
+
* @param pointer_id The pointer to remove (prefix: cp-).
|
|
131
|
+
* @param credentials Optional pre-loaded credentials.
|
|
132
|
+
* @returns The removed CredentialPointerInfo (with removed_at set).
|
|
133
|
+
*/
|
|
134
|
+
export async function removeCredentialPointer(pointer_id, credentials) {
|
|
135
|
+
const raw_data = await make_authenticated_credential_pointer_request("DELETE", `/api/v1/identity/credential-pointers/${pointer_id}`, null, credentials);
|
|
136
|
+
return parse_pointer_from_api_response(raw_data);
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=credentialPointers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credentialPointers.js","sourceRoot":"","sources":["../src/credentialPointers.ts"],"names":[],"mappings":"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"}
|