publicdotcom-cli 1.3.1__tar.gz → 1.3.2__tar.gz

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 (233) hide show
  1. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/CHANGELOG.md +35 -0
  2. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/PKG-INFO +42 -1
  3. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/README.md +41 -0
  4. publicdotcom_cli-1.3.2/examples/order.replace.notional.json +10 -0
  5. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/pyproject.toml +1 -1
  6. publicdotcom_cli-1.3.2/scripts/generate_client.py +108 -0
  7. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/__init__.py +1 -1
  8. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/account_details/get_history.py +12 -8
  9. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/instrument_details/get_all_instruments.py +4 -4
  10. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/instrument_details/get_instrument.py +39 -15
  11. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/api/instrument_details/search_bonds.py +672 -0
  12. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/api/market_data/get_bond_details.py +191 -0
  13. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/market_data/get_quotes.py +8 -8
  14. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/option_details/get_option_greeks.py +8 -8
  15. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/replace_order.py +24 -20
  16. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/__init__.py +34 -0
  17. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/com_hellopublic_fixedincomegateway_instrument_instrument_dto.py +446 -0
  18. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_out_of_date_status_type.py +1 -0
  19. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_bonddetails_bond_details_response.py +876 -0
  20. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_cancel_replace_order_request.py +12 -0
  21. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/org_springframework_data_domain_page_com_hellopublic_fixedincomegateway_instrument_instrument_dto.py +196 -0
  22. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/pageable_object.py +119 -0
  23. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_bond_status_item.py +21 -0
  24. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_bond_type_item.py +13 -0
  25. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_coupon_frequency_item.py +13 -0
  26. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_rating_category.py +9 -0
  27. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_rating_item.py +36 -0
  28. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_sort_direction.py +9 -0
  29. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_sp_creditwatch_item.py +11 -0
  30. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_sp_outlook_item.py +13 -0
  31. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/search_bonds_treasury_subtype_item.py +13 -0
  32. publicdotcom_cli-1.3.2/src/publicdotcom_cli/_generated/models/sort_object.py +79 -0
  33. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/cli.py +261 -0
  34. publicdotcom_cli-1.3.2/tests/test_cli.py +96 -0
  35. publicdotcom_cli-1.3.2/tests/test_generated_enums.py +65 -0
  36. publicdotcom_cli-1.3.2/tests/test_generated_models.py +26 -0
  37. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/uv.lock +1 -1
  38. publicdotcom_cli-1.3.1/scripts/generate_client.py +0 -49
  39. publicdotcom_cli-1.3.1/tests/test_cli.py +0 -27
  40. publicdotcom_cli-1.3.1/tests/test_generated_enums.py +0 -30
  41. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/.gitattributes +0 -0
  42. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/.github/workflows/ci.yml +0 -0
  43. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/.github/workflows/release.yml +0 -0
  44. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/.gitignore +0 -0
  45. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/LICENSE +0 -0
  46. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/examples/order.single-leg.cash-only.json +0 -0
  47. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/examples/order.single-leg.market-buy.json +0 -0
  48. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/examples/order.single-leg.tax-lot-matching.json +0 -0
  49. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/examples/strategy-quote.request.json +0 -0
  50. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/__main__.py +0 -0
  51. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/__init__.py +0 -0
  52. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/__init__.py +0 -0
  53. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/account_details/__init__.py +0 -0
  54. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/account_details/get_account_portfolio_v2.py +0 -0
  55. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/authorization/__init__.py +0 -0
  56. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/authorization/create_personal_access_token.py +0 -0
  57. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/instrument_details/__init__.py +0 -0
  58. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/list_accounts/__init__.py +0 -0
  59. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/list_accounts/get_accounts.py +0 -0
  60. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/market_data/__init__.py +0 -0
  61. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/market_data/get_bars_v2.py +0 -0
  62. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/market_data/get_bars_v2_with_aggregation.py +0 -0
  63. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/market_data/get_option_chain.py +0 -0
  64. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/market_data/get_option_expirations.py +0 -0
  65. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/option_details/__init__.py +0 -0
  66. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/option_details/get_strategy_quote.py +0 -0
  67. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/__init__.py +0 -0
  68. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/cancel_order.py +0 -0
  69. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/get_order.py +0 -0
  70. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/place_multileg_order.py +0 -0
  71. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/place_order.py +0 -0
  72. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/preflight_multi_leg.py +0 -0
  73. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/order_placement/preflight_single_leg.py +0 -0
  74. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/tax_lot_selling/__init__.py +0 -0
  75. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/tax_lot_selling/get_unrealized_tax_lots.py +0 -0
  76. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/tax_lot_selling/get_unrealized_tax_lots_csv.py +0 -0
  77. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/api/tax_lot_selling/get_unrealized_tax_lots_for_symbol.py +0 -0
  78. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/client.py +0 -0
  79. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/errors.py +0 -0
  80. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/bar.py +0 -0
  81. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/bars_response.py +0 -0
  82. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_core_dto_base_64_file.py +0 -0
  83. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_holdingsystem_core_types_option_price_increment.py +0 -0
  84. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_instrument_specific_tax_lot_details.py +0 -0
  85. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_option_specific_tax_lot_details.py +0 -0
  86. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_option_specific_tax_lot_details_option_type.py +0 -0
  87. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_order_reference.py +0 -0
  88. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_out_of_date_status.py +0 -0
  89. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_out_of_date_status_description.py +0 -0
  90. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_unrealized_lot.py +0 -0
  91. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_unrealized_lot_summary.py +0 -0
  92. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_unrealized_lots_detail_response.py +0 -0
  93. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_hstier_2_service_taxlots_api_unrealized_lots_summary_response.py +0 -0
  94. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_trading_core_quote_bond_quote_detail.py +0 -0
  95. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_trading_core_quote_quote_specific_detail.py +0 -0
  96. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_trading_core_quote_signed_quote.py +0 -0
  97. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_trading_core_quote_signed_quote_uptick_rule.py +0 -0
  98. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapiauthservice_api_personal_create_access_token_request.py +0 -0
  99. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapiauthservice_api_personal_create_access_token_response.py +0 -0
  100. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapiauthservice_domain_error_error_body.py +0 -0
  101. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings.py +0 -0
  102. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_account_type.py +0 -0
  103. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_brokerage_account_type.py +0 -0
  104. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_options_level.py +0 -0
  105. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_response.py +0 -0
  106. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_trade_permissions.py +0 -0
  107. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_response_page.py +0 -0
  108. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction.py +0 -0
  109. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_direction.py +0 -0
  110. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_security_type.py +0 -0
  111. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_side.py +0 -0
  112. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_sub_type.py +0 -0
  113. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_type.py +0 -0
  114. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_bond_details.py +0 -0
  115. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_chain_request.py +0 -0
  116. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_chain_response.py +0 -0
  117. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_expirations_request.py +0 -0
  118. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_expirations_response.py +0 -0
  119. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote.py +0 -0
  120. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote_outcome.py +0 -0
  121. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote_request.py +0 -0
  122. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote_response.py +0 -0
  123. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_one_day_change.py +0 -0
  124. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_option_details.py +0 -0
  125. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_options_greek_response.py +0 -0
  126. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_options_greeks_response.py +0 -0
  127. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_options_option_greeks_type_0.py +0 -0
  128. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_cancel_replace_order_request_order_type.py +0 -0
  129. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto.py +0 -0
  130. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_fractional_trading.py +0 -0
  131. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_option_spread_trading.py +0 -0
  132. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_option_trading.py +0 -0
  133. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_shorting_availability.py +0 -0
  134. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_trading.py +0 -0
  135. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_response.py +0 -0
  136. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_multileg_order_request.py +0 -0
  137. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_multileg_order_request_type.py +0 -0
  138. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request.py +0 -0
  139. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_equity_market_session.py +0 -0
  140. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_open_close_indicator.py +0 -0
  141. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_order_side.py +0 -0
  142. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_order_type.py +0 -0
  143. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_result.py +0 -0
  144. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_leg_instrument.py +0 -0
  145. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_leg_instrument_type.py +0 -0
  146. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order.py +0 -0
  147. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_instrument.py +0 -0
  148. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_instrument_type.py +0 -0
  149. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_leg.py +0 -0
  150. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_leg_open_close_indicator.py +0 -0
  151. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_leg_side.py +0 -0
  152. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_open_close_indicator.py +0 -0
  153. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_side.py +0 -0
  154. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_status.py +0 -0
  155. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_type.py +0 -0
  156. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_short_selling.py +0 -0
  157. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_short_selling_availability.py +0 -0
  158. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_short_selling_uptick_rule.py +0 -0
  159. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_tax_lot_matching_instruction.py +0 -0
  160. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_instrumentdetails_api_instrument_details.py +0 -0
  161. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_instrumentdetails_api_instrument_details_bond.py +0 -0
  162. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_instrumentdetails_api_instrument_details_crypto.py +0 -0
  163. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_order_expiration.py +0 -0
  164. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_order_expiration_time_in_force.py +0 -0
  165. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gain.py +0 -0
  166. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_available_to_withdraw_type_0.py +0 -0
  167. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_buying_power.py +0 -0
  168. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_cost_basis.py +0 -0
  169. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_account_v2.py +0 -0
  170. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_account_v2_account_type.py +0 -0
  171. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_equity_v2.py +0 -0
  172. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_equity_v2_type.py +0 -0
  173. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_instrument.py +0 -0
  174. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_instrument_type.py +0 -0
  175. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_position.py +0 -0
  176. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_strategy.py +0 -0
  177. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_strategy_leg.py +0 -0
  178. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_price.py +0 -0
  179. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_margin_impact.py +0 -0
  180. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_margin_requirement.py +0 -0
  181. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_option_details.py +0 -0
  182. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_option_details_type.py +0 -0
  183. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_option_rebate.py +0 -0
  184. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_price_increment.py +0 -0
  185. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_regulatory_fees.py +0 -0
  186. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_leg_response.py +0 -0
  187. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_leg_response_open_close_indicator.py +0 -0
  188. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_leg_response_side.py +0 -0
  189. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_multi_leg_request.py +0 -0
  190. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_multi_leg_request_order_type.py +0 -0
  191. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_multi_leg_response.py +0 -0
  192. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request.py +0 -0
  193. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_equity_market_session.py +0 -0
  194. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_open_close_indicator.py +0 -0
  195. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_order_side.py +0 -0
  196. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_order_type.py +0 -0
  197. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_response.py +0 -0
  198. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_order_leg_type_0.py +0 -0
  199. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_order_leg_type_0_open_close_indicator.py +0 -0
  200. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_order_leg_type_0_side.py +0 -0
  201. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_leg_dto.py +0 -0
  202. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_leg_dto_open_close_indicator.py +0 -0
  203. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_leg_dto_side.py +0 -0
  204. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_leg_instrument_dto.py +0 -0
  205. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_leg_instrument_dto_type.py +0 -0
  206. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_quote_dto.py +0 -0
  207. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_quote_dto_debit_credit.py +0 -0
  208. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/com_matadorapp_shared_customerordergateway_dto_strategy_quote_request.py +0 -0
  209. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_all_instruments_fractional_trading_filter_item.py +0 -0
  210. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_all_instruments_option_spread_trading_filter_item.py +0 -0
  211. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_all_instruments_option_trading_filter_item.py +0 -0
  212. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_all_instruments_trading_filter_item.py +0 -0
  213. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_all_instruments_type_filter_item.py +0 -0
  214. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_period.py +0 -0
  215. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_trading_session_toggle.py +0 -0
  216. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_type.py +0 -0
  217. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_with_aggregation_aggregation.py +0 -0
  218. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_with_aggregation_period.py +0 -0
  219. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_with_aggregation_trading_session_toggle.py +0 -0
  220. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_bars_v2_with_aggregation_type.py +0 -0
  221. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/get_instrument_type.py +0 -0
  222. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/last_session_close.py +0 -0
  223. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/market_session_bars.py +0 -0
  224. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/models/regular_session_closing_data.py +0 -0
  225. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/_generated/types.py +0 -0
  226. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/client.py +0 -0
  227. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/config.py +0 -0
  228. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/output.py +0 -0
  229. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/src/publicdotcom_cli/payloads.py +0 -0
  230. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/tests/test_client.py +0 -0
  231. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/tests/test_config.py +0 -0
  232. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/tests/test_output.py +0 -0
  233. {publicdotcom_cli-1.3.1 → publicdotcom_cli-1.3.2}/tests/test_payloads.py +0 -0
