@robosystems/client 2.0.0 → 2.1.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.gen.d.ts CHANGED
@@ -784,23 +784,33 @@ export declare const createCheckoutSession: <ThrowOnError extends boolean = fals
784
784
  */
785
785
  export declare const getCheckoutStatus: <ThrowOnError extends boolean = false>(options: Options<GetCheckoutStatusData, ThrowOnError>) => RequestResult<GetCheckoutStatusResponses, GetCheckoutStatusErrors, ThrowOnError>;
786
786
  /**
787
- * Handle Http Get
787
+ * GraphQL explorer (development only)
788
788
  *
789
+ * Serves the in-browser GraphiQL explorer on deployments that enable it, which is development only — it is not mounted on the hosted API. Run queries with `POST` to the same URL.
789
790
  *
791
+ * Queries are scoped by the URL: `graph_id` is a path parameter and never a query argument, so a document cannot name a graph that disagrees with the path it was sent to. Reads hit the operational (OLTP) extensions database, so they reflect the books as they stand now; the analytical projection is Cypher at `POST /v1/graphs/{graph_id}/query/cypher`.
792
+ *
793
+ * The schema is composed per deployment: ledger fields require RoboLedger and investor fields require RoboInvestor, and a disabled domain is absent from introspection rather than failing at runtime. Every field carries a description, so introspection is the authoritative, deployment-specific reference.
790
794
  *
791
795
  * **Auth**: pass `X-API-Key` (or a JWT `Authorization: Bearer` header). Unauthenticated introspection queries are deliberately allowed for SDK codegen; data queries require credentials and raise `UNAUTHENTICATED`.
792
796
  *
793
- * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field — see `graphql/README.md` for the full vocabulary.
797
+ * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field. GraphQL reports errors with HTTP 200 and a populated `errors[]`, so check that array rather than the status code.
794
798
  */
795
799
  export declare const handleHttpGetExtensionsGraphIdGraphqlGet: <ThrowOnError extends boolean = false>(options: Options<HandleHttpGetExtensionsGraphIdGraphqlGetData, ThrowOnError>) => RequestResult<HandleHttpGetExtensionsGraphIdGraphqlGetResponses, HandleHttpGetExtensionsGraphIdGraphqlGetErrors, ThrowOnError>;
796
800
  /**
797
- * Handle Http Post
801
+ * Run a GraphQL query
802
+ *
803
+ * The typed read surface for a graph's extensions data — RoboLedger and RoboInvestor records as they stand right now. Writes are not here: they are the named operations at `POST /extensions/{domain}/{graph_id}/operations/{name}`.
804
+ *
805
+ * Send a standard GraphQL POST body: a `query` document, with optional `variables` and `operationName`.
798
806
  *
807
+ * Queries are scoped by the URL: `graph_id` is a path parameter and never a query argument, so a document cannot name a graph that disagrees with the path it was sent to. Reads hit the operational (OLTP) extensions database, so they reflect the books as they stand now; the analytical projection is Cypher at `POST /v1/graphs/{graph_id}/query/cypher`.
799
808
  *
809
+ * The schema is composed per deployment: ledger fields require RoboLedger and investor fields require RoboInvestor, and a disabled domain is absent from introspection rather than failing at runtime. Every field carries a description, so introspection is the authoritative, deployment-specific reference.
800
810
  *
801
811
  * **Auth**: pass `X-API-Key` (or a JWT `Authorization: Bearer` header). Unauthenticated introspection queries are deliberately allowed for SDK codegen; data queries require credentials and raise `UNAUTHENTICATED`.
802
812
  *
803
- * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field — see `graphql/README.md` for the full vocabulary.
813
+ * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field. GraphQL reports errors with HTTP 200 and a populated `errors[]`, so check that array rather than the status code.
804
814
  */
805
815
  export declare const handleHttpPostExtensionsGraphIdGraphqlPost: <ThrowOnError extends boolean = false>(options: Options<HandleHttpPostExtensionsGraphIdGraphqlPostData, ThrowOnError>) => RequestResult<HandleHttpPostExtensionsGraphIdGraphqlPostResponses, HandleHttpPostExtensionsGraphIdGraphqlPostErrors, ThrowOnError>;
