@insurance-broker/api-client 1.26.0 → 1.28.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 +533 -2
  2. package/package.json +1 -1
package/dist/schema.d.ts CHANGED
@@ -858,7 +858,19 @@ export interface paths {
858
858
  path?: never;
859
859
  cookie?: never;
860
860
  };
861
- get?: never;
861
+ /**
862
+ * List this broker's claims in one of three views
863
+ * @description CLM-005. The broker's claims, newest notification first, in one of three views named by `view`: `open` is every claim still being worked, and `withdrawn` and `closed` are the two concluded outcomes. Optionally narrowed by product, insurer, customer or policy. Paged by cursor.
864
+ *
865
+ * **Carries identifiers and no names.** A product's name and an insurer's live in the catalogue and a customer's in CRM, so a client joins those surfaces itself (ADR-0002).
866
+ *
867
+ * **There is no filter for the member of staff working a claim, because a claim does not record one.** Nothing in this phase assigns claim work; a renewal case carries an assignee and a claim does not, and inventing the column here would be inventing an assignment model inside a list.
868
+ *
869
+ * **`status` is what the broker is doing, never what an insurer decided** (ADR-0041 section 2). What an insurer said is a separate recorded fact with its own route and its own provenance.
870
+ *
871
+ * Another broker's claims are not in any view. The tenant is never a parameter here: it comes from the caller's own session, and the four filters this route accepts all narrow within it.
872
+ */
873
+ get: operations["ListClaims"];
862
874
  put?: never;
