hostinger-api-mcp 1.60.1 → 1.60.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,24 @@ Generated at release time from the diff between the previous and current
4
4
  build. Tool changes are listed individually; everything else is summarised
5
5
  by area.
6
6
 
7
+ ## v1.60.2 — 2026-09-16
8
+
9
+ ### Tools
10
+
11
+ - Added `hosting_getGitAutoDeploymentSettingsV1` — Get Git auto-deployment settings
12
+ - Added `hosting_updateGitAutoDeploymentSettingsV1` — Update Git auto-deployment settings
13
+ - Added `hosting_deleteGitAutoDeploymentSettingsV1` — Delete Git auto-deployment settings
14
+ - Changed the description of `hosting_listGitInstallationsV1`
15
+ - Changed the description of `hosting_listGitInstallationRepositoriesV1`
16
+ - Changed the description and input schema of `hosting_startNode_jsBuildV1`
17
+
18
+ ### Also in this release
19
+
20
+ - Documentation: `README.md`
21
+ - Dependencies: `package-lock.json`
22
+ - Request handling and authentication: `src/core/runtime.js`, `src/core/runtime.ts`
23
+ - Build and packaging: `types.d.ts`
24
+
7
25
  ## v1.60.1 — 2026-09-15
8
26
 
9
27
  ### Tools
package/README.md CHANGED
@@ -69,14 +69,14 @@ pnpm update -g @hostinger/mcp
69
69
 
70
70
  This package installs the following MCP server commands:
71
71
 
72
- - `hostinger-api-mcp` — unified server with every tool (389 total)
72
+ - `hostinger-api-mcp` — unified server with every tool (392 total)
73
73
  - `hostinger-agency-hosting-mcp` — 38 tools for agency-hosting
74
74
  - `hostinger-billing-mcp` — 9 tools for billing
75
75
  - `hostinger-dns-mcp` — 8 tools for dns
76
76
  - `hostinger-domains-mcp` — 41 tools for domains
77
77
  - `hostinger-ecommerce-mcp` — 29 tools for ecommerce
78
78
  - `hostinger-horizons-mcp` — 6 tools for horizons
79
- - `hostinger-hosting-mcp` — 66 tools for hosting
79
+ - `hostinger-hosting-mcp` — 69 tools for hosting
80
80
  - `hostinger-mail-mcp` — 38 tools for mail
81
81
  - `hostinger-reach-mcp` — 52 tools for reach
82
82
  - `hostinger-vps-mcp` — 64 tools for vps
@@ -2038,17 +2038,57 @@ containing secrets (e.g. credential files) — none of these are returned by thi
2038
2038
  - **Method**: `GET`
2039
2039
  - **Path**: `/api/hosting/v1/accounts/{username}/domains/{domain}/files/content`
2040
2040
 
2041
+ #### hosting_getGitAutoDeploymentSettingsV1
2042
+
2043
+ Returns the Git auto-deployment settings of the website: which repository and branch deploy
2044
+ into which directory, and whether pushes trigger a deployment. `is_enabled` false keeps the
2045
+ repository link but ignores pushes.
2046
+
2047
+ When the website has no auto-deployment configured every field is null. Save settings with
2048
+ `Update Git auto-deployment settings`.
2049
+
2050
+ - **Method**: `GET`
2051
+ - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings`
2052
+
2053
+ #### hosting_updateGitAutoDeploymentSettingsV1
2054
+
2055
+ Creates or replaces the Git auto-deployment settings of the website: repository, branch, the
2056
+ directory under the document root to deploy into, and `is_enabled`. Send the full set;
2057
+ `is_enabled` defaults to true and `directory` to the document root. `installation_uuid` must
2058
+ be an installation from `List Git installations` that belongs to the same customer as the
2059
+ website.
2060
+
2061
+ For PHP and static websites, saving with `is_enabled` true deploys the branch right away and
2062
+ every later push to that branch deploys again. For Node.js and Website Builder websites saving
2063
+ does not clone anything. On a Node.js website start the first deploy with
2064
+ `Start Node.js build` using `source_type` `git`; pushes then trigger new builds with the build
2065
+ settings stored for the website.
2066
+
2067
+ - **Method**: `PUT`
2068
+ - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings`
2069
+
2070
+ #### hosting_deleteGitAutoDeploymentSettingsV1
2071
+
2072
+ Removes the Git auto-deployment settings of the website. Files already deployed stay on the
2073
+ website; pushes stop deploying until settings are saved again. Succeeds also when nothing is
2074
+ configured.
2075
+
2076
+ - **Method**: `DELETE`
2077
+ - **Path**: `/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings`
2078
+
2041
2079
  #### hosting_listGitInstallationsV1
