跳至主要內容
GetAPI
繁體中文
選單

GetAPI.ONE

使用 GetAPI.ONE 生成影像

從即時目錄選擇影像模型,向 ONE 影像端點發送最小宣告請求,驗證回應形狀並安全儲存輸出。

準備受支援的請求

  • 開啟目前目錄,選擇明確宣告影像生成端點的模型。
  • 在可能計費的呼叫前檢視即時價格;本指南不固化價格。
  • 先生成一個結果,並且只使用該模型契約明確展示的欄位。
text
POST https://www.getapi.one/v1/images/generations

傳送最小生成請求

  1. 在可信程序環境中設定 GETAPI_ONE_API_KEY。
  2. 從目前目錄複製準確的影像模型 ID。
  3. 在提示詞中描述主體、構圖與約束。
  4. 先提交一個結果,確認模型支援後再增加選用欄位。
  5. 對有大小限制的 Base64 輸出進行本地解碼。如果回應包含 URL,應將其記錄並交給具備明確出站/Host 規則和重定向複核的獲批下載器,而不是在 API 程序中直接訪問。
shell
curl --fail-with-body https://www.getapi.one/v1/images/generations \
  -H "Authorization: Bearer $GETAPI_ONE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<IMAGE_MODEL_ID_FROM_CURRENT_CATALOG>",
    "prompt": "A clean product diagram of a secure server-side API flow",
    "n": 1
  }' > image-response.json
檢查 data[0] 並儲存返回位元組
import base64
import json
from pathlib import Path
from urllib.parse import urlsplit

payload = json.loads(Path("image-response.json").read_text(encoding="utf-8"))
item = payload["data"][0]

if item.get("b64_json"):
    image_bytes = base64.b64decode(item["b64_json"], validate=True)
    if len(image_bytes) > 25 * 1024 * 1024:
        raise ValueError("Image exceeds the local 25 MB safety limit")
    Path("generated-image.bin").write_bytes(image_bytes)
elif item.get("url"):
    url = item["url"]
    parsed = urlsplit(url)
    if parsed.scheme != "https" or not parsed.hostname:
        raise ValueError("Refusing an invalid or non-HTTPS image URL")
    # Do not dereference provider-controlled URLs from a generic server example.
    # Give this record to an approved downloader that enforces your egress and
    # host policy, rejects private/link-local/loopback destinations, revalidates
    # every redirect, sends no ONE credential, and bounds the response bytes.
    Path("generated-image-url.txt").write_text(url, encoding="utf-8")
    print("URL recorded for an egress-controlled downloader")
else:
    raise ValueError("Expected data[0].url or data[0].b64_json")

評估生成結果

檢查項通過條件
提示詞遵循度所需主體與構圖均出現。
安全與權利輸出適合目標受眾,且你擁有所提供輸入的權利。
回應契約檢查 data[0].url 或 data[0].b64_json,驗證後儲存返回位元組。
執行記錄記錄模型 ID、提示詞版本、可用的請求 ID 與結果,但不記錄金鑰。

驗證預期結果

  • HTTP 請求成功,回應體包含所選模型實際返回的影像結果形狀。
  • 解碼後的 Base64 檔案可以按預期影像型別開啟;或者 URL 結果已被記錄,並且僅由獲批的出站受控下載器取得。
  • ONE 主控台記錄了請求或對應的用量。

修復影像請求錯誤

現象處理
參數不支援移除可選的尺寸、品質、格式或數量欄位,直到確認準確模型支援。
輸出為空或不可用檢查完整 JSON,並處理其實際 URL 或編碼資料欄位;不要假設所有 Provider 形狀相同。
政策或輸入被拒絕修改輸入,不要重複提交同一請求。

安全儲存輸入與輸出

  • 金鑰僅儲存在伺服器端,並在轉發前校驗提示詞長度、輸出數量與可選欄位。
  • 除非已批准的資料處理規則允許,否則不要傳送機密源圖或個人資料。
  • 除非 Provider 契約另有明確說明,否則將返回 URL 視為臨時地址;把獲批輸出複製到受控儲存。
  • 絕不要把 GetAPI.ONE Authorization 標頭 轉發給返回的影像 URL。
  • 將返回 URL 視為不可信輸入:在專用下載器中實施明確的出站與 Host 策略,阻止私網、鏈路本地與迴環目標,並重新驗證每次重定向。

下一步