@@ -5,6 +5,41 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.3.2] - 2026-08-05
9
+
10
+ ### Added
11
+ - `public instruments bonds` command covering the new
12
+ `GET /userapigateway/trading/instruments/bonds` endpoint: paged, filtered
13
+ fixed-income search with options for issuer, bond status/type, treasury
14
+ subtype, S&P rating/outlook/creditwatch, coupon, maturity dates, current
15
+ yield, par value, liquidity rating, and callable/perpetual/partial-par flags.
16
+ - `public market bond-details SYMBOL` command covering the new
17
+ `GET /userapigateway/marketdata/{accountId}/bond-details/{symbol}` endpoint,
18
+ returning comprehensive bond pricing, rating, coupon, and maturity/call data.
19
+ - `--quantity` and `--amount` overrides on `public order replace`, mirroring the
20
+ cancel-replace request schema's new notional `amount` field. The two are
21
+ mutually exclusive (enforced before submission, including when both fields
22
+ appear in the request file). Replacement is now supported for equity, option,
23
+ and crypto quantity orders.
24
+ - `examples/order.replace.notional.json` demonstrating a notional (`amount`)
25
+ cancel-replace payload.
26
+ - README sections for bond search, bond details, and order replacement.
27
+
28
+ ### Changed
29
+ - Regenerated `_generated/` from the updated `spec.yaml`:
30
+ - New `search-bonds` and `get-bond-details` endpoint modules and models
31
+ (`InstrumentDto`, `BondDetailsResponse`, Spring page/pageable/sort, and the
32
+ bond search filter enums).
33
+ - `amount` added to `ApiCancelReplaceOrderRequest` (mutually exclusive with
34
+ `quantity`).
35
+ - `AGGREGATE` added to the tax-lot `OutOfDateStatus` `type` enum.
36
+ - Refreshed endpoint docstrings (instruments list/get, quotes, greeks,
37
+ history, replace-order) to match the updated spec text; `get-instrument`
38
+ now documents 400/404 responses.
39
+ - `scripts/generate_client.py` now injects `x-enum-varnames` for enum values
40
+ that collide after sanitization (e.g. S&P ratings `AA+`/`AA`/`AA-`), which
41
+ the bonds `rating` filter requires for generation to succeed.
42
+
8
43
  ## [1.3.1] - 2026-07-24