2042
2080
 
2043
2081
  Lists the Git provider accounts the customer has connected. Only installations with status
2044
2082
  `active` are returned unless the `status` filter says otherwise.
2045
2083
 
2046
2084
  An empty list means the customer has no active installation. Check `status=suspended` and
2047
- `status=pending` as well. If there is none at all, GitHub has to be connected once in hPanel
2048
- (Websites, Manage, Advanced, Git, Connect GitHub; or Add Website, Node.js Web App, Import Git
2049
- Repository, Continue with GitHub); this endpoint then lists the new installation.
2085
+ `status=pending` as well. If there is none at all, a Git provider (GitHub or GitLab) has to be
2086
+ connected once in hPanel (Websites, Manage, Advanced, Git; or Add Website, Node.js Web App,
2087
+ Import Git Repository); this endpoint then lists the new installation.
2050
2088
 
2051
- Use `uuid` as the path parameter of `List Git installation repositories`.
2089
+ Use `uuid` as the path parameter of `List Git installation repositories`, and as
2090
+ `installation_uuid` in `Start Node.js build` with `source_type` `git` and in
2091
+ `Update Git auto-deployment settings`.
2052
2092
 
2053
2093
  - **Method**: `GET`
2054
2094
  - **Path**: `/api/hosting/v1/git/installations`
@@ -2061,9 +2101,10 @@ is still queried and the call fails with whatever the provider answers. The list
2061
2101
  the first 500 repositories in the order the provider returns them; when the account has
2062
2102
  more, name the repository directly instead of searching this list.
2063
2103
 
2064
- `owner`, `name` and `default_branch` identify a repository and a branch to deploy. Returns
2065
- 404 when the installation does not belong to the customer. Limited to 10 calls per minute
2066
- per API client (429 above that).
2104
+ `owner`, `name` and a branch (`default_branch` or another one) go into `source_options` of
2105
+ `Start Node.js build` or into `Update Git auto-deployment settings`. Returns 404 when the
2106
+ installation does not belong to the customer. Limited to 10 calls per minute per API client
2107
+ (429 above that).
2067
2108
 
2068
2109
  - **Method**: `GET`
2069
2110
  - **Path**: `/api/hosting/v1/git/installations/{uuid}/repositories`
@@ -2086,13 +2127,17 @@ Start a Node.js build process using files already present on the website's file
2086
2127
  WARNING: on success this overwrites the website's existing contents and cannot be
2087
2128
  undone — verify this is intended before calling this endpoint.
2088
2129
 
2089
- The `source_type` must be `archive` and `source_options.archive_path` must point to an
2090
- existing archive file on the server (relative to the website document root).
2091
- Use the `Generate Upload URL` endpoint to obtain credentials and upload the archive first.
2092
-
2093
- To auto-detect build settings from an archive before starting, first call the
2130
+ With `source_type` `archive`, `source_options.archive_path` must point to an existing
2131
+ archive file on the server (relative to the website document root). Use the
2132
+ `Generate Upload URL` endpoint to obtain credentials and upload the archive first. To
2133
+ auto-detect build settings from an archive before starting, first call the
2094
2134
  `Get Node.js Build Settings from Archive` endpoint.
2095
2135
 
2136
+ With `source_type` `git`, `source_options` carries `owner`, `repository`, `branch` and
2137
+ `installation_uuid`. Take the installation from `List Git installations` and the owner and
2138
+ repository from `List Git installation repositories`; the branch is cloned at its current
2139
+ head. The installation must belong to the same customer as the website.
2140
+
2096
2141
  The returned build `uuid` can be used to poll progress and retrieve logs via
2097
2142
  the `Get Node.js Build Logs` endpoint.
2098
2143
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.60.1",
3
+ "version": "1.60.2",
4
4
  "description": "Hostinger API — manage domains, DNS, hosting, VPS, billing and more from Gemini CLI.",
