meshtrade 1.12.0__tar.gz → 1.19.0__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.

Potentially problematic release.


This version of meshtrade might be problematic. Click here for more details.

Files changed (218) hide show
  1. {meshtrade-1.12.0 → meshtrade-1.19.0}/PKG-INFO +1 -1
  2. {meshtrade-1.12.0 → meshtrade-1.19.0}/pyproject.toml +1 -1
  3. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/common/grpc_client.py +47 -0
  4. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/__init__.py +2 -0
  5. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_user_pb2.py +7 -7
  6. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/service_meshpy.py +17 -0
  7. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/service_pb2.py +25 -17
  8. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/service_pb2.pyi +8 -0
  9. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/service_pb2_grpc.py +49 -0
  10. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/role/v1/role_pb2.py +2 -2
  11. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/role/v1/role_pb2.pyi +8 -0
  12. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/service_pb2.py +23 -23
  13. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/user_pb2.py +3 -3
  14. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/__init__.py +23 -1
  15. meshtrade-1.19.0/python/src/meshtrade/ledger/transaction/v1/service_meshpy.py +175 -0
  16. meshtrade-1.19.0/python/src/meshtrade/ledger/transaction/v1/service_options_meshpy.py +65 -0
  17. meshtrade-1.19.0/python/src/meshtrade/ledger/transaction/v1/service_pb2.py +57 -0
  18. meshtrade-1.19.0/python/src/meshtrade/ledger/transaction/v1/service_pb2.pyi +33 -0
  19. meshtrade-1.19.0/python/src/meshtrade/ledger/transaction/v1/service_pb2_grpc.py +131 -0
  20. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/__init__.py +1 -1
  21. meshtrade-1.19.0/python/src/meshtrade/studio/instrument/v1/instrument_type_pb2.py +37 -0
  22. meshtrade-1.12.0/python/src/meshtrade/studio/instrument/v1/type_pb2.pyi → meshtrade-1.19.0/python/src/meshtrade/studio/instrument/v1/instrument_type_pb2.pyi +6 -0
  23. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/__init__.py +0 -4
  24. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/account_pb2.py +10 -10
  25. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/account_pb2.pyi +3 -3
  26. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/service_meshpy.py +0 -18
  27. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/service_pb2.py +19 -27
  28. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/service_pb2.pyi +0 -14
  29. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/service_pb2_grpc.py +0 -49
  30. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade.egg-info/PKG-INFO +1 -1
  31. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade.egg-info/SOURCES.txt +8 -3
  32. meshtrade-1.12.0/python/src/meshtrade/studio/instrument/v1/type_pb2.py +0 -37
  33. {meshtrade-1.12.0 → meshtrade-1.19.0}/README.md +0 -0
  34. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/buf/validate/validate_pb2.py +0 -0
  35. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/buf/validate/validate_pb2.pyi +0 -0
  36. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/__init__.py +0 -0
  37. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/common/__init__.py +0 -0
  38. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/common/config.py +0 -0
  39. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/__init__.py +0 -0
  40. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/__init__.py +0 -0
  41. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/__init__.py +0 -0
  42. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/client_pb2.py +0 -0
  43. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/client_pb2.pyi +0 -0
  44. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/client_pb2_grpc.py +0 -0
  45. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_pb2.py +0 -0
  46. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_pb2.pyi +0 -0
  47. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_pb2_grpc.py +0 -0
  48. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_representative_pb2.py +0 -0
  49. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_representative_pb2.pyi +0 -0
  50. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_representative_pb2_grpc.py +0 -0
  51. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_representative_role_pb2.py +0 -0
  52. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_representative_role_pb2.pyi +0 -0
  53. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/company_representative_role_pb2_grpc.py +0 -0
  54. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/fund_pb2.py +0 -0
  55. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/fund_pb2.pyi +0 -0
  56. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/fund_pb2_grpc.py +0 -0
  57. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/identification_document_type_pb2.py +0 -0
  58. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/identification_document_type_pb2.pyi +0 -0
  59. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/identification_document_type_pb2_grpc.py +0 -0
  60. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/industry_classification_pb2.py +0 -0
  61. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/industry_classification_pb2.pyi +0 -0
  62. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/industry_classification_pb2_grpc.py +0 -0
  63. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/natural_person_connection_type_pb2.py +0 -0
  64. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/natural_person_connection_type_pb2.pyi +0 -0
  65. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/natural_person_connection_type_pb2_grpc.py +0 -0
  66. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/natural_person_pb2.py +0 -0
  67. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/natural_person_pb2.pyi +0 -0
  68. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/natural_person_pb2_grpc.py +0 -0
  69. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/pep_status_pb2.py +0 -0
  70. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/pep_status_pb2.pyi +0 -0
  71. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/pep_status_pb2_grpc.py +0 -0
  72. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/service_meshpy.py +0 -0
  73. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/service_options_meshpy.py +0 -0
  74. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/service_pb2.py +0 -0
  75. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/service_pb2.pyi +0 -0
  76. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/service_pb2_grpc.py +0 -0
  77. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/source_of_income_and_wealth_pb2.py +0 -0
  78. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/source_of_income_and_wealth_pb2.pyi +0 -0
  79. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/source_of_income_and_wealth_pb2_grpc.py +0 -0
  80. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/tax_residency_pb2.py +0 -0
  81. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/tax_residency_pb2.pyi +0 -0
  82. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/tax_residency_pb2_grpc.py +0 -0
  83. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/trust_pb2.py +0 -0
  84. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/trust_pb2.pyi +0 -0
  85. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/trust_pb2_grpc.py +0 -0
  86. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/verification_status_pb2.py +0 -0
  87. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/verification_status_pb2.pyi +0 -0
  88. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/compliance/client/v1/verification_status_pb2_grpc.py +0 -0
  89. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/__init__.py +0 -0
  90. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_credentials.py +0 -0
  91. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_credentials_pb2.py +0 -0
  92. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_credentials_pb2.pyi +0 -0
  93. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_credentials_pb2_grpc.py +0 -0
  94. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_user_pb2.pyi +0 -0
  95. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/api_user_pb2_grpc.py +0 -0
  96. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/service.py +0 -0
  97. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/api_user/v1/service_options_meshpy.py +0 -0
  98. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/__init__.py +0 -0
  99. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/__init__.py +0 -0
  100. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/group_pb2.py +0 -0
  101. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/group_pb2.pyi +0 -0
  102. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/group_pb2_grpc.py +0 -0
  103. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/service_meshpy.py +0 -0
  104. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/service_options_meshpy.py +0 -0
  105. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/service_pb2.py +0 -0
  106. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/service_pb2.pyi +0 -0
  107. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/group/v1/service_pb2_grpc.py +0 -0
  108. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/role/v1/__init__.py +0 -0
  109. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/role/v1/role.py +0 -0
  110. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/role/v1/role_pb2_grpc.py +0 -0
  111. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/__init__.py +0 -0
  112. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/service_meshpy.py +0 -0
  113. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/service_options_meshpy.py +0 -0
  114. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/service_pb2.pyi +0 -0
  115. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/service_pb2_grpc.py +0 -0
  116. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/user_pb2.pyi +0 -0
  117. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/iam/user/v1/user_pb2_grpc.py +0 -0
  118. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/__init__.py +0 -0
  119. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/__init__.py +0 -0
  120. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/transaction_action_pb2.py +0 -0
  121. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/transaction_action_pb2.pyi +0 -0
  122. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/transaction_action_pb2_grpc.py +0 -0
  123. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/transaction_state_pb2.py +0 -0
  124. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/transaction_state_pb2.pyi +0 -0
  125. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/ledger/transaction/v1/transaction_state_pb2_grpc.py +0 -0
  126. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/option/v1/__init__.py +0 -0
  127. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/option/v1/method_type_pb2.py +0 -0
  128. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/option/v1/method_type_pb2.pyi +0 -0
  129. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/option/v1/method_type_pb2_grpc.py +0 -0
  130. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/__init__.py +0 -0
  131. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/account_report_pb2.py +0 -0
  132. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/account_report_pb2.pyi +0 -0
  133. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/account_report_pb2_grpc.py +0 -0
  134. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/disclaimer_pb2.py +0 -0
  135. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/disclaimer_pb2.pyi +0 -0
  136. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/disclaimer_pb2_grpc.py +0 -0
  137. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/fee_entry_pb2.py +0 -0
  138. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/fee_entry_pb2.pyi +0 -0
  139. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/fee_entry_pb2_grpc.py +0 -0
  140. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/income_entry_pb2.py +0 -0
  141. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/income_entry_pb2.pyi +0 -0
  142. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/income_entry_pb2_grpc.py +0 -0
  143. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/service_meshpy.py +0 -0
  144. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/service_options_meshpy.py +0 -0
  145. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/service_pb2.py +0 -0
  146. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/service_pb2.pyi +0 -0
  147. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/service_pb2_grpc.py +0 -0
  148. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/trading_statement_entry_pb2.py +0 -0
  149. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/trading_statement_entry_pb2.pyi +0 -0
  150. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/reporting/account_report/v1/trading_statement_entry_pb2_grpc.py +0 -0
  151. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/instrument_pb2.py +0 -0
  152. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/instrument_pb2.pyi +0 -0
  153. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/instrument_pb2_grpc.py +0 -0
  154. /meshtrade-1.12.0/python/src/meshtrade/studio/instrument/v1/type_pb2_grpc.py → /meshtrade-1.19.0/python/src/meshtrade/studio/instrument/v1/instrument_type_pb2_grpc.py +0 -0
  155. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/unit_pb2.py +0 -0
  156. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/unit_pb2.pyi +0 -0
  157. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/studio/instrument/v1/unit_pb2_grpc.py +0 -0
  158. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/__init__.py +0 -0
  159. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/__init__.py +0 -0
  160. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/__init__.py +0 -0
  161. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/limit_order_pb2.py +0 -0
  162. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/limit_order_pb2.pyi +0 -0
  163. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/limit_order_pb2_grpc.py +0 -0
  164. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/service_meshpy.py +0 -0
  165. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/service_options_meshpy.py +0 -0
  166. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/service_pb2.py +0 -0
  167. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/service_pb2.pyi +0 -0
  168. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/limit_order/v1/service_pb2_grpc.py +0 -0
  169. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/__init__.py +0 -0
  170. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/market_order_pb2.py +0 -0
  171. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/market_order_pb2.pyi +0 -0
  172. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/market_order_pb2_grpc.py +0 -0
  173. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/service_meshpy.py +0 -0
  174. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/service_options_meshpy.py +0 -0
  175. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/service_pb2.py +0 -0
  176. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/service_pb2.pyi +0 -0
  177. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/trading/market_order/v1/service_pb2_grpc.py +0 -0
  178. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/__init__.py +0 -0
  179. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/__init__.py +0 -0
  180. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/address_pb2.py +0 -0
  181. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/address_pb2.pyi +0 -0
  182. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/address_pb2_grpc.py +0 -0
  183. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/amount.py +0 -0
  184. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/amount_pb2.py +0 -0
  185. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/amount_pb2.pyi +0 -0
  186. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/amount_pb2_grpc.py +0 -0
  187. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/contact_details_pb2.py +0 -0
  188. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/contact_details_pb2.pyi +0 -0
  189. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/contact_details_pb2_grpc.py +0 -0
  190. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/date.py +0 -0
  191. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/date_pb2.py +0 -0
  192. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/date_pb2.pyi +0 -0
  193. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/date_pb2_grpc.py +0 -0
  194. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/decimal_built_in_conversions.py +0 -0
  195. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/decimal_pb2.py +0 -0
  196. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/decimal_pb2.pyi +0 -0
  197. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/decimal_pb2_grpc.py +0 -0
  198. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/ledger.py +0 -0
  199. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/ledger_pb2.py +0 -0
  200. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/ledger_pb2.pyi +0 -0
  201. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/ledger_pb2_grpc.py +0 -0
  202. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/sorting_pb2.py +0 -0
  203. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/sorting_pb2.pyi +0 -0
  204. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/sorting_pb2_grpc.py +0 -0
  205. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/time_of_day.py +0 -0
  206. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/time_of_day_pb2.py +0 -0
  207. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/time_of_day_pb2.pyi +0 -0
  208. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/time_of_day_pb2_grpc.py +0 -0
  209. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/token_pb2.py +0 -0
  210. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/token_pb2.pyi +0 -0
  211. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/type/v1/token_pb2_grpc.py +0 -0
  212. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/__init__.py +0 -0
  213. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/account_pb2_grpc.py +0 -0
  214. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade/wallet/account/v1/service_options_meshpy.py +0 -0
  215. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade.egg-info/dependency_links.txt +0 -0
  216. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade.egg-info/requires.txt +0 -0
  217. {meshtrade-1.12.0 → meshtrade-1.19.0}/python/src/meshtrade.egg-info/top_level.txt +0 -0
  218. {meshtrade-1.12.0 → meshtrade-1.19.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshtrade
3
- Version: 1.12.0
3
+ Version: 1.19.0
4
4
  Summary: Integration SDK for Mesh API Services
5
5
  Author-email: Bernard Bussy <bernard@meshtrade.co>
6
6
  License: LicenseRef-My-Custom-License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "meshtrade"
7
- version = "1.12.0"
7
+ version = "1.19.0"
8
8
  authors = [
9
9
  { name = "Bernard Bussy", email = "bernard@meshtrade.co" },
10
10
  ]
@@ -200,3 +200,50 @@ class BaseGRPCClient(GRPCClient):
200
200
 
201
201
  # Make the authenticated call
202
202
  return method(request, metadata=metadata, timeout=timeout_seconds)
203
+
204
+ def _execute_streaming_method(self, method_name: str, request: Any, timeout: timedelta | None = None) -> Any:
205
+ """Execute a server-side streaming gRPC method with authentication and error handling.
206
+
207
+ This is the streaming equivalent of _execute_method() - it handles validation,
208
+ authentication metadata injection, and timeout handling for server-side streaming calls.
209
+
210
+ Args:
211
+ method_name: The name of the gRPC stub streaming method to call
212
+ request: The request message
213
+ timeout: Optional timeout override
214
+
215
+ Returns:
216
+ Iterator yielding response messages from the stream
217
+
218
+ Raises:
219
+ grpc.RpcError: If the gRPC call fails
220
+ ValueError: If authentication credentials are missing or request validation fails
221
+ """
222
+ # Validate request using protovalidate BEFORE initiating stream
223
+ try:
224
+ self._validator.validate(request)
225
+ except Exception as e:
226
+ raise ValueError(f"Request validation failed: {e}") from e
227
+
228
+ self._ensure_connected()
229
+
230
+ if not self._api_key or not self._group:
231
+ raise ValueError(
232
+ "API key and group are required for authentication. Provide them via constructor or set MESH_API_CREDENTIALS environment variable."
233
+ )
234
+
235
+ if self._stub is None:
236
+ raise RuntimeError("gRPC stub not initialized. Call _ensure_connected() first.")
237
+
238
+ # Get the streaming method from the stub
239
+ method = getattr(self._stub, method_name)
240
+
241
+ # Create authentication metadata (x-api-key, x-group headers)
242
+ metadata = create_auth_metadata(self._api_key, self._group)
243
+
244
+ # Use provided timeout or default
245
+ call_timeout = timeout or self._timeout
246
+ timeout_seconds = call_timeout.total_seconds()
247
+
248
+ # Make the authenticated streaming call with metadata
249
+ return method(request, metadata=metadata, timeout=timeout_seconds)
@@ -24,6 +24,7 @@ from .service_pb2 import (
24
24
  GetApiUserRequest,
25
25
  ListApiUsersRequest,
26
26
  ListApiUsersResponse,
27
+ RevokeRoleFromAPIUserRequest,
27
28
  SearchApiUsersRequest,
28
29
  SearchApiUsersResponse,
29
30
  )
@@ -87,6 +88,7 @@ __all__ = [
87
88
  "GetApiUserRequest",
88
89
  "ListApiUsersRequest",
89
90
  "ListApiUsersResponse",
91
+ "RevokeRoleFromAPIUserRequest",
90
92
  "SearchApiUsersRequest",
91
93
  "SearchApiUsersResponse",
92
94
  # Manual exports
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
25
25
  from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
26
26
 
27
27
 
28
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n(meshtrade/iam/api_user/v1/api_user.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\"\x9a\x06\n\x07\x41PIUser\x12\xc2\x01\n\x04name\x18\x01 \x01(\tB\xad\x01\xbaH\xa9\x01\xba\x01\xa5\x01\n\x14name.format.optional\x12\x36name must be empty or in the format api_users/{ULIDv2}\x1aUsize(this) == 0 || this.matches(\'^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\')R\x04name\x12R\n\x05owner\x18\x02 \x01(\tB<\xbaH9r42/^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01!\xc8\x01\x01R\x05owner\x12\xb4\x01\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x90\x01\xbaH\x8c\x01r\x05\x10\x01\x18\xff\x01\xba\x01\x7f\n\x15\x64isplay_name.required\x12\x41\x64isplay name is required and must be between 1 and 255 characters\x1a#size(this) > 0 && size(this) <= 255\xc8\x01\x01R\x0b\x64isplayName\x12\xbe\x01\n\x05state\x18\x05 \x01(\x0e\x32\'.meshtrade.iam.api_user.v1.APIUserStateB\x7f\xbaH|\x82\x01\x02\x10\x01\xba\x01t\n\x0bstate.valid\x12/state must be a valid APIUserState if specified\x1a\x34int(this) == 0 || (int(this) >= 1 && int(this) <= 2)R\x05state\x12\x65\n\x05roles\x18\x06 \x03(\tBO\xbaHL\x92\x01I\"GrE2@^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[123456][0-9]{6}$\x98\x01)R\x05roles\x12\x17\n\x07\x61pi_key\x18\x07 \x01(\tR\x06\x61piKey*f\n\x0c\x41PIUserState\x12\x1e\n\x1a\x41PI_USER_STATE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41PI_USER_STATE_ACTIVE\x10\x01\x12\x1b\n\x17\x41PI_USER_STATE_INACTIVE\x10\x02*\xa6\x01\n\rAPIUserAction\x12\x1f\n\x1b\x41PI_USER_ACTION_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41PI_USER_ACTION_ACTIVATE\x10\x01\x12\x1e\n\x1a\x41PI_USER_ACTION_DEACTIVATE\x10\x02\x12\x1a\n\x16\x41PI_USER_ACTION_CREATE\x10\x03\x12\x1a\n\x16\x41PI_USER_ACTION_UPDATE\x10\x04\x42[\n co.meshtrade.api.iam.api_user.v1Z7github.com/meshtrade/api/go/iam/api_user/v1;api_user_v1b\x06proto3')
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n(meshtrade/iam/api_user/v1/api_user.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\"\x97\x06\n\x07\x41PIUser\x12\xc2\x01\n\x04name\x18\x01 \x01(\tB\xad\x01\xbaH\xa9\x01\xba\x01\xa5\x01\n\x14name.format.optional\x12\x36name must be empty or in the format api_users/{ULIDv2}\x1aUsize(this) == 0 || this.matches(\'^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\')R\x04name\x12R\n\x05owner\x18\x02 \x01(\tB<\xbaH9r42/^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01!\xc8\x01\x01R\x05owner\x12\xb4\x01\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x90\x01\xbaH\x8c\x01r\x05\x10\x01\x18\xff\x01\xba\x01\x7f\n\x15\x64isplay_name.required\x12\x41\x64isplay name is required and must be between 1 and 255 characters\x1a#size(this) > 0 && size(this) <= 255\xc8\x01\x01R\x0b\x64isplayName\x12\xbe\x01\n\x05state\x18\x05 \x01(\x0e\x32\'.meshtrade.iam.api_user.v1.APIUserStateB\x7f\xbaH|\x82\x01\x02\x10\x01\xba\x01t\n\x0bstate.valid\x12/state must be a valid APIUserState if specified\x1a\x34int(this) == 0 || (int(this) >= 1 && int(this) <= 2)R\x05state\x12\x62\n\x05roles\x18\x06 \x03(\tBL\xbaHI\x92\x01\x46\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)R\x05roles\x12\x17\n\x07\x61pi_key\x18\x07 \x01(\tR\x06\x61piKey*f\n\x0c\x41PIUserState\x12\x1e\n\x1a\x41PI_USER_STATE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41PI_USER_STATE_ACTIVE\x10\x01\x12\x1b\n\x17\x41PI_USER_STATE_INACTIVE\x10\x02*\xa6\x01\n\rAPIUserAction\x12\x1f\n\x1b\x41PI_USER_ACTION_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41PI_USER_ACTION_ACTIVATE\x10\x01\x12\x1e\n\x1a\x41PI_USER_ACTION_DEACTIVATE\x10\x02\x12\x1a\n\x16\x41PI_USER_ACTION_CREATE\x10\x03\x12\x1a\n\x16\x41PI_USER_ACTION_UPDATE\x10\x04\x42[\n co.meshtrade.api.iam.api_user.v1Z7github.com/meshtrade/api/go/iam/api_user/v1;api_user_v1b\x06proto3')
29
29
 
30
30
  _globals = globals()
31
31
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -42,11 +42,11 @@ if not _descriptor._USE_C_DESCRIPTORS:
42
42
  _globals['_APIUSER'].fields_by_name['state']._loaded_options = None
43
43
  _globals['_APIUSER'].fields_by_name['state']._serialized_options = b'\272H|\202\001\002\020\001\272\001t\n\013state.valid\022/state must be a valid APIUserState if specified\0324int(this) == 0 || (int(this) >= 1 && int(this) <= 2)'
44
44
  _globals['_APIUSER'].fields_by_name['roles']._loaded_options = None
45
- _globals['_APIUSER'].fields_by_name['roles']._serialized_options = b'\272HL\222\001I\"GrE2@^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[123456][0-9]{6}$\230\001)'
46
- _globals['_APIUSERSTATE']._serialized_start=897
47
- _globals['_APIUSERSTATE']._serialized_end=999
48
- _globals['_APIUSERACTION']._serialized_start=1002
49
- _globals['_APIUSERACTION']._serialized_end=1168
45
+ _globals['_APIUSER'].fields_by_name['roles']._serialized_options = b'\272HI\222\001F\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)'
46
+ _globals['_APIUSERSTATE']._serialized_start=894
47
+ _globals['_APIUSERSTATE']._serialized_end=996
48
+ _globals['_APIUSERACTION']._serialized_start=999
49
+ _globals['_APIUSERACTION']._serialized_end=1165
50
50
  _globals['_APIUSER']._serialized_start=101
51
- _globals['_APIUSER']._serialized_end=895
51
+ _globals['_APIUSER']._serialized_end=892
52
52
  # @@protoc_insertion_point(module_scope)
@@ -26,6 +26,7 @@ GetApiUserByKeyHashRequest,
26
26
  GetApiUserRequest,
27
27
  ListApiUsersRequest,
28
28
  ListApiUsersResponse,
29
+ RevokeRoleFromAPIUserRequest,
29
30
  SearchApiUsersRequest,
30
31
  SearchApiUsersResponse,
31
32
  )
@@ -186,6 +187,22 @@ class ApiUserService(BaseGRPCClient):
186
187
  """
187
188
  return self._execute_method("AssignRoleToAPIUser", request, timeout)
188
189
 
190
+ def revoke_role_from_apiuser(self, request: RevokeRoleFromAPIUserRequest, timeout: Optional[timedelta] = None) -> APIUser:
191
+ """RevokeRoleFromAPIUser method.
192
+
193
+ Args:
194
+ request: The RevokeRoleFromAPIUser request message
195
+ timeout: Optional timeout override for this call
196
+
197
+ Returns:
198
+ The RevokeRoleFromAPIUser response message
199
+
200
+ Raises:
201
+ grpc.RpcError: If the gRPC call fails
202
+ ValueError: If authentication credentials are missing
203
+ """
204
+ return self._execute_method("RevokeRoleFromAPIUser", request, timeout)
205
+
189
206
  def list_api_users(self, request: ListApiUsersRequest, timeout: Optional[timedelta] = None) -> ListApiUsersResponse:
190
207
  """ListApiUsers method.
191
208
 
@@ -28,7 +28,7 @@ from meshtrade.iam.role.v1 import role_pb2 as meshtrade_dot_iam_dot_role_dot_v1_
28
28
  from meshtrade.option.v1 import method_type_pb2 as meshtrade_dot_option_dot_v1_dot_method__type__pb2
29
29
 
30
30
 
31
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'meshtrade/iam/api_user/v1/service.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a(meshtrade/iam/api_user/v1/api_user.proto\x1a meshtrade/iam/role/v1/role.proto\x1a%meshtrade/option/v1/method_type.proto\"h\n\x11GetApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"Z\n\x1aGetApiUserByKeyHashRequest\x12<\n\x08key_hash\x18\x01 \x01(\tB!\xbaH\x1er\x19\x32\x14^[A-Za-z0-9+/]{43}=$\x98\x01,\xc8\x01\x01R\x07keyHash\"]\n\x14\x43reateApiUserRequest\x12\x45\n\x08\x61pi_user\x18\x01 \x01(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserB\x06\xbaH\x03\xc8\x01\x01R\x07\x61piUser\"\xd1\x01\n\x1a\x41ssignRoleToAPIUserRequest\x12P\n\x04name\x18\x01 \x01(\tB<\xbaH9r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$R\x04name\x12\x61\n\x04role\x18\x04 \x01(\tBM\xbaHJrE2@^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[123456][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"\x15\n\x13ListApiUsersRequest\"W\n\x14ListApiUsersResponse\x12?\n\tapi_users\x18\x01 \x03(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserR\x08\x61piUsers\":\n\x15SearchApiUsersRequest\x12!\n\x0c\x64isplay_name\x18\x01 \x01(\tR\x0b\x64isplayName\"Y\n\x16SearchApiUsersResponse\x12?\n\tapi_users\x18\x01 \x03(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserR\x08\x61piUsers\"m\n\x16\x41\x63tivateApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"o\n\x18\x44\x65\x61\x63tivateApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name2\xbf\x08\n\x0e\x41piUserService\x12z\n\nGetApiUser\x12,.meshtrade.iam.api_user.v1.GetApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12x\n\rCreateApiUser\x12/.meshtrade.iam.api_user.v1.CreateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x84\x01\n\x13\x41ssignRoleToAPIUser\x12\x35.meshtrade.iam.api_user.v1.AssignRoleToAPIUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x8b\x01\n\x0cListApiUsers\x12..meshtrade.iam.api_user.v1.ListApiUsersRequest\x1a/.meshtrade.iam.api_user.v1.ListApiUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12\x91\x01\n\x0eSearchApiUsers\x12\x30.meshtrade.iam.api_user.v1.SearchApiUsersRequest\x1a\x31.meshtrade.iam.api_user.v1.SearchApiUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12|\n\x0f\x41\x63tivateApiUser\x12\x31.meshtrade.iam.api_user.v1.ActivateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x80\x01\n\x11\x44\x65\x61\x63tivateApiUser\x12\x33.meshtrade.iam.api_user.v1.DeactivateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x8c\x01\n\x13GetApiUserByKeyHash\x12\x35.meshtrade.iam.api_user.v1.GetApiUserByKeyHashRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x42[\n co.meshtrade.api.iam.api_user.v1Z7github.com/meshtrade/api/go/iam/api_user/v1;api_user_v1b\x06proto3')
31
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\'meshtrade/iam/api_user/v1/service.proto\x12\x19meshtrade.iam.api_user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a(meshtrade/iam/api_user/v1/api_user.proto\x1a meshtrade/iam/role/v1/role.proto\x1a%meshtrade/option/v1/method_type.proto\"h\n\x11GetApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"Z\n\x1aGetApiUserByKeyHashRequest\x12<\n\x08key_hash\x18\x01 \x01(\tB!\xbaH\x1er\x19\x32\x14^[A-Za-z0-9+/]{43}=$\x98\x01,\xc8\x01\x01R\x07keyHash\"]\n\x14\x43reateApiUserRequest\x12\x45\n\x08\x61pi_user\x18\x01 \x01(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserB\x06\xbaH\x03\xc8\x01\x01R\x07\x61piUser\"\xd1\x01\n\x1a\x41ssignRoleToAPIUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\x12^\n\x04role\x18\x04 \x01(\tBJ\xbaHGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"\xd3\x01\n\x1cRevokeRoleFromAPIUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\x12^\n\x04role\x18\x02 \x01(\tBJ\xbaHGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"\x15\n\x13ListApiUsersRequest\"W\n\x14ListApiUsersResponse\x12?\n\tapi_users\x18\x01 \x03(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserR\x08\x61piUsers\":\n\x15SearchApiUsersRequest\x12!\n\x0c\x64isplay_name\x18\x01 \x01(\tR\x0b\x64isplayName\"Y\n\x16SearchApiUsersResponse\x12?\n\tapi_users\x18\x01 \x03(\x0b\x32\".meshtrade.iam.api_user.v1.APIUserR\x08\x61piUsers\"m\n\x16\x41\x63tivateApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name\"o\n\x18\x44\x65\x61\x63tivateApiUserRequest\x12S\n\x04name\x18\x01 \x01(\tB?\xbaH<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01$\xc8\x01\x01R\x04name2\xca\t\n\x0e\x41piUserService\x12z\n\nGetApiUser\x12,.meshtrade.iam.api_user.v1.GetApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12x\n\rCreateApiUser\x12/.meshtrade.iam.api_user.v1.CreateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x84\x01\n\x13\x41ssignRoleToAPIUser\x12\x35.meshtrade.iam.api_user.v1.AssignRoleToAPIUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x88\x01\n\x15RevokeRoleFromAPIUser\x12\x37.meshtrade.iam.api_user.v1.RevokeRoleFromAPIUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x8b\x01\n\x0cListApiUsers\x12..meshtrade.iam.api_user.v1.ListApiUsersRequest\x1a/.meshtrade.iam.api_user.v1.ListApiUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12\x91\x01\n\x0eSearchApiUsers\x12\x30.meshtrade.iam.api_user.v1.SearchApiUsersRequest\x1a\x31.meshtrade.iam.api_user.v1.SearchApiUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x12|\n\x0f\x41\x63tivateApiUser\x12\x31.meshtrade.iam.api_user.v1.ActivateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x80\x01\n\x11\x44\x65\x61\x63tivateApiUser\x12\x33.meshtrade.iam.api_user.v1.DeactivateApiUserRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc2\x8d\xb7\x01\x12\x8c\x01\n\x13GetApiUserByKeyHash\x12\x35.meshtrade.iam.api_user.v1.GetApiUserByKeyHashRequest\x1a\".meshtrade.iam.api_user.v1.APIUser\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc2\x8d\xb7\x01\xc3\x8d\xb7\x01\x42[\n co.meshtrade.api.iam.api_user.v1Z7github.com/meshtrade/api/go/iam/api_user/v1;api_user_v1b\x06proto3')
32
32
 
33
33
  _globals = globals()
34
34
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -43,9 +43,13 @@ if not _descriptor._USE_C_DESCRIPTORS:
43
43
  _globals['_CREATEAPIUSERREQUEST'].fields_by_name['api_user']._loaded_options = None
44
44
  _globals['_CREATEAPIUSERREQUEST'].fields_by_name['api_user']._serialized_options = b'\272H\003\310\001\001'
45
45
  _globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
46
- _globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H9r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$'
46
+ _globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$\310\001\001'
47
47
  _globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['role']._loaded_options = None
48
- _globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HJrE2@^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[123456][0-9]{6}$\230\001)\310\001\001'
48
+ _globals['_ASSIGNROLETOAPIUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)\310\001\001'
49
+ _globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
50
+ _globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$\310\001\001'
51
+ _globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['role']._loaded_options = None
52
+ _globals['_REVOKEROLEFROMAPIUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)\310\001\001'
49
53
  _globals['_ACTIVATEAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
50
54
  _globals['_ACTIVATEAPIUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H<r722^api_users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001$\310\001\001'
51
55
  _globals['_DEACTIVATEAPIUSERREQUEST'].fields_by_name['name']._loaded_options = None
@@ -56,6 +60,8 @@ if not _descriptor._USE_C_DESCRIPTORS:
56
60
  _globals['_APIUSERSERVICE'].methods_by_name['CreateApiUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\302\215\267\001'
57
61
  _globals['_APIUSERSERVICE'].methods_by_name['AssignRoleToAPIUser']._loaded_options = None
58
62
  _globals['_APIUSERSERVICE'].methods_by_name['AssignRoleToAPIUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\302\215\267\001'
63
+ _globals['_APIUSERSERVICE'].methods_by_name['RevokeRoleFromAPIUser']._loaded_options = None
64
+ _globals['_APIUSERSERVICE'].methods_by_name['RevokeRoleFromAPIUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\302\215\267\001'
59
65
  _globals['_APIUSERSERVICE'].methods_by_name['ListApiUsers']._loaded_options = None
60
66
  _globals['_APIUSERSERVICE'].methods_by_name['ListApiUsers']._serialized_options = b'\240\265\030\001\252\265\030\022\n\020\300\215\267\001\301\215\267\001\302\215\267\001\303\215\267\001'
61
67
  _globals['_APIUSERSERVICE'].methods_by_name['SearchApiUsers']._loaded_options = None
@@ -74,18 +80,20 @@ if not _descriptor._USE_C_DESCRIPTORS:
74
80
  _globals['_CREATEAPIUSERREQUEST']._serialized_end=505
75
81
  _globals['_ASSIGNROLETOAPIUSERREQUEST']._serialized_start=508
76
82
  _globals['_ASSIGNROLETOAPIUSERREQUEST']._serialized_end=717
77
- _globals['_LISTAPIUSERSREQUEST']._serialized_start=719
78
- _globals['_LISTAPIUSERSREQUEST']._serialized_end=740
79
- _globals['_LISTAPIUSERSRESPONSE']._serialized_start=742
80
- _globals['_LISTAPIUSERSRESPONSE']._serialized_end=829
81
- _globals['_SEARCHAPIUSERSREQUEST']._serialized_start=831
82
- _globals['_SEARCHAPIUSERSREQUEST']._serialized_end=889
83
- _globals['_SEARCHAPIUSERSRESPONSE']._serialized_start=891
84
- _globals['_SEARCHAPIUSERSRESPONSE']._serialized_end=980
85
- _globals['_ACTIVATEAPIUSERREQUEST']._serialized_start=982
86
- _globals['_ACTIVATEAPIUSERREQUEST']._serialized_end=1091
87
- _globals['_DEACTIVATEAPIUSERREQUEST']._serialized_start=1093
88
- _globals['_DEACTIVATEAPIUSERREQUEST']._serialized_end=1204
89
- _globals['_APIUSERSERVICE']._serialized_start=1207
90
- _globals['_APIUSERSERVICE']._serialized_end=2294
83
+ _globals['_REVOKEROLEFROMAPIUSERREQUEST']._serialized_start=720
84
+ _globals['_REVOKEROLEFROMAPIUSERREQUEST']._serialized_end=931
85
+ _globals['_LISTAPIUSERSREQUEST']._serialized_start=933
86
+ _globals['_LISTAPIUSERSREQUEST']._serialized_end=954
87
+ _globals['_LISTAPIUSERSRESPONSE']._serialized_start=956
88
+ _globals['_LISTAPIUSERSRESPONSE']._serialized_end=1043
89
+ _globals['_SEARCHAPIUSERSREQUEST']._serialized_start=1045
90
+ _globals['_SEARCHAPIUSERSREQUEST']._serialized_end=1103
91
+ _globals['_SEARCHAPIUSERSRESPONSE']._serialized_start=1105
92
+ _globals['_SEARCHAPIUSERSRESPONSE']._serialized_end=1194
93
+ _globals['_ACTIVATEAPIUSERREQUEST']._serialized_start=1196
94
+ _globals['_ACTIVATEAPIUSERREQUEST']._serialized_end=1305
95
+ _globals['_DEACTIVATEAPIUSERREQUEST']._serialized_start=1307
96
+ _globals['_DEACTIVATEAPIUSERREQUEST']._serialized_end=1418
97
+ _globals['_APIUSERSERVICE']._serialized_start=1421
98
+ _globals['_APIUSERSERVICE']._serialized_end=2647
91
99
  # @@protoc_insertion_point(module_scope)
@@ -36,6 +36,14 @@ class AssignRoleToAPIUserRequest(_message.Message):
36
36
  role: str
37
37
  def __init__(self, name: _Optional[str] = ..., role: _Optional[str] = ...) -> None: ...
38
38
 
39
+ class RevokeRoleFromAPIUserRequest(_message.Message):
40
+ __slots__ = ("name", "role")
41
+ NAME_FIELD_NUMBER: _ClassVar[int]
42
+ ROLE_FIELD_NUMBER: _ClassVar[int]
43
+ name: str
44
+ role: str
45
+ def __init__(self, name: _Optional[str] = ..., role: _Optional[str] = ...) -> None: ...
46
+
39
47
  class ListApiUsersRequest(_message.Message):
40
48
  __slots__ = ()
41
49
  def __init__(self) -> None: ...
@@ -42,6 +42,11 @@ class ApiUserServiceStub(object):
42
42
  request_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.AssignRoleToAPIUserRequest.SerializeToString,
43
43
  response_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.FromString,
44
44
  _registered_method=True)
45
+ self.RevokeRoleFromAPIUser = channel.unary_unary(
46
+ '/meshtrade.iam.api_user.v1.ApiUserService/RevokeRoleFromAPIUser',
47
+ request_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.RevokeRoleFromAPIUserRequest.SerializeToString,
48
+ response_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.FromString,
49
+ _registered_method=True)
45
50
  self.ListApiUsers = channel.unary_unary(
46
51
  '/meshtrade.iam.api_user.v1.ApiUserService/ListApiUsers',
47
52
  request_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.ListApiUsersRequest.SerializeToString,
@@ -115,6 +120,18 @@ class ApiUserServiceServicer(object):
115
120
  context.set_details('Method not implemented!')
116
121
  raise NotImplementedError('Method not implemented!')
117
122
 
123
+ def RevokeRoleFromAPIUser(self, request, context):
124
+ """
125
+ Revokes a role from an existing API user within the authenticated group context.
126
+
127
+ The role revocation removes the permissions associated with that role from
128
+ the API user within the group hierarchy. The API user will no longer be able
129
+ to perform operations that require the revoked role.
130
+ """
131
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
132
+ context.set_details('Method not implemented!')
133
+ raise NotImplementedError('Method not implemented!')
134
+
118
135
  def ListApiUsers(self, request, context):
119
136
  """
120
137
  Lists all API users in the authenticated group context.
@@ -188,6 +205,11 @@ def add_ApiUserServiceServicer_to_server(servicer, server):
188
205
  request_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.AssignRoleToAPIUserRequest.FromString,
189
206
  response_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.SerializeToString,
190
207
  ),
208
+ 'RevokeRoleFromAPIUser': grpc.unary_unary_rpc_method_handler(
209
+ servicer.RevokeRoleFromAPIUser,
210
+ request_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.RevokeRoleFromAPIUserRequest.FromString,
211
+ response_serializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.SerializeToString,
212
+ ),
191
213
  'ListApiUsers': grpc.unary_unary_rpc_method_handler(
192
214
  servicer.ListApiUsers,
193
215
  request_deserializer=meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.ListApiUsersRequest.FromString,
@@ -317,6 +339,33 @@ class ApiUserService(object):
317
339
  metadata,
318
340
  _registered_method=True)
319
341
 
342
+ @staticmethod
343
+ def RevokeRoleFromAPIUser(request,
344
+ target,
345
+ options=(),
346
+ channel_credentials=None,
347
+ call_credentials=None,
348
+ insecure=False,
349
+ compression=None,
350
+ wait_for_ready=None,
351
+ timeout=None,
352
+ metadata=None):
353
+ return grpc.experimental.unary_unary(
354
+ request,
355
+ target,
356
+ '/meshtrade.iam.api_user.v1.ApiUserService/RevokeRoleFromAPIUser',
357
+ meshtrade_dot_iam_dot_api__user_dot_v1_dot_service__pb2.RevokeRoleFromAPIUserRequest.SerializeToString,
358
+ meshtrade_dot_iam_dot_api__user_dot_v1_dot_api__user__pb2.APIUser.FromString,
359
+ options,
360
+ channel_credentials,
361
+ insecure,
362
+ call_credentials,
363
+ compression,
364
+ wait_for_ready,
365
+ timeout,
366
+ metadata,
367
+ _registered_method=True)
368
+
320
369
  @staticmethod
321
370
  def ListApiUsers(request,
322
371
  target,
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
25
25
  from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2
26
26
 
27
27
 
28
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/role/v1/role.proto\x12\x15meshtrade.iam.role.v1\x1a google/protobuf/descriptor.proto\"=\n\x08RoleList\x12\x31\n\x05roles\x18\x01 \x03(\x0e\x32\x1b.meshtrade.iam.role.v1.RoleR\x05roles*\xec\x05\n\x04Role\x12\x14\n\x10ROLE_UNSPECIFIED\x10\x00\x12\x17\n\x11ROLE_WALLET_ADMIN\x10\xc0\x84=\x12\x18\n\x12ROLE_WALLET_VIEWER\x10\xc1\x84=\x12\x1f\n\x19ROLE_WALLET_ACCOUNT_ADMIN\x10\xc2\x84=\x12 \n\x1aROLE_WALLET_ACCOUNT_VIEWER\x10\xc3\x84=\x12\x1b\n\x15ROLE_COMPLIANCE_ADMIN\x10\x80\x89z\x12\x1c\n\x16ROLE_COMPLIANCE_VIEWER\x10\x81\x89z\x12\"\n\x1cROLE_COMPLIANCE_CLIENT_ADMIN\x10\x82\x89z\x12#\n\x1dROLE_COMPLIANCE_CLIENT_VIEWER\x10\x83\x89z\x12\x15\n\x0eROLE_IAM_ADMIN\x10\xc0\x8d\xb7\x01\x12\x16\n\x0fROLE_IAM_VIEWER\x10\xc1\x8d\xb7\x01\x12\x1e\n\x17ROLE_IAM_API_USER_ADMIN\x10\xc2\x8d\xb7\x01\x12\x1f\n\x18ROLE_IAM_API_USER_VIEWER\x10\xc3\x8d\xb7\x01\x12\x1b\n\x14ROLE_IAM_GROUP_ADMIN\x10\xc4\x8d\xb7\x01\x12\x1c\n\x15ROLE_IAM_GROUP_VIEWER\x10\xc5\x8d\xb7\x01\x12\x1a\n\x13ROLE_IAM_USER_ADMIN\x10\xc6\x8d\xb7\x01\x12\x1b\n\x14ROLE_IAM_USER_VIEWER\x10\xc7\x8d\xb7\x01\x12\x18\n\x11ROLE_STUDIO_ADMIN\x10\x80\x92\xf4\x01\x12\x19\n\x12ROLE_STUDIO_VIEWER\x10\x81\x92\xf4\x01\x12#\n\x1cROLE_STUDIO_INSTRUMENT_ADMIN\x10\x82\x92\xf4\x01\x12$\n\x1dROLE_STUDIO_INSTRUMENT_VIEWER\x10\x83\x92\xf4\x01\x12\x19\n\x12ROLE_TRADING_ADMIN\x10\xc0\x96\xb1\x02\x12\x1a\n\x13ROLE_TRADING_VIEWER\x10\xc1\x96\xb1\x02\x12\x1b\n\x14ROLE_REPORTING_ADMIN\x10\x80\x9b\xee\x02\x12\x1c\n\x15ROLE_REPORTING_VIEWER\x10\x81\x9b\xee\x02:g\n\rmessage_roles\x12\x1f.google.protobuf.MessageOptions\x18\xd6\x86\x03 \x01(\x0b\x32\x1f.meshtrade.iam.role.v1.RoleListR\x0cmessageRoles:W\n\x05roles\x12\x1e.google.protobuf.MethodOptions\x18\xd5\x86\x03 \x01(\x0b\x32\x1f.meshtrade.iam.role.v1.RoleListR\x05rolesBO\n\x1c\x63o.meshtrade.api.iam.role.v1Z/github.com/meshtrade/api/go/iam/role/v1;role_v1b\x06proto3')
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/role/v1/role.proto\x12\x15meshtrade.iam.role.v1\x1a google/protobuf/descriptor.proto\"=\n\x08RoleList\x12\x31\n\x05roles\x18\x01 \x03(\x0e\x32\x1b.meshtrade.iam.role.v1.RoleR\x05roles*\xee\x06\n\x04Role\x12\x14\n\x10ROLE_UNSPECIFIED\x10\x00\x12\x17\n\x11ROLE_WALLET_ADMIN\x10\xc0\x84=\x12\x18\n\x12ROLE_WALLET_VIEWER\x10\xc1\x84=\x12\x1f\n\x19ROLE_WALLET_ACCOUNT_ADMIN\x10\xc2\x84=\x12 \n\x1aROLE_WALLET_ACCOUNT_VIEWER\x10\xc3\x84=\x12\x1b\n\x15ROLE_COMPLIANCE_ADMIN\x10\x80\x89z\x12\x1c\n\x16ROLE_COMPLIANCE_VIEWER\x10\x81\x89z\x12\"\n\x1cROLE_COMPLIANCE_CLIENT_ADMIN\x10\x82\x89z\x12#\n\x1dROLE_COMPLIANCE_CLIENT_VIEWER\x10\x83\x89z\x12\x15\n\x0eROLE_IAM_ADMIN\x10\xc0\x8d\xb7\x01\x12\x16\n\x0fROLE_IAM_VIEWER\x10\xc1\x8d\xb7\x01\x12\x1e\n\x17ROLE_IAM_API_USER_ADMIN\x10\xc2\x8d\xb7\x01\x12\x1f\n\x18ROLE_IAM_API_USER_VIEWER\x10\xc3\x8d\xb7\x01\x12\x1b\n\x14ROLE_IAM_GROUP_ADMIN\x10\xc4\x8d\xb7\x01\x12\x1c\n\x15ROLE_IAM_GROUP_VIEWER\x10\xc5\x8d\xb7\x01\x12\x1a\n\x13ROLE_IAM_USER_ADMIN\x10\xc6\x8d\xb7\x01\x12\x1b\n\x14ROLE_IAM_USER_VIEWER\x10\xc7\x8d\xb7\x01\x12\x18\n\x11ROLE_STUDIO_ADMIN\x10\x80\x92\xf4\x01\x12\x19\n\x12ROLE_STUDIO_VIEWER\x10\x81\x92\xf4\x01\x12#\n\x1cROLE_STUDIO_INSTRUMENT_ADMIN\x10\x82\x92\xf4\x01\x12$\n\x1dROLE_STUDIO_INSTRUMENT_VIEWER\x10\x83\x92\xf4\x01\x12\x19\n\x12ROLE_TRADING_ADMIN\x10\xc0\x96\xb1\x02\x12\x1a\n\x13ROLE_TRADING_VIEWER\x10\xc1\x96\xb1\x02\x12\x1b\n\x14ROLE_REPORTING_ADMIN\x10\x80\x9b\xee\x02\x12\x1c\n\x15ROLE_REPORTING_VIEWER\x10\x81\x9b\xee\x02\x12\x18\n\x11ROLE_LEDGER_ADMIN\x10\xc0\x9f\xab\x03\x12\x19\n\x12ROLE_LEDGER_VIEWER\x10\xc1\x9f\xab\x03\x12$\n\x1dROLE_LEDGER_TRANSACTION_ADMIN\x10\xc2\x9f\xab\x03\x12%\n\x1eROLE_LEDGER_TRANSACTION_VIEWER\x10\xc3\x9f\xab\x03:g\n\rmessage_roles\x12\x1f.google.protobuf.MessageOptions\x18\xd6\x86\x03 \x01(\x0b\x32\x1f.meshtrade.iam.role.v1.RoleListR\x0cmessageRoles:W\n\x05roles\x12\x1e.google.protobuf.MethodOptions\x18\xd5\x86\x03 \x01(\x0b\x32\x1f.meshtrade.iam.role.v1.RoleListR\x05rolesBO\n\x1c\x63o.meshtrade.api.iam.role.v1Z/github.com/meshtrade/api/go/iam/role/v1;role_v1b\x06proto3')
29
29
 
30
30
  _globals = globals()
31
31
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -34,7 +34,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
34
34
  _globals['DESCRIPTOR']._loaded_options = None
35
35
  _globals['DESCRIPTOR']._serialized_options = b'\n\034co.meshtrade.api.iam.role.v1Z/github.com/meshtrade/api/go/iam/role/v1;role_v1'
36
36
  _globals['_ROLE']._serialized_start=157
37
- _globals['_ROLE']._serialized_end=905
37
+ _globals['_ROLE']._serialized_end=1035
38
38
  _globals['_ROLELIST']._serialized_start=93
39
39
  _globals['_ROLELIST']._serialized_end=154
40
40
  # @@protoc_insertion_point(module_scope)
@@ -35,6 +35,10 @@ class Role(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
35
35
  ROLE_TRADING_VIEWER: _ClassVar[Role]
36
36
  ROLE_REPORTING_ADMIN: _ClassVar[Role]
37
37
  ROLE_REPORTING_VIEWER: _ClassVar[Role]
38
+ ROLE_LEDGER_ADMIN: _ClassVar[Role]
39
+ ROLE_LEDGER_VIEWER: _ClassVar[Role]
40
+ ROLE_LEDGER_TRANSACTION_ADMIN: _ClassVar[Role]
41
+ ROLE_LEDGER_TRANSACTION_VIEWER: _ClassVar[Role]
38
42
  ROLE_UNSPECIFIED: Role
39
43
  ROLE_WALLET_ADMIN: Role
40
44
  ROLE_WALLET_VIEWER: Role
@@ -60,6 +64,10 @@ ROLE_TRADING_ADMIN: Role
60
64
  ROLE_TRADING_VIEWER: Role
61
65
  ROLE_REPORTING_ADMIN: Role
62
66
  ROLE_REPORTING_VIEWER: Role
67
+ ROLE_LEDGER_ADMIN: Role
68
+ ROLE_LEDGER_VIEWER: Role
69
+ ROLE_LEDGER_TRANSACTION_ADMIN: Role
70
+ ROLE_LEDGER_TRANSACTION_VIEWER: Role
63
71
  MESSAGE_ROLES_FIELD_NUMBER: _ClassVar[int]
64
72
  message_roles: _descriptor.FieldDescriptor
65
73
  ROLES_FIELD_NUMBER: _ClassVar[int]
@@ -29,7 +29,7 @@ from meshtrade.option.v1 import method_type_pb2 as meshtrade_dot_option_dot_v1_d
29
29
  from meshtrade.type.v1 import sorting_pb2 as meshtrade_dot_type_dot_v1_dot_sorting__pb2
30
30
 
31
31
 
32
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#meshtrade/iam/user/v1/service.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a meshtrade/iam/role/v1/role.proto\x1a meshtrade/iam/user/v1/user.proto\x1a%meshtrade/option/v1/method_type.proto\x1a\x1fmeshtrade/type/v1/sorting.proto\"\xc3\x01\n\x17\x41ssignRoleToUserRequest\x12L\n\x04name\x18\x01 \x01(\tB8\xbaH5r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01 R\x04name\x12Z\n\x04role\x18\x04 \x01(\tBF\xbaHCr>29^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/1[0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"a\n\x0eGetUserRequest\x12O\n\x04name\x18\x01 \x01(\tB;\xbaH8r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01 \xc8\x01\x01R\x04name\"\x94\x02\n\x10ListUsersRequest\x12I\n\x07sorting\x18\x01 \x01(\x0b\x32/.meshtrade.iam.user.v1.ListUsersRequest.SortingR\x07sorting\x1a\xb4\x01\n\x07Sorting\x12r\n\x05\x66ield\x18\x01 \x01(\tB\\\xbaHYr\tR\x00R\x05\x65mail\xba\x01K\n\x0b\x66ield.valid\x12%field must be one of: email, or empty\x1a\x15this in [\'\', \'email\']R\x05\x66ield\x12\x35\n\x05order\x18\x02 \x01(\x0e\x32\x1f.meshtrade.type.v1.SortingOrderR\x05order\"F\n\x11ListUsersResponse\x12\x31\n\x05users\x18\x01 \x03(\x0b\x32\x1b.meshtrade.iam.user.v1.UserR\x05users\"\xae\x02\n\x12SearchUsersRequest\x12\x14\n\x05\x65mail\x18\x01 \x01(\tR\x05\x65mail\x12K\n\x07sorting\x18\x02 \x01(\x0b\x32\x31.meshtrade.iam.user.v1.SearchUsersRequest.SortingR\x07sorting\x1a\xb4\x01\n\x07Sorting\x12r\n\x05\x66ield\x18\x01 \x01(\tB\\\xbaHYr\tR\x00R\x05\x65mail\xba\x01K\n\x0b\x66ield.valid\x12%field must be one of: email, or empty\x1a\x15this in [\'\', \'email\']R\x05\x66ield\x12\x35\n\x05order\x18\x02 \x01(\x0e\x32\x1f.meshtrade.type.v1.SortingOrderR\x05order\"H\n\x13SearchUsersResponse\x12\x31\n\x05users\x18\x01 \x03(\x0b\x32\x1b.meshtrade.iam.user.v1.UserR\x05users\"L\n\x11\x43reateUserRequest\x12\x37\n\x04user\x18\x01 \x01(\x0b\x32\x1b.meshtrade.iam.user.v1.UserB\x06\xbaH\x03\xc8\x01\x01R\x04user\"L\n\x11UpdateUserRequest\x12\x37\n\x04user\x18\x01 \x01(\x0b\x32\x1b.meshtrade.iam.user.v1.UserB\x06\xbaH\x03\xc8\x01\x01R\x04user2\xbe\x05\n\x0bUserService\x12s\n\x10\x41ssignRoleToUser\x12..meshtrade.iam.user.v1.AssignRoleToUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x12i\n\x07GetUser\x12%.meshtrade.iam.user.v1.GetUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12z\n\tListUsers\x12\'.meshtrade.iam.user.v1.ListUsersRequest\x1a(.meshtrade.iam.user.v1.ListUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12\x80\x01\n\x0bSearchUsers\x12).meshtrade.iam.user.v1.SearchUsersRequest\x1a*.meshtrade.iam.user.v1.SearchUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12g\n\nCreateUser\x12(.meshtrade.iam.user.v1.CreateUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x12g\n\nUpdateUser\x12(.meshtrade.iam.user.v1.UpdateUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x42O\n\x1c\x63o.meshtrade.api.iam.user.v1Z/github.com/meshtrade/api/go/iam/user/v1;user_v1b\x06proto3')
32
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#meshtrade/iam/user/v1/service.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\x1a meshtrade/iam/role/v1/role.proto\x1a meshtrade/iam/user/v1/user.proto\x1a%meshtrade/option/v1/method_type.proto\x1a\x1fmeshtrade/type/v1/sorting.proto\"\xc7\x01\n\x17\x41ssignRoleToUserRequest\x12L\n\x04name\x18\x01 \x01(\tB8\xbaH5r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01 R\x04name\x12^\n\x04role\x18\x04 \x01(\tBJ\xbaHGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)\xc8\x01\x01R\x04role\"a\n\x0eGetUserRequest\x12O\n\x04name\x18\x01 \x01(\tB;\xbaH8r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01 \xc8\x01\x01R\x04name\"\x94\x02\n\x10ListUsersRequest\x12I\n\x07sorting\x18\x01 \x01(\x0b\x32/.meshtrade.iam.user.v1.ListUsersRequest.SortingR\x07sorting\x1a\xb4\x01\n\x07Sorting\x12r\n\x05\x66ield\x18\x01 \x01(\tB\\\xbaHYr\tR\x00R\x05\x65mail\xba\x01K\n\x0b\x66ield.valid\x12%field must be one of: email, or empty\x1a\x15this in [\'\', \'email\']R\x05\x66ield\x12\x35\n\x05order\x18\x02 \x01(\x0e\x32\x1f.meshtrade.type.v1.SortingOrderR\x05order\"F\n\x11ListUsersResponse\x12\x31\n\x05users\x18\x01 \x03(\x0b\x32\x1b.meshtrade.iam.user.v1.UserR\x05users\"\xae\x02\n\x12SearchUsersRequest\x12\x14\n\x05\x65mail\x18\x01 \x01(\tR\x05\x65mail\x12K\n\x07sorting\x18\x02 \x01(\x0b\x32\x31.meshtrade.iam.user.v1.SearchUsersRequest.SortingR\x07sorting\x1a\xb4\x01\n\x07Sorting\x12r\n\x05\x66ield\x18\x01 \x01(\tB\\\xbaHYr\tR\x00R\x05\x65mail\xba\x01K\n\x0b\x66ield.valid\x12%field must be one of: email, or empty\x1a\x15this in [\'\', \'email\']R\x05\x66ield\x12\x35\n\x05order\x18\x02 \x01(\x0e\x32\x1f.meshtrade.type.v1.SortingOrderR\x05order\"H\n\x13SearchUsersResponse\x12\x31\n\x05users\x18\x01 \x03(\x0b\x32\x1b.meshtrade.iam.user.v1.UserR\x05users\"L\n\x11\x43reateUserRequest\x12\x37\n\x04user\x18\x01 \x01(\x0b\x32\x1b.meshtrade.iam.user.v1.UserB\x06\xbaH\x03\xc8\x01\x01R\x04user\"L\n\x11UpdateUserRequest\x12\x37\n\x04user\x18\x01 \x01(\x0b\x32\x1b.meshtrade.iam.user.v1.UserB\x06\xbaH\x03\xc8\x01\x01R\x04user2\xbe\x05\n\x0bUserService\x12s\n\x10\x41ssignRoleToUser\x12..meshtrade.iam.user.v1.AssignRoleToUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x12i\n\x07GetUser\x12%.meshtrade.iam.user.v1.GetUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12z\n\tListUsers\x12\'.meshtrade.iam.user.v1.ListUsersRequest\x1a(.meshtrade.iam.user.v1.ListUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12\x80\x01\n\x0bSearchUsers\x12).meshtrade.iam.user.v1.SearchUsersRequest\x1a*.meshtrade.iam.user.v1.SearchUsersResponse\"\x1a\xa0\xb5\x18\x01\xaa\xb5\x18\x12\n\x10\xc0\x8d\xb7\x01\xc1\x8d\xb7\x01\xc6\x8d\xb7\x01\xc7\x8d\xb7\x01\x12g\n\nCreateUser\x12(.meshtrade.iam.user.v1.CreateUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x12g\n\nUpdateUser\x12(.meshtrade.iam.user.v1.UpdateUserRequest\x1a\x1b.meshtrade.iam.user.v1.User\"\x12\xa0\xb5\x18\x02\xaa\xb5\x18\n\n\x08\xc0\x8d\xb7\x01\xc6\x8d\xb7\x01\x42O\n\x1c\x63o.meshtrade.api.iam.user.v1Z/github.com/meshtrade/api/go/iam/user/v1;user_v1b\x06proto3')
33
33
 
34
34
  _globals = globals()
35
35
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -40,7 +40,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
40
40
  _globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['name']._loaded_options = None
41
41
  _globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H5r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001 '
42
42
  _globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['role']._loaded_options = None
43
- _globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HCr>29^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/1[0-9]{6}$\230\001)\310\001\001'
43
+ _globals['_ASSIGNROLETOUSERREQUEST'].fields_by_name['role']._serialized_options = b'\272HGrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)\310\001\001'
44
44
  _globals['_GETUSERREQUEST'].fields_by_name['name']._loaded_options = None
45
45
  _globals['_GETUSERREQUEST'].fields_by_name['name']._serialized_options = b'\272H8r32.^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\230\001 \310\001\001'
46
46
  _globals['_LISTUSERSREQUEST_SORTING'].fields_by_name['field']._loaded_options = None
@@ -64,25 +64,25 @@ if not _descriptor._USE_C_DESCRIPTORS:
64
64
  _globals['_USERSERVICE'].methods_by_name['UpdateUser']._loaded_options = None
65
65
  _globals['_USERSERVICE'].methods_by_name['UpdateUser']._serialized_options = b'\240\265\030\002\252\265\030\n\n\010\300\215\267\001\306\215\267\001'
66
66
  _globals['_ASSIGNROLETOUSERREQUEST']._serialized_start=232
67
- _globals['_ASSIGNROLETOUSERREQUEST']._serialized_end=427
68
- _globals['_GETUSERREQUEST']._serialized_start=429
69
- _globals['_GETUSERREQUEST']._serialized_end=526
70
- _globals['_LISTUSERSREQUEST']._serialized_start=529
71
- _globals['_LISTUSERSREQUEST']._serialized_end=805
72
- _globals['_LISTUSERSREQUEST_SORTING']._serialized_start=625
73
- _globals['_LISTUSERSREQUEST_SORTING']._serialized_end=805
74
- _globals['_LISTUSERSRESPONSE']._serialized_start=807
75
- _globals['_LISTUSERSRESPONSE']._serialized_end=877
76
- _globals['_SEARCHUSERSREQUEST']._serialized_start=880
77
- _globals['_SEARCHUSERSREQUEST']._serialized_end=1182
78
- _globals['_SEARCHUSERSREQUEST_SORTING']._serialized_start=625
79
- _globals['_SEARCHUSERSREQUEST_SORTING']._serialized_end=805
80
- _globals['_SEARCHUSERSRESPONSE']._serialized_start=1184
81
- _globals['_SEARCHUSERSRESPONSE']._serialized_end=1256
82
- _globals['_CREATEUSERREQUEST']._serialized_start=1258
83
- _globals['_CREATEUSERREQUEST']._serialized_end=1334
84
- _globals['_UPDATEUSERREQUEST']._serialized_start=1336
85
- _globals['_UPDATEUSERREQUEST']._serialized_end=1412
86
- _globals['_USERSERVICE']._serialized_start=1415
87
- _globals['_USERSERVICE']._serialized_end=2117
67
+ _globals['_ASSIGNROLETOUSERREQUEST']._serialized_end=431
68
+ _globals['_GETUSERREQUEST']._serialized_start=433
69
+ _globals['_GETUSERREQUEST']._serialized_end=530
70
+ _globals['_LISTUSERSREQUEST']._serialized_start=533
71
+ _globals['_LISTUSERSREQUEST']._serialized_end=809
72
+ _globals['_LISTUSERSREQUEST_SORTING']._serialized_start=629
73
+ _globals['_LISTUSERSREQUEST_SORTING']._serialized_end=809
74
+ _globals['_LISTUSERSRESPONSE']._serialized_start=811
75
+ _globals['_LISTUSERSRESPONSE']._serialized_end=881
76
+ _globals['_SEARCHUSERSREQUEST']._serialized_start=884
77
+ _globals['_SEARCHUSERSREQUEST']._serialized_end=1186
78
+ _globals['_SEARCHUSERSREQUEST_SORTING']._serialized_start=629
79
+ _globals['_SEARCHUSERSREQUEST_SORTING']._serialized_end=809
80
+ _globals['_SEARCHUSERSRESPONSE']._serialized_start=1188
81
+ _globals['_SEARCHUSERSRESPONSE']._serialized_end=1260
82
+ _globals['_CREATEUSERREQUEST']._serialized_start=1262
83
+ _globals['_CREATEUSERREQUEST']._serialized_end=1338
84
+ _globals['_UPDATEUSERREQUEST']._serialized_start=1340
85
+ _globals['_UPDATEUSERREQUEST']._serialized_end=1416
86
+ _globals['_USERSERVICE']._serialized_start=1419
87
+ _globals['_USERSERVICE']._serialized_end=2121
88
88
  # @@protoc_insertion_point(module_scope)
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
25
25
  from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
26
26
 
27
27
 
28
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/user/v1/user.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\"\x99\x03\n\x04User\x12\xba\x01\n\x04name\x18\x01 \x01(\tB\xa5\x01\xbaH\xa1\x01\xba\x01\x9d\x01\n\x14name.format.optional\x12\x32name must be empty or in the format users/{ULIDv2}\x1aQsize(this) == 0 || this.matches(\'^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\')R\x04name\x12R\n\x05owner\x18\x02 \x01(\tB<\xbaH9r42/^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01!\xc8\x01\x01R\x05owner\x12 \n\x05\x65mail\x18\x04 \x01(\tB\n\xbaH\x07r\x02`\x01\xc8\x01\x01R\x05\x65mail\x12^\n\x05roles\x18\x06 \x03(\tBH\xbaHE\x92\x01\x42\"@r>29^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/1[0-9]{6}$\x98\x01)R\x05rolesBO\n\x1c\x63o.meshtrade.api.iam.user.v1Z/github.com/meshtrade/api/go/iam/user/v1;user_v1b\x06proto3')
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n meshtrade/iam/user/v1/user.proto\x12\x15meshtrade.iam.user.v1\x1a\x1b\x62uf/validate/validate.proto\"\x9d\x03\n\x04User\x12\xba\x01\n\x04name\x18\x01 \x01(\tB\xa5\x01\xbaH\xa1\x01\xba\x01\x9d\x01\n\x14name.format.optional\x12\x32name must be empty or in the format users/{ULIDv2}\x1aQsize(this) == 0 || this.matches(\'^users/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\')R\x04name\x12R\n\x05owner\x18\x02 \x01(\tB<\xbaH9r42/^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$\x98\x01!\xc8\x01\x01R\x05owner\x12 \n\x05\x65mail\x18\x04 \x01(\tB\n\xbaH\x07r\x02`\x01\xc8\x01\x01R\x05\x65mail\x12\x62\n\x05roles\x18\x06 \x03(\tBL\xbaHI\x92\x01\x46\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\x98\x01)R\x05rolesBO\n\x1c\x63o.meshtrade.api.iam.user.v1Z/github.com/meshtrade/api/go/iam/user/v1;user_v1b\x06proto3')
29
29
 
30
30
  _globals = globals()
31
31
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -40,7 +40,7 @@ if not _descriptor._USE_C_DESCRIPTORS:
40
40
  _globals['_USER'].fields_by_name['email']._loaded_options = None
41
41
  _globals['_USER'].fields_by_name['email']._serialized_options = b'\272H\007r\002`\001\310\001\001'
42
42
  _globals['_USER'].fields_by_name['roles']._loaded_options = None
43
- _globals['_USER'].fields_by_name['roles']._serialized_options = b'\272HE\222\001B\"@r>29^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/1[0-9]{6}$\230\001)'
43
+ _globals['_USER'].fields_by_name['roles']._serialized_options = b'\272HI\222\001F\"DrB2=^groups/[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}/[1-9][0-9]{6}$\230\001)'
44
44
  _globals['_USER']._serialized_start=89
45
- _globals['_USER']._serialized_end=498
45
+ _globals['_USER']._serialized_end=502
46
46
  # @@protoc_insertion_point(module_scope)
@@ -13,8 +13,22 @@
13
13
  # ===================================================================
14
14
 
15
15
  # Generated protobuf imports
16
- from .transaction_action_pb2 import TransactionAction
17
16
  from .transaction_state_pb2 import TransactionState
17
+ from .service_pb2 import (
18
+ GetTransactionStateRequest,
19
+ GetTransactionStateResponse,
20
+ MonitorTransactionStateRequest,
21
+ MonitorTransactionStateResponse,
22
+ )
23
+ from .transaction_action_pb2 import TransactionAction
24
+
25
+ # Generated service imports
26
+ from .service_meshpy import (
27
+ TransactionService,
28
+ TransactionServiceGRPCClient,
29
+ TransactionServiceGRPCClientInterface,
30
+ )
31
+ from .service_options_meshpy import ClientOptions
18
32
 
19
33
  # ===================================================================
20
34
  # END OF AUTO-GENERATED SECTION
@@ -36,6 +50,14 @@ from .transaction_state_pb2 import TransactionState
36
50
  # Combined auto-generated and manual exports
37
51
  __all__ = [
38
52
  # Generated exports
53
+ "ClientOptions",
54
+ "GetTransactionStateRequest",
55
+ "GetTransactionStateResponse",
56
+ "MonitorTransactionStateRequest",
57
+ "MonitorTransactionStateResponse",
39
58
  "TransactionAction",
59
+ "TransactionService",
60
+ "TransactionServiceGRPCClient",
61
+ "TransactionServiceGRPCClientInterface",
40
62
  "TransactionState",
41
63
  ]