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.
- cyberfusion/CoreApiClient/__init__.py +0 -0
- cyberfusion/CoreApiClient/_encoders.py +7 -0
- cyberfusion/CoreApiClient/connector.py +382 -0
- cyberfusion/CoreApiClient/exceptions.py +13 -0
- cyberfusion/CoreApiClient/http.py +21 -0
- cyberfusion/CoreApiClient/interfaces.py +9 -0
- cyberfusion/CoreApiClient/models.py +5350 -0
- cyberfusion/CoreApiClient/resources/__init__.py +99 -0
- cyberfusion/CoreApiClient/resources/basic_authentication_realms.py +85 -0
- cyberfusion/CoreApiClient/resources/borg_archives.py +144 -0
- cyberfusion/CoreApiClient/resources/borg_repositories.py +134 -0
- cyberfusion/CoreApiClient/resources/certificate_managers.py +99 -0
- cyberfusion/CoreApiClient/resources/certificates.py +63 -0
- cyberfusion/CoreApiClient/resources/clusters.py +233 -0
- cyberfusion/CoreApiClient/resources/cmses.py +289 -0
- cyberfusion/CoreApiClient/resources/crons.py +76 -0
- cyberfusion/CoreApiClient/resources/custom_config_snippets.py +88 -0
- cyberfusion/CoreApiClient/resources/custom_configs.py +82 -0
- cyberfusion/CoreApiClient/resources/customers.py +97 -0
- cyberfusion/CoreApiClient/resources/daemons.py +76 -0
- cyberfusion/CoreApiClient/resources/database_user_grants.py +66 -0
- cyberfusion/CoreApiClient/resources/database_users.py +82 -0
- cyberfusion/CoreApiClient/resources/databases.py +140 -0
- cyberfusion/CoreApiClient/resources/domain_routers.py +43 -0
- cyberfusion/CoreApiClient/resources/firewall_groups.py +82 -0
- cyberfusion/CoreApiClient/resources/firewall_rules.py +67 -0
- cyberfusion/CoreApiClient/resources/fpm_pools.py +110 -0
- cyberfusion/CoreApiClient/resources/ftp_users.py +89 -0
- cyberfusion/CoreApiClient/resources/haproxy_listens.py +67 -0
- cyberfusion/CoreApiClient/resources/haproxy_listens_to_nodes.py +70 -0
- cyberfusion/CoreApiClient/resources/health.py +14 -0
- cyberfusion/CoreApiClient/resources/hosts_entries.py +63 -0
- cyberfusion/CoreApiClient/resources/htpasswd_files.py +67 -0
- cyberfusion/CoreApiClient/resources/htpasswd_users.py +82 -0
- cyberfusion/CoreApiClient/resources/login.py +28 -0
- cyberfusion/CoreApiClient/resources/logs.py +50 -0
- cyberfusion/CoreApiClient/resources/mail_accounts.py +105 -0
- cyberfusion/CoreApiClient/resources/mail_aliases.py +79 -0
- cyberfusion/CoreApiClient/resources/mail_domains.py +79 -0
- cyberfusion/CoreApiClient/resources/mail_hostnames.py +82 -0
- cyberfusion/CoreApiClient/resources/malwares.py +53 -0
- cyberfusion/CoreApiClient/resources/mariadb_encryption_keys.py +56 -0
- cyberfusion/CoreApiClient/resources/node_add_ons.py +74 -0
- cyberfusion/CoreApiClient/resources/nodes.py +112 -0
- cyberfusion/CoreApiClient/resources/passenger_apps.py +99 -0
- cyberfusion/CoreApiClient/resources/redis_instances.py +85 -0
- cyberfusion/CoreApiClient/resources/root_ssh_keys.py +77 -0
- cyberfusion/CoreApiClient/resources/security_txt_policies.py +85 -0
- cyberfusion/CoreApiClient/resources/sites.py +29 -0
- cyberfusion/CoreApiClient/resources/ssh_keys.py +77 -0
- cyberfusion/CoreApiClient/resources/task_collections.py +38 -0
- cyberfusion/CoreApiClient/resources/tombstones.py +29 -0
- cyberfusion/CoreApiClient/resources/unix_users.py +122 -0
- cyberfusion/CoreApiClient/resources/url_redirects.py +79 -0
- cyberfusion/CoreApiClient/resources/virtual_hosts.py +120 -0
- python3_core_api_client-0.1.dist-info/METADATA +236 -0
- python3_core_api_client-0.1.dist-info/RECORD +59 -0
- python3_core_api_client-0.1.dist-info/WHEEL +5 -0
- python3_core_api_client-0.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,99 @@
|
|
1
|
+
from . import (
|
2
|
+
borg_repositories,
|
3
|
+
databases,
|
4
|
+
daemons,
|
5
|
+
ssh_keys,
|
6
|
+
unix_users,
|
7
|
+
mail_aliases,
|
8
|
+
health,
|
9
|
+
malwares,
|
10
|
+
clusters,
|
11
|
+
task_collections,
|
12
|
+
htpasswd_users,
|
13
|
+
custom_config_snippets,
|
14
|
+
certificate_managers,
|
15
|
+
haproxy_listens,
|
16
|
+
certificates,
|
17
|
+
database_user_grants,
|
18
|
+
htpasswd_files,
|
19
|
+
url_redirects,
|
20
|
+
firewall_groups,
|
21
|
+
mariadb_encryption_keys,
|
22
|
+
virtual_hosts,
|
23
|
+
passenger_apps,
|
24
|
+
cmses,
|
25
|
+
redis_instances,
|
26
|
+
logs,
|
27
|
+
sites,
|
28
|
+
mail_hostnames,
|
29
|
+
domain_routers,
|
30
|
+
node_add_ons,
|
31
|
+
haproxy_listens_to_nodes,
|
32
|
+
ftp_users,
|
33
|
+
custom_configs,
|
34
|
+
borg_archives,
|
35
|
+
login,
|
36
|
+
crons,
|
37
|
+
nodes,
|
38
|
+
hosts_entries,
|
39
|
+
database_users,
|
40
|
+
security_txt_policies,
|
41
|
+
customers,
|
42
|
+
basic_authentication_realms,
|
43
|
+
root_ssh_keys,
|
44
|
+
firewall_rules,
|
45
|
+
mail_accounts,
|
46
|
+
fpm_pools,
|
47
|
+
mail_domains,
|
48
|
+
tombstones,
|
49
|
+
)
|
50
|
+
|
51
|
+
__all__ = [
|
52
|
+
"basic_authentication_realms",
|
53
|
+
"borg_archives",
|
54
|
+
"borg_repositories",
|
55
|
+
"certificate_managers",
|
56
|
+
"certificates",
|
57
|
+
"clusters",
|
58
|
+
"cmses",
|
59
|
+
"crons",
|
60
|
+
"custom_config_snippets",
|
61
|
+
"custom_configs",
|
62
|
+
"daemons",
|
63
|
+
"database_user_grants",
|
64
|
+
"database_users",
|
65
|
+
"databases",
|
66
|
+
"domain_routers",
|
67
|
+
"firewall_groups",
|
68
|
+
"firewall_rules",
|
69
|
+
"fpm_pools",
|
70
|
+
"ftp_users",
|
71
|
+
"haproxy_listens",
|
72
|
+
"haproxy_listens_to_nodes",
|
73
|
+
"health",
|
74
|
+
"hosts_entries",
|
75
|
+
"htpasswd_files",
|
76
|
+
"htpasswd_users",
|
77
|
+
"logs",
|
78
|
+
"mail_accounts",
|
79
|
+
"mail_aliases",
|
80
|
+
"mail_domains",
|
81
|
+
"mail_hostnames",
|
82
|
+
"malwares",
|
83
|
+
"mariadb_encryption_keys",
|
84
|
+
"nodes",
|
85
|
+
"node_add_ons",
|
86
|
+
"passenger_apps",
|
87
|
+
"redis_instances",
|
88
|
+
"root_ssh_keys",
|
89
|
+
"security_txt_policies",
|
90
|
+
"sites",
|
91
|
+
"ssh_keys",
|
92
|
+
"task_collections",
|
93
|
+
"tombstones",
|
94
|
+
"unix_users",
|
95
|
+
"url_redirects",
|
96
|
+
"virtual_hosts",
|
97
|
+
"login",
|
98
|
+
"customers",
|
99
|
+
]
|
@@ -0,0 +1,85 @@
|
|
1
|
+
from cyberfusion.CoreApiClient import models
|
2
|
+
from typing import Optional, List
|
3
|
+
|
4
|
+
from cyberfusion.CoreApiClient.interfaces import Resource
|
5
|
+
|
6
|
+
|
7
|
+
class BasicAuthenticationRealms(Resource):
|
8
|
+
def create_basic_authentication_realm(
|
9
|
+
self,
|
10
|
+
request: models.BasicAuthenticationRealmCreateRequest,
|
11
|
+
) -> models.BasicAuthenticationRealmResource:
|
12
|
+
return models.BasicAuthenticationRealmResource.construct(
|
13
|
+
**self.api_connector.send_or_fail(
|
14
|
+
"POST",
|
15
|
+
"/api/v1/basic-authentication-realms",
|
16
|
+
data=request.dict(),
|
17
|
+
query_parameters={},
|
18
|
+
).json
|
19
|
+
)
|
20
|
+
|
21
|
+
def list_basic_authentication_realms(
|
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.BasicAuthenticationRealmResource]:
|
29
|
+
return [
|
30
|
+
models.BasicAuthenticationRealmResource.construct(**model)
|
31
|
+
for model in self.api_connector.send_or_fail(
|
32
|
+
"GET",
|
33
|
+
"/api/v1/basic-authentication-realms",
|
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_basic_authentication_realm(
|
45
|
+
self,
|
46
|
+
*,
|
47
|
+
id_: int,
|
48
|
+
) -> models.BasicAuthenticationRealmResource:
|
49
|
+
return models.BasicAuthenticationRealmResource.construct(
|
50
|
+
**self.api_connector.send_or_fail(
|
51
|
+
"GET",
|
52
|
+
f"/api/v1/basic-authentication-realms/{id_}",
|
53
|
+
data=None,
|
54
|
+
query_parameters={},
|
55
|
+
).json
|
56
|
+
)
|
57
|
+
|
58
|
+
def update_basic_authentication_realm(
|
59
|
+
self,
|
60
|
+
request: models.BasicAuthenticationRealmUpdateRequest,
|
61
|
+
*,
|
62
|
+
id_: int,
|
63
|
+
) -> models.BasicAuthenticationRealmResource:
|
64
|
+
return models.BasicAuthenticationRealmResource.construct(
|
65
|
+
**self.api_connector.send_or_fail(
|
66
|
+
"PATCH",
|
67
|
+
f"/api/v1/basic-authentication-realms/{id_}",
|
68
|
+
data=request.dict(exclude_unset=True),
|
69
|
+
query_parameters={},
|
70
|
+
).json
|
71
|
+
)
|
72
|
+
|
73
|
+
def delete_basic_authentication_realm(
|
74
|
+
self,
|
75
|
+
*,
|
76
|
+
id_: int,
|
77
|
+
) -> models.DetailMessage:
|
78
|
+
return models.DetailMessage.construct(
|
79
|
+
**self.api_connector.send_or_fail(
|
80
|
+
"DELETE",
|
81
|
+
f"/api/v1/basic-authentication-realms/{id_}",
|
82
|
+
data=None,
|
83
|
+
query_parameters={},
|
84
|
+
).json
|
85
|
+
)
|
@@ -0,0 +1,144 @@
|
|
1
|
+
from cyberfusion.CoreApiClient import models
|
2
|
+
from typing import Optional, List
|
3
|
+
|
4
|
+
from cyberfusion.CoreApiClient.interfaces import Resource
|
5
|
+
|
6
|
+
|
7
|
+
class BorgArchives(Resource):
|
8
|
+
def create_borg_archive_for_database(
|
9
|
+
self,
|
10
|
+
request: models.BorgArchiveCreateDatabaseRequest,
|
11
|
+
*,
|
12
|
+
callback_url: Optional[str] = None,
|
13
|
+
) -> models.TaskCollectionResource:
|
14
|
+
return models.TaskCollectionResource.construct(
|
15
|
+
**self.api_connector.send_or_fail(
|
16
|
+
"POST",
|
17
|
+
"/api/v1/borg-archives/database",
|
18
|
+
data=request.dict(),
|
19
|
+
query_parameters={
|
20
|
+
"callback_url": callback_url,
|
21
|
+
},
|
22
|
+
).json
|
23
|
+
)
|
24
|
+
|
25
|
+
def create_borg_archive_for_unix_user(
|
26
|
+
self,
|
27
|
+
request: models.BorgArchiveCreateUNIXUserRequest,
|
28
|
+
*,
|
29
|
+
callback_url: Optional[str] = None,
|
30
|
+
) -> models.TaskCollectionResource:
|
31
|
+
return models.TaskCollectionResource.construct(
|
32
|
+
**self.api_connector.send_or_fail(
|
33
|
+
"POST",
|
34
|
+
"/api/v1/borg-archives/unix-user",
|
35
|
+
data=request.dict(),
|
36
|
+
query_parameters={
|
37
|
+
"callback_url": callback_url,
|
38
|
+
},
|
39
|
+
).json
|
40
|
+
)
|
41
|
+
|
42
|
+
def list_borg_archives(
|
43
|
+
self,
|
44
|
+
*,
|
45
|
+
skip: Optional[int] = None,
|
46
|
+
limit: Optional[int] = None,
|
47
|
+
filter_: Optional[List[str]] = None,
|
48
|
+
sort: Optional[List[str]] = None,
|
49
|
+
) -> list[models.BorgArchiveResource]:
|
50
|
+
return [
|
51
|
+
models.BorgArchiveResource.construct(**model)
|
52
|
+
for model in self.api_connector.send_or_fail(
|
53
|
+
"GET",
|
54
|
+
"/api/v1/borg-archives",
|
55
|
+
data=None,
|
56
|
+
query_parameters={
|
57
|
+
"skip": skip,
|
58
|
+
"limit": limit,
|
59
|
+
"filter": filter_,
|
60
|
+
"sort": sort,
|
61
|
+
},
|
62
|
+
).json
|
63
|
+
]
|
64
|
+
|
65
|
+
def read_borg_archive(
|
66
|
+
self,
|
67
|
+
*,
|
68
|
+
id_: int,
|
69
|
+
) -> models.BorgArchiveResource:
|
70
|
+
return models.BorgArchiveResource.construct(
|
71
|
+
**self.api_connector.send_or_fail(
|
72
|
+
"GET", f"/api/v1/borg-archives/{id_}", data=None, query_parameters={}
|
73
|
+
).json
|
74
|
+
)
|
75
|
+
|
76
|
+
def get_borg_archive_metadata(
|
77
|
+
self,
|
78
|
+
*,
|
79
|
+
id_: int,
|
80
|
+
) -> models.BorgArchiveMetadata:
|
81
|
+
return models.BorgArchiveMetadata.construct(
|
82
|
+
**self.api_connector.send_or_fail(
|
83
|
+
"GET",
|
84
|
+
f"/api/v1/borg-archives/{id_}/metadata",
|
85
|
+
data=None,
|
86
|
+
query_parameters={},
|
87
|
+
).json
|
88
|
+
)
|
89
|
+
|
90
|
+
def restore_borg_archive(
|
91
|
+
self,
|
92
|
+
*,
|
93
|
+
id_: int,
|
94
|
+
callback_url: Optional[str] = None,
|
95
|
+
path: Optional[str] = None,
|
96
|
+
) -> models.TaskCollectionResource:
|
97
|
+
return models.TaskCollectionResource.construct(
|
98
|
+
**self.api_connector.send_or_fail(
|
99
|
+
"POST",
|
100
|
+
f"/api/v1/borg-archives/{id_}/restore",
|
101
|
+
data=None,
|
102
|
+
query_parameters={
|
103
|
+
"callback_url": callback_url,
|
104
|
+
"path": path,
|
105
|
+
},
|
106
|
+
).json
|
107
|
+
)
|
108
|
+
|
109
|
+
def list_borg_archive_contents(
|
110
|
+
self,
|
111
|
+
*,
|
112
|
+
id_: int,
|
113
|
+
path: Optional[str] = None,
|
114
|
+
) -> list[models.BorgArchiveContent]:
|
115
|
+
return [
|
116
|
+
models.BorgArchiveContent.construct(**model)
|
117
|
+
for model in self.api_connector.send_or_fail(
|
118
|
+
"GET",
|
119
|
+
f"/api/v1/borg-archives/{id_}/contents",
|
120
|
+
data=None,
|
121
|
+
query_parameters={
|
122
|
+
"path": path,
|
123
|
+
},
|
124
|
+
).json
|
125
|
+
]
|
126
|
+
|
127
|
+
def download_borg_archive(
|
128
|
+
self,
|
129
|
+
*,
|
130
|
+
id_: int,
|
131
|
+
callback_url: Optional[str] = None,
|
132
|
+
path: Optional[str] = None,
|
133
|
+
) -> models.TaskCollectionResource:
|
134
|
+
return models.TaskCollectionResource.construct(
|
135
|
+
**self.api_connector.send_or_fail(
|
136
|
+
"POST",
|
137
|
+
f"/api/v1/borg-archives/{id_}/download",
|
138
|
+
data=None,
|
139
|
+
query_parameters={
|
140
|
+
"callback_url": callback_url,
|
141
|
+
"path": path,
|
142
|
+
},
|
143
|
+
).json
|
144
|
+
)
|
@@ -0,0 +1,134 @@
|
|
1
|
+
from cyberfusion.CoreApiClient import models
|
2
|
+
from typing import Optional, List
|
3
|
+
|
4
|
+
from cyberfusion.CoreApiClient.interfaces import Resource
|
5
|
+
|
6
|
+
|
7
|
+
class BorgRepositories(Resource):
|
8
|
+
def create_borg_repository(
|
9
|
+
self,
|
10
|
+
request: models.BorgRepositoryCreateRequest,
|
11
|
+
) -> models.BorgRepositoryResource:
|
12
|
+
return models.BorgRepositoryResource.construct(
|
13
|
+
**self.api_connector.send_or_fail(
|
14
|
+
"POST",
|
15
|
+
"/api/v1/borg-repositories",
|
16
|
+
data=request.dict(),
|
17
|
+
query_parameters={},
|
18
|
+
).json
|
19
|
+
)
|
20
|
+
|
21
|
+
def list_borg_repositories(
|
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.BorgRepositoryResource]:
|
29
|
+
return [
|
30
|
+
models.BorgRepositoryResource.construct(**model)
|
31
|
+
for model in self.api_connector.send_or_fail(
|
32
|
+
"GET",
|
33
|
+
"/api/v1/borg-repositories",
|
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_borg_repository(
|
45
|
+
self,
|
46
|
+
*,
|
47
|
+
id_: int,
|
48
|
+
) -> models.BorgRepositoryResource:
|
49
|
+
return models.BorgRepositoryResource.construct(
|
50
|
+
**self.api_connector.send_or_fail(
|
51
|
+
"GET",
|
52
|
+
f"/api/v1/borg-repositories/{id_}",
|
53
|
+
data=None,
|
54
|
+
query_parameters={},
|
55
|
+
).json
|
56
|
+
)
|
57
|
+
|
58
|
+
def update_borg_repository(
|
59
|
+
self,
|
60
|
+
request: models.BorgRepositoryUpdateRequest,
|
61
|
+
*,
|
62
|
+
id_: int,
|
63
|
+
) -> models.BorgRepositoryResource:
|
64
|
+
return models.BorgRepositoryResource.construct(
|
65
|
+
**self.api_connector.send_or_fail(
|
66
|
+
"PATCH",
|
67
|
+
f"/api/v1/borg-repositories/{id_}",
|
68
|
+
data=request.dict(exclude_unset=True),
|
69
|
+
query_parameters={},
|
70
|
+
).json
|
71
|
+
)
|
72
|
+
|
73
|
+
def delete_borg_repository(
|
74
|
+
self,
|
75
|
+
*,
|
76
|
+
id_: int,
|
77
|
+
) -> models.DetailMessage:
|
78
|
+
return models.DetailMessage.construct(
|
79
|
+
**self.api_connector.send_or_fail(
|
80
|
+
"DELETE",
|
81
|
+
f"/api/v1/borg-repositories/{id_}",
|
82
|
+
data=None,
|
83
|
+
query_parameters={},
|
84
|
+
).json
|
85
|
+
)
|
86
|
+
|
87
|
+
def prune_borg_repository(
|
88
|
+
self,
|
89
|
+
*,
|
90
|
+
id_: int,
|
91
|
+
callback_url: Optional[str] = None,
|
92
|
+
) -> models.TaskCollectionResource:
|
93
|
+
return models.TaskCollectionResource.construct(
|
94
|
+
**self.api_connector.send_or_fail(
|
95
|
+
"POST",
|
96
|
+
f"/api/v1/borg-repositories/{id_}/prune",
|
97
|
+
data=None,
|
98
|
+
query_parameters={
|
99
|
+
"callback_url": callback_url,
|
100
|
+
},
|
101
|
+
).json
|
102
|
+
)
|
103
|
+
|
104
|
+
def check_borg_repository(
|
105
|
+
self,
|
106
|
+
*,
|
107
|
+
id_: int,
|
108
|
+
callback_url: Optional[str] = None,
|
109
|
+
) -> models.TaskCollectionResource:
|
110
|
+
return models.TaskCollectionResource.construct(
|
111
|
+
**self.api_connector.send_or_fail(
|
112
|
+
"POST",
|
113
|
+
f"/api/v1/borg-repositories/{id_}/check",
|
114
|
+
data=None,
|
115
|
+
query_parameters={
|
116
|
+
"callback_url": callback_url,
|
117
|
+
},
|
118
|
+
).json
|
119
|
+
)
|
120
|
+
|
121
|
+
def get_borg_archives_metadata(
|
122
|
+
self,
|
123
|
+
*,
|
124
|
+
id_: int,
|
125
|
+
) -> list[models.BorgArchiveMetadata]:
|
126
|
+
return [
|
127
|
+
models.BorgArchiveMetadata.construct(**model)
|
128
|
+
for model in self.api_connector.send_or_fail(
|
129
|
+
"GET",
|
130
|
+
f"/api/v1/borg-repositories/{id_}/archives-metadata",
|
131
|
+
data=None,
|
132
|
+
query_parameters={},
|
133
|
+
).json
|
134
|
+
]
|
@@ -0,0 +1,99 @@
|
|
1
|
+
from cyberfusion.CoreApiClient import models
|
2
|
+
from typing import Optional, List
|
3
|
+
|
4
|
+
from cyberfusion.CoreApiClient.interfaces import Resource
|
5
|
+
|
6
|
+
|
7
|
+
class CertificateManagers(Resource):
|
8
|
+
def create_certificate_manager(
|
9
|
+
self,
|
10
|
+
request: models.CertificateManagerCreateRequest,
|
11
|
+
) -> models.CertificateManagerResource:
|
12
|
+
return models.CertificateManagerResource.construct(
|
13
|
+
**self.api_connector.send_or_fail(
|
14
|
+
"POST",
|
15
|
+
"/api/v1/certificate-managers",
|
16
|
+
data=request.dict(),
|
17
|
+
query_parameters={},
|
18
|
+
).json
|
19
|
+
)
|
20
|
+
|
21
|
+
def list_certificate_managers(
|
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.CertificateManagerResource]:
|
29
|
+
return [
|
30
|
+
models.CertificateManagerResource.construct(**model)
|
31
|
+
for model in self.api_connector.send_or_fail(
|
32
|
+
"GET",
|
33
|
+
"/api/v1/certificate-managers",
|
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_certificate_manager(
|
45
|
+
self,
|
46
|
+
*,
|
47
|
+
id_: int,
|
48
|
+
) -> models.CertificateManagerResource:
|
49
|
+
return models.CertificateManagerResource.construct(
|
50
|
+
**self.api_connector.send_or_fail(
|
51
|
+
"GET",
|
52
|
+
f"/api/v1/certificate-managers/{id_}",
|
53
|
+
data=None,
|
54
|
+
query_parameters={},
|
55
|
+
).json
|
56
|
+
)
|
57
|
+
|
58
|
+
def update_certificate_manager(
|
59
|
+
self,
|
60
|
+
request: models.CertificateManagerUpdateRequest,
|
61
|
+
*,
|
62
|
+
id_: int,
|
63
|
+
) -> models.CertificateManagerResource:
|
64
|
+
return models.CertificateManagerResource.construct(
|
65
|
+
**self.api_connector.send_or_fail(
|
66
|
+
"PATCH",
|
67
|
+
f"/api/v1/certificate-managers/{id_}",
|
68
|
+
data=request.dict(exclude_unset=True),
|
69
|
+
query_parameters={},
|
70
|
+
).json
|
71
|
+
)
|
72
|
+
|
73
|
+
def delete_certificate_manager(
|
74
|
+
self,
|
75
|
+
*,
|
76
|
+
id_: int,
|
77
|
+
) -> models.DetailMessage:
|
78
|
+
return models.DetailMessage.construct(
|
79
|
+
**self.api_connector.send_or_fail(
|
80
|
+
"DELETE",
|
81
|
+
f"/api/v1/certificate-managers/{id_}",
|
82
|
+
data=None,
|
83
|
+
query_parameters={},
|
84
|
+
).json
|
85
|
+
)
|
86
|
+
|
87
|
+
def request_certificate(
|
88
|
+
self,
|
89
|
+
*,
|
90
|
+
id_: int,
|
91
|
+
) -> models.TaskCollectionResource:
|
92
|
+
return models.TaskCollectionResource.construct(
|
93
|
+
**self.api_connector.send_or_fail(
|
94
|
+
"POST",
|
95
|
+
f"/api/v1/certificate-managers/{id_}/request",
|
96
|
+
data=None,
|
97
|
+
query_parameters={},
|
98
|
+
).json
|
99
|
+
)
|
@@ -0,0 +1,63 @@
|
|
1
|
+
from cyberfusion.CoreApiClient import models
|
2
|
+
from typing import Optional, List
|
3
|
+
from cyberfusion.CoreApiClient.interfaces import Resource
|
4
|
+
|
5
|
+
|
6
|
+
class Certificates(Resource):
|
7
|
+
def create_certificate(
|
8
|
+
self,
|
9
|
+
request: models.CertificateCreateRequest,
|
10
|
+
) -> models.CertificateResource:
|
11
|
+
return models.CertificateResource.construct(
|
12
|
+
**self.api_connector.send_or_fail(
|
13
|
+
"POST",
|
14
|
+
"/api/v1/certificates",
|
15
|
+
data=request.dict(),
|
16
|
+
query_parameters={},
|
17
|
+
).json
|
18
|
+
)
|
19
|
+
|
20
|
+
def list_certificates(
|
21
|
+
self,
|
22
|
+
*,
|
23
|
+
skip: Optional[int] = None,
|
24
|
+
limit: Optional[int] = None,
|
25
|
+
filter_: Optional[List[str]] = None,
|
26
|
+
sort: Optional[List[str]] = None,
|
27
|
+
) -> list[models.CertificateResource]:
|
28
|
+
return [
|
29
|
+
models.CertificateResource.construct(**model)
|
30
|
+
for model in self.api_connector.send_or_fail(
|
31
|
+
"GET",
|
32
|
+
"/api/v1/certificates",
|
33
|
+
data=None,
|
34
|
+
query_parameters={
|
35
|
+
"skip": skip,
|
36
|
+
"limit": limit,
|
37
|
+
"filter": filter_,
|
38
|
+
"sort": sort,
|
39
|
+
},
|
40
|
+
).json
|
41
|
+
]
|
42
|
+
|
43
|
+
def read_certificate(
|
44
|
+
self,
|
45
|
+
*,
|
46
|
+
id_: int,
|
47
|
+
) -> models.CertificateResource:
|
48
|
+
return models.CertificateResource.construct(
|
49
|
+
**self.api_connector.send_or_fail(
|
50
|
+
"GET", f"/api/v1/certificates/{id_}", data=None, query_parameters={}
|
51
|
+
).json
|
52
|
+
)
|
53
|
+
|
54
|
+
def delete_certificate(
|
55
|
+
self,
|
56
|
+
*,
|
57
|
+
id_: int,
|
58
|
+
) -> models.DetailMessage:
|
59
|
+
return models.DetailMessage.construct(
|
60
|
+
**self.api_connector.send_or_fail(
|
61
|
+
"DELETE", f"/api/v1/certificates/{id_}", data=None, query_parameters={}
|
62
|
+
).json
|
63
|
+
)
|