hostinger-api-sdk 1.38.0 → 1.39.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 (44) hide show
  1. package/README.md +2 -2
  2. package/api.ts +1019 -5
  3. package/base.ts +1 -1
  4. package/common.ts +1 -1
  5. package/configuration.ts +2 -2
  6. package/dist/api.d.ts +646 -5
  7. package/dist/api.js +712 -15
  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 +646 -5
  15. package/dist/esm/api.js +702 -5
  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/HostingFilesApi.md +56 -0
  28. package/docs/HostingNodeJSApi.md +124 -1
  29. package/docs/HostingV1FilesGenerateUploadUrlRequest.md +22 -0
  30. package/docs/HostingV1FilesUploadUrlResource.md +24 -0
  31. package/docs/HostingV1NodeJsBuildSettingsResource.md +34 -0
  32. package/docs/HostingV1NodeJsGetBuildSettingsRequest.md +20 -0
  33. package/docs/HostingV1NodeJsStartBuildRequest.md +36 -0
  34. package/docs/HostingV1NodeJsStartBuildRequestSourceOptions.md +21 -0
  35. package/docs/HostingV1WebsitesDeployArchiveRequest.md +20 -0
  36. package/docs/HostingWebsitesApi.md +62 -0
  37. package/docs/WordPressInstallationsApi.md +62 -0
  38. package/docs/WordPressPluginsApi.md +62 -0
  39. package/docs/WordPressThemesApi.md +62 -0
  40. package/docs/WordPressV1InstallationsImportWordPressRequest.md +22 -0
  41. package/docs/WordPressV1PluginsDeployPluginRequest.md +22 -0
  42. package/docs/WordPressV1ThemesDeployThemeRequest.md +24 -0
  43. package/index.ts +1 -1
  44. package/package.json +1 -1
package/api.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * Hostinger API
5
5
  *
6
- * API Version: 1.40.0
6
+ * API Version: 1.41.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
@@ -5307,6 +5307,50 @@ export const HostingV1FilesFilesResourceItemsInnerTypeEnum = {
5307
5307
 
5308
5308
  export type HostingV1FilesFilesResourceItemsInnerTypeEnum = typeof HostingV1FilesFilesResourceItemsInnerTypeEnum[keyof typeof HostingV1FilesFilesResourceItemsInnerTypeEnum];
5309
5309
 
5310
+ /**
5311
+ *
5312
+ * @export
5313
+ * @interface HostingV1FilesGenerateUploadUrlRequest
5314
+ */
5315
+ export interface HostingV1FilesGenerateUploadUrlRequest {
5316
+ /**
5317
+ * Account username
5318
+ * @type {string}
5319
+ * @memberof HostingV1FilesGenerateUploadUrlRequest
5320
+ */
5321
+ 'username': string;
5322
+ /**
5323
+ * Website domain
5324
+ * @type {string}
5325
+ * @memberof HostingV1FilesGenerateUploadUrlRequest
5326
+ */
5327
+ 'domain': string;
5328
+ }
5329
+ /**
5330
+ *
5331
+ * @export
5332
+ * @interface HostingV1FilesUploadUrlResource
5333
+ */
5334
+ export interface HostingV1FilesUploadUrlResource {
5335
+ /**
5336
+ * The TUS upload endpoint URL to send upload requests to
5337
+ * @type {string}
5338
+ * @memberof HostingV1FilesUploadUrlResource
5339
+ */
5340
+ 'url': string;
5341
+ /**
5342
+ * Authentication token to pass as the `X-Auth` header in TUS upload requests
5343
+ * @type {string}
5344
+ * @memberof HostingV1FilesUploadUrlResource
5345
+ */
5346
+ 'auth_key': string;
5347
+ /**
5348
+ * Authentication token to pass as the `X-Auth-Rest` header in TUS upload requests
5349
+ * @type {string}
5350
+ * @memberof HostingV1FilesUploadUrlResource
5351
+ */
5352
+ 'rest_auth_key': string;
5353
+ }
5310
5354
  /**
5311
5355
  *
5312
5356
  * @export
@@ -5471,6 +5515,93 @@ export const HostingV1NodeJsBuildResourceStateEnum = {
5471
5515
 
5472
5516
  export type HostingV1NodeJsBuildResourceStateEnum = typeof HostingV1NodeJsBuildResourceStateEnum[keyof typeof HostingV1NodeJsBuildResourceStateEnum];
5473
5517
 
5518
+ /**
5519
+ *
5520
+ * @export
5521
+ * @interface HostingV1NodeJsBuildSettingsResource
5522
+ */
5523
+ export interface HostingV1NodeJsBuildSettingsResource {
5524
+ /**
5525
+ * Node.js application type
5526
+ * @type {string}
5527
+ * @memberof HostingV1NodeJsBuildSettingsResource
5528
+ */
5529
+ 'app_type': HostingV1NodeJsBuildSettingsResourceAppTypeEnum | null;
5530
+ /**
5531
+ * Node.js version
5532
+ * @type {number}
5533
+ * @memberof HostingV1NodeJsBuildSettingsResource
5534
+ */
5535
+ 'node_version': number | null;
5536
+ /**
5537
+ * Application root directory
5538
+ * @type {string}
5539
+ * @memberof HostingV1NodeJsBuildSettingsResource
5540
+ */
5541
+ 'root_directory': string | null;
5542
+ /**
5543
+ * Build output directory
5544
+ * @type {string}
5545
+ * @memberof HostingV1NodeJsBuildSettingsResource
5546
+ */
5547
+ 'output_directory': string | null;
5548
+ /**
5549
+ * The npm script to run to build the application
5550
+ * @type {string}
5551
+ * @memberof HostingV1NodeJsBuildSettingsResource
5552
+ */
5553
+ 'build_script': string | null;
5554
+ /**
5555
+ * The main entry point file for the application
5556
+ * @type {string}
5557
+ * @memberof HostingV1NodeJsBuildSettingsResource
5558
+ */
5559
+ 'entry_file': string | null;
5560
+ /**
5561
+ * Package manager
5562
+ * @type {string}
5563
+ * @memberof HostingV1NodeJsBuildSettingsResource
5564
+ */
5565
+ 'package_manager': HostingV1NodeJsBuildSettingsResourcePackageManagerEnum | null;
5566
+ /**
5567
+ * The scripts configured in the package.json file
5568
+ * @type {Array<string>}
5569
+ * @memberof HostingV1NodeJsBuildSettingsResource
5570
+ */
5571
+ 'available_scripts': Array<string>;
5572
+ }
5573
+
5574
+ export const HostingV1NodeJsBuildSettingsResourceAppTypeEnum = {
5575
+ CreateReactApp: 'create-react-app',
5576
+ Gatsby: 'gatsby',
5577
+ Vite: 'vite',
5578
+ Angular: 'angular',
5579
+ React: 'react',
5580
+ Vue: 'vue',
5581
+ Parcel: 'parcel',
5582
+ Next: 'next',
5583
+ Nuxt: 'nuxt',
5584
+ Nest: 'nest',
5585
+ Express: 'express',
5586
+ Fastify: 'fastify',
5587
+ Astro: 'astro',
5588
+ Svelte: 'svelte',
5589
+ SvelteKit: 'svelte-kit',
5590
+ Hono: 'hono',
5591
+ ReactRouter: 'react-router',
5592
+ Nitro: 'nitro',
5593
+ Other: 'other'
5594
+ } as const;
5595
+
5596
+ export type HostingV1NodeJsBuildSettingsResourceAppTypeEnum = typeof HostingV1NodeJsBuildSettingsResourceAppTypeEnum[keyof typeof HostingV1NodeJsBuildSettingsResourceAppTypeEnum];
5597
+ export const HostingV1NodeJsBuildSettingsResourcePackageManagerEnum = {
5598
+ Npm: 'npm',
5599
+ Yarn: 'yarn',
5600
+ Pnpm: 'pnpm'
5601
+ } as const;
5602
+
5603
+ export type HostingV1NodeJsBuildSettingsResourcePackageManagerEnum = typeof HostingV1NodeJsBuildSettingsResourcePackageManagerEnum[keyof typeof HostingV1NodeJsBuildSettingsResourcePackageManagerEnum];
5604
+
5474
5605
  /**
5475
5606
  *
5476
5607
  * @export
@@ -5566,6 +5697,19 @@ export const HostingV1NodeJsCreateFromArchiveRequestPackageManagerEnum = {
5566
5697
 
5567
5698
  export type HostingV1NodeJsCreateFromArchiveRequestPackageManagerEnum = typeof HostingV1NodeJsCreateFromArchiveRequestPackageManagerEnum[keyof typeof HostingV1NodeJsCreateFromArchiveRequestPackageManagerEnum];
5568
5699
 
5700
+ /**
5701
+ *
5702
+ * @export
5703
+ * @interface HostingV1NodeJsGetBuildSettingsRequest
5704
+ */
5705
+ export interface HostingV1NodeJsGetBuildSettingsRequest {
5706
+ /**
5707
+ * The path to the archive file relative to the document root of the vhost
5708
+ * @type {string}
5709
+ * @memberof HostingV1NodeJsGetBuildSettingsRequest
5710
+ */
5711
+ 'archive_path': string;
5712
+ }
5569
5713
  /**
5570
5714
  *
5571
5715
  * @export
@@ -5623,6 +5767,125 @@ export interface HostingV1NodeJsSourceOptionsResource {
5623
5767
  */
5624
5768
  'archive_path': string | null;
5625
5769
  }
