@digdir/dialogporten-schema 1.120.0 → 1.120.2-909cacd

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digdir/dialogporten-schema",
3
- "version": "1.120.0",
3
+ "version": "1.120.2-909cacd",
4
4
  "description": "GraphQl schema and OpenAPI spec for Dialogporten",
5
5
  "engines": {
6
6
  "node": "24"
@@ -48,6 +48,9 @@ type ApiAction {
48
48
  action: String!
49
49
  "Contains an authorization resource attributeId, that can used in custom authorization rules in the XACML service policy, which by default is the policy belonging to the service referred to by 'serviceResource' in the dialog. Can also be used to refer to other service policies."
50
50
  authorizationAttribute: String
51
+ @deprecated(
52
+ reason: "Use of 'authorizationContext' on the service owner API is preferred; this field only reflects the legacy authorization attribute."
53
+ )
51
54
  "True if the authenticated user is authorized for this action. If not, the action will not be available and all endpoints will be replaced with a fixed placeholder."
52
55
  isAuthorized: Boolean!
53
56
  "The logical name of the operation the API action refers to."
@@ -88,6 +91,8 @@ type Attachment {
88
91
  urls: [AttachmentUrl!]!
89
92
  "The UTC timestamp when the attachment expires and is no longer available."
90
93
  expiresAt: DateTime
94
+ "Indicates whether the authenticated user is authorized for this attachment. If not, the URLs will be replaced with 'urn:dialogporten:unauthorized'."
95
+ isAuthorized: Boolean!
91
96
  }
92
97
 
93
98
  type AttachmentUrl {
@@ -210,7 +215,7 @@ type Dialog {
210
215
  updatedAt: DateTime!
211
216
  "The date and time when the dialog content was last updated. Example: 2022-12-31T23:59:59Z"
212
217
  contentUpdatedAt: DateTime!
213
- "The dialog token. May be used (if supported) against external URLs referred to in this dialog's apiActions, transmissions or attachments. It should also be used for front-channel embeds."
218
+ "The dialog token. May be used (if supported) against external URLs referred to in this dialog's apiActions, transmissions or attachments. It should also be used for front-channel embeds. The token's authorized entities ('e') claim lists, for every entity carrying an authorization context that the end user is authorized for, the entity's id or the 'tokenRef' the service owner supplied on the context. A tokenRef shared by multiple entities represents an OR-group: authorization for any group member adds the shared value. Recipients must validate the dialog id ('i') together with an entity reference."
214
219
  dialogToken: String
215
220
  "The aggregated status of the dialog."
216
221
  status: DialogStatus!
@@ -236,10 +241,16 @@ type Dialog {
236
241
  content: Content!
237
242
  "The attachments associated with the dialog (on an aggregate level)."
238
243
  attachments: [Attachment!]!
244
+ "Dialog-level attachments that exist but are withheld from the authenticated user, listed by id and creation time only. An attachment is excluded rather than shown with masked URLs when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
245
+ excludedAttachments: [ExcludedElement!]
239
246
  "The GUI actions associated with the dialog. Should be used in browser-based interactive frontends."
240
247
  guiActions: [GuiAction!]!
248
+ "GUI actions that exist but are withheld from the authenticated user, listed by id and creation time only. A GUI action is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
249
+ excludedGuiActions: [ExcludedElement!]
241
250
  "The API actions associated with the dialog. Should be used in specialized, non-browser-based integrations."
242
251
  apiActions: [ApiAction!]!
252
+ "API actions that exist but are withheld from the authenticated user, listed by id and creation time only. An API action is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
253
+ excludedApiActions: [ExcludedElement!]
243
254
  "An immutable list of activities associated with the dialog."
244
255
  activities: [Activity!]!
245
256
  "The list of seen log entries for the dialog newer than the dialog UpdatedAt date."
@@ -257,6 +268,8 @@ type Dialog {
257
268
  isContentSeen: Boolean!
258
269
  "The immutable list of transmissions associated with the dialog."
259
270
  transmissions: [Transmission!]!
271
+ "Transmissions that exist but are withheld from the authenticated user, listed by id and creation time only. A transmission is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'; its children go with it. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
272
+ excludedTransmissions: [ExcludedElement!]
260
273
  "Metadata about the dialog owned by end-users."
261
274
  endUserContext: EndUserContext!
262
275
  }
@@ -369,6 +382,13 @@ type EndUserSearchLimits {
369
382
  maxExtendedStatusFilterValues: Int!
370
383
  }
371
384
 
385
+ type ExcludedElement {
386
+ "The identifier of the excluded element, matching the id it would have had in its own collection."
387
+ id: UUID!
388
+ "The date and time when the excluded element was created. Lets a client order exclusions against the elements it can see, e.g. to tell where in a transmission thread something is missing."
389
+ createdAt: DateTime!
390
+ }
391
+
372
392
  type GuiAction {
373
393
  "The unique identifier for the action in UUIDv7 format."
374
394
  id: UUID!
@@ -378,6 +398,9 @@ type GuiAction {
378
398
  url: URL!
379
399
  "Contains an authorization resource attributeId, that can used in custom authorization rules in the XACML service policy, which by default is the policy belonging to the service referred to by 'serviceResource' in the dialog. Can also be used to refer to other service policies."
380
400
  authorizationAttribute: String
401
+ @deprecated(
402
+ reason: "Use of 'authorizationContext' on the service owner API is preferred; this field only reflects the legacy authorization attribute."
403
+ )
381
404
  "Whether the user is authorized to perform the action."
382
405
  isAuthorized: Boolean!
383
406
  "Indicates whether the action results in the dialog being deleted. Used by frontends to implement custom UX for delete actions."
@@ -649,6 +672,9 @@ type Transmission {
649
672
  createdAt: DateTime!
650
673
  "Contains an authorization resource attributeId, that can used in custom authorization rules in the XACML service policy, which by default is the policy belonging to the service referred to by 'serviceResource' in the dialog. Can also be used to refer to other service policies. Example: mycustomresource, urn:altinn:subresource:mycustomresource, urn:altinn:task:Task_1, urn:altinn:resource:some-other-service-identifier"
651
674
  authorizationAttribute: String
675
+ @deprecated(
676
+ reason: "Use of 'authorizationContext' on the service owner API is preferred; this field only reflects the legacy authorization attribute."
677
+ )
652
678
  "Flag indicating if the authenticated user is authorized for this transmission. If not, embedded content and the attachments will not be available."
653
679
  isAuthorized: Boolean!
654
680
  "Arbitrary URI/URN describing a service-specific transmission type. Refer to the service-specific documentation provided by the service owner for details (if in use)."
@@ -667,8 +693,12 @@ type Transmission {
667
693
  content: TransmissionContent!
668
694
  "The transmission-level attachments."
669
695
  attachments: [Attachment!]!
696
+ "Attachments on this transmission that exist but are withheld from the authenticated user, listed by id and creation time only. An attachment is excluded rather than shown with masked URLs when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
697
+ excludedAttachments: [ExcludedElement!]
670
698
  "The transmission-level navigational actions."
671
699
  navigationalActions: [TransmissionNavigationalAction!]!
700
+ "Navigational actions on this transmission that exist but are withheld from the authenticated user, listed by id and creation time only. A navigational action is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
701
+ excludedNavigationalActions: [ExcludedElement!]
672
702
  }
673
703
 
674
704
  type TransmissionContent {
@@ -681,12 +711,16 @@ type TransmissionContent {
681
711
  }
682
712
 
683
713
  type TransmissionNavigationalAction {
714
+ "The unique identifier for the navigational action in UUIDv7 format."
715
+ id: UUID!
684
716
  "The title of the navigational action."
685
717
  title: [Localization!]!
686
718
  "The fully qualified URL of the navigational action. Will be set to 'urn:dialogporten:unauthorized' if the user is not authorized to access the transmission, or 'urn:dialogporten:expired' if the action has expired."
687
719
  url: URL!
688
720
  "The UTC timestamp when the navigational action expires and is no longer available."
689
721
  expiresAt: DateTime
722
+ "Indicates whether the authenticated user is authorized for this navigational action. If not, the URL will be replaced with 'urn:dialogporten:unauthorized'."
723
+ isAuthorized: Boolean!
690
724
  }
691
725
 
692
726
  interface BulkSetSystemLabelError {
package/src/index.js CHANGED
@@ -48,6 +48,9 @@ type ApiAction {
48
48
  action: String!
49
49
  "Contains an authorization resource attributeId, that can used in custom authorization rules in the XACML service policy, which by default is the policy belonging to the service referred to by 'serviceResource' in the dialog. Can also be used to refer to other service policies."
50
50
  authorizationAttribute: String
51
+ @deprecated(
52
+ reason: "Use of 'authorizationContext' on the service owner API is preferred; this field only reflects the legacy authorization attribute."
53
+ )
51
54
  "True if the authenticated user is authorized for this action. If not, the action will not be available and all endpoints will be replaced with a fixed placeholder."
52
55
  isAuthorized: Boolean!
53
56
  "The logical name of the operation the API action refers to."
@@ -88,6 +91,8 @@ type Attachment {
88
91
  urls: [AttachmentUrl!]!
89
92
  "The UTC timestamp when the attachment expires and is no longer available."
90
93
  expiresAt: DateTime
94
+ "Indicates whether the authenticated user is authorized for this attachment. If not, the URLs will be replaced with 'urn:dialogporten:unauthorized'."
95
+ isAuthorized: Boolean!
91
96
  }
92
97
 
93
98
  type AttachmentUrl {
@@ -210,7 +215,7 @@ type Dialog {
210
215
  updatedAt: DateTime!
211
216
  "The date and time when the dialog content was last updated. Example: 2022-12-31T23:59:59Z"
212
217
  contentUpdatedAt: DateTime!
213
- "The dialog token. May be used (if supported) against external URLs referred to in this dialog's apiActions, transmissions or attachments. It should also be used for front-channel embeds."
218
+ "The dialog token. May be used (if supported) against external URLs referred to in this dialog's apiActions, transmissions or attachments. It should also be used for front-channel embeds. The token's authorized entities ('e') claim lists, for every entity carrying an authorization context that the end user is authorized for, the entity's id or the 'tokenRef' the service owner supplied on the context. A tokenRef shared by multiple entities represents an OR-group: authorization for any group member adds the shared value. Recipients must validate the dialog id ('i') together with an entity reference."
214
219
  dialogToken: String
215
220
  "The aggregated status of the dialog."
216
221
  status: DialogStatus!
@@ -236,10 +241,16 @@ type Dialog {
236
241
  content: Content!
237
242
  "The attachments associated with the dialog (on an aggregate level)."
238
243
  attachments: [Attachment!]!
244
+ "Dialog-level attachments that exist but are withheld from the authenticated user, listed by id and creation time only. An attachment is excluded rather than shown with masked URLs when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
245
+ excludedAttachments: [ExcludedElement!]
239
246
  "The GUI actions associated with the dialog. Should be used in browser-based interactive frontends."
240
247
  guiActions: [GuiAction!]!
248
+ "GUI actions that exist but are withheld from the authenticated user, listed by id and creation time only. A GUI action is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
249
+ excludedGuiActions: [ExcludedElement!]
241
250
  "The API actions associated with the dialog. Should be used in specialized, non-browser-based integrations."
242
251
  apiActions: [ApiAction!]!
252
+ "API actions that exist but are withheld from the authenticated user, listed by id and creation time only. An API action is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
253
+ excludedApiActions: [ExcludedElement!]
243
254
  "An immutable list of activities associated with the dialog."
244
255
  activities: [Activity!]!
245
256
  "The list of seen log entries for the dialog newer than the dialog UpdatedAt date."
@@ -257,6 +268,8 @@ type Dialog {
257
268
  isContentSeen: Boolean!
258
269
  "The immutable list of transmissions associated with the dialog."
259
270
  transmissions: [Transmission!]!
271
+ "Transmissions that exist but are withheld from the authenticated user, listed by id and creation time only. A transmission is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'; its children go with it. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
272
+ excludedTransmissions: [ExcludedElement!]
260
273
  "Metadata about the dialog owned by end-users."
261
274
  endUserContext: EndUserContext!
262
275
  }
@@ -369,6 +382,13 @@ type EndUserSearchLimits {
369
382
  maxExtendedStatusFilterValues: Int!
370
383
  }
371
384
 
385
+ type ExcludedElement {
386
+ "The identifier of the excluded element, matching the id it would have had in its own collection."
387
+ id: UUID!
388
+ "The date and time when the excluded element was created. Lets a client order exclusions against the elements it can see, e.g. to tell where in a transmission thread something is missing."
389
+ createdAt: DateTime!
390
+ }
391
+
372
392
  type GuiAction {
373
393
  "The unique identifier for the action in UUIDv7 format."
374
394
  id: UUID!
@@ -378,6 +398,9 @@ type GuiAction {
378
398
  url: URL!
379
399
  "Contains an authorization resource attributeId, that can used in custom authorization rules in the XACML service policy, which by default is the policy belonging to the service referred to by 'serviceResource' in the dialog. Can also be used to refer to other service policies."
380
400
  authorizationAttribute: String
401
+ @deprecated(
402
+ reason: "Use of 'authorizationContext' on the service owner API is preferred; this field only reflects the legacy authorization attribute."
403
+ )
381
404
  "Whether the user is authorized to perform the action."
382
405
  isAuthorized: Boolean!
383
406
  "Indicates whether the action results in the dialog being deleted. Used by frontends to implement custom UX for delete actions."
@@ -649,6 +672,9 @@ type Transmission {
649
672
  createdAt: DateTime!
650
673
  "Contains an authorization resource attributeId, that can used in custom authorization rules in the XACML service policy, which by default is the policy belonging to the service referred to by 'serviceResource' in the dialog. Can also be used to refer to other service policies. Example: mycustomresource, urn:altinn:subresource:mycustomresource, urn:altinn:task:Task_1, urn:altinn:resource:some-other-service-identifier"
651
674
  authorizationAttribute: String
675
+ @deprecated(
676
+ reason: "Use of 'authorizationContext' on the service owner API is preferred; this field only reflects the legacy authorization attribute."
677
+ )
652
678
  "Flag indicating if the authenticated user is authorized for this transmission. If not, embedded content and the attachments will not be available."
653
679
  isAuthorized: Boolean!
654
680
  "Arbitrary URI/URN describing a service-specific transmission type. Refer to the service-specific documentation provided by the service owner for details (if in use)."
@@ -667,8 +693,12 @@ type Transmission {
667
693
  content: TransmissionContent!
668
694
  "The transmission-level attachments."
669
695
  attachments: [Attachment!]!
696
+ "Attachments on this transmission that exist but are withheld from the authenticated user, listed by id and creation time only. An attachment is excluded rather than shown with masked URLs when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
697
+ excludedAttachments: [ExcludedElement!]
670
698
  "The transmission-level navigational actions."
671
699
  navigationalActions: [TransmissionNavigationalAction!]!
700
+ "Navigational actions on this transmission that exist but are withheld from the authenticated user, listed by id and creation time only. A navigational action is excluded rather than returned with isAuthorized=false when its authorization context sets unauthorizedPresentation to 'excluded'. Exclusions are reported per collection: the full set for a dialog is 'excludedAttachments', 'excludedTransmissions', 'excludedGuiActions' and 'excludedApiActions' on the dialog, plus 'excludedAttachments' and 'excludedNavigationalActions' on each transmission. Merge all six when answering 'what changed that I am not allowed to see?'; reading only one under-reports silently."
701
+ excludedNavigationalActions: [ExcludedElement!]
672
702
  }
673
703
 
674
704
  type TransmissionContent {
@@ -681,12 +711,16 @@ type TransmissionContent {
681
711
  }
682
712
 
683
713
  type TransmissionNavigationalAction {
714
+ "The unique identifier for the navigational action in UUIDv7 format."
715
+ id: UUID!
684
716
  "The title of the navigational action."
685
717
  title: [Localization!]!
686
718
  "The fully qualified URL of the navigational action. Will be set to 'urn:dialogporten:unauthorized' if the user is not authorized to access the transmission, or 'urn:dialogporten:expired' if the action has expired."
687
719
  url: URL!
688
720
  "The UTC timestamp when the navigational action expires and is no longer available."
689
721
  expiresAt: DateTime
722
+ "Indicates whether the authenticated user is authorized for this navigational action. If not, the URL will be replaced with 'urn:dialogporten:unauthorized'."
723
+ isAuthorized: Boolean!
690
724
  }
691
725
 
692
726
  interface BulkSetSystemLabelError {