806
816
  /**
@@ -1219,14 +1229,6 @@ export declare const blockSourceGraph: <ThrowOnError extends boolean = false>(op
1219
1229
  * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
1220
1230
  */
1221
1231
  export declare const unblockSourceGraph: <ThrowOnError extends boolean = false>(options: Options<UnblockSourceGraphData, ThrowOnError>) => RequestResult<UnblockSourceGraphResponses, UnblockSourceGraphErrors, ThrowOnError>;
1222
- /**
1223
- * Live Financial Statement
1224
- *
1225
- * Generate an ad-hoc financial statement directly from the tenant's OLTP ledger data using the active CoA→GAAP mapping. This is the authoritative source for RoboLedger entity graphs — no graph materialization required. Rejected on shared-repository graphs; those should use `financial-statement-analysis` instead.
1226
- *
1227
- * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
1228
- */
1229
- export declare const liveFinancialStatement: <ThrowOnError extends boolean = false>(options: Options<LiveFinancialStatementData, ThrowOnError>) => RequestResult<LiveFinancialStatementResponses, LiveFinancialStatementErrors, ThrowOnError>;
1230
1232
  /**
1231
1233
  * Build Fact Grid
1232
1234
  *
@@ -1259,6 +1261,14 @@ export declare const disclosures: <ThrowOnError extends boolean = false>(options
1259
1261
  * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
1260
1262
  */
1261
1263
  export declare const informationBlock: <ThrowOnError extends boolean = false>(options: Options<InformationBlockData, ThrowOnError>) => RequestResult<InformationBlockResponses, InformationBlockErrors, ThrowOnError>;