5770
+ /**
5771
+ *
5772
+ * @export
5773
+ * @interface HostingV1NodeJsStartBuildRequest
5774
+ */
5775
+ export interface HostingV1NodeJsStartBuildRequest {
5776
+ /**
5777
+ * Node.js version
5778
+ * @type {number}
5779
+ * @memberof HostingV1NodeJsStartBuildRequest
5780
+ */
5781
+ 'node_version': HostingV1NodeJsStartBuildRequestNodeVersionEnum;
5782
+ /**
5783
+ * Node.js application type
5784
+ * @type {string}
5785
+ * @memberof HostingV1NodeJsStartBuildRequest
5786
+ */
5787
+ 'app_type': HostingV1NodeJsStartBuildRequestAppTypeEnum | null;
5788
+ /**
5789
+ * Application root directory (where package.json is located) relative to public_html
5790
+ * @type {string}
5791
+ * @memberof HostingV1NodeJsStartBuildRequest
5792
+ */
5793
+ 'root_directory': string | null;
5794
+ /**
5795
+ * Build output directory relative to the root directory
5796
+ * @type {string}
5797
+ * @memberof HostingV1NodeJsStartBuildRequest
5798
+ */
5799
+ 'output_directory': string | null;
5800
+ /**
5801
+ * Build script that will be ran to build the application
5802
+ * @type {string}
5803
+ * @memberof HostingV1NodeJsStartBuildRequest
5804
+ */
5805
+ 'build_script': string | null;
5806
+ /**
5807
+ * The main entry point file for the application
5808
+ * @type {string}
5809
+ * @memberof HostingV1NodeJsStartBuildRequest
5810
+ */
5811
+ 'entry_file': string | null;
5812
+ /**
5813
+ * Package manager
5814
+ * @type {string}
5815
+ * @memberof HostingV1NodeJsStartBuildRequest
5816
+ */
5817
+ 'package_manager': HostingV1NodeJsStartBuildRequestPackageManagerEnum | null;
5818
+ /**
5819
+ * The source type of the files
5820
+ * @type {string}
5821
+ * @memberof HostingV1NodeJsStartBuildRequest
5822
+ */
5823
+ 'source_type': HostingV1NodeJsStartBuildRequestSourceTypeEnum;
5824
+ /**
5825
+ *
5826
+ * @type {HostingV1NodeJsStartBuildRequestSourceOptions}
5827
+ * @memberof HostingV1NodeJsStartBuildRequest
5828
+ */
5829
+ 'source_options': HostingV1NodeJsStartBuildRequestSourceOptions | null;
5830
+ }
5831
+
5832
+ export const HostingV1NodeJsStartBuildRequestNodeVersionEnum = {
5833
+ NUMBER_18: 18,
5834
+ NUMBER_20: 20,
5835
+ NUMBER_22: 22,
5836
+ NUMBER_24: 24
5837
+ } as const;
5838
+
5839
+ export type HostingV1NodeJsStartBuildRequestNodeVersionEnum = typeof HostingV1NodeJsStartBuildRequestNodeVersionEnum[keyof typeof HostingV1NodeJsStartBuildRequestNodeVersionEnum];
5840
+ export const HostingV1NodeJsStartBuildRequestAppTypeEnum = {
5841
+ CreateReactApp: 'create-react-app',
5842
+ Gatsby: 'gatsby',
5843
+ Vite: 'vite',
5844
+ Angular: 'angular',
5845
+ React: 'react',
5846
+ Vue: 'vue',
5847
+ Parcel: 'parcel',
5848
+ Next: 'next',
5849
+ Nuxt: 'nuxt',
5850
+ Nest: 'nest',
5851
+ Express: 'express',
5852
+ Fastify: 'fastify',
5853
+ Astro: 'astro',
5854
+ Svelte: 'svelte',
5855
+ SvelteKit: 'svelte-kit',
5856
+ Hono: 'hono',
5857
+ ReactRouter: 'react-router',
5858
+ Nitro: 'nitro',
5859
+ Other: 'other'
5860
+ } as const;
5861
+
5862
+ export type HostingV1NodeJsStartBuildRequestAppTypeEnum = typeof HostingV1NodeJsStartBuildRequestAppTypeEnum[keyof typeof HostingV1NodeJsStartBuildRequestAppTypeEnum];
5863
+ export const HostingV1NodeJsStartBuildRequestPackageManagerEnum = {
5864
+ Npm: 'npm',
5865
+ Yarn: 'yarn',
5866
+ Pnpm: 'pnpm'
5867
+ } as const;
5868
+
5869
+ export type HostingV1NodeJsStartBuildRequestPackageManagerEnum = typeof HostingV1NodeJsStartBuildRequestPackageManagerEnum[keyof typeof HostingV1NodeJsStartBuildRequestPackageManagerEnum];
5870
+ export const HostingV1NodeJsStartBuildRequestSourceTypeEnum = {
5871
+ Archive: 'archive'
5872
+ } as const;
5873
+
5874
+ export type HostingV1NodeJsStartBuildRequestSourceTypeEnum = typeof HostingV1NodeJsStartBuildRequestSourceTypeEnum[keyof typeof HostingV1NodeJsStartBuildRequestSourceTypeEnum];
5875
+
5876
+ /**
5877
+ * Source-specific options
5878
+ * @export
5879
+ * @interface HostingV1NodeJsStartBuildRequestSourceOptions
5880
+ */
5881
+ export interface HostingV1NodeJsStartBuildRequestSourceOptions {
5882
+ /**
5883
+ * The path to the archive file relative to the document root of the vhost (required if source is \"archive\")
5884
+ * @type {string}
5885
+ * @memberof HostingV1NodeJsStartBuildRequestSourceOptions
5886
+ */
5887
+ 'archive_path': string;
5888
+ }
5626
5889
  /**
5627
5890
  *
5628
5891
  * @export
@@ -6032,6 +6295,19 @@ export interface HostingV1WebsitesCreateWebsiteRequest {
6032
6295
  */
6033
6296
  'datacenter_code': string | null;
6034
6297
  }
6298
+ /**
6299
+ *
6300
+ * @export
6301
+ * @interface HostingV1WebsitesDeployArchiveRequest
6302
+ */
6303
+ export interface HostingV1WebsitesDeployArchiveRequest {
6304
+ /**
6305
+ * Relative path to the archive file from website root directory
6306
+ * @type {string}
6307
+ * @memberof HostingV1WebsitesDeployArchiveRequest
6308
+ */
6309
+ 'archive_path': string;
6310
+ }
6035
6311
  /**
6036
6312
  *
6037
6313
  * @export
@@ -12243,6 +12519,25 @@ export interface WordPressV1InstallationsDeleteInstallationRequest {
12243
12519
  */
12244
12520
  'delete_database': boolean;
12245
12521
  }
