@hostafrica/ha-sdk-typescript 1.0.12 → 1.0.14

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 (124) hide show
  1. package/.github/workflows/codeql.yml +3 -3
  2. package/.github/workflows/release.yml +3 -3
  3. package/.github/workflows/semgrep.yml +1 -1
  4. package/dist/apis/SnapshotsApi.d.ts +63 -3
  5. package/dist/apis/SnapshotsApi.js +190 -2
  6. package/dist/apis/VPSManagementApi.d.ts +2 -2
  7. package/dist/apis/VPSManagementApi.js +2 -2
  8. package/dist/esm/apis/SnapshotsApi.d.ts +63 -3
  9. package/dist/esm/apis/SnapshotsApi.js +191 -3
  10. package/dist/esm/apis/VPSManagementApi.d.ts +2 -2
  11. package/dist/esm/apis/VPSManagementApi.js +2 -2
  12. package/dist/esm/models/CreateSnapshotJobRequestContent.d.ts +76 -0
  13. package/dist/esm/models/CreateSnapshotJobRequestContent.js +63 -0
  14. package/dist/esm/models/CreateSnapshotJobResponseContent.d.ts +40 -0
  15. package/dist/esm/models/CreateSnapshotJobResponseContent.js +49 -0
  16. package/dist/esm/models/CreateSnapshotRequestContent.d.ts +7 -1
  17. package/dist/esm/models/CreateSnapshotRequestContent.js +6 -2
  18. package/dist/esm/models/DeleteSnapshotJobRequestContent.d.ts +38 -0
  19. package/dist/esm/models/DeleteSnapshotJobRequestContent.js +47 -0
  20. package/dist/esm/models/DeleteSnapshotJobResponseContent.d.ts +40 -0
  21. package/dist/esm/models/DeleteSnapshotJobResponseContent.js +49 -0
  22. package/dist/esm/models/ListSnapshotJobsRequestContent.d.ts +32 -0
  23. package/dist/esm/models/ListSnapshotJobsRequestContent.js +43 -0
  24. package/dist/esm/models/ListSnapshotJobsResponseContent.d.ts +40 -0
  25. package/dist/esm/models/ListSnapshotJobsResponseContent.js +49 -0
  26. package/dist/esm/models/SnapshotJob.d.ts +88 -0
  27. package/dist/esm/models/SnapshotJob.js +67 -0
  28. package/dist/esm/models/SnapshotJobDeleteResponseData.d.ts +39 -0
  29. package/dist/esm/models/SnapshotJobDeleteResponseData.js +48 -0
  30. package/dist/esm/models/SnapshotJobLimits.d.ts +44 -0
  31. package/dist/esm/models/SnapshotJobLimits.js +51 -0
  32. package/dist/esm/models/SnapshotJobListResponseData.d.ts +52 -0
  33. package/dist/esm/models/SnapshotJobListResponseData.js +55 -0
  34. package/dist/esm/models/SnapshotJobMutationResponseData.d.ts +46 -0
  35. package/dist/esm/models/SnapshotJobMutationResponseData.js +53 -0
  36. package/dist/esm/models/SnapshotJobPeriod.d.ts +25 -0
  37. package/dist/esm/models/SnapshotJobPeriod.js +43 -0
  38. package/dist/esm/models/SnapshotJobUpdateResponseData.d.ts +39 -0
  39. package/dist/esm/models/SnapshotJobUpdateResponseData.js +48 -0
  40. package/dist/esm/models/UpdateSnapshotJobRequestContent.d.ts +82 -0
  41. package/dist/esm/models/UpdateSnapshotJobRequestContent.js +63 -0
  42. package/dist/esm/models/UpdateSnapshotJobResponseContent.d.ts +40 -0
  43. package/dist/esm/models/UpdateSnapshotJobResponseContent.js +49 -0
  44. package/dist/esm/models/index.d.ts +15 -0
  45. package/dist/esm/models/index.js +15 -0
  46. package/dist/esm/retryablePaths.js +2 -1
  47. package/dist/esm/runtime.js +1 -3
  48. package/dist/models/CreateSnapshotJobRequestContent.d.ts +76 -0
  49. package/dist/models/CreateSnapshotJobRequestContent.js +70 -0
  50. package/dist/models/CreateSnapshotJobResponseContent.d.ts +40 -0
  51. package/dist/models/CreateSnapshotJobResponseContent.js +56 -0
  52. package/dist/models/CreateSnapshotRequestContent.d.ts +7 -1
  53. package/dist/models/CreateSnapshotRequestContent.js +6 -2
  54. package/dist/models/DeleteSnapshotJobRequestContent.d.ts +38 -0
  55. package/dist/models/DeleteSnapshotJobRequestContent.js +54 -0
  56. package/dist/models/DeleteSnapshotJobResponseContent.d.ts +40 -0
  57. package/dist/models/DeleteSnapshotJobResponseContent.js +56 -0
  58. package/dist/models/ListSnapshotJobsRequestContent.d.ts +32 -0
  59. package/dist/models/ListSnapshotJobsRequestContent.js +50 -0
  60. package/dist/models/ListSnapshotJobsResponseContent.d.ts +40 -0
  61. package/dist/models/ListSnapshotJobsResponseContent.js +56 -0
  62. package/dist/models/SnapshotJob.d.ts +88 -0
  63. package/dist/models/SnapshotJob.js +74 -0
  64. package/dist/models/SnapshotJobDeleteResponseData.d.ts +39 -0
  65. package/dist/models/SnapshotJobDeleteResponseData.js +55 -0
  66. package/dist/models/SnapshotJobLimits.d.ts +44 -0
  67. package/dist/models/SnapshotJobLimits.js +58 -0
  68. package/dist/models/SnapshotJobListResponseData.d.ts +52 -0
  69. package/dist/models/SnapshotJobListResponseData.js +62 -0
  70. package/dist/models/SnapshotJobMutationResponseData.d.ts +46 -0
  71. package/dist/models/SnapshotJobMutationResponseData.js +60 -0
  72. package/dist/models/SnapshotJobPeriod.d.ts +25 -0
  73. package/dist/models/SnapshotJobPeriod.js +51 -0
  74. package/dist/models/SnapshotJobUpdateResponseData.d.ts +39 -0
  75. package/dist/models/SnapshotJobUpdateResponseData.js +55 -0
  76. package/dist/models/UpdateSnapshotJobRequestContent.d.ts +82 -0
  77. package/dist/models/UpdateSnapshotJobRequestContent.js +70 -0
  78. package/dist/models/UpdateSnapshotJobResponseContent.d.ts +40 -0
  79. package/dist/models/UpdateSnapshotJobResponseContent.js +56 -0
  80. package/dist/models/index.d.ts +15 -0
  81. package/dist/models/index.js +15 -0
  82. package/dist/retryablePaths.js +2 -1
  83. package/dist/runtime.js +1 -3
  84. package/dist.zip +0 -0
  85. package/docs/CreateSnapshotJobRequestContent.md +48 -0
  86. package/docs/CreateSnapshotJobResponseContent.md +36 -0
  87. package/docs/CreateSnapshotRequestContent.md +4 -2
  88. package/docs/DeleteSnapshotJobRequestContent.md +36 -0
  89. package/docs/DeleteSnapshotJobResponseContent.md +36 -0
  90. package/docs/ListSnapshotJobsRequestContent.md +34 -0
  91. package/docs/ListSnapshotJobsResponseContent.md +36 -0
  92. package/docs/SnapshotJob.md +53 -0
  93. package/docs/SnapshotJobDeleteResponseData.md +37 -0
  94. package/docs/SnapshotJobLimits.md +39 -0
  95. package/docs/SnapshotJobListResponseData.md +41 -0
  96. package/docs/SnapshotJobMutationResponseData.md +39 -0
  97. package/docs/SnapshotJobPeriod.md +33 -0
  98. package/docs/SnapshotJobUpdateResponseData.md +37 -0
  99. package/docs/SnapshotsApi.md +321 -1
  100. package/docs/UpdateSnapshotJobRequestContent.md +50 -0
  101. package/docs/UpdateSnapshotJobResponseContent.md +36 -0
  102. package/docs/VPSManagementApi.md +1 -1
  103. package/package.json +1 -1
  104. package/src/apis/SnapshotsApi.ts +262 -2
  105. package/src/apis/VPSManagementApi.ts +2 -2
  106. package/src/models/CreateSnapshotJobRequestContent.ts +141 -0
  107. package/src/models/CreateSnapshotJobResponseContent.ts +92 -0
  108. package/src/models/CreateSnapshotRequestContent.ts +12 -3
  109. package/src/models/DeleteSnapshotJobRequestContent.ts +75 -0
  110. package/src/models/DeleteSnapshotJobResponseContent.ts +92 -0
  111. package/src/models/ListSnapshotJobsRequestContent.ts +66 -0
  112. package/src/models/ListSnapshotJobsResponseContent.ts +92 -0
  113. package/src/models/SnapshotJob.ts +157 -0
  114. package/src/models/SnapshotJobDeleteResponseData.ts +83 -0
  115. package/src/models/SnapshotJobLimits.ts +84 -0
  116. package/src/models/SnapshotJobListResponseData.ts +107 -0
  117. package/src/models/SnapshotJobMutationResponseData.ts +99 -0
  118. package/src/models/SnapshotJobPeriod.ts +53 -0
  119. package/src/models/SnapshotJobUpdateResponseData.ts +83 -0
  120. package/src/models/UpdateSnapshotJobRequestContent.ts +148 -0
  121. package/src/models/UpdateSnapshotJobResponseContent.ts +92 -0
  122. package/src/models/index.ts +15 -0
  123. package/src/retryablePaths.ts +2 -1
  124. package/src/runtime.ts +5 -3