9
44
 
10
45
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: publicdotcom-cli
3
- Version: 1.3.1
3
+ Version: 1.3.2
4
4
  Summary: Command-line client for the Public.com Trading API
5
5
  Project-URL: Homepage, https://github.com/publicdotcom/publicdotcom-cli
6
6
  Project-URL: Repository, https://github.com/publicdotcom/publicdotcom-cli
@@ -182,7 +182,9 @@ public accounts set-default ACCOUNT_ID
182
182
  public portfolio show
183
183
  public history list --page-size 25
184
184
  public instruments get AAPL EQUITY
185
+ public instruments bonds --bond-type TREASURY --rating AAA
185
186
  public market quotes AAPL MSFT --type EQUITY
187
+ public market bond-details 912828XG0-BOND
186
188
  public market option-expirations AAPL
187
189
  public market option-chain AAPL 2026-05-15
188
190
  public options greeks "AAPL 260515C00200000"
@@ -226,6 +228,7 @@ Trading requests use JSON files so the exact payload is visible before submissio
226
228
  ```bash
227
229
  public order preflight-single --file examples/order.single-leg.market-buy.json
228
230
  public order place --file examples/order.single-leg.market-buy.json
231
+ public order replace --file examples/order.replace.notional.json
229
232
  public order get ORDER_ID
230
233
  public order cancel ORDER_ID
231
234
  ```
