全部文章

用 Make、n8n 和 Zapier 发布网站:Hostilo REST API

任何能发送 HTTP 请求的工具,现在都可以在 Hostilo 上创建、更新和恢复网站。REST API 拥有与 Claude 和 ChatGPT 的 MCP 连接器相同的 10 个操作,每个操作都有独立地址,公开文件 openapi.json 描述了整个接口。下面是四个具体用法,以及两个可直接导入的场景:一个用于 n8n,一个用于 Make。

API 能做什么

操作方法用途
list_sitesGET列出你的网站及其 id
get_siteGET网站的完整 HTML(最大 5 MB)
create_sitePOST新网站:空白、带 HTML、带文件或基于模板
update_sitePOST更新网站 HTML,可用 id 或名称
publish_filesPOST多文件网站:index.html、CSS、JS、图片
import_zipPOST从 ZIP 文件导入整个项目
list_templatesGETHostilo 现成模板
list_versionsGET网站已保存的版本
restore_versionPOST恢复到指定版本
get_site_statsGET浏览量和访客

每个操作的地址是 https://hostilo.app/api/v1/<操作>。请求和响应均为 JSON。

密钥、限制和套餐

第一个请求

curl -X POST https://hostilo.app/api/v1/create_site \
  -H "Authorization: Bearer hk_..." \
  -H "Content-Type: application/json" \
  -d '{"site_name": "prices-2026", "html": "<!DOCTYPE html><html>...</html>"}'

响应:

{"success": true, "message": "Strona utworzona.", "site_id": 124, "url": "https://prices-2026.hostilo.page"}

网站名称为 3 到 30 个字符:小写字母、数字和连字符,由它生成地址 名称.hostilo.page。

用法 1:表格或表单变成网站

有人提交了表单,或者你在 Google 表格里新增一行,片刻之后 名称.hostilo.page 上就出现一个完整的页面。第一次运行创建网站,之后每次运行替换内容。两个现成场景都是这样工作的:

1

场景发送 update_site,site_id 填网站名称。

2

如果网站还不存在,API 返回状态码 400 和信息 “Strona nie istnieje…”(网站不存在)。这时场景用同样的 HTML 调用 create_site。

3

处理下一行时网站已存在,流程在 update_site 结束。上一版本进入历史记录。

POST https://hostilo.app/api/v1/update_site
{"site_id": "prices-2026", "html": "<!DOCTYPE html><html>...</html>"}

n8n

下载 n8n-hostilo-publish.json,在 n8n 中选择 Import from File(或把文件内容粘贴到空白 workflow)。你会得到五个节点:Webhook → Build HTML → update_site → 条件 → create_site。在两个 Hostilo 节点中创建同一个 Header Auth 凭据:名称 Authorization,值 Bearer hk_...。点击 Test workflow 并发送:

curl -X POST "<Webhook test URL>" \
  -H "Content-Type: application/json" \
  -d '{"site":"prices-2026","title":"2026 价目表","text":"理发:60 元"}'

也可以用 Google Sheets Trigger 节点代替 webhook,列名为 site、title 和 text。如果数据中有 html 字段,场景会原样发布,所以你可以在前面接一个 AI 模型节点来生成整个页面。

Make

下载 make-hostilo-publish.json,新建场景,在三点菜单中选择 Import Blueprint。模块依次为:Google Sheets Watch Rows(A 列:网站名称,B 列:标题,C 列:正文)→ JSON Transform to JSON → HTTP Make an API Key Auth request(update_site)→ 同一模块(create_site,带“网站尚不存在”过滤器)。导入后选择你的表格并添加密钥:Credentials → Add,Key 填 Bearer hk_...,API Key placement 选 In the header,参数名 Authorization。两个 HTTP 模块选择同一个密钥。

为什么要用 Transform to JSON

含有大量引号和换行的 HTML 直接放进请求体会破坏 JSON。Transform to JSON 会把它转成合法的字符串,API 收到的内容和表格中完全一致。

Zapier

Zapier 不支持从文件导入场景,一个步骤就够了:Webhooks by Zapier → Custom Request,方法 POST,URL https://hostilo.app/api/v1/update_site,请求头 Authorization: Bearer hk_... 和 Content-Type: application/json,Data 中填上面的 JSON。最简单的做法是先在控制面板里建好网站,让 Zap 只负责更新。

