strongdm 15.29.0__tar.gz → 15.33.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.
Files changed (160) hide show
  1. {strongdm-15.29.0 → strongdm-15.33.0}/PKG-INFO +2 -2
  2. {strongdm-15.29.0 → strongdm-15.33.0}/setup.py +2 -2
  3. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_pb2.py +17 -11
  4. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/client.py +1 -1
  5. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/models.py +377 -8
  6. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/plumbing.py +152 -0
  7. strongdm-15.33.0/strongdm/secret_engine_types_pb2.py +295 -0
  8. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_store_types_pb2.py +33 -33
  9. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/svc.py +2 -0
  10. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm.egg-info/PKG-INFO +2 -2
  11. strongdm-15.29.0/strongdm/secret_engine_types_pb2.py +0 -195
  12. {strongdm-15.29.0 → strongdm-15.33.0}/LICENSE +0 -0
  13. {strongdm-15.29.0 → strongdm-15.33.0}/README.md +0 -0
  14. {strongdm-15.29.0 → strongdm-15.33.0}/setup.cfg +0 -0
  15. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/__init__.py +0 -0
  16. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/access_request_events_history_pb2.py +0 -0
  17. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
  18. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/access_requests_history_pb2.py +0 -0
  19. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
  20. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/access_requests_pb2.py +0 -0
  21. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/access_requests_pb2_grpc.py +0 -0
  22. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_attachments_history_pb2.py +0 -0
  23. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
  24. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_attachments_pb2.py +0 -0
  25. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
  26. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_grants_history_pb2.py +0 -0
  27. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
  28. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_grants_pb2.py +0 -0
  29. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_grants_pb2_grpc.py +0 -0
  30. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_permissions_pb2.py +0 -0
  31. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
  32. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_resources_history_pb2.py +0 -0
  33. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
  34. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_resources_pb2.py +0 -0
  35. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/account_resources_pb2_grpc.py +0 -0
  36. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_groups_history_pb2.py +0 -0
  37. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_groups_history_pb2_grpc.py +0 -0
  38. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_groups_pb2.py +0 -0
  39. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_groups_pb2_grpc.py +0 -0
  40. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_history_pb2.py +0 -0
  41. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
  42. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/accounts_pb2_grpc.py +0 -0
  43. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/activities_pb2.py +0 -0
  44. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/activities_pb2_grpc.py +0 -0
  45. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
  46. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
  47. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
  48. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
  49. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
  50. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
  51. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
  52. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
  53. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflows_history_pb2.py +0 -0
  54. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
  55. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflows_pb2.py +0 -0
  56. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
  57. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/constants.py +0 -0
  58. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/control_panel_pb2.py +0 -0
  59. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/control_panel_pb2_grpc.py +0 -0
  60. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/drivers_pb2.py +0 -0
  61. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/drivers_pb2_grpc.py +0 -0
  62. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/errors.py +0 -0
  63. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_history_pb2.py +0 -0
  64. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_history_pb2_grpc.py +0 -0
  65. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_pb2.py +0 -0
  66. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_pb2_grpc.py +0 -0
  67. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_roles_history_pb2.py +0 -0
  68. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_roles_history_pb2_grpc.py +0 -0
  69. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_roles_pb2.py +0 -0
  70. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/groups_roles_pb2_grpc.py +0 -0
  71. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/health_checks_pb2.py +0 -0
  72. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/health_checks_pb2_grpc.py +0 -0
  73. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_aliases_history_pb2.py +0 -0
  74. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
  75. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_aliases_pb2.py +0 -0
  76. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
  77. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_sets_history_pb2.py +0 -0
  78. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
  79. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_sets_pb2.py +0 -0
  80. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
  81. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/managed_secrets_pb2.py +0 -0
  82. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/managed_secrets_pb2_grpc.py +0 -0
  83. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/nodes_history_pb2.py +0 -0
  84. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
  85. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/nodes_pb2.py +0 -0
  86. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/nodes_pb2_grpc.py +0 -0
  87. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/options_pb2.py +0 -0
  88. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/options_pb2_grpc.py +0 -0
  89. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/organization_history_pb2.py +0 -0
  90. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/organization_history_pb2_grpc.py +0 -0
  91. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_group_nodes_pb2.py +0 -0
  92. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
  93. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_group_peers_pb2.py +0 -0
  94. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
  95. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_group_resources_pb2.py +0 -0
  96. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
  97. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_groups_pb2.py +0 -0
  98. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
  99. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/policies_history_pb2.py +0 -0
  100. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/policies_history_pb2_grpc.py +0 -0
  101. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/policies_pb2.py +0 -0
  102. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/policies_pb2_grpc.py +0 -0
  103. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
  104. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
  105. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/queries_pb2.py +0 -0
  106. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/queries_pb2_grpc.py +0 -0
  107. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identities_history_pb2.py +0 -0
  108. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
  109. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identities_pb2.py +0 -0
  110. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
  111. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
  112. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
  113. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identity_groups_pb2.py +0 -0
  114. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
  115. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/replays_pb2.py +0 -0
  116. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/replays_pb2_grpc.py +0 -0
  117. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/resources_history_pb2.py +0 -0
  118. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/resources_history_pb2_grpc.py +0 -0
  119. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/resources_pb2.py +0 -0
  120. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/resources_pb2_grpc.py +0 -0
  121. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/role_resources_history_pb2.py +0 -0
  122. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
  123. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/role_resources_pb2.py +0 -0
  124. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/role_resources_pb2_grpc.py +0 -0
  125. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/roles_history_pb2.py +0 -0
  126. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/roles_history_pb2_grpc.py +0 -0
  127. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/roles_pb2.py +0 -0
  128. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/roles_pb2_grpc.py +0 -0
  129. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_engine_policy_pb2.py +0 -0
  130. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
  131. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
  132. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_engines_pb2.py +0 -0
  133. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_engines_pb2_grpc.py +0 -0
  134. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_store_healths_pb2.py +0 -0
  135. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
  136. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
  137. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_stores_history_pb2.py +0 -0
  138. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
  139. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_stores_pb2.py +0 -0
  140. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
  141. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/spec_pb2.py +0 -0
  142. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/spec_pb2_grpc.py +0 -0
  143. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/tags_pb2.py +0 -0
  144. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/tags_pb2_grpc.py +0 -0
  145. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
  146. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
  147. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_approvers_pb2.py +0 -0
  148. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
  149. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_roles_history_pb2.py +0 -0
  150. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
  151. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_roles_pb2.py +0 -0
  152. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
  153. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflows_history_pb2.py +0 -0
  154. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
  155. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflows_pb2.py +0 -0
  156. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm/workflows_pb2_grpc.py +0 -0
  157. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm.egg-info/SOURCES.txt +0 -0
  158. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm.egg-info/dependency_links.txt +0 -0
  159. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm.egg-info/requires.txt +0 -0
  160. {strongdm-15.29.0 → strongdm-15.33.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strongdm
3
- Version: 15.29.0
3
+ Version: 15.33.0
4
4
  Summary: strongDM SDK for the Python programming language.
5
5
  Home-page: https://github.com/strongdm/strongdm-sdk-python
6
6
  Author: strongDM Team
7
7
  Author-email: sdk-feedback@strongdm.com
8
8
  License: apache-2.0
9
- Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.29.0.tar.gz
9
+ Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.33.0.tar.gz
10
10
  Keywords: strongDM,sdm,api,automation,security,audit,database,server,ssh,rdp
11
11
  Platform: UNKNOWN
12
12
  Classifier: Development Status :: 4 - Beta
@@ -23,7 +23,7 @@ from setuptools import setup
23
23
  setup(
24
24
  name='strongdm',
25
25
  packages=['strongdm'],
26
- version='15.29.0',
26
+ version='15.33.0',
27
27
  license='apache-2.0',
28
28
  description='strongDM SDK for the Python programming language.',
29
29
  long_description=long_description,
@@ -32,7 +32,7 @@ setup(
32
32
  author_email='sdk-feedback@strongdm.com',
33
33
  url='https://github.com/strongdm/strongdm-sdk-python',
34
34
  download_url=
35
- 'https://github.com/strongdm/strongdm-sdk-python/archive/v15.29.0.tar.gz',
35
+ 'https://github.com/strongdm/strongdm-sdk-python/archive/v15.33.0.tar.gz',
36
36
  keywords=[
37
37
  'strongDM', 'sdm', 'api', 'automation', 'security', 'audit',
38
38
  'database', 'server', 'ssh', 'rdp'
@@ -33,7 +33,7 @@ from . import spec_pb2 as spec__pb2
33
33
  from . import tags_pb2 as tags__pb2
34
34
 
35
35
 
36
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x61\x63\x63ounts.proto\x12\x02v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\roptions.proto\x1a\nspec.proto\x1a\ntags.proto\"i\n\x14\x41\x63\x63ountCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xf8\x02\n\x15\x41\x63\x63ountCreateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\x05token\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xf0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x04 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\x12<\n\naccess_key\x18\x05 \x01(\tB(\xf2\xf8\xb3\x07#\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider\x12<\n\nsecret_key\x18\x06 \x01(\tB(\xf2\xf8\xb3\x07#\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"Q\n\x11\x41\x63\x63ountGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd6\x01\n\x12\x41\x63\x63ountGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"u\n\x14\x41\x63\x63ountUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\n\n\x02id\x18\x02 \x01(\t\x12(\n\x07\x61\x63\x63ount\x18\x03 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xdc\x01\n\x15\x41\x63\x63ountUpdateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"W\n\x14\x41\x63\x63ountDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xb2\x01\n\x15\x41\x63\x63ountDeleteResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"W\n\x12\x41\x63\x63ountListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xc1\x01\n\x13\x41\x63\x63ountListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12)\n\x08\x61\x63\x63ounts\x18\x02 \x03(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\"\x94\x02\n\x07\x41\x63\x63ount\x12$\n\x04user\x18\x01 \x01(\x0b\x32\x08.v1.UserB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12*\n\x07service\x18\x02 \x01(\x0b\x32\x0b.v1.ServiceB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12&\n\x05token\x18\x03 \x01(\x0b\x32\t.v1.TokenB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00:a\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\xfa\xf8\xb3\x07R\xc2\xf3\xb3\x07M\xa2\xf3\xb3\x07 tf_examples/account_resource.txt\xaa\xf3\xb3\x07#tf_examples/account_data_source.txtB,\n\x07\x61\x63\x63ount\x12!\xaa\xf8\xb3\x07\x0e\xaa\xf8\xb3\x07\tsuspended\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04tags\"\x92\x08\n\x04User\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\x05\x65mail\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12#\n\nfirst_name\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\tlast_name\x18\x04 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12*\n\tsuspended\x18\x05 \x01(\x08\x42\x17\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\x12\"\n\x04tags\x18\x06 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x36\n\x10permission_level\x18\x07 \x01(\tB\x1c\xf2\xf8\xb3\x07\x17\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\r!json_gateway\x12#\n\nmanaged_by\x18\x08 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12\x1f\n\x0b\x65xternal_id\x18\t \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\xdb\x01\n\x0bsuspendedRO\x18\n \x01(\x08\x42\xc5\x01\xf2\xf8\xb3\x07\xbf\x01\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\xaf\x01\xc2\xf4\xb3\x07\x0f\n\x02go\x12\tSuspended\xc2\xf4\xb3\x07\x10\n\x03\x63li\x12\tsuspended\xc2\xf4\xb3\x07\x11\n\x04ruby\x12\tsuspended\xc2\xf4\xb3\x07\x13\n\x06python\x12\tsuspended\xc2\xf4\xb3\x07\x11\n\x04java\x12\tSuspended\xc2\xf4\xb3\x07\x1f\n\x12terraform-provider\x12\tsuspended\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tsuspended\x98\xf4\xb3\x07\x01\x12\x90\x02\n\x12permission_levelRW\x18\x0b \x01(\tB\xf3\x01\xf2\xf8\xb3\x07\xed\x01\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\xdd\x01\xc2\xf4\xb3\x07\x15\n\x02go\x12\x0fPermissionLevel\xc2\xf4\xb3\x07\x17\n\x03\x63li\x12\x10permission-level\xc2\xf4\xb3\x07\x18\n\x04ruby\x12\x10permission_level\xc2\xf4\xb3\x07\x1a\n\x06python\x12\x10permission_level\xc2\xf4\xb3\x07\x17\n\x04java\x12\x0fPermissionLevel\xc2\xf4\xb3\x07&\n\x12terraform-provider\x12\x10permission_level\xc2\xf4\xb3\x07\x1f\n\x0cjson_gateway\x12\x0fpermissionLevel\xd0\xf4\xb3\x07\x01\x12?\n\x08password\x18\x0c \x01(\tB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\xe8\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider\x12#\n\x04SCIM\x18\r \x01(\tB\x15\xf2\xf8\xb3\x07\x10\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\x12$\n\nmanager_id\x18\x0e \x01(\tB\x10\xf2\xf8\xb3\x07\x0b\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\x12\x32\n\x13resolved_manager_id\x18\x0f \x01(\tB\x15\xf2\xf8\xb3\x07\x10\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x8f\x01\n\x07Service\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1d\n\tsuspended\x18\x03 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x04 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x81\x03\n\x05Token\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1d\n\tsuspended\x18\x03 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x04 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x37\n\x07rekeyed\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x38\n\x08\x64\x65\x61\x64line\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12 \n\x0c\x61\x63\x63ount_type\x18\x07 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x0bpermissions\x18\x08 \x03(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x37\n\x08\x64uration\x18\t \x01(\x0b\x32\x19.google.protobuf.DurationB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\x0f\xfa\xf8\xb3\x07\n\xa8\xf3\xb3\x07\x01\xd8\xf3\xb3\x07\x01\x32\xba\x04\n\x08\x41\x63\x63ounts\x12\x63\n\x06\x43reate\x12\x18.v1.AccountCreateRequest\x1a\x19.v1.AccountCreateResponse\"$\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x11\xaa\xf3\xb3\x07\x0c/v1/accounts\x12^\n\x03Get\x12\x15.v1.AccountGetRequest\x1a\x16.v1.AccountGetResponse\"(\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/accounts/{id}\x12g\n\x06Update\x12\x18.v1.AccountUpdateRequest\x1a\x19.v1.AccountUpdateResponse\"(\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/accounts/{id}\x12j\n\x06\x44\x65lete\x12\x18.v1.AccountDeleteRequest\x1a\x19.v1.AccountDeleteResponse\"+\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/accounts/{id}\x12\\\n\x04List\x12\x16.v1.AccountListRequest\x1a\x17.v1.AccountListResponse\"#\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x11\xaa\xf3\xb3\x07\x0c/v1/accounts\x1a\x36\xca\xf9\xb3\x07\x0c\xc2\xf9\xb3\x07\x07\x41\x63\x63ount\xca\xf9\xb3\x07\x07\xd2\xf9\xb3\x07\x02\x61-\xca\xf9\xb3\x07\x06\xca\xf9\xb3\x07\x01*\xca\xf9\xb3\x07\t\xca\xf9\xb3\x07\x04!cliBd\n\x19\x63om.strongdm.api.plumbingB\x10\x41\x63\x63ountsPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
36
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x61\x63\x63ounts.proto\x12\x02v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\roptions.proto\x1a\nspec.proto\x1a\ntags.proto\"i\n\x14\x41\x63\x63ountCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xf8\x02\n\x15\x41\x63\x63ountCreateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\x05token\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xf0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x04 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\x12<\n\naccess_key\x18\x05 \x01(\tB(\xf2\xf8\xb3\x07#\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider\x12<\n\nsecret_key\x18\x06 \x01(\tB(\xf2\xf8\xb3\x07#\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"Q\n\x11\x41\x63\x63ountGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd6\x01\n\x12\x41\x63\x63ountGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"u\n\x14\x41\x63\x63ountUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\n\n\x02id\x18\x02 \x01(\t\x12(\n\x07\x61\x63\x63ount\x18\x03 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xdc\x01\n\x15\x41\x63\x63ountUpdateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12(\n\x07\x61\x63\x63ount\x18\x02 \x01(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"W\n\x14\x41\x63\x63ountDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xb2\x01\n\x15\x41\x63\x63ountDeleteResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"W\n\x12\x41\x63\x63ountListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xc1\x01\n\x13\x41\x63\x63ountListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12)\n\x08\x61\x63\x63ounts\x18\x02 \x03(\x0b\x32\x0b.v1.AccountB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\"\xa8\x02\n\x07\x41\x63\x63ount\x12$\n\x04user\x18\x01 \x01(\x0b\x32\x08.v1.UserB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12*\n\x07service\x18\x02 \x01(\x0b\x32\x0b.v1.ServiceB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12&\n\x05token\x18\x03 \x01(\x0b\x32\t.v1.TokenB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00:a\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\xfa\xf8\xb3\x07R\xc2\xf3\xb3\x07M\xa2\xf3\xb3\x07 tf_examples/account_resource.txt\xaa\xf3\xb3\x07#tf_examples/account_data_source.txtB@\n\x07\x61\x63\x63ount\x12\x35\xaa\xf8\xb3\x07\x0e\xaa\xf8\xb3\x07\tsuspended\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04tags\xaa\xf8\xb3\x07\x0f\xaa\xf8\xb3\x07\ncreated_at\"\xd9\x08\n\x04User\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\x05\x65mail\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12#\n\nfirst_name\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\tlast_name\x18\x04 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12*\n\tsuspended\x18\x05 \x01(\x08\x42\x17\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\x12\"\n\x04tags\x18\x06 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x36\n\x10permission_level\x18\x07 \x01(\tB\x1c\xf2\xf8\xb3\x07\x17\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\r!json_gateway\x12#\n\nmanaged_by\x18\x08 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12\x1f\n\x0b\x65xternal_id\x18\t \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\xdb\x01\n\x0bsuspendedRO\x18\n \x01(\x08\x42\xc5\x01\xf2\xf8\xb3\x07\xbf\x01\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\xaf\x01\xc2\xf4\xb3\x07\x0f\n\x02go\x12\tSuspended\xc2\xf4\xb3\x07\x10\n\x03\x63li\x12\tsuspended\xc2\xf4\xb3\x07\x11\n\x04ruby\x12\tsuspended\xc2\xf4\xb3\x07\x13\n\x06python\x12\tsuspended\xc2\xf4\xb3\x07\x11\n\x04java\x12\tSuspended\xc2\xf4\xb3\x07\x1f\n\x12terraform-provider\x12\tsuspended\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tsuspended\x98\xf4\xb3\x07\x01\x12\x90\x02\n\x12permission_levelRW\x18\x0b \x01(\tB\xf3\x01\xf2\xf8\xb3\x07\xed\x01\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\xdd\x01\xc2\xf4\xb3\x07\x15\n\x02go\x12\x0fPermissionLevel\xc2\xf4\xb3\x07\x17\n\x03\x63li\x12\x10permission-level\xc2\xf4\xb3\x07\x18\n\x04ruby\x12\x10permission_level\xc2\xf4\xb3\x07\x1a\n\x06python\x12\x10permission_level\xc2\xf4\xb3\x07\x17\n\x04java\x12\x0fPermissionLevel\xc2\xf4\xb3\x07&\n\x12terraform-provider\x12\x10permission_level\xc2\xf4\xb3\x07\x1f\n\x0cjson_gateway\x12\x0fpermissionLevel\xd0\xf4\xb3\x07\x01\x12?\n\x08password\x18\x0c \x01(\tB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\xe8\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider\x12#\n\x04SCIM\x18\r \x01(\tB\x15\xf2\xf8\xb3\x07\x10\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\x12$\n\nmanager_id\x18\x0e \x01(\tB\x10\xf2\xf8\xb3\x07\x0b\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\x12\x32\n\x13resolved_manager_id\x18\x0f \x01(\tB\x15\xf2\xf8\xb3\x07\x10\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\x12\x45\n\ncreated_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x15\xf2\xf8\xb3\x07\x10\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xd0\x01\n\x07Service\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1d\n\tsuspended\x18\x03 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x04 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12?\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xc2\x03\n\x05Token\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1d\n\tsuspended\x18\x03 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x04 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x37\n\x07rekeyed\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x38\n\x08\x64\x65\x61\x64line\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12 \n\x0c\x61\x63\x63ount_type\x18\x07 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x0bpermissions\x18\x08 \x03(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x37\n\x08\x64uration\x18\t \x01(\x0b\x32\x19.google.protobuf.DurationB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12?\n\ncreated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01:\x0f\xfa\xf8\xb3\x07\n\xa8\xf3\xb3\x07\x01\xd8\xf3\xb3\x07\x01\x32\xba\x04\n\x08\x41\x63\x63ounts\x12\x63\n\x06\x43reate\x12\x18.v1.AccountCreateRequest\x1a\x19.v1.AccountCreateResponse\"$\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x11\xaa\xf3\xb3\x07\x0c/v1/accounts\x12^\n\x03Get\x12\x15.v1.AccountGetRequest\x1a\x16.v1.AccountGetResponse\"(\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/accounts/{id}\x12g\n\x06Update\x12\x18.v1.AccountUpdateRequest\x1a\x19.v1.AccountUpdateResponse\"(\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/accounts/{id}\x12j\n\x06\x44\x65lete\x12\x18.v1.AccountDeleteRequest\x1a\x19.v1.AccountDeleteResponse\"+\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/accounts/{id}\x12\\\n\x04List\x12\x16.v1.AccountListRequest\x1a\x17.v1.AccountListResponse\"#\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x11\xaa\xf3\xb3\x07\x0c/v1/accounts\x1a\x36\xca\xf9\xb3\x07\x0c\xc2\xf9\xb3\x07\x07\x41\x63\x63ount\xca\xf9\xb3\x07\x07\xd2\xf9\xb3\x07\x02\x61-\xca\xf9\xb3\x07\x06\xca\xf9\xb3\x07\x01*\xca\xf9\xb3\x07\t\xca\xf9\xb3\x07\x04!cliBd\n\x19\x63om.strongdm.api.plumbingB\x10\x41\x63\x63ountsPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
37
37
 
38
38
 
39
39
 
@@ -205,7 +205,7 @@ if _descriptor._USE_C_DESCRIPTORS == False:
205
205
  _ACCOUNTLISTRESPONSE.fields_by_name['rate_limit']._options = None
206
206
  _ACCOUNTLISTRESPONSE.fields_by_name['rate_limit']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001\362\370\263\007\006\262\364\263\007\001*\362\370\263\007\022\262\364\263\007\r!json_gateway'
207
207
  _ACCOUNT.oneofs_by_name['account']._options = None
208
- _ACCOUNT.oneofs_by_name['account']._serialized_options = b'\252\370\263\007\016\252\370\263\007\tsuspended\252\370\263\007\t\252\370\263\007\004tags'
208
+ _ACCOUNT.oneofs_by_name['account']._serialized_options = b'\252\370\263\007\016\252\370\263\007\tsuspended\252\370\263\007\t\252\370\263\007\004tags\252\370\263\007\017\252\370\263\007\ncreated_at'
209
209
  _ACCOUNT.fields_by_name['user']._options = None
210
210
  _ACCOUNT.fields_by_name['user']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
211
211
  _ACCOUNT.fields_by_name['service']._options = None
@@ -244,6 +244,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
244
244
  _USER.fields_by_name['manager_id']._serialized_options = b'\362\370\263\007\013\260\363\263\007\001\262\364\263\007\001*'
245
245
  _USER.fields_by_name['resolved_manager_id']._options = None
246
246
  _USER.fields_by_name['resolved_manager_id']._serialized_options = b'\362\370\263\007\020\260\363\263\007\001\230\364\263\007\001\262\364\263\007\001*'
247
+ _USER.fields_by_name['created_at']._options = None
248
+ _USER.fields_by_name['created_at']._serialized_options = b'\362\370\263\007\020\260\363\263\007\001\230\364\263\007\001\262\364\263\007\001*'
247
249
  _USER._options = None
248
250
  _USER._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
249
251
  _SERVICE.fields_by_name['id']._options = None
@@ -254,6 +256,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
254
256
  _SERVICE.fields_by_name['suspended']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
255
257
  _SERVICE.fields_by_name['tags']._options = None
256
258
  _SERVICE.fields_by_name['tags']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
259
+ _SERVICE.fields_by_name['created_at']._options = None
260
+ _SERVICE.fields_by_name['created_at']._serialized_options = b'\362\370\263\007\n\260\363\263\007\001\230\364\263\007\001'
257
261
  _SERVICE._options = None
258
262
  _SERVICE._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
259
263
  _TOKEN.fields_by_name['id']._options = None
@@ -274,6 +278,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
274
278
  _TOKEN.fields_by_name['permissions']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
275
279
  _TOKEN.fields_by_name['duration']._options = None
276
280
  _TOKEN.fields_by_name['duration']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
281
+ _TOKEN.fields_by_name['created_at']._options = None
282
+ _TOKEN.fields_by_name['created_at']._serialized_options = b'\362\370\263\007\n\260\363\263\007\001\230\364\263\007\001'
277
283
  _TOKEN._options = None
278
284
  _TOKEN._serialized_options = b'\372\370\263\007\n\250\363\263\007\001\330\363\263\007\001'
279
285
  _ACCOUNTS._options = None
@@ -309,13 +315,13 @@ if _descriptor._USE_C_DESCRIPTORS == False:
309
315
  _ACCOUNTLISTRESPONSE._serialized_start=1614
310
316
  _ACCOUNTLISTRESPONSE._serialized_end=1807
311
317
  _ACCOUNT._serialized_start=1810
312
- _ACCOUNT._serialized_end=2086
313
- _USER._serialized_start=2089
314
- _USER._serialized_end=3131
315
- _SERVICE._serialized_start=3134
316
- _SERVICE._serialized_end=3277
317
- _TOKEN._serialized_start=3280
318
- _TOKEN._serialized_end=3665
319
- _ACCOUNTS._serialized_start=3668
320
- _ACCOUNTS._serialized_end=4238
318
+ _ACCOUNT._serialized_end=2106
319
+ _USER._serialized_start=2109
320
+ _USER._serialized_end=3222
321
+ _SERVICE._serialized_start=3225
322
+ _SERVICE._serialized_end=3433
323
+ _TOKEN._serialized_start=3436
324
+ _TOKEN._serialized_end=3886
325
+ _ACCOUNTS._serialized_start=3889
326
+ _ACCOUNTS._serialized_end=4459
321
327
  # @@protoc_insertion_point(module_scope)
@@ -34,7 +34,7 @@ DEFAULT_MAX_RETRY_DELAY = 120 # 120 seconds
34
34
  DEFAULT_RETRY_FACTOR = 1.6
35
35
  DEFAULT_RETRY_JITTER = 0.2
36
36
  API_VERSION = '2025-04-14'
37
- USER_AGENT = 'strongdm-sdk-python/15.29.0'
37
+ USER_AGENT = 'strongdm-sdk-python/15.33.0'
38
38
 
39
39
 
40
40
  class Client:
@@ -21659,6 +21659,181 @@ class Mysql:
21659
21659
  )
21660
21660
 
21661
21661
 
21662
+ class MysqlEngine:
21663
+ __slots__ = [
21664
+ 'after_read_ttl',
21665
+ 'database',
21666
+ 'hostname',
21667
+ 'id',
21668
+ 'key_rotation_interval_days',
21669
+ 'name',
21670
+ 'password',
21671
+ 'policy',
21672
+ 'port',
21673
+ 'public_key',
21674
+ 'secret_store_id',
21675
+ 'secret_store_root_path',
21676
+ 'tags',
21677
+ 'tls',
21678
+ 'tls_skip_verify',
21679
+ 'ttl',
21680
+ 'username',
21681
+ ]
21682
+
21683
+ def __init__(
21684
+ self,
21685
+ after_read_ttl=None,
21686
+ database=None,
21687
+ hostname=None,
21688
+ id=None,
21689
+ key_rotation_interval_days=None,
21690
+ name=None,
21691
+ password=None,
21692
+ policy=None,
21693
+ port=None,
21694
+ public_key=None,
21695
+ secret_store_id=None,
21696
+ secret_store_root_path=None,
21697
+ tags=None,
21698
+ tls=None,
21699
+ tls_skip_verify=None,
21700
+ ttl=None,
21701
+ username=None,
21702
+ ):
21703
+ self.after_read_ttl = after_read_ttl if after_read_ttl is not None else None
21704
+ '''
21705
+ The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.
21706
+ '''
21707
+ self.database = database if database is not None else ''
21708
+ '''
21709
+ Database is the database to verify credential against.
21710
+ '''
21711
+ self.hostname = hostname if hostname is not None else ''
21712
+ '''
21713
+ Hostname is the hostname or IP address of the MySQL server.
21714
+ '''
21715
+ self.id = id if id is not None else ''
21716
+ '''
21717
+ Unique identifier of the Secret Engine.
21718
+ '''
21719
+ self.key_rotation_interval_days = key_rotation_interval_days if key_rotation_interval_days is not None else 0
21720
+ '''
21721
+ An interval of public/private key rotation for secret engine in days
21722
+ '''
21723
+ self.name = name if name is not None else ''
21724
+ '''
21725
+ Unique human-readable name of the Secret Engine.
21726
+ '''
21727
+ self.password = password if password is not None else ''
21728
+ '''
21729
+ Password is the password to connect to the MySQL server.
21730
+ '''
21731
+ self.policy = policy if policy is not None else None
21732
+ '''
21733
+ Policy for password creation
21734
+ '''
21735
+ self.port = port if port is not None else 0
21736
+ '''
21737
+ Port is the port number of the MySQL server.
21738
+ '''
21739
+ self.public_key = public_key if public_key is not None else b''
21740
+ '''
21741
+ Public key linked with a secret engine
21742
+ '''
21743
+ self.secret_store_id = secret_store_id if secret_store_id is not None else ''
21744
+ '''
21745
+ Backing secret store identifier
21746
+ '''
21747
+ self.secret_store_root_path = secret_store_root_path if secret_store_root_path is not None else ''
21748
+ '''
21749
+ Backing Secret Store root path where managed secrets are going to be stored
21750
+ '''
21751
+ self.tags = tags if tags is not None else _porcelain_zero_value_tags()
21752
+ '''
21753
+ Tags is a map of key, value pairs.
21754
+ '''
21755
+ self.tls = tls if tls is not None else False
21756
+ '''
21757
+ TLS enables TLS/SSL when connecting to the MySQL server.
21758
+ '''
21759
+ self.tls_skip_verify = tls_skip_verify if tls_skip_verify is not None else False
21760
+ '''
21761
+ TLS disable certificate verification
21762
+ '''
21763
+ self.ttl = ttl if ttl is not None else None
21764
+ '''
21765
+ The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.
21766
+ '''
21767
+ self.username = username if username is not None else ''
21768
+ '''
21769
+ Username is the username to connect to the MySQL server.
21770
+ '''
21771
+
21772
+ def __repr__(self):
21773
+ return '<sdm.MysqlEngine ' + \
21774
+ 'after_read_ttl: ' + repr(self.after_read_ttl) + ' ' +\
21775
+ 'database: ' + repr(self.database) + ' ' +\
21776
+ 'hostname: ' + repr(self.hostname) + ' ' +\
21777
+ 'id: ' + repr(self.id) + ' ' +\
21778
+ 'key_rotation_interval_days: ' + repr(self.key_rotation_interval_days) + ' ' +\
21779
+ 'name: ' + repr(self.name) + ' ' +\
21780
+ 'password: ' + repr(self.password) + ' ' +\
21781
+ 'policy: ' + repr(self.policy) + ' ' +\
21782
+ 'port: ' + repr(self.port) + ' ' +\
21783
+ 'public_key: ' + repr(self.public_key) + ' ' +\
21784
+ 'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
21785
+ 'secret_store_root_path: ' + repr(self.secret_store_root_path) + ' ' +\
21786
+ 'tags: ' + repr(self.tags) + ' ' +\
21787
+ 'tls: ' + repr(self.tls) + ' ' +\
21788
+ 'tls_skip_verify: ' + repr(self.tls_skip_verify) + ' ' +\
21789
+ 'ttl: ' + repr(self.ttl) + ' ' +\
21790
+ 'username: ' + repr(self.username) + ' ' +\
21791
+ '>'
21792
+
21793
+ def to_dict(self):
21794
+ return {
21795
+ 'after_read_ttl': self.after_read_ttl,
21796
+ 'database': self.database,
21797
+ 'hostname': self.hostname,
21798
+ 'id': self.id,
21799
+ 'key_rotation_interval_days': self.key_rotation_interval_days,
21800
+ 'name': self.name,
21801
+ 'password': self.password,
21802
+ 'policy': self.policy,
21803
+ 'port': self.port,
21804
+ 'public_key': self.public_key,
21805
+ 'secret_store_id': self.secret_store_id,
21806
+ 'secret_store_root_path': self.secret_store_root_path,
21807
+ 'tags': self.tags,
21808
+ 'tls': self.tls,
21809
+ 'tls_skip_verify': self.tls_skip_verify,
21810
+ 'ttl': self.ttl,
21811
+ 'username': self.username,
21812
+ }
21813
+
21814
+ @classmethod
21815
+ def from_dict(cls, d):
21816
+ return cls(
21817
+ after_read_ttl=d.get('after_read_ttl'),
21818
+ database=d.get('database'),
21819
+ hostname=d.get('hostname'),
21820
+ id=d.get('id'),
21821
+ key_rotation_interval_days=d.get('key_rotation_interval_days'),
21822
+ name=d.get('name'),
21823
+ password=d.get('password'),
21824
+ policy=d.get('policy'),
21825
+ port=d.get('port'),
21826
+ public_key=d.get('public_key'),
21827
+ secret_store_id=d.get('secret_store_id'),
21828
+ secret_store_root_path=d.get('secret_store_root_path'),
21829
+ tags=d.get('tags'),
21830
+ tls=d.get('tls'),
21831
+ tls_skip_verify=d.get('tls_skip_verify'),
21832
+ ttl=d.get('ttl'),
21833
+ username=d.get('username'),
21834
+ )
21835
+
21836
+
21662
21837
  class Neptune:
21663
21838
  __slots__ = [
21664
21839
  'bind_interface',
@@ -24332,10 +24507,6 @@ class Postgres:
24332
24507
 
24333
24508
 
24334
24509
  class PostgresEngine:
24335
- '''
24336
- PostgresEngine is currently unstable, and its API may change, or it may be removed,
24337
- without a major version bump.
24338
- '''
24339
24510
  __slots__ = [
24340
24511
  'after_read_ttl',
24341
24512
  'database',
@@ -31052,6 +31223,7 @@ class Service:
31052
31223
  directly, or granted via roles. Services are typically automated jobs.
31053
31224
  '''
31054
31225
  __slots__ = [
31226
+ 'created_at',
31055
31227
  'id',
31056
31228
  'name',
31057
31229
  'suspended',
@@ -31060,11 +31232,16 @@ class Service:
31060
31232
 
31061
31233
  def __init__(
31062
31234
  self,
31235
+ created_at=None,
31063
31236
  id=None,
31064
31237
  name=None,
31065
31238
  suspended=None,
31066
31239
  tags=None,
31067
31240
  ):
31241
+ self.created_at = created_at if created_at is not None else None
31242
+ '''
31243
+ CreatedAt is the timestamp when the service was created
31244
+ '''
31068
31245
  self.id = id if id is not None else ''
31069
31246
  '''
31070
31247
  Unique identifier of the Service.
@@ -31084,6 +31261,7 @@ class Service:
31084
31261
 
31085
31262
  def __repr__(self):
31086
31263
  return '<sdm.Service ' + \
31264
+ 'created_at: ' + repr(self.created_at) + ' ' +\
31087
31265
  'id: ' + repr(self.id) + ' ' +\
31088
31266
  'name: ' + repr(self.name) + ' ' +\
31089
31267
  'suspended: ' + repr(self.suspended) + ' ' +\
@@ -31092,6 +31270,7 @@ class Service:
31092
31270
 
31093
31271
  def to_dict(self):
31094
31272
  return {
31273
+ 'created_at': self.created_at,
31095
31274
  'id': self.id,
31096
31275
  'name': self.name,
31097
31276
  'suspended': self.suspended,
@@ -31101,6 +31280,7 @@ class Service:
31101
31280
  @classmethod
31102
31281
  def from_dict(cls, d):
31103
31282
  return cls(
31283
+ created_at=d.get('created_at'),
31104
31284
  id=d.get('id'),
31105
31285
  name=d.get('name'),
31106
31286
  suspended=d.get('suspended'),
@@ -31590,11 +31770,182 @@ class Snowsight:
31590
31770
  )
31591
31771
 
31592
31772
 
31773
+ class SqlserverEngine:
31774
+ __slots__ = [
31775
+ 'after_read_ttl',
31776
+ 'database',
31777
+ 'hostname',
31778
+ 'id',
31779
+ 'key_rotation_interval_days',
31780
+ 'name',
31781
+ 'password',
31782
+ 'policy',
31783
+ 'port',
31784
+ 'public_key',
31785
+ 'secret_store_id',
31786
+ 'secret_store_root_path',
31787
+ 'tags',
31788
+ 'tls',
31789
+ 'tls_skip_verify',
31790
+ 'ttl',
31791
+ 'username',
31792
+ ]
31793
+
31794
+ def __init__(
31795
+ self,
31796
+ after_read_ttl=None,
31797
+ database=None,
31798
+ hostname=None,
31799
+ id=None,
31800
+ key_rotation_interval_days=None,
31801
+ name=None,
31802
+ password=None,
31803
+ policy=None,
31804
+ port=None,
31805
+ public_key=None,
31806
+ secret_store_id=None,
31807
+ secret_store_root_path=None,
31808
+ tags=None,
31809
+ tls=None,
31810
+ tls_skip_verify=None,
31811
+ ttl=None,
31812
+ username=None,
31813
+ ):
31814
+ self.after_read_ttl = after_read_ttl if after_read_ttl is not None else None
31815
+ '''
31816
+ The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.
31817
+ '''
31818
+ self.database = database if database is not None else ''
31819
+ '''
31820
+ Database is the database to verify credential against.
31821
+ '''
31822
+ self.hostname = hostname if hostname is not None else ''
31823
+ '''
31824
+ Hostname is the hostname or IP address of the SQL Server.
31825
+ '''
31826
+ self.id = id if id is not None else ''
31827
+ '''
31828
+ Unique identifier of the Secret Engine.
31829
+ '''
31830
+ self.key_rotation_interval_days = key_rotation_interval_days if key_rotation_interval_days is not None else 0
31831
+ '''
31832
+ An interval of public/private key rotation for secret engine in days
31833
+ '''
31834
+ self.name = name if name is not None else ''
31835
+ '''
31836
+ Unique human-readable name of the Secret Engine.
31837
+ '''
31838
+ self.password = password if password is not None else ''
31839
+ '''
31840
+ Password is the password to connect to the SQL Server server.
31841
+ '''
31842
+ self.policy = policy if policy is not None else None
31843
+ '''
31844
+ Policy for password creation
31845
+ '''
31846
+ self.port = port if port is not None else 0
31847
+ '''
31848
+ Port is the port number of the SQL Server server.
31849
+ '''
31850
+ self.public_key = public_key if public_key is not None else b''
31851
+ '''
31852
+ Public key linked with a secret engine
31853
+ '''
31854
+ self.secret_store_id = secret_store_id if secret_store_id is not None else ''
31855
+ '''
31856
+ Backing secret store identifier
31857
+ '''
31858
+ self.secret_store_root_path = secret_store_root_path if secret_store_root_path is not None else ''
31859
+ '''
31860
+ Backing Secret Store root path where managed secrets are going to be stored
31861
+ '''
31862
+ self.tags = tags if tags is not None else _porcelain_zero_value_tags()
31863
+ '''
31864
+ Tags is a map of key, value pairs.
31865
+ '''
31866
+ self.tls = tls if tls is not None else False
31867
+ '''
31868
+ TLS enables TLS/SSL when connecting to the SQL Server server.
31869
+ '''
31870
+ self.tls_skip_verify = tls_skip_verify if tls_skip_verify is not None else False
31871
+ '''
31872
+ TLS disable certificate verification
31873
+ '''
31874
+ self.ttl = ttl if ttl is not None else None
31875
+ '''
31876
+ The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.
31877
+ '''
31878
+ self.username = username if username is not None else ''
31879
+ '''
31880
+ Username is the username to connect to the SQL Server.
31881
+ '''
31882
+
31883
+ def __repr__(self):
31884
+ return '<sdm.SqlserverEngine ' + \
31885
+ 'after_read_ttl: ' + repr(self.after_read_ttl) + ' ' +\
31886
+ 'database: ' + repr(self.database) + ' ' +\
31887
+ 'hostname: ' + repr(self.hostname) + ' ' +\
31888
+ 'id: ' + repr(self.id) + ' ' +\
31889
+ 'key_rotation_interval_days: ' + repr(self.key_rotation_interval_days) + ' ' +\
31890
+ 'name: ' + repr(self.name) + ' ' +\
31891
+ 'password: ' + repr(self.password) + ' ' +\
31892
+ 'policy: ' + repr(self.policy) + ' ' +\
31893
+ 'port: ' + repr(self.port) + ' ' +\
31894
+ 'public_key: ' + repr(self.public_key) + ' ' +\
31895
+ 'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
31896
+ 'secret_store_root_path: ' + repr(self.secret_store_root_path) + ' ' +\
31897
+ 'tags: ' + repr(self.tags) + ' ' +\
31898
+ 'tls: ' + repr(self.tls) + ' ' +\
31899
+ 'tls_skip_verify: ' + repr(self.tls_skip_verify) + ' ' +\
31900
+ 'ttl: ' + repr(self.ttl) + ' ' +\
31901
+ 'username: ' + repr(self.username) + ' ' +\
31902
+ '>'
31903
+
31904
+ def to_dict(self):
31905
+ return {
31906
+ 'after_read_ttl': self.after_read_ttl,
31907
+ 'database': self.database,
31908
+ 'hostname': self.hostname,
31909
+ 'id': self.id,
31910
+ 'key_rotation_interval_days': self.key_rotation_interval_days,
31911
+ 'name': self.name,
31912
+ 'password': self.password,
31913
+ 'policy': self.policy,
31914
+ 'port': self.port,
31915
+ 'public_key': self.public_key,
31916
+ 'secret_store_id': self.secret_store_id,
31917
+ 'secret_store_root_path': self.secret_store_root_path,
31918
+ 'tags': self.tags,
31919
+ 'tls': self.tls,
31920
+ 'tls_skip_verify': self.tls_skip_verify,
31921
+ 'ttl': self.ttl,
31922
+ 'username': self.username,
31923
+ }
31924
+
31925
+ @classmethod
31926
+ def from_dict(cls, d):
31927
+ return cls(
31928
+ after_read_ttl=d.get('after_read_ttl'),
31929
+ database=d.get('database'),
31930
+ hostname=d.get('hostname'),
31931
+ id=d.get('id'),
31932
+ key_rotation_interval_days=d.get('key_rotation_interval_days'),
31933
+ name=d.get('name'),
31934
+ password=d.get('password'),
31935
+ policy=d.get('policy'),
31936
+ port=d.get('port'),
31937
+ public_key=d.get('public_key'),
31938
+ secret_store_id=d.get('secret_store_id'),
31939
+ secret_store_root_path=d.get('secret_store_root_path'),
31940
+ tags=d.get('tags'),
31941
+ tls=d.get('tls'),
31942
+ tls_skip_verify=d.get('tls_skip_verify'),
31943
+ ttl=d.get('ttl'),
31944
+ username=d.get('username'),
31945
+ )
31946
+
31947
+
31593
31948
  class StrongVaultStore:
31594
- '''
31595
- StrongVaultStore is currently unstable, and its API may change, or it may be removed,
31596
- without a major version bump.
31597
- '''
31598
31949
  __slots__ = [
31599
31950
  'id',
31600
31951
  'name',
@@ -32134,6 +32485,7 @@ class Token:
32134
32485
  '''
32135
32486
  __slots__ = [
32136
32487
  'account_type',
32488
+ 'created_at',
32137
32489
  'deadline',
32138
32490
  'duration',
32139
32491
  'id',
@@ -32147,6 +32499,7 @@ class Token:
32147
32499
  def __init__(
32148
32500
  self,
32149
32501
  account_type=None,
32502
+ created_at=None,
32150
32503
  deadline=None,
32151
32504
  duration=None,
32152
32505
  id=None,
@@ -32160,6 +32513,10 @@ class Token:
32160
32513
  '''
32161
32514
  Corresponds to the type of token, e.g. api or admin-token.
32162
32515
  '''
32516
+ self.created_at = created_at if created_at is not None else None
32517
+ '''
32518
+ CreatedAt is the timestamp when the token was created
32519
+ '''
32163
32520
  self.deadline = deadline if deadline is not None else None
32164
32521
  '''
32165
32522
  The timestamp when the Token will expire.
@@ -32196,6 +32553,7 @@ class Token:
32196
32553
  def __repr__(self):
32197
32554
  return '<sdm.Token ' + \
32198
32555
  'account_type: ' + repr(self.account_type) + ' ' +\
32556
+ 'created_at: ' + repr(self.created_at) + ' ' +\
32199
32557
  'deadline: ' + repr(self.deadline) + ' ' +\
32200
32558
  'duration: ' + repr(self.duration) + ' ' +\
32201
32559
  'id: ' + repr(self.id) + ' ' +\
@@ -32209,6 +32567,7 @@ class Token:
32209
32567
  def to_dict(self):
32210
32568
  return {
32211
32569
  'account_type': self.account_type,
32570
+ 'created_at': self.created_at,
32212
32571
  'deadline': self.deadline,
32213
32572
  'duration': self.duration,
32214
32573
  'id': self.id,
@@ -32223,6 +32582,7 @@ class Token:
32223
32582
  def from_dict(cls, d):
32224
32583
  return cls(
32225
32584
  account_type=d.get('account_type'),
32585
+ created_at=d.get('created_at'),
32226
32586
  deadline=d.get('deadline'),
32227
32587
  duration=d.get('duration'),
32228
32588
  id=d.get('id'),
@@ -32419,6 +32779,7 @@ class User:
32419
32779
  '''
32420
32780
  __slots__ = [
32421
32781
  'scim',
32782
+ 'created_at',
32422
32783
  'email',
32423
32784
  'external_id',
32424
32785
  'first_name',
@@ -32436,6 +32797,7 @@ class User:
32436
32797
  def __init__(
32437
32798
  self,
32438
32799
  scim=None,
32800
+ created_at=None,
32439
32801
  email=None,
32440
32802
  external_id=None,
32441
32803
  first_name=None,
@@ -32453,6 +32815,10 @@ class User:
32453
32815
  '''
32454
32816
  SCIM contains the raw SCIM metadata for the user. This is a read-only field.
32455
32817
  '''
32818
+ self.created_at = created_at if created_at is not None else None
32819
+ '''
32820
+ CreatedAt is the timestamp when the user was created
32821
+ '''
32456
32822
  self.email = email if email is not None else ''
32457
32823
  '''
32458
32824
  The User's email address. Must be unique.
@@ -32508,6 +32874,7 @@ class User:
32508
32874
  def __repr__(self):
32509
32875
  return '<sdm.User ' + \
32510
32876
  'scim: ' + repr(self.scim) + ' ' +\
32877
+ 'created_at: ' + repr(self.created_at) + ' ' +\
32511
32878
  'email: ' + repr(self.email) + ' ' +\
32512
32879
  'external_id: ' + repr(self.external_id) + ' ' +\
32513
32880
  'first_name: ' + repr(self.first_name) + ' ' +\
@@ -32525,6 +32892,7 @@ class User:
32525
32892
  def to_dict(self):
32526
32893
  return {
32527
32894
  'scim': self.scim,
32895
+ 'created_at': self.created_at,
32528
32896
  'email': self.email,
32529
32897
  'external_id': self.external_id,
32530
32898
  'first_name': self.first_name,
@@ -32543,6 +32911,7 @@ class User:
32543
32911
  def from_dict(cls, d):
32544
32912
  return cls(
32545
32913
  scim=d.get('scim'),
32914
+ created_at=d.get('created_at'),
32546
32915
  email=d.get('email'),
32547
32916
  external_id=d.get('external_id'),
32548
32917
  first_name=d.get('first_name'),