12522
+ /**
12523
+ *
12524
+ * @export
12525
+ * @interface WordPressV1InstallationsImportWordPressRequest
12526
+ */
12527
+ export interface WordPressV1InstallationsImportWordPressRequest {
12528
+ /**
12529
+ * Path to the WordPress archive file (relative to website root)
12530
+ * @type {string}
12531
+ * @memberof WordPressV1InstallationsImportWordPressRequest
12532
+ */
12533
+ 'archive_path': string;
12534
+ /**
12535
+ * Path to the database SQL file (relative to website root)
12536
+ * @type {string}
12537
+ * @memberof WordPressV1InstallationsImportWordPressRequest
12538
+ */
12539
+ 'sql_path': string;
12540
+ }
12246
12541
  /**
12247
12542
  *
12248
12543
  * @export
@@ -12811,6 +13106,25 @@ export interface WordPressV1PluginsDeactivatePluginRequest {
12811
13106
  */
12812
13107
  'plugin': string;
12813
13108
  }
13109
+ /**
13110
+ *
13111
+ * @export
13112
+ * @interface WordPressV1PluginsDeployPluginRequest
13113
+ */
13114
+ export interface WordPressV1PluginsDeployPluginRequest {
13115
+ /**
13116
+ * Slug of the plugin
13117
+ * @type {string}
13118
+ * @memberof WordPressV1PluginsDeployPluginRequest
13119
+ */
13120
+ 'slug': string;
13121
+ /**
13122
+ * Relative path to the plugin directory from wp-content/plugins
13123
+ * @type {string}
13124
+ * @memberof WordPressV1PluginsDeployPluginRequest
13125
+ */
13126
+ 'plugin_path': string;
13127
+ }
12814
13128
  /**
12815
13129
  *
12816
13130
  * @export
@@ -13106,6 +13420,31 @@ export interface WordPressV1ThemesActivateThemeRequest {
13106
13420
  */
13107
13421
  'theme': string;
13108
13422
  }
13423
+ /**
13424
+ *
13425
+ * @export
13426
+ * @interface WordPressV1ThemesDeployThemeRequest
13427
+ */
13428
+ export interface WordPressV1ThemesDeployThemeRequest {
13429
+ /**
13430
+ * Slug of the theme
13431
+ * @type {string}
13432
+ * @memberof WordPressV1ThemesDeployThemeRequest
13433
+ */
13434
+ 'slug': string;
13435
+ /**
13436
+ * Relative path to the theme directory from wp-content/themes
13437
+ * @type {string}
13438
+ * @memberof WordPressV1ThemesDeployThemeRequest
13439
+ */
13440
+ 'theme_path': string;
13441
+ /**
13442
+ * Whether to activate the theme after deployment
13443
+ * @type {boolean}
13444
+ * @memberof WordPressV1ThemesDeployThemeRequest
13445
+ */
13446
+ 'is_activated': boolean | null;
13447
+ }
13109
13448
  /**
13110
13449
  *
13111
13450
  * @export
@@ -14634,6 +14973,44 @@ export class AgencyHostingDomainsApi extends BaseAPI {
14634
14973
  */
