Hostinger
官方直接從您的 IDE 連接 Hostinger 帳戶,即可部署和管理網站。在單一位置處理網站、網域、DNS、VPS、電子商務、電子郵件行銷及帳務。
你可以用 Hostinger MCP 做什麼?
- 從壓縮檔部署網站 — 要求從壓縮檔部署 Node.js 靜態或 PHP 網站,並自動上傳檔案與執行建置。
- 管理網域與 SSL — 連結/取消連結網域、變更主要網域,以及安裝、重新安裝或移除 Let's Encrypt SSL 憑證。
- 設定 PHP 與 WordPress — 切換 PHP 版本、啟用擴充功能、設定 php.ini 選項,或變更 WordPress 核心版本與設定。
- 佈建與監控網站 — 建立新的 Agency Plan 網站、檢查設定狀態、列出網站,以及檢視資源或磁碟使用量指標。
- 處理資料庫與 cron 工作 — 建立、列出或刪除 MySQL 資料庫/使用者,並為網站排程或移除 cron 工作。
- 執行代理程式就緒度掃描 — 啟動並取得公開網站的 AI 代理程式就緒度分數,以評估其可被發現的程度。
文件
hostinger-api-mcp
Model Context Protocol (MCP) 伺服器,用於 Hostinger API。
快速開始:託管的遠端伺服器
如果您不想在本機安裝或執行任何東西,可以直接連線到 Hostinger 的託管 MCP 伺服器:
https://mcp.hostinger.com
Claude Code
claude mcp add --transport http hostinger https://mcp.hostinger.com
這會開啟瀏覽器視窗以透過 OAuth 授權。一旦核准,以下操作即可透過您工作階段中的 execute 存取。
其他 MCP 相容用戶端
在您的用戶端設定中,將 https://mcp.hostinger.com 新增為遠端 Streamable HTTP MCP 伺服器,並在出現提示時完成 OAuth 流程。請參閱您用戶端的文件,了解其如何公開「新增遠端 MCP 伺服器」/「自訂連接器」設定。
先決條件
- Node.js 版本 24 或更高
如果您尚未安裝 Node.js,可以從官方網站下載。 或者,您可以使用套件管理器,例如 Homebrew(適用於 macOS)或 Chocolatey(適用於 Windows)來安裝 Node.js。
我們建議使用 NVM(Node 版本管理器) 來安裝和管理已安裝的 Node.js 版本。 安裝 NVM 後,您可以使用以下命令安裝 Node.js:
nvm install v24
nvm use v24
安裝
若要安裝 MCP 伺服器,請根據您的套件管理器執行以下其中一個命令:
# Install globally from npm
npm install -g @hostinger/mcp
# Or with yarn
yarn global add @hostinger/mcp
# Or with pnpm
pnpm add -g @hostinger/mcp
更新
若要將 MCP 伺服器更新至最新版本,請根據您的套件管理器使用以下其中一個命令:
# Update globally from npm
npm update -g @hostinger/mcp
# Or with yarn
yarn global upgrade @hostinger/mcp
# Or with pnpm
pnpm update -g @hostinger/mcp
二進位檔
此套件會安裝以下 MCP 伺服器命令:
hostinger-api-mcp— 涵蓋所有操作的統一伺服器(共 421 個)hostinger-agency-hosting-mcp— 42 個用於 agency-hosting 的操作hostinger-agent-readiness-mcp— 3 個用於 agent-readiness 的操作hostinger-billing-mcp— 9 個用於 billing 的操作hostinger-dns-mcp— 8 個用於 dns 的操作hostinger-domains-mcp— 42 個用於 domains 的操作hostinger-ecommerce-mcp— 29 個用於 ecommerce 的操作hostinger-horizons-mcp— 6 個用於 horizons 的操作hostinger-hosting-mcp— 81 個用於 hosting 的操作hostinger-mail-mcp— 38 個用於 mail 的操作hostinger-reach-mcp— 56 個用於 reach 的操作hostinger-vps-mcp— 67 個用於 vps 的操作hostinger-wordpress-mcp— 40 個用於 wordpress 的操作
每個二進位檔都公開相同的三個工具;限範圍的二進位檔只會搜尋並執行自己群組的操作。hostinger-api-mcp 仍是向後相容的預設值。
設定
執行伺服器時可以設定以下環境變數:
DEBUG:啟用除錯記錄(true/false)(預設:false)HOSTINGER_API_TOKEN:您的 API 權杖,會透過Authorization標頭傳送。設定後,OAuth 會完全略過。API_TOKEN:HOSTINGER_API_TOKEN的已棄用別名。將在未來版本中移除 — 請優先使用HOSTINGER_API_TOKEN。OAUTH_ISSUER:OAuth 伺服器基礎 URL(預設:https://auth.hostinger.com)。僅在未設定HOSTINGER_API_TOKEN時使用。
驗證
伺服器支援兩種驗證方法:
API 權杖(建議用於 CI/指令碼)
在環境或 .env 檔案中設定 HOSTINGER_API_TOKEN。設定後一律優先採用 — 不會執行任何 OAuth 程式碼。
OAuth 2.0 搭配 PKCE(互動式登入)
當未設定 HOSTINGER_API_TOKEN 且伺服器以 stdio 模式執行時,會在第一次驗證工具呼叫時自動使用 OAuth 2.0 搭配 PKCE:
- 會向簽發者註冊動態 OAuth 用戶端(RFC 7591)— 每台機器一次。
- 瀏覽器視窗會開啟至授權頁面。
- 登入後,伺服器會在本地臨時連接埠上擷取重新導向,將授權碼換成權杖,並儲存它們。
- 後續呼叫會重複使用已儲存的存取權杖;過期的權杖會自動重新整理。如果重新整理權杖被撤銷,會重新啟動瀏覽器流程。
憑證儲存於:
- macOS / Linux:
~/.config/hostinger-mcp/credentials.json(模式 0600) - Windows:
%APPDATA%\hostinger-mcp\credentials.json
憑證會在所有 Hostinger MCP 二進位檔(hostinger-api-mcp、hostinger-vps-mcp 等)之間共用。
手動命令:
# Run the OAuth sign-in flow immediately (don't wait for the first tool call)
hostinger-api-mcp --login
# Revoke stored credentials
hostinger-api-mcp --logout
HTTP 傳輸注意事項: --http 模式不支援 OAuth 登入。使用 --http 前,請先設定 HOSTINGER_API_TOKEN。
使用方式
適用於 Claude、Cursor 等的 JSON 設定
{
"mcpServers": {
"hostinger-api": {
"command": "hostinger-api-mcp",
"env": {
"DEBUG": "false",
"HOSTINGER_API_TOKEN": "YOUR API TOKEN"
}
}
}
}
傳輸選項
MCP 伺服器支援兩種傳輸模式:
標準 I/O 傳輸
伺服器可以使用標準輸入/輸出(stdio)傳輸(預設)。這提供本地串流:
Streamable HTTP 傳輸
伺服器可以使用 HTTP 串流傳輸。這透過 HTTP 提供雙向串流:
# Default HTTP transport on localhost:8100
hostinger-api-mcp --http
# Specify custom host and port
hostinger-api-mcp --http --host 0.0.0.0 --port 8150
命令列選項
Options:
--http Use HTTP streaming transport (requires HOSTINGER_API_TOKEN env var)
--stdio Use Server-Sent Events transport (default)
--host {host} Hostname or IP address to listen on (default: 127.0.0.1)
--port {port} Port to bind to (default: 8100)
--login Run OAuth sign-in flow and exit
--logout Revoke stored OAuth credentials and exit
--help Show help message
作為 MCP 工具提供者使用
此伺服器實作 Model Context Protocol (MCP),可與任何 MCP 相容的消費者一起使用。
使用 HTTP 串流傳輸連線到此伺服器的範例:
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
// Create HTTP transport
const transport = new StreamableHTTPClientTransport({
url: "http://localhost:8100/",
headers: {
"Authorization": `Bearer ${process.env.HOSTINGER_API_TOKEN}`
}
});
// Connect to the MCP server
const client = new Client({
name: "my-client",
version: "1.0.0"
}, {
capabilities: {}
});
await client.connect(transport);
// List available tools
const { tools } = await client.listTools();
console.log("Available tools:", tools);
// Execute an operation
const result = await client.callTool({
name: "execute",
arguments: { operation: "billing_catalog_list", params: { category: "DOMAIN" } }
});
console.log("Tool result:", result);
工具
每個伺服器都公開三個工具:
search— 依關鍵字尋找操作;傳回每個相符項目及其inputSchema。execute— 執行一個操作:{ "operation": "<name>", "params": { ... } }。multi-execute— 依序執行最多 20 個操作,在第一個失敗時停止。參數值正好是"$steps.<i>.<path>"時,會以先前步驟結果中的該值取代。
操作
可透過 execute 存取的操作,依二進位檔分類:
hostinger-agency-hosting-mcp
agency-hosting_deploy-node-static-website
從封存檔部署 node-static Agency Plan (h5g) 網站。警告:這會覆寫網站現有內容且無法復原 — 務必先與使用者確認再繼續。適用於類型為 node-static 的 Agency Plan 網站(需要建置步驟的 Node.js 建置靜態網站,或單純的靜態網站)。此工具會從其網域解析網站,透過 TUS 將封存檔上傳至網站的檔案瀏覽器,並觸發 build-assets 程序,該程序會建置網站並將結果部署至 public_html。此操作為同步:建置和部署會在工具傳回前完成,因此工具成功完成後網站立即上線 — 沒有需要等待或輪詢的獨立非同步建置。上傳憑證會在內部產生和使用 — 請勿呼叫單獨的 upload-url 端點或自行上傳封存檔,此工具會端對端處理。對於應原樣解壓縮的純 PHP 應用程式,請改用 agency-hosting_deploy-php-application。網站 UID 會自動從網域解析。
- 方法:
custom - 路徑:
custom
agency-hosting_deploy-php-application
從封存檔部署 PHP(或其他非建置)Agency Plan (h5g) 網站。警告:這會覆寫網站現有內容且無法復原 — 務必先與使用者確認再繼續。適用於封存檔內容應原樣解壓縮並提供服務且無需建置步驟的 Agency Plan 網站(例如 PHP 應用程式)。此工具會從其網域解析網站,透過 TUS 將封存檔上傳至網站的檔案瀏覽器,並觸發 import-archive 程序,該程序會以封存檔內容覆寫網站內容。此操作為同步:封存檔會在工具傳回前解壓縮並部署,因此工具成功完成後網站立即上線 — 沒有需要等待或輪詢的獨立非同步建置。上傳憑證會在內部產生和使用 — 請勿呼叫單獨的 upload-url 端點或自行上傳封存檔,此工具會端對端處理。對於需要建置步驟的 node-static 網站,請改用 agency-hosting_deploy-node-static-website。網站 UID 會自動從網域解析。
- 方法:
custom - 路徑:
custom
agency-hosting_datacenters_list
列出可在指定 Agency Plan 託管訂單上佈建新網站的可用資料中心。
每個資料中心都包含一個 pinger_url,您可以從用戶端 ping 以測量來回延遲;比較各資料中心的結果,可讓您在建立網站設定時,選擇最近的資料中心(最低 ping),然後選擇其 code 作為 datacenter_code。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/orders/{order_id}/datacenters
agency-hosting_domains_change-website
變更 Agency Plan 網站的主要網域。
在路徑中提供目前網域,並在請求主體中提供新網域。 將網域設為 null 以還原為暫時網域。
- 方法:
PUT - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains/{from_domain}
agency-hosting_domains_link-to-website
將網域連結至指定的 Agency Plan 網站,使其可以為該網域提供流量。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains
agency-hosting_domains_list
傳回與已驗證用戶端可存取的 Agency Plan 網站相關聯的分頁網域清單。
使用 website_uuids 篩選器將結果縮小至特定網站。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/domains
agency-hosting_domains_unlink-from-website
從指定的 Agency Plan 網站取消連結網域。
網站會立即停止在該網域上提供流量。
網站檔案和資料庫會保留,任何其他已連結的網域仍可存取。
如果這是網站上唯一的網域,取消連結會讓網站沒有可存取的網域。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}
agency-hosting_files_generate-upload-url
產生帶有驗證憑證的檔案瀏覽器上傳 URL,用於將檔案上傳至 Agency Plan 網站的檔案儲存空間。
傳回 url、auth_key 和 rest_auth_key。使用這些將檔案透過 TUS 可續傳上傳協定(TUS 1.0.0)上傳至網站的檔案儲存空間。在下列每個請求中傳送 X-Auth: {auth_key} 和 X-Auth-Rest: {rest_auth_key} 標頭。
- 建立上傳:
POST至{url}/{relative_file_path}?override=true,並帶有標頭upload-length: {file size in bytes}和upload-offset: 0。預期收到201 Created。 - 上傳檔案:將檔案位元組傳送至相同位置(任何 TUS 1.0.0 用戶端,或
帶有追蹤進度的
upload-offset標頭的PATCH請求),直到完成。
relative_file_path 是網站檔案儲存空間內的目標路徑,例如
app.zip。
除了 TUS 用戶端,純 curl 也可以運作:
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
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/files/upload-urls
agency-hosting_files_import-website-from-archive
從已上傳的封存檔匯入 Agency Plan 網站。
先透過檔案瀏覽器將封存檔上傳至網站的根目錄,然後在此請求中提供其 檔案名稱。網站內容會被封存檔內容覆寫。支援的封存檔類型:.zip、.tar、.tar.gz、.tgz。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/files/import-archive
agency-hosting_metrics_list-plan-order-disk-usage
傳回 Agency Plan 訂單在選定時間範圍內的彙總磁碟和 inode 使用量,以及方案配額。數據涵蓋整個訂單 帳戶。數值可能最多延遲一小時。CPU、記憶體和程序使用量 位於 resource-usage-metrics 端點。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/orders/{order_id}/disk-usage-metrics
agency-hosting_orders_list
傳回已驗證用戶端可存取的 Agency Plan 訂單分頁清單。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/orders
agency-hosting_metrics_list-order-resource-usage
傳回 Agency Plan 訂單在選定時間範圍內的彙總 CPU、記憶體和程序使用量,加上方案配額和每個網站的 明細。每個網站以 uid 識別。已暫停和已刪除的網站 會從訂單總計和每個網站明細中排除。 數值可能最多延遲一小時。磁碟和 inode 使用量位於 disk-usage-metrics 端點。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/orders/{order_id}/resource-usage-metrics
agency-hosting_php_list-extensions-for-website
列出 Agency Plan 網站可用的每個 PHP 擴充功能,以及目前是否已啟用。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/php-settings/extensions
agency-hosting_php_replace-website-extensions
以提供的擴充功能取代 Agency Plan 網站上已啟用的 PHP 擴充功能組合。請求中未包含的任何可切換擴充功能都會被停用,因此請先呼叫擴充功能端點,再傳送完整的所需組合。編譯進 PHP 的擴充功能(以「built-in」狀態回報)會永遠啟用,且不受影響。
- 方法:
PUT - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/php-settings/extensions
agency-hosting_php_list-options-for-website
列出可為 Agency Plan 網站設定的 php.ini 指令,每個指令皆包含其預設值、目前生效的值,以及可接受的值。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/php-settings/options
agency-hosting_php_replace-website-options
以提供的值取代 Agency Plan 網站上的自訂 php.ini 值。請求中未包含的任何選項都會重設為預設值,因此請先呼叫選項端點,再傳送完整的所需組合。傳送空陣列會將所有選項重設為預設值。
- 方法:
PUT - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/php-settings/options
agency-hosting_php_list-versions-for-order
列出在 Agency Plan 訂單下建立的網站可用的 PHP 版本,這取決於該訂單所託管的伺服器。請在建立網站前使用此端點;對於已存在的網站,請改為呼叫網站範圍的版本端點。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/orders/{order_id}/websites/php-settings/versions
agency-hosting_php_list-versions-for-website
列出 Agency Plan 網站可以切換的 PHP 版本。網站目前執行的版本會由網站詳細資料端點以 settings.php.version 回傳。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/php-settings/versions
agency-hosting_php_update-website-version
將 Agency Plan 網站切換到不同的 PHP 版本。請先呼叫可用版本端點,查看可以選擇哪些版本。網站會以新版本重新啟動,因此在切換期間提供的請求可能會失敗,且與目標版本不相容的程式碼將會損壞。
- 方法:
PATCH - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/php-settings/version
agency-hosting_website-setups_create
在您的其中一個 Agency Plan 託管訂單上佈建新網站。
選擇網站的資料中心、技術堆疊(flavor)和 PHP 版本。可選擇性地附加
您自己的 domain — 省略它、將其設為 null,或讓它保持不可用,系統會改為產生免費的
*.hostingersite.com 子網域 — 以及/或透過提供 wordpress 詳細資料(管理員帳戶、網站標題和語言)來安裝 WordPress。
常見設定:
- 純 PHP 網站:
flavor設為php-fpm,並設定settings.php.version;省略wordpress和type。 - WordPress 網站:
flavor設為所需的 WordPress 版本(例如wp-7.0),加上wordpress區塊(管理員帳戶、標題、語言)。 - 靜態/Node.js 前端應用程式:
flavor設為php-fpm,且type設為node-static。
佈建會在背景執行,因此回應會立即回傳一個用於識別工作的設定 UUID。 佈建完成後,新網站即可存取。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/orders/{order_id}/websites/setups
agency-hosting_website-setups_status
回傳透過設定端點啟動的 Agency Plan 網站設定的目前狀態。
使用佈建請求回傳的 setup_uuid 輪詢此端點,直到
status 變成 completed,此時 website_uid 會識別新網站。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/orders/{order_id}/websites/setups/{setup_uuid}
agency-hosting_ssl_reinstall-website
取代網域的 Let's Encrypt 憑證:目前平台憑證(若有記錄)會被撤銷並移除,然後在背景開始新的設定。立即回傳;執行期間 Get website SSL status 會回報 installing,然後是 active 或 failed。
對於免費子網域、當網域有記錄的憑證程序時(失敗的設定在清理前都算數),或當網域達到每七天三次設定的限制時,會回傳 422。當相同網域在不到一分鐘前被請求時回傳 429,當網站被暫停或鎖定時回傳 403,當網站或網域不存在時回傳 404。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}/ssl/reinstall
agency-hosting_ssl_install-website
為網域啟動 Let's Encrypt 憑證設定並立即回傳;設定在背景執行。執行期間 Get website SSL status 會回報 installing,然後是 active 或 failed;List website processes 的 ssl_setup 條目會顯示相同的進度。
當網域已有未過期的平台憑證、當網域有記錄的憑證程序時(失敗的設定在清理前都算數),或當網域達到每七天三次設定的限制時,會回傳 422。當相同網域在不到一分鐘前被請求時回傳 429,當網站被暫停或鎖定時回傳 403,當網站或網域不存在時回傳 404。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}/ssl/setup
agency-hosting_ssl_website-status
回傳 Agency Plan 網站某個網域的 SSL 狀態:憑證 status、憑證是否由客戶上傳,以及何時失效。
installing 表示憑證設定正在執行或重試中;List website processes 的 ssl_setup 條目會顯示相同的進度。active 表示有效憑證已就位:由客戶上傳、由平台簽發,或為網域購買的終身憑證。failed 表示最後一次設定已放棄,且沒有有效憑證就位。expired 表示憑證已過期。not_installed 表示網域沒有憑證,也沒有設定程序。當網站或網域不存在時回傳 404。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}/ssl/status
agency-hosting_ssl_uninstall-website
移除網域的平台簽發 Let's Encrypt 憑證:憑證會在回應前被撤銷並刪除,因此在新的設定完成前,網域將不再以平台憑證提供服務。當網域沒有可移除的平台憑證時,此操作也會成功。上傳的(自訂)憑證不受影響。
當網域有記錄的憑證程序時(失敗的設定在清理前都算數)回傳 422,當相同網域在不到一分鐘前被請求時回傳 429,當網站被暫停或鎖定時回傳 403,當網站或網域不存在時回傳 404。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/domains/{domain}/ssl
agency-hosting_websites_build-nodejs-assets
從已上傳的封存檔建置並部署 Agency Plan 網站的 Node.js 應用程式。
請先將封存檔上傳到檔案瀏覽器,然後在此請求中提供其相對於文件根目錄的相對路徑。網站內容會被建置結果覆寫,並部署到 public_html。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/build-assets
agency-hosting_cache_clear-website
清除與 Agency Plan 網站關聯的所有網域的快取,包括其預覽網域。
此操作會清除網站的所有快取類型。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/cache
agency-hosting_cron-jobs_list-website
回傳為 Agency Plan 網站設定的 cron 工作的分頁清單。
每個條目都包含排程表達式,以及依該排程執行的命令。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/cron-jobs
agency-hosting_cron-jobs_create-website
根據排程表達式和命令,為 Agency Plan 網站建立 cron 工作。
回傳建立的 cron 工作,包括其 uuid,刪除 cron 工作需要此 uuid。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/cron-jobs
agency-hosting_cron-jobs_delete-website
從 Agency Plan 網站永久刪除由其 uuid 識別的 cron 工作。
此操作是冪等的:刪除不存在的 cron 工作會成功且不會出錯。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/cron-jobs/{uuid}
agency-hosting_databases_list-website
回傳為 Agency Plan 網站建立的 MySQL 資料庫的分頁清單。
每個條目都包含資料庫的非系統使用者。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/databases
agency-hosting_databases_create-website
為 Agency Plan 網站建立一個帶有專屬使用者的 MySQL 資料庫。
資料庫名稱、使用者名稱和密碼都必須由呼叫者提供。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/databases
agency-hosting_databases_delete-website
從 Agency Plan 網站永久刪除 MySQL 資料庫及其所有資料,包括其使用者。
此操作是冪等的:刪除不存在的資料庫會成功且不會出錯。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/databases/{database_name}
agency-hosting_databases_create-website-user
為 Agency Plan 網站上的現有資料庫建立使用者。
每個資料庫僅支援一個非系統使用者;為已有使用者的資料庫建立使用者會失敗。
- 方法:
POST - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/databases/{database_name}/users
agency-hosting_databases_delete-website-user
從 Agency Plan 網站資料庫永久刪除資料庫使用者,撤銷其擁有的所有存取權限。
此操作是冪等的:刪除不存在的使用者會成功且不會出錯。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/databases/{database_name}/users/{database_user_name}
agency-hosting_websites_get
擷取特定 Agency Plan 網站的詳細資訊,包括設定、狀態、中繼資料、託管方案詳細資料和資源配額。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}
agency-hosting_websites_delete
永久刪除 Agency Plan 網站。刪除會以非同步方式處理:網站會立即轉換為刪除中狀態,底層伺服器資源會在背景移除。
- 方法:
DELETE - 路徑:
/api/agency-hosting/v1/websites/{website_uid}
agency-hosting_websites_list-plan
擷取已驗證用戶端可存取的 Agency Plan 網站(H5G、Builder 和 Horizons)的分頁清單。
此端點會回傳來自您託管帳戶的網站,以及來自其他與您共用存取權限的用戶端託管帳戶的網站。
回應結構會因平台而異 — 請參閱每個項目上的 platform 欄位。
使用 website_types 僅列出指定偵測類型的網站,例如僅列出 WordPress 網站(website_types=wordpress)或僅列出 Node.js 網站(website_types=nodejs)。可與 order_ids、states 或 domain 結合使用,以獲得更精準的結果。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites
agency-hosting_websites_list-processes
列出 Agency Plan 網站目前作用中及最近完成的非同步程序。
每個程序都有唯一 ID(用於追蹤)、類型和狀態(執行中、已完成、失敗)。在啟動非同步操作(SSL 設定、備份、複製)後輪詢此端點,以追蹤進度。
- 方法:
GET - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/processes
agency-hosting_wordpress_change-version
將 Agency Plan 網站上已安裝的 WordPress 核心版本變更為可安裝的版本之一。
- 方法:
PATCH - 路徑:
/api/agency-hosting/v1/websites/{website_uid}/wordpress/settings/version
agency-hosting_wordpress_settings
Returns the current WordPress settings for an Agency Plan website: installed core version, LiteSpeed Cache plugin status, object cache status, and maintenance mode status.
- Method:
GET - Path:
/api/agency-hosting/v1/websites/{website_uid}/wordpress/settings
agency-hosting_wordpress_list-versions
Lists the WordPress core versions available for installation on an Agency Plan website.
- Method:
GET - Path:
/api/agency-hosting/v1/websites/{website_uid}/wordpress/settings/versions
hostinger-agent-readiness-mcp
agent-readiness_checks_list
List every check an agent readiness scan runs, with its name, category and weight.\n
Use it to show the human-readable name of each check_id in a scan's results.
- Method:
GET - Path:
/api/agent-readiness/v1/checks
agent-readiness_scans_run
Start a scan of how ready a public website is for AI agents to discover, read and act on.\n
Scanning is asynchronous: this operation only starts the scan, and the returned scan is usually pending
with no results yet. To get the results, poll the Get agent readiness scan operation with the same
domain every few seconds until its status is completed or failed. The scan itself is limited to 60 seconds,
plus any time it waits in the queue. A failed scan is not retried; run this operation again.\n
Starting a scan for a domain that already has a pending scan from the last 5 minutes
returns that scan instead of starting a new one.
- Method:
POST - Path:
/api/agent-readiness/v1/scans
agent-readiness_scans_get
Get the latest agent readiness scan of a website.\n
Scans started with the Run agent readiness scan operation are asynchronous. While the status is
pending, the result fields are null; wait a few seconds and call this operation again until the status is
completed or failed. A failed scan is not retried; run the scan again.\n
A completed scan has a 0-100 score, a letter grade, a score per category, and the result of every
check with the evidence found and how to fix it. Check names are listed by the List checks operation.\n
Returns 404 when the domain has never been scanned; use the Run agent readiness scan operation first.
- Method:
GET - Path:
/api/agent-readiness/v1/scans/{domain}
hostinger-billing-mcp
billing_catalog_list
Retrieve catalog items available for order.
Prices in catalog items is displayed as cents (without floating point),
e.g: float 17.99 is displayed as integer 1799.
Use this endpoint to view available services and pricing before placing orders.
- Method:
GET - Path:
/api/billing/v1/catalog
billing_orders_create-purchase
Create a purchase order for any Hostinger product.
This unified endpoint places an order for one or more catalog items and
works across all Hostinger products, leveraging the existing billing
infrastructure. Use the catalog endpoint to look
up the item_id values available for purchase.
If no payment method is provided, your default payment method will be used automatically.
If the response is 202 Accepted, the payment is still being processed and the order will
complete asynchronously once the payment is confirmed.
This endpoint only places the order. Product-specific provisioning (e.g. VPS setup or domain registration) is not performed here — once the order completes, use the relevant product endpoints or hPanel to finalize setup.
Use this endpoint to purchase any product available in the catalog.
- Method:
POST - Path:
/api/billing/v1/orders
billing_payment-methods_set-default
Set the default payment method for your account.
Use this endpoint to configure the primary payment method for future orders.
- Method:
POST - Path:
/api/billing/v1/payment-methods/{paymentMethodId}
billing_payment-methods_delete
Delete a payment method from your account.
Use this endpoint to remove unused payment methods from user accounts.
- Method:
DELETE - Path:
/api/billing/v1/payment-methods/{paymentMethodId}
billing_payment-methods_list
Retrieve available payment methods that can be used for placing new orders.
If you want to add new payment method, please use hPanel.
Use this endpoint to view available payment options before creating orders.
- Method:
GET - Path:
/api/billing/v1/payment-methods
billing_subscriptions_list
Retrieve a list of all subscriptions associated with your account.
Use this endpoint to monitor active services and billing status.
- Method:
GET - Path:
/api/billing/v1/subscriptions
billing_subscriptions_disable-auto-renewal
Disable auto-renewal for a subscription.
Use this endpoint when disable auto-renewal for a subscription.
- Method:
DELETE - Path:
/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/disable
billing_subscriptions_enable-auto-renewal
Enable auto-renewal for a subscription.
Use this endpoint when enable auto-renewal for a subscription.
- Method:
PATCH - Path:
/api/billing/v1/subscriptions/{subscriptionId}/auto-renewal/enable
billing_subscriptions_renew
Create a renewal order for an existing Hostinger subscription.
This endpoint places a renewal order for a single subscription, leveraging
the existing billing infrastructure. Use the
subscriptions endpoint to look up the
subscriptionId values available for renewal.
If no payment method is provided, your default payment method will be used automatically.
If the response is 202 Accepted, the payment is still being processed and the renewal will
complete asynchronously once the payment is confirmed.
Use this endpoint to renew any subscription available in your account.
- Method:
POST - Path:
/api/billing/v1/subscriptions/{subscriptionId}/renew
hostinger-dns-mcp
dns_snapshots_get
Retrieve particular DNS snapshot with contents of DNS zone records.
Use this endpoint to view historical DNS configurations for domains.
- Method:
GET - Path:
/api/dns/v1/snapshots/{domain}/{snapshotId}
dns_snapshots_list
Retrieve DNS snapshots for a domain.
Use this endpoint to view available DNS backup points for restoration.
- Method:
GET - Path:
/api/dns/v1/snapshots/{domain}
dns_snapshots_restore
Restore DNS zone to the selected snapshot.
Use this endpoint to revert domain DNS to a previous configuration.
- Method:
POST - Path:
/api/dns/v1/snapshots/{domain}/{snapshotId}/restore
dns_records_list
Retrieve DNS zone records for a specific domain.
Use this endpoint to view current DNS configuration for domain management.
- Method:
GET - Path:
/api/dns/v1/zones/{domain}
dns_records_update
Update DNS records for the selected domain.
Using overwrite = true will replace existing records with the provided ones.
Otherwise existing records will be updated and new records will be added.
Use this endpoint to modify domain DNS configuration.
- Method:
PUT - Path:
/api/dns/v1/zones/{domain}
dns_records_delete
Delete DNS records for the selected domain.
To filter which records to delete, add the name of the record and type to the filter.
Multiple filters can be provided with single request.
If you have multiple records with the same name and type, and you want to delete only part of them,
refer to the Update zone records endpoint.
Use this endpoint to remove specific DNS records from domains.
- Method:
DELETE - Path:
/api/dns/v1/zones/{domain}
dns_records_reset
Reset DNS zone to the default records.
Use this endpoint to restore domain DNS to original configuration.
- Method:
POST - Path:
/api/dns/v1/zones/{domain}/reset
dns_records_validate
Validate DNS records prior to update for the selected domain.
If the validation is successful, the response will contain 200 Success code.
If there is validation error, the response will fail with 422 Validation error code.
Use this endpoint to verify DNS record validity before applying changes.
- Method:
POST - Path:
/api/dns/v1/zones/{domain}/validate
hostinger-domains-mcp
domains_verifications_direct
Retrieve a list of pending and completed domain verifications.
- Method:
GET - Path:
/api/v2/direct/verifications/active
domains_availability_suggest-names-from-description
Suggest available domain names based on a free-text description of your project.
Suggestions are generated by an AI model, so they differ between calls.
Endpoint has rate limit of 90 requests per minute.
Use this endpoint to find a domain name when you only know what the website is about.
- Method:
POST - Path:
/api/domains/v1/availability/alternatives-from-description
domains_availability_suggest-names-from
Suggest available domain names based on a domain name you already have in mind.
Suggestions are generated by an AI model, so they differ between calls.
Endpoint has rate limit of 90 requests per minute.
Use this endpoint when the domain you wanted is taken and you need close alternatives.
- Method:
POST - Path:
/api/domains/v1/availability/alternatives-from-domain
domains_availability_check
Check availability of domain names across multiple TLDs.
Multiple TLDs can be checked at once.
If you want alternative domains with response, provide only one TLD and set with_alternatives to true.
TLDs should be provided without leading dot (e.g. com, net, org).
Endpoint has rate limit of 90 requests per minute.
Use this endpoint to verify domain availability before purchase.
- Method:
POST - Path:
/api/domains/v1/availability
domains_forwarding_get
Retrieve domain forwarding data.
Use this endpoint to view current redirect configuration for domains.
- Method:
GET - Path:
/api/domains/v1/forwarding/{domain}
domains_forwarding_update
Update domain forwarding configuration.
Use this endpoint to modify existing redirect configuration for domains.
- Method:
PUT - Path:
/api/domains/v1/forwarding/{domain}
domains_forwarding_delete
Delete domain forwarding data.
Use this endpoint to remove redirect configuration from domains.
- Method:
DELETE - Path:
/api/domains/v1/forwarding/{domain}
domains_forwarding_create
Create domain forwarding configuration.
Use this endpoint to set up domain redirects to other URLs.
- Method:
POST - Path:
/api/domains/v1/forwarding
domains_whois_pending-irtp-verification
Retrieve a pending IRTP verification for a domain.
Both the old and new registrant must confirm it before the WHOIS change takes effect.
Use this endpoint to check the status of a WHOIS change awaiting registrant confirmation.
- Method:
GET - Path:
/api/domains/v1/irtp/{domain}
domains_whois_cancel-pending-irtp-verification
Cancel a pending IRTP verification.
Use this endpoint to back out of a WHOIS change that is stuck waiting on registrant confirmation, for example when the confirmation email cannot be received, without waiting out the 5-day expiry.
- Method:
DELETE - Path:
/api/domains/v1/irtp/{domain}
domains_move_incoming
Retrieve the incoming move for a specified domain.
Returns 404 when no account is moving this domain to you.
Use this endpoint to check whether a domain addressed to you is still waiting to be accepted.
- Method:
GET - Path:
/api/domains/v1/move/incoming/{domain}
domains_move_accept-incoming
Accept an incoming move for a specified domain.
The provided WHOIS profiles become the contacts of the domain, so they must belong to your account and satisfy the requirements of the TLD. Only the contact types the domain actually uses are applied, but all four profile IDs have to be provided.
The move has to still be waiting for your decision, already accepted moves
cannot be accepted again.
接受並不會完成移轉。系統會寄送一封確認電子郵件到新擁有者聯絡人的電子郵件地址,只有在透過該郵件確認變更後,網域才會轉手。在此之前,移轉會維持在 activating 狀態,您可以透過移入端點追蹤此狀態。
使用此端點來承接提供給您的網域。
- 方法:
PUT - 路徑:
/api/domains/v1/move/incoming/{domain}
domains_move_reject-incoming
拒絕指定網域的移入請求。
網域會保留在發起移轉的帳戶中。您已接受的移轉無法再被拒絕。
使用此端點來拒絕您不想承接的網域。
- 方法:
DELETE - 路徑:
/api/domains/v1/move/incoming/{domain}
domains_move_incoming-list
擷取所有其他 Hostinger 帳戶正在移轉至您帳戶的網域。
會回傳所有狀態的移轉,包括已完成的移轉。
使用此端點來尋找等待您接受的網域。
- 方法:
GET - 路徑:
/api/domains/v1/move/incoming
domains_move_outgoing
擷取指定網域的移出請求。
當網域沒有進行中的移轉時,會回傳 404。
使用此端點來追蹤您為單一網域發起的移轉狀態。
- 方法:
GET - 路徑:
/api/domains/v1/move/outgoing/{domain}
domains_move_start-outgoing
發起將指定網域移轉至另一個 Hostinger 帳戶的請求。
接收帳戶必須已存在,且在網域轉手前接受移轉。
網域必須處於啟用狀態。其所屬的訂閱會自動解析,若網域沒有自己的網域訂閱,請求會以 404 狀態碼被拒絕。
受高級保護的網域需要額外的驗證步驟,此類請求會以 428 狀態碼被拒絕。
使用此端點將網域移交給另一位 Hostinger 使用者。
- 方法:
POST - 路徑:
/api/domains/v1/move/outgoing/{domain}
domains_move_cancel-outgoing
取消指定網域的移出請求。
只有在接收帳戶尚未接受移轉時,才能取消移轉。網域會保留在您的帳戶中。
使用此端點來撤回您不再想完成的移轉。
- 方法:
DELETE - 路徑:
/api/domains/v1/move/outgoing/{domain}
domains_move_outgoing-list
擷取所有您正在移轉至其他 Hostinger 帳戶的網域。
只會回傳尚未完成的移轉。
使用此端點來追蹤您已發起的移轉及其目標帳戶。
- 方法:
GET - 路徑:
/api/domains/v1/move/outgoing
domains_portfolio_authorization-code
擷取指定網域的授權(EPP)碼,以便將其從 Hostinger 移轉至其他註冊商。
請求新的授權碼會使先前擷取的任何授權碼失效。
使用此端點來取得將網域移轉至其他註冊商所需的授權碼。
- 方法:
GET - 路徑:
/api/domains/v1/portfolio/{domain}/auth-code
domains_portfolio_claim-free
領取您帳戶上可用的免費網域並進行註冊。
與購買網域不同,這會消耗您已有的免費網域,因此不需要付款方式。
成功的回應表示網域已註冊。如果註冊失敗,請登入 hPanel 並檢查網域註冊狀態。
如果未提供 WHOIS 資訊,將使用該 TLD 的預設聯絡資訊。在發出請求前,請確保您的帳戶中存在所需 TLD 的 WHOIS 資訊。
某些 TLD 需要提供 additional_details,這些資訊會在領取前進行驗證。
無法滿足的請求會以回應主體中的錯誤碼被拒絕,例如在沒有可用免費網域時回傳 2037。
使用此端點來使用您帳戶中的免費網域註冊網域。
- 方法:
POST - 路徑:
/api/domains/v1/portfolio/claim
domains_portfolio_enable-lock
啟用網域的網域鎖定。
啟用網域鎖定後,若未先停用鎖定,網域就無法移轉至其他註冊商。
使用此端點來保護網域免受未授權的移轉。
- 方法:
PUT - 路徑:
/api/domains/v1/portfolio/{domain}/domain-lock
domains_portfolio_disable-lock
停用網域的網域鎖定。
在將網域移轉至其他註冊商之前,需要停用網域鎖定。
使用此端點來準備將網域移轉至其他註冊商。
- 方法:
DELETE - 路徑:
/api/domains/v1/portfolio/{domain}/domain-lock
domains_portfolio_get
擷取指定網域的詳細資訊。
使用此端點來檢視全面的網域設定和狀態。
- 方法:
GET - 路徑:
/api/domains/v1/portfolio/{domain}
domains_portfolio_list
擷取與您帳戶關聯的所有網域。
使用此端點來檢視使用者的網域投資組合。
- 方法:
GET - 路徑:
/api/domains/v1/portfolio
domains_portfolio_purchase
購買並註冊一個新的網域名稱。
如果註冊失敗,請登入 hPanel 並檢查網域註冊狀態。
如果未提供付款方式,將自動使用您的預設付款方式。
如果回應是 202 Accepted,表示付款仍在處理中,且網域尚未註冊。訂單完成後,請從 hPanel 註冊網域。
如果未提供 WHOIS 資訊,將使用該 TLD 的預設聯絡資訊。在發出請求前,請確保您的帳戶中存在所需 TLD 的 WHOIS 資訊。
某些 TLD 需要提供 additional_details,這些資訊會在完成購買前進行驗證。
使用此端點為使用者註冊新網域。
- 方法:
POST - 路徑:
/api/domains/v1/portfolio
domains_portfolio_enable-privacy-protection
啟用網域的隱私保護。
啟用隱私保護後,網域擁有者的個人資訊會從公開的 WHOIS 資料庫中隱藏。
使用此端點來保護網域擁有者的個人資訊不被公開檢視。
- 方法:
PUT - 路徑:
/api/domains/v1/portfolio/{domain}/privacy-protection
domains_portfolio_disable-privacy-protection
停用網域的隱私保護。
停用隱私保護後,網域擁有者的個人資訊會在公開的 WHOIS 資料庫中可見。
使用此端點來讓網域擁有者的資訊公開可見。
- 方法:
DELETE - 路徑:
/api/domains/v1/portfolio/{domain}/privacy-protection
domains_portfolio_renewal-information
擷取指定網域的續約資訊,包括其狀態和目前的到期日。
使用此端點來為單一網域建立續約自動化和到期監控。
- 方法:
GET - 路徑:
/api/domains/v1/portfolio/{domain}/renewal
domains_portfolio_complete-setup
註冊一個您已付款但尚未設定的網域。
當訂單完成但未註冊網域時使用此端點,例如當 Purchase new domain 回傳 202 Accepted 且網域已加入您的帳戶但未註冊,或先前的設定嘗試失敗時。不會下新訂單,也不會收取任何費用:會使用您已擁有的訂閱,並涵蓋您已付款的期間。
當訂單完成時,若註冊所需的詳細資訊遺失或無效,網域會處於等待設定的狀態。在其他地方訂購的網域也可能因相同原因而等待設定。請完成遺失的資訊,然後呼叫此端點。如果訂單本身尚未完成,網域就不會在您的帳戶中,請等待它出現在 Get domain list 中。
如果省略 domain_contacts,該 TLD 的預設 WHOIS 設定檔會用於所有四個角色。該設定檔必須存在且完整適用於該 TLD,不完整的設定檔是網域處於等待設定狀態最常見的原因。請使用 Create WHOIS profile 建立一個。
某些 TLD 需要 additional_details。這些會在設定前進行驗證,因此遺失或無效的值會在嘗試任何註冊前被拒絕。
網域會使用預設名稱伺服器且不啟用隱私保護來設定。之後請使用 Update domain nameservers 和 Enable privacy protection 來變更任一項。
成功的回應表示設定請求已被接受,並非表示網域已註冊。請輪詢 Get domain list 以了解結果,網域只有在註冊完成後才會出現在 Get domain details 中。
使用此端點來完成註冊您帳戶中等待設定的網域。
- 方法:
POST - 路徑:
/api/domains/v1/portfolio/{domain}/setup
domains_portfolio_update-nameservers
為指定網域設定名稱伺服器。
請注意,不正確的名稱伺服器設定可能導致網域無法解析或無法使用。
使用此端點來為網域設定自訂 DNS 託管。
- 方法:
PUT - 路徑:
/api/domains/v1/portfolio/{domain}/nameservers
domains_transfer_claim-free
領取您帳戶上可用的免費網域移轉並開始移轉。
與購買移轉不同,這會消耗您已有的免費網域移轉,因此不需要付款方式。
在發出請求前,請在目前的註冊商解鎖網域並取得其授權碼。移轉會先進行驗證,因此無法移轉的網域會在消耗免費網域移轉之前被拒絕。
成功的回應表示移轉已開始。完成與否取決於目前的註冊商,可以透過移轉清單端點追蹤。
如果未提供 WHOIS 資訊,將使用該 TLD 的預設聯絡資訊。在發出請求前,請確保您的帳戶中存在所需 TLD 的 WHOIS 資訊。
無法滿足的請求會以回應主體中的錯誤碼被拒絕。
使用此端點來使用您帳戶中的免費網域移轉來移轉網域。
- 方法:
POST - 路徑:
/api/domains/v1/transfers/claim
domains_transfer_get
擷取指定網域的移轉。
使用此端點來追蹤移入或移出的註冊商移轉及其狀態。
- 方法:
GET - 路徑:
/api/domains/v1/transfers/{domain}
domains_transfer_list
擷取您投資組合中的所有網域移轉。
使用此端點來監控您所有網域的移入和移出註冊商移轉。
- 方法:
GET - 路徑:
/api/domains/v1/transfers
domains_transfer_start
將網域從其他註冊商移轉至您的帳戶。
移轉會使用您已購買的網域移轉服務執行。
在發出請求前,請在目前的註冊商解鎖網域並取得其授權碼。
成功的回應表示移轉已開始。完成與否取決於目前的註冊商,可以透過移轉清單端點追蹤。
如果未提供 WHOIS 資訊,將使用該 TLD 的預設聯絡資訊。在發出請求前,請確保您的帳戶中存在所需 TLD 的 WHOIS 資訊。
使用此端點來將在其他地方註冊的網域帶入您的帳戶。
- 方法:
POST - 路徑:
/api/domains/v1/transfers
domains_whois_change-for
變更網域的 WHOIS 聯絡人設定檔。
將指定的聯絡人角色重新指向新的 WHOIS 設定檔,並將變更提交至註冊局。目前指派給這些角色的設定檔會自動解析;如果指定的角色目前不在同一個設定檔上,請求會失敗。
變更擁有者聯絡人上影響移轉的敏感欄位會啟動 IRTP 驗證。
此變更會非同步處理。
使用此端點來將已註冊的網域移至不同的聯絡資訊。
- 方法:
PUT - 路徑:
/api/domains/v1/whois/change
domains_whois_set-as-default
將 WHOIS 聯絡人設定檔設為預設。 預設設定檔會在其所屬的 TLD 註冊新網域時被預先選取。
使用此端點可避免在每次註冊時都要挑選聯絡資訊。
- 方法:
PUT - 路徑:
/api/domains/v1/whois/default/{whoisId}
domains_whois_unset-default
取消將 WHOIS 聯絡設定檔設為預設。
設定檔本身會被保留,只是不再為其 TLD 預先選取。
使用此端點可停止在新註冊時重複使用聯絡資訊。
- 方法:
DELETE - 路徑:
/api/domains/v1/whois/default/{whoisId}
domains_whois_get
擷取 WHOIS 聯絡設定檔。
使用此端點可檢視網域註冊的聯絡資訊。
- 方法:
GET - 路徑:
/api/domains/v1/whois/{whoisId}
domains_whois_delete
刪除 WHOIS 聯絡設定檔。
使用此端點可從帳戶中移除未使用的聯絡設定檔。
- 方法:
DELETE - 路徑:
/api/domains/v1/whois/{whoisId}
domains_whois_list
擷取 WHOIS 聯絡設定檔。
使用此端點可檢視可用於網域註冊的聯絡設定檔。
- 方法:
GET - 路徑:
/api/domains/v1/whois
domains_whois_create
建立 WHOIS 聯絡設定檔。
使用此端點可新增網域註冊的聯絡資訊。
- 方法:
POST - 路徑:
/api/domains/v1/whois
domains_whois_usage
擷取使用指定 WHOIS 聯絡設定檔的網域清單。
使用此端點可檢視哪些網域使用了特定的聯絡設定檔。
- 方法:
GET - 路徑:
/api/domains/v1/whois/{whoisId}/usage
hostinger-ecommerce-mcp
ecommerce_discounts_list
列出商店的折扣。可依代碼和名稱的自由文字,或依停用狀態進行篩選。 固定折扣的金額為最小貨幣單位的整數;百分比折扣則為 1 到 100 之間的整數值。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/discounts
ecommerce_discounts_create
為商店建立折扣。固定折扣以最小貨幣單位計算金額(例如 $10 為 1000);百分比折扣則為 1 到 100 之間的整數值。 免運費折扣會忽略數值。回傳已建立的折扣。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/discounts
ecommerce_miscellaneous_custom-storefront-setup-instructions
擷取逐步設定說明(以 Markdown 格式呈現),用於將自訂銷售管道連接到您的商店,並透過 Ecommerce API 保持目錄、訂單、運送和付款的同步。
- 方法:
GET - 路徑:
/api/ecommerce/v1/miscellaneous/custom-storefront-instructions
ecommerce_orders_cancel
取消訂單,並可選擇以電子郵件通知客戶。回傳更新後的訂單摘要。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/orders/{order_id}/cancel
ecommerce_orders_fulfil
在一次呼叫中為訂單建立出貨並附加追蹤資訊。省略商品項目則會出貨所有剩餘未出貨的商品。回傳更新後的訂單摘要。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/orders/{order_id}/fulfill
ecommerce_orders_list-store
以摘要形式列出商店的訂單,最新的優先。可依狀態、付款或出貨狀態、客戶電子郵件、訂單編號或自由文字查詢進行篩選。金額以最小貨幣單位表示。擷取單一訂單以查看其商品項目、地址和出貨資訊。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/orders
ecommerce_orders_retrieve
完整擷取一筆訂單:商品項目(每個都包含出貨端點所需的 id)、地址、總額明細以及含追蹤資訊的出貨記錄。金額以最小貨幣單位表示。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/orders/{order_id}
ecommerce_payments_enable-manual-method
啟用手動付款方式,讓商店無需線上付款供應商即可接受訂單。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/payment-methods/manual
ecommerce_payments_create-provider-connect-link
建立用於將付款閘道連接到商店的引導連結。回傳供商家開啟的閘道引導 URL,以及通往商店管理後台的深層連結。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/payment-providers/{provider_id}/connect-link
ecommerce_payments_list-store-providers
列出商店的付款供應商,分為已連接到商店的供應商和可安裝的閘道。絕不會暴露閘道憑證、密鑰或設定。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/payment-providers
ecommerce_products_create-image-upload-url
回傳一個簽署的 URL,用於上傳產品圖片(multipart/form-data POST)。接著呼叫 attach-image 端點,使用回傳的 object_name 來掃描並附加到產品。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}/images/upload-url
ecommerce_products_delete
從商店刪除產品及其變體。具有有效訂閱者的訂閱產品會被封存而非刪除,以保留其資料。
- 方法:
DELETE - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}
ecommerce_products_update
更新產品的名稱、描述、狀態、SEO 設定或集合。將狀態設為 published 使其可購買,設為 draft 以隱藏,或設為 archived 以停用。未提供的 SEO 設定(標題、描述、slug)會保留原值。collection_changes 會新增或移除集合,而不影響其他集合。變體、價格和庫存是透過變體端點管理,而非此處。回傳更新後的產品摘要。
- 方法:
PATCH - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}
ecommerce_products_create-digital
建立已發布的數位產品,包含單一變體和可選的外部下載連結。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/digital
ecommerce_products_list
以精簡摘要形式列出商店的產品,最新的優先(名稱、狀態、縮圖、變體數量和價格範圍)。價格為最小貨幣單位的整數,並存在於變體上。可依狀態、自由文字或一組產品 ID 進行篩選。使用 include=variants 來嵌入每個產品的變體及其價格和庫存,使用 include=media 來嵌入其媒體。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/products
ecommerce_products_create-physical
建立已發布的實體產品,包含以商店貨幣定價的單一變體。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/physical
ecommerce_products_upload-and-attach-image
從 URL 擷取點陣圖影像(JPEG、PNG、GIF 或 WebP,最大 15MB),並在一次呼叫中將其附加到產品。影像下載需要 HTTPS 連接埠 443,且不得包含內嵌憑證。最多允許一次重新導向,且其目的地必須符合相同要求。私人或保留的網路目的地、不支援的 URL 和較長的重新導向鏈會被拒絕。影像會經過病毒掃描並依內容驗證,然後儲存在 CDN 上。設定 is_thumbnail 可將其設為產品的主要影像。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}/images
ecommerce_sales-channels_list
列出商店的有效銷售管道及其完整中繼資料。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/sales-channels
ecommerce_sales-channels_create
為商店建立銷售管道。「custom」管道是無頭式的:建立您自己的前端,並透過 Ecommerce API 保持目錄、訂單、運送和付款的同步。「quick-link」管道是託管式的一頁商店,其代碼會自動產生。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/sales-channels
ecommerce_sales-channels_update
更新自訂銷售管道。面向商家的 name 和公開的 url(以管道 domain 回傳)可以變更。傳入 null 可清除某個值。
- 方法:
PATCH - 路徑:
/api/ecommerce/v1/stores/{store_id}/sales-channels/{sales_channel_id}
ecommerce_shipping_set-store
設定商店的固定費率運送價格,若運送區域尚不存在則建立之。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/shipping
ecommerce_stores_delete
軟刪除您帳戶所擁有的商店。
底層的商店資料會被保留;只有商店被標記為已刪除。
- 方法:
DELETE - 路徑:
/api/ecommerce/v1/stores/{store_id}
ecommerce_stores_list
擷取與您帳戶關聯的商店。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores
ecommerce_stores_create
為您的帳戶建立新商店。
建立商店時會同時建立一個主要銷售管道。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores
ecommerce_stores_metadata
取得商店的準備就緒中繼資料:付款方式和運送是否已設定,以及其預設貨幣。可用於在建置店面之前驗證必要條件。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/metadata
ecommerce_product-variants_update-in-batch
依 id 就地更新最多 100 個現有變體——標題、SKU、庫存、庫存追蹤和價格。請求中未包含的變體會保持不變。價格會完整取代變體現有的價格。回傳更新後的變體。
- 方法:
PATCH - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants/batch
ecommerce_product-variants_delete
從產品中刪除單一變體。
- 方法:
DELETE - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants/{variant_id}
ecommerce_product-variants_list
列出產品的變體,依排序排列,包含其選項、價格和庫存。價格為最小貨幣單位的整數,並存在於變體上。
- 方法:
GET - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants
ecommerce_product-variants_create
沿著一個或多個選項維度(例如尺寸、顏色)為產品新增變體。產品缺少的選項會自動建立;請為產品已有的每個選項提供一個值。價格為最小貨幣單位的整數,預設為商店貨幣。回傳已建立的變體。
- 方法:
POST - 路徑:
/api/ecommerce/v1/stores/{store_id}/products/{product_id}/variants
hostinger-horizons-mcp
horizons_websites_clone
將 Hostinger Horizons 網站複製為新網站。\n
當使用者想要現有網站的副本時(例如嘗試變更而不影響原始網站),請使用此工具。\n
此工具會回傳新建立副本的 ID 和 URL。原始網站保持不變。\n
若要編輯副本,請使用回傳的網站 ID 搭配 Edit website 工具,或使用者可以在 Hostinger Horizons 介面中開啟提供的網站 URL。
- 方法:
POST - 路徑:
/api/horizons/v1/websites/{websiteId}/clone
horizons_websites_list
列出使用者擁有的 Hostinger Horizons 網站。\n 當使用者詢問他們有哪些網站,或您在編輯、發布或複製網站之前需要網站 ID 時,請使用此工具。\n 每個網站都會回傳其 ID、狀態、網域以及在 Hostinger Horizons 介面中開啟的 URL。\n 完整的網站清單會在單一回應中回傳——不會分頁。
- 方法:
GET - 路徑:
/api/horizons/v1/websites
horizons_websites_create
Create new Hostinger Horizons website from the given message.\n
Use this tool when user asks you to create a website, landing page, blog
or any other type of application.\n
This tool initiates the website creation process and returns a website URL and ID.
The generation happens asynchronously.\n
After invoking this tool, your chat reply must be EXACTLY 1 sentence summarizing
that Hostinger Horizons is now creating their website and it will be ready in a few minutes
and you should provide the website URL to the user immediately
Do not write code.\n\nTo edit afterwards, use the Edit website tool with the returned
website ID, or the user can go to Hostinger Horizons interface in the provided website URL.
If the tool call fails with an error, you should provide a clear explanation of the error
and do not generate code yourself in the chat.
\n
TECHNOLOGY STACK CONSTRAINTS (STRICTLY ENFORCED):\n
The environment is limited to the following technologies.
You MUST NOT use, suggest, or implement any technology outside this list:\n
\n
-
Language: JavaScript ONLY.
-
Languages like TypeScript, Rust, Python, Java, PHP, etc., are STRICTLY PROHIBITED.\n
-
Framework: React.\n
-
Navigation: React Router.\n
-
Styling: TailwindCSS.\n
-
Components: shadcn/ui (built with @radix-ui primitives).\n
-
Icons: Lucide React.\n
-
Animations: Framer Motion.\n \n BACKEND & DATA STORAGE:\n
-
Horizons integrated backend is the EXCLUSIVE solution for persistent data storage, authentication, and database needs.\n
-
Local databases (SQLite, MySQL, etc.) are STRICTLY PROHIBITED.\n
-
Third-party services (Firebase, AWS Amplify) are allowed ONLY if explicitly requested by the user.\n \n MAPS:\n
-
OpenStreetMap is the default provider.\n
-
Alternative providers (Google Maps, Mapbox) are allowed ONLY if explicitly requested by the user.\n
-
Method:
POST -
Path:
/api/horizons/v1/websites
horizons_websites_edit
Edit an existing Hostinger Horizons website with a follow-up message.\n Use this tool when the user wants to change, extend or fix a website that already exists.\n This tool queues the requested changes and returns the website URL and ID. The changes are applied asynchronously.\n After invoking this tool, your chat reply must be EXACTLY 1 sentence summarizing that Hostinger Horizons is now applying the requested changes and they will be ready in a few minutes, and you should provide the website URL to the user immediately. Do not write code.\n If the tool call fails with an error, you should provide a clear explanation of the error and do not generate code yourself in the chat.
- Method:
POST - Path:
/api/horizons/v1/websites/{websiteId}/messages
horizons_websites_publish
Publish a Hostinger Horizons website so its latest changes go live.\n
Use this tool when the user asks to publish, deploy or make their website live.\n
This tool starts the publish process and returns the URL the website will be live on.
Publishing happens asynchronously and takes a few minutes.\n
Set is_template only when the user explicitly asks to share the website as a template:
true adds a "Use template" banner to its published pages that copies the website into the
visitor's own account, and false removes it. Leave it out to keep the current setting.\n
After invoking this tool, your chat reply must be EXACTLY 1 sentence summarizing
that the website is being published and you should provide the published URL to the user immediately.
- Method:
POST - Path:
/api/horizons/v1/websites/{websiteId}/publish
horizons_websites_get
Get the link for the user to open their website in Hostinger Horizons interface.\n
Use this tool when the user wants the link to an existing website, or when you need its
website URL before or after editing it.\n
is_in_progress is true while changes are being generated or the website is being published;
wait until it is false before publishing. published_at is when the website was last published,
is_template is whether its published pages show the "Use template" banner, and
has_ecommerce_store is whether it has an online store.\n
Websites can be edited with the Edit website tool, or by the user in Hostinger Horizons
interface in the provided website URL.
- Method:
GET - Path:
/api/horizons/v1/websites/{websiteId}
hostinger-hosting-mcp
hosting_import-wordpress-website
Import a WordPress website from an archive file to a hosting server. This tool uploads a website archive (zip, tar, tar.gz, etc.) and a database dump (.sql file) to deploy a complete WordPress website. The archive will be extracted on the server automatically. Note: This process may take a while for larger sites. After upload completion, files are being extracted and the site will be available in a few minutes. Upload credentials are generated and used internally — do not call a separate upload-url endpoint or upload the files yourself, this tool does it end-to-end. The username will be automatically resolved from the domain.
- Method:
custom - Path:
custom
hosting_deploy-wordpress-plugin
Deploy a WordPress plugin from a directory to a hosting server. This tool uploads all plugin files and triggers plugin deployment. Upload credentials are generated and used internally — do not call a separate upload-url endpoint or upload the files yourself, this tool does it end-to-end.
- Method:
custom - Path:
custom
hosting_deploy-wordpress-theme
Deploy a WordPress theme from a directory to a hosting server. This tool uploads all theme files and triggers theme deployment. The uploaded theme can optionally be activated after deployment. Upload credentials are generated and used internally — do not call a separate upload-url endpoint or upload the files yourself, this tool does it end-to-end.
- Method:
custom - Path:
custom
hosting_deploy-js-application
Deploy a JavaScript application from an archive file to a hosting server. IMPORTANT: the archive must ONLY contain application source files, not the build output, skip node_modules directory; also exclude all files matched by .gitignore if the ignore file exists. The build process will be triggered automatically on the server after the archive is uploaded. Upload credentials are generated and used internally — do not call a separate upload-url endpoint or upload the archive yourself, this tool does it end-to-end. After deployment, use the hosting_list-js-deployments tool to check deployment status and track build progress.
- Method:
custom - Path:
custom
hosting_deploy-static-website
Deploy a static website from an archive file to a hosting server. IMPORTANT: This tool only works for static websites with no build process. The archive must contain pre-built static files (HTML, CSS, JavaScript, images, etc.) ready to be served. If the website has a package.json file or requires a build command, use hosting_deploy-js-application instead. The tool uploads the archive to the website's file browser over TUS and triggers deployment; the archive is extracted and deployed directly without any build steps. Upload credentials are generated and used internally — do not call a separate upload-url endpoint or upload the archive yourself, this tool does it end-to-end. The username will be automatically resolved from the domain.
- Method:
custom - Path:
custom
hosting_list-js-deployments
List javascript application deployments for checking their status. Use this tool when customer asks for the status of the deployment. This tool retrieves a paginated list of Node.js application deployments for a domain with optional filtering by deployment states.
- Method:
custom - Path:
custom
hosting_show-js-deployment-logs
Retrieve logs for a specified JavaScript application deployment for debugging purposes in case of failure.
- Method:
custom - Path:
custom
hosting_cache_clear-website
Permanently clears all server-side cache for the website at once. Use it when content was updated and needs to be visible immediately, or after making major changes.
Also purges the Hostinger CDN cache when CDN is enabled on the website. For a WordPress installation living in a subdirectory, pass the directory query parameter to clear its cache.
- Method:
DELETE - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/cache/clear
hosting_cache_toggle-cacheless
Turns development (cacheless) mode on or off, based on the enabled flag. When enabled, nothing is cached, effectively turning off all caching for the website; use it while actively developing, testing changes, debugging issues, or when real-time updates must be visible. Disable it after finishing development work to restore the performance benefits of caching.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/cacheless-mode/toggle
hosting_cache_toggle-website
Turns server-side caching for the website on or off, based on the enabled flag. Enable it for faster page loads, reduced server load, and improved user experience; recommended for production websites. Disabling may impact performance; to temporarily bypass caching while developing or debugging, prefer toggling cacheless mode instead.
Does nothing if caching is already in the requested state.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/cache/toggle
hosting_cron-jobs_list
Returns the list of cron jobs configured for the specified account, including their schedule and command.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/cron-jobs
hosting_cron-jobs_create
Creates a cron job for the specified account from a schedule expression and a command.
Returns the created cron job, including its uid, which is required to delete the cron job or fetch its output.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/cron-jobs
hosting_cron-jobs_delete
Permanently deletes the cron job identified by its uid.
The uid is returned by the list cron jobs endpoint.
- Method:
DELETE - Path:
/api/hosting/v1/accounts/{username}/cron-jobs/{uid}
hosting_cron-jobs_output
Returns the output captured from the last execution of the cron job identified by its uid.
The uid is returned by the list cron jobs endpoint.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/cron-jobs/{uid}/output
hosting_databases_change-password
Changes the password for the specified database user.
The database name must be the full name returned by the list databases endpoint. The password must also be updated in any website configuration that uses this database.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/databases/{name}/change-password
hosting_databases_list
Returns a paginated list of databases for the specified account.
Use the domain and is_assigned filters to find databases assigned to a specific domain.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/databases
hosting_databases_create
Creates a database with a database user and password for the specified account.
The database name and user are automatically prefixed with the account username when needed.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/databases
hosting_databases_delete
Permanently deletes a database and its remote connections.
The database name must be the full name returned by the list databases endpoint.
- Method:
DELETE - Path:
/api/hosting/v1/accounts/{username}/databases/{name}
hosting_databases_create-remote-connection
Allows a remote host to connect to the specified database.
Provide an IPv4/IPv6 address, or "%" to allow any host. The database name must be the full name returned by the list databases endpoint. Database creation is synchronous, so a 404 here means no database with that name exists under the username, not that it is still being created.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections
hosting_databases_delete-remote-connection
永久移除一筆遠端存取規則,撤銷指定主機對該資料庫的遠端存取權限。
使用必要的 ip 查詢參數(IPv4/IPv6 位址,或 "%",與列出遠端連線端點所回傳的內容完全一致)來識別該規則。資料庫名稱必須是列出資料庫端點所回傳的完整名稱。
- 方法:
DELETE - 路徑:
/api/hosting/v1/accounts/{username}/databases/{name}/remote-connections
hosting_databases_list-remote-connections
回傳指定帳戶的遠端存取規則:允許連線至該帳戶資料庫的遠端主機(IPv4/IPv6 位址,或 "%" 代表任何主機)。
使用網域篩選器,僅回傳指派給特定網域的資料庫規則。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/databases/remote-connections
hosting_databases_repair
非同步修復損毀的資料庫資料表。
當回報資料庫錯誤、當機或損毀時使用。資料庫名稱必須是列出資料庫端點所回傳的完整名稱。
- 方法:
PATCH - 路徑:
/api/hosting/v1/accounts/{username}/databases/{name}/repair
hosting_databases_setup-website
為網站建立新的 MySQL 資料庫,並將其連線詳細資料寫入網站的環境變數,然後重新啟動應用程式。平台會產生密碼(以及資料庫名稱和使用者,除非另行提供)。密碼永遠不會回傳;應用程式會從環境中讀取。
寫入的變數:DB_HOST、DB_PORT、DB_NAME、DB_USER、DB_PASSWORD 和 DATABASE_URL(mysql://user:password@host:port/name、使用者與密碼以百分比編碼)。現有變數會保留。如果網站已有任何具有這些名稱之一的變數,呼叫會以 422 失敗且不會建立任何內容;Replace Node.js environment variables 端點可移除它們。
此呼叫之後,這些變數就是一般的環境變數:Replace Node.js environment variables 端點會像其他變數一樣變更或移除它們。
對於在程序啟動時讀取環境變數的應用程式(例如 Express 或 NestJS),重新啟動就足夠了。將變數烘焙到建置輸出中的框架(Next.js、NEXT_PUBLIC_*)只會在全新建置(Start Node.js build 端點)後看到新值。
請求中的密碼會被忽略;平台一律會自行產生。選用的 name 和 user 是識別碼,不是機密。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/databases/setup
hosting_databases_phpmyadmin-link
回傳指定資料庫的 phpMyAdmin 直接登入連結。
當需要視覺化資料庫介面來執行 SQL 查詢、匯入、匯出或資料表管理時使用。資料庫名稱必須是列出資料庫端點所回傳的完整名稱。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/databases/{name}/phpmyadmin-link
hosting_datacenters_list
根據可用的資料中心容量與您訂單的託管方案,擷取可用於設定託管方案的資料中心清單。清單中的第一個項目是最符合您特定訂單需求的項目。
- 方法:
GET - 路徑:
/api/hosting/v1/datacenters
hosting_domains_generate-free-subdomain
產生一個獨特的免費子網域,可用於託管服務,而無需購買自訂網域。免費子網域可讓您立即開始使用託管服務,之後隨時可以將自訂網域連線到您的網站。
- 方法:
POST - 路徑:
/api/hosting/v1/domains/free-subdomains
hosting_domains_list-website-parked
擷取在所選網站下建立的所有停放或別名網域。
使用此端點檢查特定網站的停放網域設定,包括指派給每個停放網域的父網域和根目錄。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains
hosting_domains_create-website-parked
為所選網站建立停放或別名網域。
提供要停放於網站的網域名稱或 IP 位址,使其提供與父網域相同的內容。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains
hosting_domains_delete-website-parked
從所選網站刪除現有的停放或別名網域。
使用此端點移除不再需要的停放網域。
- 方法:
DELETE - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/parked-domains/{parkedDomain}
hosting_domains_list-website-subdomains
擷取在所選網站下建立的所有子網域。
使用此端點檢查特定網站的子網域設定,包括指派給每個子網域的父網域和根目錄。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/subdomains
hosting_domains_create-website-subdomain
為所選網站建立新的子網域。
提供子網域前綴,並可選擇性地提供自訂目錄或網站公開目錄作為子網域根目錄。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/subdomains
hosting_domains_delete-website-subdomain
從所選網站刪除現有的子網域。
使用此端點移除不再需要的子網域。
- 方法:
DELETE - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/subdomains/{subdomain}
hosting_domains_verify-ownership
驗證單一網域的所有權並回傳驗證狀態。
使用此端點檢查網域是否可供您存取,然後再用於新網站。如果網域可存取,回應將包含 is_accessible: true。如果不可存取,請將給定的 TXT 記錄新增至您網域的 DNS 記錄,然後再次嘗試驗證。請注意,新的 TXT DNS 記錄可能需要長達 10 分鐘才能傳播。
使用 Hostinger 的免費子網域(*.hostingersite.com)時,請略過此驗證。
- 方法:
POST - 路徑:
/api/hosting/v1/domains/verify-ownership
hosting_files_generate-upload-url
產生帶有驗證憑證的檔案瀏覽器上傳 URL,用於直接將檔案上傳至網站的檔案儲存空間。
當網站仍在設定中(列出網站設定端點上的 status: running)時,此端點會回傳 409 及 Retry-After 標頭:請等待該秒數後重試,或輪詢網站設定直到狀態為 completed。
回傳 url、auth_key 和 rest_auth_key。使用這些項目透過 TUS 可續傳上傳協定(TUS 1.0.0)將檔案上傳至網站的 public_html 目錄。在下列每個請求中傳送 X-Auth: {auth_key} 和 X-Auth-Rest: {rest_auth_key} 標頭。
- 建立上傳:將
POST傳送至{url}/{relative_file_path}?override=true,並帶有標頭upload-length: {file size in bytes}和upload-offset: 0。預期收到201 Created。 - 上傳檔案:將檔案位元組傳送至相同位置(任何 TUS 1.0.0 用戶端,或帶有追蹤進度之
upload-offset標頭的PATCH請求),直到完成。
relative_file_path 是 public_html 內的目的地路徑,例如 app.zip。
除了 TUS 用戶端之外,純粹的 curl 也可以運作:
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
- 方法:
POST - 路徑:
/api/hosting/v1/files/upload-urls
hosting_files_list-website-and-directories
列出網站文件根目錄下的檔案和目錄。
使用 directory 瀏覽相對於文件根目錄的子目錄。符號連結項目會列出,但絕不會被遍歷或解析。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/domains/{domain}/files
hosting_files_website-content
取得單一檔案的內容,相對於網站的文件根目錄。
唯讀;拒絕符號連結、過大的檔案、非文字檔案類型,以及被識別為包含機密(例如憑證檔案)的檔案——此端點不會回傳這些內容。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/domains/{domain}/files/content
hosting_git_auto-deployment-settings
回傳網站的 Git 自動部署設定:哪個儲存庫和分支部署到哪個目錄,以及推送是否觸發部署。is_enabled 為 false 時會保留儲存庫連結,但忽略推送。
當網站未設定自動部署時,每個欄位皆為 null。使用 Update Git auto-deployment settings 儲存設定。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings
hosting_git_update-auto-deployment-settings
建立或取代網站的 Git 自動部署設定:儲存庫、分支、文件根目錄下要部署的目錄,以及 is_enabled。請傳送完整設定;is_enabled 預設為 true,directory 預設為文件根目錄。installation_uuid 必須是來自 List Git installations 且屬於與網站相同客戶的安裝。
對於 PHP 和靜態網站,以 is_enabled true 儲存會立即部署該分支,之後每次推送到該分支都會再次部署。對於 Node.js 和 Website Builder 網站,儲存不會複製任何內容。在 Node.js 網站上,使用 source_type git 透過 Start Node.js build 啟動第一次部署;之後推送會使用為網站儲存的建置設定觸發新的建置。
- 方法:
PUT - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings
hosting_git_delete-auto-deployment-settings
移除網站的 Git 自動部署設定。已部署的檔案會保留在網站上;推送會停止部署,直到再次儲存設定。即使未設定任何內容,也會成功。
- 方法:
DELETE - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/git/auto-deployments/settings
hosting_git_list-installations
列出客戶已連線的 Git 提供者帳戶。除非 status 篩選器另有指定,否則僅回傳狀態為 active 的安裝。
空清單表示客戶沒有作用中的安裝。也請檢查 status=suspended 和 status=pending。如果完全沒有,則需要在 hPanel(網站、管理、進階、Git;或新增網站、Node.js Web 應用程式、匯入 Git 儲存庫)中連線一次 Git 提供者(GitHub 或 GitLab);此端點隨後會列出新的安裝。
使用 uuid 作為 List Git installation repositories 的路徑參數,並作為 Start Node.js build 中的 installation_uuid(帶有 source_type git)以及 Update Git auto-deployment settings 中的參數。
- 方法:
GET - 路徑:
/api/hosting/v1/git/installations
hosting_git_list-installation-repositories
列出 Git 安裝可以存取的儲存庫,直接從提供者即時讀取。適用於 github 和 gitlab 安裝。請使用作用中的安裝:已暫停或待處理的安裝仍會被查詢,且呼叫會以提供者回傳的任何內容失敗。清單會依提供者回傳的順序在前 500 個儲存庫處截斷;當帳戶有更多儲存庫時,請直接指定儲存庫名稱,而不是搜尋此清單。
owner、name 和一個分支(default_branch 或其他分支)會放入 Start Node.js build 的 source_options 或 Update Git auto-deployment settings。當安裝不屬於該客戶時,回傳 404。每個 API 用戶端每分鐘限制 10 次呼叫(超過時回傳 429)。
- 方法:
GET - 路徑:
/api/hosting/v1/git/installations/{uuid}/repositories
hosting_git_deploy-website-repository
將 Git 儲存庫複製到網站的目錄中,或再次拉取。空的或不存在的目錄會取得該分支的複製。已包含此儲存庫和分支的目錄會重設為其最後一次提交並拉取:伺服器上對儲存庫追蹤之檔案所做的變更會被捨棄,未追蹤的檔案則會保留。包含其他檔案(包括另一個儲存庫或此儲存庫的另一個分支)的目錄會被拒絕。當儲存庫具有 composer.json 時,composer install 會在複製或拉取後執行。
呼叫會等待部署完成並回傳其日誌。is_success 為 false 表示 Git 或 composer 失敗,日誌會說明原因。當第一次呼叫仍在等待伺服器時,對相同目錄的第二次呼叫會被拒絕。如果請求逾時,部署仍可能在伺服器上完成;稍後以相同的儲存庫和分支再次呼叫會進行拉取。
私有儲存庫需要 SSH URL 和帳戶的 Git SSH 金鑰(來自 Generate Git SSH key),
並將金鑰新增至儲存庫作為部署金鑰。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/git/repositories/deploy
hosting_git_list-website-repositories
列出與網站目錄關聯的 Git 儲存庫,包含 Deploy website Git repository 或位於 hPanel 的 Git 區段:每個儲存庫的複製 URL、分支和目錄。
複製失敗的儲存庫仍會保留在清單中;再次部署會重試複製。GitHub
和 GitLab 自動部署不會列在這裡;請參閱 Get Git auto-deployment settings。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/git/repositories
hosting_git_ssh-public-key
傳回託管帳戶的公開 SSH 金鑰。Deploy website Git repository 使用此金鑰透過 SSH 複製和拉取,
因此一旦將金鑰新增至私有儲存庫作為部署金鑰(在 Git 主機上),私有儲存庫即可運作。
當帳戶尚無金鑰時,public_key 為 null。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/git/ssh-key
hosting_git_generate-ssh-key
建立託管帳戶的 SSH 金鑰對並傳回公開金鑰。當帳戶已有金鑰時, 傳回該金鑰且不變更。一個金鑰服務於帳戶的所有網站;在部署私有儲存庫之前, 將公開金鑰新增至該儲存庫作為部署金鑰。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/git/ssh-key
hosting_headless_submit-build-report
提交 headless 技能在執行結束時(包括提前停止)寫入的建置報告, 以便 Hostinger 了解建置卡住的位置。每次呼叫傳送一份報告,以 報告 JSON 作為請求主體,且不變更。僅在使用者同意時才傳送報告。
報告必須符合 report.schema.json v1;無效的報告會傳回 422 且不會 儲存。報告與已驗證的帳戶關聯,因此請勿在其中新增帳戶詳細資料。
- 方法:
POST - 路徑:
/api/hosting/v1/headless/agent-reports
hosting_nodejs_list-builds
擷取特定網站的 Node.js 建置程序分頁清單。
每個建置代表 Node.js 建置管線的一次執行。使用 states
查詢參數依建置狀態(pending、running、completed、failed)篩選結果。
使用建置中的 uuid 透過 Get Node.js Build Logs 端點輪詢其輸出。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds
hosting_nodejs_start-build
使用網站檔案儲存中已存在的檔案啟動 Node.js 建置程序。
警告:成功時會覆寫網站現有內容且無法 復原 — 在呼叫此端點前請確認這是預期的操作。
使用 source_type archive 時,source_options.archive_path 必須指向伺服器上已存在的
封存檔(相對於網站文件根目錄)。請先使用
Generate Upload URL 端點取得憑證並上傳封存檔。若要
在啟動前從封存檔自動偵測建置設定,請先呼叫
Get Node.js Build Settings from Archive 端點。
使用 source_type git 時,source_options 攜帶 owner、repository、branch 和
installation_uuid。從 List Git installations 取得安裝,並從 List Git installation repositories 取得擁有者和
儲存庫;分支會以其目前
HEAD 複製。安裝必須屬於與網站相同的客戶。
傳回的建置 uuid 可用於輪詢進度和透過
Get Node.js Build Logs 端點擷取日誌。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds
hosting_nodejs_build-settings
傳回網站儲存的建置設定:框架(app_type)、Node.js 版本、
根目錄和輸出目錄、建置腳本、進入點檔案和套件管理員。儲存的設定
驅動 Git 自動部署建置。透過 API 啟動的建置使用該
請求中傳送的值,且僅在尚無設定存在時將這些值儲存在此。
在第一次建置或第一次設定更新儲存這些值之前,傳回 404。在
建置失敗後使用此端點檢查框架或進入點檔案是否被錯誤偵測,然後
使用 Update Node.js build settings 端點修正。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings
hosting_nodejs_update-build-settings
取代網站儲存的建置設定。傳送完整集合:node_version 為
必填,且您省略的每個可為 null 欄位都會儲存為 null。當尚無
設定時會建立設定。
這不會啟動建置。儲存的設定驅動 Git 自動部署建置;透過
API 啟動的建置使用該請求中傳送的值,因此若要使用修正的
設定重新建置,請以相同值呼叫 Start Node.js build。典型修正:自動偵測後
錯誤的 app_type,或 express、fastify、nest、nuxt 和 hono
應用程式缺少 entry_file。
- 方法:
PUT - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings
hosting_nodejs_build-settings-from-archive
從伺服器上封存檔內的 package.json 自動偵測 Node.js 建置設定。
在呼叫 Start Node.js Build 之前使用此端點預覽將使用的設定,
或讓使用者檢閱和覆寫值(框架、Node.js 版本、根目錄、
輸出目錄、建置腳本),然後再進行建置。
封存檔必須已存在於網站的檔案儲存中。請先使用
Generate Upload URL 端點取得憑證並上傳封存檔。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings/from-archive
hosting_nodejs_list-environment-variables
列出目前為網站設定的 Node.js 環境變數。值一律
遮罩為 ********,且無法透過此 API 讀回。使用此端點查看
已設定的金鑰或驗證變更,而非讀取值。
若要變更變數,請使用 Replace Node.js environment variables 端點。它會取代
整個集合,因此切勿將此回應中的遮罩值複製到該請求中;請改為
傳送完整的所需集合,並使用來自專案 .env 檔案或使用者
提示的實際值。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings/env
hosting_nodejs_replace-environment-variables
以提供的變數取代網站的 Node.js 環境變數。這是
完整取代:請求中未包含的任何變數都會被刪除,且傳送空的 env_vars
陣列會刪除所有變數。儲存會寫入值並重新啟動執行中的 Node.js
程序。
對於在程序啟動時讀取環境變數的應用程式(例如
Express 或 NestJS),重新啟動就足夠了。對於將變數烘焙到建置中的框架則
不足。Next.js standalone 就是其中之一:建置時值(包括 NEXT_PUBLIC_*)需要
全新的建置。在此呼叫後,使用 Start Node.js build 端點,讓這些應用程式
取得新值。
List Node.js environment variables 端點傳回遮罩值(********),因此
切勿將此回應中的值複製到該請求中。請務必傳送完整的所需集合,並使用
來自專案 .env 檔案或使用者提示的實際值。
- 方法:
PUT - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/settings/env
hosting_nodejs_analyse-failed-build
根據建置日誌、專案檔案清單和 package.json,傳回建置失敗原因及
修正方法的 AI 分析。僅 failed 狀態的建置可被分析;
任何其他狀態傳回 422。當無法產生分析時,analysis 和
solution 皆為 null,此時請改為閱讀 Get NodeJS build logs。
每次呼叫都會重新執行分析,因此每個失敗建置請呼叫一次並保留結果。 每個 API 用戶端每分鐘限制 5 次呼叫(超過時傳回 429)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/{uuid}/analysis
hosting_nodejs_build
依 UUID 傳回一個建置:其狀態(pending、running、completed、failed)、
執行時使用的選項和時間戳記。在建置為 pending 或 running 時輪詢此端點。當
建置失敗時,閱讀 Get NodeJS build logs 和 Analyse failed Node.js build 以了解原因。
當 UUID 不屬於此網站的建置時,傳回 404。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/{uuid}
hosting_nodejs_build-logs
從特定的 Node.js 建置程序擷取日誌。
若要在建置執行時串流即時輸出,請在建置狀態為 running 時
重複輪詢此端點,將先前傳回的 lines 計數
作為 from_line 傳送,以僅擷取自上次呼叫以來的新輸出。
日誌內容可能包含 ANSI 跳脫序列(色彩碼)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/builds/{uuid}/logs
hosting_nodejs_runtime-logs
傳回 Node.js 應用程式的執行時期 console 日誌項目,最舊的在前,每個項目包含
時間戳記、層級和訊息。在第一次呼叫時傳送 period(1h、1d、1w 或 1m)
並可選擇性地傳送 levels 和 limit(1-5000,預設 1000);當符合的項目多於
limit 時,保留最新的項目。
若要輪詢新項目,請將先前回應中的 total_lines + 1 作為 from_line 傳送
並省略 period;period 和 from_line 不能組合。非 JSON 且
沒有時間戳記、層級和訊息的行會被跳過,因此 logs 可能包含少於 limit
的項目,而 total_lines 計算每個原始行。時間戳記早於
last_deployed_at 的項目屬於先前的部署。當
應用程式尚未寫入日誌檔案時,傳回空的 logs 清單。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/runtime-logs
hosting_nodejs_clear-runtime-logs
清空 Node.js 應用程式的執行時期日誌檔案。此操作無法復原,因此在呼叫前 請與使用者確認。即使尚無日誌檔案存在,也會傳回成功。
在重現問題之前使用此端點,以便下一次 Get Node.js runtime logs 呼叫傳回
僅新的項目;請以 period 再次開始該呼叫,而非重複使用清除前的 from_line。
- 方法:
DELETE - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/runtime-logs
hosting_nodejs_restart-application
重新啟動網站的 Node.js 伺服器程序。不會重新建置或重新部署 應用程式。使用此端點套用環境或設定變更,或恢復無回應的 應用程式。
僅適用於伺服器端應用程式(Express、Next.js、NestJS 等)。靜態 前端應用程式(React、Vue、Vite)沒有持續的伺服器程序,因此重新啟動它們 沒有作用。即使網站沒有可重新啟動的伺服器程序,也會傳回成功。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/server/restart
hosting_nodejs_list-vulnerabilities
列出在 Node.js 網站上偵測到的已知 npm 套件漏洞,並附帶
公告中繼資料(嚴重性、CVSS 分數、CVE、公告 URL)。結果從
最嚴重到最不嚴重排序,然後依發布日期(最新的在前)排序。使用
severities 查詢參數篩選。
具有 is_patchable 設定為 true 的漏洞可透過
Patch Node.js Vulnerabilities 端點自動修正,該端點會開啟 GitHub pull request,其中包含
更新的套件版本。自動修正僅適用於從已連線的 GitHub 儲存庫部署的網站。
具有 is_patching_in_progress 設定為 true 的漏洞已包含在開啟的修補 pull request 中;當任何修補 pull request
開啟時,此網站的新修補請求會被拒絕,直到該請求被合併
或關閉。
資料來自定期相依性掃描,因此可能落後於最新的部署。 空的清單表示最近的掃描未發現漏洞;這不 保證目前的部署沒有漏洞。適用於 Business 和 Cloud Hosting 方案。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/vulnerabilities
hosting_nodejs_patch-vulnerabilities
Patches the selected Node.js vulnerabilities by updating the affected package versions
in package.json and opening a GitHub pull request in the connected repository. The
customer reviews and merges the pull request; merging triggers the automatic deployment.
Auto-fix is only available for websites deployed from a connected GitHub repository. Websites deployed from an archive have no auto-fix path and return a 404. The Hostinger GitHub App needs write access to the repository; without it the request fails with a 403 explaining the missing permission.
Only vulnerabilities with is_patchable set to true can be patched. Non-patchable
IDs in the selection are skipped; the pull request covers the patchable subset, listed
in patched_vulnerability_ids. Selections without any patchable vulnerability are
rejected with a 422. Only one patch pull request can be open at a time per website;
close or merge it before patching again. Available on Business and Cloud Hosting plans.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/nodejs/vulnerabilities/patch
hosting_websites_list-setups
Returns the website setups started in the last 24 hours for the hosting accounts
accessible to the authenticated client, newest first. Narrow the list with the
order_id, subscription_id or domain filters.
Meant for polling right after creating a website or starting a website setup: the
website shows up in the websites list before its server-side setup has finished, and
while the setup is running endpoints that operate on that website may respond with
404 or 409. Poll this endpoint with the domain filter every 10 to 15 seconds and
wait for status: completed before uploading files, deploying or creating databases.
failed means the setup stopped before finishing or has not reported progress for
over an hour. Setups older than 24 hours are not listed.
type is the website type the setup was started with (wordpress, headless_wordpress,
headless_ecommerce, headless_pocketbase), or null for an empty website.
- Method:
GET - Path:
/api/hosting/v1/onboardings
hosting_websites_start-setup
Starts a website setup on a Web or Cloud hosting order and returns the created setup
right away; the website itself is provisioned asynchronously. Poll the list website
setups endpoint with the domain filter every 10 to 15 seconds and wait for
status: completed before uploading files, deploying or creating databases.
Omit type for an empty website. type: wordpress installs WordPress in the website
root with the admin user, email and password from wordpress, the domain as the site
title, and en_US when wordpress.language is omitted. The headless types
(headless_wordpress, headless_ecommerce, headless_pocketbase) create a headless
website; headless_wordpress additionally installs WordPress into the cms directory
of the website root with generated credentials.
Omit domain to set the website up on a generated temporary free subdomain.
When the order has no hosting account yet, the setup creates one first, in the datacenter
given by datacenter_code or the order's default datacenter when it is omitted.
Returns 404 when the order does not exist or is not accessible to the authenticated
client, and 409 with a Retry-After header while a setup for the same domain is still
running.
- Method:
POST - Path:
/api/hosting/v1/orders/{order_id}/onboardings
hosting_orders_list
Retrieve a paginated list of orders accessible to the authenticated client.
Only Web and Cloud hosting orders are listed. Agency Plan orders are listed by
GET /api/agency-hosting/v1/orders.
This endpoint returns orders of your hosting accounts as well as orders of other client hosting accounts that have shared access with you.
Use the available query parameters to filter results by order statuses or specific order IDs for more targeted results.
- Method:
GET - Path:
/api/hosting/v1/orders
hosting_php_reset-extensions
Resets all PHP extensions of the website to their default state.
Use it to recover from extension conflicts or restore the original configuration.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/php/extensions/reset
hosting_php_get
Returns the full PHP configuration for the website: current version, available versions
(supported and unsupported), enabled/disabled extensions, options with their current value,
default, type and the plan limit (max), and conflicting extension groups.
Use it to check the current PHP setup before updating the version, extensions or options.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/php/details
hosting_php_info
Returns the full phpinfo page (HTML) for the website.
Use it to debug PHP issues or inspect the complete PHP environment of the website.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/php/php-info
hosting_php_update-extensions
Enables or disables PHP extensions (modules) for the website.
Use the Get PHP details endpoint to check the current extension states before changing them.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/php/extensions
hosting_php_update-options
Updates PHP options for the website (e.g. memory_limit, max_execution_time, upload_max_filesize).
Only provide the options you want to change, inside the options object.
Values above the account plan limit are silently capped to that limit, so the request can succeed with a smaller applied value. Call the Get PHP details endpoint afterwards to read the applied value.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/php/options
hosting_php_update-version
Changes the PHP version of the website.
Use the Get PHP details endpoint to see the versions available for the website.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/php/version
hosting_redirects_list-website
Returns a paginated list of redirects configured for the selected website.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/redirects
hosting_redirects_create-website
Creates a redirect from a URL on the selected website to another URL or IP address.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/redirects
hosting_redirects_delete-website
Permanently deletes the redirect identified by its source URL.
Pass the from value exactly as returned by the list redirects endpoint.
- Method:
DELETE - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/redirects
hosting_ssl_install
Requests a lifetime SSL certificate for the website. The installation runs in the background;
Get SSL status reports active or failed when it ends. An active lifetime certificate
does not block the request: a new installation is requested, which is how a certificate is
reinstalled.
Returns 422 for free subdomains (their certificate is managed by the platform), while an
installation is installing or waiting_for_retry, when the website's certificate was
revoked (it cannot be reissued), and when an uploaded custom certificate is installed; that
one has to be uninstalled first.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/ssl/setup
hosting_ssl_status
Returns the SSL state of the website: the certificate status and provider, whether the
certificate is a lifetime one managed by the platform, whether HTTP requests are redirected to
HTTPS, when the certificate stops being valid and the last installation error.
installing and waiting_for_retry mean an installation is in progress. failed means the
last installation gave up, or the website was not updated for 60 minutes while installing;
last_error holds the reason when it is a known message, otherwise it is null. expired
means the assigned certificate's validity has ended. not_installed means no certificate is
assigned. Free subdomains use a platform-managed certificate: with no installation recorded
they report active with provider and expires_at null.
- Method:
GET - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/ssl/status
hosting_ssl_toggle-https-redirect
Turns the HTTP to HTTPS redirect of the website on or off, based on is_enabled. Does
nothing when the redirect is already in the requested state. Turning it on requires an
installed certificate (status active or expired on Get SSL status) and returns 422
when there is none; turning it off is always accepted.
- Method:
PATCH - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/ssl/https-redirect/toggle
hosting_ssl_uninstall
Removes the SSL certificate assigned to the website, turns the HTTPS redirect off and cancels
a pending installation retry. The website serves plain HTTP until a new installation
completes. Get SSL status reports not_installed as soon as the call returns; the call also
succeeds when no certificate is assigned, so repeating it is safe.
Returns 422 for free subdomains (their certificate is managed by the platform) and while an
installation is installing.
- Method:
DELETE - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/ssl
hosting_websites_list
Retrieve a paginated list of websites (CloudLinux, Builder, and Horizons) accessible to the authenticated client.
This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you.
Each website includes a website_type field describing the type of
website detected on the underlying platform (wordpress, builder,
horizons, nodejs, or other). Some fields, such as
vhost_type, username, and root_directory, only apply to
CloudLinux websites and are null for other platforms.
Use website_types to list only websites of a given detected type, e.g. only
WordPress websites (website_types=wordpress) or only Node.js websites
(website_types=nodejs). Combine with the other available query parameters to
filter by username, order ID, enabled status, or domain name for more targeted
results.
A website appears in this list before its server-side setup has finished, and
is_enabled reflects suspension, not readiness. To know when a newly created website
is ready for file, deploy or database operations, poll the list website setups
endpoint instead.
- Method:
GET - Path:
/api/hosting/v1/websites
hosting_websites_create
Deprecated: use POST /api/hosting/v1/orders/{order_id}/onboardings (start website setup)
instead. It takes the same domain and datacenter_code, can also install WordPress, and
returns the created setup.
Create a new website for the authenticated client.
You must choose which hosting order to create this website on. Pass that
order as order_id together with the domain name. List orders to see
available IDs; the website is provisioned on that order's hosting plan.
Only Web and Cloud hosting orders are accepted. To create a website on an Agency
Plan order, use POST /api/agency-hosting/v1/orders/{order_id}/websites/setups.
When the order has no hosting account yet, a new hosting account is set up first, in the
datacenter given by datacenter_code or the order's default datacenter when it is omitted.
Subsequent websites will be hosted on the same datacenter automatically.
Website creation is asynchronous and takes up to a few minutes. Poll the list website
setups endpoint with the domain filter every 10 to 15 seconds and wait for status: completed before uploading files, deploying or creating databases. While the setup is
running, endpoints that operate on the website may respond with 404 or 409.
is_enabled on the websites list reflects suspension, not readiness.
- Method:
POST - Path:
/api/hosting/v1/websites
hosting_websites_deploy-static-site-archive
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.
- Method:
POST - Path:
/api/hosting/v1/accounts/{username}/websites/{domain}/deploy
hosting_websites_delete
This endpoint permanently removes a website and all of its data. This action cannot be undone. Before calling it, make sure the user understands the consequences and explicitly confirms that they want to proceed.
All website files, databases and related configuration will be removed. The hosting plan itself is kept, so a new website can be created on it afterwards.
Supported websites: main and addon domain websites on web hosting plans, and Website Builder websites. Parked domains and subdomains cannot be deleted with this endpoint. The domain must be the exact website domain, not a preview domain or an alias.
Returns 404 when the domain does not exist or does not belong to the authenticated client.
Website removal is processed asynchronously and can take a few minutes to complete. The response returns before the removal finishes.
- Method:
DELETE - Path:
/api/hosting/v1/websites/{domain}
hostinger-mail-mcp
mail_aliases_create-alias
Create an alias for the given mailbox. The alias address is formed from the given local part and the domain of the mailbox. Messages sent to the alias are delivered to the mailbox.
- Method:
POST - Path:
/api/mail/v1/mailboxes/{mailboxId}/aliases
mail_aliases_delete-alias
Delete an alias. Messages sent to the alias address are no longer delivered to the mailbox.
- Method:
DELETE - Path:
/api/mail/v1/aliases/{aliasId}
mail_aliases_list
Retrieve a paginated list of aliases across all mailboxes of a mail order.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/aliases
mail_api-tokens_create
Create an API token for the given mail order. The token grants access to the Hostinger Email API, where you can provision and manage the mailboxes it is scoped to.
The plaintext token is returned only in this response, never again.
A maximum of 10 tokens can exist per order. Use
scope.has_all_mailboxes to cover all current and future mailboxes,
or list specific mailboxes in scope.mailbox_ids.
- Method:
POST - Path:
/api/mail/v1/orders/{orderId}/api-tokens
mail_api-tokens_revoke
Revoke an API token. The token immediately loses access to the Hostinger Email API. This action cannot be undone.
- Method:
DELETE - Path:
/api/mail/v1/api-tokens/{tokenId}
mail_api-tokens_list
Retrieve a paginated list of Hostinger Email API tokens across all your mail orders, optionally filtered by order. Plaintext tokens are never included; they are returned only when a token is created.
- Method:
GET - Path:
/api/mail/v1/api-tokens
mail_autoreplies_create
Create an automatic reply for the given mailbox. A mailbox can have
only one autoreply. Omit starts_at to activate the autoreply
immediately and omit ends_at to keep it active indefinitely.
- Method:
POST - Path:
/api/mail/v1/mailboxes/{mailboxId}/autoreplies
mail_autoreplies_update
Replace the autoreply with the given content and schedule. Omitted
optional fields are cleared: omit starts_at to activate the
autoreply immediately and omit ends_at to keep it active
indefinitely.
- Method:
PUT - Path:
/api/mail/v1/autoreplies/{autoreplyId}
mail_autoreplies_delete
Delete the autoreply of a mailbox. The mailbox stops sending automatic replies immediately.
- Method:
DELETE - Path:
/api/mail/v1/autoreplies/{autoreplyId}
mail_autoreplies_list
Retrieve a paginated list of autoreplies across all mailboxes of a mail order.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/autoreplies
mail_catchalls_create-catch-all
Create a catch-all that routes all messages sent to unknown addresses of the domain to the given mailbox. The mailbox address receives a confirmation email and the catch-all becomes active only after it is confirmed. A domain can have only one catch-all.
- Method:
POST - Path:
/api/mail/v1/mailboxes/{mailboxId}/catchalls
mail_catchalls_delete-catch-all
Delete a catch-all. Messages sent to unknown addresses of the domain are no longer routed to the mailbox.
- Method:
DELETE - Path:
/api/mail/v1/catchalls/{catchallId}
mail_catchalls_list-catch-alls
Retrieve a paginated list of catch-alls across all mailboxes of a mail order.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/catchalls
mail_catchalls_resend-catch-all-confirmation
Resend the confirmation email to the mailbox address of an unconfirmed catch-all.
- Method:
POST - Path:
/api/mail/v1/catchalls/{catchallId}/confirmation/resend
mail_forwarders_create
Create a forwarder from the given mailbox to the destination address. The destination receives a confirmation email and forwarding becomes active only after it is confirmed.
- Method:
POST - Path:
/api/mail/v1/mailboxes/{mailboxId}/forwarders
mail_forwarders_delete
Delete a forwarder. The mailbox stops forwarding messages to the destination address immediately.
- Method:
DELETE - Path:
/api/mail/v1/forwarders/{forwarderId}
mail_forwarders_list
Retrieve a paginated list of forwarders across all mailboxes of a mail order.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/forwarders
mail_forwarders_resend-confirmation
Resend the confirmation email to the destination address of an unconfirmed forwarder.
- Method:
POST - Path:
/api/mail/v1/forwarders/{forwarderId}/confirmation/resend
mail_forwarders_update-keep-copy-setting
Enable or disable keeping a copy of forwarded messages in the mailbox.
- Method:
PATCH - Path:
/api/mail/v1/forwarders/{forwarderId}/keep-copy
mail_logs_list-access
Retrieve paginated access logs for the domain attached to the given mail order. Supports filtering by account, date range, protocol, status, and deletion flag. Results are sorted by timestamp descending.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/logs/access
mail_logs_list-action
Retrieve paginated account action logs (administrative and user actions) for the given mail order. Supports filtering by account, date range, and status. Results are sorted by timestamp descending.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/logs/action
mail_logs_list-inbound
Retrieve paginated inbound (received mail) delivery logs for the domain attached to the given mail order. Supports filtering by account, date range, status, sender, and recipient. Results are sorted by timestamp descending.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/logs/inbound
mail_logs_list-mailbox-action
Retrieve paginated mailbox action logs (message and mailbox events) for a mailbox in the given mail order. The mailbox email must belong to the order's domain. Supports date range and event type filters. Results are sorted by timestamp descending.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/logs/mailbox-actions
mail_logs_list-outbound
Retrieve paginated outbound (sent mail) delivery logs for the domain attached to the given mail order. Supports filtering by account, date range, status, sender, and recipient. Results are sorted by timestamp descending.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/logs/outbound
mail_mailboxes_list
Retrieve a paginated list of mailboxes belonging to a mail order.
Use this endpoint to monitor mailboxes of your mail service, including their status, enabled protocols, attached resource counts, and periodically synced usage numbers (usage may lag behind live values).
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/mailboxes
mail_mailboxes_create-mailbox
Create a mailbox under the given mail order. The full email address is composed from the given local part and the domain of the order.
- Method:
POST - Path:
/api/mail/v1/orders/{orderId}/mailboxes
mail_mailboxes_delete-mailbox
Delete a mailbox. The mailbox is soft-deleted and stays restorable for a limited period before it is permanently removed.
- Method:
DELETE - Path:
/api/mail/v1/mailboxes/{mailboxId}
mail_mailboxes_change-mailbox-password
Change the password of a mailbox.
- Method:
PATCH - Path:
/api/mail/v1/mailboxes/{mailboxId}/password
mail_orders_list
Retrieve a paginated list of mail orders associated with your account.
Use this endpoint to monitor your mail services, including their status, plan, attached domain, and expiration details.
- Method:
GET - Path:
/api/mail/v1/orders
mail_orders_plan
Retrieve the plan the given mail order was purchased with, including domain-level and mailbox-level quotas, limits, and protocol availability.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/plan
mail_webhooks_create
Create a webhook for the given mailbox. The generated secret is returned only in this response and is sent as a bearer token with every delivery.
- Method:
POST - Path:
/api/mail/v1/mailboxes/{mailboxId}/webhooks
mail_webhooks_list-delivery-logs
Retrieve a paginated list of webhook delivery logs for the given mail order, including delivery outcome, duration, and retry counts. Supports filtering by mailbox.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/webhooks/delivery-logs
mail_webhooks_get
Retrieve the details of a single webhook. The webhook secret is never included; it is returned only when a webhook is created or its secret is regenerated.
- Method:
GET - Path:
/api/mail/v1/webhooks/{webhookId}
mail_webhooks_delete
Permanently delete a webhook. This action cannot be undone. After deletion the URL no longer receives event notifications.
- Method:
DELETE - Path:
/api/mail/v1/webhooks/{webhookId}
mail_webhooks_update
Partially update a webhook. Only the fields included in the request
body are changed; omitted fields retain their current values. Pass
"description": null to clear the description.
- Method:
PATCH - Path:
/api/mail/v1/webhooks/{webhookId}
mail_webhooks_list
Retrieve a paginated list of webhooks belonging to the given mail order. Supports filtering by mailbox and status. The webhook secret is never included; it is returned only when a webhook is created or its secret is regenerated.
- Method:
GET - Path:
/api/mail/v1/orders/{orderId}/webhooks
mail_webhooks_regenerate-secret
Regenerate the secret of a webhook. The previous secret is immediately invalidated. The new secret is returned only in this response and is sent as a bearer token with every delivery.
- Method:
POST - Path:
/api/mail/v1/webhooks/{webhookId}/regenerate-secret
mail_webhooks_test
Send a test delivery to the webhook URL and return the result. Test requests are rate limited upstream.
- Method:
POST - Path:
/api/mail/v1/webhooks/{webhookId}/test
hostinger-reach-mcp
reach_automations_get
Get a single automation with the counts of contacts that entered it, are moving through it, finished it or failed on the way.
This describes the automation itself. To see the workflow it runs, use the steps endpoint.
- Method:
GET - Path:
/api/reach/v1/profiles/{profileUuid}/automations/{automationUuid}
reach_automations_list
Get a paginated list of the automations in a profile.
Every automation comes with the counts of contacts that entered it, are moving through it, finished it or failed on the way. Those counts describe the contact journey and are not email engagement metrics - for opens, clicks and unsubscribes use the campaign statistics endpoint instead.
- Method:
GET - Path:
/api/reach/v1/profiles/{profileUuid}/automations
reach_automations_list-steps
取得自動化的流程,以扁平步驟清單呈現。
這些步驟形成樹狀結構而非直線:請依循 parent_uuid 來重建分支,並使用 step_order 來排序共享同一父層的步驟。尚無任何步驟的自動化會回傳空清單。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/automations/{automationUuid}/steps
reach_campaigns_get
取得單一行銷活動,包含其寄件者、主旨、範本參考、目標對象及投遞進度。
這會描述行銷活動的設定方式及其進展程度。若要查看開啟數、點擊數和取消訂閱數,請使用行銷活動統計端點。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/campaigns/{campaignUuid}
reach_campaigns_list
取得設定檔中行銷活動的分頁清單。
每個行銷活動都帶有其主要的互動率。可依狀態篩選來尋找草稿、已排程、發送中或已發送的行銷活動,請注意,完全發送完畢的行銷活動狀態為 publish。預設僅回傳一般行銷活動——請傳入 type 以改為取得自動化發送的電子郵件或雙重選擇加入的確認信。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/campaigns
reach_campaigns_create-draft
在設定檔中建立行銷活動。
行銷活動會以草稿形式建立,因此不會發送任何內容,也不會觸及任何聯絡人。它目前也還沒有受眾——目標對象和排程不屬於此請求的一部分,草稿會在 Reach 介面中完成並發送。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/campaigns
reach_campaigns_performance
取得行銷活動的成效:投遞數、開啟數、點擊數和取消訂閱數,以及對應的比率。
每個計數都是不重複聯絡人,而非原始事件,因此同一封電子郵件被同一聯絡人開啟五次只會計為一次。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/campaigns/{campaignUuid}/statistics
reach_contacts_delete
刪除具有指定 UUID 的聯絡人。
此端點會從電子郵件行銷系統中永久移除聯絡人。
已棄用。 此端點無法指定設定檔,因此一律會回退至用戶端的預設設定檔,且無法刪除任何其他設定檔的聯絡人。請改用 DELETE /api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid}。
- 方法:
DELETE - 路徑:
/api/reach/v1/contacts/{uuid}
reach_contact-fields_delete
刪除自訂聯絡人欄位。
聯絡人為該欄位持有的所有值都會隨之刪除,對於選擇類型,其選項也會一併刪除。聯絡人本身不受影響。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/fields/{fieldUuid}
reach_contact-fields_update
重新命名自訂聯絡人欄位,並針對選擇類型替換其選項集。
帶有 uuid 的選項會被保留並重新標示,沒有 uuid 的選項會被建立,而清單中遺漏的任何既有選項會被刪除,連同聯絡人為其持有的值。欄位類型和 slug 無法變更。
- 方法:
PATCH - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/fields/{fieldUuid}
reach_contact-fields_list
取得設定檔中定義的自訂聯絡人欄位。
自訂欄位可讓您在聯絡人上儲存自己的屬性。回傳的 uuid 是您傳遞給聯絡人更新端點以設定值的內容,而選擇欄位也會列出可供挑選的選項。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/fields
reach_contact-fields_create
在設定檔中定義新的自訂聯絡人欄位。
slug 是從標籤衍生而來,且與欄位類型一樣,之後無法變更。請使用回傳的 uuid 在聯絡人上設定值。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/fields
reach_contacts_list-groups
取得所有聯絡人群組的清單。
此端點會回傳可用於組織聯絡人的聯絡人群組清單。
- 方法:
GET - 路徑:
/api/reach/v1/contacts/groups
reach_contacts_list
取得聯絡人清單,可選擇依群組和訂閱狀態篩選。
此端點會回傳聯絡人的分頁清單及其基本資訊。您可以依群組 UUID 和訂閱狀態篩選聯絡人。
已棄用。 此端點無法指定設定檔,因此一律會回退至用戶端的預設設定檔,且無法列出任何其他設定檔的聯絡人。請改用 GET /api/reach/v1/profiles/{profileUuid}/contacts,它同時以標籤篩選取代群組篩選。
- 方法:
GET - 路徑:
/api/reach/v1/contacts
reach_contacts_create
在電子郵件行銷系統中建立新聯絡人。
此端點可讓您以基本資訊(如姓名、電子郵件和姓氏)建立新聯絡人。
如果已啟用雙重選擇加入,聯絡人會以待處理狀態建立,並會發送確認電子郵件。
- 方法:
POST - 路徑:
/api/reach/v1/contacts
reach_contacts_get
取得單一聯絡人的完整詳細資料。
除了聯絡人自身的屬性外,這也會回傳指派給它的標籤,以及它為設定檔的自訂聯絡人欄位持有的值。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid}
reach_contacts_delete-profile
從設定檔中永久刪除聯絡人。
聯絡人會連同其自訂欄位值和標籤指派一起被移除。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid}
reach_contacts_update
更新聯絡人的屬性和自訂欄位值。
只有請求主體中存在的屬性會被變更,因此部分主體就足以變更單一屬性。將屬性傳送為 null 會清除它。
回應會攜帶聯絡人的核心屬性。請使用 GET /api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid} 讀回其標籤、自訂欄位值、來源和備註。
- 方法:
PATCH - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/{contactUuid}
reach_contacts_create-in-bulk
在單一呼叫中於設定檔內建立大量聯絡人。
聯絡人會在背景匯入,因此成功回應表示匯入已被接受,而非已完成。電子郵件已存在於設定檔中的聯絡人會保持原樣。如果已啟用雙重選擇加入,新聯絡人會以待處理狀態開始,並會收到確認電子郵件。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts/bulk
reach_contacts_list-profile
取得屬於某設定檔的聯絡人分頁清單。
聯絡人可依訂閱狀態、標籤和電子郵件搜尋詞進行篩選。回應的 meta.total 欄位是符合篩選條件的聯絡人數,因此在沒有篩選條件下呼叫此端點,即可獲得設定檔的聯絡人總數。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts
reach_contacts_create-bulk
在電子郵件行銷系統中建立新聯絡人。
此端點可讓您以基本資訊(如姓名、電子郵件和姓氏)建立新聯絡人。
如果已啟用雙重選擇加入,聯絡人會以待處理狀態建立,並會發送確認電子郵件。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/contacts
reach_segments_list
取得所有聯絡人區段的清單。
此端點會回傳可用於組織聯絡人的聯絡人區段清單。
已棄用。 此端點無法指定設定檔,因此一律會回退至用戶端的預設設定檔,且無法列出任何其他設定檔的區段。請改用 GET /api/reach/v1/profiles/{profileUuid}/segmentation/segments。
- 方法:
GET - 路徑:
/api/reach/v1/segmentation/segments
reach_segments_create
建立新的聯絡人區段。
此端點可讓您建立可用於組織聯絡人的新聯絡人區段。區段可設定特定條件,如電子郵件、姓名、訂閱狀態等。
已棄用。 此端點無法指定設定檔,因此一律會回退至用戶端的預設設定檔,且無法在任何其他設定檔中建立區段。請改用 POST /api/reach/v1/profiles/{profileUuid}/segmentation/segments。
- 方法:
POST - 路徑:
/api/reach/v1/segmentation/segments
reach_segments_count-profile-contacts
計算目前符合某區段條件的聯絡人數,而不列出它們。
當只需要數量時,這比翻閱區段聯絡人端點的分頁更經濟。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}/count
reach_segments_list-profile-contacts
取得與特定設定檔之特定區段相關聯的聯絡人。
此端點可讓您擷取和篩選屬於特定區段(以 UUID 識別)的聯絡人,並限定於特定設定檔範圍內。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}/contacts
reach_segments_profile
取得設定檔的單一區段,包括定義它的條件。
若要擷取目前符合這些條件的聯絡人,請改用區段聯絡人端點。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}
reach_segments_update-profile
重新命名區段及/或替換定義它的條件。
name 一律為必填。省略 conditions 可僅重新命名而不更動條件;提供它們則會完全替換現有條件集,而非合併進去。聯絡人絕不會被修改,但符合該區段的聯絡人可能會立即改變。
- 方法:
PUT - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}
reach_segments_delete-profile
刪除區段。
僅移除區段定義。符合該區段的聯絡人保持不變。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}
reach_segments_list-filter-attributes
列出區段條件可篩選的每個屬性,以及每個屬性接受的運算子、它們預期的值格式,以及在值受限時允許的值。
此清單是設定檔特定的:它包含設定檔的自訂聯絡人欄位、其標籤及其最近 20 個已發布的行銷活動,因此有效屬性無法被硬編碼。在建立或更新區段之前請先閱讀它,以發現有效的 attribute、operator 和 value 組合。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/filters/attributes
reach_segments_preview-contacts-matching-conditions
預覽符合一組條件的聯絡人,而不儲存區段。
主體與建立或更新區段時接受的條件集相同,因此這是在持久化之前檢查篩選器觸及誰以及多少人的方式。不會儲存任何內容,也不會修改任何聯絡人。
請先呼叫區段篩選屬性端點,以發現有效的 attribute、operator 和 value 組合。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/filters/contacts
reach_segments_list-profile
取得設定檔中定義的區段分頁清單。
每個條目都帶有目前符合它的聯絡人數,這是在讀取時重新計算而非儲存的。使用 count_type 來計算所有符合的聯絡人,或僅計算已訂閱的聯絡人。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments
reach_segments_create-profile
在設定檔中建立區段。
區段是已儲存的條件集,而非固定清單,因此其成員資格會隨聯絡人變更而改變。建立區段不會修改任何聯絡人。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/segmentation/segments
reach_segments_list-contacts
取得與特定區段相關聯的聯絡人。
此端點可讓您擷取和篩選屬於特定區段(以 UUID 識別)的聯絡人。
已棄用。 此端點無法指定設定檔,因此一律會回退至用戶端的預設設定檔,且無法讀取任何其他設定檔的區段。請改用 GET /api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}/contacts。
- 方法:
GET - 路徑:
/api/reach/v1/segmentation/segments/{segmentUuid}/contacts
reach_segments_get
取得特定區段的詳細資料。
此端點會擷取以 UUID 識別的單一區段資訊。區段用於根據特定條件組織和分組聯絡人。
已棄用。 此端點無法指定設定檔,因此一律會退回用戶端的預設設定檔,也無法讀取任何其他設定檔的區段。請改用 GET /api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}。
- 方法:
GET - 路徑:
/api/reach/v1/segmentation/segments/{segmentUuid}
reach_tags_assign-contact-to
為單一聯絡人指派標籤。
與批次端點不同,此操作會立即套用而非排入佇列。為聯絡人已擁有的標籤指派時,不會重複建立,仍會成功。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags/{tagUuid}/contacts/{contactUuid}
reach_tags_remove-contact-from
從單一聯絡人移除標籤。
與批次端點不同,此操作會立即套用而非排入佇列。標籤本身與聯絡人都不會被刪除。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags/{tagUuid}/contacts/{contactUuid}
reach_tags_assign-contacts-to
一次為多個聯絡人指派標籤。
傳入 contact_uuids 以指定特定聯絡人,或傳入 all_contacts 以指定設定檔中的所有聯絡人。此操作會排入佇列,因此成功回應僅代表已接受,而非已完成。已帶有此標籤的聯絡人不會被變更。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags/{tagUuid}/contacts
reach_tags_remove-contacts-from
一次從多個聯絡人移除標籤。
傳入 contact_uuids 以指定特定聯絡人,或傳入 all_contacts 以指定設定檔中的所有聯絡人。此操作會排入佇列,因此成功回應僅代表已接受,而非已完成。標籤本身與聯絡人都不會被刪除。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags/{tagUuid}/contacts
reach_tags_delete
刪除標籤,並從所有帶有此標籤的聯絡人身上移除。
聯絡人本身不會被刪除。此操作具冪等性:刪除設定檔中不存在的標籤仍會成功。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags/{tagUuid}
reach_tags_rename
重新命名標籤。
已指派給該標籤的聯絡人不受影響。名稱在設定檔內是唯一的,因此將標籤重新命名為已被使用的名稱會被拒絕。
- 方法:
PATCH - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags/{tagUuid}
reach_tags_list-profile
取得設定檔中定義的所有標籤。
標籤是 Reach 中對聯絡人分組的方式,可用於篩選聯絡人清單或建立區段。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags
reach_tags_create-or-find
在設定檔中建立標籤。
設定檔中已存在的名稱不會重複建立:會改為回傳既有的標籤,因此此呼叫可安全重複執行。請求中的每個標籤都會被回傳,無論是剛建立的還是原本就存在的。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/tags
reach_forms_get
取得單一表單,包含其託管範本的 URL,以及套用於其所收集聯絡人的標籤。
回應中沒有現成的嵌入片段——您可以自行提供範本 HTML,或圍繞表單 uuid 建立自己的嵌入方式。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/forms/{formUuid}
reach_forms_delete
永久刪除表單及其範本。
已收集過提交資料的表單無法刪除,以免其所收集的聯絡人被靜默丟棄——請改為暫停表單以停止收集新資料。僅有檢視不會阻擋刪除。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/forms/{formUuid}
reach_forms_list
取得設定檔中註冊表單的分頁清單。
每個表單都帶有渲染其內容之範本的參考。取得表單詳細資料以獲得可直接使用的範本 URL,以及表單套用於其所收集聯絡人的標籤。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/forms
reach_profiles_connected-sending-domain
取得與設定檔連線的寄件網域、其驗證狀態,以及任何被暫停的寄件者地址。
行銷活動只有在網域連線並啟用後才會寄出,因此這是建立行銷活動前檢查此前提條件最經濟的方式。未連線網域的設定檔會回傳相同結構,但每個欄位都設為 null。若要查看狀態背後的個別 MX、SPF、DKIM 和 DMARC 記錄,請使用 DNS 狀態端點。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/domains
reach_profiles_connect-sending-domain
將寄件網域連線到設定檔,以便從該網域上的地址寄送電子郵件。
連線並不代表網域已可寄送:請接著檢查 DNS 狀態端點,查看仍缺少的記錄。帳戶擁有或已驗證的網域會立即連線。任何其他網域會啟動 TXT 所有權驗證並回傳 409;請在 Reach 中完成驗證後重試。當設定檔或其他設定檔已擁有該網域、網域被封鎖,或其所有權無法驗證時,會回傳 422。已連線的網域不會被取代。
成功時,草稿和已排程行銷活動的寄件者地址,以及已發布的自動化和雙重選擇加入電子郵件,會在背景中移至新網域,保留 @ 之前的部分。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/domains
reach_profiles_delete-sending-domain
從設定檔中斷連線寄件網域。
網域記錄會被移除,因此設定檔之後沒有寄件網域,且在重新連線網域前無法寄送行銷活動。已儲存在行銷活動、自動化和設定中的寄件者地址不會被變更,仍會指向已移除的網域。未連線到設定檔的網域也會成功,因此成功並不代表有任何東西被刪除。DNS 提供者處的 DNS 記錄不會被移除。若要切換網域,請刪除目前網域並連線新網域。呼叫前請先與客戶確認網域。
- 方法:
DELETE - 路徑:
/api/reach/v1/profiles/{profileUuid}/domains
reach_profiles_domain-dns-status
取得設定檔網域的 DNS 設定狀態。
此端點回報 MX、SPF、DKIM 和 DMARC 記錄的狀態,包括實際找到的記錄,以及正確電子郵件傳遞所需的建議記錄。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/domains/dns-status
reach_profiles_list-plan-feature-access
列出設定檔可使用的方案功能。
這是功能鎖定矩陣,而非使用配額。available 表示該功能目前可使用,locked 表示其不屬於基本方案,因此需要升級。如需剩餘電子郵件、收件者和 AI 點數,請改用 limits 端點。
在建立之後無法啟用的功能(例如在沒有自動化啟用的方案上建立自動化)之前,值得先檢查。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/features
reach_profiles_remaining-plan-limits
取得目前週期剩餘的方案額度。
在建立基於此的警示之前,有兩件事需要記住。週期是日曆月而非帳單週年日,因此計數器無論訂閱何時開始,都會在每月 1 日重置。此外,使用量是按訂單追蹤的,因此同一訂單上的每個設定檔共享一個額度池,並在此回報相同的數字。僅提供目前週期,過去的使用量不會保留。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/limits
reach_profiles_list
此端點回傳用戶端可用的所有設定檔,包括其基本資訊。
- 方法:
GET - 路徑:
/api/reach/v1/profiles
reach_profiles_settings
取得設定檔已儲存的寄件者身分和品牌詳細資料。
在建立行銷活動前先讀取預設寄件者,而不是詢問客戶,並在產生電子郵件內容時重用品牌欄位。從未填寫設定的設定檔,任何欄位都可能是 null。此操作不會檢查寄件網域是否已驗證,請使用 connected sending domain 端點進行該檢查。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/settings
reach_profiles_update-settings
變更設定檔的預設寄件者和品牌詳細資料。
僅傳送要變更的欄位:每個省略的欄位都會保留其值,null 或空字串會清除文字欄位。預設寄件者是之後建立的行銷活動的起始值;現有行銷活動會保留自己的寄件者。sender_email 只是 @ 之前的部分,因為 Reach 會將其與設定檔的已連線寄件網域結合,因此無法設定該網域之外的地址。連線寄件網域是另一個端點,且已連線的網域無法在此變更。回傳變更後的設定。
- 方法:
PATCH - 路徑:
/api/reach/v1/profiles/{profileUuid}/settings
reach_templates_list-email
取得設定檔中的電子郵件範本清單,最近更新的優先。
範本是用於建立行銷活動的可重用電子郵件內容。此清單不分頁,且僅回傳中繼資料——範本內容本身不會暴露。建立行銷活動時,請使用範本的 uuid 作為 template_uuid。
- 方法:
GET - 路徑:
/api/reach/v1/profiles/{profileUuid}/templates
reach_templates_create-email
在設定檔中建立電子郵件範本。
範本保存行銷活動重用的 HTML 內容,因此可以在任何行銷活動存在之前建立。僅回傳範本中繼資料——請保留回傳的 uuid,以將其作為行銷活動的 template_uuid 引用。
- 方法:
POST - 路徑:
/api/reach/v1/profiles/{profileUuid}/templates
hostinger-vps-mcp
vps_data-centers_list
取得所有可用的資料中心。
在部署 VPS 實例之前,使用此端點查看位置選項。
- 方法:
GET - 路徑:
/api/vps/v1/data-centers
vps_docker_containers
取得虛擬機器上特定 Docker Compose 專案的所有容器清單。
此端點回傳每個容器的詳細資訊,包括其目前狀態、連接埠對應和執行時期設定。
使用此端點監控 Docker Compose 專案中所有服務的健康狀態和狀態。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/containers
vps_docker_get
取得完整的專案資訊,包括 docker-compose.yml 檔案內容、專案中繼資料和目前部署狀態。
此端點提供特定 Docker Compose 專案的完整設定和狀態詳細資料。
使用此端點檢查專案設定、檢視 compose 檔案,或檢查整體專案健康狀態。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}
vps_docker_delete
從虛擬機器完全移除 Docker Compose 專案,停止所有容器並清理相關資源,包括網路、磁碟區和映像檔。
此操作不可逆,且會刪除所有專案資料。
當您想要永久移除專案並釋放系統資源時,請使用此端點。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/down
vps_docker_list
取得目前部署在虛擬機器上的所有 Docker Compose 專案清單。
此端點回傳每個專案的基本資訊,包括名稱、狀態、檔案路徑,以及容器清單及其名稱、映像檔、狀態、健康狀態和連接埠的詳細資料。此端點省略容器統計資料。如果您需要取得包含統計資料的容器詳細資訊,請使用 Get project containers 端點。
使用此端點取得 VPS 實例上所有 Docker 專案的概覽。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker
vps_docker_create
從 docker-compose.yaml 內容部署新專案,或從 URL 下載內容。
URL 可以是 GitHub 儲存庫網址,格式為 https://github.com/[user]/[repo], 系統會自動解析為 master 分支中的 docker-compose.yaml 檔案。 任何其他提供的 URL 都必須回傳 docker-compose.yaml 檔案的內容。
如果相同名稱的專案已存在,現有專案將被取代。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker
vps_docker_logs
從 Docker Compose 專案中的所有服務擷取彙總的日誌條目。
此端點會回傳每個容器最近的日誌輸出,並依服務名稱與時間戳記整理。 回應包含所有服務中最後 300 筆日誌條目。
可用於除錯、監控應用程式行為,以及排解整個專案堆疊中的問題。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/logs
vps_docker_restart
透過以正確的相依順序停止並啟動容器,重新啟動 Docker Compose 專案中的所有服務。
此操作會保留資料磁碟區與網路設定,同時重新整理執行中的容器。
可用於套用設定變更或從服務故障中復原。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/restart
vps_docker_start
啟動 Docker Compose 專案中目前已停止的所有服務。
此操作會依照 compose 檔案中定義的正確相依順序啟動容器。
可用於恢復先前已停止的專案,或在系統重新開機後啟動服務。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/start
vps_docker_stop
停止 Docker Compose 專案中所有執行中的服務,同時保留容器設定與資料磁碟區。
此操作會以反向相依順序優雅地關閉容器。
可用於暫時暫停專案,而不移除資料或設定。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/stop
vps_docker_update
透過拉取最新的映像檔版本並以新設定重新建立容器,更新 Docker Compose 專案。
此操作會保留資料磁碟區,同時套用 compose 檔案中的變更。
可用於部署應用程式更新、套用設定變更,或將容器映像檔重新整理至最新版本。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/docker/{projectName}/update
vps_firewall_activate
為指定的虛擬機器啟用防火牆。
一台虛擬機器同時只能啟用一個防火牆。
使用此端點可將防火牆規則套用至 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/firewall/{firewallId}/activate/{virtualMachineId}
vps_firewall_deactivate
停用指定虛擬機器的防火牆。
使用此端點可移除 VPS 執行個體的防火牆保護。
- 方法:
POST - 路徑:
/api/vps/v1/firewall/{firewallId}/deactivate/{virtualMachineId}
vps_firewall_get
依 ID 擷取防火牆及其關聯的規則。
使用此端點可檢視特定的防火牆設定與規則。
- 方法:
GET - 路徑:
/api/vps/v1/firewall/{firewallId}
vps_firewall_delete
刪除指定的防火牆。
任何啟用此防火牆的虛擬機器都會自動停用該防火牆。
使用此端點可移除未使用的防火牆設定。
- 方法:
DELETE - 路徑:
/api/vps/v1/firewall/{firewallId}
vps_firewall_list
擷取所有可用的防火牆。
使用此端點可檢視現有的防火牆設定。
- 方法:
GET - 路徑:
/api/vps/v1/firewall
vps_firewall_create
建立新的防火牆。
使用此端點可為 VPS 安全性設定新的防火牆設定。
- 方法:
POST - 路徑:
/api/vps/v1/firewall
vps_firewall_update-rule
更新指定防火牆中的特定防火牆規則。
任何啟用此防火牆的虛擬機器都會與防火牆失去同步, 且必須再次手動同步。
使用此端點可修改現有的防火牆規則。
- 方法:
PUT - 路徑:
/api/vps/v1/firewall/{firewallId}/rules/{ruleId}
vps_firewall_delete-rule
刪除指定防火牆中的特定防火牆規則。
任何啟用此防火牆的虛擬機器都會與防火牆失去同步, 且必須再次手動同步。
使用此端點可移除特定的防火牆規則。
- 方法:
DELETE - 路徑:
/api/vps/v1/firewall/{firewallId}/rules/{ruleId}
vps_firewall_replace-all-rules-in-group
以單一原子操作,將指定防火牆群組中的所有防火牆規則取代為提供的規則集合, 而非逐一建立或刪除規則。
任何使用此防火牆群組的虛擬機器在取代規則後都需要進行同步; 請傳入「sync」參數以立即觸發同步。
- 方法:
PUT - 路徑:
/api/vps/v1/firewall/{firewallId}/rules
vps_firewall_create-rule
為指定的防火牆建立新的防火牆規則。
依預設,防火牆會丟棄所有傳入流量, 因此您必須為所有想要使用的連接埠新增接受規則。
任何啟用此防火牆的虛擬機器都會與防火牆失去同步, 且必須再次手動同步。
使用此端點可為防火牆新增新的安全性規則。
- 方法:
POST - 路徑:
/api/vps/v1/firewall/{firewallId}/rules
vps_firewall_sync-to-all-assigned-v-ms
將防火牆的規則同步至其指派的所有虛擬機器。
如果防火牆新增、移除或更新了規則,防火牆可能會與虛擬機器失去同步。
使用此端點可將更新的防火牆規則套用至指派給該防火牆的所有 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/firewall/{firewallId}/sync
vps_firewall_sync
已棄用:請改用 POST /api/vps/v1/firewall/{firewallId}/sync,此方法會將防火牆同步至其指派的所有虛擬機器。
為指定的虛擬機器同步防火牆。
如果防火牆新增、移除或更新了規則,防火牆可能會與虛擬機器失去同步。
使用此端點可將更新的防火牆規則套用至 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/firewall/{firewallId}/sync/{virtualMachineId}
vps_post-install-scripts_get
依 ID 擷取安裝後腳本。
使用此端點可檢視特定自動化腳本的詳細資料。
- 方法:
GET - 路徑:
/api/vps/v1/post-install-scripts/{postInstallScriptId}
vps_post-install-scripts_update
更新特定的安裝後腳本。
使用此端點可修改現有的自動化腳本。
- 方法:
PUT - 路徑:
/api/vps/v1/post-install-scripts/{postInstallScriptId}
vps_post-install-scripts_delete
從您的帳戶刪除安裝後腳本。
使用此端點可移除未使用的自動化腳本。
- 方法:
DELETE - 路徑:
/api/vps/v1/post-install-scripts/{postInstallScriptId}
vps_post-install-scripts_list
擷取與您的帳戶關聯的安裝後腳本。
使用此端點可檢視可用於 VPS 部署的自動化腳本。
- 方法:
GET - 路徑:
/api/vps/v1/post-install-scripts
vps_post-install-scripts_create
在您的帳戶中新增安裝後腳本,此腳本可在虛擬機器安裝後使用。
腳本內容將儲存至檔案 /post_install,並設定可執行屬性,
且在虛擬機器安裝完成後執行一次。
腳本的輸出將重新導向至 /post_install.log。腳本大小上限為 48KB。
使用此端點可為 VPS 設定任務建立自動化腳本。
- 方法:
POST - 路徑:
/api/vps/v1/post-install-scripts
vps_public-keys_attach
已棄用:請改用 POST /api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys。
將您帳戶中現有的公開金鑰附加至指定的虛擬機器。
單一虛擬機器可附加多個金鑰。
使用此端點可為 VPS 執行個體啟用 SSH 金鑰驗證。
- 方法:
POST - 路徑:
/api/vps/v1/public-keys/attach/{virtualMachineId}
vps_public-keys_delete
已棄用:帳戶層級的公開金鑰沒有直接替代方案。Root SSH 金鑰現在改為透過
DELETE /api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys 在每台虛擬機器上管理。
從您的帳戶刪除公開金鑰。
從帳戶刪除公開金鑰不會將其從虛擬機器中移除
使用此端點可從帳戶移除未使用的 SSH 金鑰。
- 方法:
DELETE - 路徑:
/api/vps/v1/public-keys/{publicKeyId}
vps_public-keys_list
已棄用:帳戶層級的公開金鑰沒有直接替代方案。Root SSH 金鑰現在改為透過
GET /api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys 在每台虛擬機器上管理。
擷取與您的帳戶關聯的公開金鑰。
使用此端點可檢視可用於 VPS 驗證的 SSH 金鑰。
- 方法:
GET - 路徑:
/api/vps/v1/public-keys
vps_public-keys_create
已棄用:帳戶層級的公開金鑰沒有直接替代方案。Root SSH 金鑰現在改為透過
POST /api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys 在每台虛擬機器上管理。
在您的帳戶中新增公開金鑰。
使用此端點可註冊用於 VPS 驗證的 SSH 金鑰。
- 方法:
POST - 路徑:
/api/vps/v1/public-keys
vps_ssh-keys_list-virtual-machine
擷取指定虛擬機器上目前設定的 SSH 公開金鑰。
僅列出 root 使用者的金鑰。
使用此端點可檢視可用於 VPS 執行個體驗證的 SSH 金鑰。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys
vps_ssh-keys_add-virtual-machine
將一或多個 SSH 公開金鑰新增至指定的虛擬機器。
金鑰會新增至 root 使用者,並可用於免密碼 SSH 驗證。
回傳目前設定在虛擬機器上的完整 SSH 金鑰清單。
使用此端點可為 VPS 執行個體啟用 SSH 金鑰驗證。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys
vps_ssh-keys_remove-virtual-machine
從指定的虛擬機器移除一或多個 SSH 公開金鑰。
已移除的金鑰將無法再以 root 使用者身分透過 SSH 進行驗證。
回傳虛擬機器上設定的剩餘 SSH 金鑰清單。
使用此端點可撤銷 VPS 執行個體的 SSH 金鑰存取權。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys
vps_templates_get
擷取虛擬機器特定 OS 範本的詳細資訊。
使用此端點可在部署前檢視特定的範本規格。
- 方法:
GET - 路徑:
/api/vps/v1/templates/{templateId}
vps_templates_list
擷取虛擬機器可用的 OS 範本。
使用此端點可在建立或重新建立 VPS 執行個體前檢視作業系統選項。
- 方法:
GET - 路徑:
/api/vps/v1/templates
vps_actions_get
擷取指定虛擬機器上執行之特定動作的詳細資訊。
使用此端點可監控特定 VPS 操作的狀態與詳細資料。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/actions/{actionId}
vps_actions_list
擷取指定虛擬機器上執行的動作。
動作是在虛擬機器上執行的操作或事件,例如啟動、停止或修改機器。此端點 可讓您檢視這些動作的歷史記錄,提供每個動作的詳細資料, 例如動作名稱、時間戳記與狀態。
使用此端點可檢視 VPS 操作歷史記錄並排解問題。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/actions
vps_virtual-machines_attached-public-keys
已棄用:請改用 GET /api/vps/v1/virtual-machines/{virtualMachineId}/ssh-keys。
擷取附加至指定虛擬機器的公開金鑰。
使用此端點可檢視為特定 VPS 執行個體設定的 SSH 金鑰。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/public-keys
vps_backups_list
擷取指定虛擬機器的備份。
使用此端點可檢視可用於 VPS 資料復原的備份點。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/backups
vps_backups_restore
為指定的虛擬機器還原備份。 系統接著會啟動還原程序,所需時間可能因備份大小而異。
虛擬機器上的所有資料將被備份中的資料覆寫。
使用此端點從備份點還原 VPS 資料。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/backups/{backupId}/restore
vps_virtual-machines_set-hostname
為指定的虛擬機器設定主機名稱。
變更主機名稱不會自動更新 PTR 記錄。 如果您希望虛擬機器可透過主機名稱存取, 您也需要將網域的 A/AAAA 記錄指向虛擬機器的 IP。
使用此端點為 VPS 執行個體設定自訂主機名稱。
- 方法:
PUT - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/hostname
vps_virtual-machines_reset-hostname
將指定虛擬機器的主機名稱和 PTR 記錄重設為預設值。
使用此端點還原 VPS 執行個體的預設主機名稱設定。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/hostname
vps_virtual-machines_get
擷取指定虛擬機器的詳細資訊。
使用此端點檢視完整的 VPS 設定與狀態。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}
vps_virtual-machines_list
擷取所有可用的虛擬機器。
使用此端點檢視可用的 VPS 執行個體。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines
vps_virtual-machines_purchase
購買並設定新的虛擬機器。
如果虛擬機器設定因任何原因失敗,請登入 hPanel 並手動完成設定。
如果未提供付款方式,將自動使用您的預設付款方式。
如果回應為 202 Accepted,表示付款仍在處理中,且虛擬機器
尚未設定完成。請登入
hPanel 並手動完成設定。
使用此端點建立新的 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines
vps_monarx_scan-metrics
擷取安裝在指定虛擬機器上的 Monarx 惡意軟體掃描器的掃描指標。
掃描指標提供 Monarx 所執行惡意軟體掃描的詳細資訊,包括掃描次數、偵測到的威脅以及其他相關 統計資料。此資訊有助於監控虛擬機器的安全狀態,並評估惡意軟體掃描器的有效性。
使用此端點監控 VPS 安全掃描結果與威脅偵測。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/monarx
vps_monarx_install
在指定的虛擬機器上安裝 Monarx 惡意軟體掃描器。
Monarx 是一款旨在偵測並 預防虛擬機器上惡意軟體感染的資安工具。透過安裝 Monarx,使用者 可以增強虛擬機器的安全性,確保其受到 惡意軟體的保護。
使用此端點在 VPS 執行個體上啟用惡意軟體防護。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/monarx
vps_monarx_uninstall
在指定的虛擬機器上解除安裝 Monarx 惡意軟體掃描器。
如果未安裝 Monarx,請求仍會被處理,但不會產生任何效果。
使用此端點從 VPS 執行個體移除惡意軟體掃描器。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/monarx
vps_virtual-machines_metrics
擷取指定虛擬機器的歷史指標。
包含以下指標:
- CPU 使用率
- 記憶體使用率
- 磁碟使用率
- 網路使用率
- 運作時間
使用此端點監控 VPS 效能與隨時間變化的資源使用情況。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/metrics
vps_virtual-machines_set-nameservers
為指定的虛擬機器設定名稱伺服器。
請注意,不當的名稱伺服器設定可能導致虛擬 機器無法解析網域名稱。
使用此端點為 VPS 執行個體設定自訂 DNS 解析器。
- 方法:
PUT - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/nameservers
vps_ptr_create
為指定的虛擬機器建立或更新 PTR(指標)記錄。
使用此端點為 VPS IP 位址設定反向 DNS 查詢。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/ptr/{ipAddressId}
vps_ptr_delete
刪除指定虛擬機器的 PTR(指標)記錄。
刪除後,對虛擬機器 IP 位址的反向 DNS 查詢將 不再傳回先前設定的主機名稱。
使用此端點從 VPS 執行個體移除反向 DNS 設定。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/ptr/{ipAddressId}
vps_virtual-machines_set-panel-password
為指定的虛擬機器設定控制台密碼。
如果虛擬機器未使用控制台作業系統,請求仍會被處理,但不會產生任何效果。 密碼要求與重新建立虛擬機器 端點相同。
使用此端點為 VPS 執行個體設定控制台存取憑證。
- 方法:
PUT - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/panel-password
vps_recovery_start
為指定的虛擬機器啟動救援模式。
救援模式是一種特殊狀態,允許使用者執行系統救援操作, 例如修復檔案系統、復原資料,或排除導致虛擬機器 無法正常開機的問題。
虛擬機器將從救援磁碟映像開機,原始磁碟映像將掛載在 /mnt 目錄中。
使用此端點在 VPS 執行個體上啟用系統救援操作。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/recovery
vps_recovery_stop
停止指定虛擬機器的救援模式。
如果虛擬機器不在救援模式中,此操作將失敗。
使用此端點退出系統救援模式,讓 VPS 恢復正常運作。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/recovery
vps_virtual-machines_recreate
從零開始重新建立虛擬機器。
重新建立程序涉及重新安裝作業系統,並 將虛擬機器重設為初始狀態。 快照(如果有的話)將被刪除。
密碼要求
密碼將與外洩密碼資料庫進行比對。 密碼要求如下:
- 至少 12 個字元
- 至少一個大寫字母
- 至少一個小寫字母
- 至少一個數字
- 未在公開場合外洩
此操作不可逆,將導致虛擬機器上儲存的所有資料遺失!
使用此端點以全新作業系統安裝完整重建 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/recreate
vps_virtual-machines_restart
透過完全停止並重新啟動指定的虛擬機器。
如果虛擬機器已停止,則會將其啟動。
使用此端點重新啟動 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/restart
vps_virtual-machines_set-root-password
為指定的虛擬機器設定 root 密碼。
密碼要求與重新建立虛擬機器 端點相同。
使用此端點更新 VPS 執行個體的管理員憑證。
- 方法:
PUT - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/root-password
vps_virtual-machines_setup
以 initial 狀態設定新購買的虛擬機器。
使用此端點設定並初始化已購買的 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/setup
vps_snapshots_get
擷取指定虛擬機器的快照。
使用此端點檢視目前的 VPS 快照資訊。
- 方法:
GET - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot
vps_snapshots_create
為指定的虛擬機器建立快照。
快照會在特定時間點擷取虛擬機器的狀態和資料, 讓使用者在需要時可以將虛擬機器還原至該狀態。 此操作適用於備份目的、系統復原, 以及在不會影響虛擬機器目前狀態的情況下測試變更。
建立新快照將覆寫現有的快照!
使用此端點擷取 VPS 狀態以進行備份和復原。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot
vps_snapshots_delete
刪除指定虛擬機器的快照。
使用此端點移除 VPS 快照。
- 方法:
DELETE - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot
vps_snapshots_restore
使用快照將指定的虛擬機器還原至先前的狀態。
從快照還原可讓使用者將虛擬機器回復至該狀態, 這對於系統復原、復原變更或測試非常有用。
使用此端點將 VPS 執行個體回復至先前儲存的狀態。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/snapshot/restore
vps_virtual-machines_start
啟動指定的虛擬機器。
如果虛擬機器已在執行中,請求仍會被處理,但不會產生任何效果。
使用此端點開啟已停止的 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/start
vps_virtual-machines_stop
停止指定的虛擬機器。
如果虛擬機器已停止,請求仍會被處理,但不會產生任何效果。
這僅是運算層級的電源狀態變更,不會影響計費。若要停止未來的費用, 請在所屬訂閱上停用自動續約。
使用此端點關閉執行中的 VPS 執行個體。
- 方法:
POST - 路徑:
/api/vps/v1/virtual-machines/{virtualMachineId}/stop
hostinger-wordpress-mcp
wordpress_ai-content_generate-images
根據提示詞和影像類型,為指定的 WordPress 安裝開始產生一或多張影像。
產生過程為非同步執行:回應會立即傳回,包含 status: in-progress 和 generation_id。請每隔
幾秒輪詢 GET /api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id},
直到 status 為 completed 或 failed。
完成的產生作業會傳回暫時的影像 URL 及其到期時間; 請在此之前下載影像。影像符合要求的長寬比,且絕不會 小於要求的大小;標誌是裁切至標記的透明影像。
每個安裝同時只能執行一個影像產生作業:當仍有產生作業進行中時,
端點會傳回 409,且不包含執行中產生作業的 ID,因此未收到
202 的呼叫端必須等待其完成(最多幾分鐘)才能
開始新的產生作業。此端點限制為每分鐘 10 個請求。
請在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate
wordpress_ai-content_generation-result
取得為指定 WordPress 安裝啟動的 AI 內容產生結果, 例如透過 POST /api/hosting/v1/accounts/{username}/wordpress/{software}/content/images/generate 啟動的影像產生。
當產生作業仍在執行時,只會傳回 status: in-progress;請每隔
幾秒輪詢。一旦 completed,result 會包含根據
type 形塑的產生內容:對於 image-generation,包含暫時的影像 URL 及其到期時間;對於 website-generation(從 Hostinger
WordPress 外掛啟動),則包含產生的網站文件。failed 的產生作業沒有 result。未知或已過期的產生
ID 會傳回 404。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/content/generations/{generation_id}
wordpress_ai-tools_show-option-status
顯示指定 WordPress 安裝上 Hostinger Tools 外掛目前的 AI 選項狀態。以 option 篩選以回傳單一選項,或省略以回傳所有選項。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/hostinger-plugins/ai-option/status
wordpress_ai-tools_set-option-status
啟用或停用指定 WordPress 安裝上 Hostinger Tools 外掛的 AI 選項。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
PATCH - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/hostinger-plugins/ai-option/status
wordpress_installations_check-if-are-valid
檢查一個或多個 WordPress 安裝是否有效且正常運作。偵測因缺少檔案、外掛損壞、主題損壞及類似問題而導致的安裝異常。
在請求主體中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/installations/check-is-valid
wordpress_installations_delete
刪除指定的 WordPress 安裝,可選擇是否一併移除檔案與資料庫。這會移除所有相關元件,包括外掛、主題、暫存網站及其他相關資料。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
DELETE - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}
wordpress_installations_detect
觸發背景掃描以偵測帳戶中的 WordPress 安裝。
此操作為非同步:成功回應僅表示掃描已排入佇列。請輪詢 GET /api/hosting/v1/wordpress/installations 以在掃描完成後取得偵測到的安裝。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/installations/detect
wordpress_installations_import-website
將 WordPress 網站匯入至指定網域。
警告:此操作會覆寫網站現有內容且無法復原——請在呼叫此端點前確認此為預期操作。
此端點允許您從已上傳至網站目錄的封存檔與資料庫檔案匯入 WordPress 網站。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/import
wordpress_installations_install
在現有網站上安裝 WordPress。
呼叫此端點前,網站必須已存在。若要先建立新網站,請使用 POST /api/hosting/v1/websites 並輪詢 GET /api/hosting/v1/websites 直到網站出現。
在繼續前,請先以使用者名稱與網域篩選呼叫 GET /api/hosting/v1/wordpress/installations,以檢查 WordPress 是否已安裝在目標網域/路徑上。如果 WordPress 已存在且 overwrite 為 false(預設值),非同步工作將失敗。
此操作為非同步:成功回應僅表示安裝工作已排入佇列,不代表 WordPress 已就緒。安裝通常需要 1-2 分鐘。請以使用者名稱與網域篩選輪詢 GET /api/hosting/v1/wordpress/installations 以追蹤進度。當安裝出現在該清單中時,表示 WordPress 已就緒。
當帳戶已使用其方案允許的所有資料庫時,回傳 422,除非 database.name 是帳戶上既有的資料庫。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/installations
wordpress_installations_list
列出已驗證用戶端可存取的共享與雲端虛擬主機帳戶(/api/hosting/v1 系列,以 username 識別)上的 WordPress 安裝。
Agency Plan 網站不包含在內。若要處理 Agency Plan 網站上的 WordPress,請使用 GET /api/agency-hosting/v1/websites?website_types=wordpress 列出,並透過 GET /api/agency-hosting/v1/websites/{website_uid}/wordpress/settings 讀取其詳細資料。僅擁有 Agency Plan 網站的帳戶會從此端點收到空清單。
使用此端點來探索現有的 WordPress 安裝,並在呼叫安裝端點後輪詢安裝狀態。當新請求的安裝出現在此清單中時,表示 WordPress 已就緒。以使用者名稱與網域篩選可將結果縮小至特定網站。
每個安裝都包含一個 valid 旗標,若無效時,還包含一個 validationError 說明原因。
- 方法:
GET - 路徑:
/api/hosting/v1/wordpress/installations
wordpress_installations_list-core-updates
列出指定安裝可用的 WordPress 核心更新。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/updates
wordpress_installations_jwt-token
回傳一個 JWT 權杖,用於對指定 WordPress 安裝(包括其 MCP(Model Context Protocol)端點)進行請求驗證。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/jwt-token
wordpress_installations_show-core-version
顯示指定安裝的 WordPress 核心版本,以及影響該版本已知的漏洞。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/version
wordpress_installations_update-core
更新指定安裝的 WordPress 核心(次要更新或特定版本)。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示更新工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/update
wordpress_litespeed-cache_purge-lite-speed
清除指定 WordPress 安裝的 LiteSpeed Cache。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/litespeed-cache/purge
wordpress_litespeed-cache_show-lite-speed-status
顯示指定 WordPress 安裝的 LiteSpeed Cache 狀態。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/litespeed-cache/status
wordpress_login_create-links
為指定 WordPress 安裝建立臨時自動登入連結。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/login/links
wordpress_maintenance_show-status
顯示指定 WordPress 安裝的維護模式狀態。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/maintenance/status
wordpress_maintenance_toggle
根據 enabled 旗標,啟用或停用指定 WordPress 安裝的維護模式。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
PATCH - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/maintenance/toggle
wordpress_object-cache_show-memcached-status
顯示指定 WordPress 安裝的 Memcached 物件快取狀態。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/memcached/status
wordpress_object-cache_toggle-memcached
根據 enabled 旗標,啟動或停用指定 WordPress 安裝的 Memcached 物件快取。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
PATCH - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/memcached/toggle
wordpress_plugins_activate
在 WordPress 安裝上啟動已安裝的外掛。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示啟動工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/activate
wordpress_plugins_deactivate
在 WordPress 安裝上停用已安裝的外掛。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示停用工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/deactivate
wordpress_plugins_deploy
從已上傳的目錄部署 WordPress 外掛。
此端點允許您部署已上傳至網站目錄的 WordPress 外掛。該外掛將被啟動並在 WordPress 管理後台中提供使用。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/plugins/deploy
wordpress_plugins_install
在現有的 WordPress 安裝上安裝一個或多個外掛。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。使用 GET /api/hosting/v1/wordpress/plugins 探索可安裝的外掛 slug。
此操作為非同步:成功回應僅表示安裝工作已排入佇列,不代表外掛已就緒。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/install
wordpress_plugins_list
列出建議安裝於 WordPress 安裝上但尚未安裝的外掛。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/available
wordpress_plugins_list-installed
列出 WordPress 安裝上已安裝的外掛,包括其狀態、可用更新及已知漏洞。
在路徑中提供 WordPress 安裝(軟體)識別碼。可從
GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins
wordpress_plugins_search
在 WordPress.org 外掛目錄中搜尋可安裝的外掛。
使用回傳的 slug 值搭配
POST /api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/install。
- 方法:
GET - 路徑:
/api/hosting/v1/wordpress/plugins
wordpress_plugins_list-suggested
列出依網站類型分組的精選外掛建議。
使用回傳的 slug 值搭配
POST /api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/install。
- 方法:
GET - 路徑:
/api/hosting/v1/wordpress/plugins/suggested
wordpress_plugins_check-if-woo-commerce-is-installed
檢查某個網域的任何 WordPress 安裝中是否已安裝 WooCommerce。可選擇依網域篩選以限定檢查範圍。
- 方法:
GET - 路徑:
/api/hosting/v1/wordpress/plugins/is-woocommerce-installed
wordpress_plugins_uninstall
從 WordPress 安裝中解除安裝一個或多個外掛。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示解除安裝工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/uninstall
wordpress_plugins_update-hostinger
將 WordPress 安裝上的 Hostinger 外掛更新至最新版本。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示更新工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/hostinger/update
wordpress_plugins_update
將 WordPress 安裝上的一個或多個已安裝外掛更新至最新版本。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示更新工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/plugins/update
wordpress_themes_activate
在 WordPress 安裝上啟用已安裝的主題。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示啟用工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/themes/activate
wordpress_themes_deploy
從已上傳的目錄部署 WordPress 主題。
此端點允許您部署已上傳至網站目錄的 WordPress 主題。部署後可選擇性地啟用該主題。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/websites/{domain}/wordpress/themes/deploy
wordpress_themes_install
在現有的 WordPress 安裝上安裝主題。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
當主題為 Hostinger 主題之一(hostinger-blog、hostinger-affiliate-theme、hostinger-ai-theme)時,選用的 palette、layout 和 font 欄位會轉發給自訂安裝程式(預設值:palette1、layout1、default)。對於任何其他主題,這些欄位將被忽略。
此操作為非同步:成功回應僅表示安裝工作已排入佇列,而非主題已就緒。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/themes/install
wordpress_themes_list-installed
列出 WordPress 安裝上已安裝的主題,包括其狀態、可用更新和已知漏洞。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
- 方法:
GET - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/themes
wordpress_themes_list
列出可安裝的 WordPress 主題。
使用回傳的 slug 值搭配
POST /api/hosting/v1/accounts/{username}/wordpress/{software}/themes/install。
- 方法:
GET - 路徑:
/api/hosting/v1/wordpress/themes
wordpress_themes_uninstall
從 WordPress 安裝中解除安裝一個或多個主題。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示解除安裝工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/themes/uninstall
wordpress_themes_update
將 WordPress 安裝上的一個或多個已安裝主題更新至最新版本。
請在路徑中提供 WordPress 安裝(software)識別碼。可從 GET /api/hosting/v1/wordpress/installations 取得(id 欄位)。
此操作為非同步:成功回應僅表示更新工作已排入佇列。
- 方法:
POST - 路徑:
/api/hosting/v1/accounts/{username}/wordpress/{software}/themes/update