@twin.org/node 0.0.3-next.31 → 0.0.3-next.33

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.
@@ -47,6 +47,10 @@
47
47
  "name": "Telemetry",
48
48
  "description": "Endpoints which are modelled to access a telemetry contract."
49
49
  },
50
+ {
51
+ "name": "Automation",
52
+ "description": "Endpoints which are modelled to access an automation contract."
53
+ },
50
54
  {
51
55
  "name": "Logging",
52
56
  "description": "Endpoints which are modelled to access a logging contract."
@@ -55,6 +59,10 @@
55
59
  "name": "NFT",
56
60
  "description": "Endpoints which are modelled to access an NFT contract."
57
61
  },
62
+ {
63
+ "name": "Notarization",
64
+ "description": "Endpoints which are modelled to access a notarization service."
65
+ },
58
66
  {
59
67
  "name": "Attestation",
60
68
  "description": "Endpoints which are modelled to access an attestation contract."
@@ -6172,12 +6180,25 @@
6172
6180
  }
6173
6181
  }
6174
6182
  },
6175
- "/logging": {
6183
+ "/automation/trigger/{trigger}": {
6176
6184
  "post": {
6177
- "operationId": "loggingEntryCreate",
6178
- "summary": "Create a log entry",
6185
+ "operationId": "AutomationTrigger",
6186
+ "summary": "Trigger an automation process.",
6179
6187
  "tags": [
6180
- "Logging"
6188
+ "Automation"
6189
+ ],
6190
+ "parameters": [
6191
+ {
6192
+ "name": "trigger",
6193
+ "description": "The trigger for the actions.",
6194
+ "in": "path",
6195
+ "required": true,
6196
+ "schema": {
6197
+ "type": "string"
6198
+ },
6199
+ "style": "simple",
6200
+ "example": "my-trigger"
6201
+ }
6181
6202
  ],
6182
6203
  "security": [
6183
6204
  {
@@ -6185,31 +6206,41 @@
6185
6206
  }
6186
6207
  ],
6187
6208
  "requestBody": {
6188
- "description": "Create a new log entry.",
6209
+ "description": "Request to trigger an automation action.",
6189
6210
  "required": true,
6190
6211
  "content": {
6191
6212
  "application/json": {
6192
6213
  "schema": {
6193
- "$ref": "#/components/schemas/LogEntry"
6214
+ "$ref": "#/components/schemas/AutomationTriggerRequest"
6194
6215
  },
6195
6216
  "examples": {
6196
- "loggingEntryCreateInfoExample": {
6217
+ "AutomationTriggerRequestExample": {
6197
6218
  "value": {
6198
- "level": "info",
6199
- "message": "This is an information message",
6200
- "source": "source",
6201
- "ts": 1715252922273
6219
+ "data": {
6220
+ "key": "value"
6221
+ }
6202
6222
  }
6223
+ }
6224
+ }
6225
+ }
6226
+ }
6227
+ },
6228
+ "responses": {
6229
+ "204": {
6230
+ "description": "The rest request ended in success with no data."
6231
+ },
6232
+ "400": {
6233
+ "description": "The server cannot process the request, see the content for more details.",
6234
+ "content": {
6235
+ "application/json": {
6236
+ "schema": {
6237
+ "$ref": "#/components/schemas/Error"
6203
6238
  },
6204
- "loggingEntryCreateErrorExample": {
6205
- "value": {
6206
- "level": "info",
6207
- "message": "This is an error message",
6208
- "source": "source",
6209
- "ts": 1715252922273,
6210
- "error": {
6239
+ "examples": {
6240
+ "exampleResponse": {
6241
+ "value": {
6211
6242
  "name": "GeneralError",
6212
- "message": "component.error",
6243
+ "message": "errorMessage",
6213
6244
  "properties": {
6214
6245
  "foo": "bar"
6215
6246
  }
@@ -6218,11 +6249,91 @@
6218
6249
  }
6219
6250
  }
6220
6251
  }
6252
+ },
6253
+ "401": {
6254
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
6255
+ "content": {
6256
+ "application/json": {
6257
+ "schema": {
6258
+ "$ref": "#/components/schemas/Error"
6259
+ },
6260
+ "examples": {
6261
+ "exampleResponse": {
6262
+ "value": {
6263
+ "name": "UnauthorizedError",
6264
+ "message": "errorMessage"
6265
+ }
6266
+ }
6267
+ }
6268
+ }
6269
+ }
6270
+ },
6271
+ "500": {
6272
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
6273
+ "content": {
6274
+ "application/json": {
6275
+ "schema": {
6276
+ "$ref": "#/components/schemas/Error"
6277
+ },
6278
+ "examples": {
6279
+ "exampleResponse": {
6280
+ "value": {
6281
+ "name": "InternalServerError",
6282
+ "message": "errorMessage"
6283
+ }
6284
+ }
6285
+ }
6286
+ }
6287
+ }
6288
+ }
6289
+ }
6290
+ }
6291
+ },
6292
+ "/automation": {
6293
+ "post": {
6294
+ "operationId": "AutomationActionCreate",
6295
+ "summary": "Create an automation action.",
6296
+ "tags": [
6297
+ "Automation"
6298
+ ],
6299
+ "security": [
6300
+ {
6301
+ "jwtBearerAuthScheme": []
6302
+ }
6303
+ ],
6304
+ "requestBody": {
6305
+ "description": "Request to create an automation action.",
6306
+ "required": true,
6307
+ "content": {
6308
+ "application/json": {
6309
+ "schema": {
6310
+ "$ref": "#/components/schemas/AutomationActionCreateRequest"
6311
+ },
6312
+ "examples": {
6313
+ "AutomationActionCreateRequestExample": {
6314
+ "value": {
6315
+ "actionType": "log",
6316
+ "trigger": "onCreate",
6317
+ "configuration": {
6318
+ "message": "Created!"
6319
+ }
6320
+ }
6321
+ }
6322
+ }
6323
+ }
6221
6324
  }
6222
6325
  },
6223
6326
  "responses": {
6224
- "204": {
6225
- "description": "The rest request ended in success with no data."
6327
+ "201": {
6328
+ "description": "The rest request ended in created response.",
6329
+ "headers": {
6330
+ "location": {
6331
+ "schema": {
6332
+ "type": "string"
6333
+ },
6334
+ "description": "e.g. action-123"
6335
+ }
6336
+ }
6226
6337
  },
6227
6338
  "400": {
6228
6339
  "description": "The server cannot process the request, see the content for more details.",
@@ -6284,66 +6395,51 @@
6284
6395
  }
6285
6396
  },
6286
6397
  "get": {
6287
- "operationId": "loggingListEntries",
6288
- "summary": "Get a list of the log entries",
6398
+ "operationId": "AutomationActionsQuery",
6399
+ "summary": "Query automation actions.",
6289
6400
  "tags": [
6290
- "Logging"
6401
+ "Automation"
6291
6402
  ],
6292
6403
  "parameters": [
6293
6404
  {
6294
- "name": "level",
6295
- "description": "The level of the log entries to retrieve.",
6296
- "in": "query",
6297
- "required": false,
6298
- "schema": {
6299
- "$ref": "#/components/schemas/LogLevel"
6300
- },
6301
- "example": "info"
6302
- },
6303
- {
6304
- "name": "source",
6305
- "description": "The source of the log entries to retrieve.",
6306
- "in": "query",
6307
- "required": false,
6308
- "schema": {
6309
- "type": "string"
6310
- }
6311
- },
6312
- {
6313
- "name": "timeStart",
6314
- "description": "The start time of the metrics to retrieve as a timestamp in ms.",
6405
+ "name": "trigger",
6406
+ "description": "Filter by trigger type.",
6315
6407
  "in": "query",
6316
6408
  "required": false,
6317
6409
  "schema": {
6318
6410
  "type": "string"
6319
- }
6411
+ },
6412
+ "example": "onCreate"
6320
6413
  },
6321
6414
  {
6322
- "name": "timeEnd",
6323
- "description": "The end time of the metrics to retrieve as a timestamp in ms.",
6415
+ "name": "actionType",
6416
+ "description": "Filter by action type.",
6324
6417
  "in": "query",
6325
6418
  "required": false,
6326
6419
  "schema": {
6327
6420
  "type": "string"
6328
- }
6421
+ },
6422
+ "example": "log"
6329
6423
  },
6330
6424
  {
6331
6425
  "name": "cursor",
6332
- "description": "The optional cursor to get next chunk.",
6426
+ "description": "Cursor for pagination.",
6333
6427
  "in": "query",
6334
6428
  "required": false,
6335
6429
  "schema": {
6336
6430
  "type": "string"
6337
- }
6431
+ },
6432
+ "example": "abc"
6338
6433
  },
6339
6434
  {
6340
6435
  "name": "limit",
6341
- "description": "Limit the number of entities to return.",
6436
+ "description": "Limit the number of results returned.",
6342
6437
  "in": "query",
6343
6438
  "required": false,
6344
6439
  "schema": {
6345
6440
  "type": "string"
6346
- }
6441
+ },
6442
+ "example": "10"
6347
6443
  }
6348
6444
  ],
6349
6445
  "security": [
@@ -6353,24 +6449,26 @@
6353
6449
  ],
6354
6450
  "responses": {
6355
6451
  "200": {
6356
- "description": "Response for log entry list request.",
6452
+ "description": "Response for querying automation actions.",
6357
6453
  "content": {
6358
6454
  "application/json": {
6359
6455
  "schema": {
6360
- "$ref": "#/components/schemas/LoggingListResponse"
6456
+ "$ref": "#/components/schemas/AutomationActionsQueryResponse"
6361
6457
  },
6362
6458
  "examples": {
6363
- "listResponseExample": {
6459
+ "AutomationActionsQueryResponseExample": {
6364
6460
  "value": {
6365
- "entities": [
6461
+ "entries": [
6366
6462
  {
6367
- "level": "info",
6368
- "message": "This is an information message",
6369
- "source": "source",
6370
- "ts": 1715252922273
6463
+ "id": "action-123",
6464
+ "actionType": "log",
6465
+ "trigger": "onCreate",
6466
+ "configuration": {
6467
+ "message": "Created!"
6468
+ }
6371
6469
  }
6372
6470
  ],
6373
- "cursor": "1"
6471
+ "cursor": "next-cursor"
6374
6472
  }
6375
6473
  }
6376
6474
  }
@@ -6437,55 +6535,34 @@
6437
6535
  }
6438
6536
  }
6439
6537
  },
6440
- "/nft": {
6441
- "post": {
6442
- "operationId": "nftMint",
6443
- "summary": "Mint an NFT",
6538
+ "/automation/{actionId}": {
6539
+ "delete": {
6540
+ "operationId": "AutomationActionRemove",
6541
+ "summary": "Remove an automation action.",
6444
6542
  "tags": [
6445
- "NFT"
6543
+ "Automation"
6544
+ ],
6545
+ "parameters": [
6546
+ {
6547
+ "name": "actionId",
6548
+ "description": "The unique identifier of the action to remove.",
6549
+ "in": "path",
6550
+ "required": true,
6551
+ "schema": {
6552
+ "type": "string"
6553
+ },
6554
+ "style": "simple",
6555
+ "example": "action-123"
6556
+ }
6446
6557
  ],
6447
6558
  "security": [
6448
6559
  {
6449
6560
  "jwtBearerAuthScheme": []
6450
6561
  }
6451
6562
  ],
6452
- "requestBody": {
6453
- "description": "Mint the data and return the NFT id.",
6454
- "required": true,
6455
- "content": {
6456
- "application/json": {
6457
- "schema": {
6458
- "$ref": "#/components/schemas/NftMintRequest"
6459
- },
6460
- "examples": {
6461
- "nftMintExample": {
6462
- "value": {
6463
- "tag": "MY-NFT",
6464
- "immutableMetadata": {
6465
- "docName": "bill-of-lading",
6466
- "mimeType": "application/pdf",
6467
- "fingerprint": "0xf0b95a98b3dbc5ce1c9ce59d70af95a97599f100a7296ecdd1eb108bebfa047f"
6468
- },
6469
- "metadata": {
6470
- "data": "tst1prctjk5ck0dutnsunnje6u90jk5htx03qznjjmkd6843pzltlgz87srjzzv"
6471
- }
6472
- }
6473
- }
6474
- }
6475
- }
6476
- }
6477
- },
6478
6563
  "responses": {
6479
- "201": {
6480
- "description": "The rest request ended in created response.",
6481
- "headers": {
6482
- "location": {
6483
- "schema": {
6484
- "type": "string"
6485
- },
6486
- "description": "e.g. nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
6487
- }
6488
- }
6564
+ "204": {
6565
+ "description": "The rest request ended in success with no data."
6489
6566
  },
6490
6567
  "400": {
6491
6568
  "description": "The server cannot process the request, see the content for more details.",
@@ -6545,26 +6622,24 @@
6545
6622
  }
6546
6623
  }
6547
6624
  }
6548
- }
6549
- },
6550
- "/nft/{id}": {
6625
+ },
6551
6626
  "get": {
6552
- "operationId": "nftResolve",
6553
- "summary": "Resolve an NFT",
6627
+ "operationId": "AutomationActionGet",
6628
+ "summary": "Get an automation action by id.",
6554
6629
  "tags": [
6555
- "NFT"
6630
+ "Automation"
6556
6631
  ],
6557
6632
  "parameters": [
6558
6633
  {
6559
- "name": "id",
6560
- "description": "The id of the NFT to resolve.",
6634
+ "name": "actionId",
6635
+ "description": "The unique identifier of the action to get.",
6561
6636
  "in": "path",
6562
6637
  "required": true,
6563
6638
  "schema": {
6564
6639
  "type": "string"
6565
6640
  },
6566
6641
  "style": "simple",
6567
- "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
6642
+ "example": "action-123"
6568
6643
  }
6569
6644
  ],
6570
6645
  "security": [
@@ -6574,25 +6649,20 @@
6574
6649
  ],
6575
6650
  "responses": {
6576
6651
  "200": {
6577
- "description": "Response to resolving the NFT.",
6652
+ "description": "Response for getting an automation action.",
6578
6653
  "content": {
6579
6654
  "application/json": {
6580
6655
  "schema": {
6581
- "$ref": "#/components/schemas/NftResolveResponse"
6656
+ "$ref": "#/components/schemas/AutomationActionEntry"
6582
6657
  },
6583
6658
  "examples": {
6584
- "nftResolveResponseExample": {
6659
+ "AutomationActionGetResponseExample": {
6585
6660
  "value": {
6586
- "issuer": "did:iota:tst:0x85ef62ea94fc4eeeeeddf6acc3b566e988e613081d0b93cc54ed831ed4c18d44",
6587
- "owner": "did:iota:tst:0x85ef62ea94fc4eeeeeddf6acc3b566e988e613081d0b93cc54ed831ed4c18d44",
6588
- "tag": "MY-NFT",
6589
- "immutableMetadata": {
6590
- "docName": "bill-of-lading",
6591
- "mimeType": "application/pdf",
6592
- "fingerprint": "0xf0b95a98b3dbc5ce1c9ce59d70af95a97599f100a7296ecdd1eb108bebfa047f"
6593
- },
6594
- "metadata": {
6595
- "data": "AAAAA"
6661
+ "id": "action-123",
6662
+ "actionType": "log",
6663
+ "trigger": "onCreate",
6664
+ "configuration": {
6665
+ "message": "Created!"
6596
6666
  }
6597
6667
  }
6598
6668
  }
@@ -6658,24 +6728,1027 @@
6658
6728
  }
6659
6729
  }
6660
6730
  }
6661
- },
6662
- "delete": {
6663
- "operationId": "nftBurn",
6664
- "summary": "Burn an NFT",
6665
- "tags": [
6666
- "NFT"
6667
- ],
6731
+ }
6732
+ },
6733
+ "/logging": {
6734
+ "post": {
6735
+ "operationId": "loggingEntryCreate",
6736
+ "summary": "Create a log entry",
6737
+ "tags": [
6738
+ "Logging"
6739
+ ],
6740
+ "security": [
6741
+ {
6742
+ "jwtBearerAuthScheme": []
6743
+ }
6744
+ ],
6745
+ "requestBody": {
6746
+ "description": "Create a new log entry.",
6747
+ "required": true,
6748
+ "content": {
6749
+ "application/json": {
6750
+ "schema": {
6751
+ "$ref": "#/components/schemas/LogEntry"
6752
+ },
6753
+ "examples": {
6754
+ "loggingEntryCreateInfoExample": {
6755
+ "value": {
6756
+ "level": "info",
6757
+ "message": "This is an information message",
6758
+ "source": "source",
6759
+ "ts": 1715252922273
6760
+ }
6761
+ },
6762
+ "loggingEntryCreateErrorExample": {
6763
+ "value": {
6764
+ "level": "info",
6765
+ "message": "This is an error message",
6766
+ "source": "source",
6767
+ "ts": 1715252922273,
6768
+ "error": {
6769
+ "name": "GeneralError",
6770
+ "message": "component.error",
6771
+ "properties": {
6772
+ "foo": "bar"
6773
+ }
6774
+ }
6775
+ }
6776
+ }
6777
+ }
6778
+ }
6779
+ }
6780
+ },
6781
+ "responses": {
6782
+ "204": {
6783
+ "description": "The rest request ended in success with no data."
6784
+ },
6785
+ "400": {
6786
+ "description": "The server cannot process the request, see the content for more details.",
6787
+ "content": {
6788
+ "application/json": {
6789
+ "schema": {
6790
+ "$ref": "#/components/schemas/Error"
6791
+ },
6792
+ "examples": {
6793
+ "exampleResponse": {
6794
+ "value": {
6795
+ "name": "GeneralError",
6796
+ "message": "errorMessage",
6797
+ "properties": {
6798
+ "foo": "bar"
6799
+ }
6800
+ }
6801
+ }
6802
+ }
6803
+ }
6804
+ }
6805
+ },
6806
+ "401": {
6807
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
6808
+ "content": {
6809
+ "application/json": {
6810
+ "schema": {
6811
+ "$ref": "#/components/schemas/Error"
6812
+ },
6813
+ "examples": {
6814
+ "exampleResponse": {
6815
+ "value": {
6816
+ "name": "UnauthorizedError",
6817
+ "message": "errorMessage"
6818
+ }
6819
+ }
6820
+ }
6821
+ }
6822
+ }
6823
+ },
6824
+ "500": {
6825
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
6826
+ "content": {
6827
+ "application/json": {
6828
+ "schema": {
6829
+ "$ref": "#/components/schemas/Error"
6830
+ },
6831
+ "examples": {
6832
+ "exampleResponse": {
6833
+ "value": {
6834
+ "name": "InternalServerError",
6835
+ "message": "errorMessage"
6836
+ }
6837
+ }
6838
+ }
6839
+ }
6840
+ }
6841
+ }
6842
+ }
6843
+ },
6844
+ "get": {
6845
+ "operationId": "loggingListEntries",
6846
+ "summary": "Get a list of the log entries",
6847
+ "tags": [
6848
+ "Logging"
6849
+ ],
6850
+ "parameters": [
6851
+ {
6852
+ "name": "level",
6853
+ "description": "The level of the log entries to retrieve.",
6854
+ "in": "query",
6855
+ "required": false,
6856
+ "schema": {
6857
+ "$ref": "#/components/schemas/LogLevel"
6858
+ },
6859
+ "example": "info"
6860
+ },
6861
+ {
6862
+ "name": "source",
6863
+ "description": "The source of the log entries to retrieve.",
6864
+ "in": "query",
6865
+ "required": false,
6866
+ "schema": {
6867
+ "type": "string"
6868
+ }
6869
+ },
6870
+ {
6871
+ "name": "timeStart",
6872
+ "description": "The start time of the metrics to retrieve as a timestamp in ms.",
6873
+ "in": "query",
6874
+ "required": false,
6875
+ "schema": {
6876
+ "type": "string"
6877
+ }
6878
+ },
6879
+ {
6880
+ "name": "timeEnd",
6881
+ "description": "The end time of the metrics to retrieve as a timestamp in ms.",
6882
+ "in": "query",
6883
+ "required": false,
6884
+ "schema": {
6885
+ "type": "string"
6886
+ }
6887
+ },
6888
+ {
6889
+ "name": "cursor",
6890
+ "description": "The optional cursor to get next chunk.",
6891
+ "in": "query",
6892
+ "required": false,
6893
+ "schema": {
6894
+ "type": "string"
6895
+ }
6896
+ },
6897
+ {
6898
+ "name": "limit",
6899
+ "description": "Limit the number of entities to return.",
6900
+ "in": "query",
6901
+ "required": false,
6902
+ "schema": {
6903
+ "type": "string"
6904
+ }
6905
+ }
6906
+ ],
6907
+ "security": [
6908
+ {
6909
+ "jwtBearerAuthScheme": []
6910
+ }
6911
+ ],
6912
+ "responses": {
6913
+ "200": {
6914
+ "description": "Response for log entry list request.",
6915
+ "content": {
6916
+ "application/json": {
6917
+ "schema": {
6918
+ "$ref": "#/components/schemas/LoggingListResponse"
6919
+ },
6920
+ "examples": {
6921
+ "listResponseExample": {
6922
+ "value": {
6923
+ "entities": [
6924
+ {
6925
+ "level": "info",
6926
+ "message": "This is an information message",
6927
+ "source": "source",
6928
+ "ts": 1715252922273
6929
+ }
6930
+ ],
6931
+ "cursor": "1"
6932
+ }
6933
+ }
6934
+ }
6935
+ }
6936
+ }
6937
+ },
6938
+ "400": {
6939
+ "description": "The server cannot process the request, see the content for more details.",
6940
+ "content": {
6941
+ "application/json": {
6942
+ "schema": {
6943
+ "$ref": "#/components/schemas/Error"
6944
+ },
6945
+ "examples": {
6946
+ "exampleResponse": {
6947
+ "value": {
6948
+ "name": "GeneralError",
6949
+ "message": "errorMessage",
6950
+ "properties": {
6951
+ "foo": "bar"
6952
+ }
6953
+ }
6954
+ }
6955
+ }
6956
+ }
6957
+ }
6958
+ },
6959
+ "401": {
6960
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
6961
+ "content": {
6962
+ "application/json": {
6963
+ "schema": {
6964
+ "$ref": "#/components/schemas/Error"
6965
+ },
6966
+ "examples": {
6967
+ "exampleResponse": {
6968
+ "value": {
6969
+ "name": "UnauthorizedError",
6970
+ "message": "errorMessage"
6971
+ }
6972
+ }
6973
+ }
6974
+ }
6975
+ }
6976
+ },
6977
+ "500": {
6978
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
6979
+ "content": {
6980
+ "application/json": {
6981
+ "schema": {
6982
+ "$ref": "#/components/schemas/Error"
6983
+ },
6984
+ "examples": {
6985
+ "exampleResponse": {
6986
+ "value": {
6987
+ "name": "InternalServerError",
6988
+ "message": "errorMessage"
6989
+ }
6990
+ }
6991
+ }
6992
+ }
6993
+ }
6994
+ }
6995
+ }
6996
+ }
6997
+ },
6998
+ "/nft": {
6999
+ "post": {
7000
+ "operationId": "nftMint",
7001
+ "summary": "Mint an NFT",
7002
+ "tags": [
7003
+ "NFT"
7004
+ ],
7005
+ "security": [
7006
+ {
7007
+ "jwtBearerAuthScheme": []
7008
+ }
7009
+ ],
7010
+ "requestBody": {
7011
+ "description": "Mint the data and return the NFT id.",
7012
+ "required": true,
7013
+ "content": {
7014
+ "application/json": {
7015
+ "schema": {
7016
+ "$ref": "#/components/schemas/NftMintRequest"
7017
+ },
7018
+ "examples": {
7019
+ "nftMintExample": {
7020
+ "value": {
7021
+ "tag": "MY-NFT",
7022
+ "immutableMetadata": {
7023
+ "docName": "bill-of-lading",
7024
+ "mimeType": "application/pdf",
7025
+ "fingerprint": "0xf0b95a98b3dbc5ce1c9ce59d70af95a97599f100a7296ecdd1eb108bebfa047f"
7026
+ },
7027
+ "metadata": {
7028
+ "data": "tst1prctjk5ck0dutnsunnje6u90jk5htx03qznjjmkd6843pzltlgz87srjzzv"
7029
+ }
7030
+ }
7031
+ }
7032
+ }
7033
+ }
7034
+ }
7035
+ },
7036
+ "responses": {
7037
+ "201": {
7038
+ "description": "The rest request ended in created response.",
7039
+ "headers": {
7040
+ "location": {
7041
+ "schema": {
7042
+ "type": "string"
7043
+ },
7044
+ "description": "e.g. nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7045
+ }
7046
+ }
7047
+ },
7048
+ "400": {
7049
+ "description": "The server cannot process the request, see the content for more details.",
7050
+ "content": {
7051
+ "application/json": {
7052
+ "schema": {
7053
+ "$ref": "#/components/schemas/Error"
7054
+ },
7055
+ "examples": {
7056
+ "exampleResponse": {
7057
+ "value": {
7058
+ "name": "GeneralError",
7059
+ "message": "errorMessage",
7060
+ "properties": {
7061
+ "foo": "bar"
7062
+ }
7063
+ }
7064
+ }
7065
+ }
7066
+ }
7067
+ }
7068
+ },
7069
+ "401": {
7070
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7071
+ "content": {
7072
+ "application/json": {
7073
+ "schema": {
7074
+ "$ref": "#/components/schemas/Error"
7075
+ },
7076
+ "examples": {
7077
+ "exampleResponse": {
7078
+ "value": {
7079
+ "name": "UnauthorizedError",
7080
+ "message": "errorMessage"
7081
+ }
7082
+ }
7083
+ }
7084
+ }
7085
+ }
7086
+ },
7087
+ "500": {
7088
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7089
+ "content": {
7090
+ "application/json": {
7091
+ "schema": {
7092
+ "$ref": "#/components/schemas/Error"
7093
+ },
7094
+ "examples": {
7095
+ "exampleResponse": {
7096
+ "value": {
7097
+ "name": "InternalServerError",
7098
+ "message": "errorMessage"
7099
+ }
7100
+ }
7101
+ }
7102
+ }
7103
+ }
7104
+ }
7105
+ }
7106
+ }
7107
+ },
7108
+ "/nft/{id}": {
7109
+ "get": {
7110
+ "operationId": "nftResolve",
7111
+ "summary": "Resolve an NFT",
7112
+ "tags": [
7113
+ "NFT"
7114
+ ],
7115
+ "parameters": [
7116
+ {
7117
+ "name": "id",
7118
+ "description": "The id of the NFT to resolve.",
7119
+ "in": "path",
7120
+ "required": true,
7121
+ "schema": {
7122
+ "type": "string"
7123
+ },
7124
+ "style": "simple",
7125
+ "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7126
+ }
7127
+ ],
7128
+ "security": [
7129
+ {
7130
+ "jwtBearerAuthScheme": []
7131
+ }
7132
+ ],
7133
+ "responses": {
7134
+ "200": {
7135
+ "description": "Response to resolving the NFT.",
7136
+ "content": {
7137
+ "application/json": {
7138
+ "schema": {
7139
+ "$ref": "#/components/schemas/NftResolveResponse"
7140
+ },
7141
+ "examples": {
7142
+ "nftResolveResponseExample": {
7143
+ "value": {
7144
+ "issuer": "0x85ef62ea94fc4eeeeeddf6acc3b566e988e613081d0b93cc54ed831ed4c18d44",
7145
+ "issuerIdentityId": "0xa1d80bee7fdb4fd91ae45c6e539209f73cb743b7da9db3e21322ea75af1878c0",
7146
+ "tag": "MY-NFT",
7147
+ "immutableMetadata": {
7148
+ "docName": "bill-of-lading",
7149
+ "mimeType": "application/pdf",
7150
+ "fingerprint": "0xf0b95a98b3dbc5ce1c9ce59d70af95a97599f100a7296ecdd1eb108bebfa047f"
7151
+ },
7152
+ "metadata": {
7153
+ "data": "AAAAA"
7154
+ }
7155
+ }
7156
+ }
7157
+ }
7158
+ }
7159
+ }
7160
+ },
7161
+ "400": {
7162
+ "description": "The server cannot process the request, see the content for more details.",
7163
+ "content": {
7164
+ "application/json": {
7165
+ "schema": {
7166
+ "$ref": "#/components/schemas/Error"
7167
+ },
7168
+ "examples": {
7169
+ "exampleResponse": {
7170
+ "value": {
7171
+ "name": "GeneralError",
7172
+ "message": "errorMessage",
7173
+ "properties": {
7174
+ "foo": "bar"
7175
+ }
7176
+ }
7177
+ }
7178
+ }
7179
+ }
7180
+ }
7181
+ },
7182
+ "401": {
7183
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7184
+ "content": {
7185
+ "application/json": {
7186
+ "schema": {
7187
+ "$ref": "#/components/schemas/Error"
7188
+ },
7189
+ "examples": {
7190
+ "exampleResponse": {
7191
+ "value": {
7192
+ "name": "UnauthorizedError",
7193
+ "message": "errorMessage"
7194
+ }
7195
+ }
7196
+ }
7197
+ }
7198
+ }
7199
+ },
7200
+ "500": {
7201
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7202
+ "content": {
7203
+ "application/json": {
7204
+ "schema": {
7205
+ "$ref": "#/components/schemas/Error"
7206
+ },
7207
+ "examples": {
7208
+ "exampleResponse": {
7209
+ "value": {
7210
+ "name": "InternalServerError",
7211
+ "message": "errorMessage"
7212
+ }
7213
+ }
7214
+ }
7215
+ }
7216
+ }
7217
+ }
7218
+ }
7219
+ },
7220
+ "delete": {
7221
+ "operationId": "nftBurn",
7222
+ "summary": "Burn an NFT",
7223
+ "tags": [
7224
+ "NFT"
7225
+ ],
7226
+ "parameters": [
7227
+ {
7228
+ "name": "id",
7229
+ "description": "The id of the NFT to burn.",
7230
+ "in": "path",
7231
+ "required": true,
7232
+ "schema": {
7233
+ "type": "string"
7234
+ },
7235
+ "style": "simple",
7236
+ "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7237
+ }
7238
+ ],
7239
+ "security": [
7240
+ {
7241
+ "jwtBearerAuthScheme": []
7242
+ }
7243
+ ],
7244
+ "responses": {
7245
+ "204": {
7246
+ "description": "The rest request ended in success with no data."
7247
+ },
7248
+ "400": {
7249
+ "description": "The server cannot process the request, see the content for more details.",
7250
+ "content": {
7251
+ "application/json": {
7252
+ "schema": {
7253
+ "$ref": "#/components/schemas/Error"
7254
+ },
7255
+ "examples": {
7256
+ "exampleResponse": {
7257
+ "value": {
7258
+ "name": "GeneralError",
7259
+ "message": "errorMessage",
7260
+ "properties": {
7261
+ "foo": "bar"
7262
+ }
7263
+ }
7264
+ }
7265
+ }
7266
+ }
7267
+ }
7268
+ },
7269
+ "401": {
7270
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7271
+ "content": {
7272
+ "application/json": {
7273
+ "schema": {
7274
+ "$ref": "#/components/schemas/Error"
7275
+ },
7276
+ "examples": {
7277
+ "exampleResponse": {
7278
+ "value": {
7279
+ "name": "UnauthorizedError",
7280
+ "message": "errorMessage"
7281
+ }
7282
+ }
7283
+ }
7284
+ }
7285
+ }
7286
+ },
7287
+ "500": {
7288
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7289
+ "content": {
7290
+ "application/json": {
7291
+ "schema": {
7292
+ "$ref": "#/components/schemas/Error"
7293
+ },
7294
+ "examples": {
7295
+ "exampleResponse": {
7296
+ "value": {
7297
+ "name": "InternalServerError",
7298
+ "message": "errorMessage"
7299
+ }
7300
+ }
7301
+ }
7302
+ }
7303
+ }
7304
+ }
7305
+ }
7306
+ },
7307
+ "put": {
7308
+ "operationId": "nftUpdate",
7309
+ "summary": "Update an NFT",
7310
+ "tags": [
7311
+ "NFT"
7312
+ ],
7313
+ "parameters": [
7314
+ {
7315
+ "name": "id",
7316
+ "description": "The id of the NFT to transfer in urn format.",
7317
+ "in": "path",
7318
+ "required": true,
7319
+ "schema": {
7320
+ "type": "string"
7321
+ },
7322
+ "style": "simple",
7323
+ "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7324
+ }
7325
+ ],
7326
+ "security": [
7327
+ {
7328
+ "jwtBearerAuthScheme": []
7329
+ }
7330
+ ],
7331
+ "requestBody": {
7332
+ "description": "Update the mutable data for the NFT.",
7333
+ "required": true,
7334
+ "content": {
7335
+ "application/json": {
7336
+ "schema": {
7337
+ "$ref": "#/components/schemas/NftUpdateRequest"
7338
+ },
7339
+ "examples": {
7340
+ "nftUpdateExample": {
7341
+ "value": {
7342
+ "metadata": {
7343
+ "data": "AAAAA"
7344
+ }
7345
+ }
7346
+ }
7347
+ }
7348
+ }
7349
+ }
7350
+ },
7351
+ "responses": {
7352
+ "204": {
7353
+ "description": "The rest request ended in success with no data."
7354
+ },
7355
+ "400": {
7356
+ "description": "The server cannot process the request, see the content for more details.",
7357
+ "content": {
7358
+ "application/json": {
7359
+ "schema": {
7360
+ "$ref": "#/components/schemas/Error"
7361
+ },
7362
+ "examples": {
7363
+ "exampleResponse": {
7364
+ "value": {
7365
+ "name": "GeneralError",
7366
+ "message": "errorMessage",
7367
+ "properties": {
7368
+ "foo": "bar"
7369
+ }
7370
+ }
7371
+ }
7372
+ }
7373
+ }
7374
+ }
7375
+ },
7376
+ "401": {
7377
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7378
+ "content": {
7379
+ "application/json": {
7380
+ "schema": {
7381
+ "$ref": "#/components/schemas/Error"
7382
+ },
7383
+ "examples": {
7384
+ "exampleResponse": {
7385
+ "value": {
7386
+ "name": "UnauthorizedError",
7387
+ "message": "errorMessage"
7388
+ }
7389
+ }
7390
+ }
7391
+ }
7392
+ }
7393
+ },
7394
+ "500": {
7395
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7396
+ "content": {
7397
+ "application/json": {
7398
+ "schema": {
7399
+ "$ref": "#/components/schemas/Error"
7400
+ },
7401
+ "examples": {
7402
+ "exampleResponse": {
7403
+ "value": {
7404
+ "name": "InternalServerError",
7405
+ "message": "errorMessage"
7406
+ }
7407
+ }
7408
+ }
7409
+ }
7410
+ }
7411
+ }
7412
+ }
7413
+ }
7414
+ },
7415
+ "/nft/{id}/transfer": {
7416
+ "post": {
7417
+ "operationId": "nftTransfer",
7418
+ "summary": "Transfer an NFT",
7419
+ "tags": [
7420
+ "NFT"
7421
+ ],
7422
+ "parameters": [
7423
+ {
7424
+ "name": "id",
7425
+ "description": "The id of the NFT to transfer in urn format.",
7426
+ "in": "path",
7427
+ "required": true,
7428
+ "schema": {
7429
+ "type": "string"
7430
+ },
7431
+ "style": "simple",
7432
+ "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7433
+ }
7434
+ ],
7435
+ "security": [
7436
+ {
7437
+ "jwtBearerAuthScheme": []
7438
+ }
7439
+ ],
7440
+ "requestBody": {
7441
+ "description": "Transfer the NFT and update the metadata.",
7442
+ "required": true,
7443
+ "content": {
7444
+ "application/json": {
7445
+ "schema": {
7446
+ "$ref": "#/components/schemas/NftTransferRequest"
7447
+ },
7448
+ "examples": {
7449
+ "nftTransferExample": {
7450
+ "value": {
7451
+ "recipientAddress": "tst1prctjk5ck0dutnsunnje6u90jk5htx03qznjjmkd6843pzltlgz87srjzzv",
7452
+ "metadata": {
7453
+ "data": "AAAAA"
7454
+ }
7455
+ }
7456
+ }
7457
+ }
7458
+ }
7459
+ }
7460
+ },
7461
+ "responses": {
7462
+ "204": {
7463
+ "description": "The rest request ended in success with no data."
7464
+ },
7465
+ "400": {
7466
+ "description": "The server cannot process the request, see the content for more details.",
7467
+ "content": {
7468
+ "application/json": {
7469
+ "schema": {
7470
+ "$ref": "#/components/schemas/Error"
7471
+ },
7472
+ "examples": {
7473
+ "exampleResponse": {
7474
+ "value": {
7475
+ "name": "GeneralError",
7476
+ "message": "errorMessage",
7477
+ "properties": {
7478
+ "foo": "bar"
7479
+ }
7480
+ }
7481
+ }
7482
+ }
7483
+ }
7484
+ }
7485
+ },
7486
+ "401": {
7487
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7488
+ "content": {
7489
+ "application/json": {
7490
+ "schema": {
7491
+ "$ref": "#/components/schemas/Error"
7492
+ },
7493
+ "examples": {
7494
+ "exampleResponse": {
7495
+ "value": {
7496
+ "name": "UnauthorizedError",
7497
+ "message": "errorMessage"
7498
+ }
7499
+ }
7500
+ }
7501
+ }
7502
+ }
7503
+ },
7504
+ "500": {
7505
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7506
+ "content": {
7507
+ "application/json": {
7508
+ "schema": {
7509
+ "$ref": "#/components/schemas/Error"
7510
+ },
7511
+ "examples": {
7512
+ "exampleResponse": {
7513
+ "value": {
7514
+ "name": "InternalServerError",
7515
+ "message": "errorMessage"
7516
+ }
7517
+ }
7518
+ }
7519
+ }
7520
+ }
7521
+ }
7522
+ }
7523
+ }
7524
+ },
7525
+ "/notarization": {
7526
+ "post": {
7527
+ "operationId": "notarizationCreate",
7528
+ "summary": "Create a notarization",
7529
+ "tags": [
7530
+ "Notarization"
7531
+ ],
7532
+ "security": [
7533
+ {
7534
+ "jwtBearerAuthScheme": []
7535
+ }
7536
+ ],
7537
+ "requestBody": {
7538
+ "description": "Request to create a notarization.",
7539
+ "required": true,
7540
+ "content": {
7541
+ "application/json": {
7542
+ "schema": {
7543
+ "$ref": "#/components/schemas/NotarizationCreateRequest"
7544
+ },
7545
+ "examples": {
7546
+ "notarizationCreateExample": {
7547
+ "value": {
7548
+ "mode": "dynamic",
7549
+ "data": {},
7550
+ "description": "My first notarization"
7551
+ }
7552
+ }
7553
+ }
7554
+ }
7555
+ }
7556
+ },
7557
+ "responses": {
7558
+ "201": {
7559
+ "description": "The rest request ended in created response.",
7560
+ "headers": {
7561
+ "location": {
7562
+ "schema": {
7563
+ "type": "string"
7564
+ },
7565
+ "description": "e.g. 123"
7566
+ }
7567
+ }
7568
+ },
7569
+ "400": {
7570
+ "description": "The server cannot process the request, see the content for more details.",
7571
+ "content": {
7572
+ "application/json": {
7573
+ "schema": {
7574
+ "$ref": "#/components/schemas/Error"
7575
+ },
7576
+ "examples": {
7577
+ "exampleResponse": {
7578
+ "value": {
7579
+ "name": "GeneralError",
7580
+ "message": "errorMessage",
7581
+ "properties": {
7582
+ "foo": "bar"
7583
+ }
7584
+ }
7585
+ }
7586
+ }
7587
+ }
7588
+ }
7589
+ },
7590
+ "401": {
7591
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7592
+ "content": {
7593
+ "application/json": {
7594
+ "schema": {
7595
+ "$ref": "#/components/schemas/Error"
7596
+ },
7597
+ "examples": {
7598
+ "exampleResponse": {
7599
+ "value": {
7600
+ "name": "UnauthorizedError",
7601
+ "message": "errorMessage"
7602
+ }
7603
+ }
7604
+ }
7605
+ }
7606
+ }
7607
+ },
7608
+ "500": {
7609
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7610
+ "content": {
7611
+ "application/json": {
7612
+ "schema": {
7613
+ "$ref": "#/components/schemas/Error"
7614
+ },
7615
+ "examples": {
7616
+ "exampleResponse": {
7617
+ "value": {
7618
+ "name": "InternalServerError",
7619
+ "message": "errorMessage"
7620
+ }
7621
+ }
7622
+ }
7623
+ }
7624
+ }
7625
+ }
7626
+ }
7627
+ }
7628
+ },
7629
+ "/notarization/{id}": {
7630
+ "get": {
7631
+ "operationId": "notarizationGet",
7632
+ "summary": "Get a notarization",
7633
+ "tags": [
7634
+ "Notarization"
7635
+ ],
6668
7636
  "parameters": [
6669
7637
  {
6670
7638
  "name": "id",
6671
- "description": "The id of the NFT to burn.",
7639
+ "description": "The id of the notarization to get.",
6672
7640
  "in": "path",
6673
7641
  "required": true,
6674
7642
  "schema": {
6675
7643
  "type": "string"
6676
7644
  },
6677
7645
  "style": "simple",
6678
- "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7646
+ "example": "123"
7647
+ }
7648
+ ],
7649
+ "security": [
7650
+ {
7651
+ "jwtBearerAuthScheme": []
7652
+ }
7653
+ ],
7654
+ "responses": {
7655
+ "200": {
7656
+ "description": "Response for getting a notarization.",
7657
+ "content": {
7658
+ "application/json": {
7659
+ "schema": {
7660
+ "$ref": "#/components/schemas/Notarization"
7661
+ },
7662
+ "examples": {
7663
+ "notarizationGetResponseExample": {
7664
+ "value": {
7665
+ "id": "123",
7666
+ "mode": "dynamic",
7667
+ "dateCreated": "2026-01-01T00:00:00.000Z",
7668
+ "data": {},
7669
+ "description": "A notarization"
7670
+ }
7671
+ }
7672
+ }
7673
+ }
7674
+ }
7675
+ },
7676
+ "400": {
7677
+ "description": "The server cannot process the request, see the content for more details.",
7678
+ "content": {
7679
+ "application/json": {
7680
+ "schema": {
7681
+ "$ref": "#/components/schemas/Error"
7682
+ },
7683
+ "examples": {
7684
+ "exampleResponse": {
7685
+ "value": {
7686
+ "name": "GeneralError",
7687
+ "message": "errorMessage",
7688
+ "properties": {
7689
+ "foo": "bar"
7690
+ }
7691
+ }
7692
+ }
7693
+ }
7694
+ }
7695
+ }
7696
+ },
7697
+ "401": {
7698
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
7699
+ "content": {
7700
+ "application/json": {
7701
+ "schema": {
7702
+ "$ref": "#/components/schemas/Error"
7703
+ },
7704
+ "examples": {
7705
+ "exampleResponse": {
7706
+ "value": {
7707
+ "name": "UnauthorizedError",
7708
+ "message": "errorMessage"
7709
+ }
7710
+ }
7711
+ }
7712
+ }
7713
+ }
7714
+ },
7715
+ "500": {
7716
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
7717
+ "content": {
7718
+ "application/json": {
7719
+ "schema": {
7720
+ "$ref": "#/components/schemas/Error"
7721
+ },
7722
+ "examples": {
7723
+ "exampleResponse": {
7724
+ "value": {
7725
+ "name": "InternalServerError",
7726
+ "message": "errorMessage"
7727
+ }
7728
+ }
7729
+ }
7730
+ }
7731
+ }
7732
+ }
7733
+ }
7734
+ },
7735
+ "delete": {
7736
+ "operationId": "notarizationRemove",
7737
+ "summary": "Remove a notarization",
7738
+ "tags": [
7739
+ "Notarization"
7740
+ ],
7741
+ "parameters": [
7742
+ {
7743
+ "name": "id",
7744
+ "description": "The id of the notarization to remove.",
7745
+ "in": "path",
7746
+ "required": true,
7747
+ "schema": {
7748
+ "type": "string"
7749
+ },
7750
+ "style": "simple",
7751
+ "example": "123"
6679
7752
  }
6680
7753
  ],
6681
7754
  "security": [
@@ -6747,22 +7820,22 @@
6747
7820
  }
6748
7821
  },
6749
7822
  "put": {
6750
- "operationId": "nftUpdate",
6751
- "summary": "Update an NFT",
7823
+ "operationId": "notarizationUpdate",
7824
+ "summary": "Update a notarization",
6752
7825
  "tags": [
6753
- "NFT"
7826
+ "Notarization"
6754
7827
  ],
6755
7828
  "parameters": [
6756
7829
  {
6757
7830
  "name": "id",
6758
- "description": "The id of the NFT to transfer in urn format.",
7831
+ "description": "The id of the notarization to update.",
6759
7832
  "in": "path",
6760
7833
  "required": true,
6761
7834
  "schema": {
6762
7835
  "type": "string"
6763
7836
  },
6764
7837
  "style": "simple",
6765
- "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7838
+ "example": "123"
6766
7839
  }
6767
7840
  ],
6768
7841
  "security": [
@@ -6771,19 +7844,21 @@
6771
7844
  }
6772
7845
  ],
6773
7846
  "requestBody": {
6774
- "description": "Update the mutable data for the NFT.",
7847
+ "description": "Request to update a notarization.",
6775
7848
  "required": true,
6776
7849
  "content": {
6777
7850
  "application/json": {
6778
7851
  "schema": {
6779
- "$ref": "#/components/schemas/NftUpdateRequest"
7852
+ "$ref": "#/components/schemas/Notarization"
6780
7853
  },
6781
7854
  "examples": {
6782
- "nftUpdateExample": {
7855
+ "notarizationUpdateExample": {
6783
7856
  "value": {
6784
- "metadata": {
6785
- "data": "AAAAA"
6786
- }
7857
+ "id": "123",
7858
+ "mode": "dynamic",
7859
+ "dateCreated": "2026-01-01T00:00:00.000Z",
7860
+ "data": {},
7861
+ "description": "Updated notarization"
6787
7862
  }
6788
7863
  }
6789
7864
  }
@@ -6854,24 +7929,24 @@
6854
7929
  }
6855
7930
  }
6856
7931
  },
6857
- "/nft/{id}/transfer": {
7932
+ "/notarization/{id}/transfer": {
6858
7933
  "post": {
6859
- "operationId": "nftTransfer",
6860
- "summary": "Transfer an NFT",
7934
+ "operationId": "notarizationTransfer",
7935
+ "summary": "Transfer a notarization",
6861
7936
  "tags": [
6862
- "NFT"
7937
+ "Notarization"
6863
7938
  ],
6864
7939
  "parameters": [
6865
7940
  {
6866
7941
  "name": "id",
6867
- "description": "The id of the NFT to transfer in urn format.",
7942
+ "description": "The id of the notarization to transfer.",
6868
7943
  "in": "path",
6869
7944
  "required": true,
6870
7945
  "schema": {
6871
7946
  "type": "string"
6872
7947
  },
6873
7948
  "style": "simple",
6874
- "example": "nft:iota:aW90YS1uZnQ6dHN0OjB4NzYyYjljNDllYTg2OWUwZWJkYTliYmZhNzY5Mzk0NDdhNDI4ZGNmMTc4YzVkMTVhYjQ0N2UyZDRmYmJiNGViMg=="
7949
+ "example": "123"
6875
7950
  }
6876
7951
  ],
6877
7952
  "security": [
@@ -6880,21 +7955,17 @@
6880
7955
  }
6881
7956
  ],
6882
7957
  "requestBody": {
6883
- "description": "Transfer the NFT and update the metadata.",
7958
+ "description": "Request to transfer a notarization.",
6884
7959
  "required": true,
6885
7960
  "content": {
6886
7961
  "application/json": {
6887
7962
  "schema": {
6888
- "$ref": "#/components/schemas/NftTransferRequest"
7963
+ "$ref": "#/components/schemas/NotarizationTransferRequest"
6889
7964
  },
6890
7965
  "examples": {
6891
- "nftTransferExample": {
7966
+ "notarizationTransferExample": {
6892
7967
  "value": {
6893
- "recipientIdentity": "did:iota:tst:0x85ef62ea94fc4eeeeeddf6acc3b566e988e613081d0b93cc54ed831ed4c18d44",
6894
- "recipientAddress": "tst1prctjk5ck0dutnsunnje6u90jk5htx03qznjjmkd6843pzltlgz87srjzzv",
6895
- "metadata": {
6896
- "data": "AAAAA"
6897
- }
7968
+ "recipientAddress": "recipient-address-1"
6898
7969
  }
6899
7970
  }
6900
7971
  }
@@ -12166,6 +13237,116 @@
12166
13237
  }
12167
13238
  }
12168
13239
  },
13240
+ "/ais/{id}/close": {
13241
+ "put": {
13242
+ "operationId": "auditableItemStreamClose",
13243
+ "summary": "Close a stream",
13244
+ "tags": [
13245
+ "Auditable Item Stream"
13246
+ ],
13247
+ "parameters": [
13248
+ {
13249
+ "name": "id",
13250
+ "description": "The id of the stream to close.",
13251
+ "in": "path",
13252
+ "required": true,
13253
+ "schema": {
13254
+ "type": "string"
13255
+ },
13256
+ "style": "simple",
13257
+ "example": "ais:1234567890"
13258
+ }
13259
+ ],
13260
+ "security": [
13261
+ {
13262
+ "jwtBearerAuthScheme": []
13263
+ }
13264
+ ],
13265
+ "responses": {
13266
+ "204": {
13267
+ "description": "The rest request ended in success with no data."
13268
+ },
13269
+ "400": {
13270
+ "description": "The server cannot process the request, see the content for more details.",
13271
+ "content": {
13272
+ "application/json": {
13273
+ "schema": {
13274
+ "$ref": "#/components/schemas/Error"
13275
+ },
13276
+ "examples": {
13277
+ "exampleResponse": {
13278
+ "value": {
13279
+ "name": "GeneralError",
13280
+ "message": "errorMessage",
13281
+ "properties": {
13282
+ "foo": "bar"
13283
+ }
13284
+ }
13285
+ }
13286
+ }
13287
+ }
13288
+ }
13289
+ },
13290
+ "401": {
13291
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
13292
+ "content": {
13293
+ "application/json": {
13294
+ "schema": {
13295
+ "$ref": "#/components/schemas/Error"
13296
+ },
13297
+ "examples": {
13298
+ "exampleResponse": {
13299
+ "value": {
13300
+ "name": "UnauthorizedError",
13301
+ "message": "errorMessage"
13302
+ }
13303
+ }
13304
+ }
13305
+ }
13306
+ }
13307
+ },
13308
+ "404": {
13309
+ "description": "The resource you tried to access does not exist, see the content for more details.",
13310
+ "content": {
13311
+ "application/json": {
13312
+ "schema": {
13313
+ "$ref": "#/components/schemas/NotFoundResponse"
13314
+ },
13315
+ "examples": {
13316
+ "exampleResponse": {
13317
+ "value": {
13318
+ "name": "NotFoundError",
13319
+ "message": "errorMessage",
13320
+ "properties": {
13321
+ "notFoundId": "1"
13322
+ }
13323
+ }
13324
+ }
13325
+ }
13326
+ }
13327
+ }
13328
+ },
13329
+ "500": {
13330
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
13331
+ "content": {
13332
+ "application/json": {
13333
+ "schema": {
13334
+ "$ref": "#/components/schemas/Error"
13335
+ },
13336
+ "examples": {
13337
+ "exampleResponse": {
13338
+ "value": {
13339
+ "name": "InternalServerError",
13340
+ "message": "errorMessage"
13341
+ }
13342
+ }
13343
+ }
13344
+ }
13345
+ }
13346
+ }
13347
+ }
13348
+ }
13349
+ },
12169
13350
  "/ais/{id}/entries": {
12170
13351
  "post": {
12171
13352
  "operationId": "auditableItemStreamCreateEntry",
@@ -18562,6 +19743,82 @@
18562
19743
  "dateCreated"
18563
19744
  ]
18564
19745
  },
19746
+ "AutomationActionCreateRequest": {
19747
+ "description": "The body parameters for the request.",
19748
+ "type": "object",
19749
+ "properties": {
19750
+ "actionType": {
19751
+ "type": "string",
19752
+ "description": "The type of the automation action."
19753
+ },
19754
+ "trigger": {
19755
+ "type": "string",
19756
+ "description": "The trigger of the automation action."
19757
+ },
19758
+ "configuration": {
19759
+ "description": "The configuration of the automation action."
19760
+ }
19761
+ },
19762
+ "required": [
19763
+ "actionType",
19764
+ "trigger"
19765
+ ]
19766
+ },
19767
+ "AutomationActionEntry": {
19768
+ "description": "Interface describing an automation action entry.",
19769
+ "type": "object",
19770
+ "properties": {
19771
+ "id": {
19772
+ "type": "string",
19773
+ "description": "The id of the automation action."
19774
+ },
19775
+ "actionType": {
19776
+ "type": "string",
19777
+ "description": "The type of the automation action."
19778
+ },
19779
+ "trigger": {
19780
+ "type": "string",
19781
+ "description": "The trigger of the automation action."
19782
+ },
19783
+ "configuration": {
19784
+ "description": "The configuration of the automation action."
19785
+ }
19786
+ },
19787
+ "required": [
19788
+ "id",
19789
+ "actionType",
19790
+ "trigger"
19791
+ ]
19792
+ },
19793
+ "AutomationActionsQueryResponse": {
19794
+ "type": "object",
19795
+ "properties": {
19796
+ "entries": {
19797
+ "type": "array",
19798
+ "items": {
19799
+ "$ref": "#/components/schemas/AutomationActionEntry"
19800
+ },
19801
+ "description": "List of automation action entries matching the query."
19802
+ },
19803
+ "cursor": {
19804
+ "type": "string",
19805
+ "description": "Optional cursor for pagination."
19806
+ }
19807
+ },
19808
+ "required": [
19809
+ "entries"
19810
+ ],
19811
+ "description": "The body of the response."
19812
+ },
19813
+ "AutomationTriggerRequest": {
19814
+ "type": "object",
19815
+ "properties": {
19816
+ "data": {
19817
+ "description": "Optional data to be passed to the actions."
19818
+ }
19819
+ },
19820
+ "description": "The body parameters."
19821
+ },
18565
19822
  "BlobStorageCreateRequest": {
18566
19823
  "type": "object",
18567
19824
  "properties": {
@@ -19547,9 +20804,9 @@
19547
20804
  "type": "string",
19548
20805
  "description": "The issuer of the NFT."
19549
20806
  },
19550
- "owner": {
20807
+ "issuerIdentityId": {
19551
20808
  "type": "string",
19552
- "description": "The owner of the NFT."
20809
+ "description": "The on-chain Object ID of the verified IOTA Identity that minted this NFT.\nEmpty string when not minted with identity verification."
19553
20810
  },
19554
20811
  "tag": {
19555
20812
  "type": "string",
@@ -19564,7 +20821,7 @@
19564
20821
  },
19565
20822
  "required": [
19566
20823
  "issuer",
19567
- "owner",
20824
+ "issuerIdentityId",
19568
20825
  "tag"
19569
20826
  ],
19570
20827
  "description": "The data that was resolved."
@@ -19572,10 +20829,6 @@
19572
20829
  "NftTransferRequest": {
19573
20830
  "type": "object",
19574
20831
  "properties": {
19575
- "recipientIdentity": {
19576
- "type": "string",
19577
- "description": "The recipient identity for the NFT."
19578
- },
19579
20832
  "recipientAddress": {
19580
20833
  "type": "string",
19581
20834
  "description": "The recipient address for the NFT."
@@ -19585,7 +20838,6 @@
19585
20838
  }
19586
20839
  },
19587
20840
  "required": [
19588
- "recipientIdentity",
19589
20841
  "recipientAddress"
19590
20842
  ],
19591
20843
  "description": "The data to be used in the transfer."
@@ -19614,6 +20866,134 @@
19614
20866
  ],
19615
20867
  "description": "The body which contains the error."
19616
20868
  },
20869
+ "Notarization": {
20870
+ "description": "Interface describing a notarization.",
20871
+ "type": "object",
20872
+ "properties": {
20873
+ "id": {
20874
+ "type": "string",
20875
+ "description": "The unique identifier of the notarization."
20876
+ },
20877
+ "mode": {
20878
+ "$ref": "#/components/schemas/NotarizationMode"
20879
+ },
20880
+ "dateCreated": {
20881
+ "type": "string",
20882
+ "description": "The date and time when the notarization was created, in ISO 8601 format."
20883
+ },
20884
+ "dateModified": {
20885
+ "type": "string",
20886
+ "description": "The date and time when the notarization was last modified, in ISO 8601 format."
20887
+ },
20888
+ "data": {
20889
+ "type": "array",
20890
+ "items": {
20891
+ "type": "number"
20892
+ },
20893
+ "description": "The notarization data as a byte array."
20894
+ },
20895
+ "immutableDescription": {
20896
+ "type": "string",
20897
+ "description": "An optional description of the notarization that cannot be changed after creation."
20898
+ },
20899
+ "description": {
20900
+ "type": "string",
20901
+ "description": "An optional description of the notarization that can be modified until the notarization is locked."
20902
+ },
20903
+ "deleteLockDateTime": {
20904
+ "type": "string",
20905
+ "description": "An optional lock date, in ISO 8601 format, that prevents deletion until the date is reached.\nUsed only in Locked Notarization, it prevents the object from being deleted until the lock expires."
20906
+ },
20907
+ "transferLockUntilDestroyed": {
20908
+ "type": "boolean",
20909
+ "description": "An optional flag indicating transfer lock is active until the notarization is destroyed.\nUsed only in Dynamic Notarization."
20910
+ },
20911
+ "transferLockDateTime": {
20912
+ "type": "string",
20913
+ "description": "An optional transfer lock date-time, in ISO 8601 format.\nUsed only in Dynamic Notarization."
20914
+ }
20915
+ },
20916
+ "required": [
20917
+ "id",
20918
+ "mode",
20919
+ "dateCreated",
20920
+ "data"
20921
+ ]
20922
+ },
20923
+ "NotarizationCreateRequest": {
20924
+ "type": "object",
20925
+ "properties": {
20926
+ "mode": {
20927
+ "$ref": "#/components/schemas/NotarizationMode"
20928
+ },
20929
+ "dateModified": {
20930
+ "type": "string",
20931
+ "description": "The date and time when the notarization was last modified, in ISO 8601 format."
20932
+ },
20933
+ "data": {
20934
+ "type": "array",
20935
+ "items": {
20936
+ "type": "number"
20937
+ },
20938
+ "description": "The notarization data as a byte array."
20939
+ },
20940
+ "immutableDescription": {
20941
+ "type": "string",
20942
+ "description": "An optional description of the notarization that cannot be changed after creation."
20943
+ },
20944
+ "description": {
20945
+ "type": "string",
20946
+ "description": "An optional description of the notarization that can be modified until the notarization is locked."
20947
+ },
20948
+ "deleteLockDateTime": {
20949
+ "type": "string",
20950
+ "description": "An optional lock date, in ISO 8601 format, that prevents deletion until the date is reached.\nUsed only in Locked Notarization, it prevents the object from being deleted until the lock expires."
20951
+ },
20952
+ "transferLockUntilDestroyed": {
20953
+ "type": "boolean",
20954
+ "description": "An optional flag indicating transfer lock is active until the notarization is destroyed.\nUsed only in Dynamic Notarization."
20955
+ },
20956
+ "transferLockDateTime": {
20957
+ "type": "string",
20958
+ "description": "An optional transfer lock date-time, in ISO 8601 format.\nUsed only in Dynamic Notarization."
20959
+ },
20960
+ "namespace": {
20961
+ "type": "string",
20962
+ "description": "The namespace of the connector to use for the notarization, defaults to component configured namespace."
20963
+ }
20964
+ },
20965
+ "required": [
20966
+ "mode",
20967
+ "data"
20968
+ ],
20969
+ "description": "The request data."
20970
+ },
20971
+ "NotarizationMode": {
20972
+ "description": "Supported notarization mode values.",
20973
+ "anyOf": [
20974
+ {
20975
+ "const": "dynamic",
20976
+ "description": "Dynamic notarization mode."
20977
+ },
20978
+ {
20979
+ "const": "locked",
20980
+ "description": "Locked notarization mode."
20981
+ }
20982
+ ]
20983
+ },
20984
+ "NotarizationTransferRequest": {
20985
+ "type": "object",
20986
+ "properties": {
20987
+ "recipientAddress": {
20988
+ "type": "string",
20989
+ "description": "The recipient address."
20990
+ }
20991
+ },
20992
+ "required": [
20993
+ "recipientAddress"
20994
+ ],
20995
+ "description": "The request data."
20996
+ },
19617
20997
  "PapCreateRequest": {
19618
20998
  "description": "The body of the request - the policy to create (id will be auto-generated if not provided).",
19619
20999
  "type": "object",