@insurance-broker/api-client 5.20.0 → 5.21.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.
Files changed (2) hide show
  1. package/dist/schema.d.ts +175 -42
  2. package/package.json +1 -1
package/dist/schema.d.ts CHANGED
@@ -3052,6 +3052,69 @@ export interface paths {
3052
3052
  patch?: never;
3053
3053
  trace?: never;
3054
3054
  };
3055
+ "/api/v1/customer-verification-methods": {
3056
+ parameters: {
3057
+ query?: never;
3058
+ header?: never;
3059
+ path?: never;
3060
+ cookie?: never;
3061
+ };
3062
+ /**
3063
+ * The ways this broker's staff may verify a customer before signing them out, in the broker's order.
3064
+ * @description The broker's closed set of verification methods (ADR-0049). A member of staff signing a customer out of every session picks one of these keys and the choice is recorded in the audit entry. The set is configuration, never empty once configured; an empty list means this broker has not configured one yet, and staff-assisted sign-out is refused until it does.
3065
+ */
3066
+ get: operations["ListCustomerVerificationMethods"];
3067
+ put?: never;
3068
+ post?: never;
3069
+ delete?: never;
3070
+ options?: never;
3071
+ head?: never;
3072
+ patch?: never;
3073
+ trace?: never;
3074
+ };
3075
+ "/api/v1/customers/{id}/sessions/revocation": {
3076
+ parameters: {
3077
+ query?: never;
3078
+ header?: never;
3079
+ path?: never;
3080
+ cookie?: never;
3081
+ };
3082
+ get?: never;
3083
+ put?: never;
3084
+ /**
3085
+ * Signs a customer out of every session they have established, after a member of staff has verified them.
3086
+ * @description **Every sign-in this customer established up to now stops working against this API on its next request** — the same effect as the customer's own `POST /api/v1/customer-account/sessions/revocation`, for a customer who rings in because a device was lost or stolen (SEC-012). The customer signs in again afterwards on the device they hold.
3087
+ *
3088
+ * **Verify the customer first, then say how.** `verificationMethod` is a key from `GET /api/v1/customer-verification-methods`, this broker's closed set; `reason` is required, at most 500 characters, and is recorded with the method and the member of staff in the audit entry on the customer record (action `crm.customer.sessions-revoked-by-staff`). Tell the customer to change their password and secure their email account: signing out does not stop somebody who knows the password.
3089
+ *
3090
+ * **Refusals.** `400` when either field is missing or the reason is too long. `404` when the customer is not this broker's. `409` with problem type `urn:brokerplatform:problem:verification-method-not-offered` when the method is not in this broker's set (or the broker has configured none) — read the set and choose from it. `409` with no type when the customer has never attached a sign-in account, so has no session to end.
3091
+ *
3092
+ * **What it does not do yet.** It does not end the sessions at the identity provider or list them; those need the isolated identity-management component ADR-0049 describes.
3093
+ */
3094
+ post: operations["RevokeCustomerSessions"];
3095
+ delete?: never;
3096
+ options?: never;
3097
+ head?: never;
3098
+ patch?: never;
3099
+ trace?: never;
3100
+ };
3101
+ "/api/v1/customer/contexts": {
3102
+ parameters: {
3103
+ query?: never;
3104
+ header?: never;
3105
+ path?: never;
3106
+ cookie?: never;
3107
+ };
3108
+ /** The parties the signed-in customer may act as: themselves, and every organisation they hold an active membership of. The identifier of each is what X-Broker-Acting-For takes. */
3109
+ get: operations["ListActingContexts"];
3110
+ put?: never;
3111
+ post?: never;
3112
+ delete?: never;
3113
+ options?: never;
3114
+ head?: never;
3115
+ patch?: never;
3116
+ trace?: never;
3117
+ };
3055
3118
  "/api/v1/organisations": {
3056
3119
  parameters: {
3057
3120
  query?: never;
@@ -3190,23 +3253,6 @@ export interface paths {
3190
3253
  patch?: never;
3191
3254
  trace?: never;
3192
3255
  };
3193
- "/api/v1/customer/contexts": {
3194
- parameters: {
3195
- query?: never;
3196
- header?: never;
3197
- path?: never;
3198
- cookie?: never;
3199
- };
3200
- /** The parties the signed-in customer may act as: themselves, and every organisation they hold an active membership of. The identifier of each is what X-Broker-Acting-For takes. */
3201
- get: operations["ListActingContexts"];
3202
- put?: never;
3203
- post?: never;
3204
- delete?: never;
3205
- options?: never;
3206
- head?: never;
3207
- patch?: never;
3208
- trace?: never;
3209
- };
3210
3256
  "/api/v1/customer/organisations/{id}/membership/acceptance": {
3211
3257
  parameters: {
3212
3258
  query?: never;
@@ -7301,6 +7347,11 @@ export interface components {
7301
7347
  help: null | string;
7302
7348
  section: null | string;
7303
7349
  };
7350
+ CustomerVerificationMethodResponse: {
7351
+ key: string;
7352
+ name: string;
7353
+ description: null | string;
7354
+ };
7304
7355
  DataClassificationResponse: {
7305
7356
  key: string;
7306
7357
  name: string;
@@ -9589,6 +9640,17 @@ export interface components {
9589
9640
  /** Format: uuid */
9590
9641
  conflictingPaymentId: string;
9591
9642
  };
9643
+ StaffCustomerSessionRevocationRequest: {
9644
+ verificationMethod: null | string;
9645
+ reason: null | string;
9646
+ };
9647
+ StaffCustomerSessionRevocationResponse: {
9648
+ /** Format: uuid */
9649
+ customerId: string;
9650
+ /** Format: date-time */
9651
+ revokedAtUtc: string;
9652
+ verificationMethod: string;
9653
+ };
9592
9654
  StaffNameResponse: {
9593
9655
  subjectId: string;
9594
9656
  displayName: string;
@@ -16763,6 +16825,102 @@ export interface operations {
16763
16825
  };
16764
16826
  };
16765
16827
  };
16828
+ ListCustomerVerificationMethods: {
16829
+ parameters: {
16830
+ query?: never;
16831
+ header?: never;
16832
+ path?: never;
16833
+ cookie?: never;
16834
+ };
16835
+ requestBody?: never;
16836
+ responses: {
16837
+ /** @description OK */
16838
+ 200: {
16839
+ headers: {
16840
+ [name: string]: unknown;
16841
+ };
16842
+ content: {
16843
+ "application/json": components["schemas"]["CustomerVerificationMethodResponse"][];
16844
+ };
16845
+ };
16846
+ };
16847
+ };
16848
+ RevokeCustomerSessions: {
16849
+ parameters: {
16850
+ query?: never;
16851
+ header?: never;
16852
+ path: {
16853
+ id: string;
16854
+ };
16855
+ cookie?: never;
16856
+ };
16857
+ requestBody: {
16858
+ content: {
16859
+ "application/json": components["schemas"]["StaffCustomerSessionRevocationRequest"];
16860
+ };
16861
+ };
16862
+ responses: {
16863
+ /** @description OK */
16864
+ 200: {
16865
+ headers: {
16866
+ [name: string]: unknown;
16867
+ };
16868
+ content: {
16869
+ "application/json": components["schemas"]["StaffCustomerSessionRevocationResponse"];
16870
+ };
16871
+ };
16872
+ /** @description Bad Request */
16873
+ 400: {
16874
+ headers: {
16875
+ [name: string]: unknown;
16876
+ };
16877
+ content: {
16878
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
16879
+ };
16880
+ };
16881
+ /** @description Not Found */
16882
+ 404: {
16883
+ headers: {
16884
+ [name: string]: unknown;
16885
+ };
16886
+ content?: never;
16887
+ };
16888
+ /** @description Conflict. A type of urn:brokerplatform:problem:concurrency-conflict means someone else changed the record first and nothing was written: read it again and decide again. Any other type is a conflict this operation decided itself, and retrying it unchanged will not help. */
16889
+ 409: {
16890
+ headers: {
16891
+ [name: string]: unknown;
16892
+ };
16893
+ content: {
16894
+ "application/problem+json": components["schemas"]["ConcurrencyConflictProblem"] | components["schemas"]["ProblemDetails"];
16895
+ };
16896
+ };
16897
+ };
16898
+ };
16899
+ ListActingContexts: {
16900
+ parameters: {
16901
+ query?: never;
16902
+ header?: {
16903
+ /** @description The organisation to act for: one of the identifiers GET /api/v1/customer/contexts lists. Omit it, or send it empty, to act for your own account; there is no mode in which it becomes mandatory. A value you hold no active membership of, or one that is not an organisation identifier, is refused with 403 naming nothing, and never quietly treated as your own account. */
16904
+ "X-Broker-Acting-For"?: components["parameters"]["ActingFor"];
16905
+ };
16906
+ path?: never;
16907
+ cookie?: never;
16908
+ };
16909
+ requestBody?: never;
16910
+ responses: {
16911
+ /** @description OK */
16912
+ 200: {
16913
+ headers: {
16914
+ /** @description The party this request actually acted for. Present, carrying the organisation identifier, when it acted for an organisation; absent when it acted for your own account. It mirrors the request header, so it can be sent back unchanged. Compare it with what you meant to send: it is the only way to see that a request you meant for an organisation was made personally. */
16915
+ "X-Broker-Acting-For"?: string;
16916
+ [name: string]: unknown;
16917
+ };
16918
+ content: {
16919
+ "application/json": components["schemas"]["ActingContextResponse"][];
16920
+ };
16921
+ };
16922
+ };
16923
+ };
16766
16924
  ListOrganisations: {
16767
16925
  parameters: {
16768
16926
  query?: {
@@ -17142,31 +17300,6 @@ export interface operations {
17142
17300
  };
17143
17301
  };
17144
17302
  };
17145
- ListActingContexts: {
17146
- parameters: {
17147
- query?: never;
17148
- header?: {
17149
- /** @description The organisation to act for: one of the identifiers GET /api/v1/customer/contexts lists. Omit it, or send it empty, to act for your own account; there is no mode in which it becomes mandatory. A value you hold no active membership of, or one that is not an organisation identifier, is refused with 403 naming nothing, and never quietly treated as your own account. */
17150
- "X-Broker-Acting-For"?: components["parameters"]["ActingFor"];
17151
- };
17152
- path?: never;
17153
- cookie?: never;
17154
- };
17155
- requestBody?: never;
17156
- responses: {
17157
- /** @description OK */
17158
- 200: {
17159
- headers: {
17160
- /** @description The party this request actually acted for. Present, carrying the organisation identifier, when it acted for an organisation; absent when it acted for your own account. It mirrors the request header, so it can be sent back unchanged. Compare it with what you meant to send: it is the only way to see that a request you meant for an organisation was made personally. */
17161
- "X-Broker-Acting-For"?: string;
17162
- [name: string]: unknown;
17163
- };
17164
- content: {
17165
- "application/json": components["schemas"]["ActingContextResponse"][];
17166
- };
17167
- };
17168
- };
17169
- };
17170
17303
  AcceptOrganisationMembership: {
17171
17304
  parameters: {
17172
17305
  query?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insurance-broker/api-client",
3
- "version": "5.20.0",
3
+ "version": "5.21.0",
4
4
  "description": "Generated TypeScript client for the Insurance Broker Platform API. Do not edit by hand: regenerate with scripts/update-api-contract.",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,