24fire-api 1.0.6 β†’ 1.0.8

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 (3) hide show
  1. package/README.md +67 -1
  2. package/package.json +11 -11
  3. package/src/index.js +106 -4
package/README.md CHANGED
@@ -13,6 +13,7 @@ Die 24fire-api soll die Interaktion mit der 24fire Kunden Api vereinfachen und v
13
13
  - πŸƒ Schnelle interaktion
14
14
  - ➑️ Direkte Anfragen ohne Middelware
15
15
  - ℹ️ Einfache Bedienung
16
+ - πŸ†• Neuste Version
16
17
 
17
18
 
18
19
  ## Optimierungen & Feedback
@@ -110,8 +111,73 @@ Jeder Kunde hat die mΓΆglichkeit fΓΌr seine VM einen API-Key zu bekommen.
110
111
 
111
112
  ```javascript
112
113
  myFireApi.vm().restartVM().then(data => {
113
- console.log('Liste der VMs:', data);
114
+ console.log('Antwort:', data);
114
115
  }).catch(error => {
115
116
  console.error('Fehler:', error);
116
117
  });
117
118
  ```
119
+
120
+ ### Backup
121
+
122
+ #### -> Alle Backups auflisten
123
+
124
+ ```javascript
125
+ myFireApi.backup().listBackups().then(data => {
126
+ console.log('Backup List:', data);
127
+ }).catch(error => {
128
+ console.error('Fehler:', error);
129
+ });
130
+ ```
131
+
132
+ #### -> Ein neues Backup erstellen
133
+
134
+ ```javascript
135
+ myFireApi.backup().createBackup(description).then(data => {
136
+ console.log('Antwort:', data);
137
+ }).catch(error => {
138
+ console.error('Fehler:', error);
139
+ });
140
+ ```
141
+ | Parameter | Type | Description |
142
+ | :-------- | :------- | :-------------------------------- |
143
+ | `description` | `string` | **Optional**. Es kann optional ein Beschreibung hinzugefΓΌgt werden. |
144
+
145
+
146
+ #### -> Ein Backup LΓΆschen
147
+
148
+ ```javascript
149
+ myFireApi.backup().deleteBackup(backupId).then(data => {
150
+ console.log('Antwort: ', data);
151
+ }).catch(error => {
152
+ console.error('Fehler: ', error);
153
+ });
154
+ ```
155
+
156
+ | Parameter | Type | Description |
157
+ | :-------- | :------- | :-------------------------------- |
158
+ | `backupId` | `string` | **BenΓΆtigt**. Die ID vom Backup welches gelΓΆscht werden soll. |
159
+
160
+
161
+ ### Monitoring
162
+
163
+ #### -> Alle Messungen vom Server Abrufen
164
+
165
+ ```javascript
166
+ myFireApi.monitoring().getStats().then(data => {
167
+ console.log('Alle Messungen:', data);
168
+ }).catch(error => {
169
+ console.error('Fehler:', error);
170
+ });
171
+ ```
172
+
173
+ #### -> Alle AusfΓ€lle abrufen
174
+
175
+ ```javascript
176
+ myFireApi.monitoring().retieceOutages().then(data => {
177
+ console.log('Antwort:', data);
178
+ }).catch(error => {
179
+ console.error('Fehler:', error);
180
+ });
181
+ ```
182
+
183
+
package/package.json CHANGED
@@ -1,24 +1,24 @@
1
1
  {
2
2
  "name": "24fire-api",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Nutze die 24fire api in Nodejs, sicher und schnell",
5
5
  "main": "src/index.js",
6
6
  "repository": {
7
- "type": "git",
8
- "url": "https://github.com/FlosTechnikwelt/24fire-api.git"
7
+ "type": "git",
8
+ "url": "git+https://github.com/FlosTechnikwelt/24fire-api.git"
9
9
  },
10
10
  "homepage": "https://github.com/FlosTechnikwelt/24fire-api.git",
11
11
  "keywords": [
12
- "24fire",
13
- "24fireAPI",
14
- "api",
15
- "Hosting",
16
- "wrapper",
17
- "flostechnikwelt"
12
+ "24fire",
13
+ "24fireAPI",
14
+ "api",
15
+ "Hosting",
16
+ "wrapper",
17
+ "flostechnikwelt"
18
18
  ],
19
19
  "author": "FlosTechnikwelt",
20
20
  "license": "Apache-2.0",
21
21
  "dependencies": {
22
- "axios": "^1.6.4"
22
+ "axios": "^1.6.4"
23
23
  }
24
- }
24
+ }
package/src/index.js CHANGED
@@ -4,8 +4,8 @@
4
4
  //β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β• β–ˆβ–ˆβ•‘
