@ikatec/digisac-api-sdk 4.13.0 → 4.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -53,8 +53,10 @@ export type Notification = {
53
53
  label: string | null;
54
54
  config: NotificationConfig | null;
55
55
  attachedType: string | null;
56
- attachedId: string | null;
57
- notificationReadId: string | null;
56
+ /** @deprecated Not answered: the model has no such column, so the transformer never sends it. */
57
+ attachedId?: string | null;
58
+ /** @deprecated Not answered: the model has no such column, so the transformer never sends it. */
59
+ notificationReadId?: string | null;
58
60
  contactId: string | null;
59
61
  userId: string;
60
62
  accountId: string;
@@ -67,7 +69,8 @@ export type Notification = {
67
69
  schedule?: Schedule | null;
68
70
  /** @deprecated Not served: the model has no such association, so it never comes. */
69
71
  contact?: Contact | null;
70
- notificationRead?: NotificationRead | null;
72
+ /** The read receipts of the notification (a list: `[]` while it was never read). */
73
+ notificationRead?: NotificationRead[];
71
74
  };
72
75
  /** The backend serves `user`, `schedule` and `notificationRead` (`contact` is never answered). */
73
76
  export type NotificationRelationships = 'user' | 'schedule' | 'contact' | 'notificationRead';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/apis/notifications/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/apis/notifications/types.ts"],"names":[],"mappings":"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"}
@@ -82,6 +82,16 @@ var ServicesApi = class extends require_core_ArchivableCrudApi.ArchivableCrudApi
82
82
  restart(id, headers) {
83
83
  return this.client.post(`${this.basePath}/${id}/restart`, void 0, headers);
84
84
  }
85
+ /**
86
+ * Denies the connection to users (`deny: true`) or gives it back (`deny: false`); the admins are skipped. Denying
87
+ * transfers the open tickets of those users in the connection. The rows are read with
88
+ * `ServiceAccessManagementApi.getMany`. An unknown connection answers 404 `Service not found.`; a missing
89
+ * `userIds` or a `deny` that is not a boolean answers 400.
90
+ * @permissions users.update AND services.operate
91
+ */
92
+ accessManagement(id, body, headers) {
93
+ return this.client.post(`${this.basePath}/${id}/access-management`, body, headers);
94
+ }
85
95
  };
86
96
 