14635
14974
  export const AgencyHostingFilesApiAxiosParamCreator = function (configuration?: Configuration) {
14636
14975
  return {
14976
+ /**
14977
+ * 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 ```
14978
+ * @summary Generate upload URL
14979
+ * @param {string} websiteUid Agency Plan website UID
14980
+ * @param {*} [options] Override http request option.
14981
+ * @throws {RequiredError}
14982
+ */
14983
+ generateUploadURLV1: async (websiteUid: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
14984
+ // verify required parameter 'websiteUid' is not null or undefined
14985
+ assertParamExists('generateUploadURLV1', 'websiteUid', websiteUid)
14986
+ const localVarPath = `/api/agency-hosting/v1/websites/{website_uid}/files/upload-urls`
14987
+ .replace(`{${"website_uid"}}`, encodeURIComponent(String(websiteUid)));
14988
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
14989
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
14990
+ let baseOptions;
14991
+ if (configuration) {
14992
+ baseOptions = configuration.baseOptions;
14993
+ }
14994
+
14995
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
14996
+ const localVarHeaderParameter = {} as any;
14997
+ const localVarQueryParameter = {} as any;
14998
+
14999
+ // authentication apiToken required
15000
+ // http bearer authentication required
15001
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
15002
+
15003
+
15004
+
15005
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
15006
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
15007
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
15008
+
15009
+ return {
15010
+ url: toPathString(localVarUrlObj),
15011
+ options: localVarRequestOptions,
15012
+ };
15013
+ },
14637
15014
  /**
14638
15015
  * 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.
14639
15016
  * @summary Import website from archive
@@ -14688,6 +15065,18 @@ export const AgencyHostingFilesApiAxiosParamCreator = function (configuration?:
14688
15065
  export const AgencyHostingFilesApiFp = function(configuration?: Configuration) {
14689
15066
  const localVarAxiosParamCreator = AgencyHostingFilesApiAxiosParamCreator(configuration)
14690
15067
  return {
15068
+ /**
15069
+ * 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 ```
15070
+ * @summary Generate upload URL
15071
+ * @param {string} websiteUid Agency Plan website UID
15072
+ * @param {*} [options] Override http request option.
15073
+ * @throws {RequiredError}
15074
+ */
15075
+ async generateUploadURLV1(websiteUid: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AgencyHostingV1FilesUploadUrlResource>> {
15076
+ const localVarAxiosArgs = await localVarAxiosParamCreator.generateUploadURLV1(websiteUid, options);
15077
+ const localVarOperationServerBasePath = operationServerMap['AgencyHostingFilesApi.generateUploadURLV1']?.[0]?.url;
15078
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
15079
+ },
14691
15080
  /**
14692
15081
  * 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.
14693
15082
  * @summary Import website from archive
@@ -14711,6 +15100,16 @@ export const AgencyHostingFilesApiFp = function(configuration?: Configuration) {
14711
15100
  export const AgencyHostingFilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
14712
15101
  const localVarFp = AgencyHostingFilesApiFp(configuration)
14713
15102
  return {
15103
+ /**
15104
+ * 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 ```
15105
+ * @summary Generate upload URL
15106
+ * @param {string} websiteUid Agency Plan website UID
15107
+ * @param {*} [options] Override http request option.
15108
+ * @throws {RequiredError}
15109
+ */
15110
+ generateUploadURLV1(websiteUid: string, options?: RawAxiosRequestConfig): AxiosPromise<AgencyHostingV1FilesUploadUrlResource> {
15111
+ return localVarFp.generateUploadURLV1(websiteUid, options).then((request) => request(axios, basePath));
15112
+ },
14714
15113
  /**
14715
15114
  * 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.
14716
15115
  * @summary Import website from archive
@@ -14732,6 +15131,18 @@ export const AgencyHostingFilesApiFactory = function (configuration?: Configurat
14732
15131
  * @extends {BaseAPI}
14733
15132
  */
14734
15133
  export class AgencyHostingFilesApi extends BaseAPI {
15134
+ /**
15135
+ * 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 ```
15136
+ * @summary Generate upload URL
15137
+ * @param {string} websiteUid Agency Plan website UID
15138
+ * @param {*} [options] Override http request option.
15139
+ * @throws {RequiredError}
15140
+ * @memberof AgencyHostingFilesApi
15141
+ */
15142
+ public generateUploadURLV1(websiteUid: string, options?: RawAxiosRequestConfig) {
15143
+ return AgencyHostingFilesApiFp(this.configuration).generateUploadURLV1(websiteUid, options).then((request) => request(this.axios, this.basePath));
15144
+ }
15145
+
14735
15146
  /**
14736
15147
  * 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.
14737
15148
  * @summary Import website from archive
@@ -24945,6 +25356,46 @@ export class HostingDomainsApi extends BaseAPI {
24945
25356
  */
24946
25357
  export const HostingFilesApiAxiosParamCreator = function (configuration?: Configuration) {
24947
25358
  return {
25359
+ /**
25360
+ * 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 ```
25361
+ * @summary Generate upload URL
25362
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
25363
+ * @param {*} [options] Override http request option.
25364
+ * @throws {RequiredError}
25365
+ */
25366
+ generateUploadURLV1: async (hostingV1FilesGenerateUploadUrlRequest: HostingV1FilesGenerateUploadUrlRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
25367
+ // verify required parameter 'hostingV1FilesGenerateUploadUrlRequest' is not null or undefined
25368
+ assertParamExists('generateUploadURLV1', 'hostingV1FilesGenerateUploadUrlRequest', hostingV1FilesGenerateUploadUrlRequest)
25369
+ const localVarPath = `/api/hosting/v1/files/upload-urls`;
25370
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
25371
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
25372
+ let baseOptions;
25373
+ if (configuration) {
25374
+ baseOptions = configuration.baseOptions;
25375
+ }
25376
+
25377
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
25378
+ const localVarHeaderParameter = {} as any;
25379
+ const localVarQueryParameter = {} as any;
25380
+
25381
+ // authentication apiToken required
25382
+ // http bearer authentication required
25383
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
25384
+
25385
+
25386
+
25387
+ localVarHeaderParameter['Content-Type'] = 'application/json';
25388
+
25389
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
25390
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
25391
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
25392
+ localVarRequestOptions.data = serializeDataIfNeeded(hostingV1FilesGenerateUploadUrlRequest, localVarRequestOptions, configuration)
25393
+
25394
+ return {
25395
+ url: toPathString(localVarUrlObj),
25396
+ options: localVarRequestOptions,
25397
+ };
25398
+ },
24948
25399
  /**
24949
25400
  * 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.
24950
25401
  * @summary Get website file content
@@ -25081,6 +25532,18 @@ export const HostingFilesApiAxiosParamCreator = function (configuration?: Config
25081
25532
  export const HostingFilesApiFp = function(configuration?: Configuration) {
25082
25533
  const localVarAxiosParamCreator = HostingFilesApiAxiosParamCreator(configuration)
25083
25534
  return {
25535
+ /**
25536
+ * 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 ```
25537
+ * @summary Generate upload URL
25538
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
25539
+ * @param {*} [options] Override http request option.
25540
+ * @throws {RequiredError}
25541
+ */
25542
+ async generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest: HostingV1FilesGenerateUploadUrlRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<HostingV1FilesUploadUrlResource>> {
25543
+ const localVarAxiosArgs = await localVarAxiosParamCreator.generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options);
25544
+ const localVarOperationServerBasePath = operationServerMap['HostingFilesApi.generateUploadURLV1']?.[0]?.url;
25545
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
25546
+ },
25084
25547
  /**
25085
25548
  * 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.
25086
25549
  * @summary Get website file content
@@ -25125,6 +25588,16 @@ export const HostingFilesApiFp = function(configuration?: Configuration) {
25125
25588
  export const HostingFilesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
25126
25589
  const localVarFp = HostingFilesApiFp(configuration)
25127
25590
  return {
25591
+ /**
25592
+ * 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 ```
25593
+ * @summary Generate upload URL
25594
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
25595
+ * @param {*} [options] Override http request option.
25596
+ * @throws {RequiredError}
25597
+ */
25598
+ generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest: HostingV1FilesGenerateUploadUrlRequest, options?: RawAxiosRequestConfig): AxiosPromise<HostingV1FilesUploadUrlResource> {
25599
+ return localVarFp.generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options).then((request) => request(axios, basePath));
25600
+ },
25128
25601
  /**
25129
25602
  * 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.
25130
25603
  * @summary Get website file content
@@ -25165,6 +25638,18 @@ export const HostingFilesApiFactory = function (configuration?: Configuration, b
25165
25638
  * @extends {BaseAPI}
25166
25639
  */
25167
25640
  export class HostingFilesApi extends BaseAPI {
25641
+ /**
25642
+ * 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 ```
25643
+ * @summary Generate upload URL
25644
+ * @param {HostingV1FilesGenerateUploadUrlRequest} hostingV1FilesGenerateUploadUrlRequest
25645
+ * @param {*} [options] Override http request option.
25646
+ * @throws {RequiredError}
25647
+ * @memberof HostingFilesApi
25648
+ */
25649
+ public generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest: HostingV1FilesGenerateUploadUrlRequest, options?: RawAxiosRequestConfig) {
25650
+ return HostingFilesApiFp(this.configuration).generateUploadURLV1(hostingV1FilesGenerateUploadUrlRequest, options).then((request) => request(this.axios, this.basePath));
25651
+ }
25652
+
25168
25653
  /**
25169
25654
  * 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.
25170
25655
  * @summary Get website file content
@@ -25219,7 +25704,7 @@ export type ListWebsiteFilesAndDirectoriesV1FileTypesEnum = typeof ListWebsiteFi
25219
25704
  export const HostingNodeJSApiAxiosParamCreator = function (configuration?: Configuration) {
25220
25705
  return {
25221
25706
  /**
25222
- * 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.
25707
+ * 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.
25223
25708
  * @summary Create NodeJS build from archive
25224
25709
  * @param {string} username
25225
25710
  * @param {string} domain Domain name
@@ -25308,6 +25793,55 @@ export const HostingNodeJSApiAxiosParamCreator = function (configuration?: Confi
25308
25793
 
25309
25794
 
25310
25795
 
25796
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
25797
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
25798
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
25799
+
25800
+ return {
25801
+ url: toPathString(localVarUrlObj),
25802
+ options: localVarRequestOptions,
25803
+ };
25804
+ },
25805
+ /**
25806
+ * 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.
25807
+ * @summary Get Node.js build settings from archive
25808
+ * @param {string} username
25809
+ * @param {string} domain Domain name
25810
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
25811
+ * @param {*} [options] Override http request option.
25812
+ * @throws {RequiredError}
25813
+ */
25814
+ getNodeJsBuildSettingsFromArchiveV1: async (username: string, domain: string, archivePath: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
25815
+ // verify required parameter 'username' is not null or undefined
25816
+ assertParamExists('getNodeJsBuildSettingsFromArchiveV1', 'username', username)
25817
+ // verify required parameter 'domain' is not null or undefined
25818
+ assertParamExists('getNodeJsBuildSettingsFromArchiveV1', 'domain', domain)
25819
+ // verify required parameter 'archivePath' is not null or undefined
25820
+ assertParamExists('getNodeJsBuildSettingsFromArchiveV1', 'archivePath', archivePath)
25821
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings/from-archive`
25822
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
25823
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
25824
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
25825
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
25826
+ let baseOptions;
25827
+ if (configuration) {
25828
+ baseOptions = configuration.baseOptions;
25829
+ }
25830
+
25831
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
25832
+ const localVarHeaderParameter = {} as any;
25833
+ const localVarQueryParameter = {} as any;
25834
+
25835
+ // authentication apiToken required
25836
+ // http bearer authentication required
25837
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
25838
+
25839
+ if (archivePath !== undefined) {
25840
+ localVarQueryParameter['archive_path'] = archivePath;
25841
+ }
25842
+
25843
+
25844
+
25311
25845
  setSearchParams(localVarUrlObj, localVarQueryParameter);
25312
25846
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
25313
25847
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
@@ -25506,6 +26040,54 @@ export const HostingNodeJSApiAxiosParamCreator = function (configuration?: Confi
25506
26040
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
25507
26041
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
25508
26042
 
26043
+ return {
26044
+ url: toPathString(localVarUrlObj),
26045
+ options: localVarRequestOptions,
26046
+ };
26047
+ },
26048
+ /**
26049
+ * 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.
26050
+ * @summary Start Node.js build
26051
+ * @param {string} username
26052
+ * @param {string} domain Domain name
26053
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
26054
+ * @param {*} [options] Override http request option.
26055
+ * @throws {RequiredError}
26056
+ */
26057
+ startNodeJsBuildV1: async (username: string, domain: string, hostingV1NodeJsStartBuildRequest: HostingV1NodeJsStartBuildRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
26058
+ // verify required parameter 'username' is not null or undefined
26059
+ assertParamExists('startNodeJsBuildV1', 'username', username)
26060
+ // verify required parameter 'domain' is not null or undefined
26061
+ assertParamExists('startNodeJsBuildV1', 'domain', domain)
26062
+ // verify required parameter 'hostingV1NodeJsStartBuildRequest' is not null or undefined
26063
+ assertParamExists('startNodeJsBuildV1', 'hostingV1NodeJsStartBuildRequest', hostingV1NodeJsStartBuildRequest)
26064
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds`
26065
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
26066
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
26067
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
26068
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
26069
+ let baseOptions;
26070
+ if (configuration) {
26071
+ baseOptions = configuration.baseOptions;
26072
+ }
26073
+
26074
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
26075
+ const localVarHeaderParameter = {} as any;
26076
+ const localVarQueryParameter = {} as any;
26077
+
26078
+ // authentication apiToken required
26079
+ // http bearer authentication required
26080
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
26081
+
26082
+
26083
+
26084
+ localVarHeaderParameter['Content-Type'] = 'application/json';
26085
+
26086
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
26087
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
26088
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
26089
+ localVarRequestOptions.data = serializeDataIfNeeded(hostingV1NodeJsStartBuildRequest, localVarRequestOptions, configuration)
26090
+
25509
26091
  return {
25510
26092
  url: toPathString(localVarUrlObj),
25511
26093
  options: localVarRequestOptions,
@@ -25522,7 +26104,7 @@ export const HostingNodeJSApiFp = function(configuration?: Configuration) {
25522
26104
  const localVarAxiosParamCreator = HostingNodeJSApiAxiosParamCreator(configuration)
25523
26105
  return {
25524
26106
  /**
25525
- * 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.
26107
+ * 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.
25526
26108
  * @summary Create NodeJS build from archive
25527
26109
  * @param {string} username
25528
26110
  * @param {string} domain Domain name
@@ -25550,6 +26132,20 @@ export const HostingNodeJSApiFp = function(configuration?: Configuration) {
25550
26132
  const localVarOperationServerBasePath = operationServerMap['HostingNodeJSApi.getNodeJSBuildLogsV1']?.[0]?.url;
25551
26133
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
25552
26134
  },
26135
+ /**
26136
+ * 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.
26137
+ * @summary Get Node.js build settings from archive
26138
+ * @param {string} username
26139
+ * @param {string} domain Domain name
26140
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
26141
+ * @param {*} [options] Override http request option.
26142
+ * @throws {RequiredError}
26143
+ */
26144
+ async getNodeJsBuildSettingsFromArchiveV1(username: string, domain: string, archivePath: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<HostingV1NodeJsBuildSettingsResource>> {
26145
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options);
26146
+ const localVarOperationServerBasePath = operationServerMap['HostingNodeJSApi.getNodeJsBuildSettingsFromArchiveV1']?.[0]?.url;
26147
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
26148
+ },
25553
26149
  /**
25554
26150
  * 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.
25555
26151
  * @summary List NodeJS builds
@@ -25607,6 +26203,20 @@ export const HostingNodeJSApiFp = function(configuration?: Configuration) {
25607
26203
  const localVarOperationServerBasePath = operationServerMap['HostingNodeJSApi.restartNodeJsApplicationV1']?.[0]?.url;
25608
26204
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
25609
26205
  },
26206
+ /**
26207
+ * 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.
26208
+ * @summary Start Node.js build
26209
+ * @param {string} username
26210
+ * @param {string} domain Domain name
26211
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
26212
+ * @param {*} [options] Override http request option.
26213
+ * @throws {RequiredError}
26214
+ */
26215
+ async startNodeJsBuildV1(username: string, domain: string, hostingV1NodeJsStartBuildRequest: HostingV1NodeJsStartBuildRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<HostingV1NodeJsBuildResource>> {
26216
+ const localVarAxiosArgs = await localVarAxiosParamCreator.startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options);
26217
+ const localVarOperationServerBasePath = operationServerMap['HostingNodeJSApi.startNodeJsBuildV1']?.[0]?.url;
26218
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
26219
+ },
25610
26220
  }
25611
26221
  };
25612
26222
 
@@ -25618,7 +26228,7 @@ export const HostingNodeJSApiFactory = function (configuration?: Configuration,
25618
26228
  const localVarFp = HostingNodeJSApiFp(configuration)
25619
26229
  return {
25620
26230
  /**
25621
- * 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.
26231
+ * 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.
25622
26232
  * @summary Create NodeJS build from archive
25623
26233
  * @param {string} username
25624
26234
  * @param {string} domain Domain name
@@ -25642,6 +26252,18 @@ export const HostingNodeJSApiFactory = function (configuration?: Configuration,
25642
26252
  getNodeJSBuildLogsV1(username: string, domain: string, uuid: string, fromLine?: number | null, options?: RawAxiosRequestConfig): AxiosPromise<HostingV1NodeJsBuildLogsResource> {
25643
26253
  return localVarFp.getNodeJSBuildLogsV1(username, domain, uuid, fromLine, options).then((request) => request(axios, basePath));
25644
26254
  },
26255
+ /**
26256
+ * 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.
26257
+ * @summary Get Node.js build settings from archive
26258
+ * @param {string} username
26259
+ * @param {string} domain Domain name
26260
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
26261
+ * @param {*} [options] Override http request option.
26262
+ * @throws {RequiredError}
26263
+ */
26264
+ getNodeJsBuildSettingsFromArchiveV1(username: string, domain: string, archivePath: string, options?: RawAxiosRequestConfig): AxiosPromise<HostingV1NodeJsBuildSettingsResource> {
26265
+ return localVarFp.getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options).then((request) => request(axios, basePath));
26266
+ },
25645
26267
  /**
25646
26268
  * 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.
25647
26269
  * @summary List NodeJS builds
@@ -25691,6 +26313,18 @@ export const HostingNodeJSApiFactory = function (configuration?: Configuration,
25691
26313
  restartNodeJsApplicationV1(username: string, domain: string, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
25692
26314
  return localVarFp.restartNodeJsApplicationV1(username, domain, options).then((request) => request(axios, basePath));
25693
26315
  },
26316
+ /**
26317
+ * 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.
26318
+ * @summary Start Node.js build
26319
+ * @param {string} username
26320
+ * @param {string} domain Domain name
26321
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
26322
+ * @param {*} [options] Override http request option.
26323
+ * @throws {RequiredError}
26324
+ */
26325
+ startNodeJsBuildV1(username: string, domain: string, hostingV1NodeJsStartBuildRequest: HostingV1NodeJsStartBuildRequest, options?: RawAxiosRequestConfig): AxiosPromise<HostingV1NodeJsBuildResource> {
26326
+ return localVarFp.startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options).then((request) => request(axios, basePath));
26327
+ },
25694
26328
  };
25695
26329
  };
25696
26330
 
@@ -25702,7 +26336,7 @@ export const HostingNodeJSApiFactory = function (configuration?: Configuration,
25702
26336
  */
25703
26337
  export class HostingNodeJSApi extends BaseAPI {
25704
26338
  /**
25705
- * 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.
26339
+ * 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.
25706
26340
  * @summary Create NodeJS build from archive
25707
26341
  * @param {string} username
25708
26342
  * @param {string} domain Domain name
@@ -25730,6 +26364,20 @@ export class HostingNodeJSApi extends BaseAPI {
25730
26364
  return HostingNodeJSApiFp(this.configuration).getNodeJSBuildLogsV1(username, domain, uuid, fromLine, options).then((request) => request(this.axios, this.basePath));
25731
26365
  }
25732
26366
 
26367
+ /**
26368
+ * 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.
26369
+ * @summary Get Node.js build settings from archive
26370
+ * @param {string} username
26371
+ * @param {string} domain Domain name
26372
+ * @param {string} archivePath The path to the archive file relative to the document root of the vhost
26373
+ * @param {*} [options] Override http request option.
26374
+ * @throws {RequiredError}
26375
+ * @memberof HostingNodeJSApi
26376
+ */
26377
+ public getNodeJsBuildSettingsFromArchiveV1(username: string, domain: string, archivePath: string, options?: RawAxiosRequestConfig) {
26378
+ return HostingNodeJSApiFp(this.configuration).getNodeJsBuildSettingsFromArchiveV1(username, domain, archivePath, options).then((request) => request(this.axios, this.basePath));
26379
+ }
26380
+
25733
26381
  /**
25734
26382
  * 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.
25735
26383
  * @summary List NodeJS builds
@@ -25786,6 +26434,20 @@ export class HostingNodeJSApi extends BaseAPI {
25786
26434
  public restartNodeJsApplicationV1(username: string, domain: string, options?: RawAxiosRequestConfig) {
25787
26435
  return HostingNodeJSApiFp(this.configuration).restartNodeJsApplicationV1(username, domain, options).then((request) => request(this.axios, this.basePath));
25788
26436
  }
26437
+
26438
+ /**
26439
+ * 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.
26440
+ * @summary Start Node.js build
26441
+ * @param {string} username
26442
+ * @param {string} domain Domain name
26443
+ * @param {HostingV1NodeJsStartBuildRequest} hostingV1NodeJsStartBuildRequest
26444
+ * @param {*} [options] Override http request option.
26445
+ * @throws {RequiredError}
26446
+ * @memberof HostingNodeJSApi
26447
+ */
26448
+ public startNodeJsBuildV1(username: string, domain: string, hostingV1NodeJsStartBuildRequest: HostingV1NodeJsStartBuildRequest, options?: RawAxiosRequestConfig) {
26449
+ return HostingNodeJSApiFp(this.configuration).startNodeJsBuildV1(username, domain, hostingV1NodeJsStartBuildRequest, options).then((request) => request(this.axios, this.basePath));
26450
+ }
25789
26451
  }
25790
26452
 
25791
26453
  /**
@@ -26892,6 +27554,54 @@ export const HostingWebsitesApiAxiosParamCreator = function (configuration?: Con
26892
27554
  options: localVarRequestOptions,
26893
27555
  };
26894
27556
  },
27557
+ /**
27558
+ * 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`.
27559
+ * @summary Deploy static site archive
27560
+ * @param {string} username
27561
+ * @param {string} domain Domain name
27562
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
27563
+ * @param {*} [options] Override http request option.
27564
+ * @throws {RequiredError}
27565
+ */
27566
+ deployStaticSiteArchiveV1: async (username: string, domain: string, hostingV1WebsitesDeployArchiveRequest: HostingV1WebsitesDeployArchiveRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
27567
+ // verify required parameter 'username' is not null or undefined
27568
+ assertParamExists('deployStaticSiteArchiveV1', 'username', username)
27569
+ // verify required parameter 'domain' is not null or undefined
27570
+ assertParamExists('deployStaticSiteArchiveV1', 'domain', domain)
27571
+ // verify required parameter 'hostingV1WebsitesDeployArchiveRequest' is not null or undefined
27572
+ assertParamExists('deployStaticSiteArchiveV1', 'hostingV1WebsitesDeployArchiveRequest', hostingV1WebsitesDeployArchiveRequest)
27573
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/deploy`
27574
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
27575
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
27576
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
27577
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
27578
+ let baseOptions;
27579
+ if (configuration) {
27580
+ baseOptions = configuration.baseOptions;
27581
+ }
27582
+
27583
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
27584
+ const localVarHeaderParameter = {} as any;
27585
+ const localVarQueryParameter = {} as any;
27586
+
27587
+ // authentication apiToken required
27588
+ // http bearer authentication required
27589
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
27590
+
27591
+
27592
+
27593
+ localVarHeaderParameter['Content-Type'] = 'application/json';
27594
+
27595
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
27596
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
27597
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
27598
+ localVarRequestOptions.data = serializeDataIfNeeded(hostingV1WebsitesDeployArchiveRequest, localVarRequestOptions, configuration)
27599
+
27600
+ return {
27601
+ url: toPathString(localVarUrlObj),
27602
+ options: localVarRequestOptions,
27603
+ };
27604
+ },
26895
27605
  /**
26896
27606
  * 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.
26897
27607
  * @summary List websites
@@ -26990,6 +27700,20 @@ export const HostingWebsitesApiFp = function(configuration?: Configuration) {
26990
27700
  const localVarOperationServerBasePath = operationServerMap['HostingWebsitesApi.deleteWebsiteV1']?.[0]?.url;
26991
27701
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
26992
27702
  },
27703
+ /**
27704
+ * 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`.
27705
+ * @summary Deploy static site archive
27706
+ * @param {string} username
27707
+ * @param {string} domain Domain name
27708
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
27709
+ * @param {*} [options] Override http request option.
27710
+ * @throws {RequiredError}
27711
+ */
27712
+ async deployStaticSiteArchiveV1(username: string, domain: string, hostingV1WebsitesDeployArchiveRequest: HostingV1WebsitesDeployArchiveRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CommonSuccessEmptyResource>> {
27713
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options);
27714
+ const localVarOperationServerBasePath = operationServerMap['HostingWebsitesApi.deployStaticSiteArchiveV1']?.[0]?.url;
27715
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
27716
+ },
26993
27717
  /**
26994
27718
  * 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.
26995
27719
  * @summary List websites
@@ -27037,6 +27761,18 @@ export const HostingWebsitesApiFactory = function (configuration?: Configuration
27037
27761
  deleteWebsiteV1(domain: string, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
27038
27762
  return localVarFp.deleteWebsiteV1(domain, options).then((request) => request(axios, basePath));
27039
27763
  },
27764
+ /**
27765
+ * 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`.
27766
+ * @summary Deploy static site archive
27767
+ * @param {string} username
27768
+ * @param {string} domain Domain name
27769
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
27770
+ * @param {*} [options] Override http request option.
27771
+ * @throws {RequiredError}
27772
+ */
27773
+ deployStaticSiteArchiveV1(username: string, domain: string, hostingV1WebsitesDeployArchiveRequest: HostingV1WebsitesDeployArchiveRequest, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
27774
+ return localVarFp.deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options).then((request) => request(axios, basePath));
27775
+ },
27040
27776
  /**
27041
27777
  * 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.
27042
27778
  * @summary List websites
@@ -27086,6 +27822,20 @@ export class HostingWebsitesApi extends BaseAPI {
27086
27822
  return HostingWebsitesApiFp(this.configuration).deleteWebsiteV1(domain, options).then((request) => request(this.axios, this.basePath));
27087
27823
  }
27088
27824
 
27825
+ /**
27826
+ * 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`.
27827
+ * @summary Deploy static site archive
27828
+ * @param {string} username
27829
+ * @param {string} domain Domain name
27830
+ * @param {HostingV1WebsitesDeployArchiveRequest} hostingV1WebsitesDeployArchiveRequest
27831
+ * @param {*} [options] Override http request option.
27832
+ * @throws {RequiredError}
27833
+ * @memberof HostingWebsitesApi
27834
+ */
27835
+ public deployStaticSiteArchiveV1(username: string, domain: string, hostingV1WebsitesDeployArchiveRequest: HostingV1WebsitesDeployArchiveRequest, options?: RawAxiosRequestConfig) {
27836
+ return HostingWebsitesApiFp(this.configuration).deployStaticSiteArchiveV1(username, domain, hostingV1WebsitesDeployArchiveRequest, options).then((request) => request(this.axios, this.basePath));
27837
+ }
27838
+
27089
27839
  /**
27090
27840
  * 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.
27091
27841
  * @summary List websites
@@ -40696,6 +41446,54 @@ export const WordPressInstallationsApiAxiosParamCreator = function (configuratio
40696
41446
  options: localVarRequestOptions,
40697
41447
  };
40698
41448
  },
41449
+ /**
41450
+ * 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.
41451
+ * @summary Import WordPress website
41452
+ * @param {string} username
41453
+ * @param {string} domain Domain name
41454
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
41455
+ * @param {*} [options] Override http request option.
41456
+ * @throws {RequiredError}
41457
+ */
41458
+ importWordPressWebsiteV1: async (username: string, domain: string, wordPressV1InstallationsImportWordPressRequest: WordPressV1InstallationsImportWordPressRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
41459
+ // verify required parameter 'username' is not null or undefined
41460
+ assertParamExists('importWordPressWebsiteV1', 'username', username)
41461
+ // verify required parameter 'domain' is not null or undefined
41462
+ assertParamExists('importWordPressWebsiteV1', 'domain', domain)
41463
+ // verify required parameter 'wordPressV1InstallationsImportWordPressRequest' is not null or undefined
41464
+ assertParamExists('importWordPressWebsiteV1', 'wordPressV1InstallationsImportWordPressRequest', wordPressV1InstallationsImportWordPressRequest)
41465
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/import`
41466
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
41467
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
41468
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41469
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41470
+ let baseOptions;
41471
+ if (configuration) {
41472
+ baseOptions = configuration.baseOptions;
41473
+ }
41474
+
41475
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41476
+ const localVarHeaderParameter = {} as any;
41477
+ const localVarQueryParameter = {} as any;
41478
+
41479
+ // authentication apiToken required
41480
+ // http bearer authentication required
41481
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
41482
+
41483
+
41484
+
41485
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41486
+
41487
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41488
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41489
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41490
+ localVarRequestOptions.data = serializeDataIfNeeded(wordPressV1InstallationsImportWordPressRequest, localVarRequestOptions, configuration)
41491
+
41492
+ return {
41493
+ url: toPathString(localVarUrlObj),
41494
+ options: localVarRequestOptions,
41495
+ };
41496
+ },
40699
41497
  /**
40700
41498
  * 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.
40701
41499
  * @summary Install WordPress
@@ -40983,6 +41781,20 @@ export const WordPressInstallationsApiFp = function(configuration?: Configuratio
40983
41781
  const localVarOperationServerBasePath = operationServerMap['WordPressInstallationsApi.getInstallationJWTTokenV1']?.[0]?.url;
40984
41782
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
40985
41783
  },
41784
+ /**
41785
+ * 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.
41786
+ * @summary Import WordPress website
41787
+ * @param {string} username
41788
+ * @param {string} domain Domain name
41789
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
41790
+ * @param {*} [options] Override http request option.
41791
+ * @throws {RequiredError}
41792
+ */
41793
+ async importWordPressWebsiteV1(username: string, domain: string, wordPressV1InstallationsImportWordPressRequest: WordPressV1InstallationsImportWordPressRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CommonSuccessEmptyResource>> {
41794
+ const localVarAxiosArgs = await localVarAxiosParamCreator.importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options);
41795
+ const localVarOperationServerBasePath = operationServerMap['WordPressInstallationsApi.importWordPressWebsiteV1']?.[0]?.url;
41796
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
41797
+ },
40986
41798
  /**
40987
41799
  * 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.
40988
41800
  * @summary Install WordPress
@@ -41104,6 +41916,18 @@ export const WordPressInstallationsApiFactory = function (configuration?: Config
41104
41916
  getInstallationJWTTokenV1(username: string, software: string, options?: RawAxiosRequestConfig): AxiosPromise<WordPressV1InstallationsJwtTokenResource> {
41105
41917
  return localVarFp.getInstallationJWTTokenV1(username, software, options).then((request) => request(axios, basePath));
41106
41918
  },
41919
+ /**
41920
+ * 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.
41921
+ * @summary Import WordPress website
41922
+ * @param {string} username
41923
+ * @param {string} domain Domain name
41924
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
41925
+ * @param {*} [options] Override http request option.
41926
+ * @throws {RequiredError}
41927
+ */
41928
+ importWordPressWebsiteV1(username: string, domain: string, wordPressV1InstallationsImportWordPressRequest: WordPressV1InstallationsImportWordPressRequest, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
41929
+ return localVarFp.importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options).then((request) => request(axios, basePath));
41930
+ },
41107
41931
  /**
41108
41932
  * 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.
41109
41933
  * @summary Install WordPress
@@ -41223,6 +42047,20 @@ export class WordPressInstallationsApi extends BaseAPI {
41223
42047
  return WordPressInstallationsApiFp(this.configuration).getInstallationJWTTokenV1(username, software, options).then((request) => request(this.axios, this.basePath));
41224
42048
  }
41225
42049
 
42050
+ /**
42051
+ * 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.
42052
+ * @summary Import WordPress website
42053
+ * @param {string} username
42054
+ * @param {string} domain Domain name
42055
+ * @param {WordPressV1InstallationsImportWordPressRequest} wordPressV1InstallationsImportWordPressRequest
42056
+ * @param {*} [options] Override http request option.
42057
+ * @throws {RequiredError}
42058
+ * @memberof WordPressInstallationsApi
42059
+ */
42060
+ public importWordPressWebsiteV1(username: string, domain: string, wordPressV1InstallationsImportWordPressRequest: WordPressV1InstallationsImportWordPressRequest, options?: RawAxiosRequestConfig) {
42061
+ return WordPressInstallationsApiFp(this.configuration).importWordPressWebsiteV1(username, domain, wordPressV1InstallationsImportWordPressRequest, options).then((request) => request(this.axios, this.basePath));
42062
+ }
42063
+
41226
42064
  /**
41227
42065
  * 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.
41228
42066
  * @summary Install WordPress
@@ -42170,6 +43008,54 @@ export const WordPressPluginsApiAxiosParamCreator = function (configuration?: Co
42170
43008
  options: localVarRequestOptions,
42171
43009
  };
42172
43010
  },
43011
+ /**
43012
+ * 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.
43013
+ * @summary Deploy WordPress plugin
43014
+ * @param {string} username
43015
+ * @param {string} domain Domain name
43016
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
43017
+ * @param {*} [options] Override http request option.
43018
+ * @throws {RequiredError}
43019
+ */
43020
+ deployWordPressPluginV1: async (username: string, domain: string, wordPressV1PluginsDeployPluginRequest: WordPressV1PluginsDeployPluginRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
43021
+ // verify required parameter 'username' is not null or undefined
43022
+ assertParamExists('deployWordPressPluginV1', 'username', username)
43023
+ // verify required parameter 'domain' is not null or undefined
43024
+ assertParamExists('deployWordPressPluginV1', 'domain', domain)
43025
+ // verify required parameter 'wordPressV1PluginsDeployPluginRequest' is not null or undefined
43026
+ assertParamExists('deployWordPressPluginV1', 'wordPressV1PluginsDeployPluginRequest', wordPressV1PluginsDeployPluginRequest)
43027
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/plugins/deploy`
43028
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
43029
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
43030
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
43031
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
43032
+ let baseOptions;
43033
+ if (configuration) {
43034
+ baseOptions = configuration.baseOptions;
43035
+ }
43036
+
43037
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
43038
+ const localVarHeaderParameter = {} as any;
43039
+ const localVarQueryParameter = {} as any;
43040
+
43041
+ // authentication apiToken required
43042
+ // http bearer authentication required
43043
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
43044
+
43045
+
43046
+
43047
+ localVarHeaderParameter['Content-Type'] = 'application/json';
43048
+
43049
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
43050
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
43051
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
43052
+ localVarRequestOptions.data = serializeDataIfNeeded(wordPressV1PluginsDeployPluginRequest, localVarRequestOptions, configuration)
43053
+
43054
+ return {
43055
+ url: toPathString(localVarUrlObj),
43056
+ options: localVarRequestOptions,
43057
+ };
43058
+ },
42173
43059
  /**
42174
43060
  * 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.
42175
43061
  * @summary Install WordPress plugins
@@ -42581,6 +43467,20 @@ export const WordPressPluginsApiFp = function(configuration?: Configuration) {
42581
43467
  const localVarOperationServerBasePath = operationServerMap['WordPressPluginsApi.deactivateWordPressPluginV1']?.[0]?.url;
42582
43468
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
42583
43469
  },
43470
+ /**
43471
+ * 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.
43472
+ * @summary Deploy WordPress plugin
43473
+ * @param {string} username
43474
+ * @param {string} domain Domain name
43475
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
43476
+ * @param {*} [options] Override http request option.
43477
+ * @throws {RequiredError}
43478
+ */
43479
+ async deployWordPressPluginV1(username: string, domain: string, wordPressV1PluginsDeployPluginRequest: WordPressV1PluginsDeployPluginRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CommonSuccessEmptyResource>> {
43480
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options);
43481
+ const localVarOperationServerBasePath = operationServerMap['WordPressPluginsApi.deployWordPressPluginV1']?.[0]?.url;
43482
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
43483
+ },
42584
43484
  /**
42585
43485
  * 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.
42586
43486
  * @summary Install WordPress plugins
@@ -42732,6 +43632,18 @@ export const WordPressPluginsApiFactory = function (configuration?: Configuratio
42732
43632
  deactivateWordPressPluginV1(username: string, software: string, wordPressV1PluginsDeactivatePluginRequest: WordPressV1PluginsDeactivatePluginRequest, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
42733
43633
  return localVarFp.deactivateWordPressPluginV1(username, software, wordPressV1PluginsDeactivatePluginRequest, options).then((request) => request(axios, basePath));
42734
43634
  },
43635
+ /**
43636
+ * 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.
43637
+ * @summary Deploy WordPress plugin
43638
+ * @param {string} username
43639
+ * @param {string} domain Domain name
43640
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
43641
+ * @param {*} [options] Override http request option.
43642
+ * @throws {RequiredError}
43643
+ */
43644
+ deployWordPressPluginV1(username: string, domain: string, wordPressV1PluginsDeployPluginRequest: WordPressV1PluginsDeployPluginRequest, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
43645
+ return localVarFp.deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options).then((request) => request(axios, basePath));
43646
+ },
42735
43647
  /**
42736
43648
  * 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.
42737
43649
  * @summary Install WordPress plugins
@@ -42873,6 +43785,20 @@ export class WordPressPluginsApi extends BaseAPI {
42873
43785
  return WordPressPluginsApiFp(this.configuration).deactivateWordPressPluginV1(username, software, wordPressV1PluginsDeactivatePluginRequest, options).then((request) => request(this.axios, this.basePath));
42874
43786
  }
42875
43787
 
43788
+ /**
43789
+ * 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.
43790
+ * @summary Deploy WordPress plugin
43791
+ * @param {string} username
43792
+ * @param {string} domain Domain name
43793
+ * @param {WordPressV1PluginsDeployPluginRequest} wordPressV1PluginsDeployPluginRequest
43794
+ * @param {*} [options] Override http request option.
43795
+ * @throws {RequiredError}
43796
+ * @memberof WordPressPluginsApi
43797
+ */
43798
+ public deployWordPressPluginV1(username: string, domain: string, wordPressV1PluginsDeployPluginRequest: WordPressV1PluginsDeployPluginRequest, options?: RawAxiosRequestConfig) {
43799
+ return WordPressPluginsApiFp(this.configuration).deployWordPressPluginV1(username, domain, wordPressV1PluginsDeployPluginRequest, options).then((request) => request(this.axios, this.basePath));
43800
+ }
43801
+
42876
43802
  /**
42877
43803
  * 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.
42878
43804
  * @summary Install WordPress plugins
@@ -43044,6 +43970,54 @@ export const WordPressThemesApiAxiosParamCreator = function (configuration?: Con
43044
43970
  options: localVarRequestOptions,
43045
43971
  };
43046
43972
  },
43973
+ /**
43974
+ * 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.
43975
+ * @summary Deploy WordPress theme
43976
+ * @param {string} username
43977
+ * @param {string} domain Domain name
43978
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
43979
+ * @param {*} [options] Override http request option.
43980
+ * @throws {RequiredError}
43981
+ */
43982
+ deployWordPressThemeV1: async (username: string, domain: string, wordPressV1ThemesDeployThemeRequest: WordPressV1ThemesDeployThemeRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
43983
+ // verify required parameter 'username' is not null or undefined
43984
+ assertParamExists('deployWordPressThemeV1', 'username', username)
43985
+ // verify required parameter 'domain' is not null or undefined
43986
+ assertParamExists('deployWordPressThemeV1', 'domain', domain)
43987
+ // verify required parameter 'wordPressV1ThemesDeployThemeRequest' is not null or undefined
43988
+ assertParamExists('deployWordPressThemeV1', 'wordPressV1ThemesDeployThemeRequest', wordPressV1ThemesDeployThemeRequest)
43989
+ const localVarPath = `/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/themes/deploy`
43990
+ .replace(`{${"username"}}`, encodeURIComponent(String(username)))
43991
+ .replace(`{${"domain"}}`, encodeURIComponent(String(domain)));
43992
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
43993
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
43994
+ let baseOptions;
43995
+ if (configuration) {
43996
+ baseOptions = configuration.baseOptions;
43997
+ }
43998
+
43999
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
44000
+ const localVarHeaderParameter = {} as any;
44001
+ const localVarQueryParameter = {} as any;
44002
+
44003
+ // authentication apiToken required
44004
+ // http bearer authentication required
44005
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
44006
+
44007
+
44008
+
44009
+ localVarHeaderParameter['Content-Type'] = 'application/json';
44010
+
44011
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
44012
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
44013
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
44014
+ localVarRequestOptions.data = serializeDataIfNeeded(wordPressV1ThemesDeployThemeRequest, localVarRequestOptions, configuration)
44015
+
44016
+ return {
44017
+ url: toPathString(localVarUrlObj),
44018
+ options: localVarRequestOptions,
44019
+ };
44020
+ },
43047
44021
  /**
43048
44022
  * 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.
43049
44023
  * @summary Install WordPress theme
@@ -43298,6 +44272,20 @@ export const WordPressThemesApiFp = function(configuration?: Configuration) {
43298
44272
  const localVarOperationServerBasePath = operationServerMap['WordPressThemesApi.activateWordPressThemeV1']?.[0]?.url;
43299
44273
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
43300
44274
  },
44275
+ /**
44276
+ * 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.
44277
+ * @summary Deploy WordPress theme
44278
+ * @param {string} username
44279
+ * @param {string} domain Domain name
44280
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
44281
+ * @param {*} [options] Override http request option.
44282
+ * @throws {RequiredError}
44283
+ */
44284
+ async deployWordPressThemeV1(username: string, domain: string, wordPressV1ThemesDeployThemeRequest: WordPressV1ThemesDeployThemeRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CommonSuccessEmptyResource>> {
44285
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options);
44286
+ const localVarOperationServerBasePath = operationServerMap['WordPressThemesApi.deployWordPressThemeV1']?.[0]?.url;
44287
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
44288
+ },
43301
44289
  /**
43302
44290
  * 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.
43303
44291
  * @summary Install WordPress theme
@@ -43388,6 +44376,18 @@ export const WordPressThemesApiFactory = function (configuration?: Configuration
43388
44376
  activateWordPressThemeV1(username: string, software: string, wordPressV1ThemesActivateThemeRequest: WordPressV1ThemesActivateThemeRequest, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
43389
44377
  return localVarFp.activateWordPressThemeV1(username, software, wordPressV1ThemesActivateThemeRequest, options).then((request) => request(axios, basePath));
43390
44378
  },
44379
+ /**
44380
+ * 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.
44381
+ * @summary Deploy WordPress theme
44382
+ * @param {string} username
44383
+ * @param {string} domain Domain name
44384
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
44385
+ * @param {*} [options] Override http request option.
44386
+ * @throws {RequiredError}
44387
+ */
44388
+ deployWordPressThemeV1(username: string, domain: string, wordPressV1ThemesDeployThemeRequest: WordPressV1ThemesDeployThemeRequest, options?: RawAxiosRequestConfig): AxiosPromise<CommonSuccessEmptyResource> {
44389
+ return localVarFp.deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options).then((request) => request(axios, basePath));
44390
+ },
43391
44391
  /**
43392
44392
  * 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.
43393
44393
  * @summary Install WordPress theme
@@ -43470,6 +44470,20 @@ export class WordPressThemesApi extends BaseAPI {
43470
44470
  return WordPressThemesApiFp(this.configuration).activateWordPressThemeV1(username, software, wordPressV1ThemesActivateThemeRequest, options).then((request) => request(this.axios, this.basePath));
43471
44471
  }
43472
44472
 
44473
+ /**
44474
+ * 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.
44475
+ * @summary Deploy WordPress theme
44476
+ * @param {string} username
44477
+ * @param {string} domain Domain name
44478
+ * @param {WordPressV1ThemesDeployThemeRequest} wordPressV1ThemesDeployThemeRequest
44479
+ * @param {*} [options] Override http request option.
44480
+ * @throws {RequiredError}
44481
+ * @memberof WordPressThemesApi
44482
+ */
44483
+ public deployWordPressThemeV1(username: string, domain: string, wordPressV1ThemesDeployThemeRequest: WordPressV1ThemesDeployThemeRequest, options?: RawAxiosRequestConfig) {
44484
+ return WordPressThemesApiFp(this.configuration).deployWordPressThemeV1(username, domain, wordPressV1ThemesDeployThemeRequest, options).then((request) => request(this.axios, this.basePath));
44485
+ }
44486
+
43473
44487
  /**
43474
44488
  * 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.
43475
44489
  * @summary Install WordPress theme