Integrações
SDK
Cliente TypeScript tipado sobre a API REST. Gere, espere e busque resultados sem escrever o polling na mão.
Instalação
npm install @caranguejo/sdk
Inicializando
O cliente lê a chave do argumento apiKey ou da variável CARANGUEJO_API_KEY:
import { CaranguejoClient } from "@caranguejo/sdk";
const client = new CaranguejoClient({ apiKey: process.env.CARANGUEJO_API_KEY });
Gerar e esperar
generate() cria o job (retorna processing); waitForGeneration() faz o polling até o estado terminal:
// texto → imagem
const job = await client.generate({
model: "gpt-image-2",
prompt: "um caranguejo numa praia neon, cinematográfico",
params: { quality: "high", resolution: "2K", size: "3:2" },
});
const done = await client.waitForGeneration(job.id);
console.log(done.output.assets[0].url, done.credits_charged);
Outros métodos
| Método | Faz |
|---|---|
client.generate(req) | Cria um job (qualquer modelo ou tool). |
client.getGeneration(id) | Busca o estado atual de um job. |
client.waitForGeneration(id) | Faz polling até completed / failed. |
client.listGenerations({ limit, cursor }) | Página de gerações (cursor). |
client.upload(file) | Sobe mídia e devolve a URL pública. |
client.listModels({ type }) | Catálogo de modelos e tools. |
client.getBalance() | Saldo de créditos. |
Imagem→vídeo com upload
const { url } = await client.upload("./produto.png");
const vid = await client.generate({
model: "seedance-2",
prompt: "gire o produto 360°",
start_frame_url: url,
duration_seconds: 5,
aspect_ratio: "9:16",
});
const out = await client.waitForGeneration(vid.id);