const API_KEY = "your_api_key_here";
const BASE_URL = "https://api.sinancode.com/v1";
async function generateImage() {
// タスクを作成
const createResponse = await fetch(`${BASE_URL}/generate/k/imagen4`, {
method: "POST",
headers: {
"Authorization": `Bearer ${API_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
prompt: "a serene mountain landscape",
aspect_ratio: "16:9",
num_images: 1
})
});
const { task_id } = await createResponse.json();
console.log(`タスク作成成功、ID: ${task_id}`);
// タスクステータスをポーリング
while (true) {
const statusResponse = await fetch(`${BASE_URL}/tasks/${task_id}`, {
headers: { "Authorization": `Bearer ${API_KEY}` }
});
const task = await statusResponse.json();
console.log(`タスクステータス: ${task.status}`);
if (task.status === "completed") {
console.log(`生成完了!画像 URL: ${task.result[0]}`);
break;
} else if (task.status === "failed") {
console.log(`生成失敗: ${task.error_msg}`);
break;
}
await new Promise(resolve => setTimeout(resolve, 2000)); // 2秒待機
}
}
generateImage();