87
97
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"ServicesApi.cjs","names":["ArchivableCrudApi"],"sources":["../../../src/apis/services/ServicesApi.ts"],"sourcesContent":["import type { ApiClient } from '../../core/ApiClient'\nimport { ArchivableCrudApi } from '../../core/ArchivableCrudApi'\nimport type {\n Service,\n CreateServicePayload,\n ServiceLimits,\n UpdateServicePayload,\n ArchiveServicePayload,\n} from './types'\n\nexport class ServicesApi extends ArchivableCrudApi<\n Service,\n CreateServicePayload,\n UpdateServicePayload\n> {\n constructor(client: ApiClient) {\n super(client, '/services')\n }\n\n /**\n * Returns, for each connection type of the account plan, how many connections are used,\n * allowed and still available.\n * @permissions services.view\n */\n getLimits(headers?: Record<string, string>): Promise<ServiceLimits> {\n return this.client.get<ServiceLimits>(`${this.basePath}/limits`, headers)\n }\n\n /**\n * @deprecated The backend does not archive a connection by `PUT { archivedAt }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override archive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.archive(id, headers)\n }\n\n /**\n * @deprecated The backend does not restore a connection by `PUT { archivedAt: null }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override unarchive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.unarchive(id, headers)\n }\n\n /**\n * Archives (`archive: true`) or restores (`archive: false`) a connection through the route used\n * by the UI. Archiving shuts the connection down, closes its open tickets, marks its schedules\n * as done and cancels its campaigns; restoring checks the plan limit of the `type` (400 when it\n * is full).\n *\n * Resolves `{}` before the work is done (the route does not await it): poll `getById` until\n * `archivedAt` changes. Send the `type` of the connection: without it the request is never\n * answered.\n * @permissions services.disabled\n */\n archiveWithValidation(\n id: string,\n body: ArchiveServicePayload,\n headers?: Record<string, string>,\n ): Promise<Record<string, never>> {\n return this.client.post<Record<string, never>, ArchiveServicePayload>(\n `${this.basePath}/${id}/archive`,\n body,\n headers,\n )\n }\n\n /**\n * Takes the session of the connection over to this server. Resolves the text `'OK'`; an\n * unknown id answers 404 `Service not found.`.\n * @permissions services.operate\n */\n takeover(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/takeover`, undefined, headers)\n }\n\n /**\n * Logs the connection out of the messaging service. Resolves the text `'OK'`; an unknown id\n * answers 404 `Service not found.`.\n * @permissions services.operate\n */\n logout(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/logout`, undefined, headers)\n }\n\n /**\n * Shuts the connection down. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n shutdown(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/shutdown`, undefined, headers)\n }\n\n /**\n * Starts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n start(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/start`, undefined, headers)\n }\n\n /**\n * Restarts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n restart(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/restart`, undefined, headers)\n }\n}\n"],"mappings":";;;;AAUA,IAAa,cAAb,cAAiCA,iDAI/B;CACA,YAAY,QAAmB;AAC7B,QAAM,QAAQ,YAAY;;;;;;;CAQ5B,UAAU,SAA0D;AAClE,SAAO,KAAK,OAAO,IAAmB,GAAG,KAAK,SAAS,UAAU,QAAQ;;;;;;CAO3E,AAAS,QAAQ,IAAY,SAAoD;AAC/E,SAAO,MAAM,QAAQ,IAAI,QAAQ;;;;;;CAOnC,AAAS,UAAU,IAAY,SAAoD;AACjF,SAAO,MAAM,UAAU,IAAI,QAAQ;;;;;;;;;;;;;CAcrC,sBACE,IACA,MACA,SACgC;AAChC,SAAO,KAAK,OAAO,KACjB,GAAG,KAAK,SAAS,GAAG,GAAG,WACvB,MACA,QACD;;;;;;;CAQH,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,OAAO,IAAY,SAAiD;AAClE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,UAAU,QAAW,QAAQ;;;;;;;CAQpF,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,MAAM,IAAY,SAAiD;AACjE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,SAAS,QAAW,QAAQ;;;;;;;CAQnF,QAAQ,IAAY,SAAiD;AACnE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,WAAW,QAAW,QAAQ"}
1
+ {"version":3,"file":"ServicesApi.cjs","names":["ArchivableCrudApi"],"sources":["../../../src/apis/services/ServicesApi.ts"],"sourcesContent":["import type { ApiClient } from '../../core/ApiClient'\nimport { ArchivableCrudApi } from '../../core/ArchivableCrudApi'\nimport type {\n Service,\n CreateServicePayload,\n ServiceLimits,\n UpdateServicePayload,\n ArchiveServicePayload,\n ServiceAccessManagementPayload,\n ServiceAccessManagementResponse,\n} from './types'\n\nexport class ServicesApi extends ArchivableCrudApi<\n Service,\n CreateServicePayload,\n UpdateServicePayload\n> {\n constructor(client: ApiClient) {\n super(client, '/services')\n }\n\n /**\n * Returns, for each connection type of the account plan, how many connections are used,\n * allowed and still available.\n * @permissions services.view\n */\n getLimits(headers?: Record<string, string>): Promise<ServiceLimits> {\n return this.client.get<ServiceLimits>(`${this.basePath}/limits`, headers)\n }\n\n /**\n * @deprecated The backend does not archive a connection by `PUT { archivedAt }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override archive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.archive(id, headers)\n }\n\n /**\n * @deprecated The backend does not restore a connection by `PUT { archivedAt: null }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override unarchive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.unarchive(id, headers)\n }\n\n /**\n * Archives (`archive: true`) or restores (`archive: false`) a connection through the route used\n * by the UI. Archiving shuts the connection down, closes its open tickets, marks its schedules\n * as done and cancels its campaigns; restoring checks the plan limit of the `type` (400 when it\n * is full).\n *\n * Resolves `{}` before the work is done (the route does not await it): poll `getById` until\n * `archivedAt` changes. Send the `type` of the connection: without it the request is never\n * answered.\n * @permissions services.disabled\n */\n archiveWithValidation(\n id: string,\n body: ArchiveServicePayload,\n headers?: Record<string, string>,\n ): Promise<Record<string, never>> {\n return this.client.post<Record<string, never>, ArchiveServicePayload>(\n `${this.basePath}/${id}/archive`,\n body,\n headers,\n )\n }\n\n /**\n * Takes the session of the connection over to this server. Resolves the text `'OK'`; an\n * unknown id answers 404 `Service not found.`.\n * @permissions services.operate\n */\n takeover(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/takeover`, undefined, headers)\n }\n\n /**\n * Logs the connection out of the messaging service. Resolves the text `'OK'`; an unknown id\n * answers 404 `Service not found.`.\n * @permissions services.operate\n */\n logout(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/logout`, undefined, headers)\n }\n\n /**\n * Shuts the connection down. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n shutdown(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/shutdown`, undefined, headers)\n }\n\n /**\n * Starts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n start(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/start`, undefined, headers)\n }\n\n /**\n * Restarts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n restart(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/restart`, undefined, headers)\n }\n\n /**\n * Denies the connection to users (`deny: true`) or gives it back (`deny: false`); the admins are skipped. Denying\n * transfers the open tickets of those users in the connection. The rows are read with\n * `ServiceAccessManagementApi.getMany`. An unknown connection answers 404 `Service not found.`; a missing\n * `userIds` or a `deny` that is not a boolean answers 400.\n * @permissions users.update AND services.operate\n */\n accessManagement(\n id: string,\n body: ServiceAccessManagementPayload,\n headers?: Record<string, string>,\n ): Promise<ServiceAccessManagementResponse> {\n return this.client.post<ServiceAccessManagementResponse, ServiceAccessManagementPayload>(\n `${this.basePath}/${id}/access-management`,\n body,\n headers,\n )\n }\n}\n"],"mappings":";;;;AAYA,IAAa,cAAb,cAAiCA,iDAI/B;CACA,YAAY,QAAmB;AAC7B,QAAM,QAAQ,YAAY;;;;;;;CAQ5B,UAAU,SAA0D;AAClE,SAAO,KAAK,OAAO,IAAmB,GAAG,KAAK,SAAS,UAAU,QAAQ;;;;;;CAO3E,AAAS,QAAQ,IAAY,SAAoD;AAC/E,SAAO,MAAM,QAAQ,IAAI,QAAQ;;;;;;CAOnC,AAAS,UAAU,IAAY,SAAoD;AACjF,SAAO,MAAM,UAAU,IAAI,QAAQ;;;;;;;;;;;;;CAcrC,sBACE,IACA,MACA,SACgC;AAChC,SAAO,KAAK,OAAO,KACjB,GAAG,KAAK,SAAS,GAAG,GAAG,WACvB,MACA,QACD;;;;;;;CAQH,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,OAAO,IAAY,SAAiD;AAClE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,UAAU,QAAW,QAAQ;;;;;;;CAQpF,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,MAAM,IAAY,SAAiD;AACjE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,SAAS,QAAW,QAAQ;;;;;;;CAQnF,QAAQ,IAAY,SAAiD;AACnE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,WAAW,QAAW,QAAQ;;;;;;;;;CAUrF,iBACE,IACA,MACA,SAC0C;AAC1C,SAAO,KAAK,OAAO,KACjB,GAAG,KAAK,SAAS,GAAG,GAAG,qBACvB,MACA,QACD"}
@@ -1,6 +1,6 @@
1
1
  import type { ApiClient } from '../../core/ApiClient';