@@ -245,6 +248,18 @@ Order-placement and single-leg preflight payloads also accept an optional
245
248
  which tax lots to close when selling equity. See
246
249
  `examples/order.single-leg.tax-lot-matching.json` for a sample.
247
250
 
251
+ `order replace` submits a cancel-replace request for an open order. The replacement can
252
+ specify either a `quantity` or a notional `amount` — the two fields are mutually
253
+ exclusive. `--quantity` and `--amount` override the corresponding field in the request
254
+ file. Replacement is supported for equity, option, and crypto quantity orders, and is
255
+ asynchronous: verify order status after submitting. See
256
+ `examples/order.replace.notional.json` for a sample notional replacement payload.
257
+
258
+ ```bash
259
+ public order replace --file examples/order.replace.notional.json
260
+ public order replace --file examples/order.replace.notional.json --amount 250.00
261
+ ```
262
+
248
263
  ## Tax Lots
249
264
 
250
265
  Inspect unrealized tax lots for the configured (or `--account-id`) account:
@@ -276,6 +291,32 @@ The request body is a `StrategyQuoteRequest` with a `baseSymbol` and an `optionL
276
291
  (each leg is `{symbol, side, openCloseIndicator, ratioQuantity}`), plus an optional
277
292
  `equityLeg`. See `examples/strategy-quote.request.json` for a sample.
278
293
 
294
+ ## Bonds
295
+
296
+ Search fixed income instruments with optional filtering, sorting, and pagination:
297
+
298
+ ```bash
299
+ public instruments bonds
300
+ public instruments bonds --bond-type TREASURY --treasury-subtype NOTE --min-coupon 4
301
+ public instruments bonds --rating AAA --rating AA+ --max-maturity-date 2030-12-31
302
+ public instruments bonds --page-size 50 --sort-property maturityDate --sort-direction ASC
303
+ ```
304
+
305
+ Filters cover issuer, bond status/type, treasury subtype, S&P ratings and outlook,
306
+ coupon, maturity dates, current yield, par value, liquidity rating, and
307
+ callable/perpetual/partial-par flags. Repeatable options (for example `--rating`) can be
308
+ passed multiple times. Results are returned as a page with `content` plus paging
309
+ metadata. The API defaults the minimum maturity date to today + 14 days to exclude bonds
310
+ nearing maturity with volatile yields; pass `--min-maturity-date` to override.
311
+
312
+ Retrieve comprehensive details for a single bond — pricing, ratings, coupon, and
313
+ maturity/call information — using the configured (or `--account-id`) account. The bond
314
+ symbol is typically in `CUSIP-BOND` format:
315
+
316
+ ```bash
317
+ public market bond-details 912828XG0-BOND
318
+ ```
319
+
279
320
  ## JSON Output
280
321
 
281
322
  Use `--json` before the command group to print raw JSON:
@@ -144,7 +144,9 @@ public accounts set-default ACCOUNT_ID
144
144
  public portfolio show
145
145
  public history list --page-size 25
146
146
  public instruments get AAPL EQUITY
147
+ public instruments bonds --bond-type TREASURY --rating AAA
147
148
  public market quotes AAPL MSFT --type EQUITY
149
+ public market bond-details 912828XG0-BOND
148
150
  public market option-expirations AAPL
149
151
  public market option-chain AAPL 2026-05-15
150
152
  public options greeks "AAPL 260515C00200000"
@@ -188,6 +190,7 @@ Trading requests use JSON files so the exact payload is visible before submissio
188
190
  ```bash