5
5
  "mcpServers": {
6
6
  "hostinger": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hostinger-api-mcp",
3
- "version": "1.60.1",
3
+ "version": "1.60.2",
4
4
  "mcpName": "io.github.hostinger/hostinger-api-mcp",
5
5
  "description": "MCP server for Hostinger API",
6
6
  "repository": {
package/server.json CHANGED
@@ -6,12 +6,12 @@
6
6
  "url": "https://github.com/hostinger/api-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "1.60.1",
9
+ "version": "1.60.2",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "@hostinger/mcp",
14
- "version": "1.60.1",
14
+ "version": "1.60.2",
15
15
  "transport": {
16
16
  "type": "stdio"
17
17
  },
@@ -29,7 +29,7 @@ const SECURITY_SCHEMES = {
29
29
 
30
30
  /**
31
31
  * MCP Server for Hostinger API
32
- * Generated from OpenAPI spec version 1.52.1
32
+ * Generated from OpenAPI spec version 1.52.2
33
33
  */
34
34
  class MCPServer {
35
35
  constructor({ name, version, tools }) {
@@ -52,7 +52,7 @@ const SECURITY_SCHEMES: Record<string, SecurityScheme> = {
52
52
 
53
53
  /**
54
54
  * MCP Server for Hostinger API
55
- * Generated from OpenAPI spec version 1.52.1
55
+ * Generated from OpenAPI spec version 1.52.2
56
56
  */
57
57
  class MCPServer {
58
58
  private readonly name: string;
@@ -6716,6 +6716,141 @@ export default [
6716
6716
  ],
6717
6717
  "group": "hosting"
6718
6718
  },
6719
+ {
6720
+ "name": "hosting_getGitAutoDeploymentSettingsV1",
6721
+ "title": "Get Git auto-deployment settings",
6722
+ "annotations": {
6723
+ "title": "Get Git auto-deployment settings",
6724
+ "readOnlyHint": true,
6725
+ "destructiveHint": false
6726
+ },
6727
+ "description": "Returns the Git auto-deployment settings of the website: which repository and branch deploy\ninto which directory, and whether pushes trigger a deployment. `is_enabled` false keeps the\nrepository link but ignores pushes.\n\nWhen the website has no auto-deployment configured every field is null. Save settings with\n`Update Git auto-deployment settings`.",
6728
+ "method": "GET",
6729
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings",
6730
+ "inputSchema": {
6731
+ "type": "object",
6732
+ "properties": {
6733
+ "username": {
6734
+ "type": "string",
6735
+ "description": "username parameter"
6736
+ },
6737
+ "domain": {
6738
+ "type": "string",
6739
+ "description": "Domain name"
6740
+ }
6741
+ },
6742
+ "required": [
6743
+ "username",
6744
+ "domain"
6745
+ ]
6746
+ },
6747
+ "security": [
6748
+ {
6749
+ "apiToken": []
6750
+ }
6751
+ ],
6752
+ "group": "hosting"
6753
+ },
6754
+ {
6755
+ "name": "hosting_updateGitAutoDeploymentSettingsV1",
6756
+ "title": "Update Git auto-deployment settings",
6757
+ "annotations": {
6758
+ "title": "Update Git auto-deployment settings",
6759
+ "readOnlyHint": false,
6760
+ "destructiveHint": true,
6761
+ "idempotentHint": true
6762
+ },
6763
+ "description": "Creates or replaces the Git auto-deployment settings of the website: repository, branch, the\ndirectory under the document root to deploy into, and `is_enabled`. Send the full set;\n`is_enabled` defaults to true and `directory` to the document root. `installation_uuid` must\nbe an installation from `List Git installations` that belongs to the same customer as the\nwebsite.\n\nFor PHP and static websites, saving with `is_enabled` true deploys the branch right away and\nevery later push to that branch deploys again. For Node.js and Website Builder websites saving\ndoes not clone anything. On a Node.js website start the first deploy with\n`Start Node.js build` using `source_type` `git`; pushes then trigger new builds with the build\nsettings stored for the website.",
6764
+ "method": "PUT",
6765
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings",
6766
+ "inputSchema": {
6767
+ "type": "object",
6768
+ "properties": {
6769
+ "username": {
6770
+ "type": "string",
6771
+ "description": "username parameter"
6772
+ },
6773
+ "domain": {
6774
+ "type": "string",
6775
+ "description": "Domain name"
6776
+ },
6777
+ "installation_uuid": {
6778
+ "type": "string",
6779
+ "description": "Active Git installation from `List Git installations`"
6780
+ },
6781
+ "owner": {
6782
+ "type": "string",
6783
+ "description": "Repository owner login, as returned by `List Git installation repositories`. GitLab group\npaths use slashes."
6784
+ },
6785
+ "repository": {
6786
+ "type": "string",
6787
+ "description": "Repository name without the .git suffix"
6788
+ },
6789
+ "branch": {
6790
+ "type": "string",
6791
+ "description": "Branch to deploy"
6792
+ },
6793
+ "directory": {
6794
+ "type": "string",
6795
+ "description": "Subdirectory under the website document root to deploy into. Empty, null or omitted means\nthe document root."
6796
+ },
6797
+ "is_enabled": {
6798
+ "type": "boolean",
6799
+ "description": "Whether pushes to the branch deploy automatically"
6800
+ }
6801
+ },
6802
+ "required": [
6803
+ "username",
6804
+ "domain",
6805
+ "installation_uuid",
6806
+ "owner",
6807
+ "repository",
6808
+ "branch"
6809
+ ]
6810
+ },
6811
+ "security": [
6812
+ {
6813
+ "apiToken": []
6814
+ }
6815
+ ],
6816
+ "group": "hosting"
6817
+ },
6818
+ {
6819
+ "name": "hosting_deleteGitAutoDeploymentSettingsV1",
6820
+ "title": "Delete Git auto-deployment settings",
6821
+ "annotations": {
6822
+ "title": "Delete Git auto-deployment settings",
6823
+ "readOnlyHint": false,
6824
+ "destructiveHint": true,
6825
+ "idempotentHint": true
6826
+ },
6827
+ "description": "Removes the Git auto-deployment settings of the website. Files already deployed stay on the\nwebsite; pushes stop deploying until settings are saved again. Succeeds also when nothing is\nconfigured.",
6828
+ "method": "DELETE",
6829
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings",
6830
+ "inputSchema": {
6831
+ "type": "object",
6832
+ "properties": {
6833
+ "username": {
6834
+ "type": "string",
6835
+ "description": "username parameter"
6836
+ },
6837
+ "domain": {
6838
+ "type": "string",
6839
+ "description": "Domain name"
6840
+ }
6841
+ },
6842
+ "required": [
6843
+ "username",
6844
+ "domain"
6845
+ ]
6846
+ },
6847
+ "security": [
6848
+ {
6849
+ "apiToken": []
6850
+ }
6851
+ ],
6852
+ "group": "hosting"
6853
+ },
6719
6854
  {
6720
6855
  "name": "hosting_listGitInstallationsV1",
6721
6856
  "title": "List Git installations",
@@ -6724,7 +6859,7 @@ export default [
6724
6859
  "readOnlyHint": true,
6725
6860
  "destructiveHint": false
6726
6861
  },
6727
- "description": "Lists the Git provider accounts the customer has connected. Only installations with status\n`active` are returned unless the `status` filter says otherwise.\n\nAn empty list means the customer has no active installation. Check `status=suspended` and\n`status=pending` as well. If there is none at all, GitHub has to be connected once in hPanel\n(Websites, Manage, Advanced, Git, Connect GitHub; or Add Website, Node.js Web App, Import Git\nRepository, Continue with GitHub); this endpoint then lists the new installation.\n\nUse `uuid` as the path parameter of `List Git installation repositories`.",
6862
+ "description": "Lists the Git provider accounts the customer has connected. Only installations with status\n`active` are returned unless the `status` filter says otherwise.\n\nAn empty list means the customer has no active installation. Check `status=suspended` and\n`status=pending` as well. If there is none at all, a Git provider (GitHub or GitLab) has to be\nconnected once in hPanel (Websites, Manage, Advanced, Git; or Add Website, Node.js Web App,\nImport Git Repository); this endpoint then lists the new installation.\n\nUse `uuid` as the path parameter of `List Git installation repositories`, and as\n`installation_uuid` in `Start Node.js build` with `source_type` `git` and in\n`Update Git auto-deployment settings`.",
6728
6863
  "method": "GET",
6729
6864
  "path": "/api/hosting/v1/git/installations",
6730
6865
  "inputSchema": {
@@ -6766,7 +6901,7 @@ export default [
6766
6901
  "readOnlyHint": true,
6767
6902
  "destructiveHint": false
6768
6903
  },
6769
- "description": "Lists the repositories the Git installation can access, read live from the provider. Works\nfor github and gitlab installations. Use an active installation: a suspended or pending one\nis still queried and the call fails with whatever the provider answers. The list is cut at\nthe first 500 repositories in the order the provider returns them; when the account has\nmore, name the repository directly instead of searching this list.\n\n`owner`, `name` and `default_branch` identify a repository and a branch to deploy. Returns\n404 when the installation does not belong to the customer. Limited to 10 calls per minute\nper API client (429 above that).",
6904
+ "description": "Lists the repositories the Git installation can access, read live from the provider. Works\nfor github and gitlab installations. Use an active installation: a suspended or pending one\nis still queried and the call fails with whatever the provider answers. The list is cut at\nthe first 500 repositories in the order the provider returns them; when the account has\nmore, name the repository directly instead of searching this list.\n\n`owner`, `name` and a branch (`default_branch` or another one) go into `source_options` of\n`Start Node.js build` or into `Update Git auto-deployment settings`. Returns 404 when the\ninstallation does not belong to the customer. Limited to 10 calls per minute per API client\n(429 above that).",
6770
6905
  "method": "GET",
6771
6906
  "path": "/api/hosting/v1/git/installations/{uuid}/repositories",
6772
6907
  "inputSchema": {
@@ -6853,7 +6988,7 @@ export default [
6853
6988
  "readOnlyHint": false,
6854
6989
  "destructiveHint": false
6855
6990
  },
6856
- "description": "Start a Node.js build process using files already present on the website's file storage.\n\nWARNING: on success this overwrites the website's existing contents and cannot be\nundone — verify this is intended before calling this endpoint.\n\nThe `source_type` must be `archive` and `source_options.archive_path` must point to an\nexisting archive file on the server (relative to the website document root).\nUse the `Generate Upload URL` endpoint to obtain credentials and upload the archive first.\n\nTo auto-detect build settings from an archive before starting, first call the\n`Get Node.js Build Settings from Archive` endpoint.\n\nThe returned build `uuid` can be used to poll progress and retrieve logs via\nthe `Get Node.js Build Logs` endpoint.",
6991
+ "description": "Start a Node.js build process using files already present on the website's file storage.\n\nWARNING: on success this overwrites the website's existing contents and cannot be\nundone — verify this is intended before calling this endpoint.\n\nWith `source_type` `archive`, `source_options.archive_path` must point to an existing\narchive file on the server (relative to the website document root). Use the\n`Generate Upload URL` endpoint to obtain credentials and upload the archive first. To\nauto-detect build settings from an archive before starting, first call the\n`Get Node.js Build Settings from Archive` endpoint.\n\nWith `source_type` `git`, `source_options` carries `owner`, `repository`, `branch` and\n`installation_uuid`. Take the installation from `List Git installations` and the owner and\nrepository from `List Git installation repositories`; the branch is cloned at its current\nhead. The installation must belong to the same customer as the website.\n\nThe returned build `uuid` can be used to poll progress and retrieve logs via\nthe `Get Node.js Build Logs` endpoint.",
6857
6992
  "method": "POST",
6858
6993
  "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds",
6859
6994
  "inputSchema": {
@@ -6929,18 +7064,35 @@ export default [
6929
7064
  },
6930
7065
  "source_type": {
6931
7066
  "type": "string",
6932
- "description": "The source type of the files",
7067
+ "description": "Where the files come from: `archive` (an uploaded archive on the website) or `git`\n(a branch of a repository reachable through a Git installation).",
6933
7068
  "enum": [
6934
- "archive"
7069
+ "archive",
7070
+ "git"
6935
7071
  ]
6936
7072
  },
6937
7073
  "source_options": {
6938
7074
  "type": "object",
6939
- "description": "Source-specific options",
7075
+ "description": "Source-specific options. For `archive` send `archive_path`. For `git` send `owner`,\n`repository`, `branch` and `installation_uuid`, taken from `List Git installations`\nand `List Git installation repositories`.",
6940
7076
  "properties": {
6941
7077
  "archive_path": {
6942
7078
  "type": "string",
6943
7079
  "description": "The path to the archive file relative to the document root of the vhost (required if source is \"archive\")"
7080
+ },
7081
+ "owner": {
7082
+ "type": "string",
7083
+ "description": "Repository owner login (required if source is \"git\"). GitLab group paths use\nslashes."
7084
+ },
7085
+ "repository": {
7086
+ "type": "string",
7087
+ "description": "Repository name without the .git suffix (required if source is \"git\")"
7088
+ },
7089
+ "branch": {
7090
+ "type": "string",
7091
+ "description": "Branch to build (required if source is \"git\")"
7092
+ },
7093
+ "installation_uuid": {
7094
+ "type": "string",
7095
+ "description": "Git installation used to access the repository (required if source is \"git\")"
6944
7096
  }
6945
7097
  }
6946
7098
  }
@@ -6730,6 +6730,141 @@ const tools: OpenApiTool[] = [
6730
6730
  ],
6731
6731
  "group": "hosting"
6732
6732
  },
6733
+ {
6734
+ "name": "hosting_getGitAutoDeploymentSettingsV1",
6735
+ "title": "Get Git auto-deployment settings",
6736
+ "annotations": {
6737
+ "title": "Get Git auto-deployment settings",
6738
+ "readOnlyHint": true,
6739
+ "destructiveHint": false
6740
+ },
6741
+ "description": "Returns the Git auto-deployment settings of the website: which repository and branch deploy\ninto which directory, and whether pushes trigger a deployment. `is_enabled` false keeps the\nrepository link but ignores pushes.\n\nWhen the website has no auto-deployment configured every field is null. Save settings with\n`Update Git auto-deployment settings`.",
6742
+ "method": "GET",
6743
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings",
6744
+ "inputSchema": {
6745
+ "type": "object",
6746
+ "properties": {
6747
+ "username": {
6748
+ "type": "string",
6749
+ "description": "username parameter"
6750
+ },
6751
+ "domain": {
6752
+ "type": "string",
6753
+ "description": "Domain name"
6754
+ }
6755
+ },
6756
+ "required": [
6757
+ "username",
6758
+ "domain"
6759
+ ]
6760
+ },
6761
+ "security": [
6762
+ {
6763
+ "apiToken": []
6764
+ }
6765
+ ],
6766
+ "group": "hosting"
6767
+ },
6768
+ {
6769
+ "name": "hosting_updateGitAutoDeploymentSettingsV1",
6770
+ "title": "Update Git auto-deployment settings",
6771
+ "annotations": {
6772
+ "title": "Update Git auto-deployment settings",
6773
+ "readOnlyHint": false,
6774
+ "destructiveHint": true,
6775
+ "idempotentHint": true
6776
+ },
6777
+ "description": "Creates or replaces the Git auto-deployment settings of the website: repository, branch, the\ndirectory under the document root to deploy into, and `is_enabled`. Send the full set;\n`is_enabled` defaults to true and `directory` to the document root. `installation_uuid` must\nbe an installation from `List Git installations` that belongs to the same customer as the\nwebsite.\n\nFor PHP and static websites, saving with `is_enabled` true deploys the branch right away and\nevery later push to that branch deploys again. For Node.js and Website Builder websites saving\ndoes not clone anything. On a Node.js website start the first deploy with\n`Start Node.js build` using `source_type` `git`; pushes then trigger new builds with the build\nsettings stored for the website.",
6778
+ "method": "PUT",
6779
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings",
6780
+ "inputSchema": {
6781
+ "type": "object",
6782
+ "properties": {
6783
+ "username": {
6784
+ "type": "string",
6785
+ "description": "username parameter"
6786
+ },
6787
+ "domain": {
6788
+ "type": "string",
6789
+ "description": "Domain name"
6790
+ },
6791
+ "installation_uuid": {
6792
+ "type": "string",
6793
+ "description": "Active Git installation from `List Git installations`"
6794
+ },
6795
+ "owner": {
6796
+ "type": "string",
6797
+ "description": "Repository owner login, as returned by `List Git installation repositories`. GitLab group\npaths use slashes."
6798
+ },
6799
+ "repository": {
6800
+ "type": "string",
6801
+ "description": "Repository name without the .git suffix"
6802
+ },
6803
+ "branch": {
6804
+ "type": "string",
6805
+ "description": "Branch to deploy"
6806
+ },
6807
+ "directory": {
6808
+ "type": "string",
6809
+ "description": "Subdirectory under the website document root to deploy into. Empty, null or omitted means\nthe document root."
6810
+ },
6811
+ "is_enabled": {
6812
+ "type": "boolean",
6813
+ "description": "Whether pushes to the branch deploy automatically"
6814
+ }
6815
+ },
6816
+ "required": [
6817
+ "username",
6818
+ "domain",
6819
+ "installation_uuid",
6820
+ "owner",
6821
+ "repository",
6822
+ "branch"
6823
+ ]
6824
+ },
6825
+ "security": [
6826
+ {
6827
+ "apiToken": []
6828
+ }
6829
+ ],
6830
+ "group": "hosting"
6831
+ },
6832
+ {
6833
+ "name": "hosting_deleteGitAutoDeploymentSettingsV1",
6834
+ "title": "Delete Git auto-deployment settings",
6835
+ "annotations": {
6836
+ "title": "Delete Git auto-deployment settings",
6837
+ "readOnlyHint": false,
6838
+ "destructiveHint": true,
6839
+ "idempotentHint": true
6840
+ },
6841
+ "description": "Removes the Git auto-deployment settings of the website. Files already deployed stay on the\nwebsite; pushes stop deploying until settings are saved again. Succeeds also when nothing is\nconfigured.",
6842
+ "method": "DELETE",
6843
+ "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings",
6844
+ "inputSchema": {
6845
+ "type": "object",
6846
+ "properties": {
6847
+ "username": {
6848
+ "type": "string",
6849
+ "description": "username parameter"
6850
+ },
6851
+ "domain": {
6852
+ "type": "string",
6853
+ "description": "Domain name"
6854
+ }
6855
+ },
6856
+ "required": [
6857
+ "username",
6858
+ "domain"
6859
+ ]
6860
+ },
6861
+ "security": [
6862
+ {
6863
+ "apiToken": []
6864
+ }
6865
+ ],
6866
+ "group": "hosting"
6867
+ },
6733
6868
  {
6734
6869
  "name": "hosting_listGitInstallationsV1",
6735
6870
  "title": "List Git installations",
@@ -6738,7 +6873,7 @@ const tools: OpenApiTool[] = [
6738
6873
  "readOnlyHint": true,
6739
6874
  "destructiveHint": false
6740
6875
  },
6741
- "description": "Lists the Git provider accounts the customer has connected. Only installations with status\n`active` are returned unless the `status` filter says otherwise.\n\nAn empty list means the customer has no active installation. Check `status=suspended` and\n`status=pending` as well. If there is none at all, GitHub has to be connected once in hPanel\n(Websites, Manage, Advanced, Git, Connect GitHub; or Add Website, Node.js Web App, Import Git\nRepository, Continue with GitHub); this endpoint then lists the new installation.\n\nUse `uuid` as the path parameter of `List Git installation repositories`.",
6876
+ "description": "Lists the Git provider accounts the customer has connected. Only installations with status\n`active` are returned unless the `status` filter says otherwise.\n\nAn empty list means the customer has no active installation. Check `status=suspended` and\n`status=pending` as well. If there is none at all, a Git provider (GitHub or GitLab) has to be\nconnected once in hPanel (Websites, Manage, Advanced, Git; or Add Website, Node.js Web App,\nImport Git Repository); this endpoint then lists the new installation.\n\nUse `uuid` as the path parameter of `List Git installation repositories`, and as\n`installation_uuid` in `Start Node.js build` with `source_type` `git` and in\n`Update Git auto-deployment settings`.",
6742
6877
  "method": "GET",
6743
6878
  "path": "/api/hosting/v1/git/installations",
6744
6879
  "inputSchema": {
@@ -6780,7 +6915,7 @@ const tools: OpenApiTool[] = [
6780
6915
  "readOnlyHint": true,
6781
6916
  "destructiveHint": false
6782
6917
  },
6783
- "description": "Lists the repositories the Git installation can access, read live from the provider. Works\nfor github and gitlab installations. Use an active installation: a suspended or pending one\nis still queried and the call fails with whatever the provider answers. The list is cut at\nthe first 500 repositories in the order the provider returns them; when the account has\nmore, name the repository directly instead of searching this list.\n\n`owner`, `name` and `default_branch` identify a repository and a branch to deploy. Returns\n404 when the installation does not belong to the customer. Limited to 10 calls per minute\nper API client (429 above that).",
6918
+ "description": "Lists the repositories the Git installation can access, read live from the provider. Works\nfor github and gitlab installations. Use an active installation: a suspended or pending one\nis still queried and the call fails with whatever the provider answers. The list is cut at\nthe first 500 repositories in the order the provider returns them; when the account has\nmore, name the repository directly instead of searching this list.\n\n`owner`, `name` and a branch (`default_branch` or another one) go into `source_options` of\n`Start Node.js build` or into `Update Git auto-deployment settings`. Returns 404 when the\ninstallation does not belong to the customer. Limited to 10 calls per minute per API client\n(429 above that).",
6784
6919
  "method": "GET",
6785
6920
  "path": "/api/hosting/v1/git/installations/{uuid}/repositories",
6786
6921
  "inputSchema": {
@@ -6867,7 +7002,7 @@ const tools: OpenApiTool[] = [
6867
7002
  "readOnlyHint": false,
6868
7003
  "destructiveHint": false
6869
7004
  },
6870
- "description": "Start a Node.js build process using files already present on the website's file storage.\n\nWARNING: on success this overwrites the website's existing contents and cannot be\nundone — verify this is intended before calling this endpoint.\n\nThe `source_type` must be `archive` and `source_options.archive_path` must point to an\nexisting archive file on the server (relative to the website document root).\nUse the `Generate Upload URL` endpoint to obtain credentials and upload the archive first.\n\nTo auto-detect build settings from an archive before starting, first call the\n`Get Node.js Build Settings from Archive` endpoint.\n\nThe returned build `uuid` can be used to poll progress and retrieve logs via\nthe `Get Node.js Build Logs` endpoint.",
7005
+ "description": "Start a Node.js build process using files already present on the website's file storage.\n\nWARNING: on success this overwrites the website's existing contents and cannot be\nundone — verify this is intended before calling this endpoint.\n\nWith `source_type` `archive`, `source_options.archive_path` must point to an existing\narchive file on the server (relative to the website document root). Use the\n`Generate Upload URL` endpoint to obtain credentials and upload the archive first. To\nauto-detect build settings from an archive before starting, first call the\n`Get Node.js Build Settings from Archive` endpoint.\n\nWith `source_type` `git`, `source_options` carries `owner`, `repository`, `branch` and\n`installation_uuid`. Take the installation from `List Git installations` and the owner and\nrepository from `List Git installation repositories`; the branch is cloned at its current\nhead. The installation must belong to the same customer as the website.\n\nThe returned build `uuid` can be used to poll progress and retrieve logs via\nthe `Get Node.js Build Logs` endpoint.",
6871
7006
  "method": "POST",
6872
7007
  "path": "/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds",
6873
7008
  "inputSchema": {
@@ -6943,18 +7078,35 @@ const tools: OpenApiTool[] = [
6943
7078
  },
6944
7079
  "source_type": {
6945
7080
  "type": "string",
6946
- "description": "The source type of the files",
7081
+ "description": "Where the files come from: `archive` (an uploaded archive on the website) or `git`\n(a branch of a repository reachable through a Git installation).",
6947
7082
  "enum": [
6948
- "archive"
7083
+ "archive",
7084
+ "git"
6949
7085
  ]
6950
7086
  },
6951
7087
  "source_options": {
6952
7088
  "type": "object",
6953
- "description": "Source-specific options",
7089
+ "description": "Source-specific options. For `archive` send `archive_path`. For `git` send `owner`,\n`repository`, `branch` and `installation_uuid`, taken from `List Git installations`\nand `List Git installation repositories`.",
6954
7090
  "properties": {
6955
7091
  "archive_path": {
6956
7092
  "type": "string",
6957
7093
  "description": "The path to the archive file relative to the document root of the vhost (required if source is \"archive\")"
7094
+ },
7095
+ "owner": {
7096
+ "type": "string",
7097
+ "description": "Repository owner login (required if source is \"git\"). GitLab group paths use\nslashes."
7098
+ },
7099
+ "repository": {
7100
+ "type": "string",
7101
+ "description": "Repository name without the .git suffix (required if source is \"git\")"
7102
+ },
7103
+ "branch": {
7104
+ "type": "string",
7105
+ "description": "Branch to build (required if source is \"git\")"
7106
+ },
7107
+ "installation_uuid": {
7108
+ "type": "string",
7109
+ "description": "Git installation used to access the repository (required if source is \"git\")"
6958
7110
  }
6959
7111
  }
6960
7112
  }