2
2
  import { ArchivableCrudApi } from '../../core/ArchivableCrudApi';
3
- import type { Service, CreateServicePayload, ServiceLimits, UpdateServicePayload, ArchiveServicePayload } from './types';
3
+ import type { Service, CreateServicePayload, ServiceLimits, UpdateServicePayload, ArchiveServicePayload, ServiceAccessManagementPayload, ServiceAccessManagementResponse } from './types';
4
4
  export declare class ServicesApi extends ArchivableCrudApi<Service, CreateServicePayload, UpdateServicePayload> {
5
5
  constructor(client: ApiClient);
6
6
  /**
@@ -61,5 +61,13 @@ export declare class ServicesApi extends ArchivableCrudApi<Service, CreateServic
61
61
  * @permissions services.operate
62
62
  */
63
63
  restart(id: string, headers?: Record<string, string>): Promise<'OK'>;
64
+ /**
65
+ * Denies the connection to users (`deny: true`) or gives it back (`deny: false`); the admins are skipped. Denying
66
+ * transfers the open tickets of those users in the connection. The rows are read with
67
+ * `ServiceAccessManagementApi.getMany`. An unknown connection answers 404 `Service not found.`; a missing
68
+ * `userIds` or a `deny` that is not a boolean answers 400.
69
+ * @permissions users.update AND services.operate
70
+ */
71
+ accessManagement(id: string, body: ServiceAccessManagementPayload, headers?: Record<string, string>): Promise<ServiceAccessManagementResponse>;
64
72
  }