用法 2:每个新产品都有自己的页面

目录里新增一个产品,场景就为它创建一个页面,例如 spf50-cream.hostilo.page,包含介绍、价格和下单按钮。只需一次 create_site 调用,名称取自产品编号。如果页面需要单独的样式表、脚本和照片,请用 publish_files:

POST https://hostilo.app/api/v1/publish_files
{
  "site_id": "spf50-cream",
  "files": [
    {"path": "index.html", "content": "<!DOCTYPE html><html>...</html>"},
    {"path": "style.css", "content": "body { font-family: sans-serif }"},
    {"path": "photo.jpg", "content": "/9j/4AAQ...", "encoding": "base64"}
  ]
}

index.html 成为页面,其他文件放入 assets/ 文件夹,Hostilo 会自动修正 HTML 中的链接。你也可以从现成设计开始:list_templates 返回模板列表,create_site 加上 template 字段即可基于模板建站。注意网站数量限制:免费版 5 个,PRO 20 个。产品很多时,用一个产品列表页并通过 update_site 刷新会更合适。

用法 3:自动刷新的页面

来自表格的价目表、课程表、可预约时段、联赛成绩。场景每小时或每天早上运行一次(n8n 用 Schedule Trigger 节点,Make 用场景的定时设置),获取数据、生成 HTML 并发送 update_site。Hostilo 保留最近 10 个版本,数据源出了问题时,一次调用即可回退:

GET  https://hostilo.app/api/v1/list_versions?site_id=prices-2026

POST https://hostilo.app/api/v1/restore_version
{"site_id": "prices-2026", "version_id": "1760601600"}

恢复时当前版本也会进入历史记录,所以这一步同样可以撤销。每周一次,同一个场景还可以获取统计数据,把浏览量写入表格或发送到 Slack:

GET https://hostilo.app/api/v1/get_site_stats?site_id=prices-2026&days=7

免费版显示 7 天;PRO 最长 365 天,并按国家、来源和设备细分。

用法 4:会发布网站的自定义 GPT

在 ChatGPT 中创建一个 GPT,然后进入 Configure → Actions → Create new action → Import from URL,填入 https://hostilo.app/openapi.json。Authentication 选 API Key,Auth Type 选 Bearer,粘贴你的密钥。隐私政策填 https://hostilo.app/privacy。GPT 会获得全部 10 个操作及说明,当你写下“把这个页面发布为 corner-cafe”时,它会自己选择正确的操作。

两点提示。GPT Actions 接受的响应约 100 KB 以内,非常大的页面可能无法通过 get_site 返回。如果你只是自己使用 ChatGPT、Claude 或 Perplexity,MCP 连接器更简单:用 Hostilo 账户登录即可,无需复制密钥。

面向代理公司和自动化从业者

一个场景可以服务多个客户网站,因为网站名称只是表格或 CRM 中的一个字段。客户在表格里加上促销信息,页面就会自动更新,而你通过同一个 API 获得版本历史和月度报告所需的统计数据。旧集成使用的 /api.php?action= 地址继续可用。完整参考:REST 文档。

常见问题

REST API 需要额外付费吗?

不需要。免费版和 PRO 都可以使用,限制同为每分钟 60 次请求。套餐决定网站数量、统计时间范围,以及账户是否需要定期登录。

REST API 和 MCP 连接器有什么区别?

操作完全相同。MCP 连接器面向 AI 应用(Claude、ChatGPT、Perplexity、Cursor),在其中用 Hostilo 账户登录。使用 hk_ 密钥的 REST 面向自动化工具、脚本和自定义 GPT。

密钥放在场景里安全吗?

请把它保存在工具的凭据中(n8n:Header Auth,Make:Credentials),不要填在节点字段里。现成文件中不包含密钥。如果泄露,在控制面板生成新密钥,旧密钥会立即失效。

每分钟超过 60 次请求会怎样?

API 返回状态码 429 和 Retry-After 响应头。在 n8n 的 HTTP Request 节点中开启 Retry On Fail 或 Batching;在 Make 中在调用之间加一个 Sleep 模块。

连接你的第一个场景

注册免费账户,在“API 与工具”中生成密钥,然后把现成文件导入 n8n 或 Make。无需信用卡。

免费注册

更多博客文章