189
191
  public order preflight-single --file examples/order.single-leg.market-buy.json
190
192
  public order place --file examples/order.single-leg.market-buy.json
193
+ public order replace --file examples/order.replace.notional.json
191
194
  public order get ORDER_ID
192
195
  public order cancel ORDER_ID
193
196
  ```
@@ -207,6 +210,18 @@ Order-placement and single-leg preflight payloads also accept an optional
207
210
  which tax lots to close when selling equity. See
208
211
  `examples/order.single-leg.tax-lot-matching.json` for a sample.
209
212
 
213
+ `order replace` submits a cancel-replace request for an open order. The replacement can
214
+ specify either a `quantity` or a notional `amount` — the two fields are mutually
215
+ exclusive. `--quantity` and `--amount` override the corresponding field in the request
216
+ file. Replacement is supported for equity, option, and crypto quantity orders, and is
217
+ asynchronous: verify order status after submitting. See
218
+ `examples/order.replace.notional.json` for a sample notional replacement payload.
219
+
220
+ ```bash
221
+ public order replace --file examples/order.replace.notional.json
222
+ public order replace --file examples/order.replace.notional.json --amount 250.00
223
+ ```
224
+
210
225
  ## Tax Lots
211
226
 
212
227
  Inspect unrealized tax lots for the configured (or `--account-id`) account:
@@ -238,6 +253,32 @@ The request body is a `StrategyQuoteRequest` with a `baseSymbol` and an `optionL
238
253
  (each leg is `{symbol, side, openCloseIndicator, ratioQuantity}`), plus an optional
239
254
  `equityLeg`. See `examples/strategy-quote.request.json` for a sample.
240
255
 
256
+ ## Bonds
257
+
258
+ Search fixed income instruments with optional filtering, sorting, and pagination:
259
+
260
+ ```bash
261
+ public instruments bonds
262
+ public instruments bonds --bond-type TREASURY --treasury-subtype NOTE --min-coupon 4
263
+ public instruments bonds --rating AAA --rating AA+ --max-maturity-date 2030-12-31
264
+ public instruments bonds --page-size 50 --sort-property maturityDate --sort-direction ASC
265
+ ```
266
+
267
+ Filters cover issuer, bond status/type, treasury subtype, S&P ratings and outlook,
268
+ coupon, maturity dates, current yield, par value, liquidity rating, and
269
+ callable/perpetual/partial-par flags. Repeatable options (for example `--rating`) can be
270
+ passed multiple times. Results are returned as a page with `content` plus paging
271
+ metadata. The API defaults the minimum maturity date to today + 14 days to exclude bonds
272
+ nearing maturity with volatile yields; pass `--min-maturity-date` to override.
273
+
274
+ Retrieve comprehensive details for a single bond — pricing, ratings, coupon, and
275
+ maturity/call information — using the configured (or `--account-id`) account. The bond
276
+ symbol is typically in `CUSIP-BOND` format:
277
+
278
+ ```bash
279
+ public market bond-details 912828XG0-BOND
280
+ ```
281
+
241
282
  ## JSON Output
242
283
 
243
284
  Use `--json` before the command group to print raw JSON:
