hostinger-api-sdk 1.38.0 → 1.40.0

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 (53) hide show
  1. package/README.md +2 -2
  2. package/api.ts +1536 -32
  3. package/base.ts +1 -1
  4. package/common.ts +1 -1
  5. package/configuration.ts +2 -2
  6. package/dist/api.d.ts +1086 -30
  7. package/dist/api.js +902 -44
  8. package/dist/base.d.ts +1 -1
  9. package/dist/base.js +1 -1
  10. package/dist/common.d.ts +1 -1
  11. package/dist/common.js +1 -1
  12. package/dist/configuration.d.ts +1 -1
  13. package/dist/configuration.js +2 -2
  14. package/dist/esm/api.d.ts +1086 -30
  15. package/dist/esm/api.js +892 -34
  16. package/dist/esm/base.d.ts +1 -1
  17. package/dist/esm/base.js +1 -1
  18. package/dist/esm/common.d.ts +1 -1
  19. package/dist/esm/common.js +1 -1
  20. package/dist/esm/configuration.d.ts +1 -1
  21. package/dist/esm/configuration.js +2 -2
  22. package/dist/esm/index.d.ts +1 -1
  23. package/dist/esm/index.js +1 -1
  24. package/dist/index.d.ts +1 -1
  25. package/dist/index.js +1 -1
  26. package/docs/AgencyHostingFilesApi.md +54 -0
  27. package/docs/AgencyHostingListAgencyPlanWebsitesV1200Response.md +22 -0
  28. package/docs/AgencyHostingV1WebsitesBuilderWebsiteDetailsResource.md +28 -0
  29. package/docs/AgencyHostingV1WebsitesH5gWebsiteDetailsResource.md +46 -0
  30. package/docs/AgencyHostingV1WebsitesPlanResource.md +25 -0
  31. package/docs/AgencyHostingV1WebsitesU4sWebsiteDetailsResource.md +36 -0
  32. package/docs/AgencyHostingV1WebsitesWebsiteListItemResource.md +37 -0
  33. package/docs/AgencyHostingV1WebsitesWebsiteListItemResourceDetails.md +59 -0
  34. package/docs/AgencyHostingWebsitesApi.md +69 -0
  35. package/docs/HostingDatabasesApi.md +2 -2
  36. package/docs/HostingFilesApi.md +56 -0
  37. package/docs/HostingNodeJSApi.md +124 -1
  38. package/docs/HostingV1FilesGenerateUploadUrlRequest.md +22 -0
  39. package/docs/HostingV1FilesUploadUrlResource.md +24 -0
  40. package/docs/HostingV1NodeJsBuildSettingsResource.md +34 -0
  41. package/docs/HostingV1NodeJsGetBuildSettingsRequest.md +20 -0
  42. package/docs/HostingV1NodeJsStartBuildRequest.md +36 -0
  43. package/docs/HostingV1NodeJsStartBuildRequestSourceOptions.md +21 -0
  44. package/docs/HostingV1WebsitesDeployArchiveRequest.md +20 -0
  45. package/docs/HostingWebsitesApi.md +69 -4
  46. package/docs/WordPressInstallationsApi.md +64 -2
  47. package/docs/WordPressPluginsApi.md +64 -2
  48. package/docs/WordPressThemesApi.md +62 -0
  49. package/docs/WordPressV1InstallationsImportWordPressRequest.md +22 -0
  50. package/docs/WordPressV1PluginsDeployPluginRequest.md +22 -0
  51. package/docs/WordPressV1ThemesDeployThemeRequest.md +24 -0
  52. package/index.ts +1 -1
  53. package/package.json +1 -1
package/dist/esm/api.js CHANGED
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * Hostinger API
5
5
  *
6
- * API Version: 1.40.0
6
+ * API Version: 1.42.0
7
7
  *
8
8
  * NOTE: This file is auto-generated, DO NOT EDIT THIS FILE MANUALLY!
9
9
  * If you want to contribute or request a new feature, please create an issue or pull request on https://github.com/hostinger/api
@@ -40,6 +40,27 @@ export const AgencyHostingV1SetupsWebsiteSetupStatusResourceStatusEnum = {
40
40
  Running: 'running',
41
41
  Completed: 'completed'
42
42
  };
