python3-core-api-client 0.1__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 (59) hide show
  1. cyberfusion/CoreApiClient/__init__.py +0 -0
  2. cyberfusion/CoreApiClient/_encoders.py +7 -0
  3. cyberfusion/CoreApiClient/connector.py +382 -0
  4. cyberfusion/CoreApiClient/exceptions.py +13 -0
  5. cyberfusion/CoreApiClient/http.py +21 -0
  6. cyberfusion/CoreApiClient/interfaces.py +9 -0
  7. cyberfusion/CoreApiClient/models.py +5350 -0
  8. cyberfusion/CoreApiClient/resources/__init__.py +99 -0
  9. cyberfusion/CoreApiClient/resources/basic_authentication_realms.py +85 -0
  10. cyberfusion/CoreApiClient/resources/borg_archives.py +144 -0
  11. cyberfusion/CoreApiClient/resources/borg_repositories.py +134 -0
  12. cyberfusion/CoreApiClient/resources/certificate_managers.py +99 -0
  13. cyberfusion/CoreApiClient/resources/certificates.py +63 -0
  14. cyberfusion/CoreApiClient/resources/clusters.py +233 -0
  15. cyberfusion/CoreApiClient/resources/cmses.py +289 -0
  16. cyberfusion/CoreApiClient/resources/crons.py +76 -0
  17. cyberfusion/CoreApiClient/resources/custom_config_snippets.py +88 -0
  18. cyberfusion/CoreApiClient/resources/custom_configs.py +82 -0
  19. cyberfusion/CoreApiClient/resources/customers.py +97 -0
  20. cyberfusion/CoreApiClient/resources/daemons.py +76 -0
  21. cyberfusion/CoreApiClient/resources/database_user_grants.py +66 -0
  22. cyberfusion/CoreApiClient/resources/database_users.py +82 -0
  23. cyberfusion/CoreApiClient/resources/databases.py +140 -0
  24. cyberfusion/CoreApiClient/resources/domain_routers.py +43 -0
  25. cyberfusion/CoreApiClient/resources/firewall_groups.py +82 -0
  26. cyberfusion/CoreApiClient/resources/firewall_rules.py +67 -0
  27. cyberfusion/CoreApiClient/resources/fpm_pools.py +110 -0
  28. cyberfusion/CoreApiClient/resources/ftp_users.py +89 -0
  29. cyberfusion/CoreApiClient/resources/haproxy_listens.py +67 -0
  30. cyberfusion/CoreApiClient/resources/haproxy_listens_to_nodes.py +70 -0
  31. cyberfusion/CoreApiClient/resources/health.py +14 -0
  32. cyberfusion/CoreApiClient/resources/hosts_entries.py +63 -0
  33. cyberfusion/CoreApiClient/resources/htpasswd_files.py +67 -0
  34. cyberfusion/CoreApiClient/resources/htpasswd_users.py +82 -0
  35. cyberfusion/CoreApiClient/resources/login.py +28 -0
  36. cyberfusion/CoreApiClient/resources/logs.py +50 -0
  37. cyberfusion/CoreApiClient/resources/mail_accounts.py +105 -0
  38. cyberfusion/CoreApiClient/resources/mail_aliases.py +79 -0
  39. cyberfusion/CoreApiClient/resources/mail_domains.py +79 -0
  40. cyberfusion/CoreApiClient/resources/mail_hostnames.py +82 -0
  41. cyberfusion/CoreApiClient/resources/malwares.py +53 -0
  42. cyberfusion/CoreApiClient/resources/mariadb_encryption_keys.py +56 -0
  43. cyberfusion/CoreApiClient/resources/node_add_ons.py +74 -0
  44. cyberfusion/CoreApiClient/resources/nodes.py +112 -0
  45. cyberfusion/CoreApiClient/resources/passenger_apps.py +99 -0
  46. cyberfusion/CoreApiClient/resources/redis_instances.py +85 -0
  47. cyberfusion/CoreApiClient/resources/root_ssh_keys.py +77 -0
  48. cyberfusion/CoreApiClient/resources/security_txt_policies.py +85 -0
  49. cyberfusion/CoreApiClient/resources/sites.py +29 -0
  50. cyberfusion/CoreApiClient/resources/ssh_keys.py +77 -0
  51. cyberfusion/CoreApiClient/resources/task_collections.py +38 -0
  52. cyberfusion/CoreApiClient/resources/tombstones.py +29 -0
  53. cyberfusion/CoreApiClient/resources/unix_users.py +122 -0
  54. cyberfusion/CoreApiClient/resources/url_redirects.py +79 -0
  55. cyberfusion/CoreApiClient/resources/virtual_hosts.py +120 -0
  56. python3_core_api_client-0.1.dist-info/METADATA +236 -0
  57. python3_core_api_client-0.1.dist-info/RECORD +59 -0
  58. python3_core_api_client-0.1.dist-info/WHEEL +5 -0
  59. python3_core_api_client-0.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,79 @@