@@ -0,0 +1,10 @@
1
+ {
2
+ "orderId": "11111111-1111-1111-1111-111111111111",
3
+ "requestId": "22222222-2222-2222-2222-222222222222",
4
+ "orderType": "LIMIT",
5
+ "expiration": {
6
+ "timeInForce": "DAY"
7
+ },
8
+ "amount": "100.00",
9
+ "limitPrice": "50.00"
10
+ }
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "publicdotcom-cli"
3
- version = "1.3.1"
3
+ version = "1.3.2"
4
4
  description = "Command-line client for the Public.com Trading API"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -0,0 +1,108 @@
1
+ from __future__ import annotations
2
+
3
+ import re
4
+ import shutil
5
+ import subprocess
6
+ import tempfile
7
+ from pathlib import Path
8
+
9
+ ROOT = Path(__file__).resolve().parents[1]
10
+ SPEC_PATH = ROOT / "spec.yaml"
11
+ OUTPUT_PATH = ROOT / "src" / "publicdotcom_cli" / "_generated"
12
+
13
+
14
+ def normalized_spec_text() -> str:
15
+ if not SPEC_PATH.exists():
16
+ raise SystemExit(
17
+ f"OpenAPI spec not found at {SPEC_PATH}. "
18
+ "Place the local, uncommitted spec at the repository root as spec.yaml."
19
+ )
20
+ text = SPEC_PATH.read_text(encoding="utf-8")
21
+ text = re.sub(r"^(\s*)'\*/\*':", r"\1application/json:", text, flags=re.MULTILINE)
22
+ return _inject_enum_varnames(text)
23
+
24
+
25
+ def _enum_collision_key(value: str) -> str:
26
+ """Approximate the enum member key openapi-python-client derives from a value."""
27
+ return "_".join(re.findall(r"[A-Za-z0-9]+", value)).upper()
28
+
29
+
30
+ def _enum_varname(value: str, index: int) -> str:
31
+ """Build a distinct, valid enum member name for a value like `AA+` or `SP-1`."""
32
+ name = value.strip().upper()
33
+ if not name or not name[0].isalpha():
34
+ return f"VALUE_{index}"
35
+ name = name.replace("+", "_PLUS")
36
+ if name.endswith("-"):
37
+ name = f"{name[:-1]}_MINUS"
38
+ return re.sub(r"[^A-Z0-9]+", "_", name).strip("_")
39
+
40
+
41
+ def _inject_enum_varnames(text: str) -> str:
42
+ """Add `x-enum-varnames` to enum blocks whose values collide after sanitization.
43
+
44
+ openapi-python-client derives enum member names by stripping symbols, so values
45
+ such as `AA+`, `AA`, and `AA-` (S&P bond ratings) all map to `AA` and generation
46
+ fails with a duplicate-key error. Providing explicit `x-enum-varnames` keeps the
47
+ enum values faithful to the spec while giving each member a distinct name.
48
+ """
49
+ lines = text.split("\n")
50
+ out: list[str] = []
51
+ i = 0
52
+ enum_re = re.compile(r"^(\s*)enum:\s*$")
53
+ while i < len(lines):
54
+ out.append(lines[i])
55
+ match = enum_re.match(lines[i])
56
+ if not match:
57
+ i += 1
58
+ continue
59
+ indent = match.group(1)
60
+ item_re = re.compile(rf"^({re.escape(indent)}\s+)- (\S.*?)\s*$")
61
+ values: list[str] = []
62
+ item_indent = ""
63
+ j = i + 1
64
+ while j < len(lines):
65
+ item = item_re.match(lines[j])
66
+ if not item:
67
+ break
68
+ item_indent = item.group(1)
69
+ values.append(item.group(2).strip("'\""))
70
+ out.append(lines[j])
71
+ j += 1
72
+ keys = [_enum_collision_key(value) for value in values]
73
+ if values and len(set(keys)) != len(keys):
74
+ varnames = [_enum_varname(value, index) for index, value in enumerate(values)]
75
+ if len(set(varnames)) != len(varnames):
76
+ raise SystemExit(f"Could not build distinct x-enum-varnames for enum: {values}")
77
+ out.append(f"{indent}x-enum-varnames:")
78
+ out.extend(f"{item_indent}- {varname}" for varname in varnames)
79
+ i = j
80
+ return "\n".join(out)
81
+
82
+
83
+ def main() -> None:
84
+ with tempfile.TemporaryDirectory() as tmp:
85
+ normalized_spec = Path(tmp) / "spec.codegen.yaml"
86
+ normalized_spec.write_text(normalized_spec_text(), encoding="utf-8")
87
+ subprocess.run(
88
+ [
89
+ "uvx",
90
+ "openapi-python-client",
91
+ "generate",
92
+ "--path",
93
+ str(normalized_spec),
94
+ "--output-path",
95
+ str(OUTPUT_PATH),
96
+ "--overwrite",
97
+ "--meta",
98
+ "none",
99
+ ],
100
+ check=True,
101
+ cwd=ROOT,
102
+ )
103
+
104
+ shutil.rmtree(OUTPUT_PATH / ".ruff_cache", ignore_errors=True)
105
+
106
+
107
+ if __name__ == "__main__":
108
+ main()
@@ -1,3 +1,3 @@
1
1
  """Command-line tools for the Public API."""