1264
+ /**
1265
+ * Live Financial Statement
1266
+ *
1267
+ * Generate an ad-hoc financial statement directly from the tenant's OLTP ledger data using the active CoA→GAAP mapping. This is the authoritative source for RoboLedger entity graphs — no graph materialization required. Rejected on shared-repository graphs; those should use `financial-statement-analysis` instead.
1268
+ *
1269
+ * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
1270
+ */
1271
+ export declare const liveFinancialStatement: <ThrowOnError extends boolean = false>(options: Options<LiveFinancialStatementData, ThrowOnError>) => RequestResult<LiveFinancialStatementResponses, LiveFinancialStatementErrors, ThrowOnError>;
1262
1272
  /**
1263
1273
  * Create Portfolio Block
1264
1274
  *
package/sdk.gen.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.resendOrgInvitation = exports.revokeOrgInvitation = exports.createOrgInvitation = exports.listOrgInvitations = exports.updateOrgMemberRole = exports.removeOrgMember = exports.listOrgMembers = exports.listOrgGraphs = exports.updateOrg = exports.getOrg = exports.listUserOrgs = exports.revokeUserOAuthGrant = exports.listUserOAuthGrants = exports.updateUserApiKey = exports.revokeUserApiKey = exports.createUserApiKey = exports.listUserApiKeys = exports.updateUserPassword = exports.updateUser = exports.getCurrentUser = exports.getServiceStatus = exports.getAuthProviders = exports.getCaptchaConfig = exports.regenerateMfaRecoveryCodes = exports.getMfaStatus = exports.verifyMfa = exports.getMfaOptions = exports.verifyPasskeyLogin = exports.getPasskeyLoginOptions = exports.deleteUserPasskey = exports.getPasskeyReauthOptions = exports.listUserPasskeys = exports.verifyPasskeyRegistration = exports.getPasskeyRegistrationOptions = exports.completeSsoAuth = exports.ssoTokenExchange = exports.generateSsoToken = exports.resetPassword = exports.validateResetToken = exports.forgotPassword = exports.checkPasswordStrength = exports.getPasswordPolicy = exports.getInvitationPreview = exports.verifyEmail = exports.resendVerificationEmail = exports.refreshAuthSession = exports.getCurrentAuthUser = exports.logoutUser = exports.loginUser = exports.registerUser = void 0;
5
5
  exports.deleteGraph = exports.deleteSubgraph = exports.createSubgraph = exports.recallMemory = exports.getMemory = exports.listMemories = exports.getDocument = exports.listDocuments = exports.getDocumentSection = exports.searchDocuments = exports.listTables = exports.cancelRepositorySubscription = exports.createRepositorySubscription = exports.changeSubscriptionPlan = exports.getGraphSubscription = exports.getSubgraphInfo = exports.listSubgraphs = exports.updateGraphMemberRole = exports.removeGraphMember = exports.addGraphMember = exports.listGraphMembers = exports.getGraphLimits = exports.getDatabaseInfo = exports.getDatabaseHealth = exports.listCreditTransactions = exports.getCreditSummary = exports.exportGraphSchema = exports.getGraphSchema = exports.executeSql = exports.executeCypher = exports.getGraphUsage = exports.getGraphMetrics = exports.getBackupStats = exports.getBackupDownloadUrl = exports.listBackups = exports.executeSpecificOperator = exports.getOperatorMetadata = exports.autoSelectOperator = exports.listOperators = exports.setConnectionWritePolicy = exports.getConnection = exports.deleteConnection = exports.createConnection = exports.listConnections = exports.oauthCallback = exports.initOAuth = exports.getConnectionOptions = exports.syncConnection = exports.getOrgUsage = exports.getOrgLimits = void 0;
6
6
  exports.updateInformationBlock = exports.createInformationBlock = exports.autoMapElements = exports.deleteMappingAssociation = exports.createMappingAssociation = exports.linkEntityTaxonomy = exports.deleteTaxonomyBlock = exports.updateTaxonomyBlock = exports.createTaxonomyBlock = exports.changeReportingStyle = exports.updateEntity = exports.initializeChartOfAccounts = exports.initializeLedger = exports.handleHttpPostExtensionsGraphIdGraphqlPost = exports.handleHttpGetExtensionsGraphIdGraphqlGet = exports.getCheckoutStatus = exports.createCheckoutSession = exports.getOrgUpcomingInvoice = exports.listOrgInvoices = exports.cancelOrgSubscription = exports.getOrgSubscription = exports.listOrgSubscriptions = exports.createPortalSession = exports.getOrgBillingCustomer = exports.resumeOperation = exports.cancelOperation = exports.getOperationStatus = exports.streamOperationEvents = exports.getServiceOfferings = exports.validateSchema = exports.selectGraph = exports.getGraphCapacity = exports.getAvailableGraphTiers = exports.getAvailableExtensions = exports.createGraph = exports.getGraphs = exports.getFile = exports.listFiles = exports.deleteFile = exports.ingestFile = exports.createFileUpload = exports.deleteDocument = exports.indexDocument = exports.updateMemory = exports.forget = exports.remember = exports.materialize = exports.updateGraphMetadata = exports.changeTier = exports.createBackup = void 0;
7
- exports.deleteSecurity = exports.updateSecurity = exports.createSecurity = exports.deletePortfolioBlock = exports.updatePortfolioBlock = exports.createPortfolioBlock = exports.informationBlock = exports.disclosures = exports.financialStatementAnalysis = exports.buildFactGrid = exports.liveFinancialStatement = exports.unblockSourceGraph = exports.blockSourceGraph = exports.removePublishListMember = exports.addPublishListMembers = exports.deletePublishList = exports.updatePublishList = exports.createPublishList = exports.revokeReportShare = exports.shareReport = exports.transitionFilingStatus = exports.fileReport = exports.deleteReport = exports.regenerateReport = exports.createReport = exports.terminateSchedule = exports.rebuildSchedule = exports.promoteObligations = exports.backfillPlanHistory = exports.reopenPeriod = exports.closePeriod = exports.setCloseTarget = exports.deleteJournalEntry = exports.updateJournalEntry = exports.resolveReconcilingItem = exports.previewReconcilingItem = exports.previewEventBlock = exports.updateEventHandler = exports.createEventHandler = exports.executeEventBlock = exports.updateEventBlock = exports.createEventBlock = exports.updateAgent = exports.createAgent = exports.bindTextBlock = exports.computeForecast = exports.assertMetrics = exports.computeMetrics = exports.evaluateRules = exports.deleteInformationBlock = void 0;
7
+ exports.deleteSecurity = exports.updateSecurity = exports.createSecurity = exports.deletePortfolioBlock = exports.updatePortfolioBlock = exports.createPortfolioBlock = exports.liveFinancialStatement = exports.informationBlock = exports.disclosures = exports.financialStatementAnalysis = exports.buildFactGrid = exports.unblockSourceGraph = exports.blockSourceGraph = exports.removePublishListMember = exports.addPublishListMembers = exports.deletePublishList = exports.updatePublishList = exports.createPublishList = exports.revokeReportShare = exports.shareReport = exports.transitionFilingStatus = exports.fileReport = exports.deleteReport = exports.regenerateReport = exports.createReport = exports.terminateSchedule = exports.rebuildSchedule = exports.promoteObligations = exports.backfillPlanHistory = exports.reopenPeriod = exports.closePeriod = exports.setCloseTarget = exports.deleteJournalEntry = exports.updateJournalEntry = exports.resolveReconcilingItem = exports.previewReconcilingItem = exports.previewEventBlock = exports.updateEventHandler = exports.createEventHandler = exports.executeEventBlock = exports.updateEventBlock = exports.createEventBlock = exports.updateAgent = exports.createAgent = exports.bindTextBlock = exports.computeForecast = exports.assertMetrics = exports.computeMetrics = exports.evaluateRules = exports.deleteInformationBlock = void 0;
8
8
  const client_gen_1 = require("./client.gen");
9
9
  /**
10
10
  * Register New User
@@ -1619,13 +1619,17 @@ const getCheckoutStatus = (options) => (options.client ?? client_gen_1.client).g
1619
1619
  });
1620
1620
  exports.getCheckoutStatus = getCheckoutStatus;
1621
1621
  /**
1622
- * Handle Http Get
1622
+ * GraphQL explorer (development only)
1623
1623
  *
1624
+ * Serves the in-browser GraphiQL explorer on deployments that enable it, which is development only — it is not mounted on the hosted API. Run queries with `POST` to the same URL.
1624
1625
  *
1626
+ * Queries are scoped by the URL: `graph_id` is a path parameter and never a query argument, so a document cannot name a graph that disagrees with the path it was sent to. Reads hit the operational (OLTP) extensions database, so they reflect the books as they stand now; the analytical projection is Cypher at `POST /v1/graphs/{graph_id}/query/cypher`.
1627
+ *
1628
+ * The schema is composed per deployment: ledger fields require RoboLedger and investor fields require RoboInvestor, and a disabled domain is absent from introspection rather than failing at runtime. Every field carries a description, so introspection is the authoritative, deployment-specific reference.
1625
1629
  *
1626
1630
  * **Auth**: pass `X-API-Key` (or a JWT `Authorization: Bearer` header). Unauthenticated introspection queries are deliberately allowed for SDK codegen; data queries require credentials and raise `UNAUTHENTICATED`.
1627
1631
  *
1628
- * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field — see `graphql/README.md` for the full vocabulary.
1632
+ * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field. GraphQL reports errors with HTTP 200 and a populated `errors[]`, so check that array rather than the status code.
1629
1633
  */