5
5
  //β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
6
6
  //β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β•β•šβ•β•β•β•β•β•β•β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β•
7
- //24fireAPI fΓΌr NodeJS
8
- //Stand: 06.01.2024
7
+ //24fire API fΓΌr NodeJS
8
+ //Stand: 26.01.2024
9
9
  //Made by FlosTechnikwlt
10
10
  //Credits: Lars.1309
11
11
 
@@ -27,7 +27,6 @@ class fireAPI {
27
27
  async function getVMconfig() {
28
28
  const response = await axios.get("https://api.24fire.de/kvm/config", {
29
29
  headers: {
30
- //'Authorization': `Bearer ${apiKey}`,
31
30
  'X-FIRE-APIKEY': apiKey,
32
31
  },
33
32
  });
@@ -38,7 +37,6 @@ class fireAPI {
38
37
  async function getVMstatus() {
39
38
  const response = await axios.get("https://api.24fire.de/kvm/status", {
40
39
  headers: {
41
- //'Authorization': `Bearer ${apiKey}`,
42
40
  'X-FIRE-APIKEY': apiKey,
43
41
  },
44
42
  });
@@ -99,6 +97,110 @@ class fireAPI {
99
97
  restartVM,
100
98
  }
101
99
  }
100
+
101
+
102
+ backup() {
103
+ const apiKey = this.apiKey;
104
+
105
+ async function listBackups() {
106
+ const response = await axios.get("https://api.24fire.de/kvm/backup/list", {
107
+ headers: {
108
+ 'X-FIRE-APIKEY': apiKey,
109
+ },
110
+ });
111
+ return response.data;
112
+ }
113
+
114
+
115
+
116
+
117
+
118
+ async function createBackup(description) {
119
+ if(!description) {
120
+ const response = await axios.request({
121
+ method: 'post',
122
+ maxBodyLength: Infinity,
123
+ url: 'https://api.24fire.de/kvm/backup/create',
124
+ headers: {
125
+ 'X-FIRE-APIKEY': apiKey
126
+ }
127
+ })
128
+ return response.data;
129
+ } else {
130
+ const response = await axios.request({
131
+ method: 'post',
132
+ maxBodyLength: Infinity,
133
+ url: 'https://api.24fire.de/kvm/backup/create',
134
+ headers: {
135
+ 'X-FIRE-APIKEY': apiKey,
136
+ 'description': description
137
+ }
138
+ })
139
+ return response.data;
140
+ }
141
+ }
142
+
143
+
144
+
145
+
146
+ async function deleteBackup(backupId) {
147
+ if(!backupId) return fireapiError + 'Error no Backup id specified!';
148
+ const response = await axios.request({
149
+ method: 'delete',
150
+ maxBodyLength: Infinity,
151
+ url: `https://api.24fire.de/kvm/backup/delete?backup_id=${backupId}`,
152
+ headers: {
153
+ 'X-FIRE-APIKEY': apiKey,
154
+ }
155
+ })
156
+ return response.data;
157
+ }
158
+
159
+
160
+ return {
161
+ listBackups,
162
+ createBackup,
163
+ deleteBackup,
164
+ }
165
+ }
166
+
167
+
168
+ monitoring() {
169
+ const apiKey = this.apiKey;
170
+
171
+ async function getStats() {
172
+ const response = await axios.get("https://api.24fire.de/kvm/monitoring/timings", {
173
+ headers: {
174
+ 'X-FIRE-APIKEY': apiKey,
175
+ },
176
+ });
177
+ return response.data;
178
+ }
179
+
180
+
181
+
182
+
183
+
184
+ async function retieceOutages(description) {
185
+ const response = await axios.request({
186
+ method: 'post',
187
+ maxBodyLength: Infinity,
188
+ url: 'https://api.24fire.de/kvm/monitoring/incidences',
189
+ headers: {
190
+ 'X-FIRE-APIKEY': apiKey,
191
+ 'description': description
192
+ }
193
+ })
194
+ return response.data;
195
+
196
+ }
197
+
198
+
199
+ return {
200
+ getStats,
201
+ retieceOutages,
202
+ }
203
+ }
102
204
  }
103
205
 
104
206