65
73
  //# sourceMappingURL=ServicesApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServicesApi.d.ts","sourceRoot":"","sources":["../../../src/apis/services/ServicesApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,KAAK,EACV,OAAO,EACP,oBAAoB,EACpB,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAEhB,qBAAa,WAAY,SAAQ,iBAAiB,CAChD,OAAO,EACP,oBAAoB,EACpB,oBAAoB,CACrB;gBACa,MAAM,EAAE,SAAS;IAI7B;;;;OAIG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAInE;;;OAGG;IACM,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAIhF;;;OAGG;IACM,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAIlF;;;;;;;;;;OAUG;IACH,qBAAqB,CACnB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,qBAAqB,EAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAQjC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAInE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;OAIG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlE;;;;OAIG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrE"}
1
+ {"version":3,"file":"ServicesApi.d.ts","sourceRoot":"","sources":["../../../src/apis/services/ServicesApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,KAAK,EACV,OAAO,EACP,oBAAoB,EACpB,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,+BAA+B,EAChC,MAAM,SAAS,CAAA;AAEhB,qBAAa,WAAY,SAAQ,iBAAiB,CAChD,OAAO,EACP,oBAAoB,EACpB,oBAAoB,CACrB;gBACa,MAAM,EAAE,SAAS;IAI7B;;;;OAIG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAInE;;;OAGG;IACM,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAIhF;;;OAGG;IACM,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAIlF;;;;;;;;;;OAUG;IACH,qBAAqB,CACnB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,qBAAqB,EAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAQjC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAInE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;OAIG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlE;;;;OAIG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpE;;;;;;OAMG;IACH,gBAAgB,CACd,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,8BAA8B,EACpC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,OAAO,CAAC,+BAA+B,CAAC;CAO5C"}
@@ -81,6 +81,16 @@ var ServicesApi = class extends ArchivableCrudApi {
81
81
  restart(id, headers) {
82
82
  return this.client.post(`${this.basePath}/${id}/restart`, void 0, headers);
83
83
  }
84
+ /**
85
+ * Denies the connection to users (`deny: true`) or gives it back (`deny: false`); the admins are skipped. Denying
86
+ * transfers the open tickets of those users in the connection. The rows are read with
87
+ * `ServiceAccessManagementApi.getMany`. An unknown connection answers 404 `Service not found.`; a missing
88
+ * `userIds` or a `deny` that is not a boolean answers 400.
89
+ * @permissions users.update AND services.operate
90
+ */
91
+ accessManagement(id, body, headers) {
92
+ return this.client.post(`${this.basePath}/${id}/access-management`, body, headers);
93
+ }
84
94
  };
85
95
 
86
96
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"ServicesApi.mjs","names":[],"sources":["../../../src/apis/services/ServicesApi.ts"],"sourcesContent":["import type { ApiClient } from '../../core/ApiClient'\nimport { ArchivableCrudApi } from '../../core/ArchivableCrudApi'\nimport type {\n Service,\n CreateServicePayload,\n ServiceLimits,\n UpdateServicePayload,\n ArchiveServicePayload,\n} from './types'\n\nexport class ServicesApi extends ArchivableCrudApi<\n Service,\n CreateServicePayload,\n UpdateServicePayload\n> {\n constructor(client: ApiClient) {\n super(client, '/services')\n }\n\n /**\n * Returns, for each connection type of the account plan, how many connections are used,\n * allowed and still available.\n * @permissions services.view\n */\n getLimits(headers?: Record<string, string>): Promise<ServiceLimits> {\n return this.client.get<ServiceLimits>(`${this.basePath}/limits`, headers)\n }\n\n /**\n * @deprecated The backend does not archive a connection by `PUT { archivedAt }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override archive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.archive(id, headers)\n }\n\n /**\n * @deprecated The backend does not restore a connection by `PUT { archivedAt: null }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override unarchive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.unarchive(id, headers)\n }\n\n /**\n * Archives (`archive: true`) or restores (`archive: false`) a connection through the route used\n * by the UI. Archiving shuts the connection down, closes its open tickets, marks its schedules\n * as done and cancels its campaigns; restoring checks the plan limit of the `type` (400 when it\n * is full).\n *\n * Resolves `{}` before the work is done (the route does not await it): poll `getById` until\n * `archivedAt` changes. Send the `type` of the connection: without it the request is never\n * answered.\n * @permissions services.disabled\n */\n archiveWithValidation(\n id: string,\n body: ArchiveServicePayload,\n headers?: Record<string, string>,\n ): Promise<Record<string, never>> {\n return this.client.post<Record<string, never>, ArchiveServicePayload>(\n `${this.basePath}/${id}/archive`,\n body,\n headers,\n )\n }\n\n /**\n * Takes the session of the connection over to this server. Resolves the text `'OK'`; an\n * unknown id answers 404 `Service not found.`.\n * @permissions services.operate\n */\n takeover(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/takeover`, undefined, headers)\n }\n\n /**\n * Logs the connection out of the messaging service. Resolves the text `'OK'`; an unknown id\n * answers 404 `Service not found.`.\n * @permissions services.operate\n */\n logout(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/logout`, undefined, headers)\n }\n\n /**\n * Shuts the connection down. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n shutdown(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/shutdown`, undefined, headers)\n }\n\n /**\n * Starts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n start(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/start`, undefined, headers)\n }\n\n /**\n * Restarts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n restart(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/restart`, undefined, headers)\n }\n}\n"],"mappings":";;;AAUA,IAAa,cAAb,cAAiC,kBAI/B;CACA,YAAY,QAAmB;AAC7B,QAAM,QAAQ,YAAY;;;;;;;CAQ5B,UAAU,SAA0D;AAClE,SAAO,KAAK,OAAO,IAAmB,GAAG,KAAK,SAAS,UAAU,QAAQ;;;;;;CAO3E,AAAS,QAAQ,IAAY,SAAoD;AAC/E,SAAO,MAAM,QAAQ,IAAI,QAAQ;;;;;;CAOnC,AAAS,UAAU,IAAY,SAAoD;AACjF,SAAO,MAAM,UAAU,IAAI,QAAQ;;;;;;;;;;;;;CAcrC,sBACE,IACA,MACA,SACgC;AAChC,SAAO,KAAK,OAAO,KACjB,GAAG,KAAK,SAAS,GAAG,GAAG,WACvB,MACA,QACD;;;;;;;CAQH,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,OAAO,IAAY,SAAiD;AAClE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,UAAU,QAAW,QAAQ;;;;;;;CAQpF,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,MAAM,IAAY,SAAiD;AACjE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,SAAS,QAAW,QAAQ;;;;;;;CAQnF,QAAQ,IAAY,SAAiD;AACnE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,WAAW,QAAW,QAAQ"}
1
+ {"version":3,"file":"ServicesApi.mjs","names":[],"sources":["../../../src/apis/services/ServicesApi.ts"],"sourcesContent":["import type { ApiClient } from '../../core/ApiClient'\nimport { ArchivableCrudApi } from '../../core/ArchivableCrudApi'\nimport type {\n Service,\n CreateServicePayload,\n ServiceLimits,\n UpdateServicePayload,\n ArchiveServicePayload,\n ServiceAccessManagementPayload,\n ServiceAccessManagementResponse,\n} from './types'\n\nexport class ServicesApi extends ArchivableCrudApi<\n Service,\n CreateServicePayload,\n UpdateServicePayload\n> {\n constructor(client: ApiClient) {\n super(client, '/services')\n }\n\n /**\n * Returns, for each connection type of the account plan, how many connections are used,\n * allowed and still available.\n * @permissions services.view\n */\n getLimits(headers?: Record<string, string>): Promise<ServiceLimits> {\n return this.client.get<ServiceLimits>(`${this.basePath}/limits`, headers)\n }\n\n /**\n * @deprecated The backend does not archive a connection by `PUT { archivedAt }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override archive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.archive(id, headers)\n }\n\n /**\n * @deprecated The backend does not restore a connection by `PUT { archivedAt: null }`: the PUT\n * requires `type` (400 without it) and ignores `archivedAt`. Use {@link archiveWithValidation}.\n */\n override unarchive(id: string, headers?: Record<string, string>): Promise<Service> {\n return super.unarchive(id, headers)\n }\n\n /**\n * Archives (`archive: true`) or restores (`archive: false`) a connection through the route used\n * by the UI. Archiving shuts the connection down, closes its open tickets, marks its schedules\n * as done and cancels its campaigns; restoring checks the plan limit of the `type` (400 when it\n * is full).\n *\n * Resolves `{}` before the work is done (the route does not await it): poll `getById` until\n * `archivedAt` changes. Send the `type` of the connection: without it the request is never\n * answered.\n * @permissions services.disabled\n */\n archiveWithValidation(\n id: string,\n body: ArchiveServicePayload,\n headers?: Record<string, string>,\n ): Promise<Record<string, never>> {\n return this.client.post<Record<string, never>, ArchiveServicePayload>(\n `${this.basePath}/${id}/archive`,\n body,\n headers,\n )\n }\n\n /**\n * Takes the session of the connection over to this server. Resolves the text `'OK'`; an\n * unknown id answers 404 `Service not found.`.\n * @permissions services.operate\n */\n takeover(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/takeover`, undefined, headers)\n }\n\n /**\n * Logs the connection out of the messaging service. Resolves the text `'OK'`; an unknown id\n * answers 404 `Service not found.`.\n * @permissions services.operate\n */\n logout(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/logout`, undefined, headers)\n }\n\n /**\n * Shuts the connection down. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n shutdown(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/shutdown`, undefined, headers)\n }\n\n /**\n * Starts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n start(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/start`, undefined, headers)\n }\n\n /**\n * Restarts the connection. Resolves the text `'OK'`; an unknown id answers 404\n * `Service not found.`.\n * @permissions services.operate\n */\n restart(id: string, headers?: Record<string, string>): Promise<'OK'> {\n return this.client.post<'OK'>(`${this.basePath}/${id}/restart`, undefined, headers)\n }\n\n /**\n * Denies the connection to users (`deny: true`) or gives it back (`deny: false`); the admins are skipped. Denying\n * transfers the open tickets of those users in the connection. The rows are read with\n * `ServiceAccessManagementApi.getMany`. An unknown connection answers 404 `Service not found.`; a missing\n * `userIds` or a `deny` that is not a boolean answers 400.\n * @permissions users.update AND services.operate\n */\n accessManagement(\n id: string,\n body: ServiceAccessManagementPayload,\n headers?: Record<string, string>,\n ): Promise<ServiceAccessManagementResponse> {\n return this.client.post<ServiceAccessManagementResponse, ServiceAccessManagementPayload>(\n `${this.basePath}/${id}/access-management`,\n body,\n headers,\n )\n }\n}\n"],"mappings":";;;AAYA,IAAa,cAAb,cAAiC,kBAI/B;CACA,YAAY,QAAmB;AAC7B,QAAM,QAAQ,YAAY;;;;;;;CAQ5B,UAAU,SAA0D;AAClE,SAAO,KAAK,OAAO,IAAmB,GAAG,KAAK,SAAS,UAAU,QAAQ;;;;;;CAO3E,AAAS,QAAQ,IAAY,SAAoD;AAC/E,SAAO,MAAM,QAAQ,IAAI,QAAQ;;;;;;CAOnC,AAAS,UAAU,IAAY,SAAoD;AACjF,SAAO,MAAM,UAAU,IAAI,QAAQ;;;;;;;;;;;;;CAcrC,sBACE,IACA,MACA,SACgC;AAChC,SAAO,KAAK,OAAO,KACjB,GAAG,KAAK,SAAS,GAAG,GAAG,WACvB,MACA,QACD;;;;;;;CAQH,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,OAAO,IAAY,SAAiD;AAClE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,UAAU,QAAW,QAAQ;;;;;;;CAQpF,SAAS,IAAY,SAAiD;AACpE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,YAAY,QAAW,QAAQ;;;;;;;CAQtF,MAAM,IAAY,SAAiD;AACjE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,SAAS,QAAW,QAAQ;;;;;;;CAQnF,QAAQ,IAAY,SAAiD;AACnE,SAAO,KAAK,OAAO,KAAW,GAAG,KAAK,SAAS,GAAG,GAAG,WAAW,QAAW,QAAQ;;;;;;;;;CAUrF,iBACE,IACA,MACA,SAC0C;AAC1C,SAAO,KAAK,OAAO,KACjB,GAAG,KAAK,SAAS,GAAG,GAAG,qBACvB,MACA,QACD"}
@@ -275,4 +275,14 @@ export type ServiceLimit = {
275
275
  };
