Skip to main content
Brand API 把公司網域或工作 email 轉成結構化的品牌資料:名稱、描述、logo、顏色、社群帳號和主要連結。回傳的每個欄位都附有自己的來源,你的產品可以顯示每個值是從哪裡來的。 把網域或 email 送到 POST /v1/brand/retrieve。Hermai 有近期的資料時會回傳快取,沒有時會啟動新的擷取。

取得品牌資料

domain 和 email 只能擇一送出。
送 email 時,Hermai 只保留網域,絕不儲存或轉送 email 的信箱名稱部分。

請求內容

回應

這個範例是對 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。