Skip to main content
Brand API 把公司域名或工作邮箱转成结构化的品牌资料:名称、描述、logo、颜色、社交账号和主要链接。返回的每个字段都附有自己的来源,你的产品可以显示每个值是从哪里来的。 把域名或邮箱发送到 POST /v1/brand/retrieve。Hermai 有近期的资料时会返回缓存,没有时会启动新的提取。

获取品牌资料

domain 和 email 只能二选一发送。
发送 email 时,Hermai 只保留域名,绝不存储或转发邮箱的用户名部分。

请求内容

响应

这个示例是对 stripe.com 的实际结果,为了篇幅有删节;实际调用会返回比这里更多的 logo、颜色、社交账号和链接。

顶层字段

字段来源

brand 里的每个字段都带有 Hermai 找到它的位置: origin 是以下之一: 任何字段都没有置信度分数。请用 origin 和 source 判断一个值可信到什么程度。

描述

description 是公司自己撰写的简介,不是 Hermai 生成的摘要。Hermai 按下列优先顺序检查来源,采用第一个通过的:
  1. JSON-LD 的 Organization 描述,且只在 JSON-LD 确认该组织属于所请求的域名时采用。未经确认的 JSON-LD 组织描述会被丢弃,不作为备用。
  2. og:description meta 标签。
  3. 普通的 <meta name="description"> 标签。
Hermai 把描述限制在 500 字符内,并在该限制内最后一个完整句子的结尾截断,绝不补上省略号。 Hermai 会拒绝过短的文字、插页或机器人验证页面、cookie 与同意声明,以及堆砌关键词的文字。都不通过时,description 不会出现。 来自 stripe.com 的实际示例:

状态值

冷查询与轮询

Hermai 已有新鲜资料的域名会立即返回,status 为 ok、partial 或其他终态值之一。 Hermai 近期没有提取过的域名会启动新的提取。若在 wait_ms 内没有完成,POST /v1/brand/retrieve 会返回 HTTP 202,status 为 pending:
等待 pending.poll_after_ms 之后,带着 token 调用 POST /v1/brand/poll:
响应持续返回 202 和 status: pending 时,用同一个 token 再轮询。token 的有效期是 5 分钟。提取完成后,poll 会返回 HTTP 200 和完成的资料。 轮询本身免费。第一次送达终态结果时,不论来自 retrieve 还是 poll,都按下方的一般规则计费。

应用主题

application_theme 提供现成的 token,让你用这家公司的品牌来设计自己的产品,不必自己排序 logo 或挑选强调色。 每个 identity 位置都带有 asset(一个 logo,或 null)、show_company_name(是否在素材旁一并显示公司名称)和 fallback(asset 为 null 时要显示什么,例如 monogram 或 asset_with_company_name)。

计费

成功的资料计 1 个普通 Hermai credit,与其他所有 Hermai 端点共用同一个 credit 池。status 为 ok 或 partial,且资料至少有名称、logo 或颜色其中之一时,Hermai 才计费。只有描述、社交账号或链接而没有名称、logo 或颜色的 partial 结果不计费。 Pending 结果和失败的查询一律不计费。

速率限制

Brand 端点叠加三层限制。由近期缓存资料响应的热请求只计入前两层;启动新提取的冷请求三层都计入。 与其他所有 Hermai 端点共用的每个 key 标准速率限制: Brand 专用的 workspace 限制,由 workspace 内所有 key 共用: 仅应用于启动新提取的冷提取限制: 三层中任何一层超过都会返回 HTTP 429。

匿名 brand demo

POST /v1/brand/demo 不需要 API key、不消耗 credits 就能运行品牌查询。它只接受域名,返回较小的公开投影:status、domain,以及 brand.name、brand.description、brand.logos、brand.colors。它绝不返回 socials、links 或 usage。
冷的 demo 查询会返回 HTTP 202、status: pending 和一个 poll_after_ms 提示。等那段时间后再发送一次同样的域名。demo 端点没有 poll token。 demo 端点有自己的限制,与上面的认证限制分开: 每一项都会返回 HTTP 429 和 Retry-After header。

错误

错误使用标准的 API 封包:
retry_after 只在速率限制错误时出现,单位秒。其他错误都没有这个字段。 5xx 响应(例如 BRAND_RESPONSE_INVALID)表示 Hermai 这边失败了。请重试。

认证

使用与其他所有 Hermai API 路由相同的 Bearer token。见 API keys。