863
875
  /**
864
876
  * Record a first notice of loss against a policy
@@ -1197,7 +1209,45 @@ export interface paths {
1197
1209
  patch?: never;
1198
1210
  trace?: never;
1199
1211
  };
1200
- "/api/v1/customer/claims": {
1212
+ "/api/v1/claims/{id}/outstanding-items": {
1213
+ parameters: {
1214
+ query?: never;
1215
+ header?: never;
1216
+ path?: never;
1217
+ cookie?: never;
1218
+ };
1219
+ /**
1220
+ * Read what a claim is or was waiting on
1221
+ * @description CLM-005. Everything recorded as outstanding on this claim, newest raised first.
1222
+ *
1223
+ * `outstanding=true` narrows it to what is still being waited on - the operational question, *what is holding this up* - and `outstanding=false` to what has arrived. Absent, the whole history comes back.
1224
+ *
1225
+ * Ordered on when an item was **raised** and never on when it was resolved: the list is a history, and ordering on a column that changes moves the boundaries under a reader.
1226
+ *
1227
+ * **Staff only.** A customer is told what you need from them by being told, on their timeline, in words you chose - not by being handed the working list, which also names everything you owe.
1228
+ */
1229
+ get: operations["ListClaimOutstandingItems"];
1230
+ put?: never;
1231
+ /**
1232
+ * Record that a claim is waiting on something
1233
+ * @description CLM-005. Records what this claim is waiting on, and which side owes it.
1234
+ *
1235
+ * **This creates a row and never changes the claim's status.** A claim waiting on a customer's photographs is still `Notified`, because the broker is still assisting - which is what that status says (ADR-0041 section 5). A status could not have said *what* is outstanding in any case, which is the other half of why this is a row.
1236
+ *
1237
+ * **What is outstanding is your own words, not a code from a list.** This platform does not name insurance fields, so there is no vocabulary of permitted items and there will not be one; a broker's own list of the things it asks for is that broker's configuration.
1238
+ *
1239
+ * **The side is a closed set of two.** `Customer` means the customer owes it and you are waiting on them. `Broker` means you owe it - including when it is your insurer who is waiting. If you in turn need something from the customer to produce it, that is a second item, because it is a different wait with a different person to chase.
1240
+ *
1241
+ * Refused with 409 once the claim has concluded: nobody is waiting on a claim you have stopped working, and closing starts the disposal clock on everything filed against it.
1242
+ */
1243
+ post: operations["RaiseClaimOutstandingItem"];
1244
+ delete?: never;
1245
+ options?: never;
1246
+ head?: never;
1247
+ patch?: never;
1248
+ trace?: never;
1249
+ };
1250
+ "/api/v1/claims/{id}/outstanding-items/{itemId}/resolution": {
1201
1251
  parameters: {
1202
1252
  query?: never;
1203
1253
  header?: never;
@@ -1206,6 +1256,100 @@ export interface paths {
1206
1256
  };
1207
1257
  get?: never;
1208
1258
  put?: never;
1259
+ /**
1260
+ * Record that what a claim was waiting on has arrived
1261
+ * @description CLM-005. Marks one outstanding item as received, naming you and the instant.
1262
+ *
1263
+ * **This is allowed after the claim has concluded**, which is the one place this surface differs from everything else that hangs off a claim. Filing evidence or recording a dealing with an insurer against a closed claim is refused, because both write a row that would carry no disposal clock. This writes no row - it stamps two columns on one that already has a clock - and a police report that arrives in January against a claim closed in December is a fact the record may not be made to deny.
1264
+ *
1265
+ * A second resolution is refused with 409 naming who dealt with it. Somebody read the item outstanding and decided from it, and overwriting their name would lose the only record of who did the work. Nothing here edits the description or moves the side: correcting a mistake is resolving the wrong item and raising the right one, which is what happened.
1266
+ */
1267
+ post: operations["ResolveClaimOutstandingItem"];
1268
+ delete?: never;
1269
+ options?: never;
1270
+ head?: never;
1271
+ patch?: never;
1272
+ trace?: never;
1273
+ };
1274
+ "/api/v1/claims/{id}/appointments": {
1275
+ parameters: {
1276
+ query?: never;
1277
+ header?: never;
1278
+ path?: never;
1279
+ cookie?: never;
1280
+ };
1281
+ /**
1282
+ * Read the visits arranged about a claim
1283
+ * @description CLM-005. Every visit recorded against this claim, soonest first, cancelled ones included and marked as such - a diary is read forwards, and a visit that was called off is part of the account of how the claim went.
1284
+ *
1285
+ * **Staff only**, for the same reason the outstanding items are.
1286
+ */
1287
+ get: operations["ListClaimAppointments"];
1288
+ put?: never;
1289
+ /**
1290
+ * Record a visit arranged about a claim
1291
+ * @description CLM-005. Records that somebody is expected - an assessor, a repairer, a surveyor - and when.
1292
+ *
1293
+ * **There is no appointment type and no provider directory, and that is deliberate.** This platform does not name a trade, a service or a provider on behalf of every broker in every country it serves (ADR-0041 section 6). What the visit is for, and who is coming if you want that written down, is `purpose` - your own words.
1294
+ *
1295
+ * **The time may be in the past**, so last week's visit can be written up on Friday. It is an instant rather than a day, because the time of day is the operative fact about a visit.
1296
+ *
1297
+ * **Nothing here is a status on the claim.** A claim with an assessor booked is still `Notified`.
1298
+ *
1299
+ * **There is no reschedule.** Moving a visit is cancelling one and arranging another, which is what actually happened and what a customer told twice experienced; a date that could be edited would leave nothing saying anybody was ever expected on the first day.
1300
+ *
1301
+ * Refused with 409 once the claim has concluded.
1302
+ */
1303
+ post: operations["ArrangeClaimAppointment"];
1304
+ delete?: never;
1305
+ options?: never;
1306
+ head?: never;
1307
+ patch?: never;
1308
+ trace?: never;
1309
+ };
1310
+ "/api/v1/claims/{id}/appointments/{appointmentId}/cancellation": {
1311
+ parameters: {
1312
+ query?: never;
1313
+ header?: never;
1314
+ path?: never;
1315
+ cookie?: never;
1316
+ };
1317
+ get?: never;
1318
+ put?: never;
1319
+ /**
1320
+ * Record that a visit was called off
1321
+ * @description CLM-005. Marks one appointment cancelled, naming you and the instant.
1322
+ *
1323
+ * **Allowed after the claim has concluded**, for the same reason resolving an outstanding item is: it writes no row, and an assessor stood down in January for a claim closed in December is a thing that happened.
1324
+ *
1325
+ * A second cancellation is refused with 409. There is no reason field - why a visit was called off is a note, and who did it and when is on the row and in the audit trail.
1326
+ */
1327
+ post: operations["CancelClaimAppointment"];
1328
+ delete?: never;
1329
+ options?: never;
1330
+ head?: never;
1331
+ patch?: never;
1332
+ trace?: never;
1333
+ };
1334
+ "/api/v1/customer/claims": {
1335
+ parameters: {
1336
+ query?: never;
1337
+ header?: never;
1338
+ path?: never;
1339
+ cookie?: never;
1340
+ };
1341
+ /**
1342
+ * List the claims you have reported
1343
+ * @description CLM-006. Every claim of yours, most recent incident first, paged by cursor.
1344
+ *
1345
+ * **You are not named in the request.** There is no customer field and no broker field: the list is whoever is signed in, resolved from the session. Another person's claims are not in it - not filtered out of it, but absent, because a claim that is not yours is not visible to this route at all.
1346
+ *
1347
+ * **This carries nothing your broker wrote for themselves.** Each row says what the claim is and what your broker is doing about it. Your broker's working notes are a different record entirely, which nothing here can reach (ADR-0041 section 3); what they have chosen to tell you is on each claim's own timeline.
1348
+ *
1349
+ * **`status` is what your broker is doing, never what your insurer decided** (ADR-0041 section 2). What the insurer said is on each claim's own insurer-outcomes route.
1350
+ */
1351
+ get: operations["ListOwnClaims"];
1352
+ put?: never;
1209
1353
  /**
1210
1354
  * Report a loss on one of your own policies
1211
1355
  * @description CLM-001, the customer's half. Opens a claim-assistance case against a policy you own: the broker is helping, and nothing here decides anything about cover.
@@ -3271,6 +3415,11 @@ export interface components {
3271
3415
  insurerId: null | string;
3272
3416
  channel: null | string;
3273
3417
  };
3418
+ ArrangeClaimAppointmentRequest: {
3419
+ /** Format: date-time */
3420
+ scheduledAtUtc: string;
3421
+ purpose: string;
3422
+ };
3274
3423
  AskAboutQuoteRequest: {
3275
3424
  /** Format: uuid */
3276
3425
  presentationVersionId: null | string;
@@ -3317,6 +3466,22 @@ export interface components {
3317
3466
  items: components["schemas"]["ProductResponse"][];
3318
3467
  nextCursor: null | string;
3319
3468
  };
3469
+ ClaimAppointmentResponse: {
3470
+ /** Format: uuid */
3471
+ id: string;
3472
+ /** Format: uuid */
3473
+ claimId: string;
3474
+ /** Format: date-time */
3475
+ scheduledAtUtc: string;
3476
+ purpose: string;
3477
+ arrangedBySubjectId: string;
3478
+ /** Format: date-time */
3479
+ arrangedAtUtc: string;
3480
+ cancelledBySubjectId: null | string;
3481
+ /** Format: date-time */
3482
+ cancelledAtUtc: null | string;
3483
+ isCancelled: boolean;
3484
+ };
3320
3485
  ClaimEvidenceResponse: {
3321
3486
  /** Format: uuid */
3322
3487
  id: string;
@@ -3351,6 +3516,25 @@ export interface components {
3351
3516
  /** Format: date-time */
3352
3517
  publishedAtUtc: null | string;
3353
3518
  };
3519
+ ClaimOutstandingItemResponse: {
3520
+ /** Format: uuid */
3521
+ id: string;
3522
+ /** Format: uuid */
3523
+ claimId: string;
3524
+ awaitedFrom: string;
3525
+ description: string;
3526
+ raisedBySubjectId: string;
3527
+ /** Format: date-time */
3528
+ raisedAtUtc: string;
3529
+ resolvedBySubjectId: null | string;
3530
+ /** Format: date-time */
3531
+ resolvedAtUtc: null | string;
3532
+ isOutstanding: boolean;
3533
+ };
3534
+ ClaimPage: {
3535
+ items: components["schemas"]["ClaimSummaryResponse"][];
3536
+ nextCursor: null | string;
3537
+ };
3354
3538
  ClaimResponse: {
3355
3539
  /** Format: uuid */
3356
3540
  id: string;
@@ -3368,6 +3552,27 @@ export interface components {
3368
3552
  /** Format: uuid */
3369
3553
  claimFormSubmissionId: null | string;
3370
3554
  };
3555
+ ClaimSummaryResponse: {
3556
+ /** Format: uuid */
3557
+ id: string;
3558
+ status: string;
3559
+ /** Format: uuid */
3560
+ customerId: string;
3561
+ /** Format: uuid */
3562
+ policyId: string;
3563
+ /** Format: uuid */
3564
+ productId: string;
3565
+ /** Format: uuid */
3566
+ insurerId: string;
3567
+ /** Format: date */
3568
+ incidentOn: string;
3569
+ /** Format: date-time */
3570
+ notifiedAtUtc: string;
3571
+ /** Format: date-time */
3572
+ retentionAnchorAtUtc: null | string;
3573
+ /** Format: uuid */
3574
+ claimFormSubmissionId: null | string;
3575
+ };
3371
3576
  ClaimTimelineEntryResponse: {
3372
3577
  /** Format: uuid */
3373
3578
  id: string;
@@ -3454,6 +3659,10 @@ export interface components {
3454
3659
  name: null | string;
3455
3660
  registrationNumber: null | string;
3456
3661
  };
3662
+ CustomerClaimPage: {
3663
+ items: components["schemas"]["ClaimResponse"][];
3664
+ nextCursor: null | string;
3665
+ };
3457
3666
  CustomerInsurerOutcomeResponse: {
3458
3667
  /** Format: uuid */
3459
3668
  id: string;
@@ -4408,6 +4617,10 @@ export interface components {
4408
4617
  /** Format: date-time */
4409
4618
  declinedAtUtc: null | string;
4410
4619
  };
4620
+ RaiseClaimOutstandingItemRequest: {
4621
+ awaitedFrom: string;
4622
+ description: string;
4623
+ };
4411
4624
  RaiseOutstandingItemRequest: {
4412
4625
  awaitedFrom: null | string;
4413
4626
  description: null | string;
@@ -7217,6 +7430,43 @@ export interface operations {
7217
7430
  };
7218
7431
  };
7219
7432
  };
7433
+ ListClaims: {
7434
+ parameters: {
7435
+ query?: {
7436
+ view?: string;
7437
+ productId?: string;
7438
+ insurerId?: string;
7439
+ customerId?: string;
7440
+ policyId?: string;
7441
+ cursor?: string;
7442
+ limit?: number | string;
7443
+ };
7444
+ header?: never;
7445
+ path?: never;
7446
+ cookie?: never;
7447
+ };
7448
+ requestBody?: never;
7449
+ responses: {
7450
+ /** @description OK */
7451
+ 200: {
7452
+ headers: {
7453
+ [name: string]: unknown;
7454
+ };
7455
+ content: {
7456
+ "application/json": components["schemas"]["ClaimPage"];
7457
+ };
7458
+ };
7459
+ /** @description Bad Request */
7460
+ 400: {
7461
+ headers: {
7462
+ [name: string]: unknown;
7463
+ };
7464
+ content: {
7465
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
7466
+ };
7467
+ };
7468
+ };
7469
+ };
7220
7470
  NotifyClaim: {
7221
7471
  parameters: {
7222
7472
  query?: never;
@@ -7930,6 +8180,287 @@ export interface operations {
7930
8180
  };
7931
8181
  };
7932
8182
  };
8183
+ ListClaimOutstandingItems: {
8184
+ parameters: {
8185
+ query?: {
8186
+ outstanding?: boolean;
8187
+ };
8188
+ header?: never;
8189
+ path: {
8190
+ id: string;
8191
+ };
8192
+ cookie?: never;
8193
+ };
8194
+ requestBody?: never;
8195
+ responses: {
8196
+ /** @description OK */
8197
+ 200: {
8198
+ headers: {
8199
+ [name: string]: unknown;
8200
+ };
8201
+ content: {
8202
+ "application/json": components["schemas"]["ClaimOutstandingItemResponse"][];
8203
+ };
8204
+ };
8205
+ /** @description Bad Request */
8206
+ 400: {
8207
+ headers: {
8208
+ [name: string]: unknown;
8209
+ };
8210
+ content: {
8211
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
8212
+ };
8213
+ };
8214
+ /** @description Not Found */
8215
+ 404: {
8216
+ headers: {
8217
+ [name: string]: unknown;
8218
+ };
8219
+ content?: never;
8220
+ };
8221
+ };
8222
+ };
8223
+ RaiseClaimOutstandingItem: {
8224
+ parameters: {
8225
+ query?: never;
8226
+ header?: never;
8227
+ path: {
8228
+ id: string;
8229
+ };
8230
+ cookie?: never;
8231
+ };
8232
+ requestBody: {
8233
+ content: {
8234
+ "application/json": components["schemas"]["RaiseClaimOutstandingItemRequest"];
8235
+ };
8236
+ };
8237
+ responses: {
8238
+ /** @description Created */
8239
+ 201: {
8240
+ headers: {
8241
+ [name: string]: unknown;
8242
+ };
8243
+ content: {
8244
+ "application/json": components["schemas"]["ClaimOutstandingItemResponse"];
8245
+ };
8246
+ };
8247
+ /** @description Bad Request */
8248
+ 400: {
8249
+ headers: {
8250
+ [name: string]: unknown;
8251
+ };
8252
+ content: {
8253
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
8254
+ };
8255
+ };
8256
+ /** @description Not Found */
8257
+ 404: {
8258
+ headers: {
8259
+ [name: string]: unknown;
8260
+ };
8261
+ content?: never;
8262
+ };
8263
+ /** @description Conflict */
8264
+ 409: {
8265
+ headers: {
8266
+ [name: string]: unknown;
8267
+ };
8268
+ content: {
8269
+ "application/problem+json": components["schemas"]["ProblemDetails"];
8270
+ };
8271
+ };
8272
+ };
8273
+ };
8274
+ ResolveClaimOutstandingItem: {
8275
+ parameters: {
8276
+ query?: never;
8277
+ header?: never;
8278
+ path: {
8279
+ id: string;
8280
+ itemId: string;
8281
+ };
8282
+ cookie?: never;
8283
+ };
8284
+ requestBody?: never;
8285
+ responses: {
8286
+ /** @description OK */
8287
+ 200: {
8288
+ headers: {
8289
+ [name: string]: unknown;
8290
+ };
8291
+ content: {
8292
+ "application/json": components["schemas"]["ClaimOutstandingItemResponse"];
8293
+ };
8294
+ };
8295
+ /** @description Not Found */
8296
+ 404: {
8297
+ headers: {
8298
+ [name: string]: unknown;
8299
+ };
8300
+ content?: never;
8301
+ };
8302
+ /** @description Conflict */
8303
+ 409: {
8304
+ headers: {
8305
+ [name: string]: unknown;
8306
+ };
8307
+ content: {
8308
+ "application/problem+json": components["schemas"]["ProblemDetails"];
8309
+ };
8310
+ };
8311
+ };
8312
+ };
8313
+ ListClaimAppointments: {
8314
+ parameters: {
8315
+ query?: never;
8316
+ header?: never;
8317
+ path: {
8318
+ id: string;
8319
+ };
8320
+ cookie?: never;
8321
+ };
8322
+ requestBody?: never;
8323
+ responses: {
8324
+ /** @description OK */
8325
+ 200: {
8326
+ headers: {
8327
+ [name: string]: unknown;
8328
+ };
8329
+ content: {
8330
+ "application/json": components["schemas"]["ClaimAppointmentResponse"][];
8331
+ };
8332
+ };
8333
+ /** @description Not Found */
8334
+ 404: {
8335
+ headers: {
8336
+ [name: string]: unknown;
8337
+ };
8338
+ content?: never;
8339
+ };
8340
+ };
8341
+ };
8342
+ ArrangeClaimAppointment: {
8343
+ parameters: {
8344
+ query?: never;
8345
+ header?: never;
8346
+ path: {
8347
+ id: string;
8348
+ };
8349
+ cookie?: never;
8350
+ };
8351
+ requestBody: {
8352
+ content: {
8353
+ "application/json": components["schemas"]["ArrangeClaimAppointmentRequest"];
8354
+ };
8355
+ };
8356
+ responses: {
8357
+ /** @description Created */
8358
+ 201: {
8359
+ headers: {
8360
+ [name: string]: unknown;
8361
+ };
8362
+ content: {
8363
+ "application/json": components["schemas"]["ClaimAppointmentResponse"];
8364
+ };
8365
+ };
8366
+ /** @description Bad Request */
8367
+ 400: {
8368
+ headers: {
8369
+ [name: string]: unknown;
8370
+ };
8371
+ content: {
8372
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
8373
+ };
8374
+ };
8375
+ /** @description Not Found */
8376
+ 404: {
8377
+ headers: {
8378
+ [name: string]: unknown;
8379
+ };
8380
+ content?: never;
8381
+ };
8382
+ /** @description Conflict */
8383
+ 409: {
8384
+ headers: {
8385
+ [name: string]: unknown;
8386
+ };
8387
+ content: {
8388
+ "application/problem+json": components["schemas"]["ProblemDetails"];
8389
+ };
8390
+ };
8391
+ };
8392
+ };
8393
+ CancelClaimAppointment: {
8394
+ parameters: {
8395
+ query?: never;
8396
+ header?: never;
8397
+ path: {
8398
+ id: string;
8399
+ appointmentId: string;
8400
+ };
8401
+ cookie?: never;
8402
+ };
8403
+ requestBody?: never;
8404
+ responses: {
8405
+ /** @description OK */
8406
+ 200: {
8407
+ headers: {
8408
+ [name: string]: unknown;
8409
+ };
8410
+ content: {
8411
+ "application/json": components["schemas"]["ClaimAppointmentResponse"];
8412
+ };
8413
+ };
8414
+ /** @description Not Found */
8415
+ 404: {
8416
+ headers: {
8417
+ [name: string]: unknown;
8418
+ };
8419
+ content?: never;
8420
+ };
8421
+ /** @description Conflict */
8422
+ 409: {
8423
+ headers: {
8424
+ [name: string]: unknown;
8425
+ };
8426
+ content: {
8427
+ "application/problem+json": components["schemas"]["ProblemDetails"];
8428
+ };
8429
+ };
8430
+ };
8431
+ };
8432
+ ListOwnClaims: {
8433
+ parameters: {
8434
+ query?: {
8435
+ cursor?: string;
8436
+ limit?: number | string;
8437
+ };
8438
+ header?: never;
8439
+ path?: never;
8440
+ cookie?: never;
8441
+ };
8442
+ requestBody?: never;
8443
+ responses: {
8444
+ /** @description OK */
8445
+ 200: {
8446
+ headers: {
8447
+ [name: string]: unknown;
8448
+ };
8449
+ content: {
8450
+ "application/json": components["schemas"]["CustomerClaimPage"];
8451
+ };
8452
+ };
8453
+ /** @description Bad Request */
8454
+ 400: {
8455
+ headers: {
8456
+ [name: string]: unknown;
8457
+ };
8458
+ content: {
8459
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
8460
+ };
8461
+ };
8462
+ };
8463
+ };
7933
8464
  ReportOwnClaim: {
7934
8465
  parameters: {
7935
8466
  query?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insurance-broker/api-client",
3
- "version": "1.26.0",
3
+ "version": "1.28.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,