276
276
  /** Connections used and allowed by the account plan, by connection type. */
277
277
  export type ServiceLimits = Partial<Record<ServiceType, ServiceLimit>>;
278
+ /** The body of `accessManagement`: the users to deny (or give back) the connection to. */
279
+ export type ServiceAccessManagementPayload = {
280
+ userIds: string[];
281
+ /** `true` denies the connection to the users (their open tickets in it are transferred); `false` gives it back. */
282
+ deny: boolean;
283
+ };
284
+ /** What `accessManagement` answers: how many users were denied or given back the connection (no admin is counted). */
285
+ export type ServiceAccessManagementResponse = {
286
+ message: `${number} users denied access.` | `${number} users allowed access.`;
287
+ };
278
288
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/apis/services/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/apis/services/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { File } from '../files/types';
2
+ import type { Message } from '../messages/types';
2
3
  import type { User } from '../users/types';
3
4
  /** A sticker of the account (every user of the account sees it). */
4
5
  export type Sticker = {
@@ -17,6 +18,8 @@ export type Sticker = {
17
18
  user?: User;
18
19
  /** The image (webp) of the sticker. */
19
20
  file?: File;
21
+ /** The message the sticker came from (`add`); `null` on a sticker uploaded with `create`. */
22
+ originMessage?: Message | null;
20
23
  };
21
24
  /** The backend serves only `file` (`user` is dropped). */
22
25
  export type StickerRelationships = 'user' | 'file';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/apis/stickers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAE1C,oEAAoE;AACpE,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,2FAA2F;IAC3F,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;IACzC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEzB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,uCAAuC;IACvC,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,MAAM,CAAA;AAElD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,0CAA0C;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/apis/stickers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAE1C,oEAAoE;AACpE,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,2FAA2F;IAC3F,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;IACzC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEzB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,uCAAuC;IACvC,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,6FAA6F;IAC7F,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CAC/B,CAAA;AAED,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,MAAM,CAAA;AAElD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sFAAsF;IACtF,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,0CAA0C;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikatec/digisac-api-sdk",
3
- "version": "4.13.0",
3
+ "version": "4.14.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
@@ -78,8 +78,10 @@ export type Notification = {
78
78
  label: string | null
79
79
  config: NotificationConfig | null
80
80
  attachedType: string | null
81
- attachedId: string | null
82
- notificationReadId: string | null
81
+ /** @deprecated Not answered: the model has no such column, so the transformer never sends it. */
82
+ attachedId?: string | null
83
+ /** @deprecated Not answered: the model has no such column, so the transformer never sends it. */
84
+ notificationReadId?: string | null
83
85
  contactId: string | null
84
86
  userId: string
85
87
  accountId: string
@@ -93,7 +95,8 @@ export type Notification = {
93
95
  schedule?: Schedule | null
94
96
  /** @deprecated Not served: the model has no such association, so it never comes. */
95
97
  contact?: Contact | null
96
- notificationRead?: NotificationRead | null
98
+ /** The read receipts of the notification (a list: `[]` while it was never read). */
99
+ notificationRead?: NotificationRead[]
97
100
  }
98
101
 
99
102
  /** The backend serves `user`, `schedule` and `notificationRead` (`contact` is never answered). */
@@ -71,7 +71,11 @@ import { KnowledgeBaseApi } from './knowledgeBase/KnowledgeBaseApi'
71
71
  import { KnowledgeBaseItemApi } from './knowledgeBaseItem/KnowledgeBaseItemApi'
72
72
  import { MessagesApi } from './messages/MessagesApi'
73
73
  import { NotificationsApi } from './notifications/NotificationsApi'
74
- import type { NotificationCountsResponse } from './notifications/types'
74
+ import type {
75
+ Notification,
76
+ NotificationCountsResponse,
77
+ NotificationRead,
78
+ } from './notifications/types'
75
79
  import { AbsenceApi } from './absence/AbsenceApi'
76
80
  import type { AbsenceReportItem, UnlockAbsenceResponse } from './absence/types'
77
81
  import { ActivityLogApi } from './activityLog/ActivityLogApi'
@@ -749,3 +753,19 @@ expectType<Promise<Sticker>>(new StickersApi(client).create({ base64: 'iVBOR', n
749
753
  expectError(new StickersApi(client).create({ type: 'created' }))
750
754
  expectType<Promise<'OK' | false>>(new StickersApi(client).remove('s-1'))
751
755
  expectAssignable<Parameters<StickersApi['getMany']>[0]>({ include: ['file'] })
756
+
757
+ // ── QARC-1010 (4.13.1): the shapes observed on qa-rc ─────────────────
758
+
759
+ declare const notification: Notification
760
+ expectType<NotificationRead[] | undefined>(notification.notificationRead)
761
+ expectType<string | null | undefined>(notification.attachedId)
762
+ declare const sticker: Sticker
763
+ expectAssignable<Sticker>({ ...sticker, originMessage: null })
764
+ expectAssignable<Promise<{ message: string }>>(
765
+ new ServicesApi(client).accessManagement('s-1', { userIds: ['u-1'], deny: true }),
766
+ )
767
+ expectAssignable<Awaited<ReturnType<ServicesApi['accessManagement']>>>({
768
+ message: '2 users allowed access.',
769
+ })
770
+ expectNotAssignable<Awaited<ReturnType<ServicesApi['accessManagement']>>>({ message: 'denied' })
771
+ expectError(new ServicesApi(client).accessManagement('s-1', { userIds: ['u-1'] }))
@@ -91,4 +91,15 @@ describe('ServicesApi', () => {
91
91
  })
92
92
  },
93
93
  )
94
+
95
+ describe('accessManagement', () => {
96
+ it('posts the users and the deny flag to /services/:id/access-management', async () => {
97
+ vi.mocked(client.post).mockResolvedValue({ message: '1 users denied access.' })
98
+ const body = { userIds: ['u-1'], deny: true }
99
+ await expect(api.accessManagement('svc-1', body)).resolves.toEqual({
100
+ message: '1 users denied access.',
101
+ })
102
+ expect(client.post).toHaveBeenCalledWith('/services/svc-1/access-management', body, undefined)
103
+ })
104
+ })
94
105
  })
@@ -6,6 +6,8 @@ import type {
6
6
  ServiceLimits,
7
7
  UpdateServicePayload,
8
8
  ArchiveServicePayload,
9
+ ServiceAccessManagementPayload,
10
+ ServiceAccessManagementResponse,
9
11
  } from './types'
10
12
 
11
13
  export class ServicesApi extends ArchivableCrudApi<
@@ -109,4 +111,23 @@ export class ServicesApi extends ArchivableCrudApi<
109
111
  restart(id: string, headers?: Record<string, string>): Promise<'OK'> {
110
112
  return this.client.post<'OK'>(`${this.basePath}/${id}/restart`, undefined, headers)
111
113
  }
114
+
115
+ /**
116
+ * Denies the connection to users (`deny: true`) or gives it back (`deny: false`); the admins are skipped. Denying
117
+ * transfers the open tickets of those users in the connection. The rows are read with
118
+ * `ServiceAccessManagementApi.getMany`. An unknown connection answers 404 `Service not found.`; a missing
119
+ * `userIds` or a `deny` that is not a boolean answers 400.
120
+ * @permissions users.update AND services.operate
121
+ */
122
+ accessManagement(
123
+ id: string,
124
+ body: ServiceAccessManagementPayload,
125
+ headers?: Record<string, string>,
126
+ ): Promise<ServiceAccessManagementResponse> {
127
+ return this.client.post<ServiceAccessManagementResponse, ServiceAccessManagementPayload>(
128
+ `${this.basePath}/${id}/access-management`,
129
+ body,
130
+ headers,
131
+ )
132
+ }
112
133
  }
