@twin.org/node 0.9.1-next.8 → 0.9.1

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.
@@ -424,12 +424,46 @@
424
424
  "invalidUrl": "The JSON-LD processing failed to retrieve from the following url \"{url}\"",
425
425
  "jsonLdError": "The JSON-LD processing failed due to the following error: \"{code}\""
426
426
  },
427
- "dataspaceProtocolHelper": {
428
- "schemaNotRegistered": "JSON Schema \"{schemaId}\" is not registered in DataTypeHandlerFactory"
427
+ "odrlPolicyHelper": {
428
+ "policyMissingAssignee": "The {policyType} with id \"{policyId}\" is missing an assignee.",
429
+ "policyMissingAssigner": "The {policyType} with id \"{policyId}\" is missing an assigner."
430
+ },
431
+ "verificationHelper": {
432
+ "jwtDecodeFailed": "Decoding the JWT failed",
433
+ "proofMissingVerificationMethod": "The proof is missing the verification method"
434
+ },
435
+ "documentHelper": {
436
+ "verificationMethodNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" could not be found",
437
+ "verificationMethodJwkNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" is missing the JWK"
438
+ },
439
+ "proofHelper": {
440
+ "unsupportedProofType": "Proof type \"{proofType}\" not supported."
441
+ },
442
+ "jsonWebSignature2020SignerVerifier": {
443
+ "missingJws": "JWS is missing from proof."
444
+ },
445
+ "dataIntegrityProofSignerVerifier": {
446
+ "cryptosuiteNotSupported": "Cryptosuite \"{cryptoSuite}\" is not supported.",
447
+ "missingPrivateKey": "Private key is missing.",
448
+ "missingPublicKey": "Public key is missing."
449
+ },
450
+ "multikeyHelper": {
451
+ "invalidPublicKeyMultibase": "Public key multibase \"{publicKeyMultibase}\" is invalid.",
452
+ "invalidSecretKeyMultibase": "Secret key multibase \"{secretKeyMultibase}\" is invalid.",
453
+ "unsupportedCrv": "Curve \"{crv}\" is not supported.",
454
+ "unsupportedKty": "Key type \"{kty}\" is not supported.",
455
+ "publicKeyMultibaseMissingHeader": "Public key multibase \"{publicKeyMultibase}\" is missing the multi codec header",
456
+ "secretKeyMultibaseMissingHeader": "Secret key multibase \"{secretKeyMultibase}\" is missing the multi codec header"
429
457
  },
430
458
  "silentTelemetryConnector": {
431
459
  "notSupported": "The method \"{methodName}\" is not supported on silent telemetry connector."
432
460
  },
461
+ "dataspaceProtocolHelper": {
462
+ "schemaNotRegistered": "JSON Schema \"{schemaId}\" is not registered in DataTypeHandlerFactory"
463
+ },
464
+ "trustHelper": {
465
+ "trustVerifyFailed": "Trust verification failed for action \"{action}\""
466
+ },
433
467
  "engineCore": {
434
468
  "componentUnknownType": "Unknown component type \"{type}\" specified for \"{componentType}\"",
435
469
  "bootstrapFailed": "Failed to bootstrap component type \"{className}\" with instance type \"{instanceType}\"",
@@ -463,33 +497,6 @@
463
497
  "destroyFailed": "Destroying the attestation failed",
464
498
  "namespaceMismatch": "The namespace in the urn \"{id}\" does not match the namespace of the NFT Attestation connector \"{namespace}\""
465
499
  },
466
- "proofHelper": {
467
- "unsupportedProofType": "Proof type \"{proofType}\" not supported."
468
- },
469
- "jsonWebSignature2020SignerVerifier": {
470
- "missingJws": "JWS is missing from proof."
471
- },
472
- "dataIntegrityProofSignerVerifier": {
473
- "cryptosuiteNotSupported": "Cryptosuite \"{cryptoSuite}\" is not supported.",
474
- "missingPrivateKey": "Private key is missing.",
475
- "missingPublicKey": "Public key is missing."
476
- },
477
- "multikeyHelper": {
478
- "invalidPublicKeyMultibase": "Public key multibase \"{publicKeyMultibase}\" is invalid.",
479
- "invalidSecretKeyMultibase": "Secret key multibase \"{secretKeyMultibase}\" is invalid.",
480
- "unsupportedCrv": "Curve \"{crv}\" is not supported.",
481
- "unsupportedKty": "Key type \"{kty}\" is not supported.",
482
- "publicKeyMultibaseMissingHeader": "Public key multibase \"{publicKeyMultibase}\" is missing the multi codec header",
483
- "secretKeyMultibaseMissingHeader": "Secret key multibase \"{secretKeyMultibase}\" is missing the multi codec header"
484
- },
485
- "verificationHelper": {
486
- "jwtDecodeFailed": "Decoding the JWT failed",
487
- "proofMissingVerificationMethod": "The proof is missing the verification method"
488
- },
489
- "documentHelper": {
490
- "verificationMethodNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" could not be found",
491
- "verificationMethodJwkNotFound": "The verification method \"{methodName}\" of type \"{methodType}\" is missing the JWK"
492
- },
493
500
  "attestationService": {
494
501
  "noConnectors": "There are no connectors registered with the attestation factory",
495
502
  "attestFailed": "The attestation of the data failed",
@@ -554,7 +561,8 @@
554
561
  "completeFailed": "Failed to complete processing task \"{id}\" with type \"{type}\" with status \"{status}\"",
555
562
  "dispatchFailed": "Failed to dispatch task \"{taskId}\" with type \"{taskType}\"",
556
563
  "stateChangeCallbackFailed": "The state change callback failed for task \"{id}\" with type \"{type}\" and status \"{status}\"",
557
- "taskFinishedProcessingFailed": "Failed to finalise background task processing for task \"{id}\" with method \"{type}\""
564
+ "taskFinishedProcessingFailed": "Failed to finalise background task processing for task \"{id}\" with method \"{type}\"",
565
+ "executionTimeout": "Task \"{id}\" with type \"{type}\" exceeded its execution timeout of {timeout} ms and has been marked as failed"
558
566
  },
559
567
  "s3BlobStorageConnector": {
560
568
  "bucketCreateFailed": "Creating bucket \"{bucket}\" failed",
@@ -708,13 +716,6 @@
708
716
  "pushTransferDataPathNotConfigured": "POST transfer cannot start: dataPlanePath is not configured (consumerPid: {consumerPid})",
709
717
  "providerIdentityMissing": "Provider identity (DID) is required to sign data access tokens but was not set on the Transfer Process"
710
718
  },
711
- "trustHelper": {
712
- "trustVerifyFailed": "Trust verification failed for action \"{action}\""
713
- },
714
- "odrlPolicyHelper": {
715
- "policyMissingAssignee": "The {policyType} with id \"{policyId}\" is missing an assignee.",
716
- "policyMissingAssigner": "The {policyType} with id \"{policyId}\" is missing an assigner."
717
- },
718
719
  "dataspaceDataPlaneRestClient": {
719
720
  "notSupportedOnClient": "The method \"{methodName}\" is not supported on the REST client, it can only be used on a server side component"
720
721
  },
@@ -741,6 +742,7 @@
741
742
  "pushSubscriptionNotFound": "Push subscription not found for consumerPid \"{notFoundId}\"",
742
743
  "activityLogEntryNotAuthorized": "Unauthorised access to activity log entry — the verified identity is not the entry generator",
743
744
  "pushActivityNotAuthorized": "Unauthorized push activity — no matching STARTED transfer found for the activity generator",
745
+ "dataReadNotAuthorized": "Unauthorized data read: the verified identity is not a party to the transfer (consumerPid: {consumerPid})",
744
746
  "pushActivityNotPermittedByPolicy": "Push activity rejected — the transfer's agreement (\"{agreementId}\") does not permit the activity for consumerPid \"{consumerPid}\"",
745
747
  "processOutboxActivityMultipleTo": "processOutboxActivity does not support multiple recipients — activity.to contains {count} values, expected exactly one consumerPid",
746
748
  "pushSubscriptionCompensationFailed": "Compensating unsubscribeToData failed after push-subscription storage write failed (consumerPid: {consumerPid}, providerPid: {providerPid}) — app may be left with a dangling Follow until orphan cleanup runs",
@@ -1100,6 +1102,12 @@
1100
1102
  "proofNotFound": "The proof with the Id \"{notFoundId}\" was not found",
1101
1103
  "createProofFailed": "Creating the immutable proof failed"
1102
1104
  },
