@robosystems/client 0.5.13 → 0.6.1

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.
package/sdk/types.gen.ts CHANGED
@@ -120,6 +120,42 @@ export type AddPublishListMembersOperation = {
120
120
  list_id: string;
121
121
  };
122
122
 
123
+ /**
124
+ * AnalyticalStatementFactRow
125
+ *
126
+ * A single fact row from the graph-backed statement analysis.
127
+ */
128
+ export type AnalyticalStatementFactRow = {
129
+ /**
130
+ * Canonical Concept
131
+ */
132
+ canonical_concept?: string | null;
133
+ /**
134
+ * Qname
135
+ */
136
+ qname: string;
137
+ /**
138
+ * Name
139
+ */
140
+ name: string;
141
+ /**
142
+ * Value
143
+ */
144
+ value?: number | null;
145
+ /**
146
+ * End Date
147
+ */
148
+ end_date?: string | null;
149
+ /**
150
+ * Period Type
151
+ */
152
+ period_type?: string | null;
153
+ /**
154
+ * Duration Type
155
+ */
156
+ duration_type?: string | null;
157
+ };
158
+
123
159
  /**
124
160
  * ArtifactResponse
125
161
  *
@@ -162,6 +198,154 @@ export type ArtifactResponse = {
162
198
  } & ForecastMechanics);
163
199
  };
164
200
 
201
+ /**
202
+ * AssertMetricsRequest
203
+ *
204
+ * Request body for the ``assert-metrics`` operation.
205
+ *
206
+ * The observation sibling of ``compute-metrics``: writes externally-
207
+ * observed values (usage counts, marketing numbers, hand-carried
208
+ * figures) into the period's standing ``factset_type='metric'`` FactSet
209
+ * with ``AssertedProvenance``. Re-asserting a period replaces its facts
210
+ * — one standing FactSet per (structure, entity, period_end), the
211
+ * accumulating time series.
212
+ *
213
+ * Structures carrying ``Derive`` rules are compute-owned
214
+ * (``compute-metrics``) and rejected — asserted and derived metric
215
+ * series keep disjoint structures. Asserted series are actuals; there
216
+ * is no scenario axis.
217
+ */
218
+ export type AssertMetricsRequest = {
219
+ /**
220
+ * Structure Id
221
+ *
222
+ * Metric block structure (block_type='metric') to assert into.
223
+ */
224
+ structure_id: string;
225
+ /**
226
+ * Period End
227
+ *
228
+ * Period end the observations are for — instant concepts (a follower count at month end) land as of this date; duration concepts (monthly downloads) end on it.
229
+ */
230
+ period_end: string;
231
+ /**
232
+ * Period Start
233
+ *
234
+ * Window start for duration concepts and the standing FactSet's period_start. Instant concepts ignore it.
235
+ */
236
+ period_start?: string | null;
237
+ /**
238
+ * Entity Id
239
+ *
240
+ * Entity to assert for. Defaults to the graph's earliest-created entity (the primary entity for single-entity graphs).
241
+ */
242
+ entity_id?: string | null;
243
+ /**
244
+ * Source System
245
+ *
246
+ * Identifier of the asserting system (e.g. 'content-machine') — recorded as the AssertedProvenance source_system.
247
+ */
248
+ source_system: string;
249
+ /**
250
+ * Basis Note
251
+ *
252
+ * Free-text basis / source reference for the observations.
253
+ */
254
+ basis_note?: string | null;
255
+ /**
256
+ * Observations
257
+ *
258
+ * Observed values, one per metric concept — duplicates rejected.
259
+ */
260
+ observations: Array<MetricObservation>;
261
+ };
262
+
263
+ /**
264
+ * AssertMetricsResponse
265
+ *
266
+ * Response for the ``assert-metrics`` operation.
267
+ */
268
+ export type AssertMetricsResponse = {
269
+ /**
270
+ * Structure Id
271
+ */
272
+ structure_id: string;
273
+ /**
274
+ * Entity Id
275
+ */
276
+ entity_id: string;
277
+ /**
278
+ * Period End
279
+ */
280
+ period_end: string;
281
+ /**
282
+ * Fact Set Id
283
+ *
284
+ * Standing metric FactSet the observations were written to.
285
+ */
286
+ fact_set_id: string;
287
+ /**
288
+ * Asserted
289
+ */
290
+ asserted?: Array<AssertedMetricLite>;
291
+ /**
292
+ * Replaced
293
+ *
294
+ * True when a prior standing set existed for the period and its facts were replaced.
295
+ */
296
+ replaced?: boolean;
297
+ };
298
+
299
+ /**
300
+ * AssertedMetricLite
301
+ *
302
+ * One metric written by an ``assert-metrics`` run.
303
+ */
304
+ export type AssertedMetricLite = {
305
+ /**
306
+ * Element Id
307
+ *
308
+ * Metric element the fact was written for.
309
+ */
310
+ element_id: string;
311
+ /**
312
+ * Element Qname
313
+ *
314
+ * Metric element qname.
315
+ */
316
+ element_qname: string;
317
+ /**
318
+ * Name
319
+ *
320
+ * Metric display name.
321
+ */
322
+ name: string;
323
+ /**
324
+ * Value
325
+ *
326
+ * Asserted value.
327
+ */
328
+ value: number;
329
+ /**
330
+ * Unit
331
+ *
332
+ * Fact unit — 'USD' for monetary, 'days' for days, else 'pure'.
333
+ */
334
+ unit: string;
335
+ /**
336
+ * Period Type
337
+ *
338
+ * 'instant' or 'duration'.
339
+ */
340
+ period_type: string;
341
+ /**
342
+ * Item Type
343
+ *
344
+ * Format family from the metric element (monetary | ratio | percent | multiple | days). None means untyped; fall back to unit.
345
+ */
346
+ item_type?: string | null;
347
+ };
348
+
165
349
  /**
166
350
  * AssociationResponse
167
351
  *
@@ -1685,7 +1869,7 @@ export type ConnectionProviderInfo = {
1685
1869
  *
1686
1870
  * Provider identifier
1687
1871
  */
