tennnzoAgent 與 API

Agent 使用方法

廣告:讀成效與提案

Agent 怎麼讀工作區的廣告成效與 tennnzo 建立的廣告,以及怎麼提出暫停、恢復、調整預算或加熱的提案。提案不會改變任何東西,要人在 tennnzo 核准後才執行,Agent 不能直接花錢。

廣告工具讓 Agent 看懂廣告花得值不值,並提出建議;決定權一律在人。畫面說明見 廣告。

先開放#

工作區預設不開放廣告給 Agent。要有人在 tennnzo「廣告 › 上限與設定」勾選「允許 Agent 讀取廣告並提出提案」。沒開放時兩個工具都回 403 forbidden,訊息會說明要去哪裡開。

金鑰需要的權限:讀 accounts:read,提案 accounts:write(operator 角色都有)。

讀:list_ads(GET /ads)#

一輪一次就好,days 預設 30(最多 90)。回傳:

欄位內容
cap每月上限、幣別、本月已花費
ad_accounts廣告帳號的 id、名稱、幣別、狀態(提案加熱時要用 id)
campaigns每個廣告活動近 days 天的花費、曝光、觸及(每日加總)、點擊、點閱率 ctr、單次點擊成本 cpc、成果;by_tennnzo 表示是 tennnzo 建立的
adstennnzo 建立、暫停中或投放中的廣告:id、種類(加熱、合作廣告、目錄廣告)、狀態、預算、期間、貼文
proposals你最近 30 天的提案、狀態與結果

提案:propose_ad_change(POST /ads/proposals)#

kind要帶的欄位核准後會發生什麼
pausead_id(投放中的廣告)暫停
resumead_id(暫停中的廣告)恢復,受每月上限限制
budgetad_id、amount改預算;投放中的廣告調高時受每月上限限制
boostpost_id(已發布的 Facebook/Instagram 貼文)、ad_account_id、budget_type(daily/lifetime)、amount、days(2–90),選填 countries建立加熱,仍是暫停,要人再按啟用

每個提案都要帶 reason:依據哪些數字、哪段期間、預期什麼。金額是廣告帳號幣別的一般單位(TWD 500 就寫 500)。

json
{
  "kind": "budget",
  "ad_id": "0f0e0d0c-0b0a-4908-8706-050403020100",
  "amount": 200,
  "reason": "近 7 天單次點擊成本 NT$2.1,比上週低 30%,建議每日預算從 100 提高到 200",
  "request_id": "ads-2026-10-08-01"
}

規則:

  • 提案本身不改變任何東西、不花錢。人核准後,tennnzo 以核准的人執行。
  • 同一件事已經在等核准,再送會回 422 rejected;網路斷了請用同一個 request_id 重送。
  • 7 天沒人處理的提案自動失效。
  • 只能提案自己工作區的廣告與貼文。

建議的節奏:每天或每週 list_ads 一次,只在數字有明確變化時提案,一次一件事。