1105
+ "immutableProofTask": {
1106
+ "taskNotarizationFailed": "The notarization for proof \"{proofId}\" failed after {elapsedMs}ms, the task will not be retried as the notarization may already be on the ledger"
1107
+ },
1108
+ "fileLoggingConnector": {
1109
+ "maxFileSizeTooSmall": "The maximum file size of {maxFileSizeBytes} bytes is below the minimum of {minimum} bytes, use 0 to disable rotation"
1110
+ },
1103
1111
  "openTelemetryLoggingConnector": {
1104
1112
  "unknownExporterType": "The exporter type \"{type}\" is not supported, valid values are: otlp"
1105
1113
  },
@@ -1229,10 +1237,9 @@
1229
1237
  "transferFailed": "The transfer of the notarization failed"
1230
1238
  },
1231
1239
  "dataAccessPointService": {
1232
- "noHandlerForAssetType": "No handler registered for asset type \"{assetType}\"",
1233
- "notAuthorizedToQuery": "Not authorized to query asset type \"{assetType}\"",
1234
- "notAuthorizedToGet": "Not authorized to get asset type \"{assetType}\" with id \"{id}\""
1240
+ "noHandlerForAssetType": "No handler registered for asset type \"{assetType}\""
1235
1241
  },
1242
+ "dataAccessRequestPointService": {},
1236
1243
  "policyAdministrationPointService": {
1237
1244
  "namespaceMismatch": "The namespace in the urn \"{id}\" does not match the namespace of the rights management components \"{namespace}\"",
1238
1245
  "policyAlreadyExists": "A policy with id: \"{existingId}\" already exists",
@@ -1447,6 +1454,12 @@
1447
1454
  "pushSubscriptionNotFoundOnTeardown": "Push subscription not found for consumerPid \"{consumerPid}\" during teardown — treating as no-op",
1448
1455
  "pushSubscriptionNotFoundForActivity": "Push subscription not found for outbound activity (consumerPid: {consumerPid})"
1449
1456
  },