1688
- provider: 'sec' | 'quickbooks';
1872
+ provider: 'sec' | 'quickbooks' | 'external';
1689
1873
  /**
1690
1874
  * Display Name
1691
1875
  *
@@ -1808,6 +1992,12 @@ export type ConnectionResponse = {
1808
1992
  * Source-of-truth write policy: 'native' (RoboSystems is authoritative; no outbound write-back) or 'qb_authoritative' (QuickBooks is authoritative; RoboSystems-originated entries publish to QB). Set via the write-policy endpoint.
1809
1993
  */
1810
1994
  write_policy?: string | null;
1995
+ /**
1996
+ * Source Name
1997
+ *
1998
+ * External-provider registered source slug — the value the integration stamps on the events it emits. Null for platform providers.
1999
+ */
2000
+ source_name?: string | null;
1811
2001
  /**
1812
2002
  * Metadata
1813
2003
  *
@@ -2074,7 +2264,7 @@ export type CreateConnectionRequest = {
2074
2264
  *
2075
2265
  * Connection provider type
2076
2266
  */
2077
- provider: 'sec' | 'quickbooks';
2267
+ provider: 'sec' | 'quickbooks' | 'external';
2078
2268
  /**
2079
2269
  * Entity Id
2080
2270
  *
@@ -2083,6 +2273,7 @@ export type CreateConnectionRequest = {
2083
2273
  entity_id?: string | null;
2084
2274
  sec_config?: SecConnectionConfig | null;
2085
2275
  quickbooks_config?: QuickBooksConnectionConfig | null;
2276
+ external_config?: ExternalConnectionConfig | null;
2086
2277
  };
2087
2278
 
2088
2279
  /**
@@ -2148,7 +2339,7 @@ export type CreateEventBlockRequest = {
2148
2339
  /**
2149
2340
  * Source
2150
2341
  *
2151
- * 'manual' | 'system' | 'schedule' | 'quickbooks' | 'xero' | 'plaid'
2342
+ * 'manual' | 'system' | 'schedule', a connected provider name (e.g. 'quickbooks'), or a source_name registered via an 'external' connection. Validated against the graph's registered connections.
2152
2343
  */