@@ -0,0 +1,107 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 2026-01-01
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { SnapshotJob } from './SnapshotJob.js';
17
+ import {
18
+ SnapshotJobFromJSON,
19
+ SnapshotJobFromJSONTyped,
20
+ SnapshotJobToJSON,
21
+ SnapshotJobToJSONTyped,
22
+ } from './SnapshotJob.js';
23
+ import type { SnapshotJobLimits } from './SnapshotJobLimits.js';
24
+ import {
25
+ SnapshotJobLimitsFromJSON,
26
+ SnapshotJobLimitsFromJSONTyped,
27
+ SnapshotJobLimitsToJSON,
28
+ SnapshotJobLimitsToJSONTyped,
29
+ } from './SnapshotJobLimits.js';
30
+
31
+ /**
32
+ * Response data for snapshot job list operation
33
+ * @export
34
+ * @interface SnapshotJobListResponseData
35
+ */
36
+ export interface SnapshotJobListResponseData {
37
+ /**
38
+ * Status message indicating the result
39
+ * @type {string}
40
+ * @memberof SnapshotJobListResponseData
41
+ */
42
+ message: string;
43
+ /**
44
+ * List of snapshot jobs
45
+ * @type {Array<SnapshotJob>}
46
+ * @memberof SnapshotJobListResponseData
47
+ */
48
+ jobs: Array<SnapshotJob>;
49
+ /**
50
+ *
51
+ * @type {SnapshotJobLimits}
52
+ * @memberof SnapshotJobListResponseData
53
+ */
54
+ limits: SnapshotJobLimits;
55
+ /**
56
+ * Allowed schedule periods for snapshot jobs
57
+ * @type {Array<string>}
58
+ * @memberof SnapshotJobListResponseData
59
+ */
60
+ allowedPeriods?: Array<string>;
61
+ }
62
+
63
+ /**
64
+ * Check if a given object implements the SnapshotJobListResponseData interface.
65
+ */
66
+ export function instanceOfSnapshotJobListResponseData(value: object): value is SnapshotJobListResponseData {
67
+ if (!('message' in value) || value['message'] === undefined) return false;
68
+ if (!('jobs' in value) || value['jobs'] === undefined) return false;
69
+ if (!('limits' in value) || value['limits'] === undefined) return false;
70
+ return true;
71
+ }
72
+
73
+ export function SnapshotJobListResponseDataFromJSON(json: any): SnapshotJobListResponseData {
74
+ return SnapshotJobListResponseDataFromJSONTyped(json, false);
75
+ }
76
+
77
+ export function SnapshotJobListResponseDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): SnapshotJobListResponseData {
78
+ if (json == null) {
79
+ return json;
80
+ }
81
+ return {
82
+
83
+ 'message': json['message'],
84
+ 'jobs': ((json['jobs'] as Array<any>).map(SnapshotJobFromJSON)),
85
+ 'limits': SnapshotJobLimitsFromJSON(json['limits']),
86
+ 'allowedPeriods': json['allowed_periods'] == null ? undefined : json['allowed_periods'],
87
+ };
88
+ }
89
+
90
+ export function SnapshotJobListResponseDataToJSON(json: any): SnapshotJobListResponseData {
91
+ return SnapshotJobListResponseDataToJSONTyped(json, false);
92
+ }
93
+
94
+ export function SnapshotJobListResponseDataToJSONTyped(value?: SnapshotJobListResponseData | null, ignoreDiscriminator: boolean = false): any {
95
+ if (value == null) {
96
+ return value;
97
+ }
98
+
99
+ return {
100
+
101
+ 'message': value['message'],
102
+ 'jobs': ((value['jobs'] as Array<any>).map(SnapshotJobToJSON)),
103
+ 'limits': SnapshotJobLimitsToJSON(value['limits']),
104
+ 'allowed_periods': value['allowedPeriods'],
105
+ };
106
+ }
107
+
@@ -0,0 +1,99 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 2026-01-01
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { SnapshotJob } from './SnapshotJob.js';
17
+ import {
18
+ SnapshotJobFromJSON,
19
+ SnapshotJobFromJSONTyped,
20
+ SnapshotJobToJSON,
21
+ SnapshotJobToJSONTyped,
22
+ } from './SnapshotJob.js';
23
+ import type { SnapshotJobLimits } from './SnapshotJobLimits.js';
24
+ import {
25
+ SnapshotJobLimitsFromJSON,
26
+ SnapshotJobLimitsFromJSONTyped,
27
+ SnapshotJobLimitsToJSON,
28
+ SnapshotJobLimitsToJSONTyped,
29
+ } from './SnapshotJobLimits.js';
30
+
31
+ /**
32
+ * Response data for snapshot job create operation
33
+ * @export
34
+ * @interface SnapshotJobMutationResponseData
35
+ */
36
+ export interface SnapshotJobMutationResponseData {
37
+ /**
38
+ * Status message indicating the result
39
+ * @type {string}
40
+ * @memberof SnapshotJobMutationResponseData
41
+ */
42
+ message: string;
43
+ /**
44
+ *
45
+ * @type {SnapshotJob}
46
+ * @memberof SnapshotJobMutationResponseData
47
+ */
48
+ job: SnapshotJob;
49
+ /**
50
+ *
51
+ * @type {SnapshotJobLimits}
52
+ * @memberof SnapshotJobMutationResponseData
53
+ */
54
+ limits: SnapshotJobLimits;
55
+ }
56
+
57
+ /**
58
+ * Check if a given object implements the SnapshotJobMutationResponseData interface.
59
+ */
60
+ export function instanceOfSnapshotJobMutationResponseData(value: object): value is SnapshotJobMutationResponseData {
61
+ if (!('message' in value) || value['message'] === undefined) return false;
62
+ if (!('job' in value) || value['job'] === undefined) return false;
63
+ if (!('limits' in value) || value['limits'] === undefined) return false;
64
+ return true;
65
+ }
66
+
67
+ export function SnapshotJobMutationResponseDataFromJSON(json: any): SnapshotJobMutationResponseData {
68
+ return SnapshotJobMutationResponseDataFromJSONTyped(json, false);
69
+ }
70
+
71
+ export function SnapshotJobMutationResponseDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): SnapshotJobMutationResponseData {
72
+ if (json == null) {
73
+ return json;
74
+ }
75
+ return {
76
+
77
+ 'message': json['message'],
78
+ 'job': SnapshotJobFromJSON(json['job']),
79
+ 'limits': SnapshotJobLimitsFromJSON(json['limits']),
80
+ };
81
+ }
82
+
83
+ export function SnapshotJobMutationResponseDataToJSON(json: any): SnapshotJobMutationResponseData {
84
+ return SnapshotJobMutationResponseDataToJSONTyped(json, false);
85
+ }
86
+
87
+ export function SnapshotJobMutationResponseDataToJSONTyped(value?: SnapshotJobMutationResponseData | null, ignoreDiscriminator: boolean = false): any {
88
+ if (value == null) {
89
+ return value;
90
+ }
91
+
92
+ return {
93
+
94
+ 'message': value['message'],
95
+ 'job': SnapshotJobToJSON(value['job']),
96
+ 'limits': SnapshotJobLimitsToJSON(value['limits']),
97
+ };
98
+ }
99
+
@@ -0,0 +1,53 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 2026-01-01
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ /**
17
+ * Schedule period for snapshot jobs
18
+ * @export
19
+ */
20
+ export const SnapshotJobPeriod = {
21
+ Hourly: 'hourly',
22
+ Daily: 'daily'
23
+ } as const;
24
+ export type SnapshotJobPeriod = typeof SnapshotJobPeriod[keyof typeof SnapshotJobPeriod];
25
+
26
+
27
+ export function instanceOfSnapshotJobPeriod(value: any): boolean {
28
+ for (const key in SnapshotJobPeriod) {
29
+ if (Object.prototype.hasOwnProperty.call(SnapshotJobPeriod, key)) {
30
+ if (SnapshotJobPeriod[key as keyof typeof SnapshotJobPeriod] === value) {
31
+ return true;
32
+ }
33
+ }
34
+ }
35
+ return false;
36
+ }
37
+
38
+ export function SnapshotJobPeriodFromJSON(json: any): SnapshotJobPeriod {
39
+ return SnapshotJobPeriodFromJSONTyped(json, false);
40
+ }
41
+
42
+ export function SnapshotJobPeriodFromJSONTyped(json: any, ignoreDiscriminator: boolean): SnapshotJobPeriod {
43
+ return json as SnapshotJobPeriod;
44
+ }
45
+
46
+ export function SnapshotJobPeriodToJSON(value?: SnapshotJobPeriod | null): any {
47
+ return value as any;
48
+ }
49
+
50
+ export function SnapshotJobPeriodToJSONTyped(value: any, ignoreDiscriminator: boolean): SnapshotJobPeriod {
51
+ return value as SnapshotJobPeriod;
52
+ }
53
+
@@ -0,0 +1,83 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 2026-01-01
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { SnapshotJob } from './SnapshotJob.js';
17
+ import {
18
+ SnapshotJobFromJSON,
19
+ SnapshotJobFromJSONTyped,
20
+ SnapshotJobToJSON,
21
+ SnapshotJobToJSONTyped,
22
+ } from './SnapshotJob.js';
23
+
24
+ /**
25
+ * Response data for snapshot job update operation
26
+ * @export
27
+ * @interface SnapshotJobUpdateResponseData
28
+ */
29
+ export interface SnapshotJobUpdateResponseData {
30
+ /**
31
+ * Status message indicating the result
32
+ * @type {string}
33
+ * @memberof SnapshotJobUpdateResponseData
34
+ */
35
+ message: string;
36
+ /**
37
+ *
38
+ * @type {SnapshotJob}
39
+ * @memberof SnapshotJobUpdateResponseData
40
+ */
41
+ job: SnapshotJob;
42
+ }
43
+
44
+ /**
45
+ * Check if a given object implements the SnapshotJobUpdateResponseData interface.
46
+ */
47
+ export function instanceOfSnapshotJobUpdateResponseData(value: object): value is SnapshotJobUpdateResponseData {
48
+ if (!('message' in value) || value['message'] === undefined) return false;
49
+ if (!('job' in value) || value['job'] === undefined) return false;
50
+ return true;
51
+ }
52
+
53
+ export function SnapshotJobUpdateResponseDataFromJSON(json: any): SnapshotJobUpdateResponseData {
54
+ return SnapshotJobUpdateResponseDataFromJSONTyped(json, false);
55
+ }
56
+
57
+ export function SnapshotJobUpdateResponseDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): SnapshotJobUpdateResponseData {
58
+ if (json == null) {
59
+ return json;
60
+ }
61
+ return {
62
+
63
+ 'message': json['message'],
64
+ 'job': SnapshotJobFromJSON(json['job']),
65
+ };
66
+ }
67
+
68
+ export function SnapshotJobUpdateResponseDataToJSON(json: any): SnapshotJobUpdateResponseData {
69
+ return SnapshotJobUpdateResponseDataToJSONTyped(json, false);
70
+ }
71
+
72
+ export function SnapshotJobUpdateResponseDataToJSONTyped(value?: SnapshotJobUpdateResponseData | null, ignoreDiscriminator: boolean = false): any {
73
+ if (value == null) {
74
+ return value;
75
+ }
76
+
77
+ return {
78
+
79
+ 'message': value['message'],
80
+ 'job': SnapshotJobToJSON(value['job']),
81
+ };
82
+ }
83
+
@@ -0,0 +1,148 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 2026-01-01
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { DayOfWeek } from './DayOfWeek.js';
17
+ import {
18
+ DayOfWeekFromJSON,
19
+ DayOfWeekFromJSONTyped,
20
+ DayOfWeekToJSON,
21
+ DayOfWeekToJSONTyped,
22
+ } from './DayOfWeek.js';
23
+ import type { SnapshotJobPeriod } from './SnapshotJobPeriod.js';
24
+ import {
25
+ SnapshotJobPeriodFromJSON,
26
+ SnapshotJobPeriodFromJSONTyped,
27
+ SnapshotJobPeriodToJSON,
28
+ SnapshotJobPeriodToJSONTyped,
29
+ } from './SnapshotJobPeriod.js';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface UpdateSnapshotJobRequestContent
35
+ */
36
+ export interface UpdateSnapshotJobRequestContent {
37
+ /**
38
+ * Service ID - must be sent as a string
39
+ * @type {string}
40
+ * @memberof UpdateSnapshotJobRequestContent
41
+ */
42
+ serviceId: string;
43
+ /**
44
+ * Snapshot job ID to update
45
+ * @type {string}
46
+ * @memberof UpdateSnapshotJobRequestContent
47
+ */
48
+ jobId: string;
49
+ /**
50
+ * New name for the snapshot job
51
+ * @type {string}
52
+ * @memberof UpdateSnapshotJobRequestContent
53
+ */
54
+ name?: string;
55
+ /**
56
+ * New description for the snapshot job
57
+ * @type {string}
58
+ * @memberof UpdateSnapshotJobRequestContent
59
+ */
60
+ description?: string;
61
+ /**
62
+ * Whether to include VM state in the snapshot
63
+ * @type {boolean}
64
+ * @memberof UpdateSnapshotJobRequestContent
65
+ */
66
+ vmstate?: boolean;
67
+ /**
68
+ *
69
+ * @type {SnapshotJobPeriod}
70
+ * @memberof UpdateSnapshotJobRequestContent
71
+ */
72
+ period?: SnapshotJobPeriod;
73
+ /**
74
+ * For hourly jobs: run every N hours (e.g. 6 = every 6 hours)
75
+ * @type {number}
76
+ * @memberof UpdateSnapshotJobRequestContent
77
+ */
78
+ runEvery?: number;
79
+ /**
80
+ * For daily jobs: days of week when the job should run
81
+ * @type {Array<DayOfWeek>}
82
+ * @memberof UpdateSnapshotJobRequestContent
83
+ */
84
+ days?: Array<DayOfWeek>;
85
+ /**
86
+ * For daily jobs: start time in HH:MM format (e.g. '02:30')
87
+ * @type {string}
88
+ * @memberof UpdateSnapshotJobRequestContent
89
+ */
90
+ startTime?: string;
91
+ }
92
+
93
+
94
+
95
+ /**
96
+ * Check if a given object implements the UpdateSnapshotJobRequestContent interface.
97
+ */
98
+ export function instanceOfUpdateSnapshotJobRequestContent(value: object): value is UpdateSnapshotJobRequestContent {
99
+ if (!('serviceId' in value) || value['serviceId'] === undefined) return false;
100
+ if (!('jobId' in value) || value['jobId'] === undefined) return false;
101
+ return true;
102
+ }
103
+
104
+ export function UpdateSnapshotJobRequestContentFromJSON(json: any): UpdateSnapshotJobRequestContent {
105
+ return UpdateSnapshotJobRequestContentFromJSONTyped(json, false);
106
+ }
107
+
108
+ export function UpdateSnapshotJobRequestContentFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateSnapshotJobRequestContent {
109
+ if (json == null) {
110
+ return json;
111
+ }
112
+ return {
113
+
114
+ 'serviceId': json['service_id'],
115
+ 'jobId': json['job_id'],
116
+ 'name': json['name'] == null ? undefined : json['name'],
117
+ 'description': json['description'] == null ? undefined : json['description'],
118
+ 'vmstate': json['vmstate'] == null ? undefined : json['vmstate'],
119
+ 'period': json['period'] == null ? undefined : SnapshotJobPeriodFromJSON(json['period']),
120
+ 'runEvery': json['run_every'] == null ? undefined : json['run_every'],
121
+ 'days': json['days'] == null ? undefined : ((json['days'] as Array<any>).map(DayOfWeekFromJSON)),
122
+ 'startTime': json['start_time'] == null ? undefined : json['start_time'],
123
+ };
124
+ }
125
+
126
+ export function UpdateSnapshotJobRequestContentToJSON(json: any): UpdateSnapshotJobRequestContent {
127
+ return UpdateSnapshotJobRequestContentToJSONTyped(json, false);
128
+ }
129
+
130
+ export function UpdateSnapshotJobRequestContentToJSONTyped(value?: UpdateSnapshotJobRequestContent | null, ignoreDiscriminator: boolean = false): any {
131
+ if (value == null) {
132
+ return value;
133
+ }
134
+
135
+ return {
136
+
137
+ 'service_id': value['serviceId'],
138
+ 'job_id': value['jobId'],
139
+ 'name': value['name'],
140
+ 'description': value['description'],
141
+ 'vmstate': value['vmstate'],
142
+ 'period': SnapshotJobPeriodToJSON(value['period']),
143
+ 'run_every': value['runEvery'],
144
+ 'days': value['days'] == null ? undefined : ((value['days'] as Array<any>).map(DayOfWeekToJSON)),
145
+ 'start_time': value['startTime'],
146
+ };
147
+ }
148
+
@@ -0,0 +1,92 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 2026-01-01
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { SnapshotJobUpdateResponseData } from './SnapshotJobUpdateResponseData.js';
17
+ import {
18
+ SnapshotJobUpdateResponseDataFromJSON,
19
+ SnapshotJobUpdateResponseDataFromJSONTyped,
20
+ SnapshotJobUpdateResponseDataToJSON,
21
+ SnapshotJobUpdateResponseDataToJSONTyped,
22
+ } from './SnapshotJobUpdateResponseData.js';
23
+ import type { OperationStatus } from './OperationStatus.js';
24
+ import {
25
+ OperationStatusFromJSON,
26
+ OperationStatusFromJSONTyped,
27
+ OperationStatusToJSON,
28
+ OperationStatusToJSONTyped,
29
+ } from './OperationStatus.js';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface UpdateSnapshotJobResponseContent
35
+ */
36
+ export interface UpdateSnapshotJobResponseContent {
37
+ /**
38
+ *
39
+ * @type {OperationStatus}
40
+ * @memberof UpdateSnapshotJobResponseContent
41
+ */
42
+ status: OperationStatus;
43
+ /**
44
+ *
45
+ * @type {SnapshotJobUpdateResponseData}
46
+ * @memberof UpdateSnapshotJobResponseContent
47
+ */
48
+ data: SnapshotJobUpdateResponseData;
49
+ }
50
+
51
+
52
+
53
+ /**
54
+ * Check if a given object implements the UpdateSnapshotJobResponseContent interface.
55
+ */
56
+ export function instanceOfUpdateSnapshotJobResponseContent(value: object): value is UpdateSnapshotJobResponseContent {
57
+ if (!('status' in value) || value['status'] === undefined) return false;
58
+ if (!('data' in value) || value['data'] === undefined) return false;
59
+ return true;
60
+ }
61
+
62
+ export function UpdateSnapshotJobResponseContentFromJSON(json: any): UpdateSnapshotJobResponseContent {
63
+ return UpdateSnapshotJobResponseContentFromJSONTyped(json, false);
64
+ }
65
+
66
+ export function UpdateSnapshotJobResponseContentFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateSnapshotJobResponseContent {
67
+ if (json == null) {
68
+ return json;
69
+ }
70
+ return {
71
+
72
+ 'status': OperationStatusFromJSON(json['status']),
73
+ 'data': SnapshotJobUpdateResponseDataFromJSON(json['data']),
74
+ };
75
+ }
76
+
77
+ export function UpdateSnapshotJobResponseContentToJSON(json: any): UpdateSnapshotJobResponseContent {
78
+ return UpdateSnapshotJobResponseContentToJSONTyped(json, false);
79
+ }
80
+
81
+ export function UpdateSnapshotJobResponseContentToJSONTyped(value?: UpdateSnapshotJobResponseContent | null, ignoreDiscriminator: boolean = false): any {
82
+ if (value == null) {
83
+ return value;
84
+ }
85
+
86
+ return {
87
+
88
+ 'status': OperationStatusToJSON(value['status']),
89
+ 'data': SnapshotJobUpdateResponseDataToJSON(value['data']),
90
+ };
91
+ }
92
+
@@ -41,6 +41,8 @@ export * from './CreatePowerTaskResponseContent.js';
41
41
  export * from './CreateRdnsRecordRequestContent.js';