43
+ export const AgencyHostingV1WebsitesH5gWebsiteDetailsResourceTypeEnum = {
44
+ Wordpress: 'wordpress',
45
+ Builder: 'builder',
46
+ Horizons: 'horizons',
47
+ Nodejs: 'nodejs',
48
+ U4s: 'u4s',
49
+ Other: 'other'
50
+ };
51
+ export const AgencyHostingV1WebsitesH5gWebsiteDetailsResourceStateEnum = {
52
+ Active: 'active',
53
+ Suspended: 'suspended'
54
+ };
55
+ export const AgencyHostingV1WebsitesU4sWebsiteDetailsResourceTypeEnum = {
56
+ U4s: 'u4s',
57
+ Horizons: 'horizons'
58
+ };
59
+ export const AgencyHostingV1WebsitesWebsiteListItemResourcePlatformEnum = {
60
+ H5g: 'h5g',
61
+ Builder: 'builder',
62
+ U4s: 'u4s'
63
+ };
43
64
  export const AgencyHostingV1WebsitesWebsiteProcessResourceStatusEnum = {
44
65
  Running: 'running',
45
66
  Completed: 'completed',
@@ -272,6 +293,32 @@ export const HostingV1NodeJsBuildResourceStateEnum = {
272
293
  Completed: 'completed',
273
294
  Failed: 'failed'
274
295
  };
296
+ export const HostingV1NodeJsBuildSettingsResourceAppTypeEnum = {
297
+ CreateReactApp: 'create-react-app',
298
+ Gatsby: 'gatsby',
299
+ Vite: 'vite',
300
+ Angular: 'angular',
301
+ React: 'react',
302
+ Vue: 'vue',
303
+ Parcel: 'parcel',
304
+ Next: 'next',
305
+ Nuxt: 'nuxt',
306
+ Nest: 'nest',
307
+ Express: 'express',
308
+ Fastify: 'fastify',
309
+ Astro: 'astro',
310
+ Svelte: 'svelte',
311
+ SvelteKit: 'svelte-kit',
312
+ Hono: 'hono',
313
+ ReactRouter: 'react-router',
314
+ Nitro: 'nitro',
315
+ Other: 'other'
316
+ };
317
+ export const HostingV1NodeJsBuildSettingsResourcePackageManagerEnum = {
318
+ Npm: 'npm',
319
+ Yarn: 'yarn',
320
+ Pnpm: 'pnpm'
321
+ };
275
322
  export const HostingV1NodeJsCreateFromArchiveRequestNodeVersionEnum = {
276
323
  NUMBER_18: 18,
277
324
  NUMBER_20: 20,
@@ -304,6 +351,41 @@ export const HostingV1NodeJsCreateFromArchiveRequestPackageManagerEnum = {
304
351
  Yarn: 'yarn',
305
352
  Pnpm: 'pnpm'
306
353
  };
354
+ export const HostingV1NodeJsStartBuildRequestNodeVersionEnum = {
355
+ NUMBER_18: 18,
356
+ NUMBER_20: 20,
357
+ NUMBER_22: 22,
358
+ NUMBER_24: 24
359
+ };
360
+ export const HostingV1NodeJsStartBuildRequestAppTypeEnum = {
361
+ CreateReactApp: 'create-react-app',
362
+ Gatsby: 'gatsby',
363
+ Vite: 'vite',
364
+ Angular: 'angular',
365
+ React: 'react',
366
+ Vue: 'vue',
367
+ Parcel: 'parcel',
368
+ Next: 'next',
369
+ Nuxt: 'nuxt',
370
+ Nest: 'nest',
371
+ Express: 'express',
372
+ Fastify: 'fastify',
373
+ Astro: 'astro',
374
+ Svelte: 'svelte',
375
+ SvelteKit: 'svelte-kit',
376
+ Hono: 'hono',
377
+ ReactRouter: 'react-router',
378
+ Nitro: 'nitro',
379
+ Other: 'other'
380
+ };
381
+ export const HostingV1NodeJsStartBuildRequestPackageManagerEnum = {
382
+ Npm: 'npm',
383
+ Yarn: 'yarn',
384
+ Pnpm: 'pnpm'
385
+ };
386
+ export const HostingV1NodeJsStartBuildRequestSourceTypeEnum = {
387
+ Archive: 'archive'
388
+ };
307
389
  export const HostingV1NodeJsVulnerabilityResourceSeverityEnum = {
308
390
  Low: 'low',
309
391
  Moderate: 'moderate',
@@ -2073,6 +2155,38 @@ export class AgencyHostingDomainsApi extends BaseAPI {
2073
2155
  */
2074
2156
  export const AgencyHostingFilesApiAxiosParamCreator = function (configuration) {
2075
2157
  return {
2158
+ /**
2159
+ * Generate a file browser upload URL with authentication credentials for uploading files to an Agency Plan website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s file storage via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside the website\'s file storage, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
2160
+ * @summary Generate upload URL
2161
+ * @param {string} websiteUid Agency Plan website UID
2162
+ * @param {*} [options] Override http request option.
2163
+ * @throws {RequiredError}
2164
+ */
2165
+ generateUploadURLV1: (websiteUid_1, ...args_1) => __awaiter(this, [websiteUid_1, ...args_1], void 0, function* (websiteUid, options = {}) {
2166
+ // verify required parameter 'websiteUid' is not null or undefined
2167
+ assertParamExists('generateUploadURLV1', 'websiteUid', websiteUid);
2168
+ const localVarPath = `/api/agency-hosting/v1/websites/{website_uid}/files/upload-urls`
2169
+ .replace(`{${"website_uid"}}`, encodeURIComponent(String(websiteUid)));
2170
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
2171
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
2172
+ let baseOptions;
2173
+ if (configuration) {
2174
+ baseOptions = configuration.baseOptions;
2175
+ }
2176
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
2177
+ const localVarHeaderParameter = {};
2178
+ const localVarQueryParameter = {};
2179
+ // authentication apiToken required
2180
+ // http bearer authentication required
2181
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
2182
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
2183
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
2184
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
2185
+ return {
2186
+ url: toPathString(localVarUrlObj),
2187
+ options: localVarRequestOptions,
2188
+ };
2189
+ }),
2076
2190
  /**
2077
2191
  * Imports an Agency Plan website from an already-uploaded archive. Upload the archive to the website\'s root directory via file browser first, then provide its filename in this request. Website contents are overwritten by the archive contents. Supported archive types: .zip, .tar, .tar.gz, .tgz.
2078
2192
  * @summary Import website from archive
@@ -2119,6 +2233,21 @@ export const AgencyHostingFilesApiAxiosParamCreator = function (configuration) {
2119
2233
  export const AgencyHostingFilesApiFp = function (configuration) {
2120
2234
  const localVarAxiosParamCreator = AgencyHostingFilesApiAxiosParamCreator(configuration);
2121
2235
  return {
2236
+ /**
2237
+ * Generate a file browser upload URL with authentication credentials for uploading files to an Agency Plan website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s file storage via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside the website\'s file storage, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
2238
+ * @summary Generate upload URL
2239
+ * @param {string} websiteUid Agency Plan website UID
2240
+ * @param {*} [options] Override http request option.
2241
+ * @throws {RequiredError}
2242
+ */
2243
+ generateUploadURLV1(websiteUid, options) {
2244
+ return __awaiter(this, void 0, void 0, function* () {
2245
+ var _a, _b;
2246
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.generateUploadURLV1(websiteUid, options);
2247
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['AgencyHostingFilesApi.generateUploadURLV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
2248
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
2249
+ });
2250
+ },
2122
2251
  /**
2123
2252
  * Imports an Agency Plan website from an already-uploaded archive. Upload the archive to the website\'s root directory via file browser first, then provide its filename in this request. Website contents are overwritten by the archive contents. Supported archive types: .zip, .tar, .tar.gz, .tgz.
2124
2253
  * @summary Import website from archive
@@ -2144,6 +2273,16 @@ export const AgencyHostingFilesApiFp = function (configuration) {
2144
2273
  export const AgencyHostingFilesApiFactory = function (configuration, basePath, axios) {
2145
2274
  const localVarFp = AgencyHostingFilesApiFp(configuration);
2146
2275
  return {
2276
+ /**
2277
+ * Generate a file browser upload URL with authentication credentials for uploading files to an Agency Plan website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s file storage via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside the website\'s file storage, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
2278
+ * @summary Generate upload URL
2279
+ * @param {string} websiteUid Agency Plan website UID
2280
+ * @param {*} [options] Override http request option.
2281
+ * @throws {RequiredError}
2282
+ */
2283
+ generateUploadURLV1(websiteUid, options) {
2284
+ return localVarFp.generateUploadURLV1(websiteUid, options).then((request) => request(axios, basePath));
2285
+ },
2147
2286
  /**
2148
2287
  * Imports an Agency Plan website from an already-uploaded archive. Upload the archive to the website\'s root directory via file browser first, then provide its filename in this request. Website contents are overwritten by the archive contents. Supported archive types: .zip, .tar, .tar.gz, .tgz.
2149
2288
  * @summary Import website from archive
@@ -2164,6 +2303,17 @@ export const AgencyHostingFilesApiFactory = function (configuration, basePath, a
2164
2303
  * @extends {BaseAPI}
2165
2304
  */
2166
2305
  export class AgencyHostingFilesApi extends BaseAPI {
2306
+ /**
2307
+ * Generate a file browser upload URL with authentication credentials for uploading files to an Agency Plan website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s file storage via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside the website\'s file storage, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
2308
+ * @summary Generate upload URL
2309
+ * @param {string} websiteUid Agency Plan website UID
2310
+ * @param {*} [options] Override http request option.
2311
+ * @throws {RequiredError}
2312
+ * @memberof AgencyHostingFilesApi
2313
+ */
2314
+ generateUploadURLV1(websiteUid, options) {
2315
+ return AgencyHostingFilesApiFp(this.configuration).generateUploadURLV1(websiteUid, options).then((request) => request(this.axios, this.basePath));
2316
+ }
2167
2317
  /**
2168
2318
  * Imports an Agency Plan website from an already-uploaded archive. Upload the archive to the website\'s root directory via file browser first, then provide its filename in this request. Website contents are overwritten by the archive contents. Supported archive types: .zip, .tar, .tar.gz, .tgz.
2169
2319
  * @summary Import website from archive
@@ -3315,6 +3465,58 @@ export const AgencyHostingWebsitesApiAxiosParamCreator = function (configuration
3315
3465
  options: localVarRequestOptions,
3316
3466
  };
3317
3467
  }),
3468
+ /**
3469
+ * Retrieve a paginated list of Agency Plan websites (H5G, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. The response shape differs per platform — see the `platform` field on each item. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with `order_ids`, `states`, or `domain` for more targeted results.
3470
+ * @summary List Agency Plan websites
3471
+ * @param {number} [page] Page number
3472
+ * @param {number} [perPage] Number of items per page
3473
+ * @param {Array<number> | null} [orderIds] Filter by order IDs. Accepts a comma-separated list.
3474
+ * @param {Array<ListAgencyPlanWebsitesV1StatesEnum>} [states] Filter by website state. Accepts a comma-separated list.
3475
+ * @param {Array<ListAgencyPlanWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
3476
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
3477
+ * @param {*} [options] Override http request option.
3478
+ * @throws {RequiredError}
3479
+ */
3480
+ listAgencyPlanWebsitesV1: (page_1, perPage_1, orderIds_1, states_1, websiteTypes_1, domain_1, ...args_1) => __awaiter(this, [page_1, perPage_1, orderIds_1, states_1, websiteTypes_1, domain_1, ...args_1], void 0, function* (page, perPage, orderIds, states, websiteTypes, domain, options = {}) {
3481
+ const localVarPath = `/api/agency-hosting/v1/websites`;
3482
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
3483
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
3484
+ let baseOptions;
3485
+ if (configuration) {
3486
+ baseOptions = configuration.baseOptions;
3487
+ }
3488
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
3489
+ const localVarHeaderParameter = {};
3490
+ const localVarQueryParameter = {};
3491
+ // authentication apiToken required
3492
+ // http bearer authentication required
3493
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
3494
+ if (page !== undefined) {
3495
+ localVarQueryParameter['page'] = page;
3496
+ }
3497
+ if (perPage !== undefined) {
3498
+ localVarQueryParameter['per_page'] = perPage;
3499
+ }
3500
+ if (orderIds) {
3501
+ localVarQueryParameter['order_ids'] = orderIds.join(COLLECTION_FORMATS.csv);
3502
+ }
3503
+ if (states) {
3504
+ localVarQueryParameter['states'] = states.join(COLLECTION_FORMATS.csv);
3505
+ }
3506
+ if (websiteTypes) {
3507
+ localVarQueryParameter['website_types'] = websiteTypes.join(COLLECTION_FORMATS.csv);
3508
+ }
3509
+ if (domain !== undefined) {
3510
+ localVarQueryParameter['domain'] = domain;
3511
+ }
3512
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
3513
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
3514
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
3515
+ return {
3516
+ url: toPathString(localVarUrlObj),
3517
+ options: localVarRequestOptions,
3518
+ };
3519
+ }),
3318
3520
  /**
3319
3521
  * Lists active and recently completed asynchronous processes for an Agency Plan website. Each process has a unique ID (for tracking), a type, and a status (running, completed, failed). Poll this endpoint after initiating async operations (SSL setup, backups, cloning) to track progress.
3320
3522
  * @summary List website processes
@@ -3402,6 +3604,26 @@ export const AgencyHostingWebsitesApiFp = function (configuration) {
3402
3604
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
3403
3605
  });
3404
3606
  },
3607
+ /**
3608
+ * Retrieve a paginated list of Agency Plan websites (H5G, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. The response shape differs per platform — see the `platform` field on each item. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with `order_ids`, `states`, or `domain` for more targeted results.
3609
+ * @summary List Agency Plan websites
3610
+ * @param {number} [page] Page number
3611
+ * @param {number} [perPage] Number of items per page
3612
+ * @param {Array<number> | null} [orderIds] Filter by order IDs. Accepts a comma-separated list.
3613
+ * @param {Array<ListAgencyPlanWebsitesV1StatesEnum>} [states] Filter by website state. Accepts a comma-separated list.
3614
+ * @param {Array<ListAgencyPlanWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
3615
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
3616
+ * @param {*} [options] Override http request option.
3617
+ * @throws {RequiredError}
3618
+ */
3619
+ listAgencyPlanWebsitesV1(page, perPage, orderIds, states, websiteTypes, domain, options) {
3620
+ return __awaiter(this, void 0, void 0, function* () {
3621
+ var _a, _b;
3622
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.listAgencyPlanWebsitesV1(page, perPage, orderIds, states, websiteTypes, domain, options);
3623
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['AgencyHostingWebsitesApi.listAgencyPlanWebsitesV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
3624
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
3625
+ });
3626
+ },
3405
3627
  /**
3406
3628
  * Lists active and recently completed asynchronous processes for an Agency Plan website. Each process has a unique ID (for tracking), a type, and a status (running, completed, failed). Poll this endpoint after initiating async operations (SSL setup, backups, cloning) to track progress.
3407
3629
  * @summary List website processes
@@ -3457,6 +3679,21 @@ export const AgencyHostingWebsitesApiFactory = function (configuration, basePath
3457
3679
  getWebsiteDetailsV1(websiteUid, options) {
3458
3680
  return localVarFp.getWebsiteDetailsV1(websiteUid, options).then((request) => request(axios, basePath));
3459
3681
  },
3682
+ /**
3683
+ * Retrieve a paginated list of Agency Plan websites (H5G, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. The response shape differs per platform — see the `platform` field on each item. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with `order_ids`, `states`, or `domain` for more targeted results.
3684
+ * @summary List Agency Plan websites
3685
+ * @param {number} [page] Page number
3686
+ * @param {number} [perPage] Number of items per page
3687
+ * @param {Array<number> | null} [orderIds] Filter by order IDs. Accepts a comma-separated list.
3688
+ * @param {Array<ListAgencyPlanWebsitesV1StatesEnum>} [states] Filter by website state. Accepts a comma-separated list.
3689
+ * @param {Array<ListAgencyPlanWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
3690
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
3691
+ * @param {*} [options] Override http request option.
3692
+ * @throws {RequiredError}
3693
+ */
3694
+ listAgencyPlanWebsitesV1(page, perPage, orderIds, states, websiteTypes, domain, options) {
3695
+ return localVarFp.listAgencyPlanWebsitesV1(page, perPage, orderIds, states, websiteTypes, domain, options).then((request) => request(axios, basePath));
3696
+ },
3460
3697
  /**
3461
3698
  * Lists active and recently completed asynchronous processes for an Agency Plan website. Each process has a unique ID (for tracking), a type, and a status (running, completed, failed). Poll this endpoint after initiating async operations (SSL setup, backups, cloning) to track progress.
3462
3699
  * @summary List website processes
@@ -3510,6 +3747,22 @@ export class AgencyHostingWebsitesApi extends BaseAPI {
3510
3747
  getWebsiteDetailsV1(websiteUid, options) {
3511
3748
  return AgencyHostingWebsitesApiFp(this.configuration).getWebsiteDetailsV1(websiteUid, options).then((request) => request(this.axios, this.basePath));
3512
3749
  }
3750
+ /**
3751
+ * Retrieve a paginated list of Agency Plan websites (H5G, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. The response shape differs per platform — see the `platform` field on each item. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with `order_ids`, `states`, or `domain` for more targeted results.
3752
+ * @summary List Agency Plan websites
3753
+ * @param {number} [page] Page number
3754
+ * @param {number} [perPage] Number of items per page
3755
+ * @param {Array<number> | null} [orderIds] Filter by order IDs. Accepts a comma-separated list.
3756
+ * @param {Array<ListAgencyPlanWebsitesV1StatesEnum>} [states] Filter by website state. Accepts a comma-separated list.
3757
+ * @param {Array<ListAgencyPlanWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
3758
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
3759
+ * @param {*} [options] Override http request option.
3760
+ * @throws {RequiredError}
3761
+ * @memberof AgencyHostingWebsitesApi
3762
+ */
3763
+ listAgencyPlanWebsitesV1(page, perPage, orderIds, states, websiteTypes, domain, options) {
3764
+ return AgencyHostingWebsitesApiFp(this.configuration).listAgencyPlanWebsitesV1(page, perPage, orderIds, states, websiteTypes, domain, options).then((request) => request(this.axios, this.basePath));
3765
+ }
3513
3766
  /**
3514
3767
  * Lists active and recently completed asynchronous processes for an Agency Plan website. Each process has a unique ID (for tracking), a type, and a status (running, completed, failed). Poll this endpoint after initiating async operations (SSL setup, backups, cloning) to track progress.
3515
3768
  * @summary List website processes
@@ -3522,6 +3775,26 @@ export class AgencyHostingWebsitesApi extends BaseAPI {
3522
3775
  return AgencyHostingWebsitesApiFp(this.configuration).listWebsiteProcessesV1(websiteUid, options).then((request) => request(this.axios, this.basePath));
3523
3776
  }
3524
3777
  }
3778
+ /**
3779
+ * @export
3780
+ */
3781
+ export const ListAgencyPlanWebsitesV1StatesEnum = {
3782
+ Active: 'active',
3783
+ Locked: 'locked',
3784
+ Suspended: 'suspended',
3785
+ Deleting: 'deleting',
3786
+ Deleted: 'deleted'
3787
+ };
3788
+ /**
3789
+ * @export
3790
+ */
3791
+ export const ListAgencyPlanWebsitesV1WebsiteTypesEnum = {
3792
+ Wordpress: 'wordpress',
3793
+ Builder: 'builder',
3794
+ Horizons: 'horizons',
3795
+ Nodejs: 'nodejs',
3796
+ Other: 'other'
3797
+ };
3525
3798
  /**
3526
3799
  * AgencyHostingWordPressApi - axios parameter creator
3527
3800
  * @export
@@ -10414,7 +10687,7 @@ export const HostingDatabasesApiAxiosParamCreator = function (configuration) {
10414
10687
  * @param {string} username
10415
10688
  * @param {number} [page] Page number
10416
10689
  * @param {number} [perPage] Number of items per page
10417
- * @param {string | null} [domain] Filter by domain name (exact match)
10690
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
10418
10691
  * @param {boolean | null} [isAssigned] When used with domain, return only databases assigned to that domain.
10419
10692
  * @param {string | null} [search] Search databases by name, user, or creation date.
10420
10693
  * @param {*} [options] Override http request option.
@@ -10646,7 +10919,7 @@ export const HostingDatabasesApiFp = function (configuration) {
10646
10919
  * @param {string} username
10647
10920
  * @param {number} [page] Page number
10648
10921
  * @param {number} [perPage] Number of items per page
10649
- * @param {string | null} [domain] Filter by domain name (exact match)
10922
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
10650
10923
  * @param {boolean | null} [isAssigned] When used with domain, return only databases assigned to that domain.
10651
10924
  * @param {string | null} [search] Search databases by name, user, or creation date.
10652
10925
  * @param {*} [options] Override http request option.
@@ -10776,7 +11049,7 @@ export const HostingDatabasesApiFactory = function (configuration, basePath, axi
10776
11049
  * @param {string} username
10777
11050
  * @param {number} [page] Page number
10778
11051
  * @param {number} [perPage] Number of items per page
10779
- * @param {string | null} [domain] Filter by domain name (exact match)
11052
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
10780
11053
  * @param {boolean | null} [isAssigned] When used with domain, return only databases assigned to that domain.
10781
11054
  * @param {string | null} [search] Search databases by name, user, or creation date.
10782
11055
  * @param {*} [options] Override http request option.
@@ -10897,7 +11170,7 @@ export class HostingDatabasesApi extends BaseAPI {
10897
11170
  * @param {string} username
10898
11171
  * @param {number} [page] Page number
10899
11172
  * @param {number} [perPage] Number of items per page
10900
- * @param {string | null} [domain] Filter by domain name (exact match)
11173
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
10901
11174
  * @param {boolean | null} [isAssigned] When used with domain, return only databases assigned to that domain.
10902
11175
  * @param {string | null} [search] Search databases by name, user, or creation date.
10903
11176
  * @param {*} [options] Override http request option.
@@ -11686,6 +11959,39 @@ export class HostingDomainsApi extends BaseAPI {
11686
11959
  */
11687
11960
  export const HostingFilesApiAxiosParamCreator = function (configuration) {
11688
11961
  return {
11962
+ /**
11963
+ * Generate a file browser upload URL with authentication credentials for uploading files directly to a website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s `public_html` directory via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside `public_html`, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
11964
+ * @summary Generate upload URL
11965
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
11966
+ * @param {*} [options] Override http request option.
11967
+ * @throws {RequiredError}
11968
+ */
11969
+ generateUploadURLV1: (hostingV1FilesGenerateUploadUrlRequest_1, ...args_1) => __awaiter(this, [hostingV1FilesGenerateUploadUrlRequest_1, ...args_1], void 0, function* (hostingV1FilesGenerateUploadUrlRequest, options = {}) {
11970
+ // verify required parameter 'hostingV1FilesGenerateUploadUrlRequest' is not null or undefined
11971
+ assertParamExists('generateUploadURLV1', 'hostingV1FilesGenerateUploadUrlRequest', hostingV1FilesGenerateUploadUrlRequest);
11972
+ const localVarPath = `/api/hosting/v1/files/upload-urls`;
11973
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
11974
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
11975
+ let baseOptions;
11976
+ if (configuration) {
11977
+ baseOptions = configuration.baseOptions;
11978
+ }
11979
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
11980
+ const localVarHeaderParameter = {};
11981
+ const localVarQueryParameter = {};
11982
+ // authentication apiToken required
11983
+ // http bearer authentication required
11984
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
11985
+ localVarHeaderParameter['Content-Type'] = 'application/json';
11986
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
11987
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
11988
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
11989
+ localVarRequestOptions.data = serializeDataIfNeeded(hostingV1FilesGenerateUploadUrlRequest, localVarRequestOptions, configuration);
11990
+ return {
11991
+ url: toPathString(localVarUrlObj),
11992
+ options: localVarRequestOptions,
11993
+ };
11994
+ }),
11689
11995
  /**
11690
11996
  * Get a single file\'s content, relative to a website\'s document root. Read-only; refuses symlinks, oversized files, non-text file types, and files identified as containing secrets (e.g. credential files) — none of these are returned by this endpoint.
11691
11997
  * @summary Get website file content
@@ -11801,6 +12107,21 @@ export const HostingFilesApiAxiosParamCreator = function (configuration) {
11801
12107
  export const HostingFilesApiFp = function (configuration) {
11802
12108
  const localVarAxiosParamCreator = HostingFilesApiAxiosParamCreator(configuration);
11803
12109
  return {
12110
+ /**
12111
+ * Generate a file browser upload URL with authentication credentials for uploading files directly to a website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s `public_html` directory via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside `public_html`, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
12112
+ * @summary Generate upload URL
12113
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
12114
+ * @param {*} [options] Override http request option.
12115
+ * @throws {RequiredError}
12116
+ */
12117
+ generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options) {
12118
+ return __awaiter(this, void 0, void 0, function* () {
12119
+ var _a, _b;
12120
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options);
12121
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['HostingFilesApi.generateUploadURLV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
12122
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
12123
+ });
12124
+ },
11804
12125
  /**
11805
12126
  * Get a single file\'s content, relative to a website\'s document root. Read-only; refuses symlinks, oversized files, non-text file types, and files identified as containing secrets (e.g. credential files) — none of these are returned by this endpoint.
11806
12127
  * @summary Get website file content
@@ -11850,6 +12171,16 @@ export const HostingFilesApiFp = function (configuration) {
11850
12171
  export const HostingFilesApiFactory = function (configuration, basePath, axios) {
11851
12172
  const localVarFp = HostingFilesApiFp(configuration);
11852
12173
  return {
12174
+ /**
12175
+ * Generate a file browser upload URL with authentication credentials for uploading files directly to a website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s `public_html` directory via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside `public_html`, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
12176
+ * @summary Generate upload URL
12177
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
12178
+ * @param {*} [options] Override http request option.
12179
+ * @throws {RequiredError}
12180
+ */
12181
+ generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options) {
12182
+ return localVarFp.generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options).then((request) => request(axios, basePath));
12183
+ },
11853
12184
  /**
11854
12185
  * Get a single file\'s content, relative to a website\'s document root. Read-only; refuses symlinks, oversized files, non-text file types, and files identified as containing secrets (e.g. credential files) — none of these are returned by this endpoint.
11855
12186
  * @summary Get website file content
@@ -11889,6 +12220,17 @@ export const HostingFilesApiFactory = function (configuration, basePath, axios)
11889
12220
  * @extends {BaseAPI}
11890
12221
  */
11891
12222
  export class HostingFilesApi extends BaseAPI {
12223
+ /**
12224
+ * Generate a file browser upload URL with authentication credentials for uploading files directly to a website\'s file storage. Returns `url`, `auth_key` and `rest_auth_key`. Use these to upload a file to the website\'s `public_html` directory via the TUS resumable upload protocol (TUS 1.0.0). Send `X-Auth: {auth_key}` and `X-Auth-Rest: {rest_auth_key}` headers on every request below. 1. Create the upload: `POST` to `{url}/{relative_file_path}?override=true` with headers `upload-length: {file size in bytes}` and `upload-offset: 0`. Expect `201 Created`. 2. Upload the file: send the file bytes to the same location (any TUS 1.0.0 client, or `PATCH` requests with an `upload-offset` header tracking progress) until complete. `relative_file_path` is the destination path inside `public_html`, e.g. `app.zip`. Instead of a TUS client, plain `curl` also works: ``` FILE=app.zip SIZE=$(stat -f%z \"$FILE\") # stat -c%s on Linux curl -i -X POST \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Upload-Length: ${SIZE}\" \\ -H \"Upload-Offset: 0\" # -> 201 Created curl -i -X PATCH \"{url}/${FILE}?override=true\" \\ -H \"X-Auth: {auth_key}\" \\ -H \"X-Auth-Rest: {rest_auth_key}\" \\ -H \"Tus-Resumable: 1.0.0\" \\ -H \"Content-Type: application/offset+octet-stream\" \\ -H \"Upload-Offset: 0\" \\ --data-binary \"@${FILE}\" # -> 204 No Content, Upload-Offset response header equals SIZE when done ```
12225
+ * @summary Generate upload URL
12226
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
12227
+ * @param {*} [options] Override http request option.
12228
+ * @throws {RequiredError}
12229
+ * @memberof HostingFilesApi
12230
+ */
12231
+ generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options) {
12232
+ return HostingFilesApiFp(this.configuration).generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options).then((request) => request(this.axios, this.basePath));
12233
+ }
11892
12234
  /**
11893
12235
  * Get a single file\'s content, relative to a website\'s document root. Read-only; refuses symlinks, oversized files, non-text file types, and files identified as containing secrets (e.g. credential files) — none of these are returned by this endpoint.
11894
12236
  * @summary Get website file content
@@ -11938,7 +12280,7 @@ export const ListWebsiteFilesAndDirectoriesV1FileTypesEnum = {
11938
12280
  export const HostingNodeJSApiAxiosParamCreator = function (configuration) {
11939
12281
  return {
11940
12282
  /**
11941
- * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12283
+ * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
11942
12284
  * @summary Create NodeJS build from archive
11943
12285
  * @param {string} username
11944
12286
  * @param {string} domain Domain name
@@ -12022,6 +12364,48 @@ export const HostingNodeJSApiAxiosParamCreator = function (configuration) {
12022
12364
  options: localVarRequestOptions,
12023
12365
  };
12024
12366
  }),
12367
+ /**
12368
+ * Auto-detect Node.js build settings from a package.json inside an archive already on the server. Use this before calling `Start Node.js Build` to preview what settings will be used, or to let the user review and override values (framework, node version, root directory, output directory, build script) before committing to a build. The archive must already be present on the website\'s file storage. Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To upload an archive and start a build in one step without inspecting settings first, use the `Create Node.js Build from Archive` endpoint instead.
12369
+ * @summary Get Node.js build settings from archive
12370
+ * @param {string} username
12371
+ * @param {string} domain Domain name
12372
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
12373
+ * @param {*} [options] Override http request option.
12374
+ * @throws {RequiredError}
12375
+ */
12376
+ getNodeJsBuildSettingsFromArchiveV1: (username_1, domain_1, archivePath_1, ...args_1) => __awaiter(this, [username_1, domain_1, archivePath_1, ...args_1], void 0, function* (username, domain, archivePath, options = {}) {
12377
+ // verify required parameter 'username' is not null or undefined
12378
+ assertParamExists('getNodeJsBuildSettingsFromArchiveV1', 'username', username);
12379
+ // verify required parameter 'domain' is not null or undefined
12380
+ assertParamExists('getNodeJsBuildSettingsFromArchiveV1', 'domain', domain);
12381
+ // verify required parameter 'archivePath' is not null or undefined
12382
+ assertParamExists('getNodeJsBuildSettingsFromArchiveV1', 'archivePath', archivePath);
12383
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings/from-archive`
12384
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
12385
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
12386
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
12387
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
12388
+ let baseOptions;
12389
+ if (configuration) {
12390
+ baseOptions = configuration.baseOptions;
12391
+ }
12392
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
12393
+ const localVarHeaderParameter = {};
12394
+ const localVarQueryParameter = {};
12395
+ // authentication apiToken required
12396
+ // http bearer authentication required
12397
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
12398
+ if (archivePath !== undefined) {
12399
+ localVarQueryParameter['archive_path'] = archivePath;
12400
+ }
12401
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
12402
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
12403
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
12404
+ return {
12405
+ url: toPathString(localVarUrlObj),
12406
+ options: localVarRequestOptions,
12407
+ };
12408
+ }),
12025
12409
  /**
12026
12410
  * Retrieve a paginated list of Node.js build processes for a specific website. Each build represents a single run of the Node.js build pipeline. Use the `states` query parameter to filter results by build state (pending, running, completed, failed). Use the `uuid` from a build to poll its output via the `Get Node.js Build Logs` endpoint.
12027
12411
  * @summary List NodeJS builds
@@ -12187,6 +12571,47 @@ export const HostingNodeJSApiAxiosParamCreator = function (configuration) {
12187
12571
  options: localVarRequestOptions,
12188
12572
  };
12189
12573
  }),
12574
+ /**
12575
+ * Start a Node.js build process using files already present on the website\'s file storage. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. The `source_type` must be `archive` and `source_options.archive_path` must point to an existing archive file on the server (relative to the website document root). Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To auto-detect build settings from an archive before starting, first call the `Get Node.js Build Settings from Archive` endpoint. To upload an archive and start a build in one step, use the `Create Node.js Build from Archive` endpoint instead. The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12576
+ * @summary Start Node.js build
12577
+ * @param {string} username
12578
+ * @param {string} domain Domain name
12579
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
12580
+ * @param {*} [options] Override http request option.
12581
+ * @throws {RequiredError}
12582
+ */
12583
+ startNodeJsBuildV1: (username_1, domain_1, hostingV1NodeJsStartBuildRequest_1, ...args_1) => __awaiter(this, [username_1, domain_1, hostingV1NodeJsStartBuildRequest_1, ...args_1], void 0, function* (username, domain, hostingV1NodeJsStartBuildRequest, options = {}) {
12584
+ // verify required parameter 'username' is not null or undefined
12585
+ assertParamExists('startNodeJsBuildV1', 'username', username);
12586
+ // verify required parameter 'domain' is not null or undefined
12587
+ assertParamExists('startNodeJsBuildV1', 'domain', domain);
12588
+ // verify required parameter 'hostingV1NodeJsStartBuildRequest' is not null or undefined
12589
+ assertParamExists('startNodeJsBuildV1', 'hostingV1NodeJsStartBuildRequest', hostingV1NodeJsStartBuildRequest);
12590
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds`
12591
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
12592
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
12593
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
12594
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
12595
+ let baseOptions;
12596
+ if (configuration) {
12597
+ baseOptions = configuration.baseOptions;
12598
+ }
12599
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
12600
+ const localVarHeaderParameter = {};
12601
+ const localVarQueryParameter = {};
12602
+ // authentication apiToken required
12603
+ // http bearer authentication required
12604
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
12605
+ localVarHeaderParameter['Content-Type'] = 'application/json';
12606
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
12607
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
12608
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
12609
+ localVarRequestOptions.data = serializeDataIfNeeded(hostingV1NodeJsStartBuildRequest, localVarRequestOptions, configuration);
12610
+ return {
12611
+ url: toPathString(localVarUrlObj),
12612
+ options: localVarRequestOptions,
12613
+ };
12614
+ }),
12190
12615
  };
12191
12616
  };
12192
12617
  /**
@@ -12197,7 +12622,7 @@ export const HostingNodeJSApiFp = function (configuration) {
12197
12622
  const localVarAxiosParamCreator = HostingNodeJSApiAxiosParamCreator(configuration);
12198
12623
  return {
12199
12624
  /**
12200
- * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12625
+ * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12201
12626
  * @summary Create NodeJS build from archive
12202
12627
  * @param {string} username
12203
12628
  * @param {string} domain Domain name
@@ -12231,6 +12656,23 @@ export const HostingNodeJSApiFp = function (configuration) {
12231
12656
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
12232
12657
  });
12233
12658
  },
12659
+ /**
12660
+ * Auto-detect Node.js build settings from a package.json inside an archive already on the server. Use this before calling `Start Node.js Build` to preview what settings will be used, or to let the user review and override values (framework, node version, root directory, output directory, build script) before committing to a build. The archive must already be present on the website\'s file storage. Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To upload an archive and start a build in one step without inspecting settings first, use the `Create Node.js Build from Archive` endpoint instead.
12661
+ * @summary Get Node.js build settings from archive
12662
+ * @param {string} username
12663
+ * @param {string} domain Domain name
12664
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
12665
+ * @param {*} [options] Override http request option.
12666
+ * @throws {RequiredError}
12667
+ */
12668
+ getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options) {
12669
+ return __awaiter(this, void 0, void 0, function* () {
12670
+ var _a, _b;
12671
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options);
12672
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['HostingNodeJSApi.getNodeJsBuildSettingsFromArchiveV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
12673
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
12674
+ });
12675
+ },
12234
12676
  /**
12235
12677
  * Retrieve a paginated list of Node.js build processes for a specific website. Each build represents a single run of the Node.js build pipeline. Use the `states` query parameter to filter results by build state (pending, running, completed, failed). Use the `uuid` from a build to poll its output via the `Get Node.js Build Logs` endpoint.
12236
12678
  * @summary List NodeJS builds
@@ -12300,6 +12742,23 @@ export const HostingNodeJSApiFp = function (configuration) {
12300
12742
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
12301
12743
  });
12302
12744
  },
12745
+ /**
12746
+ * Start a Node.js build process using files already present on the website\'s file storage. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. The `source_type` must be `archive` and `source_options.archive_path` must point to an existing archive file on the server (relative to the website document root). Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To auto-detect build settings from an archive before starting, first call the `Get Node.js Build Settings from Archive` endpoint. To upload an archive and start a build in one step, use the `Create Node.js Build from Archive` endpoint instead. The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12747
+ * @summary Start Node.js build
12748
+ * @param {string} username
12749
+ * @param {string} domain Domain name
12750
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
12751
+ * @param {*} [options] Override http request option.
12752
+ * @throws {RequiredError}
12753
+ */
12754
+ startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options) {
12755
+ return __awaiter(this, void 0, void 0, function* () {
12756
+ var _a, _b;
12757
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options);
12758
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['HostingNodeJSApi.startNodeJsBuildV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
12759
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
12760
+ });
12761
+ },
12303
12762
  };
12304
12763
  };
12305
12764
  /**
@@ -12310,7 +12769,7 @@ export const HostingNodeJSApiFactory = function (configuration, basePath, axios)
12310
12769
  const localVarFp = HostingNodeJSApiFp(configuration);
12311
12770
  return {
12312
12771
  /**
12313
- * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12772
+ * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12314
12773
  * @summary Create NodeJS build from archive
12315
12774
  * @param {string} username
12316
12775
  * @param {string} domain Domain name
@@ -12334,6 +12793,18 @@ export const HostingNodeJSApiFactory = function (configuration, basePath, axios)
12334
12793
  getNodeJSBuildLogsV1(username, domain, uuid, fromLine, options) {
12335
12794
  return localVarFp.getNodeJSBuildLogsV1(username, domain, uuid, fromLine, options).then((request) => request(axios, basePath));
12336
12795
  },
12796
+ /**
12797
+ * Auto-detect Node.js build settings from a package.json inside an archive already on the server. Use this before calling `Start Node.js Build` to preview what settings will be used, or to let the user review and override values (framework, node version, root directory, output directory, build script) before committing to a build. The archive must already be present on the website\'s file storage. Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To upload an archive and start a build in one step without inspecting settings first, use the `Create Node.js Build from Archive` endpoint instead.
12798
+ * @summary Get Node.js build settings from archive
12799
+ * @param {string} username
12800
+ * @param {string} domain Domain name
12801
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
12802
+ * @param {*} [options] Override http request option.
12803
+ * @throws {RequiredError}
12804
+ */
12805
+ getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options) {
12806
+ return localVarFp.getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options).then((request) => request(axios, basePath));
12807
+ },
12337
12808
  /**
12338
12809
  * Retrieve a paginated list of Node.js build processes for a specific website. Each build represents a single run of the Node.js build pipeline. Use the `states` query parameter to filter results by build state (pending, running, completed, failed). Use the `uuid` from a build to poll its output via the `Get Node.js Build Logs` endpoint.
12339
12810
  * @summary List NodeJS builds
@@ -12380,8 +12851,20 @@ export const HostingNodeJSApiFactory = function (configuration, basePath, axios)
12380
12851
  * @param {*} [options] Override http request option.
12381
12852
  * @throws {RequiredError}
12382
12853
  */
