Skip to content

Releases: RoboFinSystems/robosystems-python-client

Release v0.3.27

16 May 05:04

Choose a tag to compare

RoboSystems Python SDK v0.3.27

This release adds rule_check_kind support to the TaxonomyBlockRule models, expanding the flexibility of taxonomy block rule configuration.

✨ Features & Improvements

  • rule_check_kind field added to TaxonomyBlockRule models (#117): Both TaxonomyBlockRule and TaxonomyBlockRuleRequest now support a rule_check_kind property, enabling more granular control over how rule checks are evaluated.
  • Enhanced model documentation for taxonomy block rule fields.

🔧 Technical Changes

  • Updated taxonomy_block_rule.py and taxonomy_block_rule_request.py model definitions to include the new rule_check_kind attribute.
  • Net addition of ~46 lines across the model files, primarily for new field definitions and docstring improvements.

⚠️ Breaking Changes

  • None anticipated. The new rule_check_kind field is an additive change to existing models. However, if your code performs strict validation or serialization on TaxonomyBlockRule/TaxonomyBlockRuleRequest, verify compatibility with the new field.

🐛 Bug Fixes

  • No bug fixes in this release.

📊 Release Statistics

  • Commits: 3
  • Files Changed: 3
  • Lines Added: 65
  • Lines Deleted: 19
  • Previous Release: v0.3.26

🔗 Links


🤖 Generated with Claude Code

Release v0.3.26

16 May 04:45

Choose a tag to compare

RoboSystems Python SDK v0.3.26

This release refactors the reporting structure terminology, renaming structure_type to block_type across all models, queries, and API operations for improved clarity and consistency.

⚠️ Breaking Changes

  • Renamed structure_typeblock_type across all models and GraphQL queries. Any code referencing the old structure_type field will need to be updated.
  • Renamed model class: TaxonomyBlockStructureRequestStructureTypeTaxonomyBlockStructureRequestBlockType. Direct imports of the old class name will break.

Key Changes

  • Renamed structure_type to block_type in all affected models: ArtifactResponse, ChangeReportingStyleOp, ClassificationLite, InformationModelResponse, RuleLite, StructureSummary, TaxonomyBlockStructure, and TaxonomyBlockStructureRequest.
  • Updated GraphQL queries in the ledger module to use the new block_type terminology.
  • Updated LedgerClient and reporting style graph operations to align with the renamed field.
  • Tests updated to reflect the new naming convention.

Technical Notes

  • 15 files changed across models, queries, API operations, and tests — this is a consistent, project-wide rename with no functional behavior changes.
  • This is primarily a terminology/naming refactor — no new features or bug fixes are included.

📊 Release Statistics

  • Commits: 3
  • Files Changed: 15
  • Lines Added: 124
  • Lines Deleted: 86
  • Previous Release: v0.3.25

🔗 Links


🤖 Generated with Claude Code

Release v0.3.25

14 May 03:00

Choose a tag to compare

RoboSystems Python SDK v0.3.25

This release introduces the Change Reporting Style operation, expanding the graph operations API with new functionality for modifying reporting styles, along with several model updates and additions.

✨ New Features

  • Change Reporting Style operation — Added a new graph operation (op_change_reporting_style) enabling users to programmatically change reporting styles via the API (#115)
  • Pending Obligation Detail Response model — New PendingObligationDetailResponse model for richer obligation tracking
  • Close Period Response Rule Summary — Added ClosePeriodResponseRuleSummaryType0 model to support typed rule summaries in close period responses

🔧 Technical Changes

  • Updated and extended several existing models:
    • ClosePeriodResponse — enhanced with rule summary type support
    • CreateLegacyArm / CreateLegacyArmBlockType — model refinements
    • DeleteLegacyArmBlockType / UpdateLegacyArmBlockType — block type updates for consistency
    • FactLite, FiscalCalendarResponse, InformationBlockEnvelope — minor model adjustments
  • Model registry (models/__init__.py) updated to export all new types

⚠️ Breaking Changes

  • Block type enum changesCreateLegacyArmBlockType, DeleteLegacyArmBlockType, and UpdateLegacyArmBlockType were modified, which may affect consumers relying on specific enum values. Review your usage if you interact with legacy ARM block types directly.

🐛 Bug Fixes

  • No explicit bug fixes in this release.

📊 Release Statistics

  • Commits: 3
  • Files Changed: 14
  • Lines Added: 753
  • Lines Deleted: 8
  • Previous Release: v0.3.24

🔗 Links


🤖 Generated with Claude Code

Release v0.3.24

07 May 23:42

Choose a tag to compare

RoboSystems Python SDK v0.3.24

This release unifies API error handling across the client library, standardizing how 422 validation error responses are represented across all API operations.

Key Improvements

  • Unified 422 error response types — Refactored error handling across 50+ API operations to use a consistent response type for HTTP 422 (Validation Error) responses. This simplifies error handling for consumers of the client library. (#114)
  • Reduced code complexity — Net reduction of ~600 lines of code through consolidation of duplicated error response type definitions.

⚠️ Breaking Changes

  • API error response types have changed — If your code explicitly checks or type-matches against 422 error response models from any of the affected operations (across extensions_robo_ledger, extensions_robo_investor, graph_operations, and connections modules), you will need to update those references to the new unified type. Review your error handling code before upgrading.

Notable Technical Changes

  • Refactored operations spanning all major API modules: Robo Ledger (35 operations), Robo Investor (6 operations), Graph Operations (3 operations), and Connections (1 operation).
  • This is a code-generated client change, likely driven by an upstream API spec update that standardized the validation error schema.

Bug Fixes

  • Consistent error response handling reduces the risk of unexpected error types in edge cases where different operations previously returned structurally different 422 responses.

📊 Release Statistics

  • Commits: 3
  • Files Changed: 55
  • Lines Added: 907
  • Lines Deleted: 1504
  • Previous Release: v0.3.23

🔗 Links


🤖 Generated with Claude Code

Release v0.3.23

07 May 21:44

Choose a tag to compare

RoboSystems Python SDK v0.3.23

This release fixes event source default values and improves block handling in the LedgerClient.

Bug Fixes

  • Fixed event source defaults in LedgerClient (#113) — Updated default values to reflect accurate origin, ensuring correct behavior when no explicit event source is provided.
  • Fixed block handling in LedgerClient (#113) — Resolved an issue with how blocks are processed, improving reliability of ledger operations.

Technical Changes

  • Updated robosystems_client/clients/ledger_client.py with corrected default parameters and block handling logic.
  • Added corresponding test coverage in tests/test_ledger_client.py to validate the fixes.

⚠️ Breaking Changes

None — however, if you were relying on the previous (incorrect) event source defaults in LedgerClient, be aware that the defaults now reflect the intended values. This should be a transparent fix for most users but is worth verifying if you depend on default behavior.


📊 Release Statistics

  • Commits: 3
  • Files Changed: 3
  • Lines Added: 26
  • Lines Deleted: 7
  • Previous Release: v0.3.22

🔗 Links


🤖 Generated with Claude Code

Release v0.3.22

07 May 20:05

Choose a tag to compare

RoboSystems Python SDK v0.3.22

This release introduces typed response models across the client SDK, replacing raw response handling with strongly-typed return values for improved developer experience and type safety.

✨ Features & Improvements

  • Typed response models: All operations in InvestorClient and LedgerClient now return strongly-typed response models instead of raw/untyped responses (#112)
  • New domain models: Added models for taxonomy block structures, security response terms, statement mechanics, and related entities (e.g., ArtifactResponse and others)
  • Improved operation envelope handling: Enhanced how OperationEnvelope is processed and returned across both Investor and Ledger client operations, providing more predictable and structured API responses

⚠️ Breaking Changes

  • Return types changed across client methods: Methods in InvestorClient and LedgerClient now return typed model instances rather than raw dictionaries or generic envelopes. Code that previously accessed raw response data may need to be updated to use the new model attributes.
  • Operation envelope refactor: The handling of OperationEnvelope has been restructured across ~40+ operation modules in both extensions_robo_investor and extensions_robo_ledger. Consumers relying on the previous envelope structure should review their integration code.

🔧 Notable Technical Changes

  • 230 files changed with ~18,900 lines added, reflecting a significant expansion of the model layer
  • Comprehensive updates across all Ledger operations (create, update, delete for event blocks, information blocks, taxonomy blocks, reports, publish lists, mapping associations, agents, and more)
  • Investor operations (portfolio blocks and securities CRUD) updated to match the new typed pattern
  • Graph operations and subscription endpoints also updated for consistency

🐛 Bug Fixes

  • No explicit bug fixes noted; however, the typed response model migration addresses potential runtime errors from untyped response handling

📊 Release Statistics

  • Commits: 6
  • Files Changed: 230
  • Lines Added: 18949
  • Lines Deleted: 1412
  • Previous Release: v0.3.21

🔗 Links


🤖 Generated with Claude Code

Release v0.3.21

06 May 02:23

Choose a tag to compare

RoboSystems Python SDK v0.3.21

This release introduces graph deletion functionality with flexible cancellation options, allowing users to delete graphs either immediately or at the end of the current billing period.

✨ Features

  • Graph deletion with cancellation options — Added the ability to delete graphs with two distinct modes:
    • Immediate cancellation — Deletes the graph and cancels the associated subscription right away
    • Period-end cancellation — Schedules the graph for deletion at the end of the current subscription period, allowing continued use until then
  • Repository subscription cancellation — Added a new cancel_repository_subscription API operation to support subscription lifecycle management tied to graph deletion

🔧 Technical Changes

  • Extended graph_client with delete graph methods supporting both cancellation strategies
  • Expanded the DeleteGraphOp model with new fields/options to accommodate cancellation timing
  • Refactored op_delete_graph to integrate with the new subscription cancellation flow
  • Added corresponding test coverage for the new graph deletion functionality

⚠️ Breaking Changes

  • The delete_graph operation signature and underlying model (DeleteGraphOp) have been updated. Users calling this API directly should review the new parameters for specifying cancellation type.

📝 Notes

  • No bug fixes in this release.
  • PR: #111

📊 Release Statistics

  • Commits: 3
  • Files Changed: 6
  • Lines Added: 479
  • Lines Deleted: 48
  • Previous Release: v0.3.20

🔗 Links


🤖 Generated with Claude Code

Release v0.3.20

06 May 01:31

Choose a tag to compare

RoboSystems Python SDK v0.3.20

This release adds support for subscription cancellation and graph deletion operations, expanding the billing and graph management capabilities of the client library.

✨ Features

  • Cancel Subscription Request — Added a new CancelSubscriptionRequest model and updated the cancel_org_subscription billing API endpoint to support structured cancellation requests (#110)
  • Delete Graph Operation — Introduced a new DeleteGraphOp model and op_delete_graph API endpoint, enabling graph deletion through the graph operations API (#110)

📝 Notable Technical Changes

  • Three new modules added: cancel_subscription_request.py, delete_graph_op.py, and op_delete_graph.py
  • Models registry (models/__init__.py) updated to export the new model classes
  • Existing cancel_org_subscription endpoint modified to integrate with the new request model

⚠️ Breaking Changes

  • The cancel_org_subscription API endpoint has been modified — callers may now need to provide a CancelSubscriptionRequest body. Review your integration if you use this endpoint directly.

🐛 Bug Fixes

  • None in this release.

📊 Release Statistics

  • Commits: 3
  • Files Changed: 6
  • Lines Added: 506
  • Lines Deleted: 10
  • Previous Release: v0.3.19

🔗 Links


🤖 Generated with Claude Code

Release v0.3.19

01 May 19:47

Choose a tag to compare

RoboSystems Python SDK v0.3.19

This release adds event block support to the LedgerClient, expanding the GraphQL query capabilities for interacting with the ledger service.

✨ Features

  • Event Block GraphQL Queries & Methods — Added new GraphQL queries and corresponding methods to LedgerClient for retrieving and working with event blocks (#109)
  • New query definitions added to the ledger GraphQL queries module

🔧 Technical Changes

  • Extended LedgerClient with event block methods, significantly expanding the client's API surface (~326 lines added)
  • Added comprehensive test coverage for the new event block functionality in test_ledger_client.py

⚠️ Breaking Changes

None.

🐛 Bug Fixes

None.


📊 Release Statistics

  • Commits: 3
  • Files Changed: 4
  • Lines Added: 326
  • Lines Deleted: 1
  • Previous Release: v0.3.18

🔗 Links


🤖 Generated with Claude Code

Release v0.3.18

01 May 02:18

Choose a tag to compare

RoboSystems Python SDK v0.3.18

This release enhances the SyncConnectionRequest model with new attributes to support full rebuild and date-based sync operations.

Features & Improvements

  • Full rebuild support for sync connectionsSyncConnectionRequest now includes a full rebuild attribute, enabling complete data resynchronization when needed (#108)
  • Since-date filtering — Added a since date attribute to SyncConnectionRequest, allowing users to sync data from a specific point in time rather than performing a full sync (#108)
  • Updated op_update_event_block endpoint — Minor enhancements to the RoboLedger event block update operation to align with the expanded sync capabilities

Breaking Changes

⚠️ None identified — the new attributes on SyncConnectionRequest are additive and should be backward-compatible with existing usage.

Technical Notes

  • Changes are concentrated in the client SDK models and a single API extension endpoint (3 files, +64/−13 lines), keeping this a focused, low-risk release
  • Developers using SyncConnectionRequest directly may want to review the new optional fields (full_rebuild, since) for improved control over sync behavior

📊 Release Statistics

  • Commits: 3
  • Files Changed: 3
  • Lines Added: 64
  • Lines Deleted: 13
  • Previous Release: v0.3.17

🔗 Links


🤖 Generated with Claude Code