42
42
  export * from './CreateRdnsRecordResponseContent.js';
43
43
  export * from './CreateRdnsRecordResponseData.js';
44
+ export * from './CreateSnapshotJobRequestContent.js';
45
+ export * from './CreateSnapshotJobResponseContent.js';
44
46
  export * from './CreateSnapshotRequestContent.js';
45
47
  export * from './CreateSnapshotResponseContent.js';
46
48
  export * from './DayOfWeek.js';
@@ -56,6 +58,8 @@ export * from './DeletePowerTaskRequestContent.js';
56
58
  export * from './DeletePowerTaskResponseContent.js';
57
59
  export * from './DeleteRdnsRecordRequestContent.js';
58
60
  export * from './DeleteRdnsRecordResponseContent.js';
61
+ export * from './DeleteSnapshotJobRequestContent.js';
62
+ export * from './DeleteSnapshotJobResponseContent.js';
59
63
  export * from './DeleteSnapshotRequestContent.js';
60
64
  export * from './DeleteSnapshotResponseContent.js';
61
65
  export * from './EditBackupScheduleRequestContent.js';
@@ -98,6 +102,8 @@ export * from './ListRdnsResponseData.js';
98
102
  export * from './ListReinstallOsRequestContent.js';
99
103
  export * from './ListReinstallOsResponseContent.js';
