hostinger-api-mcp 1.5.1 → 1.5.3

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.
package/README.md CHANGED
@@ -49,7 +49,8 @@ pnpm update -g hostinger-api-mcp
49
49
 
50
50
  This package installs the following MCP server commands:
51
51
 
52
- - `hostinger-api-mcp` — unified server with every tool (201 total)
52
+ - `hostinger-api-mcp` — unified server with every tool (212 total)
53
+ - `hostinger-agency-hosting-mcp` — 11 tools for agency-hosting
53
54
  - `hostinger-billing-mcp` — 7 tools for billing
54
55
  - `hostinger-dns-mcp` — 8 tools for dns
55
56
  - `hostinger-domains-mcp` — 18 tools for domains
@@ -200,6 +201,130 @@ console.log("Tool result:", result);
200
201
 
201
202
  This MCP server provides the following tools:
202
203
 
204
+ ### `hostinger-agency-hosting-mcp`
205
+
206
+ #### agency-hosting_listAvailableDatacentersForAnAgencyPlanOrderV1
207
+
208
+ Lists the datacenters available for provisioning a new website on the given Agency Plan
209
+ hosting order.
210
+
211
+ Each datacenter includes a `pinger_url` you can ping from the client to measure round-trip
212
+ latency; comparing the results across datacenters lets you pick the nearest one (lowest
213
+ ping) before choosing its `code` as the `datacenter_code` when creating a website setup.
214
+
215
+ - **Method**: `GET`
216
+ - **Path**: `/api/agency-hosting/v1/orders/{order_id}/datacenters`
217
+
218
+ #### agency-hosting_changeAgencyPlanWebsiteDomainV1
219
+
220
+ Changes the primary domain for an Agency Plan website.
221
+
222
+ Provide the current domain in the path and the new domain in the request body.
223
+ Set domain to null to revert to the temporary domain.
224
+
225
+ - **Method**: `PUT`
226
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}/domains/{from_domain}`
227
+
228
+ #### agency-hosting_linkDomainToAgencyPlanWebsiteV1
229
+
230
+ Links a domain to the specified Agency Plan website so it can serve traffic for that domain.
231
+
232
+ - **Method**: `POST`
233
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}/domains`
234
+
235
+ #### agency-hosting_listAgencyPlanDomainsV1
236
+
237
+ Returns a paginated list of domains associated with Agency Plan websites accessible to the authenticated client.
238
+
239
+ Use the website_uuids filter to narrow results to specific websites.
240
+
241
+ - **Method**: `GET`
242
+ - **Path**: `/api/agency-hosting/v1/domains`
243
+
244
+ #### agency-hosting_unlinkDomainFromAgencyPlanWebsiteV1
245
+
246
+ Unlinks a domain from the specified Agency Plan website.
247
+
248
+ The website stops serving traffic on this domain immediately.
249
+
250
+ Website files and database are preserved, and any other linked domains remain accessible.
251
+
252
+ If this is the only domain on the website, unlinking leaves the website without an accessible domain.
253
+
254
+ - **Method**: `DELETE`
255
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}`
256
+
257
+ #### agency-hosting_provisionANewAgencyPlanWebsiteV1
258
+
259
+ Provisions a new website on one of your Agency Plan hosting orders.
260
+
261
+ Choose the datacenter, stack (`flavor`), and PHP version for the site. Optionally attach
262
+ your own `domain` — omit it, set it to `null`, or leave it unavailable and a free
263
+ `*.hostingersite.com` subdomain is generated instead — and/or install WordPress by
264
+ supplying the `wordpress` details (admin account, site title, and language).
265
+
266
+ Common setups:
267
+ - **Plain PHP site**: `flavor` set to `php-fpm`, with `settings.php.version`; omit
268
+ `wordpress` and `type`.
269
+ - **WordPress site**: `flavor` set to the desired WordPress version (e.g. `wp-7.0`), plus
270
+ the `wordpress` block (admin account, title, language).
271
+ - **Static/Node.js frontend app**: `flavor` set to `php-fpm` and `type` set to
272
+ `node-static`.
273
+
274
+ Provisioning runs in the background, so the response returns immediately with a setup UUID
275
+ that identifies the job. The new website becomes reachable once provisioning finishes.
276
+
277
+ - **Method**: `POST`
278
+ - **Path**: `/api/agency-hosting/v1/orders/{order_id}/websites/setups`
279
+
280
+ #### agency-hosting_getAgencyPlanWebsiteSetupStatusV1
281
+
282
+ Returns the current status of an Agency Plan website setup started via the setups
283
+ endpoint.
284
+
285
+ Poll this endpoint using the `setup_uuid` returned from the provisioning request until
286
+ `status` becomes `completed`, at which point `website_uid` identifies the new website.
287
+
288
+ - **Method**: `GET`
289
+ - **Path**: `/api/agency-hosting/v1/orders/{order_id}/websites/setups/{setup_uuid}`
290
+
291
+ #### agency-hosting_buildAgencyPlanWebsiteNodeJSAssetsV1
292
+
293
+ Builds and deploys a Node.js application for an Agency Plan website from an already-uploaded archive.
294
+
295
+ Upload the archive to file browser first, then provide its relative path from document root in this request.
296
+ Website contents are overwritten by the build result, which is deployed to public_html.
297
+
298
+ - **Method**: `POST`
299
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}/build-assets`
300
+
301
+ #### agency-hosting_getAgencyPlanWebsiteDetailsV1
302
+
303
+ Retrieves detailed information about a specific Agency Plan website, including configuration,
304
+ status, metadata, hosting plan details, and resource quotas.
305
+
306
+ - **Method**: `GET`
307
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}`
308
+
309
+ #### agency-hosting_deleteAgencyPlanWebsiteV1
310
+
311
+ Deletes an Agency Plan website and schedules cleanup of its resources.
312
+
313
+ This action is irreversible. Website files, databases, and linked domains are removed.
314
+
315
+ - **Method**: `DELETE`
316
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}`
317
+
318
+ #### agency-hosting_listRunningAgencyPlanWebsiteProcessesV1
319
+
320
+ Lists active and recently completed asynchronous processes for an Agency Plan website.
321
+
322
+ Each process has a unique ID (for tracking), a type, and a status (running, completed, failed).
323
+ Poll this endpoint after initiating async operations (SSL setup, backups, cloning) to track progress.
324
+
325
+ - **Method**: `GET`
326
+ - **Path**: `/api/agency-hosting/v1/websites/{website_uid}/processes`
327
+
203
328
  ### `hostinger-billing-mcp`