2
2
 
3
- __version__ = "1.3.1"
3
+ __version__ = "1.3.2"
@@ -95,8 +95,9 @@ def sync_detailed(
95
95
  ) -> Response[Any | ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryResponsePage]:
96
96
  """Retrieve account history
97
97
 
98
- Fetches a paginated list of historical events for the specified account. Supports optional time
99
- range filtering and pagination via a continuation token.
98
+ Fetches a paginated list of historical account events including trades, money movements, and
99
+ position adjustments for the specified account. Supports optional time-range filtering (start/end)
100
+ and pagination via the nextToken continuation token.
100
101
 
101
102
  Args:
102
103
  account_id (str):
@@ -139,8 +140,9 @@ def sync(
139
140
  ) -> Any | ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryResponsePage | None:
140
141
  """Retrieve account history
141
142
 
142
- Fetches a paginated list of historical events for the specified account. Supports optional time
143
- range filtering and pagination via a continuation token.
143
+ Fetches a paginated list of historical account events including trades, money movements, and
144
+ position adjustments for the specified account. Supports optional time-range filtering (start/end)
145
+ and pagination via the nextToken continuation token.
144
146
 
145
147
  Args:
146
148
  account_id (str):
@@ -178,8 +180,9 @@ async def asyncio_detailed(
178
180
  ) -> Response[Any | ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryResponsePage]:
179
181
  """Retrieve account history
180
182
 
181
- Fetches a paginated list of historical events for the specified account. Supports optional time
182
- range filtering and pagination via a continuation token.
183
+ Fetches a paginated list of historical account events including trades, money movements, and
184
+ position adjustments for the specified account. Supports optional time-range filtering (start/end)
185
+ and pagination via the nextToken continuation token.
183
186
 
184
187
  Args:
185
188
  account_id (str):
@@ -220,8 +223,9 @@ async def asyncio(
220
223
  ) -> Any | ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryResponsePage | None:
221
224
  """Retrieve account history
222
225
 
223
- Fetches a paginated list of historical events for the specified account. Supports optional time
224
- range filtering and pagination via a continuation token.
226
+ Fetches a paginated list of historical account events including trades, money movements, and
227
+ position adjustments for the specified account. Supports optional time-range filtering (start/end)
228
+ and pagination via the nextToken continuation token.
225
229
 
226
230
  Args:
227
231
  account_id (str):
@@ -127,7 +127,7 @@ def sync_detailed(
127
127
  option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
128
128
  | Unset = UNSET,
129
129
  ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]:
130
- """Retrieves all available trading instruments with optional filtering capabilities.
130
+ """Retrieve all trading instruments
131
131
 
132
132
  Retrieves all available trading instruments with optional filtering capabilities.
133
133
 