1
+ from cyberfusion.CoreApiClient import models
2
+ from typing import Optional, List
3
+
4
+ from cyberfusion.CoreApiClient.interfaces import Resource
5
+
6
+
7
+ class URLRedirects(Resource):
8
+ def create_url_redirect(
9
+ self,
10
+ request: models.URLRedirectCreateRequest,
11
+ ) -> models.URLRedirectResource:
12
+ return models.URLRedirectResource.construct(
13
+ **self.api_connector.send_or_fail(
14
+ "POST",
15
+ "/api/v1/url-redirects",
16
+ data=request.dict(),
17
+ query_parameters={},
18
+ ).json
19
+ )
20
+
21
+ def list_url_redirects(
22
+ self,
23
+ *,
24
+ skip: Optional[int] = None,
25
+ limit: Optional[int] = None,
26
+ filter_: Optional[List[str]] = None,
27
+ sort: Optional[List[str]] = None,
28
+ ) -> list[models.URLRedirectResource]:
29
+ return [
30
+ models.URLRedirectResource.construct(**model)
31
+ for model in self.api_connector.send_or_fail(
32
+ "GET",
33
+ "/api/v1/url-redirects",
34
+ data=None,
35
+ query_parameters={
36
+ "skip": skip,
37
+ "limit": limit,
38
+ "filter": filter_,
39
+ "sort": sort,
40
+ },
41
+ ).json
42
+ ]
43
+
44
+ def read_url_redirect(
45
+ self,
46
+ *,
47
+ id_: int,
48
+ ) -> models.URLRedirectResource:
49
+ return models.URLRedirectResource.construct(
50
+ **self.api_connector.send_or_fail(
51
+ "GET", f"/api/v1/url-redirects/{id_}", data=None, query_parameters={}
52
+ ).json
53
+ )
54
+
55
+ def update_url_redirect(
56
+ self,
57
+ request: models.URLRedirectUpdateRequest,
58
+ *,
59
+ id_: int,
60
+ ) -> models.URLRedirectResource:
61
+ return models.URLRedirectResource.construct(
62
+ **self.api_connector.send_or_fail(
63
+ "PATCH",
64
+ f"/api/v1/url-redirects/{id_}",
65
+ data=request.dict(exclude_unset=True),
66
+ query_parameters={},
67
+ ).json
68
+ )
69
+
70
+ def delete_url_redirect(
71
+ self,
72
+ *,
73
+ id_: int,
74
+ ) -> models.DetailMessage:
75
+ return models.DetailMessage.construct(
76
+ **self.api_connector.send_or_fail(
77
+ "DELETE", f"/api/v1/url-redirects/{id_}", data=None, query_parameters={}
78
+ ).json
79
+ )
@@ -0,0 +1,120 @@
1
+ from cyberfusion.CoreApiClient import models
2
+ from typing import Optional, List
3
+
4
+ from cyberfusion.CoreApiClient.interfaces import Resource
5
+
6
+
7
+ class VirtualHosts(Resource):
8
+ def create_virtual_host(
9
+ self,
10
+ request: models.VirtualHostCreateRequest,
11
+ ) -> models.VirtualHostResource:
12
+ return models.VirtualHostResource.construct(
13
+ **self.api_connector.send_or_fail(
14
+ "POST",
15
+ "/api/v1/virtual-hosts",
16
+ data=request.dict(),
17
+ query_parameters={},
18
+ ).json
19
+ )
20
+
21
+ def list_virtual_hosts(
22
+ self,
23
+ *,
24
+ skip: Optional[int] = None,
25
+ limit: Optional[int] = None,
26
+ filter_: Optional[List[str]] = None,
27
+ sort: Optional[List[str]] = None,
28
+ ) -> list[models.VirtualHostResource]:
29
+ return [
30
+ models.VirtualHostResource.construct(**model)
31
+ for model in self.api_connector.send_or_fail(
32
+ "GET",
33
+ "/api/v1/virtual-hosts",
34
+ data=None,
35
+ query_parameters={
36
+ "skip": skip,
37
+ "limit": limit,
38
+ "filter": filter_,
39
+ "sort": sort,
40
+ },
41
+ ).json
42
+ ]
43
+
44
+ def read_virtual_host(
45
+ self,
46
+ *,
47
+ id_: int,
48
+ ) -> models.VirtualHostResource:
49
+ return models.VirtualHostResource.construct(
50
+ **self.api_connector.send_or_fail(
51
+ "GET", f"/api/v1/virtual-hosts/{id_}", data=None, query_parameters={}
52
+ ).json
53
+ )
54
+
55
+ def update_virtual_host(
56
+ self,
57
+ request: models.VirtualHostUpdateRequest,
58
+ *,
59
+ id_: int,
60
+ ) -> models.VirtualHostResource:
61
+ return models.VirtualHostResource.construct(
62
+ **self.api_connector.send_or_fail(
63
+ "PATCH",
64
+ f"/api/v1/virtual-hosts/{id_}",
65
+ data=request.dict(exclude_unset=True),
66
+ query_parameters={},
67
+ ).json
68
+ )
69
+
70
+ def delete_virtual_host(
71
+ self,
72
+ *,
73
+ id_: int,
74
+ delete_on_cluster: Optional[bool] = None,
75
+ ) -> models.DetailMessage:
76
+ return models.DetailMessage.construct(
77
+ **self.api_connector.send_or_fail(
78
+ "DELETE",
79
+ f"/api/v1/virtual-hosts/{id_}",
80
+ data=None,
81
+ query_parameters={
82
+ "delete_on_cluster": delete_on_cluster,
83
+ },
84
+ ).json
85
+ )
86
+
87
+ def get_virtual_host_document_root(
88
+ self,
89
+ *,
90
+ id_: int,
91
+ ) -> models.VirtualHostDocumentRoot:
92
+ return models.VirtualHostDocumentRoot.construct(
93
+ **self.api_connector.send_or_fail(
94
+ "GET",
95
+ f"/api/v1/virtual-hosts/{id_}/document-root",
96
+ data=None,
97
+ query_parameters={},
98
+ ).json
99
+ )
100
+
101
+ def sync_domain_roots_of_virtual_hosts(
102
+ self,
103
+ *,
104
+ left_virtual_host_id: int,
105
+ right_virtual_host_id: int,
106
+ callback_url: Optional[str] = None,
107
+ exclude_paths: Optional[List[str]] = None,
108
+ ) -> models.TaskCollectionResource:
109
+ return models.TaskCollectionResource.construct(
110
+ **self.api_connector.send_or_fail(
111
+ "POST",
112
+ f"/api/v1/virtual-hosts/{left_virtual_host_id}/domain-root/sync",
113
+ data=None,
114
+ query_parameters={
115
+ "callback_url": callback_url,
116
+ "right_virtual_host_id": right_virtual_host_id,
117
+ "exclude_paths": exclude_paths,
118
+ },
119
+ ).json
120
+ )
@@ -0,0 +1,236 @@
1
+ Metadata-Version: 2.4
2
+ Name: python3-core-api-client
3
+ Version: 0.1
4
+ Summary: Python client for Core API.
5
+ Author-email: Cyberfusion <support@cyberfusion.io>
6
+ Project-URL: Source, https://github.com/CyberfusionIO/python3-core-api-client
7
+ Description-Content-Type: text/markdown
8
+ Requires-Dist: certifi==2022.9.24
9
+ Requires-Dist: requests==2.28.1
10
+ Requires-Dist: pydantic[email]==1.10.4
11
+
12
+ # python3-core-api-client
13
+
14
+ Python client for Core API.
15
+
16
+ This client was built for and tested on the **1.241** version of the API.
17
+
18
+ ## Support
19
+
20
+ This client is officially supported by Cyberfusion.
21
+
22
+ Have questions? Ask your support questions on the [platform](https://platform.cyberfusion.io/). No access to the platform? Send an email to [support@cyberfusion.io](mailto:support@cyberfusion.io). **GitHub issues are not actively monitored.**
23
+
24
+ # Install
25
+
26
+ This client can be used in any Python project and with any framework.
27
+
28
+ This client requires Python 3.11 or higher.
29
+
30
+ ## PyPI
31
+
32
+ Run the following command to install the package from PyPI:
33
+
34
+ pip3 install python3-core-api-client
35
+
36
+ ## Debian
37
+
38
+ Run the following commands to build a Debian package:
39
+
40
+ mk-build-deps -i -t 'apt -o Debug::pkgProblemResolver=yes --no-install-recommends -y'
41
+ dpkg-buildpackage -us -uc
42
+
43
+ # Usage
44
+
45
+ ## API documentation
46
+
47
+ Refer to the [API documentation](https://core-api.cyberfusion.io/) for information about API requests.
48
+
49
+ **Enums and Models** are **auto-generated** based on the OpenAPI spec - so the client is completely in line with the Core API. **Requests and Resources** are not auto-generated.
50
+
51
+ ## Getting started
52
+
53
+ Initialise the `CoreApiConnector` with your username and password **or** API key.
54
+
55
+ The connector takes care of authentication, and offers several resources (such as `virtual_hosts`) and endpoints (i.e. `list_virtual_hosts`).
56
+
57
+ ```python
58
+ from cyberfusion.CoreApiClient.connector import CoreApiConnector
59
+
60
+ # Using username and password
61
+
62
+ connector = CoreApiConnector(
63
+ username='username', password='password'
64
+ )
65
+
66
+ # Or using API key
67
+
68
+ connector = CoreApiConnector(
69
+ api_key='api_key'
70
+ )
71
+
72
+ virtual_hosts = connector.virtual_hosts.list_virtual_hosts()
73
+ ```
74
+
75
+ ## Authentication
76
+
77
+ This client takes care of authentication.
78
+
79
+ If authentication using username and password fails, `cyberfusion.CoreApiClient.exceptions.AuthenticationException` is thrown.
80
+
81
+ If authentication using API key fails, the regular `CallException` exception fis raised.
82
+
83
+ Don't have an API user? Contact Cyberfusion.
84
+
85
+ ## Requests
86
+
87
+ The client uses a fluent interface to build requests.
88
+
89
+ To view all possible requests:
90
+
91
+ - Start with the connector
92
+ - Go to the desired resource
93
+ - Call the desired endpoint
94
+
95
+ Code example:
96
+
97
+ ```python
98
+ from cyberfusion.CoreApiClient.connector import CoreApiConnector
99
+
100
+ from cyberfusion.CoreApiClient.models import MailDomainCreateRequest
101
+
102
+ connector = CoreApiConnector(
103
+ username='username', password='password'
104
+ )
105
+
106
+ connector.mail_domains.create_mail_domain(
107
+ MailDomainCreateRequest(
108
+ domain='cyberfusion.io',
109
+ unix_user_id=1,
110
+ is_local=True,
111
+ catch_all_forward_email_addresses=[],
112
+ )
113
+ )
114
+ ```
115
+
116
+ Models are validated before sending the request (using [Pydantic](https://docs.pydantic.dev/latest/)). If invalid data is provided, `pydantic.ValidationError` is thrown.
117
+
118
+ For example:
119
+
120
+ ```python
121
+ from cyberfusion.CoreApiClient.connector import CoreApiConnector
122
+
123
+ from cyberfusion.CoreApiClient.models import MailAliasCreateRequest
124
+
125
+ connector = CoreApiConnector(
126
+ username='username', password='password'
127
+ )
128
+
129
+ connector.mail_aliases.create_mail_alias(
130
+ MailAliasCreateRequest(
131
+ local_part='&^@$#^&@$#^&',
132
+ mail_domain_id=1,
133
+ )
134
+ )
135
+ # throw pydantic.ValidationError
136
+ ```
137
+
138
+ The exception will provide more details about the validation errors.
139
+
140
+ ## Responses
141
+
142
+ ### Get model from response
143
+
144
+ Calling a n endpoint returns the resource model.
145
+
146
+ For example:
147
+
148
+ ```python
149
+ from cyberfusion.CoreApiClient.connector import CoreApiConnector
150
+
151
+ from cyberfusion.CoreApiClient.models import MailDomainCreateRequest
152
+
153
+ connector = CoreApiConnector(
154
+ username='username', password='password'
155
+ )
156
+
157
+ mail_domain_resource = connector.mail_domains.create_mail_domain(
158
+ MailDomainCreateRequest(
159
+ domain='cyberfusion.io',
160
+ unix_user_id=1,
161
+ is_local=True,
162
+ catch_all_forward_email_addresses=[],
163
+ )
164
+ )
165
+ # mail_domain_resource is a model representing the API resource
166
+ ```
167
+
168
+ ### Throw exception on failure
169
+
170
+ If a request returns an unexpected HTTP status code, `cyberfusion.CoreApiClient.exceptions.CallException` is thrown.
171
+
172
+ ## Enums
173
+
174
+ Some properties only accept certain values (enums).
175
+
176
+ Find these values in `cyberfusion.CoreApiClient.models`.
177
+
178
+ ## Deep dive
179
+
180
+ ### Custom `requests` session
181
+
182
+ Want to provide your own `requests` session? Pass it to the connector:
183
+
184
+ ```python
185
+ import requests
186
+
187
+ from cyberfusion.CoreApiClient.connector import CoreApiConnector
188
+
189
+ connector = CoreApiConnector(
190
+ ..., requests_session=requests.Session()
191
+ )
192
+ ```
193
+
194
+ Don't pass a custom session? A default one is created, including retries.
195
+
196
+ ### Manual requests
197
+
198
+ Don't want to use the full SDK, but easily send requests and retrieve responses from the Core API?
199
+
200
+ Initialise the connector as usual, and call `send`:
201
+
202
+ ```python
203
+ import requests
204
+
205
+ from cyberfusion.CoreApiClient.connector import CoreApiConnector
206
+
207
+ connector = CoreApiConnector(...)
208
+
209
+ response = connector.send(method='GET', path='/foobar', data={}, query_parameters={})
210
+
211
+ response.status_code
212
+ response.json
213
+ response.body
214
+ response.headers
215
+ response.failed
216
+ ```
217
+
218
+ To raise `cyberfusion.CoreApiClient.exceptions.CallException` in case of an unexpected HTTP status code, use `send_or_fail`.
219
+
220
+ ### Generating models
221
+
222
+ Auto-generate models as follows:
223
+
224
+ datamodel-codegen --input-file-type openapi --input $file --output src/cyberfusion/CoreApiClient/models.py --target-python-version 3.11
225
+
226
+ Replace `$file` by the path to the OpenAPI spec (JSON).
227
+
228
+ Note: don't replace `models.py` in full - it contains customisations.
229
+
230
+ # Test strategy
231
+
232
+ Tests use a mock server, [Stoplight Prism](https://stoplight.io/open-source/prism).
233
+
234
+ Prism checks requests' syntactic validity - based on the OpenAPI spec.
235
+
236
+ Therefore, the resources' test suites solely call methods without asserting specifics: nearly all possible issues - invalid requests, mismatch between resource models and endpoint, etc. - are already caught by having a validating mock server.
@@ -0,0 +1,59 @@
1
+ cyberfusion/CoreApiClient/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ cyberfusion/CoreApiClient/_encoders.py,sha256=wyYUK_82h_hOPRvdxIzYta7Ek1TSSYMORR1QF1XfcRA,186
3
+ cyberfusion/CoreApiClient/connector.py,sha256=uOUHYxJOnWlyrucneHGWeaPgdcDK6cHzuqK4Wqgau80,12813
4
+ cyberfusion/CoreApiClient/exceptions.py,sha256=fNxPtzVL4SzPiVNZmBTu1l8D57dkCxMxflyIXDPLE4Q,204
5
+ cyberfusion/CoreApiClient/http.py,sha256=z6ZyfQyUnA3QDCmej2BEIw9BOlTYoCE8zvTZ0-u_VoQ,429
6
+ cyberfusion/CoreApiClient/interfaces.py,sha256=P0wCbmSNEpB-eF49PHudc_qXM4blIXm4TsD2AB0z_7Q,269
7
+ cyberfusion/CoreApiClient/models.py,sha256=HXtva3VXmdK-yNFH5muzShepKu5w4MMY-JOIc6zLfow,267433
8
+ cyberfusion/CoreApiClient/resources/__init__.py,sha256=E5VMFXttOmN7TjJt0WeARL_tYVoJcLoRoOnIYkCF748,1881
9
+ cyberfusion/CoreApiClient/resources/basic_authentication_realms.py,sha256=RwGg2e9m0SI-6nECbv2Qa9LoORGx66jD6MI3BqOtPYY,2749
10
+ cyberfusion/CoreApiClient/resources/borg_archives.py,sha256=RhznSuycfcHXsBa9pJmzD-aX8twB6wlmO_Ad7jSWNUs,4362
11
+ cyberfusion/CoreApiClient/resources/borg_repositories.py,sha256=F8tvw286pj0PzoJuXJmYf2DXgKuvZevur-zxagOxtgI,3986
12
+ cyberfusion/CoreApiClient/resources/certificate_managers.py,sha256=f14ieh0hQTzAcEwz20VShuSpHsTnEozo1BKHd0yWxC4,3009
13
+ cyberfusion/CoreApiClient/resources/certificates.py,sha256=fEUGZ0PTbSW5JQAncWm38ttifxSS2Z7dfCbvDMNwHjU,1905
14
+ cyberfusion/CoreApiClient/resources/clusters.py,sha256=aDQJV20ZmIN5RbNGJT0gMOsxxZIJtGbMAlGFs8IclR4,7034
15
+ cyberfusion/CoreApiClient/resources/cmses.py,sha256=a4r8NbSway9HmyW7NTNag6ZWtBuwEn8fsI0irkAS0qw,8400
16
+ cyberfusion/CoreApiClient/resources/crons.py,sha256=1P_sxEMXyAiSW10x8hc-Q9TytWOdRsa1pJTSY04O8U8,2162
17
+ cyberfusion/CoreApiClient/resources/custom_config_snippets.py,sha256=nnXLKjKPbI8t_zvXg5A6oF0aQa4V9FvpM0Sm3QeJ2IQ,2758
18
+ cyberfusion/CoreApiClient/resources/custom_configs.py,sha256=G0fYu9Dq1akF3QpGv1ama4Czblz5FxO11vPUuB4-otY,2438
19
+ cyberfusion/CoreApiClient/resources/customers.py,sha256=lE5Y2txvK4Bi_-UpupYsZrLVBjmrShPwOZx9UdFqTSE,2879
20
+ cyberfusion/CoreApiClient/resources/daemons.py,sha256=ggvRZrGOC6ABVs-B0240xcQa7kPtnfFgzB5McjviHak,2204
21
+ cyberfusion/CoreApiClient/resources/database_user_grants.py,sha256=GcaBDceq6VC3nX3-qhPBpfMqkYJ7qxRBD382Y0qMJfE,2142
22
+ cyberfusion/CoreApiClient/resources/database_users.py,sha256=w80leEEaEUITyz2fW7bsFN8hHPfDGeq-AB7TAL77XNE,2438
23
+ cyberfusion/CoreApiClient/resources/databases.py,sha256=bgC8xBshIubYTxGq0K0vPVJQardPjtbmh1XdCr1Tqjw,4296
24
+ cyberfusion/CoreApiClient/resources/domain_routers.py,sha256=qZl1UEt_0nifEvsmb9zhrOpO0WR1GYewbm6s4c7YWRM,1339
25
+ cyberfusion/CoreApiClient/resources/firewall_groups.py,sha256=giay8c2Ox1EVJdsZJDH1d6PVXlP7cnlx9djKIpGLjmg,2459
26
+ cyberfusion/CoreApiClient/resources/firewall_rules.py,sha256=EDgRJnAVi9YzHwe-d5ayILOfTWu8drNvSxUkvzq4saQ,1979
27
+ cyberfusion/CoreApiClient/resources/fpm_pools.py,sha256=lD2u3YL8sP4GlFJDNAIp-N8aHCnSztg0eBaMly1YlnI,3219
28
+ cyberfusion/CoreApiClient/resources/ftp_users.py,sha256=9TNR8YeZjgYDS07OkrczoQsUWygV5SB5Nb1OetWy1Vc,2661
29
+ cyberfusion/CoreApiClient/resources/haproxy_listens.py,sha256=RWvYFjdU2x9t9wUZikREu0deUQOhP34Gvn6Zh1QL-K0,1995
30
+ cyberfusion/CoreApiClient/resources/haproxy_listens_to_nodes.py,sha256=NIQhUbvviELc9SMV4q0hYZqYYoSVDWtWy08d54wtyrk,2162
31
+ cyberfusion/CoreApiClient/resources/health.py,sha256=x8c_XYbTJuh92xegCQZYNIYPA11QLPjP5nr-UxNA7OU,393
32
+ cyberfusion/CoreApiClient/resources/hosts_entries.py,sha256=cfF9QqIPvsjSnZEkbKbhRWg3TJPMuZxdexUEN05Gn0c,1903
33
+ cyberfusion/CoreApiClient/resources/htpasswd_files.py,sha256=44SipjT7ri_arfGGm8x45mlCYIt4DNoLya9SFcncRDo,1979
34
+ cyberfusion/CoreApiClient/resources/htpasswd_users.py,sha256=rGh9KZpupw_zMbZqouBss21IErpz-iSjS3K8zE4WJsY,2438
35
+ cyberfusion/CoreApiClient/resources/login.py,sha256=VgJIsxgVfLOsMBYm1zbrx2Z0boi0_LS8gVYS_gX2L4I,858
36
+ cyberfusion/CoreApiClient/resources/logs.py,sha256=SGrIm76M0GoPKKwRQ54wip4NJHUgvd64-ILGp-5apDg,1538
37
+ cyberfusion/CoreApiClient/resources/mail_accounts.py,sha256=Q5lNkGufBAx4soRvpzGqBFQ9bQ2g8xlIbD-VycLRpA8,3201
38
+ cyberfusion/CoreApiClient/resources/mail_aliases.py,sha256=Wxqei8EkP1ZhsBWLouDlPccnl7EnHpNwzjZO4VKUjpg,2333
39
+ cyberfusion/CoreApiClient/resources/mail_domains.py,sha256=QTLBnWxR4d56Rr_IFzPaLS83_uojZzUO6RhzJ3blC6o,2347
40
+ cyberfusion/CoreApiClient/resources/mail_hostnames.py,sha256=cuuT1Ao5QsbL2Y4fhu5_SAdpawdCm6RemXFNLsIq6LA,2438
41
+ cyberfusion/CoreApiClient/resources/malwares.py,sha256=FKXmniuK0rccRO6qGhAtS2_MBvZAyKunqcuIlyT_HuM,1601
42
+ cyberfusion/CoreApiClient/resources/mariadb_encryption_keys.py,sha256=UQUSXNh_uIdeIAsx6jbDx-NAAz-AvcgK1VjpZqQV-x8,1779
43
+ cyberfusion/CoreApiClient/resources/node_add_ons.py,sha256=_8E3yuTv8a0370ns_agNuvywoKumxZa4yhcLCrAtaSc,2235
44
+ cyberfusion/CoreApiClient/resources/nodes.py,sha256=C0-eMxqbKKyRUsvqxGlONblmHxGskrXWfMsWAb8GPYg,3220
45
+ cyberfusion/CoreApiClient/resources/passenger_apps.py,sha256=z6zRW8WrjW6eZWFo5Otb_9LIy7RAUCaSfEL6Wj3ipAg,2961
46
+ cyberfusion/CoreApiClient/resources/redis_instances.py,sha256=GNWkPumiPq6w87lp3lew7dq0bqRJdLlS8mnTCWX6s9s,2586
47
+ cyberfusion/CoreApiClient/resources/root_ssh_keys.py,sha256=tPXTOW-jBtPzu48BxVVUcp0kIoFSx-rgfx_pw083sQk,2345
48
+ cyberfusion/CoreApiClient/resources/security_txt_policies.py,sha256=zCsgUkhs5SNF2AwbMGpQhxxulHNb7nj0f5nasS17Thc,2609
49
+ cyberfusion/CoreApiClient/resources/sites.py,sha256=sd548x1d0juD1B4u1iYy_KmdiLvhisnimdoLQ7XOtn0,839
50
+ cyberfusion/CoreApiClient/resources/ssh_keys.py,sha256=-J5W6gbMxaF_OPRPzosf0LpiPqWm1Snkc6CTJyiaknQ,2251
51
+ cyberfusion/CoreApiClient/resources/task_collections.py,sha256=IlMup5_snkhtxtEY0ow73pZconbL9tkPbFaI5vOiRzs,1088
52
+ cyberfusion/CoreApiClient/resources/tombstones.py,sha256=AH7G23dD_I-qqmr98AmzsFDAMMNA_fslv7BE7Z1fo_k,864
53
+ cyberfusion/CoreApiClient/resources/unix_users.py,sha256=moqa5CjNSzueccMGms9mNhtUSDFw1UapWlB8QM6Agjk,3636
54
+ cyberfusion/CoreApiClient/resources/url_redirects.py,sha256=1Y386s9Bge8gBaXucSUBi1npNPPQpMLLVGXqVxA2YFM,2368
55
+ cyberfusion/CoreApiClient/resources/virtual_hosts.py,sha256=SAo6QPQGO-IJJCwW71zEEdA5FGdAn-6ADdn1iuA03wg,3716
56
+ python3_core_api_client-0.1.dist-info/METADATA,sha256=H4bMR1aXuOD6OBz2Vj6fHwzFsmyGtvuGYIBNdrAoEGg,6357
57
+ python3_core_api_client-0.1.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
58
+ python3_core_api_client-0.1.dist-info/top_level.txt,sha256=ss011q9S6SL_KIIyq7iujFmIYa0grSjlnInO7cDkeag,12
59
+ python3_core_api_client-0.1.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (79.0.1)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1 @@
1
+ cyberfusion