204
329
 
205
330
  #### billing_getCatalogItemListV1
@@ -1038,7 +1163,7 @@ Log content may contain ANSI escape sequences (color codes).
1038
1163
  - **Method**: `GET`
1039
1164
  - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/{uuid}/logs`
1040
1165
 
1041
- #### hosting_restartNode.jsApplicationV1
1166
+ #### hosting_restartNode_jsApplicationV1
1042
1167
 
1043
1168
  Restarts the Node.js server process for the website. Does not rebuild or redeploy the
1044
1169
  application. Use it to apply environment or configuration changes, or to recover a hung
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.5.1",
3
+ "version": "1.5.3",
4
4
  "description": "Hostinger API — manage domains, DNS, hosting, VPS, billing and more from Gemini CLI.",
5
5
  "mcpServers": {
6
6
  "hostinger": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.5.1",
3
+ "version": "1.5.3",
4
4
  "mcpName": "io.github.hostinger/hostinger-api-mcp",
5
5
  "description": "MCP server for Hostinger API",
6
6
  "repository": {
@@ -19,6 +19,7 @@
19
19
  "main": "./src/servers/all.js",
20
20
  "bin": {
21
21
  "hostinger-api-mcp": "./src/servers/all.js",
22
+ "hostinger-agency-hosting-mcp": "./src/servers/agency-hosting.js",
22
23
  "hostinger-billing-mcp": "./src/servers/billing.js",
23
24
  "hostinger-dns-mcp": "./src/servers/dns.js",
24
25
  "hostinger-domains-mcp": "./src/servers/domains.js",
@@ -44,7 +45,7 @@
44
45
  "tus-js-client": "^4.1.0"
45
46
  },
46
47
  "devDependencies": {
47
- "@types/node": "^24.0.0",
48
+ "@types/node": "^26.1.1",
48
49
  "@types/express": "^5.0.0",
49
50
  "@types/cors": "^2.8.17",
50
51
  "@types/minimist": "^1.2.5",
package/server.json CHANGED
@@ -6,12 +6,12 @@
6
6
  "url": "https://github.com/hostinger/api-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "1.5.1",
9
+ "version": "1.5.3",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "hostinger-api-mcp",
14
- "version": "1.5.1",
14
+ "version": "1.5.3",
15
15
  "transport": {
16
16
  "type": "stdio"
17
17
  },
@@ -29,7 +29,7 @@ const SECURITY_SCHEMES = {
29
29
 
30
30
  /**
31
31
  * MCP Server for Hostinger API
32
- * Generated from OpenAPI spec version 1.5.1
32
+ * Generated from OpenAPI spec version 1.6.1
33
33
  */
34
34
  class MCPServer {
35
35
  constructor({ name, version, tools }) {
@@ -47,7 +47,7 @@ const SECURITY_SCHEMES: Record<string, SecurityScheme> = {
47
47
 
48
48
  /**
49
49
  * MCP Server for Hostinger API
50
- * Generated from OpenAPI spec version 1.5.1
50
+ * Generated from OpenAPI spec version 1.6.1
51
51
  */
52
52
  class MCPServer {
53
53
  private readonly name: string;
@@ -0,0 +1,434 @@
1
+ // Auto-generated tool list for group: agency-hosting
2
+ export default [
3
+ {
4
+ "name": "agency-hosting_listAvailableDatacentersForAnAgencyPlanOrderV1",
5
+ "description": "Lists the datacenters available for provisioning a new website on the given Agency Plan\nhosting order.\n\nEach datacenter includes a `pinger_url` you can ping from the client to measure round-trip\nlatency; comparing the results across datacenters lets you pick the nearest one (lowest\nping) before choosing its `code` as the `datacenter_code` when creating a website setup.",
6
+ "method": "GET",
7
+ "path": "/api/agency-hosting/v1/orders/{order_id}/datacenters",
8
+ "inputSchema": {
9
+ "type": "object",
10
+ "properties": {
11
+ "order_id": {
12
+ "type": "integer",
13
+ "description": "Agency Plan order ID"
14
+ }
15
+ },
16
+ "required": [
17
+ "order_id"
18
+ ]
19
+ },
20
+ "security": [
21
+ {
22
+ "apiToken": []
23
+ }
24
+ ],
25
+ "group": "agency-hosting"
26
+ },
27
+ {
28
+ "name": "agency-hosting_changeAgencyPlanWebsiteDomainV1",
29
+ "description": "Changes the primary domain for an Agency Plan website.\n\nProvide the current domain in the path and the new domain in the request body.\nSet domain to null to revert to the temporary domain.",
30
+ "method": "PUT",
31
+ "path": "/api/agency-hosting/v1/websites/{website_uid}/domains/{from_domain}",
32
+ "inputSchema": {
33
+ "type": "object",
34
+ "properties": {
35
+ "website_uid": {
36
+ "type": "string",
37
+ "description": "Agency Plan website UID"
38
+ },
39
+ "from_domain": {
40
+ "type": "string",
41
+ "description": "Current domain name to change from"
42
+ },
43
+ "domain": {
44
+ "type": "string",
45
+ "description": "New domain to assign to the website. Set to null to revert to the temporary domain."
46
+ }
47
+ },
48
+ "required": [
49
+ "website_uid",
50
+ "from_domain",
51
+ "domain"
52
+ ]
53
+ },
54
+ "security": [
55
+ {
56
+ "apiToken": []
57
+ }
58
+ ],
59
+ "group": "agency-hosting"
60
+ },
61
+ {
62
+ "name": "agency-hosting_linkDomainToAgencyPlanWebsiteV1",
63
+ "description": "Links a domain to the specified Agency Plan website so it can serve traffic for that domain.",
64
+ "method": "POST",
65
+ "path": "/api/agency-hosting/v1/websites/{website_uid}/domains",
66
+ "inputSchema": {
67
+ "type": "object",
68
+ "properties": {
69
+ "website_uid": {
70
+ "type": "string",
71
+ "description": "Agency Plan website UID"
72
+ },
73
+ "domain": {
74
+ "type": "string",
75
+ "description": "Fully qualified domain name to link to the website"
76
+ }
77
+ },
78
+ "required": [
79
+ "website_uid",
80
+ "domain"
81
+ ]
82
+ },
83
+ "security": [
84
+ {
85
+ "apiToken": []
86
+ }
87
+ ],
88
+ "group": "agency-hosting"
89
+ },
90
+ {
91
+ "name": "agency-hosting_listAgencyPlanDomainsV1",
92
+ "description": "Returns a paginated list of domains associated with Agency Plan websites accessible to the authenticated client.\n\nUse the website_uuids filter to narrow results to specific websites.",
93
+ "method": "GET",
94
+ "path": "/api/agency-hosting/v1/domains",
95
+ "inputSchema": {
96
+ "type": "object",
97
+ "properties": {
98
+ "page": {
99
+ "type": "integer",
100
+ "description": "Page number"
101
+ },
102
+ "per_page": {
103
+ "type": "integer",
104
+ "description": "Number of items per page"
105
+ },
106
+ "website_uuids": {
107
+ "type": "array",
108
+ "description": "Filter by website UIDs",
109
+ "items": {
110
+ "type": "string",
111
+ "description": "website_uuids parameter"
112
+ }
113
+ }
114
+ },
115
+ "required": []
116
+ },
117
+ "security": [
118
+ {
119
+ "apiToken": []
120
+ }
121
+ ],
122
+ "group": "agency-hosting"
123
+ },
124
+ {
125
+ "name": "agency-hosting_unlinkDomainFromAgencyPlanWebsiteV1",
126
+ "description": "Unlinks a domain from the specified Agency Plan website.\n\nThe website stops serving traffic on this domain immediately.\n\nWebsite files and database are preserved, and any other linked domains remain accessible.\n\nIf this is the only domain on the website, unlinking leaves the website without an accessible domain.",
127
+ "method": "DELETE",
128
+ "path": "/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}",
129
+ "inputSchema": {
130
+ "type": "object",
131
+ "properties": {
132
+ "website_uid": {
133
+ "type": "string",
134
+ "description": "Agency Plan website UID"
135
+ },
136
+ "domain": {
137
+ "type": "string",
138
+ "description": "Domain name"
139
+ }
140
+ },
141
+ "required": [
142
+ "website_uid",
143
+ "domain"
144
+ ]
145
+ },
146
+ "security": [
147
+ {
148
+ "apiToken": []
149
+ }
150
+ ],
151
+ "group": "agency-hosting"
152
+ },
153
+ {
154
+ "name": "agency-hosting_provisionANewAgencyPlanWebsiteV1",
155
+ "description": "Provisions a new website on one of your Agency Plan hosting orders.\n\nChoose the datacenter, stack (`flavor`), and PHP version for the site. Optionally attach\nyour own `domain` — omit it, set it to `null`, or leave it unavailable and a free\n`*.hostingersite.com` subdomain is generated instead — and/or install WordPress by\nsupplying the `wordpress` details (admin account, site title, and language).\n\nCommon setups:\n- **Plain PHP site**: `flavor` set to `php-fpm`, with `settings.php.version`; omit\n `wordpress` and `type`.\n- **WordPress site**: `flavor` set to the desired WordPress version (e.g. `wp-7.0`), plus\n the `wordpress` block (admin account, title, language).\n- **Static/Node.js frontend app**: `flavor` set to `php-fpm` and `type` set to\n `node-static`.\n\nProvisioning runs in the background, so the response returns immediately with a setup UUID\nthat identifies the job. The new website becomes reachable once provisioning finishes.",
156
+ "method": "POST",
157
+ "path": "/api/agency-hosting/v1/orders/{order_id}/websites/setups",
158
+ "inputSchema": {
159
+ "type": "object",
160
+ "properties": {
161
+ "order_id": {
162
+ "type": "integer",
163
+ "description": "Agency Plan order ID"
164
+ },
165
+ "datacenter_code": {
166
+ "type": "string",
167
+ "description": "Datacenter code where the website should be provisioned. Available codes depend on live capacity and are not a fixed set."
168
+ },
169
+ "flavor": {
170
+ "type": "string",
171
+ "description": "Setup flavor: a specific WordPress version in the format `wp-<major>.<minor>` or `wp-<major>.<minor>.<patch>` (e.g. `wp-6.8.2`), or `php-fpm` for a plain PHP stack. Generic versions like `wp-latest` are not allowed."
172
+ },
173
+ "settings": {
174
+ "type": "object",
175
+ "description": "Website settings",
176
+ "properties": {
177
+ "php": {
178
+ "type": "object",
179
+ "description": "php parameter",
180
+ "properties": {
181
+ "version": {
182
+ "type": "string",
183
+ "description": "PHP version"
184
+ }
185
+ },
186
+ "required": [
187
+ "version"
188
+ ]
189
+ }
190
+ },
191
+ "required": [
192
+ "php"
193
+ ]
194
+ },
195
+ "domain": {
196
+ "type": "string",
197
+ "description": "Primary domain to attach to the website. Omit or set to null to get a free auto-generated *.hostingersite.com subdomain instead."
198
+ },
199
+ "type": {
200
+ "type": "string",
201
+ "description": "Website type",
202
+ "enum": [
203
+ "horizons",
204
+ "node-static"
205
+ ]
206
+ },
207
+ "wordpress": {
208
+ "type": "object",
209
+ "description": "WordPress installation options",
210
+ "properties": {
211
+ "language": {
212
+ "type": "string",
213
+ "description": "language parameter"
214
+ },
215
+ "title": {
216
+ "type": "string",
217
+ "description": "title parameter"
218
+ },
219
+ "admin": {
220
+ "type": "object",
221
+ "description": "admin parameter",
222
+ "properties": {
223
+ "user": {
224
+ "type": "string",
225
+ "description": "user parameter"
226
+ },
227
+ "password": {
228
+ "type": "string",
229
+ "description": "password parameter"
230
+ },
231
+ "email": {
232
+ "type": "string",
233
+ "description": "email parameter"
234
+ }
235
+ },
236
+ "required": [
237
+ "user",
238
+ "password",
239
+ "email"
240
+ ]
241
+ }
242
+ },
243
+ "required": [
244
+ "language",
245
+ "title",
246
+ "admin"
247
+ ]
248
+ },
249
+ "clone": {
250
+ "type": "object",
251
+ "description": "Clone the new website from an existing website",
252
+ "properties": {
253
+ "website_uid": {
254
+ "type": "string",
255
+ "description": "website_uid parameter"
256
+ }
257
+ },
258
+ "required": [
259
+ "website_uid"
260
+ ]
261
+ },
262
+ "derive_domain": {
263
+ "type": "object",
264
+ "description": "Derive the domain from an existing vhost",
265
+ "properties": {
266
+ "from_vhost": {
267
+ "type": "object",
268
+ "description": "from_vhost parameter",
269
+ "properties": {
270
+ "username": {
271
+ "type": "string",
272
+ "description": "username parameter"
273
+ },
274
+ "vhost": {
275
+ "type": "string",
276
+ "description": "vhost parameter"
277
+ }
278
+ },
279
+ "required": [
280
+ "username",
281
+ "vhost"
282
+ ]
283
+ }
284
+ },
285
+ "required": [
286
+ "from_vhost"
287
+ ]
288
+ }
289
+ },
290
+ "required": [
291
+ "order_id",
292
+ "datacenter_code",
293
+ "flavor",
294
+ "settings"
295
+ ]
296
+ },
297
+ "security": [
298
+ {
299
+ "apiToken": []
300
+ }
301
+ ],
302
+ "group": "agency-hosting"
303
+ },
304
+ {
305
+ "name": "agency-hosting_getAgencyPlanWebsiteSetupStatusV1",
306
+ "description": "Returns the current status of an Agency Plan website setup started via the setups\nendpoint.\n\nPoll this endpoint using the `setup_uuid` returned from the provisioning request until\n`status` becomes `completed`, at which point `website_uid` identifies the new website.",
307
+ "method": "GET",
308
+ "path": "/api/agency-hosting/v1/orders/{order_id}/websites/setups/{setup_uuid}",
309
+ "inputSchema": {
310
+ "type": "object",
311
+ "properties": {
312
+ "order_id": {
313
+ "type": "integer",
314
+ "description": "Agency Plan order ID"
315
+ },
316
+ "setup_uuid": {
317
+ "type": "string",
318
+ "description": "Website setup UUID"
319
+ }
320
+ },
321
+ "required": [
322
+ "order_id",
323
+ "setup_uuid"
324
+ ]
325
+ },
326
+ "security": [
327
+ {
328
+ "apiToken": []
329
+ }
330
+ ],
331
+ "group": "agency-hosting"
332
+ },
333
+ {
334
+ "name": "agency-hosting_buildAgencyPlanWebsiteNodeJSAssetsV1",
335
+ "description": "Builds and deploys a Node.js application for an Agency Plan website from an already-uploaded archive.\n\nUpload the archive to file browser first, then provide its relative path from document root in this request.\nWebsite contents are overwritten by the build result, which is deployed to public_html.",
336
+ "method": "POST",
337
+ "path": "/api/agency-hosting/v1/websites/{website_uid}/build-assets",
338
+ "inputSchema": {
339
+ "type": "object",
340
+ "properties": {
341
+ "website_uid": {
342
+ "type": "string",
343
+ "description": "Agency Plan website UID"
344
+ },
345
+ "archive_path": {
346
+ "type": "string",
347
+ "description": "Directory, relative to the website document root, where the uploaded site archive currently lives. Most commonly this is simply `public_html`."
348
+ }
349
+ },
350
+ "required": [
351
+ "website_uid",
352
+ "archive_path"
353
+ ]
354
+ },
355
+ "security": [
356
+ {
357
+ "apiToken": []
358
+ }
359
+ ],
360
+ "group": "agency-hosting"
361
+ },
362
+ {
363
+ "name": "agency-hosting_getAgencyPlanWebsiteDetailsV1",
364
+ "description": "Retrieves detailed information about a specific Agency Plan website, including configuration,\nstatus, metadata, hosting plan details, and resource quotas.",
365
+ "method": "GET",
366
+ "path": "/api/agency-hosting/v1/websites/{website_uid}",
367
+ "inputSchema": {
368
+ "type": "object",
369
+ "properties": {
370
+ "website_uid": {
371
+ "type": "string",
372
+ "description": "Agency Plan website UID"
373
+ }
374
+ },
375
+ "required": [
376
+ "website_uid"
377
+ ]
378
+ },
379
+ "security": [
380
+ {
381
+ "apiToken": []
382
+ }
383
+ ],
384
+ "group": "agency-hosting"
385
+ },
386
+ {
387
+ "name": "agency-hosting_deleteAgencyPlanWebsiteV1",
388
+ "description": "Deletes an Agency Plan website and schedules cleanup of its resources.\n\nThis action is irreversible. Website files, databases, and linked domains are removed.",
389
+ "method": "DELETE",
390
+ "path": "/api/agency-hosting/v1/websites/{website_uid}",
391
+ "inputSchema": {
392
+ "type": "object",
393
+ "properties": {
394
+ "website_uid": {
395
+ "type": "string",
396
+ "description": "Agency Plan website UID"
397
+ }
398
+ },
399
+ "required": [
400
+ "website_uid"
401
+ ]
402
+ },
403
+ "security": [
404
+ {
405
+ "apiToken": []
406
+ }
407
+ ],
408
+ "group": "agency-hosting"
409
+ },
410
+ {
411
+ "name": "agency-hosting_listRunningAgencyPlanWebsiteProcessesV1",
412
+ "description": "Lists active and recently completed asynchronous processes for an Agency Plan website.\n\nEach process has a unique ID (for tracking), a type, and a status (running, completed, failed).\nPoll this endpoint after initiating async operations (SSL setup, backups, cloning) to track progress.",
413
+ "method": "GET",
414
+ "path": "/api/agency-hosting/v1/websites/{website_uid}/processes",
415
+ "inputSchema": {
416
+ "type": "object",
417
+ "properties": {
418
+ "website_uid": {
419
+ "type": "string",
420
+ "description": "Agency Plan website UID"
421
+ }
422
+ },
423
+ "required": [
424
+ "website_uid"
425
+ ]
426
+ },
427
+ "security": [
428
+ {
429
+ "apiToken": []
430
+ }
431
+ ],
432
+ "group": "agency-hosting"
433
+ }
434
+ ];