100
104
  export * from './ListReinstallOsResponseData.js';
105
+ export * from './ListSnapshotJobsRequestContent.js';
106
+ export * from './ListSnapshotJobsResponseContent.js';
101
107
  export * from './ListSnapshotsRequestContent.js';
102
108
  export * from './ListSnapshotsResponseContent.js';
103
109
  export * from './ListVpsServicesData.js';
@@ -146,6 +152,13 @@ export * from './ShutdownVpsRequestContent.js';
146
152
  export * from './ShutdownVpsResponseContent.js';
147
153
  export * from './SnapshotCreateResponseData.js';
148
154
  export * from './SnapshotItem.js';
155
+ export * from './SnapshotJob.js';
156
+ export * from './SnapshotJobDeleteResponseData.js';
157
+ export * from './SnapshotJobLimits.js';
158
+ export * from './SnapshotJobListResponseData.js';
159
+ export * from './SnapshotJobMutationResponseData.js';
160
+ export * from './SnapshotJobPeriod.js';
161
+ export * from './SnapshotJobUpdateResponseData.js';
149
162
  export * from './StartVpsRequestContent.js';
150
163
  export * from './StartVpsResponseContent.js';
151
164
  export * from './StopVpsRequestContent.js';
@@ -161,6 +174,8 @@ export * from './UpdateNotificationRequestContent.js';
161
174
  export * from './UpdateNotificationResponseContent.js';
