Back to jobs

Generates an image using OpenAI

Trigger: eventTrigger

Generate an image from a prompt using OpenAI DALL-E.

Integrations:

/src/openAIGenerateImage

AI

1
import { TriggerClient, eventTrigger } from "@trigger.dev/sdk";
2
import { OpenAI } from "@trigger.dev/openai";
3
import { z } from "zod";
4
5
const client = new TriggerClient({ id: "jobs-showcase" });
6
7
const openai = new OpenAI({
8
id: "openai",
9
apiKey: process.env.OPENAI_API_KEY!,
10
});
11
12
// This Job will generate an image from a prompt, using OpenAI's image API
13
client.defineJob({
14
id: "openai-generate-image",
15
name: "OpenAI: generate image from a prompt",
16
version: "1.0.0",
17
trigger: eventTrigger({
18
name: "openai.images",
19
schema: z.object({}),
20
}),
21
integrations: {
22
openai,
23
},
24
run: async (payload, io, ctx) => {
25
const imageResults = await io.openai.createImage("image", {
26
prompt: "A hedgehog wearing a party hat",
27
n: 2,
28
size: "256x256",
29
response_format: "url",
30
});
31
32
return {
33
images: imageResults.data?.map((image) => image.url),
34
};
35
},
36
});
37
38
// These lines can be removed if you don't want to use express
39
import { createExpressServer } from "@trigger.dev/express";
40
createExpressServer(client);