Autentikasi
Token Bearer di header Authorization. Buat kunci di Pengaturan.
Authorization: Bearer YOUR_API_KEYGambar, video, audio, dan 3D di balik satu API, dibayar dari saldo yang sama dengan studio. Buat kunci di Pengaturan dan pasang CLI dengan npm.
$ npm i -g pufy-ioGanti ID model untuk beralih antara gambar, video, dan suara. Kolomnya mengikuti model.
1# 1. Generate an image2curl -X POST https://pufy.io/api/v1/api/catalog/generations \3 -H "Authorization: Bearer $PUFY_API_KEY" \4 -H 'Content-Type: application/json' \5 -H "Idempotency-Key: $(uuidgen)" \6 -d '{7 "modelId": "luma/uni-v1/text-to-image",8 "inputs": {9 "prompt": "Neon city street after rain, cinematic night",10 "size": "16:9"11 }12}'13 14# 2. Poll with the generation id from step 1 until its status is succeeded15curl https://pufy.io/api/v1/api/catalog/generations/$ID \16 -H "Authorization: Bearer $PUFY_API_KEY"17 18# 3. Download the file19curl https://pufy.io/api/v1/api/catalog/generations/$ID/content \20 -H "Authorization: Bearer $PUFY_API_KEY" \21 -o result.jpeg
export PUFY_API_KEY="YOUR_API_KEY"npm i -g pufy-iopufy run luma/uni-v1/text-to-image -p "violet neon fox" -o ./out/Jalankan model apa pun dari shell, job CI, atau agen coding. Setiap render diberi harga sebelum dimulai dan dibayar dari saldo yang sama.
pufy loginTempel kunci API Anda sekali; kunci diperiksa lalu disimpanpufy whoamiNama kunci dan saldo Andapufy models --type videoSemua model video beserta harga awalnyapufy run <model> -hKolom sebuah model, diambil langsung: tipe, default, nilai yang diizinkanpufy run <model> -p "<prompt>" -o ./out/Render dan simpan hasilnya di folderpufy run <model> -p "..." --dry-runHarga pastinya, tanpa mengeluarkan apa punpufy run <model> -p "..." --max-price 0.50Menolak berjalan jika harganya lebih tinggipufy run <model> -p "..." --json -o ./out/Satu hasil JSON, siap untuk langkah berikutnyapufy skill installAjari agen coding Anda memakai CLIToken Bearer di header Authorization. Buat kunci di Pengaturan.
Authorization: Bearer YOUR_API_KEYMemulai render langsung menjawab dengan status queued. Polling render sampai berhasil, gagal, atau dikembalikan dananya.
{ "status": "queued" }Minta harga pasti untuk input Anda tanpa memulai apa pun. Semua jumlah dalam sen euro.
POST /api/v1/api/catalog/quoteKirim header Idempotency-Key dan permintaan yang diulang tidak akan pernah ditagih dua kali.
Idempotency-Key: render-042Setiap kunci punya batas per menit dan batas harian opsional. Melewati batas, API menjawab 429.
429 Too Many RequestsError JSON dengan kode dan pesan. Render yang gagal otomatis dikembalikan ke saldo Anda.
{ "status": "refunded" }/api/catalog/meKunci dan saldo Anda/api/catalog/modelsSemua model/api/catalog/models/detail?id=MODEL_IDSatu model dan kolomnya/api/catalog/quoteHarga untuk input tertentu/api/catalog/generationsMulai render/api/catalog/generationsRender terbaru Anda/api/catalog/generations/IDStatus satu render/api/catalog/generations/ID/contentFile hasil/api/catalog/generations/IDHapus renderIsi saldo €3 dan mulai di studio
Buat kunci API di Pengaturan dan panggil model apa pun. Pasang CLI dengan npm. Render yang gagal dikembalikan.