12383
- restartNodeJsApplicationV1(username, domain, options) {
12384
- return localVarFp.restartNodeJsApplicationV1(username, domain, options).then((request) => request(axios, basePath));
12854
+ restartNodeJsApplicationV1(username, domain, options) {
12855
+ return localVarFp.restartNodeJsApplicationV1(username, domain, options).then((request) => request(axios, basePath));
12856
+ },
12857
+ /**
12858
+ * Start a Node.js build process using files already present on the website\'s file storage. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. The `source_type` must be `archive` and `source_options.archive_path` must point to an existing archive file on the server (relative to the website document root). Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To auto-detect build settings from an archive before starting, first call the `Get Node.js Build Settings from Archive` endpoint. To upload an archive and start a build in one step, use the `Create Node.js Build from Archive` endpoint instead. The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12859
+ * @summary Start Node.js build
12860
+ * @param {string} username
12861
+ * @param {string} domain Domain name
12862
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
12863
+ * @param {*} [options] Override http request option.
12864
+ * @throws {RequiredError}
12865
+ */
12866
+ startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options) {
12867
+ return localVarFp.startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options).then((request) => request(axios, basePath));
12385
12868
  },
12386
12869
  };
12387
12870
  };
@@ -12393,7 +12876,7 @@ export const HostingNodeJSApiFactory = function (configuration, basePath, axios)
12393
12876
  */
