gcore 0.3.0__py3-none-any.whl → 0.5.0__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.

Potentially problematic release.


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

Files changed (226) hide show
  1. gcore/__init__.py +2 -1
  2. gcore/_base_client.py +31 -2
  3. gcore/_client.py +18 -0
  4. gcore/_constants.py +2 -2
  5. gcore/_models.py +8 -5
  6. gcore/_version.py +1 -1
  7. gcore/pagination.py +252 -1
  8. gcore/resources/__init__.py +28 -0
  9. gcore/resources/cloud/baremetal/flavors.py +11 -137
  10. gcore/resources/cloud/baremetal/images.py +10 -12
  11. gcore/resources/cloud/baremetal/servers.py +33 -30
  12. gcore/resources/cloud/billing_reservations.py +2 -2
  13. gcore/resources/cloud/file_shares/file_shares.py +7 -8
  14. gcore/resources/cloud/floating_ips.py +7 -12
  15. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +33 -22
  16. gcore/resources/cloud/gpu_baremetal_clusters/images.py +9 -10
  17. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +2 -2
  18. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +8 -4
  19. gcore/resources/cloud/inference/deployments/deployments.py +76 -35
  20. gcore/resources/cloud/inference/deployments/logs.py +7 -7
  21. gcore/resources/cloud/inference/inference.py +5 -5
  22. gcore/resources/cloud/inference/models.py +16 -15
  23. gcore/resources/cloud/inference/registry_credentials.py +18 -18
  24. gcore/resources/cloud/inference/secrets.py +12 -13
  25. gcore/resources/cloud/instances/flavors.py +9 -233
  26. gcore/resources/cloud/instances/images.py +47 -37
  27. gcore/resources/cloud/instances/instances.py +49 -34
  28. gcore/resources/cloud/instances/interfaces.py +2 -2
  29. gcore/resources/cloud/ip_ranges.py +34 -2
  30. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +10 -2
  31. gcore/resources/cloud/load_balancers/listeners.py +17 -8
  32. gcore/resources/cloud/load_balancers/load_balancers.py +73 -21
  33. gcore/resources/cloud/load_balancers/metrics.py +2 -2
  34. gcore/resources/cloud/load_balancers/pools/health_monitors.py +2 -2
  35. gcore/resources/cloud/load_balancers/pools/members.py +6 -2
  36. gcore/resources/cloud/networks/networks.py +81 -17
  37. gcore/resources/cloud/networks/routers.py +18 -18
  38. gcore/resources/cloud/networks/subnets.py +51 -11
  39. gcore/resources/cloud/projects.py +38 -24
  40. gcore/resources/cloud/quotas/quotas.py +6 -6
  41. gcore/resources/cloud/quotas/requests.py +8 -8
  42. gcore/resources/cloud/registries/artifacts.py +4 -4
  43. gcore/resources/cloud/registries/registries.py +14 -16
  44. gcore/resources/cloud/registries/repositories.py +4 -4
  45. gcore/resources/cloud/registries/tags.py +2 -2
  46. gcore/resources/cloud/registries/users.py +21 -22
  47. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +20 -20
  48. gcore/resources/cloud/reserved_fixed_ips/vip.py +10 -10
  49. gcore/resources/cloud/secrets.py +14 -224
  50. gcore/resources/cloud/security_groups/rules.py +6 -6
  51. gcore/resources/cloud/security_groups/security_groups.py +70 -31
  52. gcore/resources/cloud/tasks.py +34 -32
  53. gcore/resources/cloud/users/role_assignments.py +12 -14
  54. gcore/resources/cloud/volumes.py +139 -49
  55. gcore/resources/fastedge/__init__.py +103 -0
  56. gcore/resources/fastedge/apps/__init__.py +33 -0
  57. gcore/resources/fastedge/apps/apps.py +932 -0
  58. gcore/resources/fastedge/apps/logs.py +248 -0
  59. gcore/resources/fastedge/binaries.py +286 -0
  60. gcore/resources/fastedge/fastedge.py +327 -0
  61. gcore/resources/fastedge/kv_stores.py +523 -0
  62. gcore/resources/fastedge/secrets.py +687 -0
  63. gcore/resources/fastedge/statistics.py +347 -0
  64. gcore/resources/fastedge/templates.py +652 -0
  65. gcore/resources/iam/__init__.py +47 -0
  66. gcore/resources/iam/api_tokens.py +521 -0
  67. gcore/resources/iam/iam.py +199 -0
  68. gcore/resources/iam/users.py +642 -0
  69. gcore/resources/waap/__init__.py +0 -14
  70. gcore/resources/waap/waap.py +0 -32
  71. gcore/types/cloud/__init__.py +2 -28
  72. gcore/types/cloud/baremetal/__init__.py +0 -1
  73. gcore/types/cloud/baremetal/image_list_params.py +1 -5
  74. gcore/types/cloud/baremetal/server_create_params.py +5 -9
  75. gcore/types/cloud/baremetal/server_list_params.py +1 -5
  76. gcore/types/cloud/ddos_profile.py +9 -3
  77. gcore/types/cloud/file_share_create_params.py +3 -5
  78. gcore/types/cloud/floating_ip_create_params.py +2 -4
  79. gcore/types/cloud/floating_ip_list_params.py +1 -5
  80. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +3 -4
  81. gcore/types/cloud/gpu_baremetal_clusters/image_upload_params.py +2 -4
  82. gcore/types/cloud/health_monitor.py +6 -1
  83. gcore/types/cloud/inference/__init__.py +12 -8
  84. gcore/types/cloud/inference/deployment_create_params.py +224 -7
  85. gcore/types/cloud/inference/deployment_update_params.py +24 -3
  86. gcore/types/cloud/inference/deployments/__init__.py +1 -0
  87. gcore/types/cloud/inference/{inference_log.py → deployments/inference_deployment_log.py} +3 -3
  88. gcore/types/cloud/inference/inference_deployment.py +266 -0
  89. gcore/types/cloud/inference/{inference_apikey_secret.py → inference_deployment_api_key.py} +2 -2
  90. gcore/types/cloud/inference/{mlcatalog_model_card.py → inference_model.py} +2 -2
  91. gcore/types/cloud/inference/{inference_registry_credential.py → inference_registry_credentials.py} +2 -2
  92. gcore/types/cloud/inference/{inference_registry_credential_full.py → inference_registry_credentials_create.py} +2 -2
  93. gcore/types/cloud/inference/inference_secret.py +10 -3
  94. gcore/types/cloud/inference/model_list_params.py +2 -4
  95. gcore/types/cloud/{container_probe.py → inference/probe.py} +9 -9
  96. gcore/types/cloud/{container_probe_config.py → inference/probe_config.py} +5 -5
  97. gcore/types/cloud/{container_probe_exec.py → inference/probe_exec.py} +3 -3
  98. gcore/types/cloud/{container_probe_http_get.py → inference/probe_http_get.py} +3 -3
  99. gcore/types/cloud/{container_probe_tcp_socket.py → inference/probe_tcp_socket.py} +3 -3
  100. gcore/types/cloud/inference/secret_create_params.py +10 -4
  101. gcore/types/cloud/inference/secret_replace_params.py +10 -4
  102. gcore/types/cloud/{region_capacity.py → inference_region_capacity.py} +10 -3
  103. gcore/types/cloud/{region_capacity_list.py → inference_region_capacity_list.py} +4 -4
  104. gcore/types/cloud/instance_create_params.py +8 -9
  105. gcore/types/cloud/instance_list_params.py +1 -5
  106. gcore/types/cloud/instances/__init__.py +0 -2
  107. gcore/types/cloud/instances/image_create_from_volume_params.py +2 -4
  108. gcore/types/cloud/instances/image_list_params.py +1 -5
  109. gcore/types/cloud/instances/image_upload_params.py +2 -4
  110. gcore/types/cloud/load_balancer_create_params.py +8 -4
  111. gcore/types/cloud/load_balancer_list_params.py +1 -5
  112. gcore/types/cloud/load_balancer_update_params.py +24 -0
  113. gcore/types/cloud/load_balancers/pool_create_params.py +6 -1
  114. gcore/types/cloud/load_balancers/pool_update_params.py +6 -1
  115. gcore/types/cloud/load_balancers/pools/member_add_params.py +6 -1
  116. gcore/types/cloud/member.py +6 -1
  117. gcore/types/cloud/network_create_params.py +2 -3
  118. gcore/types/cloud/network_list_params.py +4 -5
  119. gcore/types/cloud/network_update_params.py +28 -2
  120. gcore/types/cloud/networks/router_list_params.py +2 -2
  121. gcore/types/cloud/networks/subnet_create_params.py +2 -3
  122. gcore/types/cloud/networks/subnet_list_params.py +1 -5
  123. gcore/types/cloud/networks/subnet_update_params.py +25 -0
  124. gcore/types/cloud/registries/__init__.py +1 -0
  125. gcore/types/cloud/registries/user_refresh_secret_response.py +31 -0
  126. gcore/types/cloud/reserved_fixed_ip_list_params.py +2 -2
  127. gcore/types/cloud/security_group_list_params.py +3 -7
  128. gcore/types/cloud/security_group_update_params.py +25 -0
  129. gcore/types/cloud/tag_update_map_param.py +2 -2
  130. gcore/types/cloud/task_list_params.py +15 -14
  131. gcore/types/cloud/volume_list_params.py +1 -5
  132. gcore/types/cloud/volume_update_params.py +29 -3
  133. gcore/types/fastedge/__init__.py +48 -0
  134. gcore/types/fastedge/app.py +81 -0
  135. gcore/types/fastedge/app_create_params.py +56 -0
  136. gcore/types/fastedge/app_list_params.py +50 -0
  137. gcore/types/fastedge/app_param.py +56 -0
  138. gcore/types/fastedge/app_replace_params.py +17 -0
  139. gcore/types/fastedge/app_short.py +60 -0
  140. gcore/types/fastedge/app_update_params.py +56 -0
  141. gcore/types/fastedge/apps/__init__.py +6 -0
  142. gcore/types/fastedge/apps/log.py +28 -0
  143. gcore/types/fastedge/apps/log_list_params.py +37 -0
  144. gcore/types/fastedge/binary.py +40 -0
  145. gcore/types/fastedge/binary_list_response.py +12 -0
  146. gcore/types/fastedge/binary_short.py +32 -0
  147. gcore/types/fastedge/call_status.py +24 -0
  148. gcore/types/fastedge/client.py +57 -0
  149. gcore/types/fastedge/duration_stats.py +30 -0
  150. gcore/types/fastedge/kv_store.py +33 -0
  151. gcore/types/fastedge/kv_store_create_params.py +23 -0
  152. gcore/types/fastedge/kv_store_get_response.py +10 -0
  153. gcore/types/fastedge/kv_store_list_params.py +12 -0
  154. gcore/types/fastedge/kv_store_list_response.py +15 -0
  155. gcore/types/fastedge/kv_store_replace_params.py +23 -0
  156. gcore/types/fastedge/kv_store_short.py +19 -0
  157. gcore/types/fastedge/kv_store_stats.py +26 -0
  158. gcore/types/fastedge/secret.py +29 -0
  159. gcore/types/fastedge/secret_create_params.py +27 -0
  160. gcore/types/fastedge/secret_create_response.py +12 -0
  161. gcore/types/fastedge/secret_delete_params.py +12 -0
  162. gcore/types/fastedge/secret_list_params.py +15 -0
  163. gcore/types/{cloud → fastedge}/secret_list_response.py +2 -6
  164. gcore/types/fastedge/secret_replace_params.py +27 -0
  165. gcore/types/fastedge/secret_short.py +21 -0
  166. gcore/types/fastedge/secret_update_params.py +27 -0
  167. gcore/types/fastedge/statistic_get_call_series_params.py +28 -0
  168. gcore/types/fastedge/statistic_get_call_series_response.py +12 -0
  169. gcore/types/fastedge/statistic_get_duration_series_params.py +28 -0
  170. gcore/types/fastedge/statistic_get_duration_series_response.py +12 -0
  171. gcore/types/fastedge/template.py +31 -0
  172. gcore/types/fastedge/template_create_params.py +30 -0
  173. gcore/types/fastedge/template_delete_params.py +12 -0
  174. gcore/types/fastedge/template_list_params.py +25 -0
  175. gcore/types/fastedge/template_parameter.py +22 -0
  176. gcore/types/fastedge/template_parameter_param.py +21 -0
  177. gcore/types/fastedge/template_replace_params.py +30 -0
  178. gcore/types/fastedge/template_short.py +27 -0
  179. gcore/types/iam/__init__.py +17 -0
  180. gcore/types/iam/account_overview.py +488 -0
  181. gcore/types/iam/api_token.py +78 -0
  182. gcore/types/iam/api_token_create.py +15 -0
  183. gcore/types/iam/api_token_create_params.py +42 -0
  184. gcore/types/iam/api_token_list.py +81 -0
  185. gcore/types/iam/api_token_list_params.py +41 -0
  186. gcore/types/iam/user.py +86 -0
  187. gcore/types/iam/user_detailed.py +104 -0
  188. gcore/types/iam/user_invite.py +15 -0
  189. gcore/types/iam/user_invite_params.py +37 -0
  190. gcore/types/iam/user_list_params.py +15 -0
  191. gcore/types/iam/user_update.py +104 -0
  192. gcore/types/iam/user_update_params.py +52 -0
  193. gcore/types/waap/__init__.py +0 -1
  194. gcore/types/waap/domains/custom_rule_create_params.py +7 -3
  195. gcore/types/waap/domains/custom_rule_update_params.py +7 -3
  196. gcore/types/waap/waap_custom_rule.py +7 -3
  197. {gcore-0.3.0.dist-info → gcore-0.5.0.dist-info}/METADATA +44 -5
  198. {gcore-0.3.0.dist-info → gcore-0.5.0.dist-info}/RECORD +200 -151
  199. gcore/resources/waap/clients.py +0 -135
  200. gcore/types/cloud/aws_iam_data.py +0 -13
  201. gcore/types/cloud/aws_iam_data_param.py +0 -15
  202. gcore/types/cloud/baremetal/flavor_list_suitable_params.py +0 -22
  203. gcore/types/cloud/capacity.py +0 -13
  204. gcore/types/cloud/container_probe_config_create_param.py +0 -17
  205. gcore/types/cloud/container_probe_create_param.py +0 -38
  206. gcore/types/cloud/container_probe_exec_create_param.py +0 -13
  207. gcore/types/cloud/container_probe_http_get_create_param.py +0 -25
  208. gcore/types/cloud/container_probe_tcp_socket_create_param.py +0 -12
  209. gcore/types/cloud/container_scale.py +0 -25
  210. gcore/types/cloud/container_scale_trigger_rate.py +0 -13
  211. gcore/types/cloud/container_scale_trigger_sqs.py +0 -33
  212. gcore/types/cloud/container_scale_trigger_threshold.py +0 -10
  213. gcore/types/cloud/container_scale_triggers.py +0 -36
  214. gcore/types/cloud/deploy_status.py +0 -13
  215. gcore/types/cloud/inference/container.py +0 -26
  216. gcore/types/cloud/inference/inference.py +0 -95
  217. gcore/types/cloud/inference/mlcatalog_order_by_choices.py +0 -7
  218. gcore/types/cloud/inference_probes.py +0 -19
  219. gcore/types/cloud/ingress_opts_out.py +0 -16
  220. gcore/types/cloud/ingress_opts_param.py +0 -18
  221. gcore/types/cloud/instances/flavor_list_for_resize_params.py +0 -16
  222. gcore/types/cloud/instances/flavor_list_suitable_params.py +0 -59
  223. gcore/types/cloud/secret_create_params.py +0 -66
  224. gcore/types/waap/client_me_response.py +0 -34
  225. {gcore-0.3.0.dist-info → gcore-0.5.0.dist-info}/WHEEL +0 -0
  226. {gcore-0.3.0.dist-info → gcore-0.5.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,81 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from typing_extensions import Literal, TypeAlias
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["APITokenList", "APITokenListItem", "APITokenListItemClientUser", "APITokenListItemClientUserRole"]
9
+
10
+
11
+ class APITokenListItemClientUserRole(BaseModel):
12
+ id: Optional[int] = None
13
+ """Group's ID: Possible values are:
14
+
15
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
16
+ (API+Web)* 3022 - Purge and Prefetch only (API)
17
+ """
18
+
19
+ name: Optional[
20
+ Literal[
21
+ "Users", "Administrators", "Engineers", "Purge and Prefetch only (API)", "Purge and Prefetch only (API+Web)"
22
+ ]
23
+ ] = None
24
+ """Group's name."""
25
+
26
+
27
+ class APITokenListItemClientUser(BaseModel):
28
+ client_id: Optional[int] = None
29
+ """Account's ID."""
30
+
31
+ deleted: Optional[bool] = None
32
+ """Deletion flag. If true, then the API token was deleted."""
33
+
34
+ role: Optional[APITokenListItemClientUserRole] = None
35
+
36
+ user_email: Optional[str] = None
37
+ """User's email who issued the API token."""
38
+
39
+ user_id: Optional[int] = None
40
+ """User's ID who issued the API token."""
41
+
42
+ user_name: Optional[str] = None
43
+ """User's name who issued the API token."""
44
+
45
+
46
+ class APITokenListItem(BaseModel):
47
+ client_user: APITokenListItemClientUser
48
+
49
+ exp_date: str
50
+ """
51
+ Date when the API token becomes expired (ISO 8086/RFC 3339 format), UTC. If
52
+ null, then the API token will never expire.
53
+ """
54
+
55
+ name: str
56
+ """API token name."""
57
+
58
+ id: Optional[int] = None
59
+ """API token ID."""
60
+
61
+ created: Optional[str] = None
62
+ """Date when the API token was issued (ISO 8086/RFC 3339 format), UTC."""
63
+
64
+ deleted: Optional[bool] = None
65
+ """Deletion flag. If true, then the API token was deleted."""
66
+
67
+ description: Optional[str] = None
68
+ """API token description."""
69
+
70
+ expired: Optional[bool] = None
71
+ """Expiration flag.
72
+
73
+ If true, then the API token has expired. When an API token expires it will be
74
+ automatically deleted.
75
+ """
76
+
77
+ last_usage: Optional[str] = None
78
+ """Date when the API token was last used (ISO 8086/RFC 3339 format), UTC."""
79
+
80
+
81
+ APITokenList: TypeAlias = List[APITokenListItem]
@@ -0,0 +1,41 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["APITokenListParams"]
8
+
9
+
10
+ class APITokenListParams(TypedDict, total=False):
11
+ deleted: bool
12
+ """The state of API tokens included in the response.
13
+ Two possible values:
14
+
15
+ - True - API token was not deleted.\\** False - API token was deleted.
16
+
17
+ Example, _&deleted=True_
18
+ """
19
+
20
+ issued_by: int
21
+ """User's ID.
22
+
23
+ Use to get API tokens issued by a particular user.
24
+ Example, _&`issued_by`=1234_
25
+ """
26
+
27
+ not_issued_by: int
28
+ """User's ID.
29
+
30
+ Use to get API tokens issued by anyone except a particular user.
31
+ Example, _¬_issued_by=1234_
32
+ """
33
+
34
+ role: str
35
+ """Group's ID. Possible values are:
36
+
37
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
38
+ (API+Web)* 3022 - Purge and Prefetch only (API)
39
+
40
+ Example, _&role=Engineers_
41
+ """
@@ -0,0 +1,86 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["User", "Group"]
9
+
10
+
11
+ class Group(BaseModel):
12
+ id: Optional[int] = None
13
+ """Group's ID: Possible values are:
14
+
15
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
16
+ (API+Web)* 3022 - Purge and Prefetch only (API)
17
+ """
18
+
19
+ name: Optional[
20
+ Literal[
21
+ "Users", "Administrators", "Engineers", "Purge and Prefetch only (API)", "Purge and Prefetch only (API+Web)"
22
+ ]
23
+ ] = None
24
+ """Group's name."""
25
+
26
+
27
+ class User(BaseModel):
28
+ id: Optional[int] = None
29
+ """User's ID."""
30
+
31
+ activated: Optional[bool] = None
32
+ """Email confirmation:
33
+
34
+ - `true` – user confirmed the email;
35
+ - `false` – user did not confirm the email.
36
+ """
37
+
38
+ auth_types: Optional[List[Literal["password", "sso", "github", "google-oauth2"]]] = None
39
+ """System field. List of auth types available for the account."""
40
+
41
+ client: Optional[float] = None
42
+ """User's account ID."""
43
+
44
+ company: Optional[str] = None
45
+ """User's company."""
46
+
47
+ deleted: Optional[bool] = None
48
+ """Deletion flag. If `true` then user was deleted."""
49
+
50
+ email: Optional[str] = None
51
+ """User's email address."""
52
+
53
+ groups: Optional[List[Group]] = None
54
+ """User's group in the current account. IAM supports 5 groups:
55
+
56
+ - Users
57
+ - Administrators
58
+ - Engineers
59
+ - Purge and Prefetch only (API)
60
+ - Purge and Prefetch only (API+Web)
61
+ """
62
+
63
+ lang: Optional[Literal["de", "en", "ru", "zh", "az"]] = None
64
+ """User's language. Defines language of the control panel and email messages."""
65
+
66
+ name: Optional[str] = None
67
+ """User's name."""
68
+
69
+ phone: Optional[str] = None
70
+ """User's phone."""
71
+
72
+ reseller: Optional[int] = None
73
+ """Services provider ID."""
74
+
75
+ sso_auth: Optional[bool] = None
76
+ """SSO authentication flag. If `true` then user can login via SAML SSO."""
77
+
78
+ two_fa: Optional[bool] = None
79
+ """Two-step verification:
80
+
81
+ - `true` – user enabled two-step verification;
82
+ - `false` – user disabled two-step verification.
83
+ """
84
+
85
+ user_type: Optional[Literal["common"]] = None
86
+ """User's type."""
@@ -0,0 +1,104 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["UserDetailed", "ClientAndRole", "Group"]
9
+
10
+
11
+ class ClientAndRole(BaseModel):
12
+ client_company_name: str
13
+
14
+ client_id: int
15
+
16
+ user_id: int
17
+ """User's ID."""
18
+
19
+ user_roles: List[str]
20
+ """User role in this client."""
21
+
22
+
23
+ class Group(BaseModel):
24
+ id: Optional[int] = None
25
+ """Group's ID: Possible values are:
26
+
27
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
28
+ (API+Web)* 3022 - Purge and Prefetch only (API)
29
+ """
30
+
31
+ name: Optional[
32
+ Literal[
33
+ "Users", "Administrators", "Engineers", "Purge and Prefetch only (API)", "Purge and Prefetch only (API+Web)"
34
+ ]
35
+ ] = None
36
+ """Group's name."""
37
+
38
+
39
+ class UserDetailed(BaseModel):
40
+ id: Optional[int] = None
41
+ """User's ID."""
42
+
43
+ activated: Optional[bool] = None
44
+ """Email confirmation:
45
+
46
+ - `true` – user confirmed the email;
47
+ - `false` – user did not confirm the email.
48
+ """
49
+
50
+ auth_types: Optional[List[Literal["password", "sso", "github", "google-oauth2"]]] = None
51
+ """System field. List of auth types available for the account."""
52
+
53
+ client: Optional[float] = None
54
+ """User's account ID."""
55
+
56
+ client_and_roles: Optional[List[ClientAndRole]] = None
57
+ """List of user's clients. User can access to one or more clients."""
58
+
59
+ company: Optional[str] = None
60
+ """User's company."""
61
+
62
+ deleted: Optional[bool] = None
63
+ """Deletion flag. If `true` then user was deleted."""
64
+
65
+ email: Optional[str] = None
66
+ """User's email address."""
67
+
68
+ groups: Optional[List[Group]] = None
69
+ """User's group in the current account. IAM supports 5 groups:
70
+
71
+ - Users
72
+ - Administrators
73
+ - Engineers
74
+ - Purge and Prefetch only (API)
75
+ - Purge and Prefetch only (API+Web)
76
+ """
77
+
78
+ is_active: Optional[bool] = None
79
+ """User activity flag."""
80
+
81
+ lang: Optional[Literal["de", "en", "ru", "zh", "az"]] = None
82
+ """User's language. Defines language of the control panel and email messages."""
83
+
84
+ name: Optional[str] = None
85
+ """User's name."""
86
+
87
+ phone: Optional[str] = None
88
+ """User's phone."""
89
+
90
+ reseller: Optional[int] = None
91
+ """Services provider ID."""
92
+
93
+ sso_auth: Optional[bool] = None
94
+ """SSO authentication flag. If `true` then user can login via SAML SSO."""
95
+
96
+ two_fa: Optional[bool] = None
97
+ """Two-step verification:
98
+
99
+ - `true` – user enabled two-step verification;
100
+ - `false` – user disabled two-step verification.
101
+ """
102
+
103
+ user_type: Optional[Literal["common", "reseller", "seller"]] = None
104
+ """User's type."""
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["UserInvite"]
8
+
9
+
10
+ class UserInvite(BaseModel):
11
+ status: Optional[str] = None
12
+ """Status of the invitation."""
13
+
14
+ user_id: Optional[int] = None
15
+ """Invited user ID."""
@@ -0,0 +1,37 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, Required, TypedDict
6
+
7
+ __all__ = ["UserInviteParams", "UserRole"]
8
+
9
+
10
+ class UserInviteParams(TypedDict, total=False):
11
+ client_id: Required[int]
12
+ """ID of account."""
13
+
14
+ email: Required[str]
15
+ """User email."""
16
+
17
+ user_role: Required[UserRole]
18
+
19
+ lang: Literal["de", "en", "ru", "zh", "az"]
20
+ """User's language. Defines language of the control panel and email messages."""
21
+
22
+ name: str
23
+ """User name."""
24
+
25
+
26
+ class UserRole(TypedDict, total=False):
27
+ id: int
28
+ """Group's ID: Possible values are:
29
+
30
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
31
+ (API+Web)* 3022 - Purge and Prefetch only (API)
32
+ """
33
+
34
+ name: Literal[
35
+ "Users", "Administrators", "Engineers", "Purge and Prefetch only (API)", "Purge and Prefetch only (API+Web)"
36
+ ]
37
+ """Group's name."""
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["UserListParams"]
8
+
9
+
10
+ class UserListParams(TypedDict, total=False):
11
+ limit: int
12
+ """The maximum number of items."""
13
+
14
+ offset: int
15
+ """Offset relative to the beginning of list."""
@@ -0,0 +1,104 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["UserUpdate", "ClientAndRole", "Group"]
9
+
10
+
11
+ class ClientAndRole(BaseModel):
12
+ client_company_name: str
13
+
14
+ client_id: int
15
+
16
+ user_id: int
17
+ """User's ID."""
18
+
19
+ user_roles: List[str]
20
+ """User role in this client."""
21
+
22
+
23
+ class Group(BaseModel):
24
+ id: Optional[int] = None
25
+ """Group's ID: Possible values are:
26
+
27
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
28
+ (API+Web)* 3022 - Purge and Prefetch only (API)
29
+ """
30
+
31
+ name: Optional[
32
+ Literal[
33
+ "Users", "Administrators", "Engineers", "Purge and Prefetch only (API)", "Purge and Prefetch only (API+Web)"
34
+ ]
35
+ ] = None
36
+ """Group's name."""
37
+
38
+
39
+ class UserUpdate(BaseModel):
40
+ id: Optional[int] = None
41
+ """User's ID."""
42
+
43
+ activated: Optional[bool] = None
44
+ """Email confirmation:
45
+
46
+ - `true` – user confirmed the email;
47
+ - `false` – user did not confirm the email.
48
+ """
49
+
50
+ auth_types: Optional[List[Literal["password", "sso", "github", "google-oauth2"]]] = None
51
+ """System field. List of auth types available for the account."""
52
+
53
+ client: Optional[float] = None
54
+ """User's account ID."""
55
+
56
+ client_and_roles: Optional[List[ClientAndRole]] = None
57
+ """List of user's clients. User can access to one or more clients."""
58
+
59
+ company: Optional[str] = None
60
+ """User's company."""
61
+
62
+ deleted: Optional[bool] = None
63
+ """Deletion flag. If `true` then user was deleted."""
64
+
65
+ email: Optional[str] = None
66
+ """User's email address."""
67
+
68
+ groups: Optional[List[Group]] = None
69
+ """User's group in the current account. IAM supports 5 groups:
70
+
71
+ - Users
72
+ - Administrators
73
+ - Engineers
74
+ - Purge and Prefetch only (API)
75
+ - Purge and Prefetch only (API+Web)
76
+ """
77
+
78
+ is_active: Optional[bool] = None
79
+ """User activity flag."""
80
+
81
+ lang: Optional[Literal["de", "en", "ru", "zh", "az"]] = None
82
+ """User's language. Defines language of the control panel and email messages."""
83
+
84
+ name: Optional[str] = None
85
+ """User's name."""
86
+
87
+ phone: Optional[str] = None
88
+ """User's phone."""
89
+
90
+ reseller: Optional[int] = None
91
+ """Services provider ID."""
92
+
93
+ sso_auth: Optional[bool] = None
94
+ """SSO authentication flag. If `true` then user can login via SAML SSO."""
95
+
96
+ two_fa: Optional[bool] = None
97
+ """Two-step verification:
98
+
99
+ - `true` – user enabled two-step verification;
100
+ - `false` – user disabled two-step verification.
101
+ """
102
+
103
+ user_type: Optional[Literal["common", "reseller", "seller"]] = None
104
+ """User's type."""
@@ -0,0 +1,52 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import List, Iterable, Optional
6
+ from typing_extensions import Literal, TypedDict
7
+
8
+ __all__ = ["UserUpdateParams", "Group"]
9
+
10
+
11
+ class UserUpdateParams(TypedDict, total=False):
12
+ auth_types: List[Literal["password", "sso", "github", "google-oauth2"]]
13
+ """System field. List of auth types available for the account."""
14
+
15
+ company: str
16
+ """User's company."""
17
+
18
+ email: str
19
+ """User's email address."""
20
+
21
+ groups: Iterable[Group]
22
+ """User's group in the current account. IAM supports 5 groups:
23
+
24
+ - Users
25
+ - Administrators
26
+ - Engineers
27
+ - Purge and Prefetch only (API)
28
+ - Purge and Prefetch only (API+Web)
29
+ """
30
+
31
+ lang: Literal["de", "en", "ru", "zh", "az"]
32
+ """User's language. Defines language of the control panel and email messages."""
33
+
34
+ name: Optional[str]
35
+ """User's name."""
36
+
37
+ phone: Optional[str]
38
+ """User's phone."""
39
+
40
+
41
+ class Group(TypedDict, total=False):
42
+ id: int
43
+ """Group's ID: Possible values are:
44
+
45
+ - 1 - Administrators* 2 - Users* 5 - Engineers* 3009 - Purge and Prefetch only
46
+ (API+Web)* 3022 - Purge and Prefetch only (API)
47
+ """
48
+
49
+ name: Literal[
50
+ "Users", "Administrators", "Engineers", "Purge and Prefetch only (API)", "Purge and Prefetch only (API+Web)"
51
+ ]
52
+ """Group's name."""
@@ -18,7 +18,6 @@ from .waap_policy_mode import WaapPolicyMode as WaapPolicyMode
18
18
  from .waap_top_session import WaapTopSession as WaapTopSession
19
19
  from .waap_organization import WaapOrganization as WaapOrganization
20
20
  from .waap_traffic_type import WaapTrafficType as WaapTrafficType
21
- from .client_me_response import ClientMeResponse as ClientMeResponse
22
21
  from .domain_list_params import DomainListParams as DomainListParams
23
22
  from .ip_info_get_params import IPInfoGetParams as IPInfoGetParams
24
23
  from .waap_advanced_rule import WaapAdvancedRule as WaapAdvancedRule
@@ -274,10 +274,14 @@ class ConditionTags(TypedDict, total=False):
274
274
 
275
275
  class ConditionURL(TypedDict, total=False):
276
276
  url: Required[str]
277
- """The pattern to match against the request URL.
277
+ """
278
+ The pattern to match against the request URL. Constraints depend on
279
+ `match_type`:
278
280
 
279
- If `match_type` is `Regex` the value must be a valid regular expression that
280
- does not use lookahead or lookbehind constructs
281
+ - **Exact/Contains**: plain text matching (e.g., `/admin`).
282
+ - **Regex**: a valid regular expression (must comply with
283
+ `^[\\ww!\\$$~:#\\[[\\]]@\\((\\))\\*\\++,=\\//\\--\\..\\%%]+$`). Lookahead/lookbehind constructs are
284
+ forbidden.
281
285
  """
282
286
 
283
287
  match_type: Literal["Exact", "Contains", "Regex"]
@@ -277,10 +277,14 @@ class ConditionTags(TypedDict, total=False):
277
277
 
278
278
  class ConditionURL(TypedDict, total=False):
279
279
  url: Required[str]
280
- """The pattern to match against the request URL.
280
+ """
281
+ The pattern to match against the request URL. Constraints depend on
282
+ `match_type`:
281
283
 
282
- If `match_type` is `Regex` the value must be a valid regular expression that
283
- does not use lookahead or lookbehind constructs
284
+ - **Exact/Contains**: plain text matching (e.g., `/admin`).
285
+ - **Regex**: a valid regular expression (must comply with
286
+ `^[\\ww!\\$$~:#\\[[\\]]@\\((\\))\\*\\++,=\\//\\--\\..\\%%]+$`). Lookahead/lookbehind constructs are
287
+ forbidden.
284
288
  """
285
289
 
286
290
  match_type: Literal["Exact", "Contains", "Regex"]
@@ -255,10 +255,14 @@ class ConditionTags(BaseModel):
255
255
 
256
256
  class ConditionURL(BaseModel):
257
257
  url: str
258
- """The pattern to match against the request URL.
258
+ """
259
+ The pattern to match against the request URL. Constraints depend on
260
+ `match_type`:
259
261
 
260
- If `match_type` is `Regex` the value must be a valid regular expression that
261
- does not use lookahead or lookbehind constructs
262
+ - **Exact/Contains**: plain text matching (e.g., `/admin`).
263
+ - **Regex**: a valid regular expression (must comply with
264
+ `^[\\ww!\\$$~:#\\[[\\]]@\\((\\))\\*\\++,=\\//\\--\\..\\%%]+$`). Lookahead/lookbehind constructs are
265
+ forbidden.
262
266
  """
263
267
 
264
268
  match_type: Optional[Literal["Exact", "Contains", "Regex"]] = None