1457
+ "immutableProofService": {
1458
+ "taskRecordRemoveFailed": "Removing the completed task record for proof \"{proofId}\" failed, the record will be removed when its retention expires"
1459
+ },
1460
+ "immutableProofTask": {
1461
+ "taskEngineStopFailed": "Stopping the task engine for proof \"{proofId}\" failed, the task result is unaffected"
1462
+ },
1450
1463
  "policyNegotiationAdminPointService": {
1451
1464
  "sendTerminateFailed": "Failed to send terminate to consumer for negotiation id: \"{id}\", correlation id: \"{correlationId}\""
1452
1465
  },
@@ -1480,7 +1493,8 @@
1480
1493
  "optional": "optional",
1481
1494
  "required": "required",
1482
1495
  "default": "default",
1483
- "options": "options"
1496
+ "options": "options",
1497
+ "singleTenantOnly": "single-tenant only"
1484
1498
  }
1485
1499
  },
1486
1500
  "bootstrap-legacy": {
@@ -2235,12 +2249,14 @@
2235
2249
  },
2236
2250
  "load-env": {
2237
2251
  "description": "Comma separated list of paths to .env files to read input parameters from."
2252
+ },
2253
+ "output-json": {
2254
+ "description": "Path to a .json file to store the resolved DID document."
2238
2255
  }
2239
2256
  },
2240
2257
  "labels": {
2241
2258
  "resolving": "Resolving identity",
2242
- "did": "DID",
2243
- "verificationMethods": "Verification Methods"
2259
+ "did": "DID"
2244
2260
  }
2245
2261
  },
2246
2262
  "org-users-list": {
@@ -2527,6 +2543,13 @@
2527
2543
  "contractReady": "Contract ready for use"
2528
2544
  },
2529
2545
  "iotaNotarizationConnector": {},
2546
+ "dataAccessPointService": {
2547
+ "registeredHandler": "Handler registered with id: \"{handlerId}\"",
2548
+ "unregisteredHandler": "Handler unregistered with id: \"{handlerId}\""
2549
+ },
2550
+ "dataAccessRequestPointService": {
2551
+ "missingNodeIdentity": "The node identity is missing"
2552
+ },
2530
2553
  "policyEnforcementPointService": {
2531
2554
  "processing": "Processing information using processor with id: \"{processorId}\", policy id: \"{policyId}\"",
2532
2555
  "intercepting": "Intercepting information for policy id: \"{policyId}\""
@@ -2665,9 +2688,11 @@
2665
2688
  "bootstrapping": "Bootstrapping component type \"{className}\" with instance type \"{instanceType}\"",
2666
2689
  "componentsStarting": "Components are starting",
2667
2690
  "componentsComplete": "Components have started",
2691
+ "componentsSummary": "Components started in {totalMs}ms, slowest: {slowestComponents}",
2668
2692
  "componentsStopping": "Components are stopping",
2669
2693
  "componentsStopped": "Components have stopped",
2670
2694
  "componentStarting": "Starting component type \"{className}\" with instance type \"{instanceType}\"",
2695
+ "componentStarted": "Started component type \"{className}\" with instance type \"{instanceType}\" in {elapsedMs}ms",
2671
2696
  "componentStopping": "Stopping component type \"{className}\" with instance type \"{instanceType}\""
2672
2697
  },
