Vai al contenuto principale

Modelli popolari


Passo 1: carica o referenzia un’immagine

Per prima cosa, devi fornire l’immagine di partenza. Puoi:
  • Caricare un file immagine come data URI in base64.
  • Fornire un URL pubblicamente accessibile dell’immagine.
import { readFileSync } from "node:fs";

// Option 1: Using a base64 data URI
const imageBuffer = readFileSync("input_image.jpg");
const imageDataUri = `data:image/jpeg;base64,${imageBuffer.toString("base64")}`;

// Option 2: Using image URL
const imageUrl = "https://s.krea.ai/logo-icon-black.jpg";
Sostituisci con il tuo API TokenPer sostituire il segnaposto YOUR_API_TOKEN negli esempi sopra, devi generare un API token in krea.ai/settings/api-tokens. Segui le istruzioni nella pagina API Keys & Billing se hai bisogno di aiuto.

Passo 2: genera l’immagine

Esegui una richiesta POST verso l’endpoint appropriato con la tua immagine e i parametri.
// npm install @krea-ai/sdk
import { Krea } from "@krea-ai/sdk";

const krea = new Krea({ apiKey: process.env.KREA_API_KEY });

const job = await krea.image("google/nano-banana-pro", {
  image_urls: [imageDataUri],
  prompt: "Turn this logo into an aesthetic rug. Product Photography style, with an aura that would make me want it in my own living room."
});

console.log(`Job ID: ${job.job_id}`);
Esempio di risposta
{
  "created_at":"2026-02-13T02:20:58.265Z",
  "completed_at":null,
  "job_id":"757a315b-b3ed-457b-b1ba-cff5e140cfd4",
  "status":"processing",
  "type":"externalImage",
  "result":{}
}

Passo 3: esegui il polling dei risultati

La generazione di immagini è asincrona. Riceverai immediatamente un job ID, poi dovrai effettuare il polling dei risultati finché l’immagine non è pronta. Esegui il polling di /jobs/{job_id} ogni 2 secondi fino al completamento del job.
// npm install @krea-ai/sdk
import { Krea } from "@krea-ai/sdk";

const krea = new Krea({ apiKey: process.env.KREA_API_KEY });

async function waitForJob(jobId) {
  const completed = await krea.jobs.wait(jobId, { intervalMs: 2000 });
  return completed.result.urls[0];
}

const imageUrl = await waitForJob(job.job_id);
console.log(`Image ready: ${imageUrl}`);
Esempio di risposta completata

{
  "created_at":"2026-02-13T02:20:58.265Z",
  "completed_at":"2026-02-13T02:21:21.948Z",
  "job_id":"757a315b-b3ed-457b-b1ba-cff5e140cfd4",
  "status":"completed",
  "type":"externalImage",
  "result": {
    "urls": [
      "https://app-uploads.krea.ai/public/757a315b-b3ed-457b-b1ba-cff5e140cfd4-image.png"
    ]
  }
}
Webhook disponibili!Configura i webhook per ricevere notifiche al completamento dei job. Consulta la guida ai webhook per iniziare.