162
175
  export * from './UpdatePowerTaskRequestContent.js';
163
176
  export * from './UpdatePowerTaskResponseContent.js';
177
+ export * from './UpdateSnapshotJobRequestContent.js';
178
+ export * from './UpdateSnapshotJobResponseContent.js';
164
179
  export * from './UpdateSnapshotRequestContent.js';
165
180
  export * from './UpdateSnapshotResponseContent.js';
166
181
  export * from './UpdateVpsConfigRequestContent.js';
@@ -11,9 +11,10 @@ export const RETRYABLE_PATHS = new Set<string>([
11
11
  "/vps/novnc-console",
12
12
  "/vps/list-backups",
13
13
  "/vps/list-backup-schedules",
14
+ "/vps/list-snapshot-jobs",
14
15
  "/vps/list-snapshots",
15
16
  "/vps/list-firewall-rules",
16
- "/vps/change-password",
17
+ "/vps/list-power-tasks",
17
18
  "/vps/list-notifications",
18
19
  "/vps/list-isos",
19
20
  "/vps/list-reinstall-images",
package/src/runtime.ts CHANGED
@@ -1,5 +1,3 @@
1
- /* tslint:disable */
2
- /* eslint-disable */
3
1
  /**
4
2
  * HostAfricaApi
5
3
  * HostAfrica API
@@ -149,7 +147,11 @@ export class BaseAPI {
149
147
  url += '?' + this.configuration.queryParamsStringify(context.query);
150
148
  }
151
149
 
152
- const headers = Object.assign({}, this.configuration.headers, context.headers);
150
+ const headers = Object.assign(
151
+ {'User-Agent': 'ha-sdk-typescript/1.0.0'},
152
+ this.configuration.headers,
153
+ context.headers,
154
+ );
153
155
  Object.keys(headers).forEach(key => headers[key] === undefined ? delete headers[key] : {});
154
156
 
155
157
  const initOverrideFn =