Description
n8n-nodes-sogni
Enhanced n8n Community Node for Sogni AI Image & Video Generation
Generate AI images and videos using Sogni AI Supernet directly in your n8n workflows with full ControlNet support for guided image generation and video generation capabilities.
This node pulls from your personal Sogni accountโsign up for free to get 50 free Render credits per day. Under the hood, the project utilizes the @sogni-ai/sogni-client-wrapper, which is built on top of the official @sogni-ai/sogni-client SDK.

—
๐ What’s New
๐ฌ Video Generation Support (v1.2.0)
- Generate AI videos with customizable frames, FPS, and resolution
- MP4 video output format
- Automatic video download as binary data
- Configurable video parameters (frames, guidance, steps)
- Dedicated video model selection
- Download generated images as binary data
- Prevents 24-hour URL expiry issues
- Proper MIME type handling
- Enabled by default for reliability
- Auto-generates unique appId per execution
- Prevents WebSocket socket collisions
- Supports concurrent workflow runs
- Manual override still available
- Default network:
fast(quicker generation) - Timeout defaults by network when not set:
fast = 60s,relaxed = 600s - Default token type:
spark - Download images: enabled by default
- 15 ControlNet types supported (canny, scribble, lineart, openpose, depth, and more)
- Guide image generation with control images
- Full parameter control (strength, mode, guidance timing)
- See ControlNet Guide for details
- Generate: Create AI images with optional ControlNet guidance
- Generate: Create AI videos with customizable parameters
- Get All: List all available models
- Get: Get specific model details
- Get Balance: Check SOGNI and Spark token balance
๐ฅ Automatic Image Download
๐ Enhanced AppId Management
โ๏ธ Improved Defaults
โจ Full ControlNet Support
—
Features
Resources & Operations
#### Image Resource
#### Video Resource
#### Model Resource
#### Account Resource
—
Installation
Option 1: Community Nodes UI (Recommended)
1. In n8n, open Settings โธ Community Nodes
2. Select Install
3. Enter n8n-nodes-sogni
4. Confirm the installation (restart n8n if prompted)
Option 2: Manual Installation
Run in your n8n installation directory
npm install n8n-nodes-sogni
Restart your n8n instance after installation
—
Configuration
1. Add Credentials
1. In n8n, go to Credentials
2. Click Add Credential
3. Search for “Sogni AI”
4. Enter your credentials:
– Username: Your Sogni account username
– Password: Your Sogni account password
– App ID: (Optional) Leave empty for auto-generation
2. Add Node to Workflow
1. Create or open a workflow
2. Click + to add a node
3. Search for “Sogni AI”
4. Select the node and configure
—
Basic Usage
> ๐ก Tip: You can import example workflows directly into n8n! Create a new workflow, click the โฎ (three dots) in the top right corner, select Import from File…, and choose a sample workflow from the ./examples folder.
Simple Image Generation
{
"resource": "image",
"operation": "generate",
"modelId": "flux1-schnell-fp8",
"positivePrompt": "A beautiful sunset over mountains",
"network": "fast",
"additionalFields": {
"negativePrompt": "blurry, low quality",
"steps": 20,
"guidance": 7.5,
"tokenType": "spark",
"downloadImages": true
}
}
ControlNet-Guided Generation
{
"resource": "image",
"operation": "generate",
"modelId": "flux1-schnell-fp8",
"positivePrompt": "A fantasy castle, magical, glowing",
"network": "fast",
"additionalFields": {
"enableControlNet": true,
"controlNetType": "canny",
"controlNetImageProperty": "data",
"controlNetStrength": 0.7,
"controlNetMode": "balanced",
"steps": 20,
"downloadImages": true
}
}
Video Generation
{
"resource": "video",
"operation": "generate",
"videoModelId": "wanv2.2-14b-fp8t2v_lightx2v",
"videoPositivePrompt": "A serene waterfall flowing through a lush green forest",
"videoNetwork": "fast",
"videoAdditionalFields": {
"videoSettings": {
"frames": 81,
"fps": 16,
"steps": 4,
"guidance": 7.5
},
"output": {
"downloadVideos": true,
"outputFormat": "mp4",
"width": 640,
"height": 640
},
"advanced": {
"tokenType": "spark",
"timeout": 300000
}
}
}
—
ControlNet Types
All 15 ControlNet types are supported:
| Type | Description | Best For |
|——|————-|———-|
| canny | Edge detection | Structure preservation |
| scribble | Hand-drawn sketches | Sketch to image |
| lineart | Line art extraction | Clean line drawings |
| lineartanime | Anime line art | Anime/manga style |
| softedge | Soft edge detection | Artistic control |
| shuffle | Composition transfer | Layout preservation |
| tile | Tiling patterns | Seamless textures |
| inpaint | Masked area filling | Object removal/editing |
| instrp2p | Instruction-based editing | Text-guided edits |
| depth | Depth map | 3D structure |
| normalbae | Normal map | Surface details |
| openpose | Pose detection | Human pose transfer |
| segmentation | Semantic segmentation | Layout control |
| mlsd | Line segment detection | Architecture |
| instantid | Identity preservation | Face consistency |
See ControlNet Guide for detailed usage instructions.
—
Parameters
Required Parameters
| Parameter | Type | Description |
|———–|——|————-|
| Model ID | string | AI model to use (e.g., flux1-schnell-fp8) |
| Positive Prompt | string | What you want to generate |
| Network | options | fast (SOGNI tokens) or relaxed (Spark tokens) |
Optional Parameters (Additional Fields)
| Parameter | Type | Default | Description |
|———–|——|———|————-|
| Negative Prompt | string | “” | What to avoid |
| Style Prompt | string | “” | Style description |
| Number of Images | number | 1 | How many images (1-10) |
| Steps | number | 20 | Inference steps (1-100) |
| Guidance | number | 7.5 | Prompt adherence (0-30) |
| Token Type | options | spark | spark or sogni |
| Output Format | options | png | png or jpg |
| Download Images | boolean | true | Download as binary data |
| Size Preset | string | “” | Size preset ID |
| Width | number | 1024 | Custom width (256-2048) |
| Height | number | 1024 | Custom height (256-2048) |
| Seed | number | random | Reproducibility seed |
| Timeout | number | 600000 | Max wait time (ms) |
ControlNet Parameters
| Parameter | Type | Default | Description |
|———–|——|———|————-|
| Enable ControlNet | boolean | false | Enable ControlNet |
| ControlNet Type | options | canny | Type of ControlNet |
| Control Image Property | string | data | Binary property name |
| Strength | number | 0.5 | Control strength (0-1) |
| Mode | options | balanced | balanced / promptpriority / cnpriority |
| Guidance Start | number | 0 | When to start (0-1) |
| Guidance End | number | 1 | When to end (0-1) |
Video Generation Parameters
#### Required Parameters
| Parameter | Type | Description |
|———–|——|————-|
| Video Model ID | string | AI model to use for video generation |
| Video Positive Prompt | string | What you want in the video |
| Video Network | options | fast or relaxed |
#### Optional Video Parameters
| Parameter | Type | Default | Description |
|———–|——|———|————-|
| Negative Prompt | string | “” | What to avoid in video |
| Style Prompt | string | “” | Video style description |
| Number of Videos | number | 1 | How many videos (1-4) |
| Frames | number | 30 | Number of frames (10-120) |
| FPS | number | 30 | Frames per second (10-60) |
| Steps | number | 20 | Inference steps (1-100) |
| Guidance | number | 7.5 | Prompt adherence (0-30) |
| Output Format | options | mp4 | Currently only mp4 is supported |
| Download Videos | boolean | true | Download as binary data |
| Width | number | 512 | Video width (256-1024) |
| Height | number | 512 | Video height (256-1024) |
| Timeout | number | auto | Max wait time (ms) |
—
Example Workflows
See the examples directory for complete workflow JSON files:
1. Basic Image Generation – Simple text-to-image
2. Batch Processing – Generate multiple images
3. Dynamic Model Selection – Auto-select best model
4. Scheduled Generation – Daily automated images
5. Video Generation – AI video creation with customizable parameters
6. ControlNet Edge Detection – Structure-guided generation (coming soon)
7. ControlNet Pose Transfer – Pose-guided generation (coming soon)
—
Output
Image Generation Output
#### JSON Output
{
"projectId": "ABC123...",
"modelId": "flux1-schnell-fp8",
"prompt": "A beautiful sunset...",
"imageUrls": [
"https://complete-images-production.s3-accelerate.amazonaws.com/..."
],
"completed": true,
"jobs": [
{
"id": "JOB123...",
"status": "completed"
}
]
}
#### Binary Output (when downloadImages = true)
Video Generation Output
#### JSON Output
{
"projectId": "VID123...",
"modelId": "video-model-id",
"prompt": "A cat playing...",
"videoUrls": [
"https://complete-videos-production.s3-accelerate.amazonaws.com/..."
],
"completed": true,
"jobs": [
{
"id": "JOB456...",
"status": "completed"
}
]
}
#### Binary Output (when downloadVideos = true)
Binary data includes:
sognivideo[projectId]_[index].[ext]—
Tips & Best Practices
1. Network Selection
– Uses SOGNI tokens
– Faster generation (seconds to minutes)
– Higher cost
– Best for: Time-sensitive applications
– Uses Spark tokens
– Slower generation (minutes to hours)
– Lower cost
– Best for: Batch processing, scheduled jobs
2. Model Selection
Popular models:
flux1-schnell-fp8: Fast, high quality, 4 steps recommendedcoreml-sogniartistv1_768: Artistic stylechroma-v.46-flash_fp8: Fast generationUse “Get All Models” operation to see all available models.
3. Steps Configuration
4. ControlNet Usage
balanced mode for most cases5. Image Download
downloadImages to prevent URL expiry6. Timeout Configuration
7. Video Generation Tips
—
Troubleshooting
“Insufficient funds” Error
Solution: Add more Spark or SOGNI tokens to your account
“Model not found” Error
Solution: Use “Get All Models” to see available models
“No binary data found” (ControlNet)
Solution:
1. Ensure previous node outputs binary data
2. Check the binary property name
3. Use “View” in n8n to inspect data
Workflow Times Out
Solution:
Images Not Downloaded
Solution:
downloadImages is enabled—
Advanced Usage
Combining with Other Nodes
#### Discord Integration
Sogni Generate โ HTTP Request (Discord Webhook)
#### Google Drive Storage
Sogni Generate โ Google Drive (Upload File)
#### Social Media Posting
Sogni Generate โ Twitter/Instagram API
#### Image Processing Pipeline
Load Image โ Sogni ControlNet โ Post-Processing โ Save
Dynamic Prompts
Use expressions to generate dynamic prompts:
{{ "A " + $json.style + " image of " + $json.subject }}
Conditional ControlNet
Enable ControlNet based on conditions:
{{ $json.hasControlImage ? true : false }}
—
API Reference
Wrapper Library
This node uses the @sogni-ai/sogni-client-wrapper library. For standalone Node.js usage:
import { SogniClientWrapper } from '@sogni-ai/sogni-client-wrapper';const client = new SogniClientWrapper({
username: 'your-username',
password: 'your-password',
autoConnect: true,
});
const result = await client.createProject({
modelId: 'flux1-schnell-fp8',
positivePrompt: 'A beautiful sunset',
network: 'fast',
tokenType: 'spark',
waitForCompletion: true,
});
See @sogni-ai/sogni-client-wrapper for full API documentation.
—
Version History
v1.2.0 (Current)
v1.1.9
v1.1.8
v1.1.6
v1.1.5
v1.1.0-1.1.4
v1.0.0
—
Resources
—
Support
For issues or questions:
1. Check this README
2. Review the ControlNet Guide
3. Check example workflows
4. Submit an issue on GitHub
—
License
MIT License – See LICENSE file for details
—
Credits
Built with:
—
Ready to generate amazing AI images with ControlNet in your n8n workflows! ๐จโจ