arthur-client 1.4.0__py3-none-any.whl → 1.4.1186__py3-none-any.whl

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 (982) hide show
  1. arthur_client/__version__.py +1 -0
  2. arthur_client/api_bindings/__init__.py +334 -0
  3. arthur_client/api_bindings/api/__init__.py +30 -0
  4. arthur_client/api_bindings/api/alert_rules_v1_api.py +1930 -0
  5. arthur_client/api_bindings/api/alerts_v1_api.py +1042 -0
  6. arthur_client/api_bindings/api/authorization_v1_api.py +3926 -0
  7. arthur_client/api_bindings/api/connector_schemas_v1_api.py +559 -0
  8. arthur_client/api_bindings/api/connectors_v1_api.py +2165 -0
  9. arthur_client/api_bindings/api/data_plane_associations_v1_api.py +1699 -0
  10. arthur_client/api_bindings/api/data_planes_v1_api.py +1832 -0
  11. arthur_client/api_bindings/api/data_retrieval_v1_api.py +2403 -0
  12. arthur_client/api_bindings/api/datasets_v1_api.py +4346 -0
  13. arthur_client/api_bindings/api/default_api.py +284 -0
  14. arthur_client/api_bindings/api/feature_flags_v1_api.py +284 -0
  15. arthur_client/api_bindings/api/groups_v1_api.py +2803 -0
  16. arthur_client/api_bindings/api/jobs_v1_api.py +3809 -0
  17. arthur_client/api_bindings/api/metric_functions_v1_api.py +285 -0
  18. arthur_client/api_bindings/api/metrics_v1_api.py +1297 -0
  19. arthur_client/api_bindings/api/models_v1_api.py +2739 -0
  20. arthur_client/api_bindings/api/o_auth_v1_api.py +284 -0
  21. arthur_client/api_bindings/api/organizations_v1_api.py +827 -0
  22. arthur_client/api_bindings/api/projects_v1_api.py +1541 -0
  23. arthur_client/api_bindings/api/registration_v1_api.py +319 -0
  24. arthur_client/api_bindings/api/roles_v1_api.py +307 -0
  25. arthur_client/api_bindings/api/tasks_v1_api.py +3173 -0
  26. arthur_client/api_bindings/api/upsolve_v1_api.py +320 -0
  27. arthur_client/api_bindings/api/users_v1_api.py +2930 -0
  28. arthur_client/api_bindings/api/webhooks_v1_api.py +1843 -0
  29. arthur_client/api_bindings/api/workspaces_v1_api.py +1511 -0
  30. arthur_client/api_bindings/api_client.py +797 -0
  31. arthur_client/api_bindings/api_response.py +21 -0
  32. arthur_client/api_bindings/configuration.py +458 -0
  33. arthur_client/api_bindings/docs/AggregationMetricType.md +12 -0
  34. arthur_client/api_bindings/docs/AggregationSpec.md +31 -0
  35. arthur_client/api_bindings/docs/AggregationSpecSchema.md +34 -0
  36. arthur_client/api_bindings/docs/AggregationSpecSchemaInitArgsInner.md +39 -0
  37. arthur_client/api_bindings/docs/Alert.md +44 -0
  38. arthur_client/api_bindings/docs/AlertBound.md +12 -0
  39. arthur_client/api_bindings/docs/AlertCheckJobSpec.md +32 -0
  40. arthur_client/api_bindings/docs/AlertRule.md +41 -0
  41. arthur_client/api_bindings/docs/AlertRuleInterval.md +30 -0
  42. arthur_client/api_bindings/docs/AlertRuleNotificationWebhook.md +30 -0
  43. arthur_client/api_bindings/docs/AlertRuleSQLValidationResp.md +32 -0
  44. arthur_client/api_bindings/docs/AlertRuleSort.md +12 -0
  45. arthur_client/api_bindings/docs/AlertRulesV1Api.md +514 -0
  46. arthur_client/api_bindings/docs/AlertSort.md +12 -0
  47. arthur_client/api_bindings/docs/AlertWebhookCalled.md +31 -0
  48. arthur_client/api_bindings/docs/AlertsV1Api.md +268 -0
  49. arthur_client/api_bindings/docs/AuthorizationV1Api.md +1039 -0
  50. arthur_client/api_bindings/docs/AvailableDataset.md +39 -0
  51. arthur_client/api_bindings/docs/AvailableDatasetsSort.md +14 -0
  52. arthur_client/api_bindings/docs/BadRequestError.md +29 -0
  53. arthur_client/api_bindings/docs/BaseRole.md +31 -0
  54. arthur_client/api_bindings/docs/BoundMember.md +30 -0
  55. arthur_client/api_bindings/docs/BoundMemberKind.md +12 -0
  56. arthur_client/api_bindings/docs/BoundResource.md +31 -0
  57. arthur_client/api_bindings/docs/BoundResourceKind.md +16 -0
  58. arthur_client/api_bindings/docs/BoundRole.md +30 -0
  59. arthur_client/api_bindings/docs/Config.md +37 -0
  60. arthur_client/api_bindings/docs/ConflictError.md +29 -0
  61. arthur_client/api_bindings/docs/ConnectorCheckJobSpec.md +30 -0
  62. arthur_client/api_bindings/docs/ConnectorCheckOutcome.md +12 -0
  63. arthur_client/api_bindings/docs/ConnectorCheckResult.md +30 -0
  64. arthur_client/api_bindings/docs/ConnectorFieldDataType.md +16 -0
  65. arthur_client/api_bindings/docs/ConnectorPaginationOptions.md +30 -0
  66. arthur_client/api_bindings/docs/ConnectorSchemasV1Api.md +161 -0
  67. arthur_client/api_bindings/docs/ConnectorSpec.md +39 -0
  68. arthur_client/api_bindings/docs/ConnectorSpecField.md +30 -0
  69. arthur_client/api_bindings/docs/ConnectorSpecFieldWithMetadata.md +32 -0
  70. arthur_client/api_bindings/docs/ConnectorSpecSchema.md +34 -0
  71. arthur_client/api_bindings/docs/ConnectorSpecSchemaField.md +34 -0
  72. arthur_client/api_bindings/docs/ConnectorType.md +18 -0
  73. arthur_client/api_bindings/docs/ConnectorsSort.md +14 -0
  74. arthur_client/api_bindings/docs/ConnectorsV1Api.md +586 -0
  75. arthur_client/api_bindings/docs/CreateModelLinkTaskJobSpec.md +32 -0
  76. arthur_client/api_bindings/docs/CreateModelTaskJobSpec.md +33 -0
  77. arthur_client/api_bindings/docs/CreatedAlerts.md +30 -0
  78. arthur_client/api_bindings/docs/Credentials.md +32 -0
  79. arthur_client/api_bindings/docs/DType.md +28 -0
  80. arthur_client/api_bindings/docs/DataPlane.md +37 -0
  81. arthur_client/api_bindings/docs/DataPlaneAssociation.md +35 -0
  82. arthur_client/api_bindings/docs/DataPlaneAssociationSort.md +12 -0
  83. arthur_client/api_bindings/docs/DataPlaneAssociationsV1Api.md +443 -0
  84. arthur_client/api_bindings/docs/DataPlaneCapabilities.md +29 -0
  85. arthur_client/api_bindings/docs/DataPlaneSort.md +14 -0
  86. arthur_client/api_bindings/docs/DataPlanesV1Api.md +502 -0
  87. arthur_client/api_bindings/docs/DataResultFilter.md +31 -0
  88. arthur_client/api_bindings/docs/DataResultFilterOp.md +24 -0
  89. arthur_client/api_bindings/docs/DataRetrievalData.md +30 -0
  90. arthur_client/api_bindings/docs/DataRetrievalOperation.md +32 -0
  91. arthur_client/api_bindings/docs/DataRetrievalStatus.md +14 -0
  92. arthur_client/api_bindings/docs/DataRetrievalV1Api.md +656 -0
  93. arthur_client/api_bindings/docs/Dataset.md +39 -0
  94. arthur_client/api_bindings/docs/DatasetColumn.md +31 -0
  95. arthur_client/api_bindings/docs/DatasetConnector.md +31 -0
  96. arthur_client/api_bindings/docs/DatasetJoinKind.md +16 -0
  97. arthur_client/api_bindings/docs/DatasetJoinSpec.md +31 -0
  98. arthur_client/api_bindings/docs/DatasetListType.md +32 -0
  99. arthur_client/api_bindings/docs/DatasetLocator.md +29 -0
  100. arthur_client/api_bindings/docs/DatasetLocatorField.md +30 -0
  101. arthur_client/api_bindings/docs/DatasetLocatorFieldDataType.md +16 -0
  102. arthur_client/api_bindings/docs/DatasetLocatorSchema.md +29 -0
  103. arthur_client/api_bindings/docs/DatasetLocatorSchemaField.md +33 -0
  104. arthur_client/api_bindings/docs/DatasetObjectType.md +32 -0
  105. arthur_client/api_bindings/docs/DatasetReference.md +31 -0
  106. arthur_client/api_bindings/docs/DatasetScalarType.md +32 -0
  107. arthur_client/api_bindings/docs/DatasetSchema.md +31 -0
  108. arthur_client/api_bindings/docs/DatasetsSort.md +12 -0
  109. arthur_client/api_bindings/docs/DatasetsV1Api.md +1175 -0
  110. arthur_client/api_bindings/docs/DefaultApi.md +74 -0
  111. arthur_client/api_bindings/docs/Definition.md +34 -0
  112. arthur_client/api_bindings/docs/DeleteGroupMembership.md +29 -0
  113. arthur_client/api_bindings/docs/DeleteModelTaskJobSpec.md +30 -0
  114. arthur_client/api_bindings/docs/Dimension.md +30 -0
  115. arthur_client/api_bindings/docs/ExampleConfig.md +30 -0
  116. arthur_client/api_bindings/docs/ExamplesConfig.md +30 -0
  117. arthur_client/api_bindings/docs/ExtendedRole.md +39 -0
  118. arthur_client/api_bindings/docs/FeatureFlagsV1Api.md +73 -0
  119. arthur_client/api_bindings/docs/FetchDataJobSpec.md +36 -0
  120. arthur_client/api_bindings/docs/FetchModelTaskJobSpec.md +30 -0
  121. arthur_client/api_bindings/docs/GenerateMetricsSpecRequest.md +29 -0
  122. arthur_client/api_bindings/docs/Group.md +35 -0
  123. arthur_client/api_bindings/docs/GroupMembership.md +33 -0
  124. arthur_client/api_bindings/docs/GroupSort.md +14 -0
  125. arthur_client/api_bindings/docs/GroupsV1Api.md +756 -0
  126. arthur_client/api_bindings/docs/HTTPValidationError.md +29 -0
  127. arthur_client/api_bindings/docs/HealthStatus.md +29 -0
  128. arthur_client/api_bindings/docs/InfinitePagination.md +30 -0
  129. arthur_client/api_bindings/docs/InfiniteResourceListAlert.md +30 -0
  130. arthur_client/api_bindings/docs/InfiniteResourceListJob.md +30 -0
  131. arthur_client/api_bindings/docs/InternalServerError.md +29 -0
  132. arthur_client/api_bindings/docs/IntervalUnit.md +16 -0
  133. arthur_client/api_bindings/docs/InviteNewUser.md +31 -0
  134. arthur_client/api_bindings/docs/Items.md +34 -0
  135. arthur_client/api_bindings/docs/Items1.md +31 -0
  136. arthur_client/api_bindings/docs/Job.md +48 -0
  137. arthur_client/api_bindings/docs/JobDequeueParameters.md +29 -0
  138. arthur_client/api_bindings/docs/JobError.md +29 -0
  139. arthur_client/api_bindings/docs/JobErrors.md +29 -0
  140. arthur_client/api_bindings/docs/JobKind.md +34 -0
  141. arthur_client/api_bindings/docs/JobLog.md +31 -0
  142. arthur_client/api_bindings/docs/JobLogLevel.md +18 -0
  143. arthur_client/api_bindings/docs/JobLogs.md +29 -0
  144. arthur_client/api_bindings/docs/JobPriority.md +16 -0
  145. arthur_client/api_bindings/docs/JobRun.md +34 -0
  146. arthur_client/api_bindings/docs/JobSpec.md +49 -0
  147. arthur_client/api_bindings/docs/JobState.md +18 -0
  148. arthur_client/api_bindings/docs/JobTrigger.md +14 -0
  149. arthur_client/api_bindings/docs/JobsBatch.md +29 -0
  150. arthur_client/api_bindings/docs/JobsSort.md +14 -0
  151. arthur_client/api_bindings/docs/JobsV1Api.md +960 -0
  152. arthur_client/api_bindings/docs/JoinedDataset.md +32 -0
  153. arthur_client/api_bindings/docs/KeywordsConfig.md +29 -0
  154. arthur_client/api_bindings/docs/ListDatasetsJobSpec.md +30 -0
  155. arthur_client/api_bindings/docs/ListType.md +29 -0
  156. arthur_client/api_bindings/docs/MetricFunctionsV1Api.md +81 -0
  157. arthur_client/api_bindings/docs/MetricsArgSpec.md +30 -0
  158. arthur_client/api_bindings/docs/MetricsCalculationJobSpec.md +32 -0
  159. arthur_client/api_bindings/docs/MetricsColumnListParameterSchema.md +37 -0
  160. arthur_client/api_bindings/docs/MetricsColumnListParameterSchemaAllowedColumnTypesInner.md +31 -0
  161. arthur_client/api_bindings/docs/MetricsColumnParameterSchema.md +37 -0
  162. arthur_client/api_bindings/docs/MetricsDatasetParameterSchema.md +34 -0
  163. arthur_client/api_bindings/docs/MetricsLiteralParameterSchema.md +34 -0
  164. arthur_client/api_bindings/docs/MetricsQueryResult.md +29 -0
  165. arthur_client/api_bindings/docs/MetricsResultFilterOp.md +24 -0
  166. arthur_client/api_bindings/docs/MetricsUpload.md +30 -0
  167. arthur_client/api_bindings/docs/MetricsUploadMetricsInner.md +31 -0
  168. arthur_client/api_bindings/docs/MetricsUploadResult.md +32 -0
  169. arthur_client/api_bindings/docs/MetricsV1Api.md +346 -0
  170. arthur_client/api_bindings/docs/MetricsVersion.md +34 -0
  171. arthur_client/api_bindings/docs/MetricsVersionsSort.md +16 -0
  172. arthur_client/api_bindings/docs/Model.md +41 -0
  173. arthur_client/api_bindings/docs/ModelMetricSpec.md +30 -0
  174. arthur_client/api_bindings/docs/ModelMetricsSchedule.md +32 -0
  175. arthur_client/api_bindings/docs/ModelProblemType.md +18 -0
  176. arthur_client/api_bindings/docs/ModelsSort.md +14 -0
  177. arthur_client/api_bindings/docs/ModelsV1Api.md +742 -0
  178. arthur_client/api_bindings/docs/NewRuleRequest.md +33 -0
  179. arthur_client/api_bindings/docs/NotFoundError.md +29 -0
  180. arthur_client/api_bindings/docs/NumericMetric.md +30 -0
  181. arthur_client/api_bindings/docs/NumericPoint.md +30 -0
  182. arthur_client/api_bindings/docs/NumericTimeSeries.md +30 -0
  183. arthur_client/api_bindings/docs/OAuthV1Api.md +73 -0
  184. arthur_client/api_bindings/docs/ObjectType.md +29 -0
  185. arthur_client/api_bindings/docs/ObjectValue.md +34 -0
  186. arthur_client/api_bindings/docs/Organization.md +32 -0
  187. arthur_client/api_bindings/docs/OrganizationsV1Api.md +234 -0
  188. arthur_client/api_bindings/docs/PIIConfig.md +31 -0
  189. arthur_client/api_bindings/docs/Pagination.md +32 -0
  190. arthur_client/api_bindings/docs/PatchAlertRule.md +36 -0
  191. arthur_client/api_bindings/docs/PatchConnectorSpec.md +31 -0
  192. arthur_client/api_bindings/docs/PatchDataPlane.md +31 -0
  193. arthur_client/api_bindings/docs/PatchDataPlaneCapabilities.md +29 -0
  194. arthur_client/api_bindings/docs/PatchDataset.md +31 -0
  195. arthur_client/api_bindings/docs/PatchDatasetLocator.md +29 -0
  196. arthur_client/api_bindings/docs/PatchGroup.md +30 -0
  197. arthur_client/api_bindings/docs/PatchJob.md +29 -0
  198. arthur_client/api_bindings/docs/PatchModel.md +31 -0
  199. arthur_client/api_bindings/docs/PatchOrganization.md +29 -0
  200. arthur_client/api_bindings/docs/PatchProject.md +30 -0
  201. arthur_client/api_bindings/docs/PatchServiceAccountUser.md +29 -0
  202. arthur_client/api_bindings/docs/PatchTaskRequest.md +32 -0
  203. arthur_client/api_bindings/docs/PatchUser.md +32 -0
  204. arthur_client/api_bindings/docs/PatchWebhook.md +32 -0
  205. arthur_client/api_bindings/docs/PatchWorkspace.md +29 -0
  206. arthur_client/api_bindings/docs/Permission.md +31 -0
  207. arthur_client/api_bindings/docs/PermissionName.md +272 -0
  208. arthur_client/api_bindings/docs/PermissionRequestItem.md +31 -0
  209. arthur_client/api_bindings/docs/PermissionResponseItem.md +32 -0
  210. arthur_client/api_bindings/docs/PermissionsRequest.md +29 -0
  211. arthur_client/api_bindings/docs/PermissionsResponse.md +29 -0
  212. arthur_client/api_bindings/docs/PostAlert.md +37 -0
  213. arthur_client/api_bindings/docs/PostAlertRule.md +36 -0
  214. arthur_client/api_bindings/docs/PostAlerts.md +29 -0
  215. arthur_client/api_bindings/docs/PostConnectorSpec.md +33 -0
  216. arthur_client/api_bindings/docs/PostDataPlane.md +31 -0
  217. arthur_client/api_bindings/docs/PostDataPlaneAssociation.md +30 -0
  218. arthur_client/api_bindings/docs/PostDataRetrievalOperation.md +32 -0
  219. arthur_client/api_bindings/docs/PostDataset.md +33 -0
  220. arthur_client/api_bindings/docs/PostDatasetJoinSpec.md +33 -0
  221. arthur_client/api_bindings/docs/PostEndUser.md +33 -0
  222. arthur_client/api_bindings/docs/PostGlobalRoleBinding.md +31 -0
  223. arthur_client/api_bindings/docs/PostGroup.md +30 -0
  224. arthur_client/api_bindings/docs/PostGroupMembership.md +29 -0
  225. arthur_client/api_bindings/docs/PostJob.md +34 -0
  226. arthur_client/api_bindings/docs/PostJobBatch.md +29 -0
  227. arthur_client/api_bindings/docs/PostJobKind.md +21 -0
  228. arthur_client/api_bindings/docs/PostJobSpec.md +37 -0
  229. arthur_client/api_bindings/docs/PostLinkTaskRequest.md +31 -0
  230. arthur_client/api_bindings/docs/PostMetricsQuery.md +33 -0
  231. arthur_client/api_bindings/docs/PostMetricsQueryResultFilter.md +31 -0
  232. arthur_client/api_bindings/docs/PostMetricsQueryResultFilterAndGroup.md +29 -0
  233. arthur_client/api_bindings/docs/PostMetricsQueryResultFilterAndGroupAndInner.md +33 -0
  234. arthur_client/api_bindings/docs/PostMetricsQueryResultFilterOrGroup.md +29 -0
  235. arthur_client/api_bindings/docs/PostMetricsQueryResultFilterOrGroupOrInner.md +33 -0
  236. arthur_client/api_bindings/docs/PostMetricsQueryTimeRange.md +30 -0
  237. arthur_client/api_bindings/docs/PostMetricsVersions.md +30 -0
  238. arthur_client/api_bindings/docs/PostModel.md +33 -0
  239. arthur_client/api_bindings/docs/PostProject.md +30 -0
  240. arthur_client/api_bindings/docs/PostRoleBinding.md +31 -0
  241. arthur_client/api_bindings/docs/PostServiceAccount.md +29 -0
  242. arthur_client/api_bindings/docs/PostTaskRequest.md +32 -0
  243. arthur_client/api_bindings/docs/PostTaskValidationAPIKey.md +31 -0
  244. arthur_client/api_bindings/docs/PostUpsolveTenant.md +30 -0
  245. arthur_client/api_bindings/docs/PostWebhook.md +32 -0
  246. arthur_client/api_bindings/docs/PostWorkspace.md +29 -0
  247. arthur_client/api_bindings/docs/Project.md +35 -0
  248. arthur_client/api_bindings/docs/ProjectBoundResourceMetadata.md +30 -0
  249. arthur_client/api_bindings/docs/ProjectSort.md +14 -0
  250. arthur_client/api_bindings/docs/ProjectsV1Api.md +420 -0
  251. arthur_client/api_bindings/docs/PutAvailableDataset.md +33 -0
  252. arthur_client/api_bindings/docs/PutAvailableDatasets.md +29 -0
  253. arthur_client/api_bindings/docs/PutDatasetSchema.md +30 -0
  254. arthur_client/api_bindings/docs/PutJobState.md +29 -0
  255. arthur_client/api_bindings/docs/PutModelMetricSpec.md +29 -0
  256. arthur_client/api_bindings/docs/PutModelMetricsSchedule.md +31 -0
  257. arthur_client/api_bindings/docs/PutRetrievedData.md +29 -0
  258. arthur_client/api_bindings/docs/PutTaskConnectionInfo.md +30 -0
  259. arthur_client/api_bindings/docs/PutTaskStateCacheRequest.md +29 -0
  260. arthur_client/api_bindings/docs/RegenerateTaskValidationKeyJobSpec.md +30 -0
  261. arthur_client/api_bindings/docs/RegexConfig.md +29 -0
  262. arthur_client/api_bindings/docs/RegisterUser.md +29 -0
  263. arthur_client/api_bindings/docs/RegistrationV1Api.md +80 -0
  264. arthur_client/api_bindings/docs/ResourceKind.md +40 -0
  265. arthur_client/api_bindings/docs/ResourceListAggregationSpecSchema.md +30 -0
  266. arthur_client/api_bindings/docs/ResourceListAlertRule.md +30 -0
  267. arthur_client/api_bindings/docs/ResourceListAvailableDataset.md +30 -0
  268. arthur_client/api_bindings/docs/ResourceListConnectorSpec.md +30 -0
  269. arthur_client/api_bindings/docs/ResourceListConnectorType.md +30 -0
  270. arthur_client/api_bindings/docs/ResourceListDataPlane.md +30 -0
  271. arthur_client/api_bindings/docs/ResourceListDataPlaneAssociation.md +30 -0
  272. arthur_client/api_bindings/docs/ResourceListDataset.md +30 -0
  273. arthur_client/api_bindings/docs/ResourceListGroup.md +30 -0
  274. arthur_client/api_bindings/docs/ResourceListGroupMembership.md +30 -0
  275. arthur_client/api_bindings/docs/ResourceListJobError.md +30 -0
  276. arthur_client/api_bindings/docs/ResourceListJobLog.md +30 -0
  277. arthur_client/api_bindings/docs/ResourceListJobRun.md +30 -0
  278. arthur_client/api_bindings/docs/ResourceListMetricsVersion.md +30 -0
  279. arthur_client/api_bindings/docs/ResourceListModel.md +30 -0
  280. arthur_client/api_bindings/docs/ResourceListPermission.md +30 -0
  281. arthur_client/api_bindings/docs/ResourceListProject.md +30 -0
  282. arthur_client/api_bindings/docs/ResourceListRole.md +30 -0
  283. arthur_client/api_bindings/docs/ResourceListRoleBinding.md +30 -0
  284. arthur_client/api_bindings/docs/ResourceListUser.md +30 -0
  285. arthur_client/api_bindings/docs/ResourceListWebhook.md +30 -0
  286. arthur_client/api_bindings/docs/ResourceListWorkspace.md +30 -0
  287. arthur_client/api_bindings/docs/ResultFilter.md +34 -0
  288. arthur_client/api_bindings/docs/Role.md +39 -0
  289. arthur_client/api_bindings/docs/RoleBinding.md +36 -0
  290. arthur_client/api_bindings/docs/RoleSort.md +14 -0
  291. arthur_client/api_bindings/docs/RolesV1Api.md +87 -0
  292. arthur_client/api_bindings/docs/RuleResponse.md +38 -0
  293. arthur_client/api_bindings/docs/RuleResponseConfig.md +37 -0
  294. arthur_client/api_bindings/docs/RuleScope.md +12 -0
  295. arthur_client/api_bindings/docs/RuleType.md +26 -0
  296. arthur_client/api_bindings/docs/ScalarType.md +29 -0
  297. arthur_client/api_bindings/docs/ScheduleJobsJobSpec.md +31 -0
  298. arthur_client/api_bindings/docs/SchemaInspectionJobSpec.md +31 -0
  299. arthur_client/api_bindings/docs/ScopeSchemaTag.md +26 -0
  300. arthur_client/api_bindings/docs/SensitiveDataPlane.md +39 -0
  301. arthur_client/api_bindings/docs/SensitiveUser.md +41 -0
  302. arthur_client/api_bindings/docs/ServiceAccountCredentials.md +30 -0
  303. arthur_client/api_bindings/docs/SketchMetric.md +30 -0
  304. arthur_client/api_bindings/docs/SketchPoint.md +30 -0
  305. arthur_client/api_bindings/docs/SketchTimeSeries.md +30 -0
  306. arthur_client/api_bindings/docs/SortOrder.md +12 -0
  307. arthur_client/api_bindings/docs/TaskConnectionInfo.md +32 -0
  308. arthur_client/api_bindings/docs/TaskMutationResponse.md +29 -0
  309. arthur_client/api_bindings/docs/TaskReadResponse.md +31 -0
  310. arthur_client/api_bindings/docs/TaskResponse.md +33 -0
  311. arthur_client/api_bindings/docs/TaskValidationAPIKey.md +31 -0
  312. arthur_client/api_bindings/docs/TaskValidationKeyRegenerationResponse.md +29 -0
  313. arthur_client/api_bindings/docs/TasksV1Api.md +892 -0
  314. arthur_client/api_bindings/docs/ToxicityConfig.md +29 -0
  315. arthur_client/api_bindings/docs/UpdateModelTaskRulesJobSpec.md +34 -0
  316. arthur_client/api_bindings/docs/UpsolveToken.md +29 -0
  317. arthur_client/api_bindings/docs/UpsolveV1Api.md +88 -0
  318. arthur_client/api_bindings/docs/User.md +40 -0
  319. arthur_client/api_bindings/docs/UserCredentials.md +29 -0
  320. arthur_client/api_bindings/docs/UserServiceAccountCredentials.md +41 -0
  321. arthur_client/api_bindings/docs/UserSort.md +16 -0
  322. arthur_client/api_bindings/docs/UserType.md +14 -0
  323. arthur_client/api_bindings/docs/UsersV1Api.md +810 -0
  324. arthur_client/api_bindings/docs/ValidateAlertRuleQueryReq.md +29 -0
  325. arthur_client/api_bindings/docs/ValidationError.md +31 -0
  326. arthur_client/api_bindings/docs/ValidationErrorLocInner.md +28 -0
  327. arthur_client/api_bindings/docs/Webhook.md +37 -0
  328. arthur_client/api_bindings/docs/WebhookResponse.md +30 -0
  329. arthur_client/api_bindings/docs/WebhookResult.md +30 -0
  330. arthur_client/api_bindings/docs/WebhookSort.md +14 -0
  331. arthur_client/api_bindings/docs/WebhooksV1Api.md +503 -0
  332. arthur_client/api_bindings/docs/Workspace.md +33 -0
  333. arthur_client/api_bindings/docs/WorkspaceSort.md +14 -0
  334. arthur_client/api_bindings/docs/WorkspacesV1Api.md +416 -0
  335. arthur_client/api_bindings/exceptions.py +199 -0
  336. arthur_client/api_bindings/models/__init__.py +292 -0
  337. arthur_client/api_bindings/models/aggregation_metric_type.py +37 -0
  338. arthur_client/api_bindings/models/aggregation_spec.py +106 -0
  339. arthur_client/api_bindings/models/aggregation_spec_schema.py +113 -0
  340. arthur_client/api_bindings/models/aggregation_spec_schema_init_args_inner.py +164 -0
  341. arthur_client/api_bindings/models/alert.py +143 -0
  342. arthur_client/api_bindings/models/alert_bound.py +37 -0
  343. arthur_client/api_bindings/models/alert_check_job_spec.py +104 -0
  344. arthur_client/api_bindings/models/alert_rule.py +139 -0
  345. arthur_client/api_bindings/models/alert_rule_interval.py +90 -0
  346. arthur_client/api_bindings/models/alert_rule_notification_webhook.py +89 -0
  347. arthur_client/api_bindings/models/alert_rule_sort.py +37 -0
  348. arthur_client/api_bindings/models/alert_rule_sql_validation_resp.py +93 -0
  349. arthur_client/api_bindings/models/alert_sort.py +37 -0
  350. arthur_client/api_bindings/models/alert_webhook_called.py +95 -0
  351. arthur_client/api_bindings/models/available_dataset.py +151 -0
  352. arthur_client/api_bindings/models/available_datasets_sort.py +38 -0
  353. arthur_client/api_bindings/models/bad_request_error.py +87 -0
  354. arthur_client/api_bindings/models/base_role.py +96 -0
  355. arthur_client/api_bindings/models/bound_member.py +89 -0
  356. arthur_client/api_bindings/models/bound_member_kind.py +37 -0
  357. arthur_client/api_bindings/models/bound_resource.py +100 -0
  358. arthur_client/api_bindings/models/bound_resource_kind.py +39 -0
  359. arthur_client/api_bindings/models/bound_role.py +89 -0
  360. arthur_client/api_bindings/models/config.py +185 -0
  361. arthur_client/api_bindings/models/conflict_error.py +87 -0
  362. arthur_client/api_bindings/models/connector_check_job_spec.py +99 -0
  363. arthur_client/api_bindings/models/connector_check_outcome.py +37 -0
  364. arthur_client/api_bindings/models/connector_check_result.py +95 -0
  365. arthur_client/api_bindings/models/connector_field_data_type.py +39 -0
  366. arthur_client/api_bindings/models/connector_pagination_options.py +90 -0
  367. arthur_client/api_bindings/models/connector_spec.py +135 -0
  368. arthur_client/api_bindings/models/connector_spec_field.py +89 -0
  369. arthur_client/api_bindings/models/connector_spec_field_with_metadata.py +94 -0
  370. arthur_client/api_bindings/models/connector_spec_schema.py +111 -0
  371. arthur_client/api_bindings/models/connector_spec_schema_field.py +103 -0
  372. arthur_client/api_bindings/models/connector_type.py +40 -0
  373. arthur_client/api_bindings/models/connectors_sort.py +38 -0
  374. arthur_client/api_bindings/models/create_model_link_task_job_spec.py +108 -0
  375. arthur_client/api_bindings/models/create_model_task_job_spec.py +118 -0
  376. arthur_client/api_bindings/models/created_alerts.py +110 -0
  377. arthur_client/api_bindings/models/credentials.py +134 -0
  378. arthur_client/api_bindings/models/d_type.py +45 -0
  379. arthur_client/api_bindings/models/data_plane.py +113 -0
  380. arthur_client/api_bindings/models/data_plane_association.py +118 -0
  381. arthur_client/api_bindings/models/data_plane_association_sort.py +37 -0
  382. arthur_client/api_bindings/models/data_plane_capabilities.py +87 -0
  383. arthur_client/api_bindings/models/data_plane_sort.py +38 -0
  384. arthur_client/api_bindings/models/data_result_filter.py +97 -0
  385. arthur_client/api_bindings/models/data_result_filter_op.py +43 -0
  386. arthur_client/api_bindings/models/data_retrieval_data.py +94 -0
  387. arthur_client/api_bindings/models/data_retrieval_operation.py +103 -0
  388. arthur_client/api_bindings/models/data_retrieval_status.py +38 -0
  389. arthur_client/api_bindings/models/dataset.py +145 -0
  390. arthur_client/api_bindings/models/dataset_column.py +95 -0
  391. arthur_client/api_bindings/models/dataset_connector.py +92 -0
  392. arthur_client/api_bindings/models/dataset_join_kind.py +39 -0
  393. arthur_client/api_bindings/models/dataset_join_spec.py +99 -0
  394. arthur_client/api_bindings/models/dataset_list_type.py +105 -0
  395. arthur_client/api_bindings/models/dataset_locator.py +95 -0
  396. arthur_client/api_bindings/models/dataset_locator_field.py +89 -0
  397. arthur_client/api_bindings/models/dataset_locator_field_data_type.py +39 -0
  398. arthur_client/api_bindings/models/dataset_locator_schema.py +95 -0
  399. arthur_client/api_bindings/models/dataset_locator_schema_field.py +101 -0
  400. arthur_client/api_bindings/models/dataset_object_type.py +114 -0
  401. arthur_client/api_bindings/models/dataset_reference.py +97 -0
  402. arthur_client/api_bindings/models/dataset_scalar_type.py +100 -0
  403. arthur_client/api_bindings/models/dataset_schema.py +101 -0
  404. arthur_client/api_bindings/models/datasets_sort.py +37 -0
  405. arthur_client/api_bindings/models/definition.py +149 -0
  406. arthur_client/api_bindings/models/delete_group_membership.py +87 -0
  407. arthur_client/api_bindings/models/delete_model_task_job_spec.py +99 -0
  408. arthur_client/api_bindings/models/dimension.py +89 -0
  409. arthur_client/api_bindings/models/example_config.py +89 -0
  410. arthur_client/api_bindings/models/examples_config.py +102 -0
  411. arthur_client/api_bindings/models/extended_role.py +129 -0
  412. arthur_client/api_bindings/models/fetch_data_job_spec.py +134 -0
  413. arthur_client/api_bindings/models/fetch_model_task_job_spec.py +99 -0
  414. arthur_client/api_bindings/models/generate_metrics_spec_request.py +87 -0
  415. arthur_client/api_bindings/models/group.py +105 -0
  416. arthur_client/api_bindings/models/group_membership.py +100 -0
  417. arthur_client/api_bindings/models/group_sort.py +38 -0
  418. arthur_client/api_bindings/models/health_status.py +87 -0
  419. arthur_client/api_bindings/models/http_validation_error.py +95 -0
  420. arthur_client/api_bindings/models/infinite_pagination.py +89 -0
  421. arthur_client/api_bindings/models/infinite_resource_list_alert.py +101 -0
  422. arthur_client/api_bindings/models/infinite_resource_list_job.py +101 -0
  423. arthur_client/api_bindings/models/internal_server_error.py +87 -0
  424. arthur_client/api_bindings/models/interval_unit.py +39 -0
  425. arthur_client/api_bindings/models/invite_new_user.py +105 -0
  426. arthur_client/api_bindings/models/items.py +151 -0
  427. arthur_client/api_bindings/models/items1.py +151 -0
  428. arthur_client/api_bindings/models/job.py +178 -0
  429. arthur_client/api_bindings/models/job_dequeue_parameters.py +87 -0
  430. arthur_client/api_bindings/models/job_error.py +87 -0
  431. arthur_client/api_bindings/models/job_errors.py +95 -0
  432. arthur_client/api_bindings/models/job_kind.py +48 -0
  433. arthur_client/api_bindings/models/job_log.py +93 -0
  434. arthur_client/api_bindings/models/job_log_level.py +40 -0
  435. arthur_client/api_bindings/models/job_logs.py +95 -0
  436. arthur_client/api_bindings/models/job_priority.py +39 -0
  437. arthur_client/api_bindings/models/job_run.py +104 -0
  438. arthur_client/api_bindings/models/job_spec.py +299 -0
  439. arthur_client/api_bindings/models/job_state.py +40 -0
  440. arthur_client/api_bindings/models/job_trigger.py +38 -0
  441. arthur_client/api_bindings/models/jobs_batch.py +95 -0
  442. arthur_client/api_bindings/models/jobs_sort.py +38 -0
  443. arthur_client/api_bindings/models/joined_dataset.py +98 -0
  444. arthur_client/api_bindings/models/keywords_config.py +87 -0
  445. arthur_client/api_bindings/models/list_datasets_job_spec.py +99 -0
  446. arthur_client/api_bindings/models/list_type.py +93 -0
  447. arthur_client/api_bindings/models/metrics_arg_spec.py +94 -0
  448. arthur_client/api_bindings/models/metrics_calculation_job_spec.py +104 -0
  449. arthur_client/api_bindings/models/metrics_column_list_parameter_schema.py +127 -0
  450. arthur_client/api_bindings/models/metrics_column_list_parameter_schema_allowed_column_types_inner.py +151 -0
  451. arthur_client/api_bindings/models/metrics_column_parameter_schema.py +127 -0
  452. arthur_client/api_bindings/models/metrics_dataset_parameter_schema.py +113 -0
  453. arthur_client/api_bindings/models/metrics_literal_parameter_schema.py +108 -0
  454. arthur_client/api_bindings/models/metrics_query_result.py +87 -0
  455. arthur_client/api_bindings/models/metrics_result_filter_op.py +43 -0
  456. arthur_client/api_bindings/models/metrics_upload.py +95 -0
  457. arthur_client/api_bindings/models/metrics_upload_metrics_inner.py +134 -0
  458. arthur_client/api_bindings/models/metrics_upload_result.py +93 -0
  459. arthur_client/api_bindings/models/metrics_version.py +98 -0
  460. arthur_client/api_bindings/models/metrics_versions_sort.py +39 -0
  461. arthur_client/api_bindings/models/model.py +153 -0
  462. arthur_client/api_bindings/models/model_metric_spec.py +97 -0
  463. arthur_client/api_bindings/models/model_metrics_schedule.py +98 -0
  464. arthur_client/api_bindings/models/model_problem_type.py +40 -0
  465. arthur_client/api_bindings/models/models_sort.py +38 -0
  466. arthur_client/api_bindings/models/new_rule_request.py +104 -0
  467. arthur_client/api_bindings/models/not_found_error.py +87 -0
  468. arthur_client/api_bindings/models/numeric_metric.py +97 -0
  469. arthur_client/api_bindings/models/numeric_point.py +90 -0
  470. arthur_client/api_bindings/models/numeric_time_series.py +105 -0
  471. arthur_client/api_bindings/models/object_type.py +102 -0
  472. arthur_client/api_bindings/models/object_value.py +151 -0
  473. arthur_client/api_bindings/models/organization.py +94 -0
  474. arthur_client/api_bindings/models/pagination.py +93 -0
  475. arthur_client/api_bindings/models/patch_alert_rule.py +146 -0
  476. arthur_client/api_bindings/models/patch_connector_spec.py +109 -0
  477. arthur_client/api_bindings/models/patch_data_plane.py +110 -0
  478. arthur_client/api_bindings/models/patch_data_plane_capabilities.py +92 -0
  479. arthur_client/api_bindings/models/patch_dataset.py +111 -0
  480. arthur_client/api_bindings/models/patch_dataset_locator.py +100 -0
  481. arthur_client/api_bindings/models/patch_group.py +99 -0
  482. arthur_client/api_bindings/models/patch_job.py +92 -0
  483. arthur_client/api_bindings/models/patch_model.py +106 -0
  484. arthur_client/api_bindings/models/patch_organization.py +92 -0
  485. arthur_client/api_bindings/models/patch_project.py +99 -0
  486. arthur_client/api_bindings/models/patch_service_account_user.py +92 -0
  487. arthur_client/api_bindings/models/patch_task_request.py +101 -0
  488. arthur_client/api_bindings/models/patch_user.py +113 -0
  489. arthur_client/api_bindings/models/patch_webhook.py +113 -0
  490. arthur_client/api_bindings/models/patch_workspace.py +87 -0
  491. arthur_client/api_bindings/models/permission.py +93 -0
  492. arthur_client/api_bindings/models/permission_name.py +167 -0
  493. arthur_client/api_bindings/models/permission_request_item.py +93 -0
  494. arthur_client/api_bindings/models/permission_response_item.py +95 -0
  495. arthur_client/api_bindings/models/permissions_request.py +96 -0
  496. arthur_client/api_bindings/models/permissions_response.py +95 -0
  497. arthur_client/api_bindings/models/pii_config.py +106 -0
  498. arthur_client/api_bindings/models/post_alert.py +124 -0
  499. arthur_client/api_bindings/models/post_alert_rule.py +111 -0
  500. arthur_client/api_bindings/models/post_alerts.py +96 -0
  501. arthur_client/api_bindings/models/post_connector_spec.py +104 -0
  502. arthur_client/api_bindings/models/post_data_plane.py +95 -0
  503. arthur_client/api_bindings/models/post_data_plane_association.py +89 -0
  504. arthur_client/api_bindings/models/post_data_retrieval_operation.py +106 -0
  505. arthur_client/api_bindings/models/post_dataset.py +128 -0
  506. arthur_client/api_bindings/models/post_dataset_join_spec.py +96 -0
  507. arthur_client/api_bindings/models/post_end_user.py +105 -0
  508. arthur_client/api_bindings/models/post_global_role_binding.py +92 -0
  509. arthur_client/api_bindings/models/post_group.py +94 -0
  510. arthur_client/api_bindings/models/post_group_membership.py +87 -0
  511. arthur_client/api_bindings/models/post_job.py +124 -0
  512. arthur_client/api_bindings/models/post_job_batch.py +95 -0
  513. arthur_client/api_bindings/models/post_job_kind.py +41 -0
  514. arthur_client/api_bindings/models/post_job_spec.py +194 -0
  515. arthur_client/api_bindings/models/post_link_task_request.py +96 -0
  516. arthur_client/api_bindings/models/post_metrics_query.py +117 -0
  517. arthur_client/api_bindings/models/post_metrics_query_result_filter.py +97 -0
  518. arthur_client/api_bindings/models/post_metrics_query_result_filter_and_group.py +97 -0
  519. arthur_client/api_bindings/models/post_metrics_query_result_filter_and_group_and_inner.py +151 -0
  520. arthur_client/api_bindings/models/post_metrics_query_result_filter_or_group.py +97 -0
  521. arthur_client/api_bindings/models/post_metrics_query_result_filter_or_group_or_inner.py +151 -0
  522. arthur_client/api_bindings/models/post_metrics_query_time_range.py +90 -0
  523. arthur_client/api_bindings/models/post_metrics_versions.py +90 -0
  524. arthur_client/api_bindings/models/post_model.py +115 -0
  525. arthur_client/api_bindings/models/post_project.py +94 -0
  526. arthur_client/api_bindings/models/post_role_binding.py +101 -0
  527. arthur_client/api_bindings/models/post_service_account.py +87 -0
  528. arthur_client/api_bindings/models/post_task_request.py +107 -0
  529. arthur_client/api_bindings/models/post_task_validation_api_key.py +91 -0
  530. arthur_client/api_bindings/models/post_upsolve_tenant.py +90 -0
  531. arthur_client/api_bindings/models/post_webhook.py +93 -0
  532. arthur_client/api_bindings/models/post_workspace.py +87 -0
  533. arthur_client/api_bindings/models/project.py +105 -0
  534. arthur_client/api_bindings/models/project_bound_resource_metadata.py +89 -0
  535. arthur_client/api_bindings/models/project_sort.py +38 -0
  536. arthur_client/api_bindings/models/put_available_dataset.py +133 -0
  537. arthur_client/api_bindings/models/put_available_datasets.py +95 -0
  538. arthur_client/api_bindings/models/put_dataset_schema.py +97 -0
  539. arthur_client/api_bindings/models/put_job_state.py +88 -0
  540. arthur_client/api_bindings/models/put_model_metric_spec.py +95 -0
  541. arthur_client/api_bindings/models/put_model_metrics_schedule.py +96 -0
  542. arthur_client/api_bindings/models/put_retrieved_data.py +87 -0
  543. arthur_client/api_bindings/models/put_task_connection_info.py +93 -0
  544. arthur_client/api_bindings/models/put_task_state_cache_request.py +91 -0
  545. arthur_client/api_bindings/models/regenerate_task_validation_key_job_spec.py +99 -0
  546. arthur_client/api_bindings/models/regex_config.py +87 -0
  547. arthur_client/api_bindings/models/register_user.py +87 -0
  548. arthur_client/api_bindings/models/resource_kind.py +51 -0
  549. arthur_client/api_bindings/models/resource_list_aggregation_spec_schema.py +101 -0
  550. arthur_client/api_bindings/models/resource_list_alert_rule.py +101 -0
  551. arthur_client/api_bindings/models/resource_list_available_dataset.py +101 -0
  552. arthur_client/api_bindings/models/resource_list_connector_spec.py +101 -0
  553. arthur_client/api_bindings/models/resource_list_connector_type.py +94 -0
  554. arthur_client/api_bindings/models/resource_list_data_plane.py +101 -0
  555. arthur_client/api_bindings/models/resource_list_data_plane_association.py +101 -0
  556. arthur_client/api_bindings/models/resource_list_dataset.py +101 -0
  557. arthur_client/api_bindings/models/resource_list_group.py +101 -0
  558. arthur_client/api_bindings/models/resource_list_group_membership.py +101 -0
  559. arthur_client/api_bindings/models/resource_list_job_error.py +101 -0
  560. arthur_client/api_bindings/models/resource_list_job_log.py +101 -0
  561. arthur_client/api_bindings/models/resource_list_job_run.py +101 -0
  562. arthur_client/api_bindings/models/resource_list_metrics_version.py +101 -0
  563. arthur_client/api_bindings/models/resource_list_model.py +101 -0
  564. arthur_client/api_bindings/models/resource_list_permission.py +101 -0
  565. arthur_client/api_bindings/models/resource_list_project.py +101 -0
  566. arthur_client/api_bindings/models/resource_list_role.py +101 -0
  567. arthur_client/api_bindings/models/resource_list_role_binding.py +101 -0
  568. arthur_client/api_bindings/models/resource_list_user.py +101 -0
  569. arthur_client/api_bindings/models/resource_list_webhook.py +101 -0
  570. arthur_client/api_bindings/models/resource_list_workspace.py +101 -0
  571. arthur_client/api_bindings/models/result_filter.py +155 -0
  572. arthur_client/api_bindings/models/role.py +114 -0
  573. arthur_client/api_bindings/models/role_binding.py +116 -0
  574. arthur_client/api_bindings/models/role_sort.py +38 -0
  575. arthur_client/api_bindings/models/rule_response.py +121 -0
  576. arthur_client/api_bindings/models/rule_response_config.py +185 -0
  577. arthur_client/api_bindings/models/rule_scope.py +37 -0
  578. arthur_client/api_bindings/models/rule_type.py +44 -0
  579. arthur_client/api_bindings/models/scalar_type.py +88 -0
  580. arthur_client/api_bindings/models/schedule_jobs_job_spec.py +102 -0
  581. arthur_client/api_bindings/models/schema_inspection_job_spec.py +101 -0
  582. arthur_client/api_bindings/models/scope_schema_tag.py +44 -0
  583. arthur_client/api_bindings/models/sensitive_data_plane.py +117 -0
  584. arthur_client/api_bindings/models/sensitive_user.py +142 -0
  585. arthur_client/api_bindings/models/service_account_credentials.py +89 -0
  586. arthur_client/api_bindings/models/sketch_metric.py +97 -0
  587. arthur_client/api_bindings/models/sketch_point.py +90 -0
  588. arthur_client/api_bindings/models/sketch_time_series.py +105 -0
  589. arthur_client/api_bindings/models/sort_order.py +37 -0
  590. arthur_client/api_bindings/models/task_connection_info.py +98 -0
  591. arthur_client/api_bindings/models/task_mutation_response.py +87 -0
  592. arthur_client/api_bindings/models/task_read_response.py +106 -0
  593. arthur_client/api_bindings/models/task_response.py +103 -0
  594. arthur_client/api_bindings/models/task_validation_api_key.py +91 -0
  595. arthur_client/api_bindings/models/task_validation_key_regeneration_response.py +87 -0
  596. arthur_client/api_bindings/models/toxicity_config.py +100 -0
  597. arthur_client/api_bindings/models/update_model_task_rules_job_spec.py +115 -0
  598. arthur_client/api_bindings/models/upsolve_token.py +87 -0
  599. arthur_client/api_bindings/models/user.py +136 -0
  600. arthur_client/api_bindings/models/user_credentials.py +87 -0
  601. arthur_client/api_bindings/models/user_service_account_credentials.py +142 -0
  602. arthur_client/api_bindings/models/user_sort.py +39 -0
  603. arthur_client/api_bindings/models/user_type.py +38 -0
  604. arthur_client/api_bindings/models/validate_alert_rule_query_req.py +87 -0
  605. arthur_client/api_bindings/models/validation_error.py +99 -0
  606. arthur_client/api_bindings/models/validation_error_loc_inner.py +138 -0
  607. arthur_client/api_bindings/models/webhook.py +113 -0
  608. arthur_client/api_bindings/models/webhook_response.py +99 -0
  609. arthur_client/api_bindings/models/webhook_result.py +103 -0
  610. arthur_client/api_bindings/models/webhook_sort.py +38 -0
  611. arthur_client/api_bindings/models/workspace.py +96 -0
  612. arthur_client/api_bindings/models/workspace_sort.py +38 -0
  613. arthur_client/api_bindings/rest.py +257 -0
  614. arthur_client/api_bindings/test/test_aggregation_metric_type.py +33 -0
  615. arthur_client/api_bindings/test/test_aggregation_spec.py +72 -0
  616. arthur_client/api_bindings/test/test_aggregation_spec_schema.py +70 -0
  617. arthur_client/api_bindings/test/test_aggregation_spec_schema_init_args_inner.py +70 -0
  618. arthur_client/api_bindings/test/test_alert.py +84 -0
  619. arthur_client/api_bindings/test/test_alert_bound.py +33 -0
  620. arthur_client/api_bindings/test/test_alert_check_job_spec.py +57 -0
  621. arthur_client/api_bindings/test/test_alert_rule.py +98 -0
  622. arthur_client/api_bindings/test/test_alert_rule_interval.py +54 -0
  623. arthur_client/api_bindings/test/test_alert_rule_notification_webhook.py +54 -0
  624. arthur_client/api_bindings/test/test_alert_rule_sort.py +33 -0
  625. arthur_client/api_bindings/test/test_alert_rule_sql_validation_resp.py +58 -0
  626. arthur_client/api_bindings/test/test_alert_rules_v1_api.py +73 -0
  627. arthur_client/api_bindings/test/test_alert_sort.py +33 -0
  628. arthur_client/api_bindings/test/test_alert_webhook_called.py +64 -0
  629. arthur_client/api_bindings/test/test_alerts_v1_api.py +52 -0
  630. arthur_client/api_bindings/test/test_authorization_v1_api.py +115 -0
  631. arthur_client/api_bindings/test/test_available_dataset.py +94 -0
  632. arthur_client/api_bindings/test/test_available_datasets_sort.py +33 -0
  633. arthur_client/api_bindings/test/test_bad_request_error.py +51 -0
  634. arthur_client/api_bindings/test/test_base_role.py +56 -0
  635. arthur_client/api_bindings/test/test_bound_member.py +54 -0
  636. arthur_client/api_bindings/test/test_bound_member_kind.py +33 -0
  637. arthur_client/api_bindings/test/test_bound_resource.py +57 -0
  638. arthur_client/api_bindings/test/test_bound_resource_kind.py +33 -0
  639. arthur_client/api_bindings/test/test_bound_role.py +54 -0
  640. arthur_client/api_bindings/test/test_config.py +77 -0
  641. arthur_client/api_bindings/test/test_conflict_error.py +51 -0
  642. arthur_client/api_bindings/test/test_connector_check_job_spec.py +53 -0
  643. arthur_client/api_bindings/test/test_connector_check_outcome.py +33 -0
  644. arthur_client/api_bindings/test/test_connector_check_result.py +53 -0
  645. arthur_client/api_bindings/test/test_connector_field_data_type.py +33 -0
  646. arthur_client/api_bindings/test/test_connector_pagination_options.py +52 -0
  647. arthur_client/api_bindings/test/test_connector_schemas_v1_api.py +45 -0
  648. arthur_client/api_bindings/test/test_connector_spec.py +96 -0
  649. arthur_client/api_bindings/test/test_connector_spec_field.py +54 -0
  650. arthur_client/api_bindings/test/test_connector_spec_field_with_metadata.py +58 -0
  651. arthur_client/api_bindings/test/test_connector_spec_schema.py +102 -0
  652. arthur_client/api_bindings/test/test_connector_spec_schema_field.py +63 -0
  653. arthur_client/api_bindings/test/test_connector_type.py +33 -0
  654. arthur_client/api_bindings/test/test_connectors_sort.py +33 -0
  655. arthur_client/api_bindings/test/test_connectors_v1_api.py +80 -0
  656. arthur_client/api_bindings/test/test_create_model_link_task_job_spec.py +56 -0
  657. arthur_client/api_bindings/test/test_create_model_task_job_spec.py +72 -0
  658. arthur_client/api_bindings/test/test_created_alerts.py +102 -0
  659. arthur_client/api_bindings/test/test_credentials.py +56 -0
  660. arthur_client/api_bindings/test/test_d_type.py +33 -0
  661. arthur_client/api_bindings/test/test_data_plane.py +70 -0
  662. arthur_client/api_bindings/test/test_data_plane_association.py +79 -0
  663. arthur_client/api_bindings/test/test_data_plane_association_sort.py +33 -0
  664. arthur_client/api_bindings/test/test_data_plane_associations_v1_api.py +66 -0
  665. arthur_client/api_bindings/test/test_data_plane_capabilities.py +51 -0
  666. arthur_client/api_bindings/test/test_data_plane_sort.py +33 -0
  667. arthur_client/api_bindings/test/test_data_planes_v1_api.py +73 -0
  668. arthur_client/api_bindings/test/test_data_result_filter.py +56 -0
  669. arthur_client/api_bindings/test/test_data_result_filter_op.py +33 -0
  670. arthur_client/api_bindings/test/test_data_retrieval_data.py +54 -0
  671. arthur_client/api_bindings/test/test_data_retrieval_operation.py +59 -0
  672. arthur_client/api_bindings/test/test_data_retrieval_status.py +33 -0
  673. arthur_client/api_bindings/test/test_data_retrieval_v1_api.py +87 -0
  674. arthur_client/api_bindings/test/test_dataset.py +117 -0
  675. arthur_client/api_bindings/test/test_dataset_column.py +55 -0
  676. arthur_client/api_bindings/test/test_dataset_connector.py +56 -0
  677. arthur_client/api_bindings/test/test_dataset_join_kind.py +33 -0
  678. arthur_client/api_bindings/test/test_dataset_join_spec.py +71 -0
  679. arthur_client/api_bindings/test/test_dataset_list_type.py +57 -0
  680. arthur_client/api_bindings/test/test_dataset_locator.py +60 -0
  681. arthur_client/api_bindings/test/test_dataset_locator_field.py +54 -0
  682. arthur_client/api_bindings/test/test_dataset_locator_field_data_type.py +33 -0
  683. arthur_client/api_bindings/test/test_dataset_locator_schema.py +70 -0
  684. arthur_client/api_bindings/test/test_dataset_locator_schema_field.py +61 -0
  685. arthur_client/api_bindings/test/test_dataset_object_type.py +61 -0
  686. arthur_client/api_bindings/test/test_dataset_reference.py +56 -0
  687. arthur_client/api_bindings/test/test_dataset_scalar_type.py +57 -0
  688. arthur_client/api_bindings/test/test_dataset_schema.py +74 -0
  689. arthur_client/api_bindings/test/test_datasets_sort.py +33 -0
  690. arthur_client/api_bindings/test/test_datasets_v1_api.py +129 -0
  691. arthur_client/api_bindings/test/test_default_api.py +38 -0
  692. arthur_client/api_bindings/test/test_definition.py +65 -0
  693. arthur_client/api_bindings/test/test_delete_group_membership.py +56 -0
  694. arthur_client/api_bindings/test/test_delete_model_task_job_spec.py +53 -0
  695. arthur_client/api_bindings/test/test_dimension.py +54 -0
  696. arthur_client/api_bindings/test/test_example_config.py +54 -0
  697. arthur_client/api_bindings/test/test_examples_config.py +57 -0
  698. arthur_client/api_bindings/test/test_extended_role.py +92 -0
  699. arthur_client/api_bindings/test/test_feature_flags_v1_api.py +38 -0
  700. arthur_client/api_bindings/test/test_fetch_data_job_spec.py +77 -0
  701. arthur_client/api_bindings/test/test_fetch_model_task_job_spec.py +53 -0
  702. arthur_client/api_bindings/test/test_generate_metrics_spec_request.py +56 -0
  703. arthur_client/api_bindings/test/test_group.py +63 -0
  704. arthur_client/api_bindings/test/test_group_membership.py +74 -0
  705. arthur_client/api_bindings/test/test_group_sort.py +33 -0
  706. arthur_client/api_bindings/test/test_groups_v1_api.py +94 -0
  707. arthur_client/api_bindings/test/test_health_status.py +51 -0
  708. arthur_client/api_bindings/test/test_http_validation_error.py +58 -0
  709. arthur_client/api_bindings/test/test_infinite_pagination.py +52 -0
  710. arthur_client/api_bindings/test/test_infinite_resource_list_alert.py +98 -0
  711. arthur_client/api_bindings/test/test_infinite_resource_list_job.py +126 -0
  712. arthur_client/api_bindings/test/test_internal_server_error.py +51 -0
  713. arthur_client/api_bindings/test/test_interval_unit.py +33 -0
  714. arthur_client/api_bindings/test/test_invite_new_user.py +59 -0
  715. arthur_client/api_bindings/test/test_items.py +65 -0
  716. arthur_client/api_bindings/test/test_items1.py +60 -0
  717. arthur_client/api_bindings/test/test_job.py +94 -0
  718. arthur_client/api_bindings/test/test_job_dequeue_parameters.py +52 -0
  719. arthur_client/api_bindings/test/test_job_error.py +52 -0
  720. arthur_client/api_bindings/test/test_job_errors.py +58 -0
  721. arthur_client/api_bindings/test/test_job_kind.py +33 -0
  722. arthur_client/api_bindings/test/test_job_log.py +56 -0
  723. arthur_client/api_bindings/test/test_job_log_level.py +33 -0
  724. arthur_client/api_bindings/test/test_job_logs.py +62 -0
  725. arthur_client/api_bindings/test/test_job_priority.py +33 -0
  726. arthur_client/api_bindings/test/test_job_run.py +61 -0
  727. arthur_client/api_bindings/test/test_job_spec.py +124 -0
  728. arthur_client/api_bindings/test/test_job_state.py +33 -0
  729. arthur_client/api_bindings/test/test_job_trigger.py +33 -0
  730. arthur_client/api_bindings/test/test_jobs_batch.py +120 -0
  731. arthur_client/api_bindings/test/test_jobs_sort.py +33 -0
  732. arthur_client/api_bindings/test/test_jobs_v1_api.py +108 -0
  733. arthur_client/api_bindings/test/test_joined_dataset.py +58 -0
  734. arthur_client/api_bindings/test/test_keywords_config.py +56 -0
  735. arthur_client/api_bindings/test/test_list_datasets_job_spec.py +53 -0
  736. arthur_client/api_bindings/test/test_list_type.py +52 -0
  737. arthur_client/api_bindings/test/test_metric_functions_v1_api.py +38 -0
  738. arthur_client/api_bindings/test/test_metrics_arg_spec.py +54 -0
  739. arthur_client/api_bindings/test/test_metrics_calculation_job_spec.py +57 -0
  740. arthur_client/api_bindings/test/test_metrics_column_list_parameter_schema.py +67 -0
  741. arthur_client/api_bindings/test/test_metrics_column_list_parameter_schema_allowed_column_types_inner.py +60 -0
  742. arthur_client/api_bindings/test/test_metrics_column_parameter_schema.py +67 -0
  743. arthur_client/api_bindings/test/test_metrics_dataset_parameter_schema.py +59 -0
  744. arthur_client/api_bindings/test/test_metrics_literal_parameter_schema.py +60 -0
  745. arthur_client/api_bindings/test/test_metrics_query_result.py +56 -0
  746. arthur_client/api_bindings/test/test_metrics_result_filter_op.py +33 -0
  747. arthur_client/api_bindings/test/test_metrics_upload.py +56 -0
  748. arthur_client/api_bindings/test/test_metrics_upload_metrics_inner.py +104 -0
  749. arthur_client/api_bindings/test/test_metrics_upload_result.py +58 -0
  750. arthur_client/api_bindings/test/test_metrics_v1_api.py +59 -0
  751. arthur_client/api_bindings/test/test_metrics_version.py +62 -0
  752. arthur_client/api_bindings/test/test_metrics_versions_sort.py +33 -0
  753. arthur_client/api_bindings/test/test_model.py +133 -0
  754. arthur_client/api_bindings/test/test_model_metric_spec.py +80 -0
  755. arthur_client/api_bindings/test/test_model_metrics_schedule.py +57 -0
  756. arthur_client/api_bindings/test/test_model_problem_type.py +33 -0
  757. arthur_client/api_bindings/test/test_models_sort.py +33 -0
  758. arthur_client/api_bindings/test/test_models_v1_api.py +94 -0
  759. arthur_client/api_bindings/test/test_new_rule_request.py +59 -0
  760. arthur_client/api_bindings/test/test_not_found_error.py +51 -0
  761. arthur_client/api_bindings/test/test_numeric_metric.py +78 -0
  762. arthur_client/api_bindings/test/test_numeric_point.py +54 -0
  763. arthur_client/api_bindings/test/test_numeric_time_series.py +70 -0
  764. arthur_client/api_bindings/test/test_o_auth_v1_api.py +38 -0
  765. arthur_client/api_bindings/test/test_object_type.py +56 -0
  766. arthur_client/api_bindings/test/test_object_value.py +65 -0
  767. arthur_client/api_bindings/test/test_organization.py +58 -0
  768. arthur_client/api_bindings/test/test_organizations_v1_api.py +52 -0
  769. arthur_client/api_bindings/test/test_pagination.py +56 -0
  770. arthur_client/api_bindings/test/test_patch_alert_rule.py +62 -0
  771. arthur_client/api_bindings/test/test_patch_connector_spec.py +57 -0
  772. arthur_client/api_bindings/test/test_patch_data_plane.py +54 -0
  773. arthur_client/api_bindings/test/test_patch_data_plane_capabilities.py +51 -0
  774. arthur_client/api_bindings/test/test_patch_dataset.py +58 -0
  775. arthur_client/api_bindings/test/test_patch_dataset_locator.py +55 -0
  776. arthur_client/api_bindings/test/test_patch_group.py +52 -0
  777. arthur_client/api_bindings/test/test_patch_job.py +52 -0
  778. arthur_client/api_bindings/test/test_patch_model.py +55 -0
  779. arthur_client/api_bindings/test/test_patch_organization.py +51 -0
  780. arthur_client/api_bindings/test/test_patch_project.py +52 -0
  781. arthur_client/api_bindings/test/test_patch_service_account_user.py +51 -0
  782. arthur_client/api_bindings/test/test_patch_task_request.py +67 -0
  783. arthur_client/api_bindings/test/test_patch_user.py +54 -0
  784. arthur_client/api_bindings/test/test_patch_webhook.py +58 -0
  785. arthur_client/api_bindings/test/test_patch_workspace.py +52 -0
  786. arthur_client/api_bindings/test/test_permission.py +56 -0
  787. arthur_client/api_bindings/test/test_permission_name.py +33 -0
  788. arthur_client/api_bindings/test/test_permission_request_item.py +56 -0
  789. arthur_client/api_bindings/test/test_permission_response_item.py +58 -0
  790. arthur_client/api_bindings/test/test_permissions_request.py +62 -0
  791. arthur_client/api_bindings/test/test_permissions_response.py +64 -0
  792. arthur_client/api_bindings/test/test_pii_config.py +57 -0
  793. arthur_client/api_bindings/test/test_post_alert.py +71 -0
  794. arthur_client/api_bindings/test/test_post_alert_rule.py +70 -0
  795. arthur_client/api_bindings/test/test_post_alerts.py +78 -0
  796. arthur_client/api_bindings/test/test_post_connector_spec.py +67 -0
  797. arthur_client/api_bindings/test/test_post_data_plane.py +56 -0
  798. arthur_client/api_bindings/test/test_post_data_plane_association.py +54 -0
  799. arthur_client/api_bindings/test/test_post_data_retrieval_operation.py +63 -0
  800. arthur_client/api_bindings/test/test_post_dataset.py +75 -0
  801. arthur_client/api_bindings/test/test_post_dataset_join_spec.py +59 -0
  802. arthur_client/api_bindings/test/test_post_end_user.py +58 -0
  803. arthur_client/api_bindings/test/test_post_global_role_binding.py +56 -0
  804. arthur_client/api_bindings/test/test_post_group.py +53 -0
  805. arthur_client/api_bindings/test/test_post_group_membership.py +56 -0
  806. arthur_client/api_bindings/test/test_post_job.py +58 -0
  807. arthur_client/api_bindings/test/test_post_job_batch.py +68 -0
  808. arthur_client/api_bindings/test/test_post_job_kind.py +33 -0
  809. arthur_client/api_bindings/test/test_post_job_spec.py +65 -0
  810. arthur_client/api_bindings/test/test_post_link_task_request.py +55 -0
  811. arthur_client/api_bindings/test/test_post_metrics_query.py +63 -0
  812. arthur_client/api_bindings/test/test_post_metrics_query_result_filter.py +56 -0
  813. arthur_client/api_bindings/test/test_post_metrics_query_result_filter_and_group.py +56 -0
  814. arthur_client/api_bindings/test/test_post_metrics_query_result_filter_and_group_and_inner.py +68 -0
  815. arthur_client/api_bindings/test/test_post_metrics_query_result_filter_or_group.py +56 -0
  816. arthur_client/api_bindings/test/test_post_metrics_query_result_filter_or_group_or_inner.py +68 -0
  817. arthur_client/api_bindings/test/test_post_metrics_query_time_range.py +54 -0
  818. arthur_client/api_bindings/test/test_post_metrics_versions.py +54 -0
  819. arthur_client/api_bindings/test/test_post_model.py +75 -0
  820. arthur_client/api_bindings/test/test_post_project.py +53 -0
  821. arthur_client/api_bindings/test/test_post_role_binding.py +54 -0
  822. arthur_client/api_bindings/test/test_post_service_account.py +52 -0
  823. arthur_client/api_bindings/test/test_post_task_request.py +63 -0
  824. arthur_client/api_bindings/test/test_post_task_validation_api_key.py +56 -0
  825. arthur_client/api_bindings/test/test_post_upsolve_tenant.py +54 -0
  826. arthur_client/api_bindings/test/test_post_webhook.py +61 -0
  827. arthur_client/api_bindings/test/test_post_workspace.py +52 -0
  828. arthur_client/api_bindings/test/test_project.py +63 -0
  829. arthur_client/api_bindings/test/test_project_bound_resource_metadata.py +54 -0
  830. arthur_client/api_bindings/test/test_project_sort.py +33 -0
  831. arthur_client/api_bindings/test/test_projects_v1_api.py +66 -0
  832. arthur_client/api_bindings/test/test_put_available_dataset.py +74 -0
  833. arthur_client/api_bindings/test/test_put_available_datasets.py +104 -0
  834. arthur_client/api_bindings/test/test_put_dataset_schema.py +68 -0
  835. arthur_client/api_bindings/test/test_put_job_state.py +52 -0
  836. arthur_client/api_bindings/test/test_put_model_metric_spec.py +78 -0
  837. arthur_client/api_bindings/test/test_put_model_metrics_schedule.py +55 -0
  838. arthur_client/api_bindings/test/test_put_retrieved_data.py +52 -0
  839. arthur_client/api_bindings/test/test_put_task_connection_info.py +60 -0
  840. arthur_client/api_bindings/test/test_put_task_state_cache_request.py +86 -0
  841. arthur_client/api_bindings/test/test_regenerate_task_validation_key_job_spec.py +53 -0
  842. arthur_client/api_bindings/test/test_regex_config.py +56 -0
  843. arthur_client/api_bindings/test/test_register_user.py +52 -0
  844. arthur_client/api_bindings/test/test_registration_v1_api.py +38 -0
  845. arthur_client/api_bindings/test/test_resource_kind.py +33 -0
  846. arthur_client/api_bindings/test/test_resource_list_aggregation_spec_schema.py +86 -0
  847. arthur_client/api_bindings/test/test_resource_list_alert_rule.py +128 -0
  848. arthur_client/api_bindings/test/test_resource_list_available_dataset.py +144 -0
  849. arthur_client/api_bindings/test/test_resource_list_connector_spec.py +128 -0
  850. arthur_client/api_bindings/test/test_resource_list_connector_type.py +66 -0
  851. arthur_client/api_bindings/test/test_resource_list_data_plane.py +86 -0
  852. arthur_client/api_bindings/test/test_resource_list_data_plane_association.py +114 -0
  853. arthur_client/api_bindings/test/test_resource_list_dataset.py +150 -0
  854. arthur_client/api_bindings/test/test_resource_list_group.py +80 -0
  855. arthur_client/api_bindings/test/test_resource_list_group_membership.py +90 -0
  856. arthur_client/api_bindings/test/test_resource_list_job_error.py +68 -0
  857. arthur_client/api_bindings/test/test_resource_list_job_log.py +72 -0
  858. arthur_client/api_bindings/test/test_resource_list_job_run.py +78 -0
  859. arthur_client/api_bindings/test/test_resource_list_metrics_version.py +78 -0
  860. arthur_client/api_bindings/test/test_resource_list_model.py +168 -0
  861. arthur_client/api_bindings/test/test_resource_list_permission.py +72 -0
  862. arthur_client/api_bindings/test/test_resource_list_project.py +80 -0
  863. arthur_client/api_bindings/test/test_resource_list_role.py +96 -0
  864. arthur_client/api_bindings/test/test_resource_list_role_binding.py +100 -0
  865. arthur_client/api_bindings/test/test_resource_list_user.py +90 -0
  866. arthur_client/api_bindings/test/test_resource_list_webhook.py +116 -0
  867. arthur_client/api_bindings/test/test_resource_list_workspace.py +76 -0
  868. arthur_client/api_bindings/test/test_result_filter.py +68 -0
  869. arthur_client/api_bindings/test/test_role.py +80 -0
  870. arthur_client/api_bindings/test/test_role_binding.py +84 -0
  871. arthur_client/api_bindings/test/test_role_sort.py +33 -0
  872. arthur_client/api_bindings/test/test_roles_v1_api.py +38 -0
  873. arthur_client/api_bindings/test/test_rule_response.py +68 -0
  874. arthur_client/api_bindings/test/test_rule_response_config.py +77 -0
  875. arthur_client/api_bindings/test/test_rule_scope.py +33 -0
  876. arthur_client/api_bindings/test/test_rule_type.py +33 -0
  877. arthur_client/api_bindings/test/test_scalar_type.py +52 -0
  878. arthur_client/api_bindings/test/test_schedule_jobs_job_spec.py +55 -0
  879. arthur_client/api_bindings/test/test_schema_inspection_job_spec.py +55 -0
  880. arthur_client/api_bindings/test/test_scope_schema_tag.py +33 -0
  881. arthur_client/api_bindings/test/test_sensitive_data_plane.py +74 -0
  882. arthur_client/api_bindings/test/test_sensitive_user.py +72 -0
  883. arthur_client/api_bindings/test/test_service_account_credentials.py +54 -0
  884. arthur_client/api_bindings/test/test_sketch_metric.py +78 -0
  885. arthur_client/api_bindings/test/test_sketch_point.py +54 -0
  886. arthur_client/api_bindings/test/test_sketch_time_series.py +70 -0
  887. arthur_client/api_bindings/test/test_sort_order.py +33 -0
  888. arthur_client/api_bindings/test/test_task_connection_info.py +64 -0
  889. arthur_client/api_bindings/test/test_task_mutation_response.py +52 -0
  890. arthur_client/api_bindings/test/test_task_read_response.py +71 -0
  891. arthur_client/api_bindings/test/test_task_response.py +84 -0
  892. arthur_client/api_bindings/test/test_task_validation_api_key.py +56 -0
  893. arthur_client/api_bindings/test/test_task_validation_key_regeneration_response.py +52 -0
  894. arthur_client/api_bindings/test/test_tasks_v1_api.py +108 -0
  895. arthur_client/api_bindings/test/test_toxicity_config.py +51 -0
  896. arthur_client/api_bindings/test/test_update_model_task_rules_job_spec.py +70 -0
  897. arthur_client/api_bindings/test/test_upsolve_token.py +52 -0
  898. arthur_client/api_bindings/test/test_upsolve_v1_api.py +38 -0
  899. arthur_client/api_bindings/test/test_user.py +70 -0
  900. arthur_client/api_bindings/test/test_user_credentials.py +52 -0
  901. arthur_client/api_bindings/test/test_user_service_account_credentials.py +76 -0
  902. arthur_client/api_bindings/test/test_user_sort.py +33 -0
  903. arthur_client/api_bindings/test/test_user_type.py +33 -0
  904. arthur_client/api_bindings/test/test_users_v1_api.py +101 -0
  905. arthur_client/api_bindings/test/test_validate_alert_rule_query_req.py +52 -0
  906. arthur_client/api_bindings/test/test_validation_error.py +60 -0
  907. arthur_client/api_bindings/test/test_validation_error_loc_inner.py +50 -0
  908. arthur_client/api_bindings/test/test_webhook.py +82 -0
  909. arthur_client/api_bindings/test/test_webhook_response.py +54 -0
  910. arthur_client/api_bindings/test/test_webhook_result.py +58 -0
  911. arthur_client/api_bindings/test/test_webhook_sort.py +33 -0
  912. arthur_client/api_bindings/test/test_webhooks_v1_api.py +73 -0
  913. arthur_client/api_bindings/test/test_workspace.py +60 -0
  914. arthur_client/api_bindings/test/test_workspace_sort.py +33 -0
  915. arthur_client/api_bindings/test/test_workspaces_v1_api.py +66 -0
  916. arthur_client/api_bindings_README.md +514 -0
  917. arthur_client/auth/__init__.py +4 -0
  918. arthur_client/auth/constants.py +1 -0
  919. arthur_client/auth/device_authorizer.py +74 -0
  920. arthur_client/auth/discovery.py +40 -0
  921. arthur_client/auth/oauth_api_config.py +38 -0
  922. arthur_client/auth/session.py +84 -0
  923. arthur_client-1.4.1186.dist-info/METADATA +40 -0
  924. arthur_client-1.4.1186.dist-info/RECORD +927 -0
  925. {arthur_client-1.4.0.dist-info → arthur_client-1.4.1186.dist-info}/WHEEL +1 -2
  926. arthur/client/__init__.py +0 -3
  927. arthur/client/auth/helpers.py +0 -123
  928. arthur/client/auth/refresh.py +0 -67
  929. arthur/client/helpers.py +0 -48
  930. arthur/client/http/helper.py +0 -47
  931. arthur/client/http/requests.py +0 -654
  932. arthur/client/http/validation.py +0 -197
  933. arthur/client/rest/__init__.py +0 -16
  934. arthur/client/rest/admin/__init__.py +0 -2
  935. arthur/client/rest/admin/client.py +0 -330
  936. arthur/client/rest/admin/models.py +0 -457
  937. arthur/client/rest/alerts/__init__.py +0 -2
  938. arthur/client/rest/alerts/client.py +0 -589
  939. arthur/client/rest/alerts/models.py +0 -695
  940. arthur/client/rest/bench/__init__.py +0 -2
  941. arthur/client/rest/bench/client.py +0 -280
  942. arthur/client/rest/bench/models.py +0 -229
  943. arthur/client/rest/client.py +0 -158
  944. arthur/client/rest/common/__init__.py +0 -2
  945. arthur/client/rest/common/client.py +0 -25
  946. arthur/client/rest/common/models.py +0 -317
  947. arthur/client/rest/enrichments/__init__.py +0 -2
  948. arthur/client/rest/enrichments/client.py +0 -352
  949. arthur/client/rest/enrichments/models.py +0 -483
  950. arthur/client/rest/inferences/__init__.py +0 -2
  951. arthur/client/rest/inferences/client.py +0 -268
  952. arthur/client/rest/inferences/models.py +0 -432
  953. arthur/client/rest/insights/__init__.py +0 -2
  954. arthur/client/rest/insights/client.py +0 -199
  955. arthur/client/rest/insights/models.py +0 -182
  956. arthur/client/rest/metrics/__init__.py +0 -2
  957. arthur/client/rest/metrics/client.py +0 -296
  958. arthur/client/rest/metrics/models.py +0 -325
  959. arthur/client/rest/model_groups/__init__.py +0 -2
  960. arthur/client/rest/model_groups/client.py +0 -153
  961. arthur/client/rest/model_groups/models.py +0 -80
  962. arthur/client/rest/models/__init__.py +0 -2
  963. arthur/client/rest/models/client.py +0 -534
  964. arthur/client/rest/models/models.py +0 -565
  965. arthur/client/rest/query/__init__.py +0 -2
  966. arthur/client/rest/query/client.py +0 -123
  967. arthur/client/rest/query/models.py +0 -133
  968. arthur/client/rest/users/__init__.py +0 -2
  969. arthur/client/rest/users/client.py +0 -171
  970. arthur/client/rest/users/models.py +0 -317
  971. arthur/client/types.py +0 -9
  972. arthur/client/version.py +0 -2
  973. arthur/common/__init__.py +0 -3
  974. arthur/common/constants.py +0 -5
  975. arthur/common/exceptions.py +0 -183
  976. arthur/common/log.py +0 -79
  977. arthur_client-1.4.0.dist-info/LICENSE +0 -21
  978. arthur_client-1.4.0.dist-info/METADATA +0 -49
  979. arthur_client-1.4.0.dist-info/RECORD +0 -58
  980. arthur_client-1.4.0.dist-info/top_level.txt +0 -1
  981. {arthur/client/auth → arthur_client}/__init__.py +0 -0
  982. {arthur/client/http → arthur_client/api_bindings/test}/__init__.py +0 -0