12394
12877
  export class HostingNodeJSApi extends BaseAPI {
12395
12878
  /**
12396
- * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12879
+ * Upload a project archive, auto-detect build settings, and immediately start a Node.js build. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This is the recommended single-step approach for deploying a Node.js application. The archive is uploaded to the website\'s file storage, build settings are auto-detected from the package.json inside the archive, and the build process starts automatically. Optional override fields take precedence over auto-detected values. Maximum archive size is 50MB. Before archiving, exclude `node_modules/` and any build output directories (e.g. `dist/`, `.next/`, `build/`) — they are not needed because the build process runs the install step automatically, and including them unnecessarily increases the archive size. This also helps keep the archive well under the 50MB limit. Example (zip): ``` zip -r archive.zip . --exclude \"node_modules/_*\" --exclude \"dist/_*\" ``` The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12397
12880
  * @summary Create NodeJS build from archive
12398
12881
  * @param {string} username
12399
12882
  * @param {string} domain Domain name
@@ -12419,6 +12902,19 @@ export class HostingNodeJSApi extends BaseAPI {
12419
12902
  getNodeJSBuildLogsV1(username, domain, uuid, fromLine, options) {
12420
12903
  return HostingNodeJSApiFp(this.configuration).getNodeJSBuildLogsV1(username, domain, uuid, fromLine, options).then((request) => request(this.axios, this.basePath));
12421
12904
  }
12905
+ /**
12906
+ * Auto-detect Node.js build settings from a package.json inside an archive already on the server. Use this before calling `Start Node.js Build` to preview what settings will be used, or to let the user review and override values (framework, node version, root directory, output directory, build script) before committing to a build. The archive must already be present on the website\'s file storage. Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To upload an archive and start a build in one step without inspecting settings first, use the `Create Node.js Build from Archive` endpoint instead.
12907
+ * @summary Get Node.js build settings from archive
12908
+ * @param {string} username
12909
+ * @param {string} domain Domain name
12910
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
12911
+ * @param {*} [options] Override http request option.
12912
+ * @throws {RequiredError}
12913
+ * @memberof HostingNodeJSApi
12914
+ */
12915
+ getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options) {
12916
+ return HostingNodeJSApiFp(this.configuration).getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options).then((request) => request(this.axios, this.basePath));
12917
+ }
12422
12918
  /**
12423
12919
  * Retrieve a paginated list of Node.js build processes for a specific website. Each build represents a single run of the Node.js build pipeline. Use the `states` query parameter to filter results by build state (pending, running, completed, failed). Use the `uuid` from a build to poll its output via the `Get Node.js Build Logs` endpoint.
12424
12920
  * @summary List NodeJS builds
@@ -12472,6 +12968,19 @@ export class HostingNodeJSApi extends BaseAPI {
12472
12968
  restartNodeJsApplicationV1(username, domain, options) {
12473
12969
  return HostingNodeJSApiFp(this.configuration).restartNodeJsApplicationV1(username, domain, options).then((request) => request(this.axios, this.basePath));
12474
12970
  }
12971
+ /**
12972
+ * Start a Node.js build process using files already present on the website\'s file storage. WARNING: on success this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. The `source_type` must be `archive` and `source_options.archive_path` must point to an existing archive file on the server (relative to the website document root). Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To auto-detect build settings from an archive before starting, first call the `Get Node.js Build Settings from Archive` endpoint. To upload an archive and start a build in one step, use the `Create Node.js Build from Archive` endpoint instead. The returned build `uuid` can be used to poll progress and retrieve logs via the `Get Node.js Build Logs` endpoint.
12973
+ * @summary Start Node.js build
12974
+ * @param {string} username
12975
+ * @param {string} domain Domain name
12976
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
12977
+ * @param {*} [options] Override http request option.
12978
+ * @throws {RequiredError}
12979
+ * @memberof HostingNodeJSApi
12980
+ */
12981
+ startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options) {
12982
+ return HostingNodeJSApiFp(this.configuration).startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options).then((request) => request(this.axios, this.basePath));
12983
+ }
12475
12984
  }
