@insurance-broker/api-client 1.45.0 → 1.46.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 +152 -0
  2. package/package.json +1 -1
package/dist/schema.d.ts CHANGED
@@ -4816,6 +4816,46 @@ export interface paths {
4816
4816
  patch?: never;
4817
4817
  trace?: never;
4818
4818
  };
4819
+ "/api/v1/dashboards/leads": {
4820
+ parameters: {
4821
+ query?: never;
4822
+ header?: never;
4823
+ path?: never;
4824
+ cookie?: never;
4825
+ };
4826
+ /**
4827
+ * How many enquiries arrived, how many nobody has taken, and where they came from
4828
+ * @description The lead funnel, read from phase 10's read model rather than from the module that owns leads (ADR-0047). Filter by a period and by a source; the response echoes both, so a figure carries its own question. Every response reports an as-at, which is the oldest projection instant among the rows counted: a read model is written when the Worker consumes an event, so a figure from one is about a recent past, and a count is only as current as its least-current row. A count of nil has no as-at, because it lags nothing. RPT-001 names eleven subjects and this is the only one with a read model behind it: the rest wait on the modules that own those facts publishing the lifecycle events to feed one, and a dashboard built over their tables instead would be the cross-module join the platform forbids everywhere else.
4829
+ */
4830
+ get: operations["ReadLeadFunnelDashboard"];
4831
+ put?: never;
4832
+ post?: never;
4833
+ delete?: never;
4834
+ options?: never;
4835
+ head?: never;
4836
+ patch?: never;
4837
+ trace?: never;
4838
+ };
4839
+ "/api/v1/dashboards/leads/entries": {
4840
+ parameters: {
4841
+ query?: never;
4842
+ header?: never;
4843
+ path?: never;
4844
+ cookie?: never;
4845
+ };
4846
+ /**
4847
+ * The leads behind a figure on the funnel dashboard
4848
+ * @description The rows the dashboard counted, newest first, paged by an opaque cursor. The filters are the dashboard's own plus 'assigned', which is how the unassigned figure is traced to its rows. Identifiers and dates only: a lead's name and contact details stay in the module that owns them, so this projection never becomes a second copy of personal data somebody has to find at erasure time (ADR-0047 section 6). There is no branch filter and no staff-member filter: the read model carries neither a branch nor a person, and resolving either would be a read of another module's tables.
4849
+ */
4850
+ get: operations["ListLeadFunnelEntries"];
4851
+ put?: never;
4852
+ post?: never;
4853
+ delete?: never;
4854
+ options?: never;
4855
+ head?: never;
4856
+ patch?: never;
4857
+ trace?: never;
4858
+ };
4819
4859
  "/api/v1/notifications": {
4820
4860
  parameters: {
4821
4861
  query?: never;
@@ -5827,6 +5867,49 @@ export interface components {
5827
5867
  integrationName: null | string;
5828
5868
  };
5829
5869
  JsonElement: unknown;
5870
+ LeadFunnelDashboard: {
5871
+ /** Format: date-time */
5872
+ from: null | string;
5873
+ /** Format: date-time */
5874
+ to: null | string;
5875
+ source: null | string;
5876
+ /** Format: int32 */
5877
+ arrived: number | string;
5878
+ /** Format: int32 */
5879
+ unassigned: number | string;
5880
+ /** Format: int32 */
5881
+ assigned: number | string;
5882
+ bySource: components["schemas"]["LeadFunnelSourceRow"][];
5883
+ /** Format: date-time */
5884
+ asAtUtc: null | string;
5885
+ };
5886
+ LeadFunnelEntryPage: {
5887
+ items: components["schemas"]["LeadFunnelEntryResponse"][];
5888
+ nextCursor: null | string;
5889
+ /** Format: date-time */
5890
+ asAtUtc: null | string;
5891
+ };
5892
+ LeadFunnelEntryResponse: {
5893
+ /** Format: uuid */
5894
+ leadId: string;
5895
+ source: string;
5896
+ /** Format: date-time */
5897
+ createdAtUtc: string;
5898
+ assignedToSubjectId: null | string;
5899
+ /** Format: date-time */
5900
+ assignedAtUtc: null | string;
5901
+ /** Format: date-time */
5902
+ projectedAtUtc: string;
5903
+ };
5904
+ LeadFunnelSourceRow: {
5905
+ source: string;
5906
+ /** Format: int32 */
5907
+ arrived: number | string;
5908
+ /** Format: int32 */
5909
+ unassigned: number | string;
5910
+ /** Format: int32 */
5911
+ assigned: number | string;
5912
+ };
5830
5913
  LeadResponse: {
5831
5914
  /** Format: uuid */
5832
5915
  id: string;
@@ -19104,6 +19187,75 @@ export interface operations {
19104
19187
  };
19105
19188
  };
19106
19189
  };
19190
+ ReadLeadFunnelDashboard: {
19191
+ parameters: {
19192
+ query?: {
19193
+ from?: string;
19194
+ to?: string;
19195
+ source?: string;
19196
+ };
19197
+ header?: never;
19198
+ path?: never;
19199
+ cookie?: never;
19200
+ };
19201
+ requestBody?: never;
19202
+ responses: {
19203
+ /** @description OK */
19204
+ 200: {
19205
+ headers: {
19206
+ [name: string]: unknown;
19207
+ };
19208
+ content: {
19209
+ "application/json": components["schemas"]["LeadFunnelDashboard"];
19210
+ };
19211
+ };
19212
+ /** @description Bad Request */
19213
+ 400: {
19214
+ headers: {
19215
+ [name: string]: unknown;
19216
+ };
19217
+ content: {
19218
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
19219
+ };
19220
+ };
19221
+ };
19222
+ };
19223
+ ListLeadFunnelEntries: {
19224
+ parameters: {
19225
+ query?: {
19226
+ from?: string;
19227
+ to?: string;
19228
+ source?: string;
19229
+ assigned?: boolean;
19230
+ cursor?: string;
19231
+ limit?: number | string;
19232
+ };
19233
+ header?: never;
19234
+ path?: never;
19235
+ cookie?: never;
19236
+ };
19237
+ requestBody?: never;
19238
+ responses: {
19239
+ /** @description OK */
19240
+ 200: {
19241
+ headers: {
19242
+ [name: string]: unknown;
19243
+ };
19244
+ content: {
19245
+ "application/json": components["schemas"]["LeadFunnelEntryPage"];
19246
+ };
19247
+ };
19248
+ /** @description Bad Request */
19249
+ 400: {
19250
+ headers: {
19251
+ [name: string]: unknown;
19252
+ };
19253
+ content: {
19254
+ "application/problem+json": components["schemas"]["HttpValidationProblemDetails"];
19255
+ };
19256
+ };
19257
+ };
19258
+ };
19107
19259
  ListNotifications: {
19108
19260
  parameters: {
19109
19261
  query?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insurance-broker/api-client",
3
- "version": "1.45.0",
3
+ "version": "1.46.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,