2673
2698
  "fileStateStorage": {
@@ -2791,6 +2816,11 @@
2791
2816
  "dataspaceDataPlaneSocketRoutes": {
2792
2817
  "activityLogStatusConnected": "Web Socket Connected: Socket Id: \"{socketId}\"",
2793
2818
  "activityLogStatusDisconnected": "Web Socket disconnected: Socket Id: \"{socketId}\""
2819
+ },
2820
+ "immutableProofTask": {
2821
+ "taskEngineStarted": "The proof task engine started for proof \"{proofId}\" in {elapsedMs}ms",
2822
+ "taskVerifiableCredentialCreated": "The verifiable credential for proof \"{proofId}\" was created in {elapsedMs}ms",
2823
+ "taskNotarizationComplete": "The notarization for proof \"{proofId}\" completed in {elapsedMs}ms, total task time {totalElapsedMs}ms"
2794
2824
  }
2795
2825
  },
2796
2826
  "codeLists": {
package/docs/changelog.md CHANGED
@@ -1,5 +1,92 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.9.1](https://github.com/iotaledger/twin-node/compare/node-v0.9.1...node-v0.9.1) (2026-07-27)
4
+
5
+
6
+ ### Features
7
+
8
+ * add auth admin component ([1661e57](https://github.com/iotaledger/twin-node/commit/1661e57a699d5cf9ebde333e3cbc3aaea89d7c9c))
9
+ * add extend engine and server methods ([ec09c7e](https://github.com/iotaledger/twin-node/commit/ec09c7eb882d9f5797f2fd372e96cad1a3716f59))
10
+ * add extend engine and server methods ([0136a6f](https://github.com/iotaledger/twin-node/commit/0136a6f3f4e1a82b1427ee9618b8a17c79bc7fda))
11
+ * add fedcat to openapi ([eac69bd](https://github.com/iotaledger/twin-node/commit/eac69bdf94a22c35fe58e7523d9cf78bdc72eb7b))
12
+ * add updated config vars ([ebe8178](https://github.com/iotaledger/twin-node/commit/ebe81788ce53ddf3d6925a5f2f6dac381f84f06c))
13
+ * improve default options and spec ([b538721](https://github.com/iotaledger/twin-node/commit/b538721902e7f65021d2715148ba59409ccce035))
14
+ * initial commit ([522f1e5](https://github.com/iotaledger/twin-node/commit/522f1e515348f9b1dd1eeb3170b1249e2b0b5371))
15
+ * migrate env config from engine to node ([5da29b8](https://github.com/iotaledger/twin-node/commit/5da29b8d714495308320d237a68e84355bba2b47))
16
+ * node app use JavaScript ([14fe08c](https://github.com/iotaledger/twin-node/commit/14fe08cb760dd885a5dac9056a4d5dbc3d61df64))
17
+ * release to production ([6319a38](https://github.com/iotaledger/twin-node/commit/6319a38490a2c2809622f8acd170cb92bfa06942))
18
+ * release to production ([4f44403](https://github.com/iotaledger/twin-node/commit/4f444039832edce8fae562baa7c900ccdc2181da))
19
+ * release to production ([2d96e37](https://github.com/iotaledger/twin-node/commit/2d96e3737bd9663bc0d1171c2ff2c7f8b2ab01bb))
20
+ * release to production ([#253](https://github.com/iotaledger/twin-node/issues/253)) ([230efd0](https://github.com/iotaledger/twin-node/commit/230efd0f99af6114e707999b4c1a83a391cc1741))
21
+ * release to production ([#300](https://github.com/iotaledger/twin-node/issues/300)) ([4d2b09f](https://github.com/iotaledger/twin-node/commit/4d2b09f92c7815ad3fe48d54eca0972fefc782f7))
22
+ * update dependencies ([9d25f16](https://github.com/iotaledger/twin-node/commit/9d25f16f1d554cd38f3bec28fdf7f8fff892ceaf))
23
+ * update spec generation config ([cff633a](https://github.com/iotaledger/twin-node/commit/cff633a0ffb73ad652d5f1bae653fa91e82dc8ab))
24
+
25
+
26
+ ### Bug Fixes
27
+
28
+ * adding a condition to verify if the password exists when bootstrapping ([6030a42](https://github.com/iotaledger/twin-node/commit/6030a42bdaf581678d96932fd0b809396bf7b8b0))
29
+ * adding a condition to verify if the password exists when bootstrapping ([c66f396](https://github.com/iotaledger/twin-node/commit/c66f396717394161a7647d1f08b3d87729d96e96))
30
+ * broken docs ([61479fd](https://github.com/iotaledger/twin-node/commit/61479fd618f766d22c5aafec5277e1a89e22b453))
31
+
32
+ ## [0.9.1-next.12](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.11...node-v0.9.1-next.12) (2026-07-27)
33
+
34
+
35
+ ### Features
36
+
37
+ * update logging retention units in config ([0b9bb69](https://github.com/iotaledger/twin-node/commit/0b9bb696db0722f6b33e37e1ebd1f4d6ffbcf7cc))
38
+
39
+
40
+ ### Dependencies
41
+
42
+ * The following workspace dependencies were updated
43
+ * dependencies
44
+ * @twin.org/node-core bumped from 0.9.1-next.11 to 0.9.1-next.12
45
+
46
+ ## [0.9.1-next.11](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.10...node-v0.9.1-next.11) (2026-07-24)
47
+
48
+
49
+ ### Features
50
+
51
+ * migration options ([#293](https://github.com/iotaledger/twin-node/issues/293)) ([91acc88](https://github.com/iotaledger/twin-node/commit/91acc881f665be0177b2e895e2810dd4d6145105))
52
+
53
+
54
+ ### Dependencies
55
+
56
+ * The following workspace dependencies were updated
57
+ * dependencies
58
+ * @twin.org/node-core bumped from 0.9.1-next.10 to 0.9.1-next.11
59
+
60
+ ## [0.9.1-next.10](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.9...node-v0.9.1-next.10) (2026-07-21)
61
+
62
+
63
+ ### Features
64
+
65
+ * update dependencies ([64c8ea8](https://github.com/iotaledger/twin-node/commit/64c8ea8c8b5e918f7ad419c4e3b8d08faf5e3fdd))
66
+
67
+
68
+ ### Dependencies
69
+
70
+ * The following workspace dependencies were updated
71
+ * dependencies
72
+ * @twin.org/node-core bumped from 0.9.1-next.9 to 0.9.1-next.10
73
+
74
+ ## [0.9.1-next.9](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.8...node-v0.9.1-next.9) (2026-07-21)
75
+
76
+
77
+ ### Features
78
+
79
+ * enhanced cli commands ([#288](https://github.com/iotaledger/twin-node/issues/288)) ([479fb34](https://github.com/iotaledger/twin-node/commit/479fb3448c493a134aee35b69ae39458e493a4ad))
80
+ * expose gasBudget and gasReservationDuration as configurable env vars ([#286](https://github.com/iotaledger/twin-node/issues/286)) ([d678b27](https://github.com/iotaledger/twin-node/commit/d678b27d629930a6ce85eeab9caf89d1187c3461))
81
+ * file logging config ([#287](https://github.com/iotaledger/twin-node/issues/287)) ([a567b25](https://github.com/iotaledger/twin-node/commit/a567b253cbb8b9af872bb0e494c013212f4f55a2))
82
+
83
+
84
+ ### Dependencies
85
+
86
+ * The following workspace dependencies were updated
87
+ * dependencies
88
+ * @twin.org/node-core bumped from 0.9.1-next.8 to 0.9.1-next.9
89
+
3
90
  ## [0.9.1-next.8](https://github.com/iotaledger/twin-node/compare/node-v0.9.1-next.7...node-v0.9.1-next.8) (2026-07-10)
4
91
 
5
92
 
@@ -15689,7 +15689,7 @@
15689
15689
  "parameters": [
15690
15690
  {
15691
15691
  "name": "conditions",
15692
- "description": "The conditions to filter the stream, JSON stringified `EntityCondition<IAuditableItemStream>.",
15692
+ "description": "The conditions to filter the stream, JSON stringified `EntityCondition<IAuditableItemStreamEntry>`.",
15693
15693
  "in": "query",
15694
15694
  "required": false,
15695
15695
  "schema": {
@@ -18654,6 +18654,15 @@
18654
18654
  "Policy Administration Point"
18655
18655
  ],
18656
18656
  "parameters": [
18657
+ {
18658
+ "name": "type",
18659
+ "description": "The type of policy to filter by.",
18660
+ "in": "query",
18661
+ "required": false,
18662
+ "schema": {
18663
+ "type": "string"
18664
+ }
18665
+ },
18657
18666
  {
18658
18667
  "name": "assigner",
18659
18668
  "description": "The assigner to filter by.",
package/docs/usage.md CHANGED
@@ -37,8 +37,8 @@ node-identity-get: Get the identity currently assigned to the node
37
37
  node-identity-set: Set the node identity
38
38
  org-users-list: List all users belonging to an organization DID
39
39
  remove-tenant-org-alias: Remove an alias from the tenant organization ID legacy list
40
- node-org-id-get: Get the organization ID currently assigned to the node
41
- node-org-id-set: Set the node organization ID
40
+ node-org-id-get: Get the organization ID currently assigned to the node (single-tenant only)
41
+ node-org-id-set: Set the node organization ID (single-tenant only)
42
42
  tenant-org-id-set: Set the organization ID for a tenant
43
43
  tenant-create: Create a tenant with associated api key
44
44
  tenant-get: Get the full configuration record for a single tenant
@@ -164,6 +164,9 @@ The DID to resolve.
164
164
  load-env: (string, optional)
165
165
  Comma separated list of paths to .env files to read input parameters from.
166
166
 
167
+ output-json: (string, optional)
168
+ Path to a .json file to store the resolved DID document.
169
+
167
170
  Example: identity-resolve --identity="did:iota:..."
168
171
  ```
169
172
 
@@ -185,6 +188,7 @@ Example: node-identity-get
185
188
 
186
189
  ```text
187
190
  node-org-id-get: Get the organization ID currently assigned to the node
191
+ single-tenant only
188
192
 
189
193
  env-prefix: (string, optional)
190
194
  Prefix to use for standard .env files e.g. TWIN_.
@@ -195,6 +199,26 @@ Comma separated list of paths to .env files to read input parameters from.
195
199
  Example: node-org-id-get
196
200
  ```
197
201
 
202
+ ## node-org-id-set --help
203
+
204
+ ```text
205
+ node-org-id-set: Set the node organization ID
206
+ single-tenant only
207
+
208
+ env-prefix: (string, optional)
209
+ Prefix to use for standard .env files e.g. TWIN_.
210
+
211
+ organization-id: (string, did, required)
212
+ The organization DID to set as the node organization ID.
213
+
214
+ load-env: (string, optional)
215
+ Comma separated list of paths to .env files to read input parameters from.
216
+
217
+ Deprecated aliases: set-node-org-id
218
+
219
+ Example: node-org-id-set --organization-id="did:iota:..."
220
+ ```
221
+
198
222
  ## org-users-list --help
199
223
 
200
224
  ```text
@@ -436,10 +460,11 @@ twin-node node-org-id-get
436
460
 
437
461
  ### Resolve an identity
438
462
 
439
- Resolve any DID to its full document, including its verification methods:
463
+ Resolve any DID to its full document. Pass `--output-json` to save the document to a file:
440
464
 
441
465
  ```shell
442
466
  twin-node identity-resolve --identity="did:iota:..."
467
+ twin-node identity-resolve --identity="did:iota:..." --output-json="did-document.json"
443
468
  ```
444
469
 
445
470
  ### List all identities
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/node",
3
- "version": "0.9.1-next.8",
3
+ "version": "0.9.1",
4
4
  "description": "TWIN Node serving APIs using the specified configuration",
5
5
  "repository": {
6
6
  "type": "git",
@@ -11,10 +11,10 @@
11
11
  "license": "Apache-2.0",
12
12
  "type": "module",
13
13
  "engines": {
14
- "node": ">=20.0.0"
14
+ "node": ">=24.0.0"
15
15
  },
16
16
  "dependencies": {
17
- "@twin.org/node-core": "0.9.1-next.8"
17
+ "@twin.org/node-core": "^0.9.1"
18
18
  },
19
19
  "bugs": {
20
20
  "url": "git+https://github.com/iotaledger/twin-node/issues"