1630
1634
  const handleHttpGetExtensionsGraphIdGraphqlGet = (options) => (options.client ?? client_gen_1.client).get({
1631
1635
  security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
@@ -1634,18 +1638,28 @@ const handleHttpGetExtensionsGraphIdGraphqlGet = (options) => (options.client ??
1634
1638
  });
1635
1639
  exports.handleHttpGetExtensionsGraphIdGraphqlGet = handleHttpGetExtensionsGraphIdGraphqlGet;
1636
1640
  /**
1637
- * Handle Http Post
1641
+ * Run a GraphQL query
1642
+ *
1643
+ * The typed read surface for a graph's extensions data — RoboLedger and RoboInvestor records as they stand right now. Writes are not here: they are the named operations at `POST /extensions/{domain}/{graph_id}/operations/{name}`.
1644
+ *
1645
+ * Send a standard GraphQL POST body: a `query` document, with optional `variables` and `operationName`.
1638
1646
  *
1647
+ * Queries are scoped by the URL: `graph_id` is a path parameter and never a query argument, so a document cannot name a graph that disagrees with the path it was sent to. Reads hit the operational (OLTP) extensions database, so they reflect the books as they stand now; the analytical projection is Cypher at `POST /v1/graphs/{graph_id}/query/cypher`.
1639
1648
  *
1649
+ * The schema is composed per deployment: ledger fields require RoboLedger and investor fields require RoboInvestor, and a disabled domain is absent from introspection rather than failing at runtime. Every field carries a description, so introspection is the authoritative, deployment-specific reference.
1640
1650
  *
1641
1651
  * **Auth**: pass `X-API-Key` (or a JWT `Authorization: Bearer` header). Unauthenticated introspection queries are deliberately allowed for SDK codegen; data queries require credentials and raise `UNAUTHENTICATED`.
1642
1652
  *
1643
- * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field — see `graphql/README.md` for the full vocabulary.
1653
+ * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field. GraphQL reports errors with HTTP 200 and a populated `errors[]`, so check that array rather than the status code.
1644
1654
  */
1645
1655
  const handleHttpPostExtensionsGraphIdGraphqlPost = (options) => (options.client ?? client_gen_1.client).post({
1646
1656
  security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
1647
1657
  url: '/extensions/{graph_id}/graphql',
1648
- ...options
1658
+ ...options,
1659
+ headers: {
1660
+ 'Content-Type': 'application/json',
1661
+ ...options.headers
1662
+ }
1649
1663
  });
1650
1664
  exports.handleHttpPostExtensionsGraphIdGraphqlPost = handleHttpPostExtensionsGraphIdGraphqlPost;
1651
1665
  /**
@@ -2532,23 +2546,6 @@ const unblockSourceGraph = (options) => (options.client ?? client_gen_1.client).
2532
2546
  }
2533
2547
  });
2534
2548
  exports.unblockSourceGraph = unblockSourceGraph;
2535
- /**
2536
- * Live Financial Statement
2537
- *
2538
- * Generate an ad-hoc financial statement directly from the tenant's OLTP ledger data using the active CoA→GAAP mapping. This is the authoritative source for RoboLedger entity graphs — no graph materialization required. Rejected on shared-repository graphs; those should use `financial-statement-analysis` instead.
2539
- *
2540
- * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
2541
- */
2542
- const liveFinancialStatement = (options) => (options.client ?? client_gen_1.client).post({
2543
- security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
2544
- url: '/extensions/roboledger/{graph_id}/operations/live-financial-statement',
2545
- ...options,
2546
- headers: {
2547
- 'Content-Type': 'application/json',
2548
- ...options.headers
2549
- }
2550
- });
2551
- exports.liveFinancialStatement = liveFinancialStatement;
2552
2549
  /**
2553
2550
  * Build Fact Grid
2554
2551
  *
@@ -2617,6 +2614,23 @@ const informationBlock = (options) => (options.client ?? client_gen_1.client).po
2617
2614
  }
2618
2615
  });
2619
2616
  exports.informationBlock = informationBlock;
2617
+ /**
2618
+ * Live Financial Statement
2619
+ *
2620
+ * Generate an ad-hoc financial statement directly from the tenant's OLTP ledger data using the active CoA→GAAP mapping. This is the authoritative source for RoboLedger entity graphs — no graph materialization required. Rejected on shared-repository graphs; those should use `financial-statement-analysis` instead.
2621
+ *
2622
+ * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
2623
+ */
2624
+ const liveFinancialStatement = (options) => (options.client ?? client_gen_1.client).post({
2625
+ security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
2626
+ url: '/extensions/roboledger/{graph_id}/operations/live-financial-statement',
2627
+ ...options,
2628
+ headers: {
2629
+ 'Content-Type': 'application/json',
2630
+ ...options.headers
2631
+ }
2632
+ });
2633
+ exports.liveFinancialStatement = liveFinancialStatement;
2620
2634
  /**
2621
2635
  * Create Portfolio Block
2622
2636
  *
package/sdk.gen.ts CHANGED
@@ -1631,13 +1631,17 @@ export const getCheckoutStatus = <ThrowOnError extends boolean = false>(options:
1631
1631
  });
1632
1632
 
1633
1633
  /**
1634
- * Handle Http Get
1634
+ * GraphQL explorer (development only)
1635
1635
  *
1636
+ * Serves the in-browser GraphiQL explorer on deployments that enable it, which is development only — it is not mounted on the hosted API. Run queries with `POST` to the same URL.
1636
1637
  *
1638
+ * Queries are scoped by the URL: `graph_id` is a path parameter and never a query argument, so a document cannot name a graph that disagrees with the path it was sent to. Reads hit the operational (OLTP) extensions database, so they reflect the books as they stand now; the analytical projection is Cypher at `POST /v1/graphs/{graph_id}/query/cypher`.
1639
+ *
1640
+ * The schema is composed per deployment: ledger fields require RoboLedger and investor fields require RoboInvestor, and a disabled domain is absent from introspection rather than failing at runtime. Every field carries a description, so introspection is the authoritative, deployment-specific reference.
1637
1641
  *
1638
1642
  * **Auth**: pass `X-API-Key` (or a JWT `Authorization: Bearer` header). Unauthenticated introspection queries are deliberately allowed for SDK codegen; data queries require credentials and raise `UNAUTHENTICATED`.
1639
1643
  *
1640
- * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field — see `graphql/README.md` for the full vocabulary.
1644
+ * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field. GraphQL reports errors with HTTP 200 and a populated `errors[]`, so check that array rather than the status code.
1641
1645
  */
1642
1646
  export const handleHttpGetExtensionsGraphIdGraphqlGet = <ThrowOnError extends boolean = false>(options: Options<HandleHttpGetExtensionsGraphIdGraphqlGetData, ThrowOnError>): RequestResult<HandleHttpGetExtensionsGraphIdGraphqlGetResponses, HandleHttpGetExtensionsGraphIdGraphqlGetErrors, ThrowOnError> => (options.client ?? client).get<HandleHttpGetExtensionsGraphIdGraphqlGetResponses, HandleHttpGetExtensionsGraphIdGraphqlGetErrors, ThrowOnError>({
1643
1647
  security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
@@ -1646,18 +1650,28 @@ export const handleHttpGetExtensionsGraphIdGraphqlGet = <ThrowOnError extends bo
1646
1650
  });
1647
1651
 
1648
1652
  /**
1649
- * Handle Http Post
1653
+ * Run a GraphQL query
1654
+ *
1655
+ * The typed read surface for a graph's extensions data — RoboLedger and RoboInvestor records as they stand right now. Writes are not here: they are the named operations at `POST /extensions/{domain}/{graph_id}/operations/{name}`.
1656
+ *
1657
+ * Send a standard GraphQL POST body: a `query` document, with optional `variables` and `operationName`.
1650
1658
  *
1659
+ * Queries are scoped by the URL: `graph_id` is a path parameter and never a query argument, so a document cannot name a graph that disagrees with the path it was sent to. Reads hit the operational (OLTP) extensions database, so they reflect the books as they stand now; the analytical projection is Cypher at `POST /v1/graphs/{graph_id}/query/cypher`.
1651
1660
  *
1661
+ * The schema is composed per deployment: ledger fields require RoboLedger and investor fields require RoboInvestor, and a disabled domain is absent from introspection rather than failing at runtime. Every field carries a description, so introspection is the authoritative, deployment-specific reference.
1652
1662
  *
1653
1663
  * **Auth**: pass `X-API-Key` (or a JWT `Authorization: Bearer` header). Unauthenticated introspection queries are deliberately allowed for SDK codegen; data queries require credentials and raise `UNAUTHENTICATED`.
1654
1664
  *
1655
- * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field — see `graphql/README.md` for the full vocabulary.
1665
+ * **Error codes**: `LEDGER_NOT_INITIALIZED`, `INVESTOR_NOT_INITIALIZED`, and `UNAUTHENTICATED` surface in the GraphQL `errors[].extensions.code` field. GraphQL reports errors with HTTP 200 and a populated `errors[]`, so check that array rather than the status code.
1656
1666
  */
1657
1667
  export const handleHttpPostExtensionsGraphIdGraphqlPost = <ThrowOnError extends boolean = false>(options: Options<HandleHttpPostExtensionsGraphIdGraphqlPostData, ThrowOnError>): RequestResult<HandleHttpPostExtensionsGraphIdGraphqlPostResponses, HandleHttpPostExtensionsGraphIdGraphqlPostErrors, ThrowOnError> => (options.client ?? client).post<HandleHttpPostExtensionsGraphIdGraphqlPostResponses, HandleHttpPostExtensionsGraphIdGraphqlPostErrors, ThrowOnError>({
1658
1668
  security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
1659
1669
  url: '/extensions/{graph_id}/graphql',
1660
- ...options
1670
+ ...options,
1671
+ headers: {
1672
+ 'Content-Type': 'application/json',
1673
+ ...options.headers
1674
+ }
1661
1675
  });
1662
1676
 
1663
1677
  /**
@@ -2544,23 +2558,6 @@ export const unblockSourceGraph = <ThrowOnError extends boolean = false>(options
2544
2558
  }
2545
2559
  });
2546
2560
 
2547
- /**
2548
- * Live Financial Statement
2549
- *
2550
- * Generate an ad-hoc financial statement directly from the tenant's OLTP ledger data using the active CoA→GAAP mapping. This is the authoritative source for RoboLedger entity graphs — no graph materialization required. Rejected on shared-repository graphs; those should use `financial-statement-analysis` instead.
2551
- *
2552
- * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
2553
- */
2554
- export const liveFinancialStatement = <ThrowOnError extends boolean = false>(options: Options<LiveFinancialStatementData, ThrowOnError>): RequestResult<LiveFinancialStatementResponses, LiveFinancialStatementErrors, ThrowOnError> => (options.client ?? client).post<LiveFinancialStatementResponses, LiveFinancialStatementErrors, ThrowOnError>({
2555
- security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
2556
- url: '/extensions/roboledger/{graph_id}/operations/live-financial-statement',
2557
- ...options,
2558
- headers: {
2559
- 'Content-Type': 'application/json',
2560
- ...options.headers
2561
- }
2562
- });
2563
-
2564
2561
  /**
2565
2562
  * Build Fact Grid
2566
2563
  *
@@ -2629,6 +2626,23 @@ export const informationBlock = <ThrowOnError extends boolean = false>(options:
2629
2626
  }
2630
2627
  });
2631
2628
 
2629
+ /**
2630
+ * Live Financial Statement
2631
+ *
2632
+ * Generate an ad-hoc financial statement directly from the tenant's OLTP ledger data using the active CoA→GAAP mapping. This is the authoritative source for RoboLedger entity graphs — no graph materialization required. Rejected on shared-repository graphs; those should use `financial-statement-analysis` instead.
2633
+ *
2634
+ * **Idempotency**: supply an `Idempotency-Key` header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.
2635
+ */
2636
+ export const liveFinancialStatement = <ThrowOnError extends boolean = false>(options: Options<LiveFinancialStatementData, ThrowOnError>): RequestResult<LiveFinancialStatementResponses, LiveFinancialStatementErrors, ThrowOnError> => (options.client ?? client).post<LiveFinancialStatementResponses, LiveFinancialStatementErrors, ThrowOnError>({
2637
+ security: [{ name: 'X-API-Key', type: 'apiKey' }, { scheme: 'bearer', type: 'http' }],
2638
+ url: '/extensions/roboledger/{graph_id}/operations/live-financial-statement',
2639
+ ...options,
2640
+ headers: {
2641
+ 'Content-Type': 'application/json',
2642
+ ...options.headers
2643
+ }
2644
+ });
2645
+
2632
2646
  /**
2633
2647
  * Create Portfolio Block
2634
2648
  *