2153
2344
  source: string;
2154
2345
  /**
@@ -4562,7 +4753,7 @@ export type EventBlockEnvelope = {
4562
4753
  /**
4563
4754
  * Source
4564
4755
  *
4565
- * Capture source (`manual`, `system`, `schedule`, `quickbooks`, `xero`, `plaid`). Used for adapter routing.
4756
+ * Capture source: `manual`, `system`, `schedule`, a connected provider name (e.g. `quickbooks`), or a registered external source_name. Used for adapter routing.
4566
4757
  */
4567
4758
  source: string;
4568
4759
  /**
@@ -4831,6 +5022,32 @@ export type ExecuteEventBlockResponse = {
4831
5022
  } | null;
4832
5023
  };
4833
5024
 
5025
+ /**
5026
+ * ExternalConnectionConfig
5027
+ *
5028
+ * External-integration connection configuration.
5029
+ *
5030
+ * Registers a source namespace for an integration the platform does not
5031
+ * run: the connection is registration + telemetry, not execution config.
5032
+ * The platform holds no credentials for the external source — the
5033
+ * integration authenticates to its own source and writes here through
5034
+ * the public API, stamping ``source_name`` on everything it emits.
5035
+ */
5036
+ export type ExternalConnectionConfig = {
5037
+ /**
5038
+ * Source Name
5039
+ *
5040
+ * Source slug the integration stamps on the events it emits (lowercase letters, digits, '-', '_'; must start with a letter). Unique per graph among live connections.
5041
+ */
5042
+ source_name: string;
5043
+ /**
5044
+ * Display Name
5045
+ *
5046
+ * Human-readable label for the connections UI.
5047
+ */
5048
+ display_name?: string | null;
5049
+ };
5050
+
4834
5051
  /**
4835
5052
  * FactLite
4836
5053
  *
@@ -5147,6 +5364,39 @@ export type FinancialStatementAnalysisRequest = {
5147
5364
  limit?: number;
5148
5365
  };
5149
5366
 
5367
+ /**
5368
+ * FinancialStatementAnalysisResponse
5369
+ *
5370
+ * Results of the financial-statement-analysis view op.
5371
+ */
5372
+ export type FinancialStatementAnalysisResponse = {
5373
+ /**
5374
+ * Graph Id
5375
+ */
5376
+ graph_id: string;
5377
+ /**
5378
+ * Statement Type
5379
+ */
5380
+ statement_type: string;
5381
+ /**
5382
+ * Ticker
5383
+ */
5384
+ ticker?: string | null;
5385
+ /**
5386
+ * Report Id
5387
+ */
5388
+ report_id?: string | null;
5389
+ resolved_report?: ResolvedReportInfo | null;
5390
+ /**
5391
+ * Facts
5392
+ */
5393
+ facts: Array<AnalyticalStatementFactRow>;
5394
+ /**
5395
+ * Fact Count
5396
+ */
5397
+ fact_count: number;
5398
+ };
5399
+
5150
5400
  /**
5151
5401
  * FiscalCalendarResponse
5152
5402
  *
@@ -7905,7 +8155,7 @@ export type MaterializeOp = {
7905
8155
  /**
7906
8156
  * Rebuild
7907
8157
  *
7908
- * Rebuild the graph from scratch, dropping existing data
8158
+ * Rebuild the graph from scratch, dropping existing data. Required (staged source) when materializing new uploads into a graph that already contains materialized data — staging replays all uploaded files, so a non-rebuild pass would re-copy ingested rows (409).
7909
8159
  */
7910
8160
  rebuild?: boolean;