@@ -292,3 +292,15 @@ export type ServiceLimit = {
292
292
 
293
293
  /** Connections used and allowed by the account plan, by connection type. */
294
294
  export type ServiceLimits = Partial<Record<ServiceType, ServiceLimit>>
295
+
296
+ /** The body of `accessManagement`: the users to deny (or give back) the connection to. */
297
+ export type ServiceAccessManagementPayload = {
298
+ userIds: string[]
299
+ /** `true` denies the connection to the users (their open tickets in it are transferred); `false` gives it back. */
300
+ deny: boolean
301
+ }
302
+
303
+ /** What `accessManagement` answers: how many users were denied or given back the connection (no admin is counted). */
304
+ export type ServiceAccessManagementResponse = {
305
+ message: `${number} users denied access.` | `${number} users allowed access.`
306
+ }
@@ -1,4 +1,5 @@
1
1
  import type { File } from '../files/types'
2
+ import type { Message } from '../messages/types'
2
3
  import type { User } from '../users/types'
3
4
 
4
5
  /** A sticker of the account (every user of the account sees it). */
@@ -19,6 +20,8 @@ export type Sticker = {
19
20
  user?: User
20
21
  /** The image (webp) of the sticker. */
21
22
  file?: File
23
+ /** The message the sticker came from (`add`); `null` on a sticker uploaded with `create`. */
24
+ originMessage?: Message | null
22
25
  }
23
26
 
24
27
  /** The backend serves only `file` (`user` is dropped). */