Ducklygen API
カタログのすべてのモデルを、あなたのコードから。キーはひとつ、残高もひとつ、価格はスタジオと同じです。
1 · 認証
設定の API キーからキーを作成し、すべてのリクエストに Bearer トークンとして付けて送信します。キーは dk_live_ で始まり、Ducklygen でのみ有効です。キーはサーバー側で保管し、ブラウザやアプリには置かないでください。
curl https://ducklygen.com/api/v1/api/catalog/me \
-H "Authorization: Bearer $DUCKLYGEN_API_KEY"3 · 生成を開始
1 回の呼び出しで入力内容に応じた価格を算出し、残高から差し引きます。レスポンスはすぐに status queued で返り、生成はバックグラウンドで進みます。Idempotency-Key ヘッダーを付ければ、リクエストを再送しても二重に課金されません。
curl -X POST https://ducklygen.com/api/v1/api/catalog/generations \
-H "Authorization: Bearer $DUCKLYGEN_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"modelId": "image-model-id",
"inputs": {
"prompt": "rubber duck floating on teal water, soft light"
}
}'先に価格を確認 (任意)
同じ入力で、何も開始せずに価格だけを算出します。結果はセント単位です。
curl -X POST https://ducklygen.com/api/v1/api/catalog/quote \
-H "Authorization: Bearer $DUCKLYGEN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"modelId":"image-model-id","inputs":{"prompt":"rubber duck floating on teal water, soft light"}}'4 · ステータス確認とダウンロード
status が succeeded、failed、refunded のいずれかになるまで、数秒ごとに生成の状態を取得します。成功したら、同じキーで contentUrl からファイルをダウンロードします。テキストモデルの場合は、回答が textOutput に入ります。
curl https://ducklygen.com/api/v1/api/catalog/generations/ID \
-H "Authorization: Bearer $DUCKLYGEN_API_KEY"
curl https://ducklygen.com/api/v1/api/catalog/generations/ID/content \
-H "Authorization: Bearer $DUCKLYGEN_API_KEY" \
-o result.pngエンドポイント
ベース URLhttps://ducklygen.com/api/v1/api/catalog
/meキーと残高/modelsすべてのモデル/models/detail?id=MODEL_ID1 つのモデルとそのフィールド/quote指定した入力の価格/generations生成を開始/generations最近の生成/generations/ID1 件の生成のステータス/generations/ID/content結果ファイル/generations/ID生成を削除エラーと制限
エラーはコードとメッセージを含む JSON で返ります。401: キーがない、誤っている、または失効している。400: 無効なフィールドがある (詳細にフィールド名が示されます)。402: 残高不足。409 API_KEY_DAILY_CAP: キーの 1 日あたりの上限に達した。429: リクエストが多すぎるため、間隔を空けてください。失敗した生成は自動的に返金されます。
価格と残高
API での生成はスタジオと同じ残高を使い、料金も同じです。API 内の金額はすべてユーロセント単位です。costCents は生成に課金された額、balanceCents は残りの残高です。