7911
8161
  /**
@@ -8079,6 +8329,26 @@ export type MetricMechanics = {
8079
8329
  unit?: string;
8080
8330
  };
8081
8331
 
8332
+ /**
8333
+ * MetricObservation
8334
+ *
8335
+ * One externally-observed value in an ``assert-metrics`` request.
8336
+ */
8337
+ export type MetricObservation = {
8338
+ /**
8339
+ * Qname
8340
+ *
8341
+ * Metric element qname (e.g. rsx:GithubStars). Must resolve to a concept on the structure's presentation catalog.
8342
+ */
8343
+ qname: string;
8344
+ /**
8345
+ * Value
8346
+ *
8347
+ * Observed value.
8348
+ */
8349
+ value: number;
8350
+ };
8351
+
8082
8352
  /**
8083
8353
  * OAuthCallbackRequest
8084
8354
  *
@@ -8378,6 +8648,52 @@ export type OperationEnvelope = {
8378
8648
  idempotentReplay?: boolean;
8379
8649
  };
8380
8650
 
8651
+ /**
8652
+ * OperationEnvelope[AssertMetricsResponse]
8653
+ */
8654
+ export type OperationEnvelopeAssertMetricsResponse = {
8655
+ /**
8656
+ * Operation
8657
+ *
8658
+ * Kebab-case operation name
8659
+ */
8660
+ operation: string;
8661
+ /**
8662
+ * Operationid
8663
+ *
8664
+ * op_-prefixed ULID for audit and SSE correlation
8665
+ */
8666
+ operationId: string;
8667
+ /**
8668
+ * Status
8669
+ *
8670
+ * Operation lifecycle state
8671
+ */
8672
+ status: 'completed' | 'pending' | 'failed';
8673
+ /**
8674
+ * Command-specific result payload
8675
+ */
8676
+ result?: AssertMetricsResponse | null;
8677
+ /**
8678
+ * At
8679
+ *
8680
+ * ISO-8601 UTC timestamp
8681
+ */
8682
+ at: string;
8683
+ /**
8684
+ * Createdby
8685
+ *
8686
+ * User ID that initiated the operation (null for legacy callers)
8687
+ */
8688
+ createdBy?: string | null;
8689
+ /**
8690
+ * Idempotentreplay
8691
+ *
8692
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
8693
+ */
8694
+ idempotentReplay?: boolean;
8695
+ };
8696
+
8381
8697
  /**
8382
8698
  * OperationEnvelope[AssociationResponse]
8383
8699
  */
@@ -9114,6 +9430,52 @@ export type OperationEnvelopeExecuteEventBlockResponse = {
9114
9430
  idempotentReplay?: boolean;
9115
9431
  };
9116
9432
 
9433
+ /**
9434
+ * OperationEnvelope[FinancialStatementAnalysisResponse]
9435
+ */
9436
+ export type OperationEnvelopeFinancialStatementAnalysisResponse = {
9437
+ /**
9438
+ * Operation
9439
+ *
9440
+ * Kebab-case operation name
9441
+ */
9442
+ operation: string;
9443
+ /**
9444
+ * Operationid
9445
+ *
9446
+ * op_-prefixed ULID for audit and SSE correlation
9447
+ */
9448
+ operationId: string;
9449
+ /**
9450
+ * Status
9451
+ *
9452
+ * Operation lifecycle state
9453
+ */
9454
+ status: 'completed' | 'pending' | 'failed';
9455
+ /**
9456
+ * Command-specific result payload
9457
+ */
9458
+ result?: FinancialStatementAnalysisResponse | null;
9459
+ /**
9460
+ * At
9461
+ *
9462
+ * ISO-8601 UTC timestamp
9463
+ */
9464
+ at: string;
9465
+ /**
9466
+ * Createdby
9467
+ *
9468
+ * User ID that initiated the operation (null for legacy callers)
9469
+ */
9470
+ createdBy?: string | null;
9471
+ /**
9472
+ * Idempotentreplay
9473
+ *
9474
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
9475
+ */
9476
+ idempotentReplay?: boolean;
9477
+ };
9478
+
9117
9479
  /**
9118
9480
  * OperationEnvelope[FiscalCalendarResponse]
9119
9481
  */
@@ -9850,6 +10212,52 @@ export type OperationEnvelopeTaxonomyBlockEnvelope = {
9850
10212
  idempotentReplay?: boolean;
9851
10213
  };
9852
10214
 