@@ -176,7 +176,7 @@ def sync(
176
176
  option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
177
177
  | Unset = UNSET,
178
178
  ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse | None:
179
- """Retrieves all available trading instruments with optional filtering capabilities.
179
+ """Retrieve all trading instruments
180
180
 
181
181
  Retrieves all available trading instruments with optional filtering capabilities.
182
182
 
@@ -220,7 +220,7 @@ async def asyncio_detailed(
220
220
  option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
221
221
  | Unset = UNSET,
222
222
  ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]:
223
- """Retrieves all available trading instruments with optional filtering capabilities.
223
+ """Retrieve all trading instruments
224
224
 
225
225
  Retrieves all available trading instruments with optional filtering capabilities.
226
226
 
@@ -267,7 +267,7 @@ async def asyncio(
267
267
  option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
268
268
  | Unset = UNSET,
269
269
  ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse | None:
270
- """Retrieves all available trading instruments with optional filtering capabilities.
270
+ """Retrieve all trading instruments
271
271
 
272
272
  Retrieves all available trading instruments with optional filtering capabilities.
273
273
 
@@ -1,5 +1,5 @@
1
1
  from http import HTTPStatus
2
- from typing import Any
2
+ from typing import Any, cast
3
3
  from urllib.parse import quote
4
4
 
5
5
  import httpx
@@ -31,7 +31,7 @@ def _get_kwargs(
31
31
 
32
32
  def _parse_response(
33
33
  *, client: AuthenticatedClient | Client, response: httpx.Response
34
- ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
34
+ ) -> Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
35
35
  if response.status_code == 200:
36
36
  response_200 = ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto.from_dict(
37
37
  response.json()
@@ -39,6 +39,14 @@ def _parse_response(
39
39
 
40
40
  return response_200
41
41
 
42
+ if response.status_code == 400:
43
+ response_400 = cast(Any, None)
44
+ return response_400
45
+
46
+ if response.status_code == 404:
47
+ response_404 = cast(Any, None)
48
+ return response_404
49
+
42
50
  if client.raise_on_unexpected_status:
43
51
  raise errors.UnexpectedStatus(response.status_code, response.content)
44
52
  else:
@@ -47,7 +55,7 @@ def _parse_response(
47
55
 
48
56
  def _build_response(
49
57
  *, client: AuthenticatedClient | Client, response: httpx.Response
50
- ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
58
+ ) -> Response[Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
51
59
  return Response(
52
60
  status_code=HTTPStatus(response.status_code),
53
61
  content=response.content,
@@ -61,8 +69,12 @@ def sync_detailed(
61
69
  type_: GetInstrumentType,
62
70
  *,
63
71
  client: AuthenticatedClient | Client,
64
- ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
65
- """
72
+ ) -> Response[Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
73
+ """Retrieve a single instrument
74
+
75
+ Retrieves detailed reference data for a single trading instrument, identified by its symbol and
76
+ security type. Use this when you already know the symbol and type.
77
+
66
78
  Args:
67
79
  symbol (str):
68
80
  type_ (GetInstrumentType):
@@ -72,7 +84,7 @@ def sync_detailed(
72
84
  httpx.TimeoutException: If the request takes longer than Client.timeout.
73
85
 
74
86
  Returns:
75
- Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]
87
+ Response[Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]
76
88
  """
77
89
 
78
90
  kwargs = _get_kwargs(
@@ -92,8 +104,12 @@ def sync(
92
104
  type_: GetInstrumentType,
93
105
  *,
94
106
  client: AuthenticatedClient | Client,
95
- ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
96
- """
107
+ ) -> Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
108
+ """Retrieve a single instrument
109
+
110
+ Retrieves detailed reference data for a single trading instrument, identified by its symbol and
111
+ security type. Use this when you already know the symbol and type.
112
+
97
113
  Args:
98
114
  symbol (str):
99
115
  type_ (GetInstrumentType):
@@ -103,7 +119,7 @@ def sync(
103
119
  httpx.TimeoutException: If the request takes longer than Client.timeout.
104
120
 
105
121
  Returns:
106
- ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto
122
+ Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto
107
123
  """
108
124
 
109
125
  return sync_detailed(
@@ -118,8 +134,12 @@ async def asyncio_detailed(
118
134
  type_: GetInstrumentType,
119
135
  *,
120
136
  client: AuthenticatedClient | Client,
121
- ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
122
- """
137
+ ) -> Response[Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
138
+ """Retrieve a single instrument
139
+
140
+ Retrieves detailed reference data for a single trading instrument, identified by its symbol and
141
+ security type. Use this when you already know the symbol and type.
142
+
123
143
  Args:
124
144
  symbol (str):
125
145
  type_ (GetInstrumentType):
@@ -129,7 +149,7 @@ async def asyncio_detailed(
129
149
  httpx.TimeoutException: If the request takes longer than Client.timeout.
130
150
 
131
151
  Returns:
132
- Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]
152
+ Response[Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]
133
153
  """
134
154
 
135
155
  kwargs = _get_kwargs(
@@ -147,8 +167,12 @@ async def asyncio(
147
167
  type_: GetInstrumentType,
148
168
  *,
149
169
  client: AuthenticatedClient | Client,
150
- ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
151
- """
170
+ ) -> Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
171
+ """Retrieve a single instrument
172
+
173
+ Retrieves detailed reference data for a single trading instrument, identified by its symbol and
174
+ security type. Use this when you already know the symbol and type.
175
+
152
176
  Args:
153
177
  symbol (str):
154
178
  type_ (GetInstrumentType):
@@ -158,7 +182,7 @@ async def asyncio(
158
182
  httpx.TimeoutException: If the request takes longer than Client.timeout.
159
183
 
160
184
  Returns:
161
- ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto
185
+ Any | ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto
162
186
  """
163
187
 
164
188
  return (