你的配方、工作流程和技能
透過 API 或 MCP 執行已儲存的配方和工作流程。取得並確認美元預算,追蹤每一步,並使用原 API 金鑰恢復暫停的執行。
重複使用你在 popnow.ai 上儲存的內容:從 Studio 儲存的配方,包含模型、提示詞、設定和檔案;後續步驟可使用先前結果的畫布工作流程;或包含其他助手可遵循說明的泡皮技能。
這些內容只有你和獲分享的團隊能存取。團隊成員的配方提示詞不會回傳,伺服器會在執行時組合。API-key REST 和 MCP 執行使用你的獨立 API 美元餘額,OAuth MCP 執行使用網站點數。兩份餘額不能互轉,也不能相互抵用。新 API 餘額初始為 $0,請在 API 帳單儲值。
概覽
| 列出 | GET /api/v1/recipes 取得配方和工作流程;GET /api/v1/skills 取得技能 |
| 查看詳情 | GET /api/v1/recipes/{id} 回傳輸入,以及可用時的 estimated_usd |
| 報價並執行 | POST /api/v1/recipes/{id}/run:先取得報價,再透過 currency、max_usd 和 quote_id 確認 |
| 追蹤 | 使用啟動時的金鑰呼叫 GET /api/v1/recipes/runs/{runId} |
| 恢復 | POST /api/v1/recipes/runs/{runId}/resume:為暫停的執行取得報價,再確認總預算 |
| 在對話中 | 透過 MCP 使用 list_my_recipes、run_my_recipe、get_recipe_run、resume_recipe_run、list_my_skills、use_my_skill |
| 尋找 ID | 開發者控制台 → 配方與技能 |
列出可執行的內容
curl "https://api.popnow.ai/api/v1/recipes?kind=recipe" \
-H "Authorization: Bearer $POPNOW_API_KEY"省略 kind 會同時回傳配方和工作流程。你自己的項目排在前面,隨後是與你所在團隊分享的項目(mine: false,並附帶 teamId)。每個項目都會列出所需的輸入:
{
"code": 200,
"msg": "success",
"data": {
"items": [{
"id": "svd_01jbq8x4m2c7d9f3h5k6n8p0rt",
"kind": "recipe",
"name": "Weekly post",
"mine": true,
"media": "image",
"currency": "USD",
"inputs": [
{ "id": "image_urls", "label": "Product", "media": "image", "multiple": false, "required": false },
{ "id": "prompt", "label": "Prompt", "media": "text", "multiple": false, "required": false }
],
"steps": 1,
"updatedAt": "2026-10-23T09:12:00Z"
}]
}
}讀取單一項目,查看使用已儲存檔案時的目前預估費用:
curl https://api.popnow.ai/api/v1/recipes/svd_01jbq8x4m2c7d9f3h5k6n8p0rt \
-H "Authorization: Bearer $POPNOW_API_KEY"API 中繼資料使用 currency: "USD" 和選填的 estimated_usd,不包含 estimatedCredits。這項預估不代表已獲准執行:請將實際輸入傳送到 POST /run,取得 quote_id。
執行
先傳送計畫使用的輸入和數量,不帶確認欄位。報價不會建立執行,也不會保留資金;不需要 Idempotency-Key。
curl https://api.popnow.ai/api/v1/recipes/svd_01jbq8x4m2c7d9f3h5k6n8p0rt/run \
-H "Authorization: Bearer $POPNOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{"inputs":{},"count":1}'{
"code": 200,
"msg": "success",
"data": {
"currency": "USD",
"cost_usd": "0.048",
"available_usd": "5",
"spent_usd": "0",
"quote_id": "quote_from_server",
"needs_confirmation": true
}
}查看並確認金額後,使用相同的輸入和數量再次送出,帶上 currency: "USD"、十進位字串 max_usd 及回傳的 quote_id。執行時需要長度為 1–100 個字元的 Idempotency-Key;重試同一次提交時,請沿用這個鍵。
# Set QUOTE_ID to the quote_id returned above, after reviewing the quote.
curl https://api.popnow.ai/api/v1/recipes/svd_01jbq8x4m2c7d9f3h5k6n8p0rt/run \
-H "Authorization: Bearer $POPNOW_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d "{\"inputs\":{},\"count\":1,\"currency\":\"USD\",\"max_usd\":\"0.048\",\"quote_id\":\"$QUOTE_ID\"}"成功啟動後會回傳 needs_confirmation: false、run_id、state 和已核准的 max_usd。如果價格超過上限或報價不再相符,回應會改為回傳 needs_confirmation: true 和新報價,不會啟動執行。請顯示新金額並再次徵求確認。僅憑 HTTP 200 不能判斷任務已經開始。
max_usd 是非負的十進位字串,最多 9 位小數。JSON 數字、負數、指數記法、未知欄位以及舊的 maxCredits / max_credits 確認參數都會被拒絕,不會自動轉換。提供 max_usd 卻不帶 quote_id 屬於無效請求。零價報價也需要明確確認。
輸入是什麼
| 輸入 ID | 接受的內容 | |
|---|---|---|
| 配方 | 已儲存的模型檔案欄位,例如 image_urls、first_frame_url 或 refs;prompt 替換已儲存的提示詞 | 檔案參照、參照清單或純文字 |
| 工作流程 | in1、in2 …,依清單順序;文字輸入會填入沒有自己提示詞的步驟 | 與上面相同 |
檔案可以使用 https 網址、先前結果的 popnow://g/<job>/<n>、上傳檔案的 popnow://f/<file>,或 API 素材的 popnow://a/<asset>。省略的輸入會沿用已儲存的檔案。配方的 count 為 1–4;工作流程只執行一次。無效輸入回傳 400,並附帶 param: inputs.<id>。
工作流程中的某個步驟可能要等先前結果產生後才能計價,此時報價會包含 unpriced_steps:cost_usd 只涵蓋目前已計價的步驟,不是完整工作流程的費用。 未計價步驟不能執行。等輸入準備就緒後,執行會暫停,等待新的恢復報價和確認。未計價不代表免費。
追蹤執行
請使用啟動時的同一把 API 金鑰。同帳戶下的其他金鑰不能讀取或恢復這次執行。使用 API 金鑰查詢狀態,不會把 OAuth 點數執行紀錄重新解釋為美元紀錄。
curl https://api.popnow.ai/api/v1/recipes/runs/sfg_01jbq9a3d5f7g9h2k4m6n8p0qs \
-H "Authorization: Bearer $POPNOW_API_KEY"{
"code": 200,
"msg": "success",
"data": {
"currency": "USD",
"run_id": "sfg_01jbq9a3d5f7g9h2k4m6n8p0qs",
"state": "done",
"cost_usd": "0.048",
"available_usd": "4.952",
"spent_usd": "0.048",
"max_usd": "0.048",
"needs_confirmation": false,
"items": [
{ "stepId": "r1", "state": "succeeded", "jobId": "job_01jbq9a6v8w0x2y4z6a8b0c2d4", "uri": "popnow://g/job_01jbq9a6v8w0x2y4z6a8b0c2d4/0" }
]
}
}state 為 draft、running、paused、done、stopped 或 failed。處於 draft 或 running 時可繼續輪詢。處於 paused 時,查看 pause_reason,解決問題後再取得恢復報價。items 保留 stepId、state、jobId 和 uri;recordInfo 回傳每個任務的下載連結。
spent_usd 是 API 錢包的實際淨扣款,已計入返還的資金。cost_usd 是預估費用,不是結算費用。美元回應不包含整數點數。歷史網站點數執行保留原幣別,仍需透過支援它們的網站或 OAuth 流程存取。
恢復暫停的執行
傳送 {} 取得新報價:
curl https://api.popnow.ai/api/v1/recipes/runs/sfg_01jbq9a3d5f7g9h2k4m6n8p0qs/resume \
-H "Authorization: Bearer $POPNOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'查看報價後,帶上 currency: "USD"、max_usd 和新的 quote_id 再次送出。這是整次執行的總預算,包含已花費金額及執行中已承諾的費用,不是額外增加的額度。 原始輸入和數量不能更改。
恢復不需要 Idempotency-Key。並行請求不會重複恢復執行;已經恢復的執行會回傳衝突。執行仍關聯原金鑰、付款帳戶和來源上下文。如果金鑰的 IP 原則發生變化,請從允許的來源啟動新的執行,不要繞過暫停限制。
技能
curl https://api.popnow.ai/api/v1/skills/skl_01jbpz7c9e1g3j5m7q9s1v3x5z \
-H "Authorization: Bearer $POPNOW_API_KEY"GET /api/v1/skills 列出你的技能,以及與你所在團隊分享的技能。GET /api/v1/skills/{id} 會額外回傳 Markdown 格式的 body。以僅使用(shareMode: "use")方式分享的團隊技能沒有 body:它可以在 PopNow 中使用,但說明內容保持隱藏。
在 ChatGPT 和 Claude 中
連線到 MCP 伺服器,然後說「用這張照片執行我的 Weekly post 配方」。助手會使用連線對應的付款帳戶,不會在兩份錢包之間選擇。
| 工具 | 作用 | 參數 |
|---|---|---|
list_my_recipes | 列出配方和工作流程,包括共用項目 | 無 |
run_my_recipe | 先報價,再依連線對應的幣別啟動 | recipe_id、inputs、count;API 金鑰:currency、max_usd、quote_id、idempotency_key;OAuth:max_credits |
get_recipe_run | 讀取狀態、費用和結果 | run_id |
resume_recipe_run | 為暫停的 API-key 美元執行報價並恢復 | run_id,隨後傳入 currency、max_usd、quote_id |
list_my_skills | 列出你的技能及團隊技能 | 無 |
use_my_skill | 回傳可讀取的技能說明 | skill_id |
API-key MCP 遵循上述美元報價、確認、總預算及同金鑰規則。確認 run_my_recipe 時還需要提供長度為 1–100 個字元的 idempotency_key 字串;僅報價時不需要。如果回應遺失,請使用同一個冪等鍵和全部相同的參數重試,以取回原先已受理的執行,即使配方或價格後來已變動也一樣。只有另一次經過個別核准的執行才使用新的冪等鍵。使用同一個冪等鍵更改參數會回傳衝突。OAuth 保留以網站點數為單位的 max_credits 確認方式,並拒絕美元欄位。恢復工具適用於 API-key 美元執行,不需要新的冪等鍵;它根據原執行的狀態防止重複執行。
限制與錯誤
每個美元步驟都會重新檢查金鑰狀態、有效期限、模型權限、消費上限和 API 餘額。預算包含已花費資金、執行中的保留金額及已預留的工作,技術性重試也計入其中。價格即使只變動 $0.000000001,也會暫停執行並等待確認。整次執行的總預算上限為 $10,000,每步上限為 $1,000。
| 狀態碼或結果 | 出現時機 |
|---|---|
needs_confirmation: true | 首次報價、價格變動或報價不符;請查看並確認 |
400 | 輸入或美元確認參數無效、使用舊點數上限,或預算超過限額 |
402 | API 資金不足,或將超過適用的消費上限 |
403 | 金鑰或其權限不允許執行此工作 |
404 | 呼叫方無法存取已儲存的項目或執行 |
409 | 執行的目前狀態不允許恢復、工作流程輸入尚未準備就緒,或已儲存的模型已下線 |
別人能看到或執行我的配方嗎?
只有你和獲分享的團隊可以存取已儲存的內容。沒有公開目錄,也不能透過猜測 ID 取得存取權。共用配方的提示詞不會回傳給團隊成員。
我執行團隊分享的配方,誰來付費?
由你支付。API 金鑰執行使用你的 API 美元錢包;OAuth 使用網站點數。請先查看報價並確認預算。
每次執行都要重新上傳檔案嗎?
不用。使用 https 網址,或結果、上傳檔案、API 素材的 popnow:// 參照即可。省略的輸入會沿用已儲存的檔案。
配方用的模型下線了會怎樣?
執行無法啟動。請在 popnow.ai 上開啟配方,選擇可用模型並重新儲存,然後取得新報價。
配方有 SDK 嗎?
可以使用這些透過 HTTPS 傳輸 JSON 的範例或 HTTP 用戶端,美元金額始終保留為字串。不要沿用透過整數點數核准 API 配方執行的舊 SDK 範例。

