@insurance-broker/api-client 4.17.0 → 4.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 +427 -1
  2. package/package.json +1 -1
package/dist/schema.d.ts CHANGED
@@ -298,6 +298,8 @@ export interface paths {
298
298
  * **A refusal is recorded, not merely returned.** Every attempt is written before the posting is tried, so a refused duplicate is findable in the reconciliation history read below.
299
299
  *
300
300
  * The currency is **not** a field: it is the obligation's, held by a foreign key rather than by this handler. Nil is refused — a payment of nothing is nothing having arrived.
301
+ *
302
+ * **Name a payment method or type a source, exactly one** (#530). `paymentMethodId` is one of this broker's active payment methods: its code becomes the payment's `source`, and customers see the method's label. `source` alone is free text, as before, and customers see it as typed. Both, neither, a retired method or another broker's method are refused with `400` and nothing is recorded.
301
303
  */
302
304
  post: operations["RecordPayment"];
303
305
  delete?: never;
@@ -690,6 +692,8 @@ export interface paths {
690
692
  * **No `asOf`**, unlike the charges list: a payment was recorded at an instant this row holds, and nothing about this list moves at midnight.
691
693
  *
692
694
  * **Each payment names the one charge it was recorded against**, and the policy that charge is owed under.
695
+ *
696
+ * **Show `sourceLabel`, not `source`.** `sourceLabel` is never null. It is your broker's current wording for the payment method the money came through, or, for a payment your broker recorded as free text, that text as typed. `source` is kept for older apps and may be a code.
693
697
  */
694
698
  get: operations["ListOwnPayments"];
695
699
  put?: never;
@@ -750,6 +754,98 @@ export interface paths {
750
754
  patch?: never;
751
755
  trace?: never;
752
756
  };
757
+ "/api/v1/payment-methods": {
758
+ parameters: {
759
+ query?: never;
760
+ header?: never;
761
+ path?: never;
762
+ cookie?: never;
763
+ };
764
+ /**
765
+ * The ways this broker's customers pay, with the words customers read
766
+ * @description #530. Every payment method this broker has configured, active and retired, by label. A payment is recorded against an active one by its `id`; its `code` becomes the payment's `source` and its `label` is what customers see.
767
+ *
768
+ * **A retired method stays on this list**, because it still labels the payments recorded against it. It cannot be chosen for a new payment.
769
+ *
770
+ * The platform ships no payment method: which banks, services and counters a broker takes money through is the broker's own configuration.
771
+ */
772
+ get: operations["ListPaymentMethods"];
773
+ put?: never;
774
+ /**
775
+ * Add a way this broker's customers pay
776
+ * @description #530. `code` is a stable identifier — lower-case letters, digits and hyphens, at most 40 characters — unique within this broker and never changed. `label` is what customers read, at most 80 characters, and can be changed later.
777
+ *
778
+ * **A code is never reused**, even after its method is retired, because payments recorded against the method carry it as their `source`. A code already taken is `409`.
779
+ */
780
+ post: operations["CreatePaymentMethod"];
781
+ delete?: never;
782
+ options?: never;
783
+ head?: never;
784
+ patch?: never;
785
+ trace?: never;
786
+ };
787
+ "/api/v1/payment-methods/{id}": {
788
+ parameters: {
789
+ query?: never;
790
+ header?: never;
791
+ path?: never;
792
+ cookie?: never;
793
+ };
794
+ /**
795
+ * Read one of this broker's payment methods
796
+ * @description Another broker's method answers `404`, exactly as one that does not exist: the tenant filter removes it before the read runs.
797
+ */
798
+ get: operations["GetPaymentMethod"];
799
+ put?: never;
800
+ post?: never;
801
+ delete?: never;
802
+ options?: never;
803
+ head?: never;
804
+ patch?: never;
805
+ trace?: never;
806
+ };
807
+ "/api/v1/payment-methods/{id}/label": {
808
+ parameters: {
809
+ query?: never;
810
+ header?: never;
811
+ path?: never;
812
+ cookie?: never;
813
+ };
814
+ get?: never;
815
+ /**
816
+ * Change what customers read for a payment method
817
+ * @description #530. **The label is read when a customer's payment is shown, not copied onto the payment**, so the new wording reaches every payment already recorded against this method, and no payment changes. A retired method can be relabelled too, because it still labels its payments.
818
+ *
819
+ * **`409` here is only the platform's concurrency conflict**: another write changed this method after it was read. The body is `urn:brokerplatform:problem:concurrency-conflict` with `retryable: true`; read the method again and retry.
820
+ */
821
+ put: operations["RelabelPaymentMethod"];
822
+ post?: never;
823
+ delete?: never;
824
+ options?: never;
825
+ head?: never;
826
+ patch?: never;
827
+ trace?: never;
828
+ };
829
+ "/api/v1/payment-methods/{id}/retirement": {
830
+ parameters: {
831
+ query?: never;
832
+ header?: never;
833
+ path?: never;
834
+ cookie?: never;
835
+ };
836
+ get?: never;
837
+ put?: never;
838
+ /**
839
+ * Stop a payment method being chosen for new payments
840
+ * @description #530. **One-way.** A retired method cannot be chosen when recording a payment, keeps labelling the payments already recorded against it, and keeps its code, which is never given to another method. Retiring one already retired is `409`. A `409` can also be the platform's concurrency conflict, with `retryable: true`, when another write changed the method after it was read.
841
+ */
842
+ post: operations["RetirePaymentMethod"];
843
+ delete?: never;
844
+ options?: never;
845
+ head?: never;
846
+ patch?: never;
847
+ trace?: never;
848
+ };
753
849
  "/api/v1/insurers": {
754
850
  parameters: {
755
851
  query?: never;
@@ -3297,6 +3393,26 @@ export interface paths {
3297
3393
  patch?: never;
3298
3394
  trace?: never;
3299
3395
  };
3396
+ "/api/v1/staff": {
3397
+ parameters: {
3398
+ query?: never;
3399
+ header?: never;
3400
+ path?: never;
3401
+ cookie?: never;
3402
+ };
3403
+ /**
3404
+ * The names of this broker's people, for the subject identifiers asked about.
3405
+ * @description Repeat `ids` once per subject identifier, up to 50. Each subject that belongs to one of this broker's memberships comes back with the name the identity provider last gave for them; any other subject is simply absent, whichever broker it belongs to. Names are personal data.
3406
+ */
3407
+ get: operations["ResolveStaffNames"];
3408
+ put?: never;
3409
+ post?: never;
3410
+ delete?: never;
3411
+ options?: never;
3412
+ head?: never;
3413
+ patch?: never;
3414
+ trace?: never;
3415
+ };
3300
3416
  "/api/v1/tenant": {
3301
3417
  parameters: {
3302
3418
  query?: never;
@@ -6370,6 +6486,10 @@ export interface components {
6370
6486
  name: null | string;
6371
6487
  registrationNumber: null | string;
6372
6488
  };
6489
+ CreatePaymentMethodRequest: {
6490
+ code: string;
6491
+ label: string;
6492
+ };
6373
6493
  CreditNoteLineRequest: {
6374
6494
  kind: string;
6375
6495
  description: string;
@@ -6579,6 +6699,7 @@ export interface components {
6579
6699
  /** Format: date-time */
6580
6700
  recordedAtUtc: string;
6581
6701
  state: string;
6702
+ sourceLabel: string;
6582
6703
  };
6583
6704
  CustomerPolicyDocumentPage: {
6584
6705
  items: components["schemas"]["CustomerPolicyDocumentResponse"][];
@@ -6650,6 +6771,8 @@ export interface components {
6650
6771
  paymentRequirementMetAtUtc: null | string;
6651
6772
  /** Format: uuid */
6652
6773
  paymentEvidenceReference: null | string;
6774
+ productName: null | string;
6775
+ lineOfBusinessName: null | string;
6653
6776
  };
6654
6777
  CustomerPresentedOption: {
6655
6778
  /** Format: uuid */
@@ -7951,6 +8074,17 @@ export interface components {
7951
8074
  setAtUtc: string;
7952
8075
  setBySubjectId: string;
7953
8076
  };
8077
+ PaymentMethodResponse: {
8078
+ /** Format: uuid */
8079
+ id: string;
8080
+ code: string;
8081
+ label: string;
8082
+ active: boolean;
8083
+ /** Format: date-time */
8084
+ createdAtUtc: string;
8085
+ /** Format: date-time */
8086
+ retiredAtUtc: null | string;
8087
+ };
7954
8088
  PaymentPage: {
7955
8089
  items: components["schemas"]["PaymentSummaryResponse"][];
7956
8090
  nextCursor: null | string;
@@ -7974,6 +8108,8 @@ export interface components {
7974
8108
  approvedBySubjectId: null | string;
7975
8109
  /** Format: date-time */
7976
8110
  approvedAtUtc: null | string;
8111
+ /** Format: uuid */
8112
+ paymentMethodId: null | string;
7977
8113
  };
7978
8114
  PaymentReversalResponse: {
7979
8115
  /** Format: uuid */
@@ -8006,6 +8142,8 @@ export interface components {
8006
8142
  /** Format: date-time */
8007
8143
  approvedAtUtc: null | string;
8008
8144
  reversed: boolean;
8145
+ /** Format: uuid */
8146
+ paymentMethodId: null | string;
8009
8147
  };
8010
8148
  PlacedMemberResponse: {
8011
8149
  /** Format: uuid */
@@ -8173,6 +8311,8 @@ export interface components {
8173
8311
  paymentRequirementMetBySubjectId: null | string;
8174
8312
  /** Format: uuid */
8175
8313
  paymentEvidenceReference: null | string;
8314
+ productName: null | string;
8315
+ lineOfBusinessName: null | string;
8176
8316
  };
8177
8317
  PolicyViolationResponse: {
8178
8318
  field: string;
@@ -8490,6 +8630,32 @@ export interface components {
8490
8630
  /** Format: uuid */
8491
8631
  formSubmissionId: null | string;
8492
8632
  };
8633
+ /** @description RFC 9457 problem answered when a request to render, produce or export was refused because a rate limit's budget is spent (ADR-0050). Nothing was done. Branch on type, not on title or detail, which are human-readable and not fixed. */
8634
+ RateLimitedProblem: {
8635
+ /**
8636
+ * @description Identifies the problem kind. A stable URN; it is not promised to resolve.
8637
+ * @constant
8638
+ */
8639
+ type: "urn:brokerplatform:problem:rate-limited";
8640
+ title: string;
8641
+ /**
8642
+ * Format: int32
8643
+ * @enum {integer}
8644
+ */
8645
+ status: 429;
8646
+ detail?: string;
8647
+ instance?: null | string;
8648
+ /**
8649
+ * Format: int32
8650
+ * @description The same whole number of seconds as the Retry-After header, for a client that cannot read response headers. At least 1.
8651
+ */
8652
+ retryAfterSeconds: number;
8653
+ /**
8654
+ * @description Whose allowance is spent: user means this caller's own, tenant means the one their organisation's people share.
8655
+ * @enum {string}
8656
+ */
8657
+ budget: "user" | "tenant";
8658
+ };
8493
8659
  RebrandTenantRequest: {
8494
8660
  logoUrl: null | string;
8495
8661
  primaryColour: null | string;
@@ -8536,8 +8702,10 @@ export interface components {
8536
8702
  RecordPaymentRequest: {
8537
8703
  /** Format: double */
8538
8704
  amount: number | string;
8539
- source: string;
8705
+ source?: null | string;
8540
8706
  externalReference: string;
8707
+ /** Format: uuid */
8708
+ paymentMethodId?: null | string;
8541
8709
  };
8542
8710
  RecordPaymentRequirementMetRequest: {
8543
8711
  /** Format: uuid */
@@ -8600,6 +8768,9 @@ export interface components {
8600
8768
  name: null | string;
8601
8769
  registrationNumber: null | string;
8602
8770
  };
8771
+ RelabelPaymentMethodRequest: {
8772
+ label: string;
8773
+ };
8603
8774
  ReleaseLegalHoldRequest: {
8604
8775
  releaseReason: null | string;
8605
8776
  };
@@ -8912,6 +9083,10 @@ export interface components {
8912
9083
  amount: null | number | string;
8913
9084
  unit: null | string;
8914
9085
  };
9086
+ StaffNameResponse: {
9087
+ subjectId: string;
9088
+ displayName: string;
9089
+ };
8915
9090
  StartComparisonSchemaVersionRequest: {
8916
9091
  /** Format: uuid */
8917
9092
  productId: null | string;
@@ -10397,6 +10572,17 @@ export interface operations {
10397
10572
  "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
10398
10573
  };
10399
10574
  };
10575
+ /** @description Too Many Requests (ADR-0050). This operation renders, produces or exports, and the caller's own budget for such work, or their organisation's, is spent. Nothing was done: no document, statement, export or receipt exists for this request. Wait the number of seconds in Retry-After (also in retryAfterSeconds) before trying again. */
10576
+ 429: {
10577
+ headers: {
10578
+ /** @description Whole seconds to wait before retrying; at least 1. */
10579
+ "Retry-After": number;
10580
+ [name: string]: unknown;
10581
+ };
10582
+ content: {
10583
+ "application/problem+json": components["schemas"]["RateLimitedProblem"];
10584
+ };
10585
+ };
10400
10586
  };
10401
10587
  };
10402
10588
  GetStatement: {
@@ -10626,6 +10812,17 @@ export interface operations {
10626
10812
  "application/problem+json": components["schemas"]["ProblemDetails"];
10627
10813
  };
10628
10814
  };
10815
+ /** @description Too Many Requests (ADR-0050). This operation renders, produces or exports, and the caller's own budget for such work, or their organisation's, is spent. Nothing was done: no document, statement, export or receipt exists for this request. Wait the number of seconds in Retry-After (also in retryAfterSeconds) before trying again. */
10816
+ 429: {
10817
+ headers: {
10818
+ /** @description Whole seconds to wait before retrying; at least 1. */
10819
+ "Retry-After": number;
10820
+ [name: string]: unknown;
10821
+ };
10822
+ content: {
10823
+ "application/problem+json": components["schemas"]["RateLimitedProblem"];
10824
+ };
10825
+ };
10629
10826
  };
10630
10827
  };
10631
10828
  ListExportReceipts: {
@@ -10667,6 +10864,186 @@ export interface operations {
10667
10864
  };
10668
10865
  };
10669
10866
  };
10867
+ ListPaymentMethods: {
10868
+ parameters: {
10869
+ query?: never;
10870
+ header?: never;
10871
+ path?: never;
10872
+ cookie?: never;
10873
+ };
10874
+ requestBody?: never;
10875
+ responses: {
10876
+ /** @description OK */
10877
+ 200: {
10878
+ headers: {
10879
+ [name: string]: unknown;
10880
+ };
10881
+ content: {
10882
+ "application/json": components["schemas"]["PaymentMethodResponse"][];
10883
+ };
10884
+ };
10885
+ };
10886
+ };
10887
+ CreatePaymentMethod: {
10888
+ parameters: {
10889
+ query?: never;
10890
+ header?: never;
10891
+ path?: never;
10892
+ cookie?: never;
10893
+ };
10894
+ requestBody: {
10895
+ content: {
10896
+ "application/json": components["schemas"]["CreatePaymentMethodRequest"];
10897
+ };
10898
+ };
10899
+ responses: {
10900
+ /** @description Created */
10901
+ 201: {
10902
+ headers: {
10903
+ [name: string]: unknown;
10904
+ };
10905
+ content: {
10906
+ "application/json": components["schemas"]["PaymentMethodResponse"];
10907
+ };
10908
+ };
10909
+ /** @description Bad Request */
10910
+ 400: {
10911
+ headers: {
10912
+ [name: string]: unknown;
10913
+ };
10914
+ content: {
10915
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
10916
+ };
10917
+ };
10918
+ /** @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. */
10919
+ 409: {
10920
+ headers: {
10921
+ [name: string]: unknown;
10922
+ };
10923
+ content: {
10924
+ "application/problem+json": components["schemas"]["ConcurrencyConflictProblem"] | components["schemas"]["ProblemDetails"];
10925
+ };
10926
+ };
10927
+ };
10928
+ };
10929
+ GetPaymentMethod: {
10930
+ parameters: {
10931
+ query?: never;
10932
+ header?: never;
10933
+ path: {
10934
+ id: string;
10935
+ };
10936
+ cookie?: never;
10937
+ };
10938
+ requestBody?: never;
10939
+ responses: {
10940
+ /** @description OK */
10941
+ 200: {
10942
+ headers: {
10943
+ [name: string]: unknown;
10944
+ };
10945
+ content: {
10946
+ "application/json": components["schemas"]["PaymentMethodResponse"];
10947
+ };
10948
+ };
10949
+ /** @description Not Found */
10950
+ 404: {
10951
+ headers: {
10952
+ [name: string]: unknown;
10953
+ };
10954
+ content?: never;
10955
+ };
10956
+ };
10957
+ };
10958
+ RelabelPaymentMethod: {
10959
+ parameters: {
10960
+ query?: never;
10961
+ header?: never;
10962
+ path: {
10963
+ id: string;
10964
+ };
10965
+ cookie?: never;
10966
+ };
10967
+ requestBody: {
10968
+ content: {
10969
+ "application/json": components["schemas"]["RelabelPaymentMethodRequest"];
10970
+ };
10971
+ };
10972
+ responses: {
10973
+ /** @description OK */
10974
+ 200: {
10975
+ headers: {
10976
+ [name: string]: unknown;
10977
+ };
10978
+ content: {
10979
+ "application/json": components["schemas"]["PaymentMethodResponse"];
10980
+ };
10981
+ };
10982
+ /** @description Bad Request */
10983
+ 400: {
10984
+ headers: {
10985
+ [name: string]: unknown;
10986
+ };
10987
+ content: {
10988
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
10989
+ };
10990
+ };
10991
+ /** @description Not Found */
10992
+ 404: {
10993
+ headers: {
10994
+ [name: string]: unknown;
10995
+ };
10996
+ content?: never;
10997
+ };
10998
+ /** @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. */
10999
+ 409: {
11000
+ headers: {
11001
+ [name: string]: unknown;
11002
+ };
11003
+ content: {
11004
+ "application/problem+json": components["schemas"]["ConcurrencyConflictProblem"] | components["schemas"]["ProblemDetails"];
11005
+ };
11006
+ };
11007
+ };
11008
+ };
11009
+ RetirePaymentMethod: {
11010
+ parameters: {
11011
+ query?: never;
11012
+ header?: never;
11013
+ path: {
11014
+ id: string;
11015
+ };
11016
+ cookie?: never;
11017
+ };
11018
+ requestBody?: never;
11019
+ responses: {
11020
+ /** @description OK */
11021
+ 200: {
11022
+ headers: {
11023
+ [name: string]: unknown;
11024
+ };
11025
+ content: {
11026
+ "application/json": components["schemas"]["PaymentMethodResponse"];
11027
+ };
11028
+ };
11029
+ /** @description Not Found */
11030
+ 404: {
11031
+ headers: {
11032
+ [name: string]: unknown;
11033
+ };
11034
+ content?: never;
11035
+ };
11036
+ /** @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. */
11037
+ 409: {
11038
+ headers: {
11039
+ [name: string]: unknown;
11040
+ };
11041
+ content: {
11042
+ "application/problem+json": components["schemas"]["ConcurrencyConflictProblem"] | components["schemas"]["ProblemDetails"];
11043
+ };
11044
+ };
11045
+ };
11046
+ };
10670
11047
  ListInsurers: {
10671
11048
  parameters: {
10672
11049
  query?: {
@@ -17163,6 +17540,44 @@ export interface operations {
17163
17540
  };
17164
17541
  };
17165
17542
  };
17543
+ ResolveStaffNames: {
17544
+ parameters: {
17545
+ query?: {
17546
+ ids?: string[];
17547
+ };
17548
+ header?: never;
17549
+ path?: never;
17550
+ cookie?: never;
17551
+ };
17552
+ requestBody?: never;
17553
+ responses: {
17554
+ /** @description OK */
17555
+ 200: {
17556
+ headers: {
17557
+ [name: string]: unknown;
17558
+ };
17559
+ content: {
17560
+ "application/json": components["schemas"]["StaffNameResponse"][];
17561
+ };
17562
+ };
17563
+ /** @description Bad Request */
17564
+ 400: {
17565
+ headers: {
17566
+ [name: string]: unknown;
17567
+ };
17568
+ content: {
17569
+ "application/problem+json": components["schemas"]["ProblemDetails"];
17570
+ };
17571
+ };
17572
+ /** @description Forbidden */
17573
+ 403: {
17574
+ headers: {
17575
+ [name: string]: unknown;
17576
+ };
17577
+ content?: never;
17578
+ };
17579
+ };
17580
+ };
17166
17581
  GetTenantSettings: {
17167
17582
  parameters: {
17168
17583
  query?: never;
@@ -19660,6 +20075,17 @@ export interface operations {
19660
20075
  "application/problem+json": components["schemas"]["UnrenderableTemplateProblem"] | components["schemas"]["UnpublishableTemplateBodyProblem"];
19661
20076
  };
19662
20077
  };
20078
+ /** @description Too Many Requests (ADR-0050). This operation renders, produces or exports, and the caller's own budget for such work, or their organisation's, is spent. Nothing was done: no document, statement, export or receipt exists for this request. Wait the number of seconds in Retry-After (also in retryAfterSeconds) before trying again. */
20079
+ 429: {
20080
+ headers: {
20081
+ /** @description Whole seconds to wait before retrying; at least 1. */
20082
+ "Retry-After": number;
20083
+ [name: string]: unknown;
20084
+ };
20085
+ content: {
20086
+ "application/problem+json": components["schemas"]["RateLimitedProblem"];
20087
+ };
20088
+ };
19663
20089
  };
19664
20090
  };
19665
20091
  ReadRenewalLeadTimes: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insurance-broker/api-client",
3
- "version": "4.17.0",
3
+ "version": "4.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,