10215
+ /**
10216
+ * OperationEnvelope[ViewResponse]
10217
+ */
10218
+ export type OperationEnvelopeViewResponse = {
10219
+ /**
10220
+ * Operation
10221
+ *
10222
+ * Kebab-case operation name
10223
+ */
10224
+ operation: string;
10225
+ /**
10226
+ * Operationid
10227
+ *
10228
+ * op_-prefixed ULID for audit and SSE correlation
10229
+ */
10230
+ operationId: string;
10231
+ /**
10232
+ * Status
10233
+ *
10234
+ * Operation lifecycle state
10235
+ */
10236
+ status: 'completed' | 'pending' | 'failed';
10237
+ /**
10238
+ * Command-specific result payload
10239
+ */
10240
+ result?: ViewResponse | null;
10241
+ /**
10242
+ * At
10243
+ *
10244
+ * ISO-8601 UTC timestamp
10245
+ */
10246
+ at: string;
10247
+ /**
10248
+ * Createdby
10249
+ *
10250
+ * User ID that initiated the operation (null for legacy callers)
10251
+ */
10252
+ createdBy?: string | null;
10253
+ /**
10254
+ * Idempotentreplay
10255
+ *
10256
+ * True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.
10257
+ */
10258
+ idempotentReplay?: boolean;
10259
+ };
10260
+
9853
10261
  /**
9854
10262
  * OperationEnvelope[list[PublishListMemberResponse]]
9855
10263
  */
@@ -12027,6 +12435,34 @@ export type ResetPasswordValidateResponse = {
12027
12435
  email?: string | null;
12028
12436
  };
12029
12437
 
12438
+ /**
12439
+ * ResolvedReportInfo
12440
+ *
12441
+ * Information about the auto-resolved report.
12442
+ */
12443
+ export type ResolvedReportInfo = {
12444
+ /**
12445
+ * Report Id
12446
+ */
12447
+ report_id: string;
12448
+ /**
12449
+ * Form
12450
+ */
12451
+ form?: string | null;
12452
+ /**
12453
+ * Filing Date
12454
+ */
12455
+ filing_date?: string | null;
12456
+ /**
12457
+ * Fiscal Year
12458
+ */
12459
+ fiscal_year?: number | null;
12460
+ /**
12461
+ * Fiscal Period
12462
+ */
12463
+ fiscal_period?: string | null;
12464
+ };
12465
+
12030
12466
  /**
12031
12467
  * ResponseMode
12032
12468
  *
@@ -15753,6 +16189,48 @@ export type ViewConfig = {
15753
16189
  fill_value?: number;
15754
16190
  };
15755
16191
 
16192
+ /**
16193
+ * ViewMetadata
16194
+ */
16195
+ export type ViewMetadata = {
16196
+ /**
16197
+ * View Id
16198
+ *
16199
+ * Unique view identifier
16200
+ */
16201
+ view_id: string;
16202
+ /**
16203
+ * Facts Processed
16204
+ *
16205
+ * Number of facts processed
16206
+ */
16207
+ facts_processed: number;
16208
+ /**
16209
+ * Construction Time Ms
16210
+ *
16211
+ * Time to build view in milliseconds
16212
+ */
16213
+ construction_time_ms: number;
16214
+ /**
16215
+ * Source
16216
+ *
16217
+ * Data source type
16218
+ */
16219
+ source: string;
16220
+ /**
16221
+ * Period Start
16222
+ *
16223
+ * Period start date
16224
+ */
16225
+ period_start?: string | null;
16226
+ /**
16227
+ * Period End
16228
+ *
16229
+ * Period end date
16230
+ */
16231
+ period_end?: string | null;
16232
+ };
16233
+
15756
16234
  /**
15757
16235
  * ViewProjections
15758
16236
  *
@@ -15778,6 +16256,24 @@ export type ViewProjections = {
15778
16256
  chart?: ChartLite | null;
15779
16257
  };
15780
16258
 
16259
+ /**
16260
+ * ViewResponse
16261
+ */
16262
+ export type ViewResponse = {
16263
+ /**
16264
+ * View metadata
16265
+ */
16266
+ metadata: ViewMetadata;
16267
+ /**
16268
+ * Presentations
16269
+ *
16270
+ * Presentation formats (pivot_table, narrative, etc.)
16271
+ */
16272
+ presentations: {
16273
+ [key: string]: unknown;
16274
+ };
16275
+ };
16276
+
15781
16277
  /**
15782
16278
  * _CreateForecastArm
15783
16279
  *
@@ -17833,7 +18329,7 @@ export type ListConnectionsData = {
17833
18329
  *
17834
18330
  * Filter by provider type
17835
18331
  */