@@ -0,0 +1,3926 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Arthur Scope
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from pydantic import Field, StrictBool, StrictStr
20
+ from typing import List, Optional
21
+ from typing_extensions import Annotated
22
+ from arthur_client.api_bindings.models.bound_member_kind import BoundMemberKind
23
+ from arthur_client.api_bindings.models.bound_resource_kind import BoundResourceKind
24
+ from arthur_client.api_bindings.models.permissions_request import PermissionsRequest
25
+ from arthur_client.api_bindings.models.permissions_response import PermissionsResponse
26
+ from arthur_client.api_bindings.models.post_role_binding import PostRoleBinding
27
+ from arthur_client.api_bindings.models.resource_list_permission import ResourceListPermission
28
+ from arthur_client.api_bindings.models.resource_list_role import ResourceListRole
29
+ from arthur_client.api_bindings.models.resource_list_role_binding import ResourceListRoleBinding
30
+ from arthur_client.api_bindings.models.role_binding import RoleBinding
31
+ from arthur_client.api_bindings.models.role_sort import RoleSort
32
+ from arthur_client.api_bindings.models.sort_order import SortOrder
33
+ from arthur_client.api_bindings.models.user_type import UserType
34
+
35
+ from arthur_client.api_bindings.api_client import ApiClient, RequestSerialized
36
+ from arthur_client.api_bindings.api_response import ApiResponse
37
+ from arthur_client.api_bindings.rest import RESTResponseType
38
+
39
+
40
+ class AuthorizationV1Api:
41
+ """NOTE: This class is auto generated by OpenAPI Generator
42
+ Ref: https://openapi-generator.tech
43
+
44
+ Do not edit the class manually.
45
+ """
46
+
47
+ def __init__(self, api_client=None) -> None:
48
+ if api_client is None:
49
+ api_client = ApiClient.get_default()
50
+ self.api_client = api_client
51
+
52
+
53
+ @validate_call
54
+ def check_permissions(
55
+ self,
56
+ permissions_request: PermissionsRequest,
57
+ _request_timeout: Union[
58
+ None,
59
+ Annotated[StrictFloat, Field(gt=0)],
60
+ Tuple[
61
+ Annotated[StrictFloat, Field(gt=0)],
62
+ Annotated[StrictFloat, Field(gt=0)]
63
+ ]
64
+ ] = None,
65
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
66
+ _content_type: Optional[StrictStr] = None,
67
+ _headers: Optional[Dict[StrictStr, Any]] = None,
68
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
69
+ ) -> PermissionsResponse:
70
+ """Check Permissions
71
+
72
+ Check given permissions and returns a list of allowed and not allowed permissions.
73
+
74
+ :param permissions_request: (required)
75
+ :type permissions_request: PermissionsRequest
76
+ :param _request_timeout: timeout setting for this request. If one
77
+ number provided, it will be total request
78
+ timeout. It can also be a pair (tuple) of
79
+ (connection, read) timeouts.
80
+ :type _request_timeout: int, tuple(int, int), optional
81
+ :param _request_auth: set to override the auth_settings for an a single
82
+ request; this effectively ignores the
83
+ authentication in the spec for a single request.
84
+ :type _request_auth: dict, optional
85
+ :param _content_type: force content-type for the request.
86
+ :type _content_type: str, Optional
87
+ :param _headers: set to override the headers for a single
88
+ request; this effectively ignores the headers
89
+ in the spec for a single request.
90
+ :type _headers: dict, optional
91
+ :param _host_index: set to override the host_index for a single
92
+ request; this effectively ignores the host_index
93
+ in the spec for a single request.
94
+ :type _host_index: int, optional
95
+ :return: Returns the result object.
96
+ """ # noqa: E501
97
+
98
+ _param = self._check_permissions_serialize(
99
+ permissions_request=permissions_request,
100
+ _request_auth=_request_auth,
101
+ _content_type=_content_type,
102
+ _headers=_headers,
103
+ _host_index=_host_index
104
+ )
105
+
106
+ _response_types_map: Dict[str, Optional[str]] = {
107
+ '200': "PermissionsResponse",
108
+ '500': "InternalServerError",
109
+ '422': "HTTPValidationError",
110
+ }
111
+ response_data = self.api_client.call_api(
112
+ *_param,
113
+ _request_timeout=_request_timeout
114
+ )
115
+ response_data.read()
116
+ return self.api_client.response_deserialize(
117
+ response_data=response_data,
118
+ response_types_map=_response_types_map,
119
+ ).data
120
+
121
+
122
+ @validate_call
123
+ def check_permissions_with_http_info(
124
+ self,
125
+ permissions_request: PermissionsRequest,
126
+ _request_timeout: Union[
127
+ None,
128
+ Annotated[StrictFloat, Field(gt=0)],
129
+ Tuple[
130
+ Annotated[StrictFloat, Field(gt=0)],
131
+ Annotated[StrictFloat, Field(gt=0)]
132
+ ]
133
+ ] = None,
134
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
135
+ _content_type: Optional[StrictStr] = None,
136
+ _headers: Optional[Dict[StrictStr, Any]] = None,
137
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
138
+ ) -> ApiResponse[PermissionsResponse]:
139
+ """Check Permissions
140
+
141
+ Check given permissions and returns a list of allowed and not allowed permissions.
142
+
143
+ :param permissions_request: (required)
144
+ :type permissions_request: PermissionsRequest
145
+ :param _request_timeout: timeout setting for this request. If one
146
+ number provided, it will be total request
147
+ timeout. It can also be a pair (tuple) of
148
+ (connection, read) timeouts.
149
+ :type _request_timeout: int, tuple(int, int), optional
150
+ :param _request_auth: set to override the auth_settings for an a single
151
+ request; this effectively ignores the
152
+ authentication in the spec for a single request.
153
+ :type _request_auth: dict, optional
154
+ :param _content_type: force content-type for the request.
155
+ :type _content_type: str, Optional
156
+ :param _headers: set to override the headers for a single
157
+ request; this effectively ignores the headers
158
+ in the spec for a single request.
159
+ :type _headers: dict, optional
160
+ :param _host_index: set to override the host_index for a single
161
+ request; this effectively ignores the host_index
162
+ in the spec for a single request.
163
+ :type _host_index: int, optional
164
+ :return: Returns the result object.
165
+ """ # noqa: E501
166
+
167
+ _param = self._check_permissions_serialize(
168
+ permissions_request=permissions_request,
169
+ _request_auth=_request_auth,
170
+ _content_type=_content_type,
171
+ _headers=_headers,
172
+ _host_index=_host_index
173
+ )
174
+
175
+ _response_types_map: Dict[str, Optional[str]] = {
176
+ '200': "PermissionsResponse",
177
+ '500': "InternalServerError",
178
+ '422': "HTTPValidationError",
179
+ }
180
+ response_data = self.api_client.call_api(
181
+ *_param,
182
+ _request_timeout=_request_timeout
183
+ )
184
+ response_data.read()
185
+ return self.api_client.response_deserialize(
186
+ response_data=response_data,
187
+ response_types_map=_response_types_map,
188
+ )
189
+
190
+
191
+ @validate_call
192
+ def check_permissions_without_preload_content(
193
+ self,
194
+ permissions_request: PermissionsRequest,
195
+ _request_timeout: Union[
196
+ None,
197
+ Annotated[StrictFloat, Field(gt=0)],
198
+ Tuple[
199
+ Annotated[StrictFloat, Field(gt=0)],
200
+ Annotated[StrictFloat, Field(gt=0)]
201
+ ]
202
+ ] = None,
203
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
204
+ _content_type: Optional[StrictStr] = None,
205
+ _headers: Optional[Dict[StrictStr, Any]] = None,
206
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
207
+ ) -> RESTResponseType:
208
+ """Check Permissions
209
+
210
+ Check given permissions and returns a list of allowed and not allowed permissions.
211
+
212
+ :param permissions_request: (required)
213
+ :type permissions_request: PermissionsRequest
214
+ :param _request_timeout: timeout setting for this request. If one
215
+ number provided, it will be total request
216
+ timeout. It can also be a pair (tuple) of
217
+ (connection, read) timeouts.
218
+ :type _request_timeout: int, tuple(int, int), optional
219
+ :param _request_auth: set to override the auth_settings for an a single
220
+ request; this effectively ignores the
221
+ authentication in the spec for a single request.
222
+ :type _request_auth: dict, optional
223
+ :param _content_type: force content-type for the request.
224
+ :type _content_type: str, Optional
225
+ :param _headers: set to override the headers for a single
226
+ request; this effectively ignores the headers
227
+ in the spec for a single request.
228
+ :type _headers: dict, optional
229
+ :param _host_index: set to override the host_index for a single
230
+ request; this effectively ignores the host_index
231
+ in the spec for a single request.
232
+ :type _host_index: int, optional
233
+ :return: Returns the result object.
234
+ """ # noqa: E501
235
+
236
+ _param = self._check_permissions_serialize(
237
+ permissions_request=permissions_request,
238
+ _request_auth=_request_auth,
239
+ _content_type=_content_type,
240
+ _headers=_headers,
241
+ _host_index=_host_index
242
+ )
243
+
244
+ _response_types_map: Dict[str, Optional[str]] = {
245
+ '200': "PermissionsResponse",
246
+ '500': "InternalServerError",
247
+ '422': "HTTPValidationError",
248
+ }
249
+ response_data = self.api_client.call_api(
250
+ *_param,
251
+ _request_timeout=_request_timeout
252
+ )
253
+ return response_data.response
254
+
255
+
256
+ def _check_permissions_serialize(
257
+ self,
258
+ permissions_request,
259
+ _request_auth,
260
+ _content_type,
261
+ _headers,
262
+ _host_index,
263
+ ) -> RequestSerialized:
264
+
265
+ _host = None
266
+
267
+ _collection_formats: Dict[str, str] = {
268
+ }
269
+
270
+ _path_params: Dict[str, str] = {}
271
+ _query_params: List[Tuple[str, str]] = []
272
+ _header_params: Dict[str, Optional[str]] = _headers or {}
273
+ _form_params: List[Tuple[str, str]] = []
274
+ _files: Dict[
275
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
276
+ ] = {}
277
+ _body_params: Optional[bytes] = None
278
+
279
+ # process the path parameters
280
+ # process the query parameters
281
+ # process the header parameters
282
+ # process the form parameters
283
+ # process the body parameter
284
+ if permissions_request is not None:
285
+ _body_params = permissions_request
286
+
287
+
288
+ # set the HTTP header `Accept`
289
+ if 'Accept' not in _header_params:
290
+ _header_params['Accept'] = self.api_client.select_header_accept(
291
+ [
292
+ 'application/json'
293
+ ]
294
+ )
295
+
296
+ # set the HTTP header `Content-Type`
297
+ if _content_type:
298
+ _header_params['Content-Type'] = _content_type
299
+ else:
300
+ _default_content_type = (
301
+ self.api_client.select_header_content_type(
302
+ [
303
+ 'application/json'
304
+ ]
305
+ )
306
+ )
307
+ if _default_content_type is not None:
308
+ _header_params['Content-Type'] = _default_content_type
309
+
310
+ # authentication setting
311
+ _auth_settings: List[str] = [
312
+ 'OAuth2AuthorizationCode'
313
+ ]
314
+
315
+ return self.api_client.param_serialize(
316
+ method='POST',
317
+ resource_path='/api/v1/permissions/check',
318
+ path_params=_path_params,
319
+ query_params=_query_params,
320
+ header_params=_header_params,
321
+ body=_body_params,
322
+ post_params=_form_params,
323
+ files=_files,
324
+ auth_settings=_auth_settings,
325
+ collection_formats=_collection_formats,
326
+ _host=_host,
327
+ _request_auth=_request_auth
328
+ )
329
+
330
+
331
+
332
+
333
+ @validate_call
334
+ def delete_role_binding(
335
+ self,
336
+ role_binding_id: StrictStr,
337
+ _request_timeout: Union[
338
+ None,
339
+ Annotated[StrictFloat, Field(gt=0)],
340
+ Tuple[
341
+ Annotated[StrictFloat, Field(gt=0)],
342
+ Annotated[StrictFloat, Field(gt=0)]
343
+ ]
344
+ ] = None,
345
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
346
+ _content_type: Optional[StrictStr] = None,
347
+ _headers: Optional[Dict[StrictStr, Any]] = None,
348
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
349
+ ) -> None:
350
+ """Delete Role Binding.
351
+
352
+ Deletes role binding by id. Permission required depends on the role binding type. Deleting an organization role binding requires organization_role_binding_delete permission. Deleting a workspace role binding requires workspace_role_binding_delete permission. Deleting a project role binding requires project_role_binding_delete permission.
353
+
354
+ :param role_binding_id: (required)
355
+ :type role_binding_id: str
356
+ :param _request_timeout: timeout setting for this request. If one
357
+ number provided, it will be total request
358
+ timeout. It can also be a pair (tuple) of
359
+ (connection, read) timeouts.
360
+ :type _request_timeout: int, tuple(int, int), optional
361
+ :param _request_auth: set to override the auth_settings for an a single
362
+ request; this effectively ignores the
363
+ authentication in the spec for a single request.
364
+ :type _request_auth: dict, optional
365
+ :param _content_type: force content-type for the request.
366
+ :type _content_type: str, Optional
367
+ :param _headers: set to override the headers for a single
368
+ request; this effectively ignores the headers
369
+ in the spec for a single request.
370
+ :type _headers: dict, optional
371
+ :param _host_index: set to override the host_index for a single
372
+ request; this effectively ignores the host_index
373
+ in the spec for a single request.
374
+ :type _host_index: int, optional
375
+ :return: Returns the result object.
376
+ """ # noqa: E501
377
+
378
+ _param = self._delete_role_binding_serialize(
379
+ role_binding_id=role_binding_id,
380
+ _request_auth=_request_auth,
381
+ _content_type=_content_type,
382
+ _headers=_headers,
383
+ _host_index=_host_index
384
+ )
385
+
386
+ _response_types_map: Dict[str, Optional[str]] = {
387
+ '204': None,
388
+ '500': "InternalServerError",
389
+ '400': "BadRequestError",
390
+ '422': "HTTPValidationError",
391
+ }
392
+ response_data = self.api_client.call_api(
393
+ *_param,
394
+ _request_timeout=_request_timeout
395
+ )
396
+ response_data.read()
397
+ return self.api_client.response_deserialize(
398
+ response_data=response_data,
399
+ response_types_map=_response_types_map,
400
+ ).data
401
+
402
+
403
+ @validate_call
404
+ def delete_role_binding_with_http_info(
405
+ self,
406
+ role_binding_id: StrictStr,
407
+ _request_timeout: Union[
408
+ None,
409
+ Annotated[StrictFloat, Field(gt=0)],
410
+ Tuple[
411
+ Annotated[StrictFloat, Field(gt=0)],
412
+ Annotated[StrictFloat, Field(gt=0)]
413
+ ]
414
+ ] = None,
415
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
416
+ _content_type: Optional[StrictStr] = None,
417
+ _headers: Optional[Dict[StrictStr, Any]] = None,
418
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
419
+ ) -> ApiResponse[None]:
420
+ """Delete Role Binding.
421
+
422
+ Deletes role binding by id. Permission required depends on the role binding type. Deleting an organization role binding requires organization_role_binding_delete permission. Deleting a workspace role binding requires workspace_role_binding_delete permission. Deleting a project role binding requires project_role_binding_delete permission.
423
+
424
+ :param role_binding_id: (required)
425
+ :type role_binding_id: str
426
+ :param _request_timeout: timeout setting for this request. If one
427
+ number provided, it will be total request
428
+ timeout. It can also be a pair (tuple) of
429
+ (connection, read) timeouts.
430
+ :type _request_timeout: int, tuple(int, int), optional
431
+ :param _request_auth: set to override the auth_settings for an a single
432
+ request; this effectively ignores the
433
+ authentication in the spec for a single request.
434
+ :type _request_auth: dict, optional
435
+ :param _content_type: force content-type for the request.
436
+ :type _content_type: str, Optional
437
+ :param _headers: set to override the headers for a single
438
+ request; this effectively ignores the headers
439
+ in the spec for a single request.
440
+ :type _headers: dict, optional
441
+ :param _host_index: set to override the host_index for a single
442
+ request; this effectively ignores the host_index
443
+ in the spec for a single request.
444
+ :type _host_index: int, optional
445
+ :return: Returns the result object.
446
+ """ # noqa: E501
447
+
448
+ _param = self._delete_role_binding_serialize(
449
+ role_binding_id=role_binding_id,
450
+ _request_auth=_request_auth,
451
+ _content_type=_content_type,
452
+ _headers=_headers,
453
+ _host_index=_host_index
454
+ )
455
+
456
+ _response_types_map: Dict[str, Optional[str]] = {
457
+ '204': None,
458
+ '500': "InternalServerError",
459
+ '400': "BadRequestError",
460
+ '422': "HTTPValidationError",
461
+ }
462
+ response_data = self.api_client.call_api(
463
+ *_param,
464
+ _request_timeout=_request_timeout
465
+ )
466
+ response_data.read()
467
+ return self.api_client.response_deserialize(
468
+ response_data=response_data,
469
+ response_types_map=_response_types_map,
470
+ )
471
+
472
+
473
+ @validate_call
474
+ def delete_role_binding_without_preload_content(
475
+ self,
476
+ role_binding_id: StrictStr,
477
+ _request_timeout: Union[
478
+ None,
479
+ Annotated[StrictFloat, Field(gt=0)],
480
+ Tuple[
481
+ Annotated[StrictFloat, Field(gt=0)],
482
+ Annotated[StrictFloat, Field(gt=0)]
483
+ ]
484
+ ] = None,
485
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
486
+ _content_type: Optional[StrictStr] = None,
487
+ _headers: Optional[Dict[StrictStr, Any]] = None,
488
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
489
+ ) -> RESTResponseType:
490
+ """Delete Role Binding.
491
+
492
+ Deletes role binding by id. Permission required depends on the role binding type. Deleting an organization role binding requires organization_role_binding_delete permission. Deleting a workspace role binding requires workspace_role_binding_delete permission. Deleting a project role binding requires project_role_binding_delete permission.
493
+
494
+ :param role_binding_id: (required)
495
+ :type role_binding_id: str
496
+ :param _request_timeout: timeout setting for this request. If one
497
+ number provided, it will be total request
498
+ timeout. It can also be a pair (tuple) of
499
+ (connection, read) timeouts.
500
+ :type _request_timeout: int, tuple(int, int), optional
501
+ :param _request_auth: set to override the auth_settings for an a single
502
+ request; this effectively ignores the
503
+ authentication in the spec for a single request.
504
+ :type _request_auth: dict, optional
505
+ :param _content_type: force content-type for the request.
506
+ :type _content_type: str, Optional
507
+ :param _headers: set to override the headers for a single
508
+ request; this effectively ignores the headers
509
+ in the spec for a single request.
510
+ :type _headers: dict, optional
511
+ :param _host_index: set to override the host_index for a single
512
+ request; this effectively ignores the host_index
513
+ in the spec for a single request.
514
+ :type _host_index: int, optional
515
+ :return: Returns the result object.
516
+ """ # noqa: E501
517
+
518
+ _param = self._delete_role_binding_serialize(
519
+ role_binding_id=role_binding_id,
520
+ _request_auth=_request_auth,
521
+ _content_type=_content_type,
522
+ _headers=_headers,
523
+ _host_index=_host_index
524
+ )
525
+
526
+ _response_types_map: Dict[str, Optional[str]] = {
527
+ '204': None,
528
+ '500': "InternalServerError",
529
+ '400': "BadRequestError",
530
+ '422': "HTTPValidationError",
531
+ }
532
+ response_data = self.api_client.call_api(
533
+ *_param,
534
+ _request_timeout=_request_timeout
535
+ )
536
+ return response_data.response
537
+
538
+
539
+ def _delete_role_binding_serialize(
540
+ self,
541
+ role_binding_id,
542
+ _request_auth,
543
+ _content_type,
544
+ _headers,
545
+ _host_index,
546
+ ) -> RequestSerialized:
547
+
548
+ _host = None
549
+
550
+ _collection_formats: Dict[str, str] = {
551
+ }
552
+
553
+ _path_params: Dict[str, str] = {}
554
+ _query_params: List[Tuple[str, str]] = []
555
+ _header_params: Dict[str, Optional[str]] = _headers or {}
556
+ _form_params: List[Tuple[str, str]] = []
557
+ _files: Dict[
558
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
559
+ ] = {}
560
+ _body_params: Optional[bytes] = None
561
+
562
+ # process the path parameters
563
+ if role_binding_id is not None:
564
+ _path_params['role_binding_id'] = role_binding_id
565
+ # process the query parameters
566
+ # process the header parameters
567
+ # process the form parameters
568
+ # process the body parameter
569
+
570
+
571
+ # set the HTTP header `Accept`
572
+ if 'Accept' not in _header_params:
573
+ _header_params['Accept'] = self.api_client.select_header_accept(
574
+ [
575
+ 'application/json'
576
+ ]
577
+ )
578
+
579
+
580
+ # authentication setting
581
+ _auth_settings: List[str] = [
582
+ 'OAuth2AuthorizationCode'
583
+ ]
584
+
585
+ return self.api_client.param_serialize(
586
+ method='DELETE',
587
+ resource_path='/api/v1/role_bindings/{role_binding_id}',
588
+ path_params=_path_params,
589
+ query_params=_query_params,
590
+ header_params=_header_params,
591
+ body=_body_params,
592
+ post_params=_form_params,
593
+ files=_files,
594
+ auth_settings=_auth_settings,
595
+ collection_formats=_collection_formats,
596
+ _host=_host,
597
+ _request_auth=_request_auth
598
+ )
599
+
600
+
601
+
602
+
603
+ @validate_call
604
+ def list_group_role_bindings(
605
+ self,
606
+ group_id: StrictStr,
607
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.")] = None,
608
+ bound_resource_kind: Annotated[Optional[BoundResourceKind], Field(description="Filter the list of role bindings by the kind of the bound resource. Optional.")] = None,
609
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
610
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
611
+ _request_timeout: Union[
612
+ None,
613
+ Annotated[StrictFloat, Field(gt=0)],
614
+ Tuple[
615
+ Annotated[StrictFloat, Field(gt=0)],
616
+ Annotated[StrictFloat, Field(gt=0)]
617
+ ]
618
+ ] = None,
619
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
620
+ _content_type: Optional[StrictStr] = None,
621
+ _headers: Optional[Dict[StrictStr, Any]] = None,
622
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
623
+ ) -> ResourceListRoleBinding:
624
+ """Get Group Role Bindings.
625
+
626
+ Lists all role bindings for the group. Requires group_list_role_bindings permission.
627
+
628
+ :param group_id: (required)
629
+ :type group_id: str
630
+ :param search: Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.
631
+ :type search: str
632
+ :param bound_resource_kind: Filter the list of role bindings by the kind of the bound resource. Optional.
633
+ :type bound_resource_kind: BoundResourceKind
634
+ :param page: The page to return starting from 1 up to total_pages.
635
+ :type page: int
636
+ :param page_size: The number of records per page. The max is 1000.
637
+ :type page_size: int
638
+ :param _request_timeout: timeout setting for this request. If one
639
+ number provided, it will be total request
640
+ timeout. It can also be a pair (tuple) of
641
+ (connection, read) timeouts.
642
+ :type _request_timeout: int, tuple(int, int), optional
643
+ :param _request_auth: set to override the auth_settings for an a single
644
+ request; this effectively ignores the
645
+ authentication in the spec for a single request.
646
+ :type _request_auth: dict, optional
647
+ :param _content_type: force content-type for the request.
648
+ :type _content_type: str, Optional
649
+ :param _headers: set to override the headers for a single
650
+ request; this effectively ignores the headers
651
+ in the spec for a single request.
652
+ :type _headers: dict, optional
653
+ :param _host_index: set to override the host_index for a single
654
+ request; this effectively ignores the host_index
655
+ in the spec for a single request.
656
+ :type _host_index: int, optional
657
+ :return: Returns the result object.
658
+ """ # noqa: E501
659
+
660
+ _param = self._list_group_role_bindings_serialize(
661
+ group_id=group_id,
662
+ search=search,
663
+ bound_resource_kind=bound_resource_kind,
664
+ page=page,
665
+ page_size=page_size,
666
+ _request_auth=_request_auth,
667
+ _content_type=_content_type,
668
+ _headers=_headers,
669
+ _host_index=_host_index
670
+ )
671
+
672
+ _response_types_map: Dict[str, Optional[str]] = {
673
+ '200': "ResourceListRoleBinding",
674
+ '500': "InternalServerError",
675
+ '400': "BadRequestError",
676
+ '404': "NotFoundError",
677
+ '422': "HTTPValidationError",
678
+ }
679
+ response_data = self.api_client.call_api(
680
+ *_param,
681
+ _request_timeout=_request_timeout
682
+ )
683
+ response_data.read()
684
+ return self.api_client.response_deserialize(
685
+ response_data=response_data,
686
+ response_types_map=_response_types_map,
687
+ ).data
688
+
689
+
690
+ @validate_call
691
+ def list_group_role_bindings_with_http_info(
692
+ self,
693
+ group_id: StrictStr,
694
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.")] = None,
695
+ bound_resource_kind: Annotated[Optional[BoundResourceKind], Field(description="Filter the list of role bindings by the kind of the bound resource. Optional.")] = None,
696
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
697
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
698
+ _request_timeout: Union[
699
+ None,
700
+ Annotated[StrictFloat, Field(gt=0)],
701
+ Tuple[
702
+ Annotated[StrictFloat, Field(gt=0)],
703
+ Annotated[StrictFloat, Field(gt=0)]
704
+ ]
705
+ ] = None,
706
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
707
+ _content_type: Optional[StrictStr] = None,
708
+ _headers: Optional[Dict[StrictStr, Any]] = None,
709
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
710
+ ) -> ApiResponse[ResourceListRoleBinding]:
711
+ """Get Group Role Bindings.
712
+
713
+ Lists all role bindings for the group. Requires group_list_role_bindings permission.
714
+
715
+ :param group_id: (required)
716
+ :type group_id: str
717
+ :param search: Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.
718
+ :type search: str
719
+ :param bound_resource_kind: Filter the list of role bindings by the kind of the bound resource. Optional.
720
+ :type bound_resource_kind: BoundResourceKind
721
+ :param page: The page to return starting from 1 up to total_pages.
722
+ :type page: int
723
+ :param page_size: The number of records per page. The max is 1000.
724
+ :type page_size: int
725
+ :param _request_timeout: timeout setting for this request. If one
726
+ number provided, it will be total request
727
+ timeout. It can also be a pair (tuple) of
728
+ (connection, read) timeouts.
729
+ :type _request_timeout: int, tuple(int, int), optional
730
+ :param _request_auth: set to override the auth_settings for an a single
731
+ request; this effectively ignores the
732
+ authentication in the spec for a single request.
733
+ :type _request_auth: dict, optional
734
+ :param _content_type: force content-type for the request.
735
+ :type _content_type: str, Optional
736
+ :param _headers: set to override the headers for a single
737
+ request; this effectively ignores the headers
738
+ in the spec for a single request.
739
+ :type _headers: dict, optional
740
+ :param _host_index: set to override the host_index for a single
741
+ request; this effectively ignores the host_index
742
+ in the spec for a single request.
743
+ :type _host_index: int, optional
744
+ :return: Returns the result object.
745
+ """ # noqa: E501
746
+
747
+ _param = self._list_group_role_bindings_serialize(
748
+ group_id=group_id,
749
+ search=search,
750
+ bound_resource_kind=bound_resource_kind,
751
+ page=page,
752
+ page_size=page_size,
753
+ _request_auth=_request_auth,
754
+ _content_type=_content_type,
755
+ _headers=_headers,
756
+ _host_index=_host_index
757
+ )
758
+
759
+ _response_types_map: Dict[str, Optional[str]] = {
760
+ '200': "ResourceListRoleBinding",
761
+ '500': "InternalServerError",
762
+ '400': "BadRequestError",
763
+ '404': "NotFoundError",
764
+ '422': "HTTPValidationError",
765
+ }
766
+ response_data = self.api_client.call_api(
767
+ *_param,
768
+ _request_timeout=_request_timeout
769
+ )
770
+ response_data.read()
771
+ return self.api_client.response_deserialize(
772
+ response_data=response_data,
773
+ response_types_map=_response_types_map,
774
+ )
775
+
776
+
777
+ @validate_call
778
+ def list_group_role_bindings_without_preload_content(
779
+ self,
780
+ group_id: StrictStr,
781
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.")] = None,
782
+ bound_resource_kind: Annotated[Optional[BoundResourceKind], Field(description="Filter the list of role bindings by the kind of the bound resource. Optional.")] = None,
783
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
784
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
785
+ _request_timeout: Union[
786
+ None,
787
+ Annotated[StrictFloat, Field(gt=0)],
788
+ Tuple[
789
+ Annotated[StrictFloat, Field(gt=0)],
790
+ Annotated[StrictFloat, Field(gt=0)]
791
+ ]
792
+ ] = None,
793
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
794
+ _content_type: Optional[StrictStr] = None,
795
+ _headers: Optional[Dict[StrictStr, Any]] = None,
796
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
797
+ ) -> RESTResponseType:
798
+ """Get Group Role Bindings.
799
+
800
+ Lists all role bindings for the group. Requires group_list_role_bindings permission.
801
+
802
+ :param group_id: (required)
803
+ :type group_id: str
804
+ :param search: Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.
805
+ :type search: str
806
+ :param bound_resource_kind: Filter the list of role bindings by the kind of the bound resource. Optional.
807
+ :type bound_resource_kind: BoundResourceKind
808
+ :param page: The page to return starting from 1 up to total_pages.
809
+ :type page: int
810
+ :param page_size: The number of records per page. The max is 1000.
811
+ :type page_size: int
812
+ :param _request_timeout: timeout setting for this request. If one
813
+ number provided, it will be total request
814
+ timeout. It can also be a pair (tuple) of
815
+ (connection, read) timeouts.
816
+ :type _request_timeout: int, tuple(int, int), optional
817
+ :param _request_auth: set to override the auth_settings for an a single
818
+ request; this effectively ignores the
819
+ authentication in the spec for a single request.
820
+ :type _request_auth: dict, optional
821
+ :param _content_type: force content-type for the request.
822
+ :type _content_type: str, Optional
823
+ :param _headers: set to override the headers for a single
824
+ request; this effectively ignores the headers
825
+ in the spec for a single request.
826
+ :type _headers: dict, optional
827
+ :param _host_index: set to override the host_index for a single
828
+ request; this effectively ignores the host_index
829
+ in the spec for a single request.
830
+ :type _host_index: int, optional
831
+ :return: Returns the result object.
832
+ """ # noqa: E501
833
+
834
+ _param = self._list_group_role_bindings_serialize(
835
+ group_id=group_id,
836
+ search=search,
837
+ bound_resource_kind=bound_resource_kind,
838
+ page=page,
839
+ page_size=page_size,
840
+ _request_auth=_request_auth,
841
+ _content_type=_content_type,
842
+ _headers=_headers,
843
+ _host_index=_host_index
844
+ )
845
+
846
+ _response_types_map: Dict[str, Optional[str]] = {
847
+ '200': "ResourceListRoleBinding",
848
+ '500': "InternalServerError",
849
+ '400': "BadRequestError",
850
+ '404': "NotFoundError",
851
+ '422': "HTTPValidationError",
852
+ }
853
+ response_data = self.api_client.call_api(
854
+ *_param,
855
+ _request_timeout=_request_timeout
856
+ )
857
+ return response_data.response
858
+
859
+
860
+ def _list_group_role_bindings_serialize(
861
+ self,
862
+ group_id,
863
+ search,
864
+ bound_resource_kind,
865
+ page,
866
+ page_size,
867
+ _request_auth,
868
+ _content_type,
869
+ _headers,
870
+ _host_index,
871
+ ) -> RequestSerialized:
872
+
873
+ _host = None
874
+
875
+ _collection_formats: Dict[str, str] = {
876
+ }
877
+
878
+ _path_params: Dict[str, str] = {}
879
+ _query_params: List[Tuple[str, str]] = []
880
+ _header_params: Dict[str, Optional[str]] = _headers or {}
881
+ _form_params: List[Tuple[str, str]] = []
882
+ _files: Dict[
883
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
884
+ ] = {}
885
+ _body_params: Optional[bytes] = None
886
+
887
+ # process the path parameters
888
+ if group_id is not None:
889
+ _path_params['group_id'] = group_id
890
+ # process the query parameters
891
+ if search is not None:
892
+
893
+ _query_params.append(('search', search))
894
+
895
+ if bound_resource_kind is not None:
896
+
897
+ _query_params.append(('bound_resource_kind', bound_resource_kind.value))
898
+
899
+ if page is not None:
900
+
901
+ _query_params.append(('page', page))
902
+
903
+ if page_size is not None:
904
+
905
+ _query_params.append(('page_size', page_size))
906
+
907
+ # process the header parameters
908
+ # process the form parameters
909
+ # process the body parameter
910
+
911
+
912
+ # set the HTTP header `Accept`
913
+ if 'Accept' not in _header_params:
914
+ _header_params['Accept'] = self.api_client.select_header_accept(
915
+ [
916
+ 'application/json'
917
+ ]
918
+ )
919
+
920
+
921
+ # authentication setting
922
+ _auth_settings: List[str] = [
923
+ 'OAuth2AuthorizationCode'
924
+ ]
925
+
926
+ return self.api_client.param_serialize(
927
+ method='GET',
928
+ resource_path='/api/v1/groups/{group_id}/role_bindings',
929
+ path_params=_path_params,
930
+ query_params=_query_params,
931
+ header_params=_header_params,
932
+ body=_body_params,
933
+ post_params=_form_params,
934
+ files=_files,
935
+ auth_settings=_auth_settings,
936
+ collection_formats=_collection_formats,
937
+ _host=_host,
938
+ _request_auth=_request_auth
939
+ )
940
+
941
+
942
+
943
+
944
+ @validate_call
945
+ def list_org_role_bindings(
946
+ self,
947
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, user ID or group ID.")] = None,
948
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
949
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
950
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
951
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
952
+ _request_timeout: Union[
953
+ None,
954
+ Annotated[StrictFloat, Field(gt=0)],
955
+ Tuple[
956
+ Annotated[StrictFloat, Field(gt=0)],
957
+ Annotated[StrictFloat, Field(gt=0)]
958
+ ]
959
+ ] = None,
960
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
961
+ _content_type: Optional[StrictStr] = None,
962
+ _headers: Optional[Dict[StrictStr, Any]] = None,
963
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
964
+ ) -> ResourceListRoleBinding:
965
+ """List Organization Role Bindings.
966
+
967
+ Fetches all organization role bindings. Requires organization_list_role_bindings permission.
968
+
969
+ :param search: Search for role bindings by user name, group name, role name, user ID or group ID.
970
+ :type search: str
971
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
972
+ :type bound_member_kind: BoundMemberKind
973
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
974
+ :type user_types: List[UserType]
975
+ :param page: The page to return starting from 1 up to total_pages.
976
+ :type page: int
977
+ :param page_size: The number of records per page. The max is 1000.
978
+ :type page_size: int
979
+ :param _request_timeout: timeout setting for this request. If one
980
+ number provided, it will be total request
981
+ timeout. It can also be a pair (tuple) of
982
+ (connection, read) timeouts.
983
+ :type _request_timeout: int, tuple(int, int), optional
984
+ :param _request_auth: set to override the auth_settings for an a single
985
+ request; this effectively ignores the
986
+ authentication in the spec for a single request.
987
+ :type _request_auth: dict, optional
988
+ :param _content_type: force content-type for the request.
989
+ :type _content_type: str, Optional
990
+ :param _headers: set to override the headers for a single
991
+ request; this effectively ignores the headers
992
+ in the spec for a single request.
993
+ :type _headers: dict, optional
994
+ :param _host_index: set to override the host_index for a single
995
+ request; this effectively ignores the host_index
996
+ in the spec for a single request.
997
+ :type _host_index: int, optional
998
+ :return: Returns the result object.
999
+ """ # noqa: E501
1000
+
1001
+ _param = self._list_org_role_bindings_serialize(
1002
+ search=search,
1003
+ bound_member_kind=bound_member_kind,
1004
+ user_types=user_types,
1005
+ page=page,
1006
+ page_size=page_size,
1007
+ _request_auth=_request_auth,
1008
+ _content_type=_content_type,
1009
+ _headers=_headers,
1010
+ _host_index=_host_index
1011
+ )
1012
+
1013
+ _response_types_map: Dict[str, Optional[str]] = {
1014
+ '200': "ResourceListRoleBinding",
1015
+ '500': "InternalServerError",
1016
+ '400': "BadRequestError",
1017
+ '404': "NotFoundError",
1018
+ '422': "HTTPValidationError",
1019
+ }
1020
+ response_data = self.api_client.call_api(
1021
+ *_param,
1022
+ _request_timeout=_request_timeout
1023
+ )
1024
+ response_data.read()
1025
+ return self.api_client.response_deserialize(
1026
+ response_data=response_data,
1027
+ response_types_map=_response_types_map,
1028
+ ).data
1029
+
1030
+
1031
+ @validate_call
1032
+ def list_org_role_bindings_with_http_info(
1033
+ self,
1034
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, user ID or group ID.")] = None,
1035
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
1036
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
1037
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1038
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1039
+ _request_timeout: Union[
1040
+ None,
1041
+ Annotated[StrictFloat, Field(gt=0)],
1042
+ Tuple[
1043
+ Annotated[StrictFloat, Field(gt=0)],
1044
+ Annotated[StrictFloat, Field(gt=0)]
1045
+ ]
1046
+ ] = None,
1047
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1048
+ _content_type: Optional[StrictStr] = None,
1049
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1050
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1051
+ ) -> ApiResponse[ResourceListRoleBinding]:
1052
+ """List Organization Role Bindings.
1053
+
1054
+ Fetches all organization role bindings. Requires organization_list_role_bindings permission.
1055
+
1056
+ :param search: Search for role bindings by user name, group name, role name, user ID or group ID.
1057
+ :type search: str
1058
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
1059
+ :type bound_member_kind: BoundMemberKind
1060
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
1061
+ :type user_types: List[UserType]
1062
+ :param page: The page to return starting from 1 up to total_pages.
1063
+ :type page: int
1064
+ :param page_size: The number of records per page. The max is 1000.
1065
+ :type page_size: int
1066
+ :param _request_timeout: timeout setting for this request. If one
1067
+ number provided, it will be total request
1068
+ timeout. It can also be a pair (tuple) of
1069
+ (connection, read) timeouts.
1070
+ :type _request_timeout: int, tuple(int, int), optional
1071
+ :param _request_auth: set to override the auth_settings for an a single
1072
+ request; this effectively ignores the
1073
+ authentication in the spec for a single request.
1074
+ :type _request_auth: dict, optional
1075
+ :param _content_type: force content-type for the request.
1076
+ :type _content_type: str, Optional
1077
+ :param _headers: set to override the headers for a single
1078
+ request; this effectively ignores the headers
1079
+ in the spec for a single request.
1080
+ :type _headers: dict, optional
1081
+ :param _host_index: set to override the host_index for a single
1082
+ request; this effectively ignores the host_index
1083
+ in the spec for a single request.
1084
+ :type _host_index: int, optional
1085
+ :return: Returns the result object.
1086
+ """ # noqa: E501
1087
+
1088
+ _param = self._list_org_role_bindings_serialize(
1089
+ search=search,
1090
+ bound_member_kind=bound_member_kind,
1091
+ user_types=user_types,
1092
+ page=page,
1093
+ page_size=page_size,
1094
+ _request_auth=_request_auth,
1095
+ _content_type=_content_type,
1096
+ _headers=_headers,
1097
+ _host_index=_host_index
1098
+ )
1099
+
1100
+ _response_types_map: Dict[str, Optional[str]] = {
1101
+ '200': "ResourceListRoleBinding",
1102
+ '500': "InternalServerError",
1103
+ '400': "BadRequestError",
1104
+ '404': "NotFoundError",
1105
+ '422': "HTTPValidationError",
1106
+ }
1107
+ response_data = self.api_client.call_api(
1108
+ *_param,
1109
+ _request_timeout=_request_timeout
1110
+ )
1111
+ response_data.read()
1112
+ return self.api_client.response_deserialize(
1113
+ response_data=response_data,
1114
+ response_types_map=_response_types_map,
1115
+ )
1116
+
1117
+
1118
+ @validate_call
1119
+ def list_org_role_bindings_without_preload_content(
1120
+ self,
1121
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, user ID or group ID.")] = None,
1122
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
1123
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
1124
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1125
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1126
+ _request_timeout: Union[
1127
+ None,
1128
+ Annotated[StrictFloat, Field(gt=0)],
1129
+ Tuple[
1130
+ Annotated[StrictFloat, Field(gt=0)],
1131
+ Annotated[StrictFloat, Field(gt=0)]
1132
+ ]
1133
+ ] = None,
1134
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1135
+ _content_type: Optional[StrictStr] = None,
1136
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1137
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1138
+ ) -> RESTResponseType:
1139
+ """List Organization Role Bindings.
1140
+
1141
+ Fetches all organization role bindings. Requires organization_list_role_bindings permission.
1142
+
1143
+ :param search: Search for role bindings by user name, group name, role name, user ID or group ID.
1144
+ :type search: str
1145
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
1146
+ :type bound_member_kind: BoundMemberKind
1147
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
1148
+ :type user_types: List[UserType]
1149
+ :param page: The page to return starting from 1 up to total_pages.
1150
+ :type page: int
1151
+ :param page_size: The number of records per page. The max is 1000.
1152
+ :type page_size: int
1153
+ :param _request_timeout: timeout setting for this request. If one
1154
+ number provided, it will be total request
1155
+ timeout. It can also be a pair (tuple) of
1156
+ (connection, read) timeouts.
1157
+ :type _request_timeout: int, tuple(int, int), optional
1158
+ :param _request_auth: set to override the auth_settings for an a single
1159
+ request; this effectively ignores the
1160
+ authentication in the spec for a single request.
1161
+ :type _request_auth: dict, optional
1162
+ :param _content_type: force content-type for the request.
1163
+ :type _content_type: str, Optional
1164
+ :param _headers: set to override the headers for a single
1165
+ request; this effectively ignores the headers
1166
+ in the spec for a single request.
1167
+ :type _headers: dict, optional
1168
+ :param _host_index: set to override the host_index for a single
1169
+ request; this effectively ignores the host_index
1170
+ in the spec for a single request.
1171
+ :type _host_index: int, optional
1172
+ :return: Returns the result object.
1173
+ """ # noqa: E501
1174
+
1175
+ _param = self._list_org_role_bindings_serialize(
1176
+ search=search,
1177
+ bound_member_kind=bound_member_kind,
1178
+ user_types=user_types,
1179
+ page=page,
1180
+ page_size=page_size,
1181
+ _request_auth=_request_auth,
1182
+ _content_type=_content_type,
1183
+ _headers=_headers,
1184
+ _host_index=_host_index
1185
+ )
1186
+
1187
+ _response_types_map: Dict[str, Optional[str]] = {
1188
+ '200': "ResourceListRoleBinding",
1189
+ '500': "InternalServerError",
1190
+ '400': "BadRequestError",
1191
+ '404': "NotFoundError",
1192
+ '422': "HTTPValidationError",
1193
+ }
1194
+ response_data = self.api_client.call_api(
1195
+ *_param,
1196
+ _request_timeout=_request_timeout
1197
+ )
1198
+ return response_data.response
1199
+
1200
+
1201
+ def _list_org_role_bindings_serialize(
1202
+ self,
1203
+ search,
1204
+ bound_member_kind,
1205
+ user_types,
1206
+ page,
1207
+ page_size,
1208
+ _request_auth,
1209
+ _content_type,
1210
+ _headers,
1211
+ _host_index,
1212
+ ) -> RequestSerialized:
1213
+
1214
+ _host = None
1215
+
1216
+ _collection_formats: Dict[str, str] = {
1217
+ 'user_types': 'multi',
1218
+ }
1219
+
1220
+ _path_params: Dict[str, str] = {}
1221
+ _query_params: List[Tuple[str, str]] = []
1222
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1223
+ _form_params: List[Tuple[str, str]] = []
1224
+ _files: Dict[
1225
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1226
+ ] = {}
1227
+ _body_params: Optional[bytes] = None
1228
+
1229
+ # process the path parameters
1230
+ # process the query parameters
1231
+ if search is not None:
1232
+
1233
+ _query_params.append(('search', search))
1234
+
1235
+ if bound_member_kind is not None:
1236
+
1237
+ _query_params.append(('bound_member_kind', bound_member_kind.value))
1238
+
1239
+ if user_types is not None:
1240
+
1241
+ _query_params.append(('user_types', user_types))
1242
+
1243
+ if page is not None:
1244
+
1245
+ _query_params.append(('page', page))
1246
+
1247
+ if page_size is not None:
1248
+
1249
+ _query_params.append(('page_size', page_size))
1250
+
1251
+ # process the header parameters
1252
+ # process the form parameters
1253
+ # process the body parameter
1254
+
1255
+
1256
+ # set the HTTP header `Accept`
1257
+ if 'Accept' not in _header_params:
1258
+ _header_params['Accept'] = self.api_client.select_header_accept(
1259
+ [
1260
+ 'application/json'
1261
+ ]
1262
+ )
1263
+
1264
+
1265
+ # authentication setting
1266
+ _auth_settings: List[str] = [
1267
+ 'OAuth2AuthorizationCode'
1268
+ ]
1269
+
1270
+ return self.api_client.param_serialize(
1271
+ method='GET',
1272
+ resource_path='/api/v1/organization/role_bindings',
1273
+ path_params=_path_params,
1274
+ query_params=_query_params,
1275
+ header_params=_header_params,
1276
+ body=_body_params,
1277
+ post_params=_form_params,
1278
+ files=_files,
1279
+ auth_settings=_auth_settings,
1280
+ collection_formats=_collection_formats,
1281
+ _host=_host,
1282
+ _request_auth=_request_auth
1283
+ )
1284
+
1285
+
1286
+
1287
+
1288
+ @validate_call
1289
+ def list_permissions_library(
1290
+ self,
1291
+ search_string: Annotated[Optional[StrictStr], Field(description="String to search on. Will perform a substring match of name and description.")] = None,
1292
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1293
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1294
+ _request_timeout: Union[
1295
+ None,
1296
+ Annotated[StrictFloat, Field(gt=0)],
1297
+ Tuple[
1298
+ Annotated[StrictFloat, Field(gt=0)],
1299
+ Annotated[StrictFloat, Field(gt=0)]
1300
+ ]
1301
+ ] = None,
1302
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1303
+ _content_type: Optional[StrictStr] = None,
1304
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1305
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1306
+ ) -> ResourceListPermission:
1307
+ """List Permissions
1308
+
1309
+ Returns list of available permissions.
1310
+
1311
+ :param search_string: String to search on. Will perform a substring match of name and description.
1312
+ :type search_string: str
1313
+ :param page: The page to return starting from 1 up to total_pages.
1314
+ :type page: int
1315
+ :param page_size: The number of records per page. The max is 1000.
1316
+ :type page_size: int
1317
+ :param _request_timeout: timeout setting for this request. If one
1318
+ number provided, it will be total request
1319
+ timeout. It can also be a pair (tuple) of
1320
+ (connection, read) timeouts.
1321
+ :type _request_timeout: int, tuple(int, int), optional
1322
+ :param _request_auth: set to override the auth_settings for an a single
1323
+ request; this effectively ignores the
1324
+ authentication in the spec for a single request.
1325
+ :type _request_auth: dict, optional
1326
+ :param _content_type: force content-type for the request.
1327
+ :type _content_type: str, Optional
1328
+ :param _headers: set to override the headers for a single
1329
+ request; this effectively ignores the headers
1330
+ in the spec for a single request.
1331
+ :type _headers: dict, optional
1332
+ :param _host_index: set to override the host_index for a single
1333
+ request; this effectively ignores the host_index
1334
+ in the spec for a single request.
1335
+ :type _host_index: int, optional
1336
+ :return: Returns the result object.
1337
+ """ # noqa: E501
1338
+
1339
+ _param = self._list_permissions_library_serialize(
1340
+ search_string=search_string,
1341
+ page=page,
1342
+ page_size=page_size,
1343
+ _request_auth=_request_auth,
1344
+ _content_type=_content_type,
1345
+ _headers=_headers,
1346
+ _host_index=_host_index
1347
+ )
1348
+
1349
+ _response_types_map: Dict[str, Optional[str]] = {
1350
+ '200': "ResourceListPermission",
1351
+ '500': "InternalServerError",
1352
+ '422': "HTTPValidationError",
1353
+ }
1354
+ response_data = self.api_client.call_api(
1355
+ *_param,
1356
+ _request_timeout=_request_timeout
1357
+ )
1358
+ response_data.read()
1359
+ return self.api_client.response_deserialize(
1360
+ response_data=response_data,
1361
+ response_types_map=_response_types_map,
1362
+ ).data
1363
+
1364
+
1365
+ @validate_call
1366
+ def list_permissions_library_with_http_info(
1367
+ self,
1368
+ search_string: Annotated[Optional[StrictStr], Field(description="String to search on. Will perform a substring match of name and description.")] = None,
1369
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1370
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1371
+ _request_timeout: Union[
1372
+ None,
1373
+ Annotated[StrictFloat, Field(gt=0)],
1374
+ Tuple[
1375
+ Annotated[StrictFloat, Field(gt=0)],
1376
+ Annotated[StrictFloat, Field(gt=0)]
1377
+ ]
1378
+ ] = None,
1379
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1380
+ _content_type: Optional[StrictStr] = None,
1381
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1382
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1383
+ ) -> ApiResponse[ResourceListPermission]:
1384
+ """List Permissions
1385
+
1386
+ Returns list of available permissions.
1387
+
1388
+ :param search_string: String to search on. Will perform a substring match of name and description.
1389
+ :type search_string: str
1390
+ :param page: The page to return starting from 1 up to total_pages.
1391
+ :type page: int
1392
+ :param page_size: The number of records per page. The max is 1000.
1393
+ :type page_size: int
1394
+ :param _request_timeout: timeout setting for this request. If one
1395
+ number provided, it will be total request
1396
+ timeout. It can also be a pair (tuple) of
1397
+ (connection, read) timeouts.
1398
+ :type _request_timeout: int, tuple(int, int), optional
1399
+ :param _request_auth: set to override the auth_settings for an a single
1400
+ request; this effectively ignores the
1401
+ authentication in the spec for a single request.
1402
+ :type _request_auth: dict, optional
1403
+ :param _content_type: force content-type for the request.
1404
+ :type _content_type: str, Optional
1405
+ :param _headers: set to override the headers for a single
1406
+ request; this effectively ignores the headers
1407
+ in the spec for a single request.
1408
+ :type _headers: dict, optional
1409
+ :param _host_index: set to override the host_index for a single
1410
+ request; this effectively ignores the host_index
1411
+ in the spec for a single request.
1412
+ :type _host_index: int, optional
1413
+ :return: Returns the result object.
1414
+ """ # noqa: E501
1415
+
1416
+ _param = self._list_permissions_library_serialize(
1417
+ search_string=search_string,
1418
+ page=page,
1419
+ page_size=page_size,
1420
+ _request_auth=_request_auth,
1421
+ _content_type=_content_type,
1422
+ _headers=_headers,
1423
+ _host_index=_host_index
1424
+ )
1425
+
1426
+ _response_types_map: Dict[str, Optional[str]] = {
1427
+ '200': "ResourceListPermission",
1428
+ '500': "InternalServerError",
1429
+ '422': "HTTPValidationError",
1430
+ }
1431
+ response_data = self.api_client.call_api(
1432
+ *_param,
1433
+ _request_timeout=_request_timeout
1434
+ )
1435
+ response_data.read()
1436
+ return self.api_client.response_deserialize(
1437
+ response_data=response_data,
1438
+ response_types_map=_response_types_map,
1439
+ )
1440
+
1441
+
1442
+ @validate_call
1443
+ def list_permissions_library_without_preload_content(
1444
+ self,
1445
+ search_string: Annotated[Optional[StrictStr], Field(description="String to search on. Will perform a substring match of name and description.")] = None,
1446
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1447
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1448
+ _request_timeout: Union[
1449
+ None,
1450
+ Annotated[StrictFloat, Field(gt=0)],
1451
+ Tuple[
1452
+ Annotated[StrictFloat, Field(gt=0)],
1453
+ Annotated[StrictFloat, Field(gt=0)]
1454
+ ]
1455
+ ] = None,
1456
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1457
+ _content_type: Optional[StrictStr] = None,
1458
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1459
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1460
+ ) -> RESTResponseType:
1461
+ """List Permissions
1462
+
1463
+ Returns list of available permissions.
1464
+
1465
+ :param search_string: String to search on. Will perform a substring match of name and description.
1466
+ :type search_string: str
1467
+ :param page: The page to return starting from 1 up to total_pages.
1468
+ :type page: int
1469
+ :param page_size: The number of records per page. The max is 1000.
1470
+ :type page_size: int
1471
+ :param _request_timeout: timeout setting for this request. If one
1472
+ number provided, it will be total request
1473
+ timeout. It can also be a pair (tuple) of
1474
+ (connection, read) timeouts.
1475
+ :type _request_timeout: int, tuple(int, int), optional
1476
+ :param _request_auth: set to override the auth_settings for an a single
1477
+ request; this effectively ignores the
1478
+ authentication in the spec for a single request.
1479
+ :type _request_auth: dict, optional
1480
+ :param _content_type: force content-type for the request.
1481
+ :type _content_type: str, Optional
1482
+ :param _headers: set to override the headers for a single
1483
+ request; this effectively ignores the headers
1484
+ in the spec for a single request.
1485
+ :type _headers: dict, optional
1486
+ :param _host_index: set to override the host_index for a single
1487
+ request; this effectively ignores the host_index
1488
+ in the spec for a single request.
1489
+ :type _host_index: int, optional
1490
+ :return: Returns the result object.
1491
+ """ # noqa: E501
1492
+
1493
+ _param = self._list_permissions_library_serialize(
1494
+ search_string=search_string,
1495
+ page=page,
1496
+ page_size=page_size,
1497
+ _request_auth=_request_auth,
1498
+ _content_type=_content_type,
1499
+ _headers=_headers,
1500
+ _host_index=_host_index
1501
+ )
1502
+
1503
+ _response_types_map: Dict[str, Optional[str]] = {
1504
+ '200': "ResourceListPermission",
1505
+ '500': "InternalServerError",
1506
+ '422': "HTTPValidationError",
1507
+ }
1508
+ response_data = self.api_client.call_api(
1509
+ *_param,
1510
+ _request_timeout=_request_timeout
1511
+ )
1512
+ return response_data.response
1513
+
1514
+
1515
+ def _list_permissions_library_serialize(
1516
+ self,
1517
+ search_string,
1518
+ page,
1519
+ page_size,
1520
+ _request_auth,
1521
+ _content_type,
1522
+ _headers,
1523
+ _host_index,
1524
+ ) -> RequestSerialized:
1525
+
1526
+ _host = None
1527
+
1528
+ _collection_formats: Dict[str, str] = {
1529
+ }
1530
+
1531
+ _path_params: Dict[str, str] = {}
1532
+ _query_params: List[Tuple[str, str]] = []
1533
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1534
+ _form_params: List[Tuple[str, str]] = []
1535
+ _files: Dict[
1536
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1537
+ ] = {}
1538
+ _body_params: Optional[bytes] = None
1539
+
1540
+ # process the path parameters
1541
+ # process the query parameters
1542
+ if search_string is not None:
1543
+
1544
+ _query_params.append(('search_string', search_string))
1545
+
1546
+ if page is not None:
1547
+
1548
+ _query_params.append(('page', page))
1549
+
1550
+ if page_size is not None:
1551
+
1552
+ _query_params.append(('page_size', page_size))
1553
+
1554
+ # process the header parameters
1555
+ # process the form parameters
1556
+ # process the body parameter
1557
+
1558
+
1559
+ # set the HTTP header `Accept`
1560
+ if 'Accept' not in _header_params:
1561
+ _header_params['Accept'] = self.api_client.select_header_accept(
1562
+ [
1563
+ 'application/json'
1564
+ ]
1565
+ )
1566
+
1567
+
1568
+ # authentication setting
1569
+ _auth_settings: List[str] = [
1570
+ 'OAuth2AuthorizationCode'
1571
+ ]
1572
+
1573
+ return self.api_client.param_serialize(
1574
+ method='GET',
1575
+ resource_path='/api/v1/permissions',
1576
+ path_params=_path_params,
1577
+ query_params=_query_params,
1578
+ header_params=_header_params,
1579
+ body=_body_params,
1580
+ post_params=_form_params,
1581
+ files=_files,
1582
+ auth_settings=_auth_settings,
1583
+ collection_formats=_collection_formats,
1584
+ _host=_host,
1585
+ _request_auth=_request_auth
1586
+ )
1587
+
1588
+
1589
+
1590
+
1591
+ @validate_call
1592
+ def list_project_role_bindings(
1593
+ self,
1594
+ project_id: StrictStr,
1595
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, parent workspace name or ID, user ID or group ID.")] = None,
1596
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
1597
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
1598
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1599
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1600
+ _request_timeout: Union[
1601
+ None,
1602
+ Annotated[StrictFloat, Field(gt=0)],
1603
+ Tuple[
1604
+ Annotated[StrictFloat, Field(gt=0)],
1605
+ Annotated[StrictFloat, Field(gt=0)]
1606
+ ]
1607
+ ] = None,
1608
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1609
+ _content_type: Optional[StrictStr] = None,
1610
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1611
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1612
+ ) -> ResourceListRoleBinding:
1613
+ """List Project Role Bindings.
1614
+
1615
+ Fetches all project role bindings. Requires project_list_role_bindings permission.
1616
+
1617
+ :param project_id: (required)
1618
+ :type project_id: str
1619
+ :param search: Search for role bindings by user name, group name, role name, parent workspace name or ID, user ID or group ID.
1620
+ :type search: str
1621
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
1622
+ :type bound_member_kind: BoundMemberKind
1623
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
1624
+ :type user_types: List[UserType]
1625
+ :param page: The page to return starting from 1 up to total_pages.
1626
+ :type page: int
1627
+ :param page_size: The number of records per page. The max is 1000.
1628
+ :type page_size: int
1629
+ :param _request_timeout: timeout setting for this request. If one
1630
+ number provided, it will be total request
1631
+ timeout. It can also be a pair (tuple) of
1632
+ (connection, read) timeouts.
1633
+ :type _request_timeout: int, tuple(int, int), optional
1634
+ :param _request_auth: set to override the auth_settings for an a single
1635
+ request; this effectively ignores the
1636
+ authentication in the spec for a single request.
1637
+ :type _request_auth: dict, optional
1638
+ :param _content_type: force content-type for the request.
1639
+ :type _content_type: str, Optional
1640
+ :param _headers: set to override the headers for a single
1641
+ request; this effectively ignores the headers
1642
+ in the spec for a single request.
1643
+ :type _headers: dict, optional
1644
+ :param _host_index: set to override the host_index for a single
1645
+ request; this effectively ignores the host_index
1646
+ in the spec for a single request.
1647
+ :type _host_index: int, optional
1648
+ :return: Returns the result object.
1649
+ """ # noqa: E501
1650
+
1651
+ _param = self._list_project_role_bindings_serialize(
1652
+ project_id=project_id,
1653
+ search=search,
1654
+ bound_member_kind=bound_member_kind,
1655
+ user_types=user_types,
1656
+ page=page,
1657
+ page_size=page_size,
1658
+ _request_auth=_request_auth,
1659
+ _content_type=_content_type,
1660
+ _headers=_headers,
1661
+ _host_index=_host_index
1662
+ )
1663
+
1664
+ _response_types_map: Dict[str, Optional[str]] = {
1665
+ '200': "ResourceListRoleBinding",
1666
+ '500': "InternalServerError",
1667
+ '400': "BadRequestError",
1668
+ '404': "NotFoundError",
1669
+ '422': "HTTPValidationError",
1670
+ }
1671
+ response_data = self.api_client.call_api(
1672
+ *_param,
1673
+ _request_timeout=_request_timeout
1674
+ )
1675
+ response_data.read()
1676
+ return self.api_client.response_deserialize(
1677
+ response_data=response_data,
1678
+ response_types_map=_response_types_map,
1679
+ ).data
1680
+
1681
+
1682
+ @validate_call
1683
+ def list_project_role_bindings_with_http_info(
1684
+ self,
1685
+ project_id: StrictStr,
1686
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, parent workspace name or ID, user ID or group ID.")] = None,
1687
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
1688
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
1689
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1690
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1691
+ _request_timeout: Union[
1692
+ None,
1693
+ Annotated[StrictFloat, Field(gt=0)],
1694
+ Tuple[
1695
+ Annotated[StrictFloat, Field(gt=0)],
1696
+ Annotated[StrictFloat, Field(gt=0)]
1697
+ ]
1698
+ ] = None,
1699
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1700
+ _content_type: Optional[StrictStr] = None,
1701
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1702
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1703
+ ) -> ApiResponse[ResourceListRoleBinding]:
1704
+ """List Project Role Bindings.
1705
+
1706
+ Fetches all project role bindings. Requires project_list_role_bindings permission.
1707
+
1708
+ :param project_id: (required)
1709
+ :type project_id: str
1710
+ :param search: Search for role bindings by user name, group name, role name, parent workspace name or ID, user ID or group ID.
1711
+ :type search: str
1712
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
1713
+ :type bound_member_kind: BoundMemberKind
1714
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
1715
+ :type user_types: List[UserType]
1716
+ :param page: The page to return starting from 1 up to total_pages.
1717
+ :type page: int
1718
+ :param page_size: The number of records per page. The max is 1000.
1719
+ :type page_size: int
1720
+ :param _request_timeout: timeout setting for this request. If one
1721
+ number provided, it will be total request
1722
+ timeout. It can also be a pair (tuple) of
1723
+ (connection, read) timeouts.
1724
+ :type _request_timeout: int, tuple(int, int), optional
1725
+ :param _request_auth: set to override the auth_settings for an a single
1726
+ request; this effectively ignores the
1727
+ authentication in the spec for a single request.
1728
+ :type _request_auth: dict, optional
1729
+ :param _content_type: force content-type for the request.
1730
+ :type _content_type: str, Optional
1731
+ :param _headers: set to override the headers for a single
1732
+ request; this effectively ignores the headers
1733
+ in the spec for a single request.
1734
+ :type _headers: dict, optional
1735
+ :param _host_index: set to override the host_index for a single
1736
+ request; this effectively ignores the host_index
1737
+ in the spec for a single request.
1738
+ :type _host_index: int, optional
1739
+ :return: Returns the result object.
1740
+ """ # noqa: E501
1741
+
1742
+ _param = self._list_project_role_bindings_serialize(
1743
+ project_id=project_id,
1744
+ search=search,
1745
+ bound_member_kind=bound_member_kind,
1746
+ user_types=user_types,
1747
+ page=page,
1748
+ page_size=page_size,
1749
+ _request_auth=_request_auth,
1750
+ _content_type=_content_type,
1751
+ _headers=_headers,
1752
+ _host_index=_host_index
1753
+ )
1754
+
1755
+ _response_types_map: Dict[str, Optional[str]] = {
1756
+ '200': "ResourceListRoleBinding",
1757
+ '500': "InternalServerError",
1758
+ '400': "BadRequestError",
1759
+ '404': "NotFoundError",
1760
+ '422': "HTTPValidationError",
1761
+ }
1762
+ response_data = self.api_client.call_api(
1763
+ *_param,
1764
+ _request_timeout=_request_timeout
1765
+ )
1766
+ response_data.read()
1767
+ return self.api_client.response_deserialize(
1768
+ response_data=response_data,
1769
+ response_types_map=_response_types_map,
1770
+ )
1771
+
1772
+
1773
+ @validate_call
1774
+ def list_project_role_bindings_without_preload_content(
1775
+ self,
1776
+ project_id: StrictStr,
1777
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, parent workspace name or ID, user ID or group ID.")] = None,
1778
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
1779
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
1780
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1781
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1782
+ _request_timeout: Union[
1783
+ None,
1784
+ Annotated[StrictFloat, Field(gt=0)],
1785
+ Tuple[
1786
+ Annotated[StrictFloat, Field(gt=0)],
1787
+ Annotated[StrictFloat, Field(gt=0)]
1788
+ ]
1789
+ ] = None,
1790
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1791
+ _content_type: Optional[StrictStr] = None,
1792
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1793
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1794
+ ) -> RESTResponseType:
1795
+ """List Project Role Bindings.
1796
+
1797
+ Fetches all project role bindings. Requires project_list_role_bindings permission.
1798
+
1799
+ :param project_id: (required)
1800
+ :type project_id: str
1801
+ :param search: Search for role bindings by user name, group name, role name, parent workspace name or ID, user ID or group ID.
1802
+ :type search: str
1803
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
1804
+ :type bound_member_kind: BoundMemberKind
1805
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
1806
+ :type user_types: List[UserType]
1807
+ :param page: The page to return starting from 1 up to total_pages.
1808
+ :type page: int
1809
+ :param page_size: The number of records per page. The max is 1000.
1810
+ :type page_size: int
1811
+ :param _request_timeout: timeout setting for this request. If one
1812
+ number provided, it will be total request
1813
+ timeout. It can also be a pair (tuple) of
1814
+ (connection, read) timeouts.
1815
+ :type _request_timeout: int, tuple(int, int), optional
1816
+ :param _request_auth: set to override the auth_settings for an a single
1817
+ request; this effectively ignores the
1818
+ authentication in the spec for a single request.
1819
+ :type _request_auth: dict, optional
1820
+ :param _content_type: force content-type for the request.
1821
+ :type _content_type: str, Optional
1822
+ :param _headers: set to override the headers for a single
1823
+ request; this effectively ignores the headers
1824
+ in the spec for a single request.
1825
+ :type _headers: dict, optional
1826
+ :param _host_index: set to override the host_index for a single
1827
+ request; this effectively ignores the host_index
1828
+ in the spec for a single request.
1829
+ :type _host_index: int, optional
1830
+ :return: Returns the result object.
1831
+ """ # noqa: E501
1832
+
1833
+ _param = self._list_project_role_bindings_serialize(
1834
+ project_id=project_id,
1835
+ search=search,
1836
+ bound_member_kind=bound_member_kind,
1837
+ user_types=user_types,
1838
+ page=page,
1839
+ page_size=page_size,
1840
+ _request_auth=_request_auth,
1841
+ _content_type=_content_type,
1842
+ _headers=_headers,
1843
+ _host_index=_host_index
1844
+ )
1845
+
1846
+ _response_types_map: Dict[str, Optional[str]] = {
1847
+ '200': "ResourceListRoleBinding",
1848
+ '500': "InternalServerError",
1849
+ '400': "BadRequestError",
1850
+ '404': "NotFoundError",
1851
+ '422': "HTTPValidationError",
1852
+ }
1853
+ response_data = self.api_client.call_api(
1854
+ *_param,
1855
+ _request_timeout=_request_timeout
1856
+ )
1857
+ return response_data.response
1858
+
1859
+
1860
+ def _list_project_role_bindings_serialize(
1861
+ self,
1862
+ project_id,
1863
+ search,
1864
+ bound_member_kind,
1865
+ user_types,
1866
+ page,
1867
+ page_size,
1868
+ _request_auth,
1869
+ _content_type,
1870
+ _headers,
1871
+ _host_index,
1872
+ ) -> RequestSerialized:
1873
+
1874
+ _host = None
1875
+
1876
+ _collection_formats: Dict[str, str] = {
1877
+ 'user_types': 'multi',
1878
+ }
1879
+
1880
+ _path_params: Dict[str, str] = {}
1881
+ _query_params: List[Tuple[str, str]] = []
1882
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1883
+ _form_params: List[Tuple[str, str]] = []
1884
+ _files: Dict[
1885
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1886
+ ] = {}
1887
+ _body_params: Optional[bytes] = None
1888
+
1889
+ # process the path parameters
1890
+ if project_id is not None:
1891
+ _path_params['project_id'] = project_id
1892
+ # process the query parameters
1893
+ if search is not None:
1894
+
1895
+ _query_params.append(('search', search))
1896
+
1897
+ if bound_member_kind is not None:
1898
+
1899
+ _query_params.append(('bound_member_kind', bound_member_kind.value))
1900
+
1901
+ if user_types is not None:
1902
+
1903
+ _query_params.append(('user_types', user_types))
1904
+
1905
+ if page is not None:
1906
+
1907
+ _query_params.append(('page', page))
1908
+
1909
+ if page_size is not None:
1910
+
1911
+ _query_params.append(('page_size', page_size))
1912
+
1913
+ # process the header parameters
1914
+ # process the form parameters
1915
+ # process the body parameter
1916
+
1917
+
1918
+ # set the HTTP header `Accept`
1919
+ if 'Accept' not in _header_params:
1920
+ _header_params['Accept'] = self.api_client.select_header_accept(
1921
+ [
1922
+ 'application/json'
1923
+ ]
1924
+ )
1925
+
1926
+
1927
+ # authentication setting
1928
+ _auth_settings: List[str] = [
1929
+ 'OAuth2AuthorizationCode'
1930
+ ]
1931
+
1932
+ return self.api_client.param_serialize(
1933
+ method='GET',
1934
+ resource_path='/api/v1/projects/{project_id}/role_bindings',
1935
+ path_params=_path_params,
1936
+ query_params=_query_params,
1937
+ header_params=_header_params,
1938
+ body=_body_params,
1939
+ post_params=_form_params,
1940
+ files=_files,
1941
+ auth_settings=_auth_settings,
1942
+ collection_formats=_collection_formats,
1943
+ _host=_host,
1944
+ _request_auth=_request_auth
1945
+ )
1946
+
1947
+
1948
+
1949
+
1950
+ @validate_call
1951
+ def list_roles(
1952
+ self,
1953
+ sort: Annotated[Optional[RoleSort], Field(description="Override the field used for sorting. Optional.")] = None,
1954
+ order: Annotated[Optional[SortOrder], Field(description="Override the sort order of the returned list. Optional.")] = None,
1955
+ name: Annotated[Optional[StrictStr], Field(description="Filter the list of roles by name. Optional.")] = None,
1956
+ organization_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by organization bindable. Optional.")] = None,
1957
+ workspace_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by workspace bindable. Optional.")] = None,
1958
+ project_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by project bindable. Optional.")] = None,
1959
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
1960
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
1961
+ _request_timeout: Union[
1962
+ None,
1963
+ Annotated[StrictFloat, Field(gt=0)],
1964
+ Tuple[
1965
+ Annotated[StrictFloat, Field(gt=0)],
1966
+ Annotated[StrictFloat, Field(gt=0)]
1967
+ ]
1968
+ ] = None,
1969
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1970
+ _content_type: Optional[StrictStr] = None,
1971
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1972
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1973
+ ) -> ResourceListRole:
1974
+ """List Roles
1975
+
1976
+ Fetches all roles. Requires organization_list_roles permission.
1977
+
1978
+ :param sort: Override the field used for sorting. Optional.
1979
+ :type sort: RoleSort
1980
+ :param order: Override the sort order of the returned list. Optional.
1981
+ :type order: SortOrder
1982
+ :param name: Filter the list of roles by name. Optional.
1983
+ :type name: str
1984
+ :param organization_bindable: Filter the list of roles by organization bindable. Optional.
1985
+ :type organization_bindable: bool
1986
+ :param workspace_bindable: Filter the list of roles by workspace bindable. Optional.
1987
+ :type workspace_bindable: bool
1988
+ :param project_bindable: Filter the list of roles by project bindable. Optional.
1989
+ :type project_bindable: bool
1990
+ :param page: The page to return starting from 1 up to total_pages.
1991
+ :type page: int
1992
+ :param page_size: The number of records per page. The max is 1000.
1993
+ :type page_size: int
1994
+ :param _request_timeout: timeout setting for this request. If one
1995
+ number provided, it will be total request
1996
+ timeout. It can also be a pair (tuple) of
1997
+ (connection, read) timeouts.
1998
+ :type _request_timeout: int, tuple(int, int), optional
1999
+ :param _request_auth: set to override the auth_settings for an a single
2000
+ request; this effectively ignores the
2001
+ authentication in the spec for a single request.
2002
+ :type _request_auth: dict, optional
2003
+ :param _content_type: force content-type for the request.
2004
+ :type _content_type: str, Optional
2005
+ :param _headers: set to override the headers for a single
2006
+ request; this effectively ignores the headers
2007
+ in the spec for a single request.
2008
+ :type _headers: dict, optional
2009
+ :param _host_index: set to override the host_index for a single
2010
+ request; this effectively ignores the host_index
2011
+ in the spec for a single request.
2012
+ :type _host_index: int, optional
2013
+ :return: Returns the result object.
2014
+ """ # noqa: E501
2015
+
2016
+ _param = self._list_roles_serialize(
2017
+ sort=sort,
2018
+ order=order,
2019
+ name=name,
2020
+ organization_bindable=organization_bindable,
2021
+ workspace_bindable=workspace_bindable,
2022
+ project_bindable=project_bindable,
2023
+ page=page,
2024
+ page_size=page_size,
2025
+ _request_auth=_request_auth,
2026
+ _content_type=_content_type,
2027
+ _headers=_headers,
2028
+ _host_index=_host_index
2029
+ )
2030
+
2031
+ _response_types_map: Dict[str, Optional[str]] = {
2032
+ '200': "ResourceListRole",
2033
+ '500': "InternalServerError",
2034
+ '404': "NotFoundError",
2035
+ '422': "HTTPValidationError",
2036
+ }
2037
+ response_data = self.api_client.call_api(
2038
+ *_param,
2039
+ _request_timeout=_request_timeout
2040
+ )
2041
+ response_data.read()
2042
+ return self.api_client.response_deserialize(
2043
+ response_data=response_data,
2044
+ response_types_map=_response_types_map,
2045
+ ).data
2046
+
2047
+
2048
+ @validate_call
2049
+ def list_roles_with_http_info(
2050
+ self,
2051
+ sort: Annotated[Optional[RoleSort], Field(description="Override the field used for sorting. Optional.")] = None,
2052
+ order: Annotated[Optional[SortOrder], Field(description="Override the sort order of the returned list. Optional.")] = None,
2053
+ name: Annotated[Optional[StrictStr], Field(description="Filter the list of roles by name. Optional.")] = None,
2054
+ organization_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by organization bindable. Optional.")] = None,
2055
+ workspace_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by workspace bindable. Optional.")] = None,
2056
+ project_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by project bindable. Optional.")] = None,
2057
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2058
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2059
+ _request_timeout: Union[
2060
+ None,
2061
+ Annotated[StrictFloat, Field(gt=0)],
2062
+ Tuple[
2063
+ Annotated[StrictFloat, Field(gt=0)],
2064
+ Annotated[StrictFloat, Field(gt=0)]
2065
+ ]
2066
+ ] = None,
2067
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2068
+ _content_type: Optional[StrictStr] = None,
2069
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2070
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2071
+ ) -> ApiResponse[ResourceListRole]:
2072
+ """List Roles
2073
+
2074
+ Fetches all roles. Requires organization_list_roles permission.
2075
+
2076
+ :param sort: Override the field used for sorting. Optional.
2077
+ :type sort: RoleSort
2078
+ :param order: Override the sort order of the returned list. Optional.
2079
+ :type order: SortOrder
2080
+ :param name: Filter the list of roles by name. Optional.
2081
+ :type name: str
2082
+ :param organization_bindable: Filter the list of roles by organization bindable. Optional.
2083
+ :type organization_bindable: bool
2084
+ :param workspace_bindable: Filter the list of roles by workspace bindable. Optional.
2085
+ :type workspace_bindable: bool
2086
+ :param project_bindable: Filter the list of roles by project bindable. Optional.
2087
+ :type project_bindable: bool
2088
+ :param page: The page to return starting from 1 up to total_pages.
2089
+ :type page: int
2090
+ :param page_size: The number of records per page. The max is 1000.
2091
+ :type page_size: int
2092
+ :param _request_timeout: timeout setting for this request. If one
2093
+ number provided, it will be total request
2094
+ timeout. It can also be a pair (tuple) of
2095
+ (connection, read) timeouts.
2096
+ :type _request_timeout: int, tuple(int, int), optional
2097
+ :param _request_auth: set to override the auth_settings for an a single
2098
+ request; this effectively ignores the
2099
+ authentication in the spec for a single request.
2100
+ :type _request_auth: dict, optional
2101
+ :param _content_type: force content-type for the request.
2102
+ :type _content_type: str, Optional
2103
+ :param _headers: set to override the headers for a single
2104
+ request; this effectively ignores the headers
2105
+ in the spec for a single request.
2106
+ :type _headers: dict, optional
2107
+ :param _host_index: set to override the host_index for a single
2108
+ request; this effectively ignores the host_index
2109
+ in the spec for a single request.
2110
+ :type _host_index: int, optional
2111
+ :return: Returns the result object.
2112
+ """ # noqa: E501
2113
+
2114
+ _param = self._list_roles_serialize(
2115
+ sort=sort,
2116
+ order=order,
2117
+ name=name,
2118
+ organization_bindable=organization_bindable,
2119
+ workspace_bindable=workspace_bindable,
2120
+ project_bindable=project_bindable,
2121
+ page=page,
2122
+ page_size=page_size,
2123
+ _request_auth=_request_auth,
2124
+ _content_type=_content_type,
2125
+ _headers=_headers,
2126
+ _host_index=_host_index
2127
+ )
2128
+
2129
+ _response_types_map: Dict[str, Optional[str]] = {
2130
+ '200': "ResourceListRole",
2131
+ '500': "InternalServerError",
2132
+ '404': "NotFoundError",
2133
+ '422': "HTTPValidationError",
2134
+ }
2135
+ response_data = self.api_client.call_api(
2136
+ *_param,
2137
+ _request_timeout=_request_timeout
2138
+ )
2139
+ response_data.read()
2140
+ return self.api_client.response_deserialize(
2141
+ response_data=response_data,
2142
+ response_types_map=_response_types_map,
2143
+ )
2144
+
2145
+
2146
+ @validate_call
2147
+ def list_roles_without_preload_content(
2148
+ self,
2149
+ sort: Annotated[Optional[RoleSort], Field(description="Override the field used for sorting. Optional.")] = None,
2150
+ order: Annotated[Optional[SortOrder], Field(description="Override the sort order of the returned list. Optional.")] = None,
2151
+ name: Annotated[Optional[StrictStr], Field(description="Filter the list of roles by name. Optional.")] = None,
2152
+ organization_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by organization bindable. Optional.")] = None,
2153
+ workspace_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by workspace bindable. Optional.")] = None,
2154
+ project_bindable: Annotated[Optional[StrictBool], Field(description="Filter the list of roles by project bindable. Optional.")] = None,
2155
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2156
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2157
+ _request_timeout: Union[
2158
+ None,
2159
+ Annotated[StrictFloat, Field(gt=0)],
2160
+ Tuple[
2161
+ Annotated[StrictFloat, Field(gt=0)],
2162
+ Annotated[StrictFloat, Field(gt=0)]
2163
+ ]
2164
+ ] = None,
2165
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2166
+ _content_type: Optional[StrictStr] = None,
2167
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2168
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2169
+ ) -> RESTResponseType:
2170
+ """List Roles
2171
+
2172
+ Fetches all roles. Requires organization_list_roles permission.
2173
+
2174
+ :param sort: Override the field used for sorting. Optional.
2175
+ :type sort: RoleSort
2176
+ :param order: Override the sort order of the returned list. Optional.
2177
+ :type order: SortOrder
2178
+ :param name: Filter the list of roles by name. Optional.
2179
+ :type name: str
2180
+ :param organization_bindable: Filter the list of roles by organization bindable. Optional.
2181
+ :type organization_bindable: bool
2182
+ :param workspace_bindable: Filter the list of roles by workspace bindable. Optional.
2183
+ :type workspace_bindable: bool
2184
+ :param project_bindable: Filter the list of roles by project bindable. Optional.
2185
+ :type project_bindable: bool
2186
+ :param page: The page to return starting from 1 up to total_pages.
2187
+ :type page: int
2188
+ :param page_size: The number of records per page. The max is 1000.
2189
+ :type page_size: int
2190
+ :param _request_timeout: timeout setting for this request. If one
2191
+ number provided, it will be total request
2192
+ timeout. It can also be a pair (tuple) of
2193
+ (connection, read) timeouts.
2194
+ :type _request_timeout: int, tuple(int, int), optional
2195
+ :param _request_auth: set to override the auth_settings for an a single
2196
+ request; this effectively ignores the
2197
+ authentication in the spec for a single request.
2198
+ :type _request_auth: dict, optional
2199
+ :param _content_type: force content-type for the request.
2200
+ :type _content_type: str, Optional
2201
+ :param _headers: set to override the headers for a single
2202
+ request; this effectively ignores the headers
2203
+ in the spec for a single request.
2204
+ :type _headers: dict, optional
2205
+ :param _host_index: set to override the host_index for a single
2206
+ request; this effectively ignores the host_index
2207
+ in the spec for a single request.
2208
+ :type _host_index: int, optional
2209
+ :return: Returns the result object.
2210
+ """ # noqa: E501
2211
+
2212
+ _param = self._list_roles_serialize(
2213
+ sort=sort,
2214
+ order=order,
2215
+ name=name,
2216
+ organization_bindable=organization_bindable,
2217
+ workspace_bindable=workspace_bindable,
2218
+ project_bindable=project_bindable,
2219
+ page=page,
2220
+ page_size=page_size,
2221
+ _request_auth=_request_auth,
2222
+ _content_type=_content_type,
2223
+ _headers=_headers,
2224
+ _host_index=_host_index
2225
+ )
2226
+
2227
+ _response_types_map: Dict[str, Optional[str]] = {
2228
+ '200': "ResourceListRole",
2229
+ '500': "InternalServerError",
2230
+ '404': "NotFoundError",
2231
+ '422': "HTTPValidationError",
2232
+ }
2233
+ response_data = self.api_client.call_api(
2234
+ *_param,
2235
+ _request_timeout=_request_timeout
2236
+ )
2237
+ return response_data.response
2238
+
2239
+
2240
+ def _list_roles_serialize(
2241
+ self,
2242
+ sort,
2243
+ order,
2244
+ name,
2245
+ organization_bindable,
2246
+ workspace_bindable,
2247
+ project_bindable,
2248
+ page,
2249
+ page_size,
2250
+ _request_auth,
2251
+ _content_type,
2252
+ _headers,
2253
+ _host_index,
2254
+ ) -> RequestSerialized:
2255
+
2256
+ _host = None
2257
+
2258
+ _collection_formats: Dict[str, str] = {
2259
+ }
2260
+
2261
+ _path_params: Dict[str, str] = {}
2262
+ _query_params: List[Tuple[str, str]] = []
2263
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2264
+ _form_params: List[Tuple[str, str]] = []
2265
+ _files: Dict[
2266
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2267
+ ] = {}
2268
+ _body_params: Optional[bytes] = None
2269
+
2270
+ # process the path parameters
2271
+ # process the query parameters
2272
+ if sort is not None:
2273
+
2274
+ _query_params.append(('sort', sort.value))
2275
+
2276
+ if order is not None:
2277
+
2278
+ _query_params.append(('order', order.value))
2279
+
2280
+ if name is not None:
2281
+
2282
+ _query_params.append(('name', name))
2283
+
2284
+ if organization_bindable is not None:
2285
+
2286
+ _query_params.append(('organization_bindable', organization_bindable))
2287
+
2288
+ if workspace_bindable is not None:
2289
+
2290
+ _query_params.append(('workspace_bindable', workspace_bindable))
2291
+
2292
+ if project_bindable is not None:
2293
+
2294
+ _query_params.append(('project_bindable', project_bindable))
2295
+
2296
+ if page is not None:
2297
+
2298
+ _query_params.append(('page', page))
2299
+
2300
+ if page_size is not None:
2301
+
2302
+ _query_params.append(('page_size', page_size))
2303
+
2304
+ # process the header parameters
2305
+ # process the form parameters
2306
+ # process the body parameter
2307
+
2308
+
2309
+ # set the HTTP header `Accept`
2310
+ if 'Accept' not in _header_params:
2311
+ _header_params['Accept'] = self.api_client.select_header_accept(
2312
+ [
2313
+ 'application/json'
2314
+ ]
2315
+ )
2316
+
2317
+
2318
+ # authentication setting
2319
+ _auth_settings: List[str] = [
2320
+ 'OAuth2AuthorizationCode'
2321
+ ]
2322
+
2323
+ return self.api_client.param_serialize(
2324
+ method='GET',
2325
+ resource_path='/api/v1/organization/roles',
2326
+ path_params=_path_params,
2327
+ query_params=_query_params,
2328
+ header_params=_header_params,
2329
+ body=_body_params,
2330
+ post_params=_form_params,
2331
+ files=_files,
2332
+ auth_settings=_auth_settings,
2333
+ collection_formats=_collection_formats,
2334
+ _host=_host,
2335
+ _request_auth=_request_auth
2336
+ )
2337
+
2338
+
2339
+
2340
+
2341
+ @validate_call
2342
+ def list_user_role_bindings(
2343
+ self,
2344
+ user_id: StrictStr,
2345
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.")] = None,
2346
+ bound_resource_kind: Annotated[Optional[BoundResourceKind], Field(description="Filter the list of role bindings by the kind of the bound resource. Optional.")] = None,
2347
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2348
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2349
+ _request_timeout: Union[
2350
+ None,
2351
+ Annotated[StrictFloat, Field(gt=0)],
2352
+ Tuple[
2353
+ Annotated[StrictFloat, Field(gt=0)],
2354
+ Annotated[StrictFloat, Field(gt=0)]
2355
+ ]
2356
+ ] = None,
2357
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2358
+ _content_type: Optional[StrictStr] = None,
2359
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2360
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2361
+ ) -> ResourceListRoleBinding:
2362
+ """Get User Role Bindings.
2363
+
2364
+ Lists all role bindings for the user. Requires user_list_role_bindings permission.
2365
+
2366
+ :param user_id: (required)
2367
+ :type user_id: str
2368
+ :param search: Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.
2369
+ :type search: str
2370
+ :param bound_resource_kind: Filter the list of role bindings by the kind of the bound resource. Optional.
2371
+ :type bound_resource_kind: BoundResourceKind
2372
+ :param page: The page to return starting from 1 up to total_pages.
2373
+ :type page: int
2374
+ :param page_size: The number of records per page. The max is 1000.
2375
+ :type page_size: int
2376
+ :param _request_timeout: timeout setting for this request. If one
2377
+ number provided, it will be total request
2378
+ timeout. It can also be a pair (tuple) of
2379
+ (connection, read) timeouts.
2380
+ :type _request_timeout: int, tuple(int, int), optional
2381
+ :param _request_auth: set to override the auth_settings for an a single
2382
+ request; this effectively ignores the
2383
+ authentication in the spec for a single request.
2384
+ :type _request_auth: dict, optional
2385
+ :param _content_type: force content-type for the request.
2386
+ :type _content_type: str, Optional
2387
+ :param _headers: set to override the headers for a single
2388
+ request; this effectively ignores the headers
2389
+ in the spec for a single request.
2390
+ :type _headers: dict, optional
2391
+ :param _host_index: set to override the host_index for a single
2392
+ request; this effectively ignores the host_index
2393
+ in the spec for a single request.
2394
+ :type _host_index: int, optional
2395
+ :return: Returns the result object.
2396
+ """ # noqa: E501
2397
+
2398
+ _param = self._list_user_role_bindings_serialize(
2399
+ user_id=user_id,
2400
+ search=search,
2401
+ bound_resource_kind=bound_resource_kind,
2402
+ page=page,
2403
+ page_size=page_size,
2404
+ _request_auth=_request_auth,
2405
+ _content_type=_content_type,
2406
+ _headers=_headers,
2407
+ _host_index=_host_index
2408
+ )
2409
+
2410
+ _response_types_map: Dict[str, Optional[str]] = {
2411
+ '200': "ResourceListRoleBinding",
2412
+ '500': "InternalServerError",
2413
+ '400': "BadRequestError",
2414
+ '404': "NotFoundError",
2415
+ '422': "HTTPValidationError",
2416
+ }
2417
+ response_data = self.api_client.call_api(
2418
+ *_param,
2419
+ _request_timeout=_request_timeout
2420
+ )
2421
+ response_data.read()
2422
+ return self.api_client.response_deserialize(
2423
+ response_data=response_data,
2424
+ response_types_map=_response_types_map,
2425
+ ).data
2426
+
2427
+
2428
+ @validate_call
2429
+ def list_user_role_bindings_with_http_info(
2430
+ self,
2431
+ user_id: StrictStr,
2432
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.")] = None,
2433
+ bound_resource_kind: Annotated[Optional[BoundResourceKind], Field(description="Filter the list of role bindings by the kind of the bound resource. Optional.")] = None,
2434
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2435
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2436
+ _request_timeout: Union[
2437
+ None,
2438
+ Annotated[StrictFloat, Field(gt=0)],
2439
+ Tuple[
2440
+ Annotated[StrictFloat, Field(gt=0)],
2441
+ Annotated[StrictFloat, Field(gt=0)]
2442
+ ]
2443
+ ] = None,
2444
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2445
+ _content_type: Optional[StrictStr] = None,
2446
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2447
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2448
+ ) -> ApiResponse[ResourceListRoleBinding]:
2449
+ """Get User Role Bindings.
2450
+
2451
+ Lists all role bindings for the user. Requires user_list_role_bindings permission.
2452
+
2453
+ :param user_id: (required)
2454
+ :type user_id: str
2455
+ :param search: Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.
2456
+ :type search: str
2457
+ :param bound_resource_kind: Filter the list of role bindings by the kind of the bound resource. Optional.
2458
+ :type bound_resource_kind: BoundResourceKind
2459
+ :param page: The page to return starting from 1 up to total_pages.
2460
+ :type page: int
2461
+ :param page_size: The number of records per page. The max is 1000.
2462
+ :type page_size: int
2463
+ :param _request_timeout: timeout setting for this request. If one
2464
+ number provided, it will be total request
2465
+ timeout. It can also be a pair (tuple) of
2466
+ (connection, read) timeouts.
2467
+ :type _request_timeout: int, tuple(int, int), optional
2468
+ :param _request_auth: set to override the auth_settings for an a single
2469
+ request; this effectively ignores the
2470
+ authentication in the spec for a single request.
2471
+ :type _request_auth: dict, optional
2472
+ :param _content_type: force content-type for the request.
2473
+ :type _content_type: str, Optional
2474
+ :param _headers: set to override the headers for a single
2475
+ request; this effectively ignores the headers
2476
+ in the spec for a single request.
2477
+ :type _headers: dict, optional
2478
+ :param _host_index: set to override the host_index for a single
2479
+ request; this effectively ignores the host_index
2480
+ in the spec for a single request.
2481
+ :type _host_index: int, optional
2482
+ :return: Returns the result object.
2483
+ """ # noqa: E501
2484
+
2485
+ _param = self._list_user_role_bindings_serialize(
2486
+ user_id=user_id,
2487
+ search=search,
2488
+ bound_resource_kind=bound_resource_kind,
2489
+ page=page,
2490
+ page_size=page_size,
2491
+ _request_auth=_request_auth,
2492
+ _content_type=_content_type,
2493
+ _headers=_headers,
2494
+ _host_index=_host_index
2495
+ )
2496
+
2497
+ _response_types_map: Dict[str, Optional[str]] = {
2498
+ '200': "ResourceListRoleBinding",
2499
+ '500': "InternalServerError",
2500
+ '400': "BadRequestError",
2501
+ '404': "NotFoundError",
2502
+ '422': "HTTPValidationError",
2503
+ }
2504
+ response_data = self.api_client.call_api(
2505
+ *_param,
2506
+ _request_timeout=_request_timeout
2507
+ )
2508
+ response_data.read()
2509
+ return self.api_client.response_deserialize(
2510
+ response_data=response_data,
2511
+ response_types_map=_response_types_map,
2512
+ )
2513
+
2514
+
2515
+ @validate_call
2516
+ def list_user_role_bindings_without_preload_content(
2517
+ self,
2518
+ user_id: StrictStr,
2519
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.")] = None,
2520
+ bound_resource_kind: Annotated[Optional[BoundResourceKind], Field(description="Filter the list of role bindings by the kind of the bound resource. Optional.")] = None,
2521
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2522
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2523
+ _request_timeout: Union[
2524
+ None,
2525
+ Annotated[StrictFloat, Field(gt=0)],
2526
+ Tuple[
2527
+ Annotated[StrictFloat, Field(gt=0)],
2528
+ Annotated[StrictFloat, Field(gt=0)]
2529
+ ]
2530
+ ] = None,
2531
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2532
+ _content_type: Optional[StrictStr] = None,
2533
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2534
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2535
+ ) -> RESTResponseType:
2536
+ """Get User Role Bindings.
2537
+
2538
+ Lists all role bindings for the user. Requires user_list_role_bindings permission.
2539
+
2540
+ :param user_id: (required)
2541
+ :type user_id: str
2542
+ :param search: Search for role bindings by workspace name, project name, role name, workspace ID, or project ID.
2543
+ :type search: str
2544
+ :param bound_resource_kind: Filter the list of role bindings by the kind of the bound resource. Optional.
2545
+ :type bound_resource_kind: BoundResourceKind
2546
+ :param page: The page to return starting from 1 up to total_pages.
2547
+ :type page: int
2548
+ :param page_size: The number of records per page. The max is 1000.
2549
+ :type page_size: int
2550
+ :param _request_timeout: timeout setting for this request. If one
2551
+ number provided, it will be total request
2552
+ timeout. It can also be a pair (tuple) of
2553
+ (connection, read) timeouts.
2554
+ :type _request_timeout: int, tuple(int, int), optional
2555
+ :param _request_auth: set to override the auth_settings for an a single
2556
+ request; this effectively ignores the
2557
+ authentication in the spec for a single request.
2558
+ :type _request_auth: dict, optional
2559
+ :param _content_type: force content-type for the request.
2560
+ :type _content_type: str, Optional
2561
+ :param _headers: set to override the headers for a single
2562
+ request; this effectively ignores the headers
2563
+ in the spec for a single request.
2564
+ :type _headers: dict, optional
2565
+ :param _host_index: set to override the host_index for a single
2566
+ request; this effectively ignores the host_index
2567
+ in the spec for a single request.
2568
+ :type _host_index: int, optional
2569
+ :return: Returns the result object.
2570
+ """ # noqa: E501
2571
+
2572
+ _param = self._list_user_role_bindings_serialize(
2573
+ user_id=user_id,
2574
+ search=search,
2575
+ bound_resource_kind=bound_resource_kind,
2576
+ page=page,
2577
+ page_size=page_size,
2578
+ _request_auth=_request_auth,
2579
+ _content_type=_content_type,
2580
+ _headers=_headers,
2581
+ _host_index=_host_index
2582
+ )
2583
+
2584
+ _response_types_map: Dict[str, Optional[str]] = {
2585
+ '200': "ResourceListRoleBinding",
2586
+ '500': "InternalServerError",
2587
+ '400': "BadRequestError",
2588
+ '404': "NotFoundError",
2589
+ '422': "HTTPValidationError",
2590
+ }
2591
+ response_data = self.api_client.call_api(
2592
+ *_param,
2593
+ _request_timeout=_request_timeout
2594
+ )
2595
+ return response_data.response
2596
+
2597
+
2598
+ def _list_user_role_bindings_serialize(
2599
+ self,
2600
+ user_id,
2601
+ search,
2602
+ bound_resource_kind,
2603
+ page,
2604
+ page_size,
2605
+ _request_auth,
2606
+ _content_type,
2607
+ _headers,
2608
+ _host_index,
2609
+ ) -> RequestSerialized:
2610
+
2611
+ _host = None
2612
+
2613
+ _collection_formats: Dict[str, str] = {
2614
+ }
2615
+
2616
+ _path_params: Dict[str, str] = {}
2617
+ _query_params: List[Tuple[str, str]] = []
2618
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2619
+ _form_params: List[Tuple[str, str]] = []
2620
+ _files: Dict[
2621
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2622
+ ] = {}
2623
+ _body_params: Optional[bytes] = None
2624
+
2625
+ # process the path parameters
2626
+ if user_id is not None:
2627
+ _path_params['user_id'] = user_id
2628
+ # process the query parameters
2629
+ if search is not None:
2630
+
2631
+ _query_params.append(('search', search))
2632
+
2633
+ if bound_resource_kind is not None:
2634
+
2635
+ _query_params.append(('bound_resource_kind', bound_resource_kind.value))
2636
+
2637
+ if page is not None:
2638
+
2639
+ _query_params.append(('page', page))
2640
+
2641
+ if page_size is not None:
2642
+
2643
+ _query_params.append(('page_size', page_size))
2644
+
2645
+ # process the header parameters
2646
+ # process the form parameters
2647
+ # process the body parameter
2648
+
2649
+
2650
+ # set the HTTP header `Accept`
2651
+ if 'Accept' not in _header_params:
2652
+ _header_params['Accept'] = self.api_client.select_header_accept(
2653
+ [
2654
+ 'application/json'
2655
+ ]
2656
+ )
2657
+
2658
+
2659
+ # authentication setting
2660
+ _auth_settings: List[str] = [
2661
+ 'OAuth2AuthorizationCode'
2662
+ ]
2663
+
2664
+ return self.api_client.param_serialize(
2665
+ method='GET',
2666
+ resource_path='/api/v1/users/{user_id}/role_bindings',
2667
+ path_params=_path_params,
2668
+ query_params=_query_params,
2669
+ header_params=_header_params,
2670
+ body=_body_params,
2671
+ post_params=_form_params,
2672
+ files=_files,
2673
+ auth_settings=_auth_settings,
2674
+ collection_formats=_collection_formats,
2675
+ _host=_host,
2676
+ _request_auth=_request_auth
2677
+ )
2678
+
2679
+
2680
+
2681
+
2682
+ @validate_call
2683
+ def list_workspace_role_bindings(
2684
+ self,
2685
+ workspace_id: StrictStr,
2686
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, user ID or group ID.")] = None,
2687
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
2688
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
2689
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2690
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2691
+ _request_timeout: Union[
2692
+ None,
2693
+ Annotated[StrictFloat, Field(gt=0)],
2694
+ Tuple[
2695
+ Annotated[StrictFloat, Field(gt=0)],
2696
+ Annotated[StrictFloat, Field(gt=0)]
2697
+ ]
2698
+ ] = None,
2699
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2700
+ _content_type: Optional[StrictStr] = None,
2701
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2702
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2703
+ ) -> ResourceListRoleBinding:
2704
+ """List Workspace Role Bindings.
2705
+
2706
+ Fetches all workspace role bindings. Requires workspace_list_role_bindings permission.
2707
+
2708
+ :param workspace_id: (required)
2709
+ :type workspace_id: str
2710
+ :param search: Search for role bindings by user name, group name, role name, user ID or group ID.
2711
+ :type search: str
2712
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
2713
+ :type bound_member_kind: BoundMemberKind
2714
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
2715
+ :type user_types: List[UserType]
2716
+ :param page: The page to return starting from 1 up to total_pages.
2717
+ :type page: int
2718
+ :param page_size: The number of records per page. The max is 1000.
2719
+ :type page_size: int
2720
+ :param _request_timeout: timeout setting for this request. If one
2721
+ number provided, it will be total request
2722
+ timeout. It can also be a pair (tuple) of
2723
+ (connection, read) timeouts.
2724
+ :type _request_timeout: int, tuple(int, int), optional
2725
+ :param _request_auth: set to override the auth_settings for an a single
2726
+ request; this effectively ignores the
2727
+ authentication in the spec for a single request.
2728
+ :type _request_auth: dict, optional
2729
+ :param _content_type: force content-type for the request.
2730
+ :type _content_type: str, Optional
2731
+ :param _headers: set to override the headers for a single
2732
+ request; this effectively ignores the headers
2733
+ in the spec for a single request.
2734
+ :type _headers: dict, optional
2735
+ :param _host_index: set to override the host_index for a single
2736
+ request; this effectively ignores the host_index
2737
+ in the spec for a single request.
2738
+ :type _host_index: int, optional
2739
+ :return: Returns the result object.
2740
+ """ # noqa: E501
2741
+
2742
+ _param = self._list_workspace_role_bindings_serialize(
2743
+ workspace_id=workspace_id,
2744
+ search=search,
2745
+ bound_member_kind=bound_member_kind,
2746
+ user_types=user_types,
2747
+ page=page,
2748
+ page_size=page_size,
2749
+ _request_auth=_request_auth,
2750
+ _content_type=_content_type,
2751
+ _headers=_headers,
2752
+ _host_index=_host_index
2753
+ )
2754
+
2755
+ _response_types_map: Dict[str, Optional[str]] = {
2756
+ '200': "ResourceListRoleBinding",
2757
+ '500': "InternalServerError",
2758
+ '400': "BadRequestError",
2759
+ '404': "NotFoundError",
2760
+ '422': "HTTPValidationError",
2761
+ }
2762
+ response_data = self.api_client.call_api(
2763
+ *_param,
2764
+ _request_timeout=_request_timeout
2765
+ )
2766
+ response_data.read()
2767
+ return self.api_client.response_deserialize(
2768
+ response_data=response_data,
2769
+ response_types_map=_response_types_map,
2770
+ ).data
2771
+
2772
+
2773
+ @validate_call
2774
+ def list_workspace_role_bindings_with_http_info(
2775
+ self,
2776
+ workspace_id: StrictStr,
2777
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, user ID or group ID.")] = None,
2778
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
2779
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
2780
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2781
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2782
+ _request_timeout: Union[
2783
+ None,
2784
+ Annotated[StrictFloat, Field(gt=0)],
2785
+ Tuple[
2786
+ Annotated[StrictFloat, Field(gt=0)],
2787
+ Annotated[StrictFloat, Field(gt=0)]
2788
+ ]
2789
+ ] = None,
2790
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2791
+ _content_type: Optional[StrictStr] = None,
2792
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2793
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2794
+ ) -> ApiResponse[ResourceListRoleBinding]:
2795
+ """List Workspace Role Bindings.
2796
+
2797
+ Fetches all workspace role bindings. Requires workspace_list_role_bindings permission.
2798
+
2799
+ :param workspace_id: (required)
2800
+ :type workspace_id: str
2801
+ :param search: Search for role bindings by user name, group name, role name, user ID or group ID.
2802
+ :type search: str
2803
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
2804
+ :type bound_member_kind: BoundMemberKind
2805
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
2806
+ :type user_types: List[UserType]
2807
+ :param page: The page to return starting from 1 up to total_pages.
2808
+ :type page: int
2809
+ :param page_size: The number of records per page. The max is 1000.
2810
+ :type page_size: int
2811
+ :param _request_timeout: timeout setting for this request. If one
2812
+ number provided, it will be total request
2813
+ timeout. It can also be a pair (tuple) of
2814
+ (connection, read) timeouts.
2815
+ :type _request_timeout: int, tuple(int, int), optional
2816
+ :param _request_auth: set to override the auth_settings for an a single
2817
+ request; this effectively ignores the
2818
+ authentication in the spec for a single request.
2819
+ :type _request_auth: dict, optional
2820
+ :param _content_type: force content-type for the request.
2821
+ :type _content_type: str, Optional
2822
+ :param _headers: set to override the headers for a single
2823
+ request; this effectively ignores the headers
2824
+ in the spec for a single request.
2825
+ :type _headers: dict, optional
2826
+ :param _host_index: set to override the host_index for a single
2827
+ request; this effectively ignores the host_index
2828
+ in the spec for a single request.
2829
+ :type _host_index: int, optional
2830
+ :return: Returns the result object.
2831
+ """ # noqa: E501
2832
+
2833
+ _param = self._list_workspace_role_bindings_serialize(
2834
+ workspace_id=workspace_id,
2835
+ search=search,
2836
+ bound_member_kind=bound_member_kind,
2837
+ user_types=user_types,
2838
+ page=page,
2839
+ page_size=page_size,
2840
+ _request_auth=_request_auth,
2841
+ _content_type=_content_type,
2842
+ _headers=_headers,
2843
+ _host_index=_host_index
2844
+ )
2845
+
2846
+ _response_types_map: Dict[str, Optional[str]] = {
2847
+ '200': "ResourceListRoleBinding",
2848
+ '500': "InternalServerError",
2849
+ '400': "BadRequestError",
2850
+ '404': "NotFoundError",
2851
+ '422': "HTTPValidationError",
2852
+ }
2853
+ response_data = self.api_client.call_api(
2854
+ *_param,
2855
+ _request_timeout=_request_timeout
2856
+ )
2857
+ response_data.read()
2858
+ return self.api_client.response_deserialize(
2859
+ response_data=response_data,
2860
+ response_types_map=_response_types_map,
2861
+ )
2862
+
2863
+
2864
+ @validate_call
2865
+ def list_workspace_role_bindings_without_preload_content(
2866
+ self,
2867
+ workspace_id: StrictStr,
2868
+ search: Annotated[Optional[StrictStr], Field(description="Search for role bindings by user name, group name, role name, user ID or group ID.")] = None,
2869
+ bound_member_kind: Annotated[Optional[BoundMemberKind], Field(description="Filter the list of role bindings by the kind of the bound member. Optional.")] = None,
2870
+ user_types: Annotated[Optional[List[UserType]], Field(description="Limits the results to a specific set of user types. Only applies to user role bindings.")] = None,
2871
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page to return starting from 1 up to total_pages.")] = None,
2872
+ page_size: Annotated[Optional[Annotated[int, Field(le=1000, strict=True, ge=1)]], Field(description="The number of records per page. The max is 1000.")] = None,
2873
+ _request_timeout: Union[
2874
+ None,
2875
+ Annotated[StrictFloat, Field(gt=0)],
2876
+ Tuple[
2877
+ Annotated[StrictFloat, Field(gt=0)],
2878
+ Annotated[StrictFloat, Field(gt=0)]
2879
+ ]
2880
+ ] = None,
2881
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2882
+ _content_type: Optional[StrictStr] = None,
2883
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2884
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2885
+ ) -> RESTResponseType:
2886
+ """List Workspace Role Bindings.
2887
+
2888
+ Fetches all workspace role bindings. Requires workspace_list_role_bindings permission.
2889
+
2890
+ :param workspace_id: (required)
2891
+ :type workspace_id: str
2892
+ :param search: Search for role bindings by user name, group name, role name, user ID or group ID.
2893
+ :type search: str
2894
+ :param bound_member_kind: Filter the list of role bindings by the kind of the bound member. Optional.
2895
+ :type bound_member_kind: BoundMemberKind
2896
+ :param user_types: Limits the results to a specific set of user types. Only applies to user role bindings.
2897
+ :type user_types: List[UserType]
2898
+ :param page: The page to return starting from 1 up to total_pages.
2899
+ :type page: int
2900
+ :param page_size: The number of records per page. The max is 1000.
2901
+ :type page_size: int
2902
+ :param _request_timeout: timeout setting for this request. If one
2903
+ number provided, it will be total request
2904
+ timeout. It can also be a pair (tuple) of
2905
+ (connection, read) timeouts.
2906
+ :type _request_timeout: int, tuple(int, int), optional
2907
+ :param _request_auth: set to override the auth_settings for an a single
2908
+ request; this effectively ignores the
2909
+ authentication in the spec for a single request.
2910
+ :type _request_auth: dict, optional
2911
+ :param _content_type: force content-type for the request.
2912
+ :type _content_type: str, Optional
2913
+ :param _headers: set to override the headers for a single
2914
+ request; this effectively ignores the headers
2915
+ in the spec for a single request.
2916
+ :type _headers: dict, optional
2917
+ :param _host_index: set to override the host_index for a single
2918
+ request; this effectively ignores the host_index
2919
+ in the spec for a single request.
2920
+ :type _host_index: int, optional
2921
+ :return: Returns the result object.
2922
+ """ # noqa: E501
2923
+
2924
+ _param = self._list_workspace_role_bindings_serialize(
2925
+ workspace_id=workspace_id,
2926
+ search=search,
2927
+ bound_member_kind=bound_member_kind,
2928
+ user_types=user_types,
2929
+ page=page,
2930
+ page_size=page_size,
2931
+ _request_auth=_request_auth,
2932
+ _content_type=_content_type,
2933
+ _headers=_headers,
2934
+ _host_index=_host_index
2935
+ )
2936
+
2937
+ _response_types_map: Dict[str, Optional[str]] = {
2938
+ '200': "ResourceListRoleBinding",
2939
+ '500': "InternalServerError",
2940
+ '400': "BadRequestError",
2941
+ '404': "NotFoundError",
2942
+ '422': "HTTPValidationError",
2943
+ }
2944
+ response_data = self.api_client.call_api(
2945
+ *_param,
2946
+ _request_timeout=_request_timeout
2947
+ )
2948
+ return response_data.response
2949
+
2950
+
2951
+ def _list_workspace_role_bindings_serialize(
2952
+ self,
2953
+ workspace_id,
2954
+ search,
2955
+ bound_member_kind,
2956
+ user_types,
2957
+ page,
2958
+ page_size,
2959
+ _request_auth,
2960
+ _content_type,
2961
+ _headers,
2962
+ _host_index,
2963
+ ) -> RequestSerialized:
2964
+
2965
+ _host = None
2966
+
2967
+ _collection_formats: Dict[str, str] = {
2968
+ 'user_types': 'multi',
2969
+ }
2970
+
2971
+ _path_params: Dict[str, str] = {}
2972
+ _query_params: List[Tuple[str, str]] = []
2973
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2974
+ _form_params: List[Tuple[str, str]] = []
2975
+ _files: Dict[
2976
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2977
+ ] = {}
2978
+ _body_params: Optional[bytes] = None
2979
+
2980
+ # process the path parameters
2981
+ if workspace_id is not None:
2982
+ _path_params['workspace_id'] = workspace_id
2983
+ # process the query parameters
2984
+ if search is not None:
2985
+
2986
+ _query_params.append(('search', search))
2987
+
2988
+ if bound_member_kind is not None:
2989
+
2990
+ _query_params.append(('bound_member_kind', bound_member_kind.value))
2991
+
2992
+ if user_types is not None:
2993
+
2994
+ _query_params.append(('user_types', user_types))
2995
+
2996
+ if page is not None:
2997
+
2998
+ _query_params.append(('page', page))
2999
+
3000
+ if page_size is not None:
3001
+
3002
+ _query_params.append(('page_size', page_size))
3003
+
3004
+ # process the header parameters
3005
+ # process the form parameters
3006
+ # process the body parameter
3007
+
3008
+
3009
+ # set the HTTP header `Accept`
3010
+ if 'Accept' not in _header_params:
3011
+ _header_params['Accept'] = self.api_client.select_header_accept(
3012
+ [
3013
+ 'application/json'
3014
+ ]
3015
+ )
3016
+
3017
+
3018
+ # authentication setting
3019
+ _auth_settings: List[str] = [
3020
+ 'OAuth2AuthorizationCode'
3021
+ ]
3022
+
3023
+ return self.api_client.param_serialize(
3024
+ method='GET',
3025
+ resource_path='/api/v1/workspaces/{workspace_id}/role_bindings',
3026
+ path_params=_path_params,
3027
+ query_params=_query_params,
3028
+ header_params=_header_params,
3029
+ body=_body_params,
3030
+ post_params=_form_params,
3031
+ files=_files,
3032
+ auth_settings=_auth_settings,
3033
+ collection_formats=_collection_formats,
3034
+ _host=_host,
3035
+ _request_auth=_request_auth
3036
+ )
3037
+
3038
+
3039
+
3040
+
3041
+ @validate_call
3042
+ def post_org_role_binding(
3043
+ self,
3044
+ post_role_binding: PostRoleBinding,
3045
+ _request_timeout: Union[
3046
+ None,
3047
+ Annotated[StrictFloat, Field(gt=0)],
3048
+ Tuple[
3049
+ Annotated[StrictFloat, Field(gt=0)],
3050
+ Annotated[StrictFloat, Field(gt=0)]
3051
+ ]
3052
+ ] = None,
3053
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3054
+ _content_type: Optional[StrictStr] = None,
3055
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3056
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3057
+ ) -> RoleBinding:
3058
+ """Post Organization Role Binding.
3059
+
3060
+ Creates new organization role binding. Requires organization_create_role_binding permission.
3061
+
3062
+ :param post_role_binding: (required)
3063
+ :type post_role_binding: PostRoleBinding
3064
+ :param _request_timeout: timeout setting for this request. If one
3065
+ number provided, it will be total request
3066
+ timeout. It can also be a pair (tuple) of
3067
+ (connection, read) timeouts.
3068
+ :type _request_timeout: int, tuple(int, int), optional
3069
+ :param _request_auth: set to override the auth_settings for an a single
3070
+ request; this effectively ignores the
3071
+ authentication in the spec for a single request.
3072
+ :type _request_auth: dict, optional
3073
+ :param _content_type: force content-type for the request.
3074
+ :type _content_type: str, Optional
3075
+ :param _headers: set to override the headers for a single
3076
+ request; this effectively ignores the headers
3077
+ in the spec for a single request.
3078
+ :type _headers: dict, optional
3079
+ :param _host_index: set to override the host_index for a single
3080
+ request; this effectively ignores the host_index
3081
+ in the spec for a single request.
3082
+ :type _host_index: int, optional
3083
+ :return: Returns the result object.
3084
+ """ # noqa: E501
3085
+
3086
+ _param = self._post_org_role_binding_serialize(
3087
+ post_role_binding=post_role_binding,
3088
+ _request_auth=_request_auth,
3089
+ _content_type=_content_type,
3090
+ _headers=_headers,
3091
+ _host_index=_host_index
3092
+ )
3093
+
3094
+ _response_types_map: Dict[str, Optional[str]] = {
3095
+ '200': "RoleBinding",
3096
+ '500': "InternalServerError",
3097
+ '400': "BadRequestError",
3098
+ '404': "NotFoundError",
3099
+ '422': "HTTPValidationError",
3100
+ }
3101
+ response_data = self.api_client.call_api(
3102
+ *_param,
3103
+ _request_timeout=_request_timeout
3104
+ )
3105
+ response_data.read()
3106
+ return self.api_client.response_deserialize(
3107
+ response_data=response_data,
3108
+ response_types_map=_response_types_map,
3109
+ ).data
3110
+
3111
+
3112
+ @validate_call
3113
+ def post_org_role_binding_with_http_info(
3114
+ self,
3115
+ post_role_binding: PostRoleBinding,
3116
+ _request_timeout: Union[
3117
+ None,
3118
+ Annotated[StrictFloat, Field(gt=0)],
3119
+ Tuple[
3120
+ Annotated[StrictFloat, Field(gt=0)],
3121
+ Annotated[StrictFloat, Field(gt=0)]
3122
+ ]
3123
+ ] = None,
3124
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3125
+ _content_type: Optional[StrictStr] = None,
3126
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3127
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3128
+ ) -> ApiResponse[RoleBinding]:
3129
+ """Post Organization Role Binding.
3130
+
3131
+ Creates new organization role binding. Requires organization_create_role_binding permission.
3132
+
3133
+ :param post_role_binding: (required)
3134
+ :type post_role_binding: PostRoleBinding
3135
+ :param _request_timeout: timeout setting for this request. If one
3136
+ number provided, it will be total request
3137
+ timeout. It can also be a pair (tuple) of
3138
+ (connection, read) timeouts.
3139
+ :type _request_timeout: int, tuple(int, int), optional
3140
+ :param _request_auth: set to override the auth_settings for an a single
3141
+ request; this effectively ignores the
3142
+ authentication in the spec for a single request.
3143
+ :type _request_auth: dict, optional
3144
+ :param _content_type: force content-type for the request.
3145
+ :type _content_type: str, Optional
3146
+ :param _headers: set to override the headers for a single
3147
+ request; this effectively ignores the headers
3148
+ in the spec for a single request.
3149
+ :type _headers: dict, optional
3150
+ :param _host_index: set to override the host_index for a single
3151
+ request; this effectively ignores the host_index
3152
+ in the spec for a single request.
3153
+ :type _host_index: int, optional
3154
+ :return: Returns the result object.
3155
+ """ # noqa: E501
3156
+
3157
+ _param = self._post_org_role_binding_serialize(
3158
+ post_role_binding=post_role_binding,
3159
+ _request_auth=_request_auth,
3160
+ _content_type=_content_type,
3161
+ _headers=_headers,
3162
+ _host_index=_host_index
3163
+ )
3164
+
3165
+ _response_types_map: Dict[str, Optional[str]] = {
3166
+ '200': "RoleBinding",
3167
+ '500': "InternalServerError",
3168
+ '400': "BadRequestError",
3169
+ '404': "NotFoundError",
3170
+ '422': "HTTPValidationError",
3171
+ }
3172
+ response_data = self.api_client.call_api(
3173
+ *_param,
3174
+ _request_timeout=_request_timeout
3175
+ )
3176
+ response_data.read()
3177
+ return self.api_client.response_deserialize(
3178
+ response_data=response_data,
3179
+ response_types_map=_response_types_map,
3180
+ )
3181
+
3182
+
3183
+ @validate_call
3184
+ def post_org_role_binding_without_preload_content(
3185
+ self,
3186
+ post_role_binding: PostRoleBinding,
3187
+ _request_timeout: Union[
3188
+ None,
3189
+ Annotated[StrictFloat, Field(gt=0)],
3190
+ Tuple[
3191
+ Annotated[StrictFloat, Field(gt=0)],
3192
+ Annotated[StrictFloat, Field(gt=0)]
3193
+ ]
3194
+ ] = None,
3195
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3196
+ _content_type: Optional[StrictStr] = None,
3197
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3198
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3199
+ ) -> RESTResponseType:
3200
+ """Post Organization Role Binding.
3201
+
3202
+ Creates new organization role binding. Requires organization_create_role_binding permission.
3203
+
3204
+ :param post_role_binding: (required)
3205
+ :type post_role_binding: PostRoleBinding
3206
+ :param _request_timeout: timeout setting for this request. If one
3207
+ number provided, it will be total request
3208
+ timeout. It can also be a pair (tuple) of
3209
+ (connection, read) timeouts.
3210
+ :type _request_timeout: int, tuple(int, int), optional
3211
+ :param _request_auth: set to override the auth_settings for an a single
3212
+ request; this effectively ignores the
3213
+ authentication in the spec for a single request.
3214
+ :type _request_auth: dict, optional
3215
+ :param _content_type: force content-type for the request.
3216
+ :type _content_type: str, Optional
3217
+ :param _headers: set to override the headers for a single
3218
+ request; this effectively ignores the headers
3219
+ in the spec for a single request.
3220
+ :type _headers: dict, optional
3221
+ :param _host_index: set to override the host_index for a single
3222
+ request; this effectively ignores the host_index
3223
+ in the spec for a single request.
3224
+ :type _host_index: int, optional
3225
+ :return: Returns the result object.
3226
+ """ # noqa: E501
3227
+
3228
+ _param = self._post_org_role_binding_serialize(
3229
+ post_role_binding=post_role_binding,
3230
+ _request_auth=_request_auth,
3231
+ _content_type=_content_type,
3232
+ _headers=_headers,
3233
+ _host_index=_host_index
3234
+ )
3235
+
3236
+ _response_types_map: Dict[str, Optional[str]] = {
3237
+ '200': "RoleBinding",
3238
+ '500': "InternalServerError",
3239
+ '400': "BadRequestError",
3240
+ '404': "NotFoundError",
3241
+ '422': "HTTPValidationError",
3242
+ }
3243
+ response_data = self.api_client.call_api(
3244
+ *_param,
3245
+ _request_timeout=_request_timeout
3246
+ )
3247
+ return response_data.response
3248
+
3249
+
3250
+ def _post_org_role_binding_serialize(
3251
+ self,
3252
+ post_role_binding,
3253
+ _request_auth,
3254
+ _content_type,
3255
+ _headers,
3256
+ _host_index,
3257
+ ) -> RequestSerialized:
3258
+
3259
+ _host = None
3260
+
3261
+ _collection_formats: Dict[str, str] = {
3262
+ }
3263
+
3264
+ _path_params: Dict[str, str] = {}
3265
+ _query_params: List[Tuple[str, str]] = []
3266
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3267
+ _form_params: List[Tuple[str, str]] = []
3268
+ _files: Dict[
3269
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3270
+ ] = {}
3271
+ _body_params: Optional[bytes] = None
3272
+
3273
+ # process the path parameters
3274
+ # process the query parameters
3275
+ # process the header parameters
3276
+ # process the form parameters
3277
+ # process the body parameter
3278
+ if post_role_binding is not None:
3279
+ _body_params = post_role_binding
3280
+
3281
+
3282
+ # set the HTTP header `Accept`
3283
+ if 'Accept' not in _header_params:
3284
+ _header_params['Accept'] = self.api_client.select_header_accept(
3285
+ [
3286
+ 'application/json'
3287
+ ]
3288
+ )
3289
+
3290
+ # set the HTTP header `Content-Type`
3291
+ if _content_type:
3292
+ _header_params['Content-Type'] = _content_type
3293
+ else:
3294
+ _default_content_type = (
3295
+ self.api_client.select_header_content_type(
3296
+ [
3297
+ 'application/json'
3298
+ ]
3299
+ )
3300
+ )
3301
+ if _default_content_type is not None:
3302
+ _header_params['Content-Type'] = _default_content_type
3303
+
3304
+ # authentication setting
3305
+ _auth_settings: List[str] = [
3306
+ 'OAuth2AuthorizationCode'
3307
+ ]
3308
+
3309
+ return self.api_client.param_serialize(
3310
+ method='POST',
3311
+ resource_path='/api/v1/organization/role_bindings',
3312
+ path_params=_path_params,
3313
+ query_params=_query_params,
3314
+ header_params=_header_params,
3315
+ body=_body_params,
3316
+ post_params=_form_params,
3317
+ files=_files,
3318
+ auth_settings=_auth_settings,
3319
+ collection_formats=_collection_formats,
3320
+ _host=_host,
3321
+ _request_auth=_request_auth
3322
+ )
3323
+
3324
+
3325
+
3326
+
3327
+ @validate_call
3328
+ def post_project_role_binding(
3329
+ self,
3330
+ project_id: StrictStr,
3331
+ post_role_binding: PostRoleBinding,
3332
+ _request_timeout: Union[
3333
+ None,
3334
+ Annotated[StrictFloat, Field(gt=0)],
3335
+ Tuple[
3336
+ Annotated[StrictFloat, Field(gt=0)],
3337
+ Annotated[StrictFloat, Field(gt=0)]
3338
+ ]
3339
+ ] = None,
3340
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3341
+ _content_type: Optional[StrictStr] = None,
3342
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3343
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3344
+ ) -> RoleBinding:
3345
+ """Post Project Role Binding
3346
+
3347
+ Creates new project role binding. Requires project_create_role_binding permission.
3348
+
3349
+ :param project_id: (required)
3350
+ :type project_id: str
3351
+ :param post_role_binding: (required)
3352
+ :type post_role_binding: PostRoleBinding
3353
+ :param _request_timeout: timeout setting for this request. If one
3354
+ number provided, it will be total request
3355
+ timeout. It can also be a pair (tuple) of
3356
+ (connection, read) timeouts.
3357
+ :type _request_timeout: int, tuple(int, int), optional
3358
+ :param _request_auth: set to override the auth_settings for an a single
3359
+ request; this effectively ignores the
3360
+ authentication in the spec for a single request.
3361
+ :type _request_auth: dict, optional
3362
+ :param _content_type: force content-type for the request.
3363
+ :type _content_type: str, Optional
3364
+ :param _headers: set to override the headers for a single
3365
+ request; this effectively ignores the headers
3366
+ in the spec for a single request.
3367
+ :type _headers: dict, optional
3368
+ :param _host_index: set to override the host_index for a single
3369
+ request; this effectively ignores the host_index
3370
+ in the spec for a single request.
3371
+ :type _host_index: int, optional
3372
+ :return: Returns the result object.
3373
+ """ # noqa: E501
3374
+
3375
+ _param = self._post_project_role_binding_serialize(
3376
+ project_id=project_id,
3377
+ post_role_binding=post_role_binding,
3378
+ _request_auth=_request_auth,
3379
+ _content_type=_content_type,
3380
+ _headers=_headers,
3381
+ _host_index=_host_index
3382
+ )
3383
+
3384
+ _response_types_map: Dict[str, Optional[str]] = {
3385
+ '200': "RoleBinding",
3386
+ '500': "InternalServerError",
3387
+ '400': "BadRequestError",
3388
+ '404': "NotFoundError",
3389
+ '422': "HTTPValidationError",
3390
+ }
3391
+ response_data = self.api_client.call_api(
3392
+ *_param,
3393
+ _request_timeout=_request_timeout
3394
+ )
3395
+ response_data.read()
3396
+ return self.api_client.response_deserialize(
3397
+ response_data=response_data,
3398
+ response_types_map=_response_types_map,
3399
+ ).data
3400
+
3401
+
3402
+ @validate_call
3403
+ def post_project_role_binding_with_http_info(
3404
+ self,
3405
+ project_id: StrictStr,
3406
+ post_role_binding: PostRoleBinding,
3407
+ _request_timeout: Union[
3408
+ None,
3409
+ Annotated[StrictFloat, Field(gt=0)],
3410
+ Tuple[
3411
+ Annotated[StrictFloat, Field(gt=0)],
3412
+ Annotated[StrictFloat, Field(gt=0)]
3413
+ ]
3414
+ ] = None,
3415
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3416
+ _content_type: Optional[StrictStr] = None,
3417
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3418
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3419
+ ) -> ApiResponse[RoleBinding]:
3420
+ """Post Project Role Binding
3421
+
3422
+ Creates new project role binding. Requires project_create_role_binding permission.
3423
+
3424
+ :param project_id: (required)
3425
+ :type project_id: str
3426
+ :param post_role_binding: (required)
3427
+ :type post_role_binding: PostRoleBinding
3428
+ :param _request_timeout: timeout setting for this request. If one
3429
+ number provided, it will be total request
3430
+ timeout. It can also be a pair (tuple) of
3431
+ (connection, read) timeouts.
3432
+ :type _request_timeout: int, tuple(int, int), optional
3433
+ :param _request_auth: set to override the auth_settings for an a single
3434
+ request; this effectively ignores the
3435
+ authentication in the spec for a single request.
3436
+ :type _request_auth: dict, optional
3437
+ :param _content_type: force content-type for the request.
3438
+ :type _content_type: str, Optional
3439
+ :param _headers: set to override the headers for a single
3440
+ request; this effectively ignores the headers
3441
+ in the spec for a single request.
3442
+ :type _headers: dict, optional
3443
+ :param _host_index: set to override the host_index for a single
3444
+ request; this effectively ignores the host_index
3445
+ in the spec for a single request.
3446
+ :type _host_index: int, optional
3447
+ :return: Returns the result object.
3448
+ """ # noqa: E501
3449
+
3450
+ _param = self._post_project_role_binding_serialize(
3451
+ project_id=project_id,
3452
+ post_role_binding=post_role_binding,
3453
+ _request_auth=_request_auth,
3454
+ _content_type=_content_type,
3455
+ _headers=_headers,
3456
+ _host_index=_host_index
3457
+ )
3458
+
3459
+ _response_types_map: Dict[str, Optional[str]] = {
3460
+ '200': "RoleBinding",
3461
+ '500': "InternalServerError",
3462
+ '400': "BadRequestError",
3463
+ '404': "NotFoundError",
3464
+ '422': "HTTPValidationError",
3465
+ }
3466
+ response_data = self.api_client.call_api(
3467
+ *_param,
3468
+ _request_timeout=_request_timeout
3469
+ )
3470
+ response_data.read()
3471
+ return self.api_client.response_deserialize(
3472
+ response_data=response_data,
3473
+ response_types_map=_response_types_map,
3474
+ )
3475
+
3476
+
3477
+ @validate_call
3478
+ def post_project_role_binding_without_preload_content(
3479
+ self,
3480
+ project_id: StrictStr,
3481
+ post_role_binding: PostRoleBinding,
3482
+ _request_timeout: Union[
3483
+ None,
3484
+ Annotated[StrictFloat, Field(gt=0)],
3485
+ Tuple[
3486
+ Annotated[StrictFloat, Field(gt=0)],
3487
+ Annotated[StrictFloat, Field(gt=0)]
3488
+ ]
3489
+ ] = None,
3490
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3491
+ _content_type: Optional[StrictStr] = None,
3492
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3493
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3494
+ ) -> RESTResponseType:
3495
+ """Post Project Role Binding
3496
+
3497
+ Creates new project role binding. Requires project_create_role_binding permission.
3498
+
3499
+ :param project_id: (required)
3500
+ :type project_id: str
3501
+ :param post_role_binding: (required)
3502
+ :type post_role_binding: PostRoleBinding
3503
+ :param _request_timeout: timeout setting for this request. If one
3504
+ number provided, it will be total request
3505
+ timeout. It can also be a pair (tuple) of
3506
+ (connection, read) timeouts.
3507
+ :type _request_timeout: int, tuple(int, int), optional
3508
+ :param _request_auth: set to override the auth_settings for an a single
3509
+ request; this effectively ignores the
3510
+ authentication in the spec for a single request.
3511
+ :type _request_auth: dict, optional
3512
+ :param _content_type: force content-type for the request.
3513
+ :type _content_type: str, Optional
3514
+ :param _headers: set to override the headers for a single
3515
+ request; this effectively ignores the headers
3516
+ in the spec for a single request.
3517
+ :type _headers: dict, optional
3518
+ :param _host_index: set to override the host_index for a single
3519
+ request; this effectively ignores the host_index
3520
+ in the spec for a single request.
3521
+ :type _host_index: int, optional
3522
+ :return: Returns the result object.
3523
+ """ # noqa: E501
3524
+
3525
+ _param = self._post_project_role_binding_serialize(
3526
+ project_id=project_id,
3527
+ post_role_binding=post_role_binding,
3528
+ _request_auth=_request_auth,
3529
+ _content_type=_content_type,
3530
+ _headers=_headers,
3531
+ _host_index=_host_index
3532
+ )
3533
+
3534
+ _response_types_map: Dict[str, Optional[str]] = {
3535
+ '200': "RoleBinding",
3536
+ '500': "InternalServerError",
3537
+ '400': "BadRequestError",
3538
+ '404': "NotFoundError",
3539
+ '422': "HTTPValidationError",
3540
+ }
3541
+ response_data = self.api_client.call_api(
3542
+ *_param,
3543
+ _request_timeout=_request_timeout
3544
+ )
3545
+ return response_data.response
3546
+
3547
+
3548
+ def _post_project_role_binding_serialize(
3549
+ self,
3550
+ project_id,
3551
+ post_role_binding,
3552
+ _request_auth,
3553
+ _content_type,
3554
+ _headers,
3555
+ _host_index,
3556
+ ) -> RequestSerialized:
3557
+
3558
+ _host = None
3559
+
3560
+ _collection_formats: Dict[str, str] = {
3561
+ }
3562
+
3563
+ _path_params: Dict[str, str] = {}
3564
+ _query_params: List[Tuple[str, str]] = []
3565
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3566
+ _form_params: List[Tuple[str, str]] = []
3567
+ _files: Dict[
3568
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3569
+ ] = {}
3570
+ _body_params: Optional[bytes] = None
3571
+
3572
+ # process the path parameters
3573
+ if project_id is not None:
3574
+ _path_params['project_id'] = project_id
3575
+ # process the query parameters
3576
+ # process the header parameters
3577
+ # process the form parameters
3578
+ # process the body parameter
3579
+ if post_role_binding is not None:
3580
+ _body_params = post_role_binding
3581
+
3582
+
3583
+ # set the HTTP header `Accept`
3584
+ if 'Accept' not in _header_params:
3585
+ _header_params['Accept'] = self.api_client.select_header_accept(
3586
+ [
3587
+ 'application/json'
3588
+ ]
3589
+ )
3590
+
3591
+ # set the HTTP header `Content-Type`
3592
+ if _content_type:
3593
+ _header_params['Content-Type'] = _content_type
3594
+ else:
3595
+ _default_content_type = (
3596
+ self.api_client.select_header_content_type(
3597
+ [
3598
+ 'application/json'
3599
+ ]
3600
+ )
3601
+ )
3602
+ if _default_content_type is not None:
3603
+ _header_params['Content-Type'] = _default_content_type
3604
+
3605
+ # authentication setting
3606
+ _auth_settings: List[str] = [
3607
+ 'OAuth2AuthorizationCode'
3608
+ ]
3609
+
3610
+ return self.api_client.param_serialize(
3611
+ method='POST',
3612
+ resource_path='/api/v1/projects/{project_id}/role_bindings',
3613
+ path_params=_path_params,
3614
+ query_params=_query_params,
3615
+ header_params=_header_params,
3616
+ body=_body_params,
3617
+ post_params=_form_params,
3618
+ files=_files,
3619
+ auth_settings=_auth_settings,
3620
+ collection_formats=_collection_formats,
3621
+ _host=_host,
3622
+ _request_auth=_request_auth
3623
+ )
3624
+
3625
+
3626
+
3627
+
3628
+ @validate_call
3629
+ def post_workspace_role_binding(
3630
+ self,
3631
+ workspace_id: StrictStr,
3632
+ post_role_binding: PostRoleBinding,
3633
+ _request_timeout: Union[
3634
+ None,
3635
+ Annotated[StrictFloat, Field(gt=0)],
3636
+ Tuple[
3637
+ Annotated[StrictFloat, Field(gt=0)],
3638
+ Annotated[StrictFloat, Field(gt=0)]
3639
+ ]
3640
+ ] = None,
3641
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3642
+ _content_type: Optional[StrictStr] = None,
3643
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3644
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3645
+ ) -> RoleBinding:
3646
+ """Post Workspace Role Binding.
3647
+
3648
+ Creates new workspace role binding. Requires workspace_create_role_binding permission.
3649
+
3650
+ :param workspace_id: (required)
3651
+ :type workspace_id: str
3652
+ :param post_role_binding: (required)
3653
+ :type post_role_binding: PostRoleBinding
3654
+ :param _request_timeout: timeout setting for this request. If one
3655
+ number provided, it will be total request
3656
+ timeout. It can also be a pair (tuple) of
3657
+ (connection, read) timeouts.
3658
+ :type _request_timeout: int, tuple(int, int), optional
3659
+ :param _request_auth: set to override the auth_settings for an a single
3660
+ request; this effectively ignores the
3661
+ authentication in the spec for a single request.
3662
+ :type _request_auth: dict, optional
3663
+ :param _content_type: force content-type for the request.
3664
+ :type _content_type: str, Optional
3665
+ :param _headers: set to override the headers for a single
3666
+ request; this effectively ignores the headers
3667
+ in the spec for a single request.
3668
+ :type _headers: dict, optional
3669
+ :param _host_index: set to override the host_index for a single
3670
+ request; this effectively ignores the host_index
3671
+ in the spec for a single request.
3672
+ :type _host_index: int, optional
3673
+ :return: Returns the result object.
3674
+ """ # noqa: E501
3675
+
3676
+ _param = self._post_workspace_role_binding_serialize(
3677
+ workspace_id=workspace_id,
3678
+ post_role_binding=post_role_binding,
3679
+ _request_auth=_request_auth,
3680
+ _content_type=_content_type,
3681
+ _headers=_headers,
3682
+ _host_index=_host_index
3683
+ )
3684
+
3685
+ _response_types_map: Dict[str, Optional[str]] = {
3686
+ '200': "RoleBinding",
3687
+ '500': "InternalServerError",
3688
+ '400': "BadRequestError",
3689
+ '404': "NotFoundError",
3690
+ '422': "HTTPValidationError",
3691
+ }
3692
+ response_data = self.api_client.call_api(
3693
+ *_param,
3694
+ _request_timeout=_request_timeout
3695
+ )
3696
+ response_data.read()
3697
+ return self.api_client.response_deserialize(
3698
+ response_data=response_data,
3699
+ response_types_map=_response_types_map,
3700
+ ).data
3701
+
3702
+
3703
+ @validate_call
3704
+ def post_workspace_role_binding_with_http_info(
3705
+ self,
3706
+ workspace_id: StrictStr,
3707
+ post_role_binding: PostRoleBinding,
3708
+ _request_timeout: Union[
3709
+ None,
3710
+ Annotated[StrictFloat, Field(gt=0)],
3711
+ Tuple[
3712
+ Annotated[StrictFloat, Field(gt=0)],
3713
+ Annotated[StrictFloat, Field(gt=0)]
3714
+ ]
3715
+ ] = None,
3716
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3717
+ _content_type: Optional[StrictStr] = None,
3718
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3719
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3720
+ ) -> ApiResponse[RoleBinding]:
3721
+ """Post Workspace Role Binding.
3722
+
3723
+ Creates new workspace role binding. Requires workspace_create_role_binding permission.
3724
+
3725
+ :param workspace_id: (required)
3726
+ :type workspace_id: str
3727
+ :param post_role_binding: (required)
3728
+ :type post_role_binding: PostRoleBinding
3729
+ :param _request_timeout: timeout setting for this request. If one
3730
+ number provided, it will be total request
3731
+ timeout. It can also be a pair (tuple) of
3732
+ (connection, read) timeouts.
3733
+ :type _request_timeout: int, tuple(int, int), optional
3734
+ :param _request_auth: set to override the auth_settings for an a single
3735
+ request; this effectively ignores the
3736
+ authentication in the spec for a single request.
3737
+ :type _request_auth: dict, optional
3738
+ :param _content_type: force content-type for the request.
3739
+ :type _content_type: str, Optional
3740
+ :param _headers: set to override the headers for a single
3741
+ request; this effectively ignores the headers
3742
+ in the spec for a single request.
3743
+ :type _headers: dict, optional
3744
+ :param _host_index: set to override the host_index for a single
3745
+ request; this effectively ignores the host_index
3746
+ in the spec for a single request.
3747
+ :type _host_index: int, optional
3748
+ :return: Returns the result object.
3749
+ """ # noqa: E501
3750
+
3751
+ _param = self._post_workspace_role_binding_serialize(
3752
+ workspace_id=workspace_id,
3753
+ post_role_binding=post_role_binding,
3754
+ _request_auth=_request_auth,
3755
+ _content_type=_content_type,
3756
+ _headers=_headers,
3757
+ _host_index=_host_index
3758
+ )
3759
+
3760
+ _response_types_map: Dict[str, Optional[str]] = {
3761
+ '200': "RoleBinding",
3762
+ '500': "InternalServerError",
3763
+ '400': "BadRequestError",
3764
+ '404': "NotFoundError",
3765
+ '422': "HTTPValidationError",
3766
+ }
3767
+ response_data = self.api_client.call_api(
3768
+ *_param,
3769
+ _request_timeout=_request_timeout
3770
+ )
3771
+ response_data.read()
3772
+ return self.api_client.response_deserialize(
3773
+ response_data=response_data,
3774
+ response_types_map=_response_types_map,
3775
+ )
3776
+
3777
+
3778
+ @validate_call
3779
+ def post_workspace_role_binding_without_preload_content(
3780
+ self,
3781
+ workspace_id: StrictStr,
3782
+ post_role_binding: PostRoleBinding,
3783
+ _request_timeout: Union[
3784
+ None,
3785
+ Annotated[StrictFloat, Field(gt=0)],
3786
+ Tuple[
3787
+ Annotated[StrictFloat, Field(gt=0)],
3788
+ Annotated[StrictFloat, Field(gt=0)]
3789
+ ]
3790
+ ] = None,
3791
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
3792
+ _content_type: Optional[StrictStr] = None,
3793
+ _headers: Optional[Dict[StrictStr, Any]] = None,
3794
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3795
+ ) -> RESTResponseType:
3796
+ """Post Workspace Role Binding.
3797
+
3798
+ Creates new workspace role binding. Requires workspace_create_role_binding permission.
3799
+
3800
+ :param workspace_id: (required)
3801
+ :type workspace_id: str
3802
+ :param post_role_binding: (required)
3803
+ :type post_role_binding: PostRoleBinding
3804
+ :param _request_timeout: timeout setting for this request. If one
3805
+ number provided, it will be total request
3806
+ timeout. It can also be a pair (tuple) of
3807
+ (connection, read) timeouts.
3808
+ :type _request_timeout: int, tuple(int, int), optional
3809
+ :param _request_auth: set to override the auth_settings for an a single
3810
+ request; this effectively ignores the
3811
+ authentication in the spec for a single request.
3812
+ :type _request_auth: dict, optional
3813
+ :param _content_type: force content-type for the request.
3814
+ :type _content_type: str, Optional
3815
+ :param _headers: set to override the headers for a single
3816
+ request; this effectively ignores the headers
3817
+ in the spec for a single request.
3818
+ :type _headers: dict, optional
3819
+ :param _host_index: set to override the host_index for a single
3820
+ request; this effectively ignores the host_index
3821
+ in the spec for a single request.
3822
+ :type _host_index: int, optional
3823
+ :return: Returns the result object.
3824
+ """ # noqa: E501
3825
+
3826
+ _param = self._post_workspace_role_binding_serialize(
3827
+ workspace_id=workspace_id,
3828
+ post_role_binding=post_role_binding,
3829
+ _request_auth=_request_auth,
3830
+ _content_type=_content_type,
3831
+ _headers=_headers,
3832
+ _host_index=_host_index
3833
+ )
3834
+
3835
+ _response_types_map: Dict[str, Optional[str]] = {
3836
+ '200': "RoleBinding",
3837
+ '500': "InternalServerError",
3838
+ '400': "BadRequestError",
3839
+ '404': "NotFoundError",
3840
+ '422': "HTTPValidationError",
3841
+ }
3842
+ response_data = self.api_client.call_api(
3843
+ *_param,
3844
+ _request_timeout=_request_timeout
3845
+ )
3846
+ return response_data.response
3847
+
3848
+
3849
+ def _post_workspace_role_binding_serialize(
3850
+ self,
3851
+ workspace_id,
3852
+ post_role_binding,
3853
+ _request_auth,
3854
+ _content_type,
3855
+ _headers,
3856
+ _host_index,
3857
+ ) -> RequestSerialized:
3858
+
3859
+ _host = None
3860
+
3861
+ _collection_formats: Dict[str, str] = {
3862
+ }
3863
+
3864
+ _path_params: Dict[str, str] = {}
3865
+ _query_params: List[Tuple[str, str]] = []
3866
+ _header_params: Dict[str, Optional[str]] = _headers or {}
3867
+ _form_params: List[Tuple[str, str]] = []
3868
+ _files: Dict[
3869
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
3870
+ ] = {}
3871
+ _body_params: Optional[bytes] = None
3872
+
3873
+ # process the path parameters
3874
+ if workspace_id is not None:
3875
+ _path_params['workspace_id'] = workspace_id
3876
+ # process the query parameters
3877
+ # process the header parameters
3878
+ # process the form parameters
3879
+ # process the body parameter
3880
+ if post_role_binding is not None:
3881
+ _body_params = post_role_binding
3882
+
3883
+
3884
+ # set the HTTP header `Accept`
3885
+ if 'Accept' not in _header_params:
3886
+ _header_params['Accept'] = self.api_client.select_header_accept(
3887
+ [
3888
+ 'application/json'
3889
+ ]
3890
+ )
3891
+
3892
+ # set the HTTP header `Content-Type`
3893
+ if _content_type:
3894
+ _header_params['Content-Type'] = _content_type
3895
+ else:
3896
+ _default_content_type = (
3897
+ self.api_client.select_header_content_type(
3898
+ [
3899
+ 'application/json'
3900
+ ]
3901
+ )
3902
+ )
3903
+ if _default_content_type is not None:
3904
+ _header_params['Content-Type'] = _default_content_type
3905
+
3906
+ # authentication setting
3907
+ _auth_settings: List[str] = [
3908
+ 'OAuth2AuthorizationCode'
3909
+ ]
3910
+
3911
+ return self.api_client.param_serialize(
3912
+ method='POST',
3913
+ resource_path='/api/v1/workspaces/{workspace_id}/role_bindings',
3914
+ path_params=_path_params,
3915
+ query_params=_query_params,
3916
+ header_params=_header_params,
3917
+ body=_body_params,
3918
+ post_params=_form_params,
3919
+ files=_files,
3920
+ auth_settings=_auth_settings,
3921
+ collection_formats=_collection_formats,
3922
+ _host=_host,
3923
+ _request_auth=_request_auth
3924
+ )
3925
+
3926
+