12476
12985
  /**
12477
12986
  * @export
@@ -13494,18 +14003,60 @@ export const HostingWebsitesApiAxiosParamCreator = function (configuration) {
13494
14003
  };
13495
14004
  }),
13496
14005
  /**
13497
- * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results.
14006
+ * Deploy a static application from an archive file. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to deploy a static application from an archive file that has been uploaded to the website\'s directory. This only works for static sites (pre-built HTML/CSS/JS with no build step). For Node.js applications, use `Create NodeJS build from archive` instead, or `Start Node.js build` if the archive is already uploaded. For WordPress sites, use `Import WordPress website`.
14007
+ * @summary Deploy static site archive
14008
+ * @param {string} username
14009
+ * @param {string} domain Domain name
14010
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
14011
+ * @param {*} [options] Override http request option.
14012
+ * @throws {RequiredError}
14013
+ */
14014
+ deployStaticSiteArchiveV1: (username_1, domain_1, hostingV1WebsitesDeployArchiveRequest_1, ...args_1) => __awaiter(this, [username_1, domain_1, hostingV1WebsitesDeployArchiveRequest_1, ...args_1], void 0, function* (username, domain, hostingV1WebsitesDeployArchiveRequest, options = {}) {
14015
+ // verify required parameter 'username' is not null or undefined
14016
+ assertParamExists('deployStaticSiteArchiveV1', 'username', username);
14017
+ // verify required parameter 'domain' is not null or undefined
14018
+ assertParamExists('deployStaticSiteArchiveV1', 'domain', domain);
14019
+ // verify required parameter 'hostingV1WebsitesDeployArchiveRequest' is not null or undefined
14020
+ assertParamExists('deployStaticSiteArchiveV1', 'hostingV1WebsitesDeployArchiveRequest', hostingV1WebsitesDeployArchiveRequest);
14021
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/deploy`
14022
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
14023
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
14024
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
14025
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
14026
+ let baseOptions;
14027
+ if (configuration) {
14028
+ baseOptions = configuration.baseOptions;
14029
+ }
14030
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
14031
+ const localVarHeaderParameter = {};
14032
+ const localVarQueryParameter = {};
14033
+ // authentication apiToken required
14034
+ // http bearer authentication required
14035
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
14036
+ localVarHeaderParameter['Content-Type'] = 'application/json';
14037
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
14038
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
14039
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
14040
+ localVarRequestOptions.data = serializeDataIfNeeded(hostingV1WebsitesDeployArchiveRequest, localVarRequestOptions, configuration);
14041
+ return {
14042
+ url: toPathString(localVarUrlObj),
14043
+ options: localVarRequestOptions,
14044
+ };
14045
+ }),
14046
+ /**
14047
+ * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with the other available query parameters to filter by username, order ID, enabled status, or domain name for more targeted results.
13498
14048
  * @summary List websites
13499
14049
  * @param {number} [page] Page number
13500
14050
  * @param {number} [perPage] Number of items per page
13501
14051
  * @param {string | null} [username] Filter by specific username
13502
14052
  * @param {number | null} [orderId] Order ID
13503
14053
  * @param {boolean | null} [isEnabled] Filter by enabled status
13504
- * @param {string | null} [domain] Filter by domain name (exact match)
14054
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
14055
+ * @param {Array<ListWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
13505
14056
  * @param {*} [options] Override http request option.
13506
14057
  * @throws {RequiredError}
13507
14058
  */
13508
- listWebsitesV1: (page_1, perPage_1, username_1, orderId_1, isEnabled_1, domain_1, ...args_1) => __awaiter(this, [page_1, perPage_1, username_1, orderId_1, isEnabled_1, domain_1, ...args_1], void 0, function* (page, perPage, username, orderId, isEnabled, domain, options = {}) {
14059
+ listWebsitesV1: (page_1, perPage_1, username_1, orderId_1, isEnabled_1, domain_1, websiteTypes_1, ...args_1) => __awaiter(this, [page_1, perPage_1, username_1, orderId_1, isEnabled_1, domain_1, websiteTypes_1, ...args_1], void 0, function* (page, perPage, username, orderId, isEnabled, domain, websiteTypes, options = {}) {
13509
14060
  const localVarPath = `/api/hosting/v1/websites`;
13510
14061
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
13511
14062
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -13537,6 +14088,9 @@ export const HostingWebsitesApiAxiosParamCreator = function (configuration) {
13537
14088
  if (domain !== undefined) {
13538
14089
  localVarQueryParameter['domain'] = domain;
13539
14090
  }
14091
+ if (websiteTypes) {
14092
+ localVarQueryParameter['website_types'] = websiteTypes.join(COLLECTION_FORMATS.csv);
14093
+ }
13540
14094
  setSearchParams(localVarUrlObj, localVarQueryParameter);
13541
14095
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
13542
14096
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -13585,21 +14139,39 @@ export const HostingWebsitesApiFp = function (configuration) {
13585
14139
  });
13586
14140
  },
13587
14141
  /**
13588
- * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results.
14142
+ * Deploy a static application from an archive file. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to deploy a static application from an archive file that has been uploaded to the website\'s directory. This only works for static sites (pre-built HTML/CSS/JS with no build step). For Node.js applications, use `Create NodeJS build from archive` instead, or `Start Node.js build` if the archive is already uploaded. For WordPress sites, use `Import WordPress website`.
14143
+ * @summary Deploy static site archive
14144
+ * @param {string} username
14145
+ * @param {string} domain Domain name
14146
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
14147
+ * @param {*} [options] Override http request option.
14148
+ * @throws {RequiredError}
14149
+ */
14150
+ deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options) {
14151
+ return __awaiter(this, void 0, void 0, function* () {
14152
+ var _a, _b;
14153
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options);
14154
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['HostingWebsitesApi.deployStaticSiteArchiveV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
14155
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
14156
+ });
14157
+ },
14158
+ /**
14159
+ * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with the other available query parameters to filter by username, order ID, enabled status, or domain name for more targeted results.
13589
14160
  * @summary List websites
13590
14161
  * @param {number} [page] Page number
13591
14162
  * @param {number} [perPage] Number of items per page
13592
14163
  * @param {string | null} [username] Filter by specific username
13593
14164
  * @param {number | null} [orderId] Order ID
13594
14165
  * @param {boolean | null} [isEnabled] Filter by enabled status
13595
- * @param {string | null} [domain] Filter by domain name (exact match)
14166
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
14167
+ * @param {Array<ListWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
13596
14168
  * @param {*} [options] Override http request option.
13597
14169
  * @throws {RequiredError}
13598
14170
  */
13599
- listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, options) {
14171
+ listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, websiteTypes, options) {
13600
14172
  return __awaiter(this, void 0, void 0, function* () {
13601
14173
  var _a, _b;
13602
- const localVarAxiosArgs = yield localVarAxiosParamCreator.listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, options);
14174
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, websiteTypes, options);
13603
14175
  const localVarOperationServerBasePath = (_b = (_a = operationServerMap['HostingWebsitesApi.listWebsitesV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
13604
14176
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
13605
14177
  });
@@ -13634,19 +14206,32 @@ export const HostingWebsitesApiFactory = function (configuration, basePath, axio
13634
14206
  return localVarFp.deleteWebsiteV1(domain, options).then((request) => request(axios, basePath));
13635
14207
  },
13636
14208
  /**
13637
- * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results.
14209
+ * Deploy a static application from an archive file. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to deploy a static application from an archive file that has been uploaded to the website\'s directory. This only works for static sites (pre-built HTML/CSS/JS with no build step). For Node.js applications, use `Create NodeJS build from archive` instead, or `Start Node.js build` if the archive is already uploaded. For WordPress sites, use `Import WordPress website`.
14210
+ * @summary Deploy static site archive
14211
+ * @param {string} username
14212
+ * @param {string} domain Domain name
14213
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
14214
+ * @param {*} [options] Override http request option.
14215
+ * @throws {RequiredError}
14216
+ */
14217
+ deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options) {
14218
+ return localVarFp.deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options).then((request) => request(axios, basePath));
14219
+ },
14220
+ /**
14221
+ * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with the other available query parameters to filter by username, order ID, enabled status, or domain name for more targeted results.
13638
14222
  * @summary List websites
13639
14223
  * @param {number} [page] Page number
13640
14224
  * @param {number} [perPage] Number of items per page
13641
14225
  * @param {string | null} [username] Filter by specific username
13642
14226
  * @param {number | null} [orderId] Order ID
13643
14227
  * @param {boolean | null} [isEnabled] Filter by enabled status
13644
- * @param {string | null} [domain] Filter by domain name (exact match)
14228
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
14229
+ * @param {Array<ListWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
13645
14230
  * @param {*} [options] Override http request option.
13646
14231
  * @throws {RequiredError}
13647
14232
  */
13648
- listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, options) {
13649
- return localVarFp.listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, options).then((request) => request(axios, basePath));
14233
+ listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, websiteTypes, options) {
14234
+ return localVarFp.listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, websiteTypes, options).then((request) => request(axios, basePath));
13650
14235
  },
13651
14236
  };
13652
14237
  };
@@ -13680,22 +14265,46 @@ export class HostingWebsitesApi extends BaseAPI {
13680
14265
  return HostingWebsitesApiFp(this.configuration).deleteWebsiteV1(domain, options).then((request) => request(this.axios, this.basePath));
13681
14266
  }
13682
14267
  /**
13683
- * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results.
14268
+ * Deploy a static application from an archive file. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to deploy a static application from an archive file that has been uploaded to the website\'s directory. This only works for static sites (pre-built HTML/CSS/JS with no build step). For Node.js applications, use `Create NodeJS build from archive` instead, or `Start Node.js build` if the archive is already uploaded. For WordPress sites, use `Import WordPress website`.
14269
+ * @summary Deploy static site archive
14270
+ * @param {string} username
14271
+ * @param {string} domain Domain name
14272
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
14273
+ * @param {*} [options] Override http request option.
14274
+ * @throws {RequiredError}
14275
+ * @memberof HostingWebsitesApi
14276
+ */
14277
+ deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options) {
14278
+ return HostingWebsitesApiFp(this.configuration).deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options).then((request) => request(this.axios, this.basePath));
14279
+ }
14280
+ /**
14281
+ * Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Each website includes a `website_type` field describing the type of website detected on the underlying platform (`wordpress`, `builder`, `horizons`, `nodejs`, or `other`). Some fields, such as `vhost_type`, `username`, and `root_directory`, only apply to CloudLinux websites and are null for other platforms. Use `website_types` to list only websites of a given detected type, e.g. only WordPress websites (`website_types=wordpress`) or only Node.js websites (`website_types=nodejs`). Combine with the other available query parameters to filter by username, order ID, enabled status, or domain name for more targeted results.
13684
14282
  * @summary List websites
13685
14283
  * @param {number} [page] Page number
13686
14284
  * @param {number} [perPage] Number of items per page
13687
14285
  * @param {string | null} [username] Filter by specific username
13688
14286
  * @param {number | null} [orderId] Order ID
13689
14287
  * @param {boolean | null} [isEnabled] Filter by enabled status
13690
- * @param {string | null} [domain] Filter by domain name (exact match)
14288
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
14289
+ * @param {Array<ListWebsitesV1WebsiteTypesEnum>} [websiteTypes] Filter by detected website type, e.g. wordpress,nodejs. Accepts a comma-separated list.
13691
14290
  * @param {*} [options] Override http request option.
13692
14291
  * @throws {RequiredError}
13693
14292
  * @memberof HostingWebsitesApi
13694
14293
  */
13695
- listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, options) {
13696
- return HostingWebsitesApiFp(this.configuration).listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, options).then((request) => request(this.axios, this.basePath));
14294
+ listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, websiteTypes, options) {
14295
+ return HostingWebsitesApiFp(this.configuration).listWebsitesV1(page, perPage, username, orderId, isEnabled, domain, websiteTypes, options).then((request) => request(this.axios, this.basePath));
13697
14296
  }
13698
14297
  }
14298
+ /**
14299
+ * @export
14300
+ */
14301
+ export const ListWebsitesV1WebsiteTypesEnum = {
14302
+ Wordpress: 'wordpress',
14303
+ Builder: 'builder',
14304
+ Horizons: 'horizons',
14305
+ Nodejs: 'nodejs',
14306
+ Other: 'other'
14307
+ };
13699
14308
  /**
13700
14309
  * MailAPITokensApi - axios parameter creator
13701
14310
  * @export
@@ -26353,6 +26962,47 @@ export const WordPressInstallationsApiAxiosParamCreator = function (configuratio
26353
26962
  options: localVarRequestOptions,
26354
26963
  };
26355
26964
  }),
26965
+ /**
26966
+ * Import WordPress website to the specified domain. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to import a WordPress website from archive and database files that have been uploaded to the website\'s directory.
26967
+ * @summary Import WordPress website
26968
+ * @param {string} username
26969
+ * @param {string} domain Domain name
26970
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
26971
+ * @param {*} [options] Override http request option.
26972
+ * @throws {RequiredError}
26973
+ */
26974
+ importWordPressWebsiteV1: (username_1, domain_1, wordPressV1InstallationsImportWordPressRequest_1, ...args_1) => __awaiter(this, [username_1, domain_1, wordPressV1InstallationsImportWordPressRequest_1, ...args_1], void 0, function* (username, domain, wordPressV1InstallationsImportWordPressRequest, options = {}) {
26975
+ // verify required parameter 'username' is not null or undefined
26976
+ assertParamExists('importWordPressWebsiteV1', 'username', username);
26977
+ // verify required parameter 'domain' is not null or undefined
26978
+ assertParamExists('importWordPressWebsiteV1', 'domain', domain);
26979
+ // verify required parameter 'wordPressV1InstallationsImportWordPressRequest' is not null or undefined
26980
+ assertParamExists('importWordPressWebsiteV1', 'wordPressV1InstallationsImportWordPressRequest', wordPressV1InstallationsImportWordPressRequest);
26981
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/import`
26982
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
26983
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
26984
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
26985
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
26986
+ let baseOptions;
26987
+ if (configuration) {
26988
+ baseOptions = configuration.baseOptions;
26989
+ }
26990
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
26991
+ const localVarHeaderParameter = {};
26992
+ const localVarQueryParameter = {};
26993
+ // authentication apiToken required
26994
+ // http bearer authentication required
26995
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
26996
+ localVarHeaderParameter['Content-Type'] = 'application/json';
26997
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
26998
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
26999
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
27000
+ localVarRequestOptions.data = serializeDataIfNeeded(wordPressV1InstallationsImportWordPressRequest, localVarRequestOptions, configuration);
27001
+ return {
27002
+ url: toPathString(localVarUrlObj),
27003
+ options: localVarRequestOptions,
27004
+ };
27005
+ }),
26356
27006
  /**
26357
27007
  * Install WordPress on an existing website. The website must already exist before calling this endpoint. To create a new website first, use POST /api/hosting/v1/websites and poll GET /api/hosting/v1/websites until it appears. Call GET /api/hosting/v1/wordpress/installations filtered by username and domain before proceeding to check whether WordPress is already installed on the target domain/path. If WordPress already exists and `overwrite` is false (the default), the async job will fail. This operation is asynchronous: a successful response only means the install job has been queued, not that WordPress is ready. Installation typically takes 1-2 minutes. Poll GET /api/hosting/v1/wordpress/installations filtered by username and domain to track progress. When the installation appears in that list, WordPress is ready.
26358
27008
  * @summary Install WordPress
@@ -26430,7 +27080,7 @@ export const WordPressInstallationsApiAxiosParamCreator = function (configuratio
26430
27080
  * List WordPress installations accessible to the authenticated client. Use this endpoint to discover existing WordPress installations and to poll for installation status after calling the install endpoint. When a newly requested installation appears in this list, WordPress is ready. Filter by username and domain to narrow results to a specific website. Each installation includes a `valid` flag and, when invalid, a `validationError` describing why.
26431
27081
  * @summary List WordPress installations
26432
27082
  * @param {string | null} [username] Filter by specific username
26433
- * @param {string | null} [domain] Filter by domain name (exact match)
27083
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
26434
27084
  * @param {ListWordPressInstallationsV1OwnershipEnum} [ownership] Filter by ownership type. Defaults to \&quot;owned\&quot;. Use \&quot;all\&quot; to include both owned and managed installations.
26435
27085
  * @param {*} [options] Override http request option.
26436
27086
  * @throws {RequiredError}
@@ -26616,6 +27266,23 @@ export const WordPressInstallationsApiFp = function (configuration) {
26616
27266
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
26617
27267
  });
26618
27268
  },
27269
+ /**
27270
+ * Import WordPress website to the specified domain. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to import a WordPress website from archive and database files that have been uploaded to the website\'s directory.
27271
+ * @summary Import WordPress website
27272
+ * @param {string} username
27273
+ * @param {string} domain Domain name
27274
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
27275
+ * @param {*} [options] Override http request option.
27276
+ * @throws {RequiredError}
27277
+ */
27278
+ importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options) {
27279
+ return __awaiter(this, void 0, void 0, function* () {
27280
+ var _a, _b;
27281
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options);
27282
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['WordPressInstallationsApi.importWordPressWebsiteV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
27283
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
27284
+ });
27285
+ },
26619
27286
  /**
26620
27287
  * Install WordPress on an existing website. The website must already exist before calling this endpoint. To create a new website first, use POST /api/hosting/v1/websites and poll GET /api/hosting/v1/websites until it appears. Call GET /api/hosting/v1/wordpress/installations filtered by username and domain before proceeding to check whether WordPress is already installed on the target domain/path. If WordPress already exists and `overwrite` is false (the default), the async job will fail. This operation is asynchronous: a successful response only means the install job has been queued, not that WordPress is ready. Installation typically takes 1-2 minutes. Poll GET /api/hosting/v1/wordpress/installations filtered by username and domain to track progress. When the installation appears in that list, WordPress is ready.
26621
27288
  * @summary Install WordPress
@@ -26652,7 +27319,7 @@ export const WordPressInstallationsApiFp = function (configuration) {
26652
27319
  * List WordPress installations accessible to the authenticated client. Use this endpoint to discover existing WordPress installations and to poll for installation status after calling the install endpoint. When a newly requested installation appears in this list, WordPress is ready. Filter by username and domain to narrow results to a specific website. Each installation includes a `valid` flag and, when invalid, a `validationError` describing why.
26653
27320
  * @summary List WordPress installations
26654
27321
  * @param {string | null} [username] Filter by specific username
26655
- * @param {string | null} [domain] Filter by domain name (exact match)
27322
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
26656
27323
  * @param {ListWordPressInstallationsV1OwnershipEnum} [ownership] Filter by ownership type. Defaults to \&quot;owned\&quot;. Use \&quot;all\&quot; to include both owned and managed installations.
26657
27324
  * @param {*} [options] Override http request option.
26658
27325
  * @throws {RequiredError}
@@ -26751,6 +27418,18 @@ export const WordPressInstallationsApiFactory = function (configuration, basePat
26751
27418
  getInstallationJWTTokenV1(username, software, options) {
26752
27419
  return localVarFp.getInstallationJWTTokenV1(username, software, options).then((request) => request(axios, basePath));
26753
27420
  },
27421
+ /**
27422
+ * Import WordPress website to the specified domain. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to import a WordPress website from archive and database files that have been uploaded to the website\'s directory.
27423
+ * @summary Import WordPress website
27424
+ * @param {string} username
27425
+ * @param {string} domain Domain name
27426
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
27427
+ * @param {*} [options] Override http request option.
27428
+ * @throws {RequiredError}
27429
+ */
27430
+ importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options) {
27431
+ return localVarFp.importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options).then((request) => request(axios, basePath));
27432
+ },
26754
27433
  /**
26755
27434
  * Install WordPress on an existing website. The website must already exist before calling this endpoint. To create a new website first, use POST /api/hosting/v1/websites and poll GET /api/hosting/v1/websites until it appears. Call GET /api/hosting/v1/wordpress/installations filtered by username and domain before proceeding to check whether WordPress is already installed on the target domain/path. If WordPress already exists and `overwrite` is false (the default), the async job will fail. This operation is asynchronous: a successful response only means the install job has been queued, not that WordPress is ready. Installation typically takes 1-2 minutes. Poll GET /api/hosting/v1/wordpress/installations filtered by username and domain to track progress. When the installation appears in that list, WordPress is ready.
26756
27435
  * @summary Install WordPress
@@ -26777,7 +27456,7 @@ export const WordPressInstallationsApiFactory = function (configuration, basePat
26777
27456
  * List WordPress installations accessible to the authenticated client. Use this endpoint to discover existing WordPress installations and to poll for installation status after calling the install endpoint. When a newly requested installation appears in this list, WordPress is ready. Filter by username and domain to narrow results to a specific website. Each installation includes a `valid` flag and, when invalid, a `validationError` describing why.
26778
27457
  * @summary List WordPress installations
26779
27458
  * @param {string | null} [username] Filter by specific username
26780
- * @param {string | null} [domain] Filter by domain name (exact match)
27459
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
26781
27460
  * @param {ListWordPressInstallationsV1OwnershipEnum} [ownership] Filter by ownership type. Defaults to \&quot;owned\&quot;. Use \&quot;all\&quot; to include both owned and managed installations.
26782
27461
  * @param {*} [options] Override http request option.
26783
27462
  * @throws {RequiredError}
@@ -26865,6 +27544,19 @@ export class WordPressInstallationsApi extends BaseAPI {
26865
27544
  getInstallationJWTTokenV1(username, software, options) {
26866
27545
  return WordPressInstallationsApiFp(this.configuration).getInstallationJWTTokenV1(username, software, options).then((request) => request(this.axios, this.basePath));
26867
27546
  }
27547
+ /**
27548
+ * Import WordPress website to the specified domain. WARNING: this overwrites the website\'s existing contents and cannot be undone — verify this is intended before calling this endpoint. This endpoint allows you to import a WordPress website from archive and database files that have been uploaded to the website\'s directory.
27549
+ * @summary Import WordPress website
27550
+ * @param {string} username
27551
+ * @param {string} domain Domain name
27552
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
27553
+ * @param {*} [options] Override http request option.
27554
+ * @throws {RequiredError}
27555
+ * @memberof WordPressInstallationsApi
27556
+ */
27557
+ importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options) {
27558
+ return WordPressInstallationsApiFp(this.configuration).importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options).then((request) => request(this.axios, this.basePath));
27559
+ }
26868
27560
  /**
26869
27561
  * Install WordPress on an existing website. The website must already exist before calling this endpoint. To create a new website first, use POST /api/hosting/v1/websites and poll GET /api/hosting/v1/websites until it appears. Call GET /api/hosting/v1/wordpress/installations filtered by username and domain before proceeding to check whether WordPress is already installed on the target domain/path. If WordPress already exists and `overwrite` is false (the default), the async job will fail. This operation is asynchronous: a successful response only means the install job has been queued, not that WordPress is ready. Installation typically takes 1-2 minutes. Poll GET /api/hosting/v1/wordpress/installations filtered by username and domain to track progress. When the installation appears in that list, WordPress is ready.
26870
27562
  * @summary Install WordPress
@@ -26893,7 +27585,7 @@ export class WordPressInstallationsApi extends BaseAPI {
26893
27585
  * List WordPress installations accessible to the authenticated client. Use this endpoint to discover existing WordPress installations and to poll for installation status after calling the install endpoint. When a newly requested installation appears in this list, WordPress is ready. Filter by username and domain to narrow results to a specific website. Each installation includes a `valid` flag and, when invalid, a `validationError` describing why.
26894
27586
  * @summary List WordPress installations
26895
27587
  * @param {string | null} [username] Filter by specific username
26896
- * @param {string | null} [domain] Filter by domain name (exact match)
27588
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
26897
27589
  * @param {ListWordPressInstallationsV1OwnershipEnum} [ownership] Filter by ownership type. Defaults to \&quot;owned\&quot;. Use \&quot;all\&quot; to include both owned and managed installations.
26898
27590
  * @param {*} [options] Override http request option.
26899
27591
  * @throws {RequiredError}
@@ -27663,7 +28355,7 @@ export const WordPressPluginsApiAxiosParamCreator = function (configuration) {
27663
28355
  /**
27664
28356
  * Check whether WooCommerce is installed on any WordPress installation of a domain. Optionally filter by domain to scope the check.
27665
28357
  * @summary Check if WooCommerce is installed
27666
- * @param {string | null} [domain] Filter by domain name (exact match)
28358
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
27667
28359
  * @param {*} [options] Override http request option.
27668
28360
  * @throws {RequiredError}
27669
28361
  */