17836
- provider?: 'sec' | 'quickbooks' | null;
18332
+ provider?: 'sec' | 'quickbooks' | 'external' | null;
17837
18333
  };
17838
18334
  url: '/v1/graphs/{graph_id}/connections';
17839
18335
  };
@@ -23610,6 +24106,70 @@ export type ComputeMetricsResponses = {
23610
24106
 
23611
24107
  export type ComputeMetricsResponse2 = ComputeMetricsResponses[keyof ComputeMetricsResponses];
23612
24108
 
24109
+ export type AssertMetricsData = {
24110
+ body: AssertMetricsRequest;
24111
+ headers?: {
24112
+ /**
24113
+ * Idempotency-Key
24114
+ */
24115
+ 'Idempotency-Key'?: string | null;
24116
+ };
24117
+ path: {
24118
+ /**
24119
+ * Graph Id
24120
+ */
24121
+ graph_id: string;
24122
+ };
24123
+ query?: never;
24124
+ url: '/extensions/roboledger/{graph_id}/operations/assert-metrics';
24125
+ };
24126
+
24127
+ export type AssertMetricsErrors = {
24128
+ /**
24129
+ * Invalid request
24130
+ */
24131
+ 400: ErrorResponse;
24132
+ /**
24133
+ * Authentication required
24134
+ */
24135
+ 401: ErrorResponse;
24136
+ /**
24137
+ * Access denied
24138
+ */
24139
+ 403: ErrorResponse;
24140
+ /**
24141
+ * Resource not found
24142
+ */
24143
+ 404: ErrorResponse;
24144
+ /**
24145
+ * Idempotency-Key conflict — key reused with different body
24146
+ */
24147
+ 409: ErrorResponse;
24148
+ /**
24149
+ * Validation error
24150
+ */
24151
+ 422: ErrorResponse;
24152
+ /**
24153
+ * Rate limit exceeded
24154
+ */
24155
+ 429: ErrorResponse;
24156
+ /**
24157
+ * Internal server error
24158
+ */
24159
+ 500: ErrorResponse;
24160
+ };
24161
+
24162
+ export type AssertMetricsError = AssertMetricsErrors[keyof AssertMetricsErrors];
24163
+
24164
+ export type AssertMetricsResponses = {
24165
+ /**
24166
+ * Successful Response
24167
+ */
24168
+ 200: OperationEnvelopeAssertMetricsResponse;
24169
+ };
24170
+
24171
+ export type AssertMetricsResponse2 = AssertMetricsResponses[keyof AssertMetricsResponses];
24172
+
23613
24173
  export type ComputeForecastData = {
23614
24174
  body: ComputeForecastRequest;
23615
24175
  headers?: {
@@ -25589,7 +26149,7 @@ export type BuildFactGridResponses = {
25589
26149
  /**
25590
26150
  * Successful Response
25591
26151
  */
25592
- 200: OperationEnvelope;
26152
+ 200: OperationEnvelopeViewResponse;
25593
26153
  };
25594
26154
 
25595
26155
  export type BuildFactGridResponse = BuildFactGridResponses[keyof BuildFactGridResponses];
@@ -25653,10 +26213,10 @@ export type FinancialStatementAnalysisResponses = {
25653
26213
  /**
25654
26214
  * Successful Response
25655
26215
  */
25656
- 200: OperationEnvelope;
26216
+ 200: OperationEnvelopeFinancialStatementAnalysisResponse;
25657
26217
  };
25658
26218
 
25659
- export type FinancialStatementAnalysisResponse = FinancialStatementAnalysisResponses[keyof FinancialStatementAnalysisResponses];
26219
+ export type FinancialStatementAnalysisResponse2 = FinancialStatementAnalysisResponses[keyof FinancialStatementAnalysisResponses];
25660
26220
 
25661
26221
  export type CreatePortfolioBlockData = {
25662
26222
  body: CreatePortfolioBlockRequest;