CG

AI NFT Generator

Updated May 29, 2026, 12:30 PM

AI NFT Generator

AI NFT Generator

Generate images from text prompts and mint them as NFTs on-chain across 22+ blockchains. Choose from four generation models optimized for different speed and quality trade-offs.

Key Facts

Generate EndpointPOST /nft/generate-image
Mint EndpointPOST /nft/mint
Full NFT EndpointPOST /nft/generate-nft
Enhance PromptPOST /nft/enhancePrompt
List ChainsGET /nft/get-chains
Check ProgressGET /nft/progress/{id}
Cost1 -- 14.25 credits (varies by model and upscale)
SDK@chaingpt/nft
Chains22+ supported for minting

Generation Models

ModelStyleSpeedStepsBest For
VeloGenFast generationVery fast1--4Rapid prototyping, previews, high-volume generation
NebulaForge XLHighly detailedSlowerMorePremium artwork, detailed illustrations, showcase pieces
VisionaryForgeGeneral purposeMediumMediumBalanced quality and speed for most use cases
Dale3DALL-E 3MediumN/APhotorealistic images, complex scene composition

Credit Costs

Costs vary based on the model selected and whether upscaling is applied. The range is 1 credit (VeloGen, no upscale) to 14.25 credits (NebulaForge XL with maximum upscale). Check the reference/ docs for the full pricing matrix.

Endpoints

MethodPathDescription
POST/nft/generate-imageGenerate an image from a text prompt (returns image URL)
POST/nft/generate-nftGenerate image and prepare NFT metadata in one call
POST/nft/mintMint a generated image as an NFT on a supported chain
POST/nft/enhancePromptAI-enhance a rough prompt into a detailed generation prompt
GET/nft/get-chainsList all supported chains for minting
GET/nft/progress/{id}Check the progress of an in-flight generation or mint

Quick Start -- JavaScript

Install the SDK:

npm install @chaingpt/nft

Generate an Image

import { Nft } from "@chaingpt/nft";

const client = new Nft({
  apiKey: process.env.CHAINGPT_API_KEY,
});

const image = await client.generateImage({
  prompt: "A cyberpunk city skyline with neon blockchain nodes floating above the buildings",
  model: "VisionaryForge",
});

console.log("Image URL:", image.data.imageUrl);

Generate + Mint Flow

import { Nft } from "@chaingpt/nft";

const client = new Nft({
  apiKey: process.env.CHAINGPT_API_KEY,
});

// Step 1: Enhance the prompt
const enhanced = await client.enhancePrompt({
  prompt: "a dragon guarding a vault of crypto coins",
});
console.log("Enhanced prompt:", enhanced.data.enhancedPrompt);

// Step 2: Generate the image
const image = await client.generateImage({
  prompt: enhanced.data.enhancedPrompt,
  model: "NebulaForge XL",
});
console.log("Image URL:", image.data.imageUrl);

// Step 3: List available chains
const chains = await client.getChains();
console.log("Available chains:", chains.data);

// Step 4: Mint the NFT
const mintResult = await client.mint({
  imageUrl: image.data.imageUrl,
  name: "Dragon Vault Guardian",
  description: "A dragon guarding a vault of crypto coins",
  chain: "BSC",
  walletAddress: "0xYourWalletAddress",
});

console.log("Mint transaction:", mintResult.data.transactionHash);

// Step 5: Check progress if needed
const progress = await client.getProgress(mintResult.data.id);
console.log("Status:", progress.data.status);

Tips

  • Use enhancePrompt before generating -- it significantly improves output quality, especially with short or vague prompts.
  • Start with VeloGen during development and switch to NebulaForge XL for production artwork.
  • The generate-nft endpoint combines generation and metadata preparation into a single call, which is simpler for basic flows.
  • Poll progress/{id} for long-running generations or mints rather than blocking.
  • Pair with the Smart Contract Auditor if you are deploying custom minting contracts alongside the generated NFTs.
View original source