@@ -27733,6 +28425,47 @@ export const WordPressPluginsApiAxiosParamCreator = function (configuration) {
27733
28425
  options: localVarRequestOptions,
27734
28426
  };
27735
28427
  }),
28428
+ /**
28429
+ * Deploy a WordPress plugin from an already uploaded directory. This endpoint allows you to deploy a WordPress plugin that has been uploaded to the website\'s directory. The plugin will be activated and made available in the WordPress admin panel.
28430
+ * @summary Deploy WordPress plugin
28431
+ * @param {string} username
28432
+ * @param {string} domain Domain name
28433
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
28434
+ * @param {*} [options] Override http request option.
28435
+ * @throws {RequiredError}
28436
+ */
28437
+ deployWordPressPluginV1: (username_1, domain_1, wordPressV1PluginsDeployPluginRequest_1, ...args_1) => __awaiter(this, [username_1, domain_1, wordPressV1PluginsDeployPluginRequest_1, ...args_1], void 0, function* (username, domain, wordPressV1PluginsDeployPluginRequest, options = {}) {
28438
+ // verify required parameter 'username' is not null or undefined
28439
+ assertParamExists('deployWordPressPluginV1', 'username', username);
28440
+ // verify required parameter 'domain' is not null or undefined
28441
+ assertParamExists('deployWordPressPluginV1', 'domain', domain);
28442
+ // verify required parameter 'wordPressV1PluginsDeployPluginRequest' is not null or undefined
28443
+ assertParamExists('deployWordPressPluginV1', 'wordPressV1PluginsDeployPluginRequest', wordPressV1PluginsDeployPluginRequest);
28444
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/plugins/deploy`
28445
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
28446
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
28447
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
28448
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
28449
+ let baseOptions;
28450
+ if (configuration) {
28451
+ baseOptions = configuration.baseOptions;
28452
+ }
28453
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
28454
+ const localVarHeaderParameter = {};
28455
+ const localVarQueryParameter = {};
28456
+ // authentication apiToken required
28457
+ // http bearer authentication required
28458
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
28459
+ localVarHeaderParameter['Content-Type'] = 'application/json';
28460
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
28461
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
28462
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
28463
+ localVarRequestOptions.data = serializeDataIfNeeded(wordPressV1PluginsDeployPluginRequest, localVarRequestOptions, configuration);
28464
+ return {
28465
+ url: toPathString(localVarUrlObj),
28466
+ options: localVarRequestOptions,
28467
+ };
28468
+ }),
27736
28469
  /**
27737
28470
  * Install one or more plugins on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). Use GET /api/hosting/v1/wordpress/plugins to discover the plugin slugs available for installation. This operation is asynchronous: a successful response only means the install job has been queued, not that the plugins are ready.
27738
28471
  * @summary Install WordPress plugins
@@ -28068,7 +28801,7 @@ export const WordPressPluginsApiFp = function (configuration) {
28068
28801
  /**
28069
28802
  * Check whether WooCommerce is installed on any WordPress installation of a domain. Optionally filter by domain to scope the check.
28070
28803
  * @summary Check if WooCommerce is installed
28071
- * @param {string | null} [domain] Filter by domain name (exact match)
28804
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
28072
28805
  * @param {*} [options] Override http request option.
28073
28806
  * @throws {RequiredError}
28074
28807
  */
@@ -28097,6 +28830,23 @@ export const WordPressPluginsApiFp = function (configuration) {
28097
28830
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
28098
28831
  });
28099
28832
  },
28833
+ /**
28834
+ * Deploy a WordPress plugin from an already uploaded directory. This endpoint allows you to deploy a WordPress plugin that has been uploaded to the website\'s directory. The plugin will be activated and made available in the WordPress admin panel.
28835
+ * @summary Deploy WordPress plugin
28836
+ * @param {string} username
28837
+ * @param {string} domain Domain name
28838
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
28839
+ * @param {*} [options] Override http request option.
28840
+ * @throws {RequiredError}
28841
+ */
28842
+ deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options) {
28843
+ return __awaiter(this, void 0, void 0, function* () {
28844
+ var _a, _b;
28845
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options);
28846
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['WordPressPluginsApi.deployWordPressPluginV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
28847
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
28848
+ });
28849
+ },
28100
28850
  /**
28101
28851
  * Install one or more plugins on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). Use GET /api/hosting/v1/wordpress/plugins to discover the plugin slugs available for installation. This operation is asynchronous: a successful response only means the install job has been queued, not that the plugins are ready.
28102
28852
  * @summary Install WordPress plugins
@@ -28252,7 +29002,7 @@ export const WordPressPluginsApiFactory = function (configuration, basePath, axi
28252
29002
  /**
28253
29003
  * Check whether WooCommerce is installed on any WordPress installation of a domain. Optionally filter by domain to scope the check.
28254
29004
  * @summary Check if WooCommerce is installed
28255
- * @param {string | null} [domain] Filter by domain name (exact match)
29005
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
28256
29006
  * @param {*} [options] Override http request option.
28257
29007
  * @throws {RequiredError}
28258
29008
  */
@@ -28271,6 +29021,18 @@ export const WordPressPluginsApiFactory = function (configuration, basePath, axi
28271
29021
  deactivateWordPressPluginV1(username, software, wordPressV1PluginsDeactivatePluginRequest, options) {
28272
29022
  return localVarFp.deactivateWordPressPluginV1(username, software, wordPressV1PluginsDeactivatePluginRequest, options).then((request) => request(axios, basePath));
28273
29023
  },
29024
+ /**
29025
+ * Deploy a WordPress plugin from an already uploaded directory. This endpoint allows you to deploy a WordPress plugin that has been uploaded to the website\'s directory. The plugin will be activated and made available in the WordPress admin panel.
29026
+ * @summary Deploy WordPress plugin
29027
+ * @param {string} username
29028
+ * @param {string} domain Domain name
29029
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
29030
+ * @param {*} [options] Override http request option.
29031
+ * @throws {RequiredError}
29032
+ */
29033
+ deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options) {
29034
+ return localVarFp.deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options).then((request) => request(axios, basePath));
29035
+ },
28274
29036
  /**
28275
29037
  * Install one or more plugins on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). Use GET /api/hosting/v1/wordpress/plugins to discover the plugin slugs available for installation. This operation is asynchronous: a successful response only means the install job has been queued, not that the plugins are ready.
28276
29038
  * @summary Install WordPress plugins
@@ -28387,7 +29149,7 @@ export class WordPressPluginsApi extends BaseAPI {
28387
29149
  /**
28388
29150
  * Check whether WooCommerce is installed on any WordPress installation of a domain. Optionally filter by domain to scope the check.
28389
29151
  * @summary Check if WooCommerce is installed
28390
- * @param {string | null} [domain] Filter by domain name (exact match)
29152
+ * @param {string | null} [domain] Filter by domain name (case-insensitive substring match)
28391
29153
  * @param {*} [options] Override http request option.
28392
29154
  * @throws {RequiredError}
28393
29155
  * @memberof WordPressPluginsApi
@@ -28408,6 +29170,19 @@ export class WordPressPluginsApi extends BaseAPI {
28408
29170
  deactivateWordPressPluginV1(username, software, wordPressV1PluginsDeactivatePluginRequest, options) {
28409
29171
  return WordPressPluginsApiFp(this.configuration).deactivateWordPressPluginV1(username, software, wordPressV1PluginsDeactivatePluginRequest, options).then((request) => request(this.axios, this.basePath));
28410
29172
  }
29173
+ /**
29174
+ * Deploy a WordPress plugin from an already uploaded directory. This endpoint allows you to deploy a WordPress plugin that has been uploaded to the website\'s directory. The plugin will be activated and made available in the WordPress admin panel.
29175
+ * @summary Deploy WordPress plugin
29176
+ * @param {string} username
29177
+ * @param {string} domain Domain name
29178
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
29179
+ * @param {*} [options] Override http request option.
29180
+ * @throws {RequiredError}
29181
+ * @memberof WordPressPluginsApi
29182
+ */
29183
+ deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options) {
29184
+ return WordPressPluginsApiFp(this.configuration).deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options).then((request) => request(this.axios, this.basePath));
29185
+ }
28411
29186
  /**
28412
29187
  * Install one or more plugins on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). Use GET /api/hosting/v1/wordpress/plugins to discover the plugin slugs available for installation. This operation is asynchronous: a successful response only means the install job has been queued, not that the plugins are ready.
28413
29188
  * @summary Install WordPress plugins
@@ -28561,6 +29336,47 @@ export const WordPressThemesApiAxiosParamCreator = function (configuration) {
28561
29336
  options: localVarRequestOptions,
28562
29337
  };
28563
29338
  }),
29339
+ /**
29340
+ * Deploy a WordPress theme from an already uploaded directory. This endpoint allows you to deploy a WordPress theme that has been uploaded to the website\'s directory. The theme can be optionally activated after deployment.
29341
+ * @summary Deploy WordPress theme
29342
+ * @param {string} username
29343
+ * @param {string} domain Domain name
29344
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
29345
+ * @param {*} [options] Override http request option.
29346
+ * @throws {RequiredError}
29347
+ */
29348
+ deployWordPressThemeV1: (username_1, domain_1, wordPressV1ThemesDeployThemeRequest_1, ...args_1) => __awaiter(this, [username_1, domain_1, wordPressV1ThemesDeployThemeRequest_1, ...args_1], void 0, function* (username, domain, wordPressV1ThemesDeployThemeRequest, options = {}) {
29349
+ // verify required parameter 'username' is not null or undefined
29350
+ assertParamExists('deployWordPressThemeV1', 'username', username);
29351
+ // verify required parameter 'domain' is not null or undefined
29352
+ assertParamExists('deployWordPressThemeV1', 'domain', domain);
29353
+ // verify required parameter 'wordPressV1ThemesDeployThemeRequest' is not null or undefined
29354
+ assertParamExists('deployWordPressThemeV1', 'wordPressV1ThemesDeployThemeRequest', wordPressV1ThemesDeployThemeRequest);
29355
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/themes/deploy`
29356
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
29357
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
29358
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
29359
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
29360
+ let baseOptions;
29361
+ if (configuration) {
29362
+ baseOptions = configuration.baseOptions;
29363
+ }
29364
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
29365
+ const localVarHeaderParameter = {};
29366
+ const localVarQueryParameter = {};
29367
+ // authentication apiToken required
29368
+ // http bearer authentication required
29369
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
29370
+ localVarHeaderParameter['Content-Type'] = 'application/json';
29371
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
29372
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
29373
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
29374
+ localVarRequestOptions.data = serializeDataIfNeeded(wordPressV1ThemesDeployThemeRequest, localVarRequestOptions, configuration);
29375
+ return {
29376
+ url: toPathString(localVarUrlObj),
29377
+ options: localVarRequestOptions,
29378
+ };
29379
+ }),
28564
29380
  /**
28565
29381
  * Install a theme on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). When the theme is one of the Hostinger themes (hostinger-blog, hostinger-affiliate-theme, hostinger-ai-theme), the optional `palette`, `layout`, and `font` fields are forwarded to the custom installer (defaults: palette1, layout1, default). For any other theme they are ignored. This operation is asynchronous: a successful response only means the install job has been queued, not that the theme is ready.
28566
29382
  * @summary Install WordPress theme
@@ -28782,6 +29598,23 @@ export const WordPressThemesApiFp = function (configuration) {
28782
29598
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
28783
29599
  });
28784
29600
  },
29601
+ /**
29602
+ * Deploy a WordPress theme from an already uploaded directory. This endpoint allows you to deploy a WordPress theme that has been uploaded to the website\'s directory. The theme can be optionally activated after deployment.
29603
+ * @summary Deploy WordPress theme
29604
+ * @param {string} username
29605
+ * @param {string} domain Domain name
29606
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
29607
+ * @param {*} [options] Override http request option.
29608
+ * @throws {RequiredError}
29609
+ */
29610
+ deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options) {
29611
+ return __awaiter(this, void 0, void 0, function* () {
29612
+ var _a, _b;
29613
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options);
29614
+ const localVarOperationServerBasePath = (_b = (_a = operationServerMap['WordPressThemesApi.deployWordPressThemeV1']) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.url;
29615
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
29616
+ });
29617
+ },
28785
29618
  /**
28786
29619
  * Install a theme on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). When the theme is one of the Hostinger themes (hostinger-blog, hostinger-affiliate-theme, hostinger-ai-theme), the optional `palette`, `layout`, and `font` fields are forwarded to the custom installer (defaults: palette1, layout1, default). For any other theme they are ignored. This operation is asynchronous: a successful response only means the install job has been queued, not that the theme is ready.
28787
29620
  * @summary Install WordPress theme
@@ -28886,6 +29719,18 @@ export const WordPressThemesApiFactory = function (configuration, basePath, axio
28886
29719
  activateWordPressThemeV1(username, software, wordPressV1ThemesActivateThemeRequest, options) {
28887
29720
  return localVarFp.activateWordPressThemeV1(username, software, wordPressV1ThemesActivateThemeRequest, options).then((request) => request(axios, basePath));
28888
29721
  },
29722
+ /**
29723
+ * Deploy a WordPress theme from an already uploaded directory. This endpoint allows you to deploy a WordPress theme that has been uploaded to the website\'s directory. The theme can be optionally activated after deployment.
29724
+ * @summary Deploy WordPress theme
29725
+ * @param {string} username
29726
+ * @param {string} domain Domain name
29727
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
29728
+ * @param {*} [options] Override http request option.
29729
+ * @throws {RequiredError}
29730
+ */
29731
+ deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options) {
29732
+ return localVarFp.deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options).then((request) => request(axios, basePath));
29733
+ },
28889
29734
  /**
28890
29735
  * Install a theme on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). When the theme is one of the Hostinger themes (hostinger-blog, hostinger-affiliate-theme, hostinger-ai-theme), the optional `palette`, `layout`, and `font` fields are forwarded to the custom installer (defaults: palette1, layout1, default). For any other theme they are ignored. This operation is asynchronous: a successful response only means the install job has been queued, not that the theme is ready.
28891
29736
  * @summary Install WordPress theme
@@ -28966,6 +29811,19 @@ export class WordPressThemesApi extends BaseAPI {
28966
29811
  activateWordPressThemeV1(username, software, wordPressV1ThemesActivateThemeRequest, options) {
28967
29812
  return WordPressThemesApiFp(this.configuration).activateWordPressThemeV1(username, software, wordPressV1ThemesActivateThemeRequest, options).then((request) => request(this.axios, this.basePath));
28968
29813
  }
29814
+ /**
29815
+ * Deploy a WordPress theme from an already uploaded directory. This endpoint allows you to deploy a WordPress theme that has been uploaded to the website\'s directory. The theme can be optionally activated after deployment.
29816
+ * @summary Deploy WordPress theme
29817
+ * @param {string} username
29818
+ * @param {string} domain Domain name
29819
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
29820
+ * @param {*} [options] Override http request option.
29821
+ * @throws {RequiredError}
29822
+ * @memberof WordPressThemesApi
29823
+ */
29824
+ deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options) {
29825
+ return WordPressThemesApiFp(this.configuration).deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options).then((request) => request(this.axios, this.basePath));
29826
+ }
28969
29827
  /**
28970
29828
  * Install a theme on an existing WordPress installation. Provide the WordPress installation (software) identifier in the path. It can be obtained from GET /api/hosting/v1/wordpress/installations (the `id` field). When the theme is one of the Hostinger themes (hostinger-blog, hostinger-affiliate-theme, hostinger-ai-theme), the optional `palette`, `layout`, and `font` fields are forwarded to the custom installer (defaults: palette1, layout1, default). For any other theme they are ignored. This operation is asynchronous: a successful response only means the install job has been queued, not that the theme is ready.
28971
29829
  * @summary Install WordPress theme