Skip to content

Agent Nodes Catalog (198 Nodes Reference) ​

The complete reference guide to all 198 production-ready nodes available in the FotoHub Agent Engine (/dashboard/agents/*). Every node is rigorously typed, equipped with input/output validation, error resilience, fallback policies, and full telemetry tracing within the DAG orchestrator.

EXECUTION RUNTIMES & ENGINES

FotoHub executes workflow nodes across 5 specialized execution runtimes:

  • Built-in Logic Engine (builtin): Ultra-fast in-memory Python operations (conditions, JMESPath filters, aggregations).
  • Supabase Edge Functions (edge_fn): Low-latency edge workers handling OAuth, third-party APIs, and lightweight logic.
  • Dedicated GPU Microservices (http): High-throughput compute clusters powering image-engine, video-engine, and music-server.
  • Autonomous LLM Agents (llm_agent): Multi-turn reasoning loops with native tool calling across Claude, GPT-4o, and Bedrock.
  • Model Context Protocol (mcp): Standard Anthropic MCP client connecting external tool and resource servers directly into workflow graphs.

Category Overview (23 Categories) ​

CategoryIconNodesPrimary Role & Business Use Case
Workflow Triggers⚑5Starting nodes that initiate workflow execution based on user interactions, scheduled cron...
Autonomous Agents & SwarmsπŸ€–8Autonomous decision-making and orchestration nodes capable of multi-turn reasoning, tool c...
Advanced Flow Control & Routers🧭7Enterprise-grade traffic management and fault tolerance: canary A/B split testing, multi-t...
FotoHub Shorts & Viral Reelsβœ‚οΈ3Optimized for TikTok, Instagram Reels, and YouTube Shorts algorithms. Detects high-engagem...
FotoHub UGC Studio & Virtual Try-On🎭3Authentic user-generated content creation: persuasive UGC video scripts (Hook-Problem-CTA)...
FotoHub Creative Studio✨1Commercial packshot automation: removes raw backgrounds and synthesizes photorealistic 3D ...
Creative Studio & StylingπŸ’‘1Advanced packshot styling and commercial set generation for fashion, cosmetics, luxury goo...
FotoHub AI Image Processing🎨19Comprehensive 19-node image suite: state-of-the-art generation (Flux, Midjourney v6, SD3),...
FotoHub AI Video Generation🎬12High-performance video engine: text/image-to-video (Luma, Runway, Kling), clip extension, ...
FotoHub Audio, Voice & Music🎡14Expressive text-to-speech in 100+ languages, generative music composition (Suno, Udio), ci...
Real-Time Voice & Streaming AudioπŸŽ™οΈ3Full-duplex conversational voice with sub-300ms latency, automatic voice activity detectio...
FotoHub Brand Governance🏷️6Automated brand compliance: PDF brand guideline extraction, color palette generation, inte...
AI Models, LLMs & Vision🧠6Direct integration with top-tier foundation models (Claude 3.5 Sonnet, GPT-4o, Gemini 1.5 ...
Knowledge Base & Vector MemoryπŸ“š3Semantic document search (Retrieval-Augmented Generation), persistent agent vector memory,...
Social Media Publishing & SchedulingπŸ“±14Direct API publishing and intelligent scheduling across Instagram (Posts, Reels, Stories),...
External Integrations & E-CommerceπŸ”Œ6161 production connectors for e-commerce platforms (Allegro, Shopify, WooCommerce, eBay, Et...
Cloud Storage & Asset Delivery☁️10Secure asset management and Bring-Your-Own-Bucket (BYOB) delivery: FotoHub Gallery, AWS S3...
Flow Logic & Data TransformationπŸ”€15Deterministic execution control and data manipulation: If/Else conditional branching, mult...
Workflow Input & Output BoundariesπŸ“₯2Entry-point parameter parsing, schema validation, and standardized workflow completion sum...
Secure Code Sandboxes⌨️2Isolated, resource-constrained execution sandboxes for Python (with NumPy, Pillow, Request...
HTTP & REST API Client🌐1Universal REST client supporting GET, POST, PUT, DELETE, and PATCH with custom headers, Be...
System Safeguards & RollbackπŸ›‘οΈ1Workflow configuration snapshots and automated rollback safeguards that restore previous s...
Developer Inspection ToolingπŸ› οΈ1Inspection utilities, execution mock environments, and interactive test harnesses for deve...
TOTALπŸš€198Full Production Node Catalog

⚑ Workflow Triggers ​

Total Nodes: 5 | Category Identifier: trigger

Starting nodes that initiate workflow execution based on user interactions, scheduled cron timers, incoming HTTP webhooks, input forms, or cryptographically signed HMAC-SHA256 payloads.

Enterprise Use Case: Triggering automated e-commerce asset generation on new store orders, scheduling daily 9:00 AM social media posts, or receiving secure payment webhooks from Stripe and PayPal.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
trigger.manualManual TriggerIn: main
Out: main
triggerFree (0 credits)
trigger.scheduleSchedule TriggerIn: main
Out: main
triggerFree (0 credits)
trigger.webhookWebhook TriggerIn: main
Out: main
triggerFree (0 credits)
trigger.formForm TriggerIn: main
Out: main
triggerFree (0 credits)
trigger.webhook_secureSecure Webhook TriggerIn: none
Out: valid, invalid
builtinFree (0 credits)

Node Specifications (Workflow Triggers) ​

trigger.manual β€” Manual Trigger ​

Start this workflow manually from the dashboard or via API.

  • Executor Runtime: trigger

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
labelstringNoManual runShown to the user when they trigger this workflow.
json
{
  "id": "trigger_manual_1",
  "type": "trigger.manual",
  "position": [
    250,
    150
  ],
  "params": {
    "label": "Manual run"
  }
}

trigger.schedule β€” Schedule Trigger ​

Fire this workflow on a cron schedule.

  • Executor Runtime: trigger

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
cronstringYes0 9 * * *Standard 5-field cron. e.g. '0 9 * * MON-FRI'.
timezoneoptionsNoEurope/Warsaw
Options: Europe/Warsaw, Europe/London, UTC, America/New_York, America/Los_Angeles (+1 more)
json
{
  "id": "trigger_schedule_1",
  "type": "trigger.schedule",
  "position": [
    250,
    150
  ],
  "params": {
    "cron": "0 9 * * *",
    "timezone": "Europe/Warsaw"
  }
}

trigger.webhook β€” Webhook Trigger ​

Start this workflow on HTTP POST to a public URL.

  • Executor Runtime: trigger

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
path_labelstringNononeHuman-friendly suffix appended after the random slug.
methodoptionsNoPOST
Options: POST, GET, PUT, DELETE
require_hmacbooleanNoFalseIf on, generated secret must match x-fh-signature header.
json
{
  "id": "trigger_webhook_1",
  "type": "trigger.webhook",
  "position": [
    250,
    150
  ],
  "params": {
    "method": "POST",
    "require_hmac": false
  }
}

trigger.form β€” Form Trigger ​

Renders a public web form; submissions start a run.

  • Executor Runtime: trigger

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesSubmit
description_mdstringNonone
json
{
  "id": "trigger_form_1",
  "type": "trigger.form",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "Submit"
  }
}

trigger.webhook_secure β€” Secure Webhook Trigger ​

Trigger workflow on HTTP POST verified with HMAC-SHA256 signature.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: None (Start Node)

  • Output Ports: valid (any), invalid (any)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
secret_keystringNowhsec_live_demo12345Sekretny klucz uΕΌywany do obliczenia HMAC.
signature_headerstringNoX-Hub-Signature-256NagΕ‚Γ³wek podpisu
allowed_ipsstringNo*Lista oddzielona przecinkami lub '*' dla wszystkich.
json
{
  "id": "trigger_webhook_secure_1",
  "type": "trigger.webhook_secure",
  "position": [
    250,
    150
  ],
  "params": {
    "secret_key": "whsec_live_demo12345",
    "signature_header": "X-Hub-Signature-256",
    "allowed_ips": "*"
  }
}

πŸ€– Autonomous Agents & Swarms ​

Total Nodes: 8 | Category Identifier: agent

Autonomous decision-making and orchestration nodes capable of multi-turn reasoning, tool calling, real-time self-healing diagnostic recovery, multi-agent swarm fanout, and consensus jury aggregation.

Enterprise Use Case: An autonomous AI Creative Director that breaks a marketing brief into visual, video, and copy subtasks, reviews results via a critique loop, and automatically heals transient generation errors.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
agent.call_subagentCall SubagentIn: main
Out: main
builtinFree (0 credits)
agent.swarm_fanoutAgent Swarm Fan-OutIn: main
Out: main
builtinFree (0 credits)
agent.critique_loopCritique & Refinement LoopIn: main
Out: main
builtinFree (0 credits)
agent.mcp_callCall MCP ToolIn: main
Out: main
builtinFree (0 credits)
mcp.hub_callWywoΕ‚anie NarzΔ™dzia MCP HubIn: main
Out: main
builtinFree (0 credits)
agent.consensus_aggregateConsensus AggregateIn: main
Out: main
builtinFree (0 credits)
agent.voice_dialogueReal-Time Voice AgentIn: in
Out: main, transcription
builtinFree (0 credits)
agent.self_healingAutonomous Self-HealingIn: in
Out: repaired, fallback, fatal
builtinFree (0 credits)

Node Specifications (Autonomous Agents & Swarms) ​

agent.call_subagent β€” Call Subagent ​

Invoke another subagent and wait for its completion.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
workflow_idstringYesnoneID workflow lub nazwa agenta do wywoΕ‚ania
input_datajsonNononeObiekt wejΕ›ciowy przekazywany do pod-agenta
wait_for_completionbooleanNoTrue
timeout_secondsnumberNo300
json
{
  "id": "agent_call_subagent_1",
  "type": "agent.call_subagent",
  "position": [
    250,
    150
  ],
  "params": {
    "workflow_id": "<value>",
    "wait_for_completion": true,
    "timeout_seconds": 300
  }
}

agent.swarm_fanout β€” Agent Swarm Fan-Out ​

Distribute tasks across multiple specialized agents concurrently.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
tasks_pathstringNo$.itemsJSONPath wskazujΔ…cy listΔ™ elementΓ³w do przetworzenia
subagent_workflow_idstringYesnone
concurrencynumberNo5
aggregationoptionsNoarray
Options: array, merge_dict, first_success
json
{
  "id": "agent_swarm_fanout_1",
  "type": "agent.swarm_fanout",
  "position": [
    250,
    150
  ],
  "params": {
    "tasks_path": "$.items",
    "subagent_workflow_id": "<value>",
    "concurrency": 5,
    "aggregation": "array"
  }
}

agent.critique_loop β€” Critique & Refinement Loop ​

Evaluate output quality against criteria and retry until passing.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
task_promptstringYesnone
evaluation_rubricstringNoZgodnoΕ›Δ‡ z promptem, estetyka, styl, poprawnoΕ›Δ‡ logiczna
target_scorenumberNo8
max_refinement_stepsnumberNo3
evaluator_modeloptionsNoclaude-3-7-sonnet
Options: claude-3-7-sonnet, gpt-5-turbo, gemini-2.5-pro, fast-evaluator
json
{
  "id": "agent_critique_loop_1",
  "type": "agent.critique_loop",
  "position": [
    250,
    150
  ],
  "params": {
    "task_prompt": "<value>",
    "evaluation_rubric": "Zgodno\u015b\u0107 z promptem, estetyka, styl, poprawno\u015b\u0107 logiczna",
    "target_score": 8,
    "max_refinement_steps": 3
  }
}

agent.mcp_call β€” Call MCP Tool ​

Execute an external tool exposed via Model Context Protocol (MCP).

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
server_urlstringYesnone
tool_namestringYesnone
argumentsjsonNonone
auth_tokenstringNonone
json
{
  "id": "agent_mcp_call_1",
  "type": "agent.mcp_call",
  "position": [
    250,
    150
  ],
  "params": {
    "server_url": "<value>",
    "tool_name": "<value>"
  }
}

mcp.hub_call β€” WywoΕ‚anie NarzΔ™dzia MCP Hub ​

Dynamiczne wywoΕ‚anie narzΔ™dzia z zarejestrowanego serwera MCP w wieloserwerowym hubie narzΔ™dzi.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
server_idstringYesnone
tool_namestringYesnone
argumentsjsonNo{}
fail_silentlybooleanNoFalse
json
{
  "id": "mcp_hub_call_1",
  "type": "mcp.hub_call",
  "position": [
    250,
    150
  ],
  "params": {
    "server_id": "<value>",
    "tool_name": "<value>",
    "arguments": {},
    "fail_silently": false
  }
}

agent.consensus_aggregate β€” Consensus Aggregate ​

Aggregate decisions from multiple agents with weighted voting.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
aggregation_strategyoptionsNomajority_voteAlgorytm wyΕ‚aniania konsensusu spoΕ›rΓ³d odpowiedzi agentΓ³w roju
Options: majority_vote, weighted_confidence, llm_jury_synthesis, unanimous_or_fallback
min_quorumnumberNo2Minimalna liczba agentΓ³w popierajΔ…cych wariant lub minimalna liczba gΕ‚osΓ³w
fallback_strategyoptionsNohighest_confidenceStrategia postΔ™powania w przypadku braku quorum lub remisu
Options: highest_confidence, first_valid, fail
confidence_fieldstringNoconfidenceNazwa pola okreΕ›lajΔ…ca pewnoΕ›Δ‡/wagΔ™ odpowiedzi agenta (0.0-1.0)
json
{
  "id": "agent_consensus_aggregate_1",
  "type": "agent.consensus_aggregate",
  "position": [
    250,
    150
  ],
  "params": {
    "aggregation_strategy": "majority_vote",
    "min_quorum": 2,
    "fallback_strategy": "highest_confidence",
    "confidence_field": "confidence"
  }
}

agent.voice_dialogue β€” Real-Time Voice Agent ​

Interactive real-time voice dialogue with VAD silence detection.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: in (any)

  • Output Ports: main (any), transcription (string)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
voice_engineoptionsNoelevenlabs_conversationalSilnik gΕ‚osu
Options: elevenlabs_conversational, openai_realtime_audio, gemini_multimodal_live
languageoptionsNopl-PLJΔ™zyk dialogu
Options: pl-PL, en-US, de-DE
vad_thresholdnumberNo0.5PrΓ³g detekcji gΕ‚osu i przerywania mowy (barge-in).
json
{
  "id": "agent_voice_dialogue_1",
  "type": "agent.voice_dialogue",
  "position": [
    250,
    150
  ],
  "params": {
    "voice_engine": "elevenlabs_conversational",
    "language": "pl-PL",
    "vad_threshold": 0.5
  }
}

agent.self_healing β€” Autonomous Self-Healing ​

Catch runtime errors, inspect stack traces, and adapt execution.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: in (any)

  • Output Ports: repaired (any), fallback (any), fatal (any)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
strategyoptionsNoschema_and_paramsStrategia naprawy
Options: schema_and_params, model_fallback, prompt_compression
max_repair_attemptsnumberNo3Maks. liczba prΓ³b naprawy
auto_commit_patchbooleanNoTrueAutomatycznie zatwierdΕΊ poprawkΔ™
json
{
  "id": "agent_self_healing_1",
  "type": "agent.self_healing",
  "position": [
    250,
    150
  ],
  "params": {
    "strategy": "schema_and_params",
    "max_repair_attempts": 3,
    "auto_commit_patch": true
  }
}

🧭 Advanced Flow Control & Routers ​

Total Nodes: 7 | Category Identifier: control

Enterprise-grade traffic management and fault tolerance: canary A/B split testing, multi-tier fallback service matrices, guarded loops preventing infinite execution, dynamic routers, and parallel join gates.

Enterprise Use Case: Directing 10% of traffic to experimental video models with automatic failover to stable backup models if GPU latency exceeds thresholds, without interrupting client sessions.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
control.human_approvalZatwierdzenie CzΕ‚owieka (Human Gate)In: main
Out: approved, rejected
builtinFree (0 credits)
control.fallback_matrixFallback MatrixIn: main
Out: main
builtinFree (0 credits)
control.dynamic_switchDynamic SwitchIn: main
Out: case_1, case_2, case_3, default
builtinFree (0 credits)
control.parallel_gateParallel GateIn: main
Out: main
builtinFree (0 credits)
control.loop_whileLoop WhileIn: main
Out: loop, done
builtinFree (0 credits)
control.smart_routerSmart AI RouterIn: main
Out: photo_generation, photo_editing, text_and_copy, data_analysis, fallback
builtinFree (0 credits)
control.traffic_splitTraffic Splitter (A/B)In: main
Out: variant_a, variant_b, variant_c
builtinFree (0 credits)

Node Specifications (Advanced Flow Control & Routers) ​

control.human_approval β€” Zatwierdzenie CzΕ‚owieka (Human Gate) ​

Wstrzymuje wykonanie workflow do momentu akceptacji lub odrzucenia przez uΕΌytkownika ze Ε›cisΕ‚Δ… politykΔ… SLA i eskalacjΔ….

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: approved (main), rejected (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesnone
messagestringNonone
sla_minutesnumberNo60
timeout_policyoptionsNoauto_reject
Options: auto_approve, auto_reject, escalate_webhook
escalation_webhook_urlstringNonone
notification_channeloptionsNoslack
Options: slack, discord, email, custom_webhook
timeout_hoursnumberNo24
auto_approve_on_timeoutbooleanNoFalse
json
{
  "id": "control_human_approval_1",
  "type": "control.human_approval",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "<value>",
    "sla_minutes": 60,
    "timeout_policy": "auto_reject"
  }
}

control.fallback_matrix β€” Fallback Matrix ​

Cascade through fallback services if primary provider fails.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
primary_providerstringYesnone
fallback_providerstringYesnone
trigger_onoptionsNoany_error
Options: any_error, rate_limit_only, timeout_only, server_error
max_retriesnumberNo2
json
{
  "id": "control_fallback_matrix_1",
  "type": "control.fallback_matrix",
  "position": [
    250,
    150
  ],
  "params": {
    "primary_provider": "<value>",
    "fallback_provider": "<value>",
    "trigger_on": "any_error",
    "max_retries": 2
  }
}

control.dynamic_switch β€” Dynamic Switch ​

Dynamic multi-branch routing based on runtime conditions.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: case_1 (main), case_2 (main), case_3 (main), default (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
variable_pathstringNostatusPole z danych wejΕ›ciowych np. intent, type, status
case_1_valuestringNonone
case_2_valuestringNonone
case_3_valuestringNonone
json
{
  "id": "control_dynamic_switch_1",
  "type": "control.dynamic_switch",
  "position": [
    250,
    150
  ],
  "params": {
    "variable_path": "status"
  }
}

control.parallel_gate β€” Parallel Gate ​

Wait for multiple parallel branches to complete before continuing.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
sync_modeoptionsNowait_all
Options: wait_all, wait_first, quorum
timeout_secondsnumberNo60
allow_partial_failuresbooleanNoTrue
json
{
  "id": "control_parallel_gate_1",
  "type": "control.parallel_gate",
  "position": [
    250,
    150
  ],
  "params": {
    "sync_mode": "wait_all",
    "timeout_seconds": 60,
    "allow_partial_failures": true
  }
}

control.loop_while β€” Loop While ​

Execute loop iterations until a condition evaluates to false.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: loop (main), done (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
condition_exprstringNonone
max_iterationsnumberNo50
break_on_errorbooleanNoTrue
accumulator_pathstringNoresults
json
{
  "id": "control_loop_while_1",
  "type": "control.loop_while",
  "position": [
    250,
    150
  ],
  "params": {
    "max_iterations": 50,
    "break_on_error": true,
    "accumulator_path": "results"
  }
}

control.smart_router β€” Smart AI Router ​

Semantic intent routing to direct data to specialized handlers.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: photo_generation (main), photo_editing (main), text_and_copy (main), data_analysis (main), fallback (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
user_input_pathstringNoprompt
router_modeloptionsNogemini-2.0-flash
Options: gpt-4o-mini, claude-3-5-haiku, gemini-2.0-flash
custom_contextstringNonone
json
{
  "id": "control_smart_router_1",
  "type": "control.smart_router",
  "position": [
    250,
    150
  ],
  "params": {
    "user_input_path": "prompt",
    "router_model": "gemini-2.0-flash"
  }
}

control.traffic_split β€” Traffic Splitter (A/B) ​

Split workflow traffic probabilistically between branches.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: variant_a (main), variant_b (main), variant_c (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
experiment_namestringNoexp_v1Identyfikator eksperymentu A/B
split_modeoptionsNosticky_hashSticky hash gwarantuje, ΕΌe ten sam uΕΌytkownik zawsze trafi do tego samego wariantu.
Options: sticky_hash, random
weight_anumberNo50
weight_bnumberNo50
enable_variant_cbooleanNoFalse
weight_cnumberNo0
json
{
  "id": "control_traffic_split_1",
  "type": "control.traffic_split",
  "position": [
    250,
    150
  ],
  "params": {
    "experiment_name": "exp_v1",
    "split_mode": "sticky_hash",
    "weight_a": 50,
    "weight_b": 50
  }
}

βœ‚οΈ FotoHub Shorts & Viral Reels ​

Total Nodes: 3 | Category Identifier: fotohub.shorts

Optimized for TikTok, Instagram Reels, and YouTube Shorts algorithms. Detects high-engagement segments from long-form video, applies animated karaoke subtitles (Hormozi / MrBeast style), and appends branded bumpers.

Enterprise Use Case: Transforming a 60-minute podcast or webinar into 5 viral vertical 9:16 clips with animated word-by-word captions, sponsor bumpers, and aspect ratio adaptation in under 90 seconds.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.shorts.clip_autoShorts: AI Auto-ClipperIn: main
Out: main, error
builtin5 credits (~$0.0000)
fotohub.shorts.subtitles_karaokeShorts: Karaoke SubtitlesIn: main
Out: main, error
builtin2 credits (~$0.0000)
fotohub.shorts.add_bumperShorts: Brand BumperIn: main
Out: main, error
builtin1 credits (~$0.0000)

Node Specifications (FotoHub Shorts & Viral Reels) ​

fotohub.shorts.clip_auto β€” Shorts: AI Auto-Clipper ​

Detect viral video segments and format for TikTok/Reels.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 5 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnoneLink do pliku wideo lub nagrania ΕΊrΓ³dΕ‚owego
max_clipsnumberNo3
aspect_ratiooptionsNo9:16
Options: 9:16, 1:1, 4:5, 16:9
caption_styleoptionsNohormozi
Options: hormozi, beasty, karaoke, neon, clean (+1 more)
min_duration_snumberNo15
max_duration_snumberNo60
json
{
  "id": "fotohub_shorts_clip_auto_1",
  "type": "fotohub.shorts.clip_auto",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "max_clips": 3,
    "aspect_ratio": "9:16",
    "caption_style": "hormozi"
  }
}

fotohub.shorts.subtitles_karaoke β€” Shorts: Karaoke Subtitles ​

Render dynamic word-by-word highlighted captions.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 2 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
styleoptionsNohormozi
Options: hormozi, beasty, karaoke, neon, clean (+1 more)
highlight_colorstringNo#facc15
words_per_linenumberNo3
add_emojisbooleanNoTrue
json
{
  "id": "fotohub_shorts_subtitles_karaoke_1",
  "type": "fotohub.shorts.subtitles_karaoke",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "style": "hormozi",
    "highlight_color": "#facc15",
    "words_per_line": 3
  }
}

fotohub.shorts.add_bumper β€” Shorts: Brand Bumper ​

Attach branded video intro, outro, or logo watermark.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 1 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
bumper_typeoptionsNooutro
Options: intro, outro, both
brand_logo_urlstringNononeOpcjonalny plik PNG z przezroczystoΕ›ciΔ…
cta_textstringNoSprawdΕΊ link w bio!
duration_snumberNo3
json
{
  "id": "fotohub_shorts_add_bumper_1",
  "type": "fotohub.shorts.add_bumper",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "bumper_type": "outro",
    "cta_text": "Sprawd\u017a link w bio!"
  }
}

🎭 FotoHub UGC Studio & Virtual Try-On ​

Total Nodes: 3 | Category Identifier: fotohub.ugc

Authentic user-generated content creation: persuasive UGC video scripts (Hook-Problem-CTA), photorealistic AI avatar rendering with synced lip movement, and AI virtual try-on (VTO) on model photos.

Enterprise Use Case: Generating 50 localized video variations of customer product reviews featuring diverse avatars for TikTok ad campaigns without physical studio shoots.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.ugc.script_generatorUGC: Script GeneratorIn: main
Out: main, error
builtin1 credits (~$0.0000)
fotohub.ugc.actor_renderUGC: Render ActorIn: main
Out: main, error
builtin10 credits (~$0.0000)
fotohub.ugc.product_tryonUGC: Virtual Try-OnIn: main
Out: main, error
builtin4 credits (~$0.0000)

Node Specifications (FotoHub UGC Studio & Virtual Try-On) ​

fotohub.ugc.script_generator β€” UGC: Script Generator ​

Generate viral Hook-Agitate-Solution UGC video scripts.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 1 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
product_namestringYesnone
product_urlstringNonone
hook_styleoptionsNocuriosity
Options: curiosity, shock, question, before_after
target_audiencestringNoKobiety i mΔ™ΕΌczyΕΊni 18-35 zainteresowani nowoΕ›ciami
duration_target_snumberNo30
json
{
  "id": "fotohub_ugc_script_generator_1",
  "type": "fotohub.ugc.script_generator",
  "position": [
    250,
    150
  ],
  "params": {
    "product_name": "<value>",
    "hook_style": "curiosity",
    "target_audience": "Kobiety i m\u0119\u017cczy\u017ani 18-35 zainteresowani nowo\u015bciami"
  }
}

fotohub.ugc.actor_render β€” UGC: Render Actor ​

Generate AI video presenter speaking product review script.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 10 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
actor_idoptionsNoemma
Options: emma, lucas, sophie, marcus, elena
script_textstringYesnone
product_image_urlstringNonone
camera_angleoptionsNoselfie
Options: selfie, close_up, medium
json
{
  "id": "fotohub_ugc_actor_render_1",
  "type": "fotohub.ugc.actor_render",
  "position": [
    250,
    150
  ],
  "params": {
    "actor_id": "emma",
    "script_text": "<value>",
    "camera_angle": "selfie"
  }
}

fotohub.ugc.product_tryon β€” UGC: Virtual Try-On ​

Overlay apparel or garments onto photo models naturally.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 4 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
person_image_urlstringYesnone
clothing_image_urlstringYesnone
categoryoptionsNotops
Options: tops, bottoms, one_piece, accessories
denoise_stepsnumberNo30
json
{
  "id": "fotohub_ugc_product_tryon_1",
  "type": "fotohub.ugc.product_tryon",
  "position": [
    250,
    150
  ],
  "params": {
    "person_image_url": "<value>",
    "clothing_image_url": "<value>",
    "category": "tops",
    "denoise_steps": 30
  }
}

✨ FotoHub Creative Studio ​

Total Nodes: 1 | Category Identifier: fotohub.creative

Commercial packshot automation: removes raw backgrounds and synthesizes photorealistic 3D advertising mockups with physically accurate lighting, ambient reflections, and cast shadows.

Enterprise Use Case: Turning a smartphone snapshot of a perfume bottle into an ultra-luxury marble pedestal advertisement bathed in sunrise lighting.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.creative.product_mockupStudio Product MockupIn: main
Out: main, error
builtin3 credits (~$0.0000)

Node Specifications (FotoHub Creative Studio) ​

fotohub.creative.product_mockup β€” Studio Product Mockup ​

Generate professional 3D studio lighting mockup for products.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 3 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
product_image_urlstringYesnone
scene_themeoptionsNominimalist_studio
Options: minimalist_studio, luxury_marble, outdoor_nature, cyber_neon, cozy_wood
custom_promptstringNonone
shadow_intensitynumberNo0.75
json
{
  "id": "fotohub_creative_product_mockup_1",
  "type": "fotohub.creative.product_mockup",
  "position": [
    250,
    150
  ],
  "params": {
    "product_image_url": "<value>",
    "scene_theme": "minimalist_studio",
    "shadow_intensity": 0.75
  }
}

πŸ’‘ Creative Studio & Styling ​

Total Nodes: 1 | Category Identifier: creative

Advanced packshot styling and commercial set generation for fashion, cosmetics, luxury goods, and consumer electronics.

Enterprise Use Case: Standardizing an entire 500-product e-commerce catalog with matching seasonal backgrounds, camera angles, and shadow depths.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
ai.vision_analyzerAI Vision AnalyzerIn: main
Out: main
builtinFree (0 credits)

Node Specifications (Creative Studio & Styling) ​

ai.vision_analyzer β€” AI Vision Analyzer ​

Analyze visual image content, detect objects, and evaluate quality.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
extract_color_palettebooleanNoTrue
score_aestheticbooleanNoTrue
extract_ocr_textbooleanNoTrue
json
{
  "id": "ai_vision_analyzer_1",
  "type": "ai.vision_analyzer",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "extract_color_palette": true,
    "score_aesthetic": true,
    "extract_ocr_text": true
  }
}

🎨 FotoHub AI Image Processing ​

Total Nodes: 19 | Category Identifier: fotohub.image

Comprehensive 19-node image suite: state-of-the-art generation (Flux, Midjourney v6, SD3), 8K super-resolution upscaling, alpha matting background removal, face-aware smart cropping, inpainting, outpainting, face swapping, and relighting.

Enterprise Use Case: End-to-end photo production pipeline: generate themed background, match subject lighting, retouch skin tones, and export in print-ready 300 DPI resolution.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.gallery.saveFotoHub Gallery: SaveIn: main
Out: main
builtinfree
fotohub.image.generateGenerate ImageIn: main
Out: main, error
httpper_operation
fotohub.image.upscaleUpscale ImageIn: main
Out: main, error
httpper_operation
fotohub.image.remove_bgRemove BackgroundIn: main
Out: main, error
httpper_operation
fotohub.image.face_swapFace SwapIn: main
Out: main, error
edge_fnper_operation
fotohub.image.colorizeColorize (B&W)In: main
Out: main, error
httpper_operation
fotohub.image.style_transferStyle TransferIn: main
Out: main, error
httpper_operation
fotohub.image.inpaintInpaintIn: main
Out: main, error
httpper_operation
fotohub.image.outpaintOutpaintIn: main
Out: main, error
httpper_operation
fotohub.image.face_restoreRestore FaceIn: main
Out: main, error
httpper_operation
fotohub.image.denoiseDenoiseIn: main
Out: main, error
httpper_operation
fotohub.image.auto_enhanceAuto-EnhanceIn: main
Out: main, error
httpper_operation
fotohub.image.color_gradeColor GradeIn: main
Out: main, error
httpper_operation
fotohub.image.filterFilterIn: main
Out: main, error
httpfree
fotohub.image.resizeResizeIn: main
Out: main, error
httpfree
fotohub.image.smart_cropSmart CropIn: main
Out: main, error
httpper_operation
fotohub.image.watermarkWatermarkIn: main
Out: main, error
httpfree
fotohub.image.generate_bgGenerate BackgroundIn: main
Out: main, error
httpper_operation
fotohub.image.deepfakeDeepfake VideoIn: main
Out: main, error
edge_fnper_operation

Node Specifications (FotoHub AI Image Processing) ​

Save generated images directly to user FotoHub gallery.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringNonone
visibilityoptionsNoprivate
Options: private, public, unlisted
image_urlstringNonone
json
{
  "id": "fotohub_gallery_save_1",
  "type": "fotohub.gallery.save",
  "position": [
    250,
    150
  ],
  "params": {
    "visibility": "private"
  }
}

fotohub.image.generate β€” Generate Image ​

Create a new image from a text prompt using any FOTOhub model.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /generate)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsYesdola-seedream-5-0-pro-260628
Options: dola-seedream-5-0-pro-260628, seedream-5-0-260128, seedream-4-5-251128, seedream-4-0-250828, gpt-image-2 (+34 more)
promptstringYesnone
reference_image_urlstringNonone
aspect_ratiooptionsNo1:1
Options: 1:1, 16:9, 9:16, 4:3, 3:4 (+3 more)
countnumberNo1
``collapsibleNononeAdvanced
json
{
  "id": "fotohub_image_generate_1",
  "type": "fotohub.image.generate",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "dola-seedream-5-0-pro-260628",
    "prompt": "<value>",
    "aspect_ratio": "1:1"
  }
}

fotohub.image.upscale β€” Upscale Image ​

Increase image resolution 2Γ—/4Γ— with Real-ESRGAN.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/upscale)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
scaleoptionsNo2
Options: 2, 4
json
{
  "id": "fotohub_image_upscale_1",
  "type": "fotohub.image.upscale",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "scale": "2"
  }
}

fotohub.image.remove_bg β€” Remove Background ​

Cut out the subject of an image (rembg / ISNet).

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/remove-bg)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
modeloptionsNoisnet-general-use
Options: isnet-general-use, u2net, silueta
json
{
  "id": "fotohub_image_remove_bg_1",
  "type": "fotohub.image.remove_bg",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "model": "isnet-general-use"
  }
}

fotohub.image.face_swap β€” Face Swap ​

Swap a face from a source image onto a target.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
source_urlstringYesnone
target_urlstringYesnone
json
{
  "id": "fotohub_image_face_swap_1",
  "type": "fotohub.image.face_swap",
  "position": [
    250,
    150
  ],
  "params": {
    "source_url": "<value>",
    "target_url": "<value>"
  }
}

fotohub.image.colorize β€” Colorize (B&W) ​

Add color to a black & white photo.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/colorize)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
json
{
  "id": "fotohub_image_colorize_1",
  "type": "fotohub.image.colorize",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>"
  }
}

fotohub.image.style_transfer β€” Style Transfer ​

Apply an artistic style to a photo.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /generate)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
style_promptstringYesnone
json
{
  "id": "fotohub_image_style_transfer_1",
  "type": "fotohub.image.style_transfer",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "style_prompt": "<value>"
  }
}

fotohub.image.inpaint β€” Inpaint ​

Fill a masked region with AI-generated content matching the surroundings.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/inpaint)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
mask_urlstringYesnone
promptstringYesnone
json
{
  "id": "fotohub_image_inpaint_1",
  "type": "fotohub.image.inpaint",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "mask_url": "<value>",
    "prompt": "<value>"
  }
}

fotohub.image.outpaint β€” Outpaint ​

Extend an image beyond its original borders.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/outpaint)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
directionoptionsNoall
Options: left, right, up, down, all
pixelsnumberNo256
json
{
  "id": "fotohub_image_outpaint_1",
  "type": "fotohub.image.outpaint",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "direction": "all",
    "pixels": 256
  }
}

fotohub.image.face_restore β€” Restore Face ​

Clean up faces (GFPGAN) β€” great for old/low-res photos.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/face-restore)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
json
{
  "id": "fotohub_image_face_restore_1",
  "type": "fotohub.image.face_restore",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>"
  }
}

fotohub.image.denoise β€” Denoise ​

Remove grain and noise while keeping detail.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/denoise)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
strengthnumberNo50
json
{
  "id": "fotohub_image_denoise_1",
  "type": "fotohub.image.denoise",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "strength": 50
  }
}

fotohub.image.auto_enhance β€” Auto-Enhance ​

One-click AI enhancement (exposure + sharpness + color).

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/auto-enhance)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
json
{
  "id": "fotohub_image_auto_enhance_1",
  "type": "fotohub.image.auto_enhance",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>"
  }
}

fotohub.image.color_grade β€” Color Grade ​

Apply cinematic color LUT or custom grade.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/color-grade)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
presetoptionsNocinematic
Options: natural, cinematic, warm, cool, vintage (+4 more)
intensitynumberNo60
json
{
  "id": "fotohub_image_color_grade_1",
  "type": "fotohub.image.color_grade",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "preset": "cinematic",
    "intensity": 60
  }
}

fotohub.image.filter β€” Filter ​

Apply one of 9 classic filters.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/filter)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
filteroptionsNosharpen
Options: grayscale, sepia, invert, blur, sharpen (+4 more)
strengthnumberNo50
json
{
  "id": "fotohub_image_filter_1",
  "type": "fotohub.image.filter",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "filter": "sharpen",
    "strength": 50
  }
}

fotohub.image.resize β€” Resize ​

Change an image's dimensions (with optional aspect lock).

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/resize)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
widthnumberYesnone
heightnumberNonone
modeoptionsNofit
Options: fit, fill, stretch, crop
json
{
  "id": "fotohub_image_resize_1",
  "type": "fotohub.image.resize",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "width": "<value>",
    "mode": "fit"
  }
}

fotohub.image.smart_crop β€” Smart Crop ​

Crop to a target aspect keeping the most important content.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/smart-crop)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
aspectoptionsNo1:1
Options: 1:1, 16:9, 9:16, 4:3, 3:4
json
{
  "id": "fotohub_image_smart_crop_1",
  "type": "fotohub.image.smart_crop",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "aspect": "1:1"
  }
}

fotohub.image.watermark β€” Watermark ​

Add text or image watermark.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/watermark)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
textstringNoΒ© FOTOhub
positionoptionsNobottom-right
Options: top-left, top-right, bottom-left, bottom-right, center
opacitynumberNo70
json
{
  "id": "fotohub_image_watermark_1",
  "type": "fotohub.image.watermark",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "text": "\u00a9 FOTOhub",
    "position": "bottom-right",
    "opacity": 70
  }
}

fotohub.image.generate_bg β€” Generate Background ​

Composite a subject onto a freshly generated AI background.

  • Executor Runtime: http

  • Microservice Service: image-engine (endpoint: /api/generate-bg)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
bg_promptstringYesnone
json
{
  "id": "fotohub_image_generate_bg_1",
  "type": "fotohub.image.generate_bg",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "bg_prompt": "<value>"
  }
}

fotohub.image.deepfake β€” Deepfake Video ​

Advanced multi-frame face swap for video (opt-in watermarking + audit log).

  • Executor Runtime: edge_fn

  • Required Tier: STARTER

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
source_face_urlstringYesnone
target_video_urlstringYesnone
json
{
  "id": "fotohub_image_deepfake_1",
  "type": "fotohub.image.deepfake",
  "position": [
    250,
    150
  ],
  "params": {
    "source_face_url": "<value>",
    "target_video_url": "<value>"
  }
}

🎬 FotoHub AI Video Generation ​

Total Nodes: 12 | Category Identifier: fotohub.video

High-performance video engine: text/image-to-video (Luma, Runway, Kling), clip extension, AI slow-motion frame interpolation, gyroscopic stabilization, NLE timeline rendering, and social format transcoding.

Enterprise Use Case: Creating dynamic 10-second social video teasers synced to musical beats, stabilized for handheld camera motion, and rendered in vertical MP4.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.video.generateGenerate VideoIn: main
Out: main, error
httpper_second
fotohub.video.animate_imageAnimate ImageIn: main
Out: main, error
httpper_second
fotohub.video.transcribeTranscribe VideoIn: main
Out: main, error
httpper_minute
fotohub.video.render_timelineRender TimelineIn: main
Out: main, error
httpper_second
fotohub.video.transcodeTranscodeIn: main
Out: main, error
httpper_second
fotohub.video.trimTrimIn: main
Out: main, error
httpfree
fotohub.video.mergeMerge VideosIn: main
Out: main, error
httpper_second
fotohub.video.extract_audioExtract AudioIn: main
Out: main, error
httpfree
fotohub.video.extract_framesExtract FramesIn: main
Out: main, error
httpfree
fotohub.video.stabilizeStabilizeIn: main
Out: main, error
httpper_second
fotohub.video.compressCompressIn: main
Out: main, error
httpper_second
fotohub.video.summarizeSummarize VideoIn: main
Out: main, error
edge_fnper_minute

Node Specifications (FotoHub AI Video Generation) ​

fotohub.video.generate β€” Generate Video ​

Create a short video from a prompt or image using Veo, Sora, Hailuo, etc.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /generate)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsYessora-2-azure
Options: sora-2-pro, sora-2-azure, veo-3.1-generate-001, veo-3.1-fast-generate-001, kling-v3 (+20 more)
promptstringYesnone
first_frame_urlstringNonone
last_frame_urlstringNonone
duration_snumberNo5
aspect_ratiooptionsNo16:9
Options: 16:9, 9:16, 1:1
resolutionoptionsNo720p
Options: 720p, 1080p, 4k
generate_audiooptionsNotrue
Options: true, false
json
{
  "id": "fotohub_video_generate_1",
  "type": "fotohub.video.generate",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "sora-2-azure",
    "prompt": "<value>"
  }
}

fotohub.video.animate_image β€” Animate Image ​

Turn a still image into a short animated clip.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /generate)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
motion_promptstringNosubtle natural motion
duration_snumberNo4
json
{
  "id": "fotohub_video_animate_image_1",
  "type": "fotohub.video.animate_image",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "motion_prompt": "subtle natural motion",
    "duration_s": 4
  }
}

fotohub.video.transcribe β€” Transcribe Video ​

Extract speech transcript (Whisper / chatterbox).

  • Executor Runtime: http

  • Microservice Service: chatterbox (endpoint: /transcribe)

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
languageoptionsNoauto
Options: auto, en, pl, de, es (+3 more)
json
{
  "id": "fotohub_video_transcribe_1",
  "type": "fotohub.video.transcribe",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "language": "auto"
  }
}

fotohub.video.render_timeline β€” Render Timeline ​

Render a full multi-track video project (clips, audio, text, effects).

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /render)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
project_jsonstringYesnoneFull video-engine timeline spec.
formatoptionsNomp4
Options: mp4, webm, mov
qualityoptionsNo1080p
Options: 1080p, 720p, 480p, 4k
json
{
  "id": "fotohub_video_render_timeline_1",
  "type": "fotohub.video.render_timeline",
  "position": [
    250,
    150
  ],
  "params": {
    "project_json": "<value>",
    "format": "mp4",
    "quality": "1080p"
  }
}

fotohub.video.transcode β€” Transcode ​

Convert a video to another format/codec/resolution.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /transcode)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
formatoptionsNomp4
Options: mp4, webm, mov, gif
qualityoptionsNo720p
Options: 1080p, 720p, 480p
json
{
  "id": "fotohub_video_transcode_1",
  "type": "fotohub.video.transcode",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "format": "mp4",
    "quality": "720p"
  }
}

fotohub.video.trim β€” Trim ​

Cut a video to [start, end] seconds.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /trim)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
start_snumberNo0
end_snumberYesnone
json
{
  "id": "fotohub_video_trim_1",
  "type": "fotohub.video.trim",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "start_s": 0,
    "end_s": "<value>"
  }
}

fotohub.video.merge β€” Merge Videos ​

Concatenate multiple clips into one.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /merge)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
urls_jsonstringYesnone
transitionoptionsNonone
Options: none, fade, dissolve
json
{
  "id": "fotohub_video_merge_1",
  "type": "fotohub.video.merge",
  "position": [
    250,
    150
  ],
  "params": {
    "urls_json": "<value>",
    "transition": "none"
  }
}

fotohub.video.extract_audio β€” Extract Audio ​

Pull audio track out as MP3.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /extract-audio)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
json
{
  "id": "fotohub_video_extract_audio_1",
  "type": "fotohub.video.extract_audio",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>"
  }
}

fotohub.video.extract_frames β€” Extract Frames ​

Grab N still frames from a video at even intervals.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /extract-frames)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
countnumberNo10
json
{
  "id": "fotohub_video_extract_frames_1",
  "type": "fotohub.video.extract_frames",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "count": 10
  }
}

fotohub.video.stabilize β€” Stabilize ​

Remove camera shake.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /stabilize)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
strengthnumberNo50
json
{
  "id": "fotohub_video_stabilize_1",
  "type": "fotohub.video.stabilize",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "strength": 50
  }
}

fotohub.video.compress β€” Compress ​

Reduce file size while preserving quality.

  • Executor Runtime: http

  • Microservice Service: video-engine (endpoint: /compress)

  • Required Tier: FREE

  • Execution Cost: per_second

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
target_size_mbnumberNo25
json
{
  "id": "fotohub_video_compress_1",
  "type": "fotohub.video.compress",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "target_size_mb": 25
  }
}

fotohub.video.summarize β€” Summarize Video ​

Generate a text summary of what's in a video.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
max_wordsnumberNo120
json
{
  "id": "fotohub_video_summarize_1",
  "type": "fotohub.video.summarize",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "max_words": 120
  }
}

🎡 FotoHub Audio, Voice & Music ​

Total Nodes: 14 | Category Identifier: fotohub.audio

Expressive text-to-speech in 100+ languages, generative music composition (Suno, Udio), cinematic SFX, LUFS broadcast mastering, Whisper Large v3 speech-to-text, stem separation, and voice cloning.

Enterprise Use Case: Generating multilingual voiceovers, composing custom royalty-free lofi background music, and mastering the combined audio to Spotify and YouTube standards.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.audio.generate_voiceGenerate VoiceIn: main
Out: main, error
edge_fnper_characters
fotohub.audio.generate_musicGenerate MusicIn: main
Out: main, error
httpper_operation
fotohub.audio.generate_sfxGenerate Sound Effects (SFX)In: main
Out: main, error
edge_fnper_operation
fotohub.audio.masteringAudio MasteringIn: main
Out: main, error
httpper_operation
fotohub.audio.dubbingAI DubbingIn: main
Out: main, error
edge_fnper_minute
fotohub.audio.transcribeTranscribe AudioIn: main
Out: main, error
httpper_minute
fotohub.audio.speech_to_speechAudio: Speech-to-SpeechIn: main
Out: main, error
edge_fnper_minute
fotohub.audio.voice_cloneVoice CloneIn: main
Out: main, error
edge_fnper_characters
fotohub.audio.mixMix TracksIn: main
Out: main, error
httpper_minute
fotohub.audio.apply_effectApply EffectIn: main
Out: main, error
httpfree
fotohub.audio.normalizeNormalize LoudnessIn: main
Out: main, error
httpfree
fotohub.audio.separate_stemsSeparate StemsIn: main
Out: main, error
httpper_minute
fotohub.audio.trimTrim AudioIn: main
Out: main, error
httpfree
fotohub.audio.mergeMerge AudioIn: main
Out: main, error
httpfree

Node Specifications (FotoHub Audio, Voice & Music) ​

fotohub.audio.generate_voice β€” Generate Voice ​

Text-to-speech using ElevenLabs / chatterbox voices.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_characters

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsYeselevenlabs
Options: elevenlabs, google-tts, openai-tts, bark
textstringYesnone
voice_idoptionsNoola-pl
Options: rachel, adam, ola-pl, jakub-pl, bella (+4 more)
languageoptionsNopl
Options: pl, en, de, es, fr (+1 more)
speednumberNo1.0
stabilitynumberNo0.5
json
{
  "id": "fotohub_audio_generate_voice_1",
  "type": "fotohub.audio.generate_voice",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "elevenlabs",
    "text": "<value>",
    "voice_id": "ola-pl",
    "language": "pl"
  }
}

fotohub.audio.generate_music β€” Generate Music ​

Create original music from a prompt (Stable Audio / Udio).

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /generate)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsYessuno-ai
Options: suno-ai, udio, stable-audio-2, musicgen
promptstringYesnone
genreoptionsNoelectronic
Options: electronic, hip-hop, pop, rock, classical (+6 more)
moodoptionsNoenergetic
Options: energetic, calm, epic, happy, dark (+4 more)
duration_snumberNo30
instrumentaloptionsNotrue
Options: true, false
json
{
  "id": "fotohub_audio_generate_music_1",
  "type": "fotohub.audio.generate_music",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "suno-ai",
    "prompt": "<value>",
    "genre": "electronic",
    "mood": "energetic"
  }
}

fotohub.audio.generate_sfx β€” Generate Sound Effects (SFX) ​

Create custom sound effects from a descriptive prompt.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
promptstringYesnone
categoryoptionsNocinematic
Options: nature, urban, mechanical, digital, cinematic (+1 more)
duration_snumberNo3
json
{
  "id": "fotohub_audio_generate_sfx_1",
  "type": "fotohub.audio.generate_sfx",
  "position": [
    250,
    150
  ],
  "params": {
    "prompt": "<value>",
    "category": "cinematic",
    "duration_s": 3
  }
}

fotohub.audio.mastering β€” Audio Mastering ​

Professional AI audio mastering with EQ, compression and limiter presets.

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /master)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
presetoptionsNopunchy
Options: punchy, warm, club, podcast, cinematic
target_lufsnumberNo-14
json
{
  "id": "fotohub_audio_mastering_1",
  "type": "fotohub.audio.mastering",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "preset": "punchy",
    "target_lufs": -14
  }
}

fotohub.audio.dubbing β€” AI Dubbing ​

Translate and dub spoken audio into another language with matching voice timbre.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
target_languageoptionsNoen
Options: en, pl, de, es, fr (+2 more)
num_speakersnumberNo1
json
{
  "id": "fotohub_audio_dubbing_1",
  "type": "fotohub.audio.dubbing",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "target_language": "en",
    "num_speakers": 1
  }
}

fotohub.audio.transcribe β€” Transcribe Audio ​

Speech-to-text for an audio file.

  • Executor Runtime: http

  • Microservice Service: chatterbox (endpoint: /transcribe)

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
languageoptionsNoauto
Options: auto, en, pl, de, es
json
{
  "id": "fotohub_audio_transcribe_1",
  "type": "fotohub.audio.transcribe",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "language": "auto"
  }
}

fotohub.audio.speech_to_speech β€” Audio: Speech-to-Speech ​

Convert spoken voice into a target character or tone.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
target_voiceoptionsNoola-pl
Options: rachel, adam, ola-pl, jakub-pl, bella (+4 more)
preserve_emotionoptionsNotrue
Options: true, false
remove_backgroundoptionsNotrue
Options: true, false
json
{
  "id": "fotohub_audio_speech_to_speech_1",
  "type": "fotohub.audio.speech_to_speech",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "target_voice": "ola-pl",
    "preserve_emotion": "true",
    "remove_background": "true"
  }
}

fotohub.audio.voice_clone β€” Voice Clone ​

Clone a speaker's voice from a reference sample, then TTS with it.

  • Executor Runtime: edge_fn

  • Required Tier: STARTER

  • Execution Cost: per_characters

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
reference_urlstringYesnone5-30s of clean speech.
textstringYesnone
languageoptionsNoen
Options: en, pl, de, es, fr
json
{
  "id": "fotohub_audio_voice_clone_1",
  "type": "fotohub.audio.voice_clone",
  "position": [
    250,
    150
  ],
  "params": {
    "reference_url": "<value>",
    "text": "<value>",
    "language": "en"
  }
}

fotohub.audio.mix β€” Mix Tracks ​

Combine multiple audio tracks with per-track volume + pan.

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /render)

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
tracks_jsonstringYesnone
json
{
  "id": "fotohub_audio_mix_1",
  "type": "fotohub.audio.mix",
  "position": [
    250,
    150
  ],
  "params": {
    "tracks_json": "<value>"
  }
}

fotohub.audio.apply_effect β€” Apply Effect ​

Apply EQ / reverb / compression / echo to a track.

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /effect)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
effectoptionsNoreverb
Options: reverb, echo, compression, eq_bright, eq_warm (+3 more)
intensitynumberNo50
json
{
  "id": "fotohub_audio_apply_effect_1",
  "type": "fotohub.audio.apply_effect",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "effect": "reverb",
    "intensity": 50
  }
}

fotohub.audio.normalize β€” Normalize Loudness ​

2-pass EBU R128 loudness normalization.

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /normalize)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
target_lufsnumberNo-16βˆ’16 LUFS for podcasts, βˆ’14 for streaming
json
{
  "id": "fotohub_audio_normalize_1",
  "type": "fotohub.audio.normalize",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "target_lufs": -16
  }
}

fotohub.audio.separate_stems β€” Separate Stems ​

Split a mix into vocals, drums, bass, other (demucs).

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /stems)

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
json
{
  "id": "fotohub_audio_separate_stems_1",
  "type": "fotohub.audio.separate_stems",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>"
  }
}

fotohub.audio.trim β€” Trim Audio ​

Cut audio to [start, end] seconds.

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /trim)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
audio_urlstringYesnone
start_snumberNo0
end_snumberYesnone
json
{
  "id": "fotohub_audio_trim_1",
  "type": "fotohub.audio.trim",
  "position": [
    250,
    150
  ],
  "params": {
    "audio_url": "<value>",
    "start_s": 0,
    "end_s": "<value>"
  }
}

fotohub.audio.merge β€” Merge Audio ​

Join multiple clips end-to-end.

  • Executor Runtime: http

  • Microservice Service: music-server (endpoint: /merge)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
urls_jsonstringYesnone
crossfade_msnumberNo0
json
{
  "id": "fotohub_audio_merge_1",
  "type": "fotohub.audio.merge",
  "position": [
    250,
    150
  ],
  "params": {
    "urls_json": "<value>",
    "crossfade_ms": 0
  }
}

πŸŽ™οΈ Real-Time Voice & Streaming Audio ​

Total Nodes: 3 | Category Identifier: voice

Full-duplex conversational voice with sub-300ms latency, automatic voice activity detection (VAD), interruption handling, and streaming WebSocket transcription and synthesis.

Enterprise Use Case: An interactive phone/web voice assistant that conducts customer consultations, answers technical photography questions, and books appointments.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
voice.conversationVoice: Start ConversationIn: main
Out: main, error
builtinper_minute
voice.end_callZakoΕ„cz rozmowΔ™In: main
Out: main
builtinfree
voice.detect_languageWykryj jΔ™zykIn: main
Out: main, error
builtinfree

Node Specifications (Real-Time Voice & Streaming Audio) ​

voice.conversation β€” Voice: Start Conversation ​

Initiate real-time full-duplex conversational audio session.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
first_messagestringNonone
voice_idstringNonone
languageoptionsNoauto
Options: auto, pl, en, de, es (+1 more)
json
{
  "id": "voice_conversation_1",
  "type": "voice.conversation",
  "position": [
    250,
    150
  ],
  "params": {
    "language": "auto"
  }
}

voice.end_call β€” ZakoΕ„cz rozmowΔ™ ​

Zamyka bieΕΌΔ…cΔ… rozmowΔ™ gΕ‚osowΔ….

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

json
{
  "id": "voice_end_call_1",
  "type": "voice.end_call",
  "position": [
    250,
    150
  ],
  "params": {}
}

voice.detect_language β€” Wykryj jΔ™zyk ​

Automatycznie wykrywa jΔ™zyk mΓ³wcy w tle rozmowy.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

json
{
  "id": "voice_detect_language_1",
  "type": "voice.detect_language",
  "position": [
    250,
    150
  ],
  "params": {}
}

🏷️ FotoHub Brand Governance ​

Total Nodes: 6 | Category Identifier: fotohub.brand

Automated brand compliance: PDF brand guideline extraction, color palette generation, intelligent logo watermarking, and Delta-E visual compliance enforcement gates.

Enterprise Use Case: Automatically rejecting and re-generating marketing assets when accent colors deviate by more than DeltaE=2.0 from official corporate guidelines.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
fotohub.brand.get_faceBrand: Get FaceIn: main
Out: main, error
httpfree
fotohub.brand.generate_faceBrand: Generate FaceIn: main
Out: main, error
httpper_operation
fotohub.brand.get_logoBrand: Get LogoIn: main
Out: main, error
httpfree
fotohub.brand.get_product_shotBrand: Get Product ShotIn: main
Out: main, error
httpfree
fotohub.brand.extract_paletteBrand: Extract PaletteIn: main
Out: main, error
httpfree
fotohub.brand.apply_to_imageBrand: Apply to ImageIn: main
Out: main, error
httpper_operation

Node Specifications (FotoHub Brand Governance) ​

fotohub.brand.get_face β€” Brand: Get Face ​

Fetch a brand face/character by ID.

  • Executor Runtime: http

  • Microservice Service: brand-engine (endpoint: /v1/faces/{face_id})

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
face_idstringYesnone
json
{
  "id": "fotohub_brand_get_face_1",
  "type": "fotohub.brand.get_face",
  "position": [
    250,
    150
  ],
  "params": {
    "face_id": "<value>"
  }
}

fotohub.brand.generate_face β€” Brand: Generate Face ​

Generate a new brand face using the image-engine.

  • Executor Runtime: http

  • Microservice Service: brand-engine (endpoint: /v1/faces/generate)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
brand_idstringYesnone
promptstringYesnone
modeloptionsNonano-banana-pro
Options: nano-banana-pro, imagen-4-ultra, gpt-image-1.5, flux-1-pro
perspectiveoptionsNofront
Options: front, three-quarter-left, three-quarter-right, profile, back
json
{
  "id": "fotohub_brand_generate_face_1",
  "type": "fotohub.brand.generate_face",
  "position": [
    250,
    150
  ],
  "params": {
    "brand_id": "<value>",
    "prompt": "<value>",
    "model": "nano-banana-pro",
    "perspective": "front"
  }
}

Fetch a logo asset URL.

  • Executor Runtime: http

  • Microservice Service: brand-engine (endpoint: /v1/logos/{logo_id})

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
logo_idstringYesnone
json
{
  "id": "fotohub_brand_get_logo_1",
  "type": "fotohub.brand.get_logo",
  "position": [
    250,
    150
  ],
  "params": {
    "logo_id": "<value>"
  }
}

fotohub.brand.get_product_shot β€” Brand: Get Product Shot ​

Fetch a stored product photo.

  • Executor Runtime: http

  • Microservice Service: brand-engine (endpoint: /v1/products/{product_id})

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
product_idstringYesnone
json
{
  "id": "fotohub_brand_get_product_shot_1",
  "type": "fotohub.brand.get_product_shot",
  "position": [
    250,
    150
  ],
  "params": {
    "product_id": "<value>"
  }
}

fotohub.brand.extract_palette β€” Brand: Extract Palette ​

Extract dominant + complementary colors from an image.

  • Executor Runtime: http

  • Microservice Service: brand-engine (endpoint: /v1/palette/extract)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
json
{
  "id": "fotohub_brand_extract_palette_1",
  "type": "fotohub.brand.extract_palette",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>"
  }
}

fotohub.brand.apply_to_image β€” Brand: Apply to Image ​

Composite logo/watermark/colors onto an image.

  • Executor Runtime: http

  • Microservice Service: brand-engine (endpoint: /v1/brand/apply-to-image)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
image_urlstringYesnone
brand_idstringYesnone
applyoptionsNologo
Options: logo, watermark, both
json
{
  "id": "fotohub_brand_apply_to_image_1",
  "type": "fotohub.brand.apply_to_image",
  "position": [
    250,
    150
  ],
  "params": {
    "image_url": "<value>",
    "brand_id": "<value>",
    "apply": "logo"
  }
}

🧠 AI Models, LLMs & Vision ​

Total Nodes: 6 | Category Identifier: ai

Direct integration with top-tier foundation models (Claude 3.5 Sonnet, GPT-4o, Gemini 1.5 Pro) for multimodal vision analysis, OCR inspection, text generation, sentiment classification, and embeddings.

Enterprise Use Case: Multimodal QA inspection checking generated imagery for distorted hands, unintended text artifacts, or anatomical defects prior to publishing.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
ai.chatAI ChatIn: main
Out: main, error
edge_fnper_tokens
ai.agentAI AgentIn: main, tools, memory
Out: main, error
llm_agentdynamic
ai.extractExtract Structured DataIn: main
Out: main, error
edge_fnper_tokens
ai.classifyClassifyIn: main
Out: main, error
edge_fnper_tokens
analysis.evaluateAnalyze: Evaluate RunIn: main
Out: main, error
edge_fnper_tokens
analysis.extract_dataAnalyze: Extract DataIn: main
Out: main, error
edge_fnper_tokens

Node Specifications (AI Models, LLMs & Vision) ​

ai.chat β€” AI Chat ​

Single LLM call with a prompt. Great for text generation, classification, rewrites.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsYesclaude-sonnet-4-6
Options: claude-opus-4-7, claude-sonnet-4-6, claude-haiku-4-5, gpt-5.1, gpt-5-mini (+2 more)
system_promptstringNononeSets the model's role.
user_promptstringYesnone
``collapsibleNononeAdvanced
json
{
  "id": "ai_chat_1",
  "type": "ai.chat",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "claude-sonnet-4-6",
    "user_prompt": "<value>"
  }
}

ai.agent β€” AI Agent ​

An LLM agent that can call tools (child nodes) to accomplish a goal. Wire any FOTOhub action as a tool by connecting to the 'tools' input.

  • Executor Runtime: llm_agent

  • Required Tier: FREE

  • Execution Cost: dynamic

  • Input Ports: main (main), tools (ai_tool), memory (ai_memory)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsYesclaude-sonnet-4-6
Options: claude-opus-4-7, claude-sonnet-4-6, claude-haiku-4-5, gpt-5.1, gpt-5-mini (+2 more)
instructionsstringYesnoneAppended to the system prompt.
user_goalstringYesnone
``collapsibleNononeAdvanced
json
{
  "id": "ai_agent_1",
  "type": "ai.agent",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "claude-sonnet-4-6",
    "instructions": "<value>",
    "user_goal": "<value>"
  }
}

ai.extract β€” Extract Structured Data ​

Use an LLM to extract structured JSON matching a schema from free text.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsNoclaude-haiku-4-5
Options: claude-opus-4-7, claude-sonnet-4-6, claude-haiku-4-5, gpt-5.1, gpt-5-mini (+2 more)
textstringYesnone
schemajsonYes{'type': 'object', 'properties': {'name': {'type': 'string'}}, 'required': ['name']}
json
{
  "id": "ai_extract_1",
  "type": "ai.extract",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "claude-haiku-4-5",
    "text": "<value>",
    "schema": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        }
      },
      "required": [
        "name"
      ]
    }
  }
}

ai.classify β€” Classify ​

Classify input into one of N labels.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsNoclaude-haiku-4-5
Options: claude-opus-4-7, claude-sonnet-4-6, claude-haiku-4-5, gpt-5.1, gpt-5-mini (+2 more)
inputstringYesnone
labelsjsonNo['positive', 'neutral', 'negative']Array of string labels.
json
{
  "id": "ai_classify_1",
  "type": "ai.classify",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "claude-haiku-4-5",
    "input": "<value>",
    "labels": [
      "positive",
      "neutral",
      "negative"
    ]
  }
}

analysis.evaluate β€” Analyze: Evaluate Run ​

LLM evaluates workflow run quality against defined grading criteria.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsNogemini-2.5-flash
Options: gemini-2.5-flash, claude-haiku-4-5, gpt-5-mini
transcript_pathstringNo$.output
json
{
  "id": "analysis_evaluate_1",
  "type": "analysis.evaluate",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "gemini-2.5-flash",
    "transcript_path": "$.output"
  }
}

analysis.extract_data β€” Analyze: Extract Data ​

Extract structured entities and fields from unstructured text.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
modeloptionsNoclaude-haiku-4-5
Options: gemini-2.5-flash, claude-haiku-4-5
textstringYesnone
json
{
  "id": "analysis_extract_data_1",
  "type": "analysis.extract_data",
  "position": [
    250,
    150
  ],
  "params": {
    "model": "claude-haiku-4-5",
    "text": "<value>"
  }
}

πŸ“š Knowledge Base & Vector Memory ​

Total Nodes: 3 | Category Identifier: knowledge

Semantic document search (Retrieval-Augmented Generation), persistent agent vector memory, and partitioned tenant collections with automated TTL expiration.

Enterprise Use Case: Enabling customer service agents to answer inquiries using a 500-page enterprise knowledge base of camera gear, pricing tables, and studio policies.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
knowledge.retrieveKnowledge Retrieve (RAG)In: main
Out: main, error
edge_fnper_operation
memory.storeMemory: Store RecordIn: main
Out: main
builtinFree (0 credits)
memory.queryMemory: Semantic QueryIn: main
Out: main
builtinFree (0 credits)

Node Specifications (Knowledge Base & Vector Memory) ​

knowledge.retrieve β€” Knowledge Retrieve (RAG) ​

Retrieve relevant context passages from agent knowledge base.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
querystringYesnone
knumberNo5
sourceoptionsNoworkflowZakres wyszukiwania.
Options: all, workflow, global
json
{
  "id": "knowledge_retrieve_1",
  "type": "knowledge.retrieve",
  "position": [
    250,
    150
  ],
  "params": {
    "query": "<value>",
    "k": 5,
    "source": "workflow"
  }
}

memory.store β€” Memory: Store Record ​

Store facts or context into agent long-term memory.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
contentstringYesnone
namespacestringNodefaultIzolacja logiczna / przestrzeΕ„ nazw pamiΔ™ci
collection_namestringNodefaultKolekcja wektorowa
tenant_idstringNononeIdentyfikator tenanta (domyΕ›lnie user_id)
categoryoptionsNobrand_voice
Options: brand_voice, user_preference, project_rule, fact
tagsstringNonone
metadatajsonNononeDowolne metadane powiΔ…zane z wpisem
ttl_secondsnumberNo0
ttl_daysnumberNo0
embeddingjsonNonone
json
{
  "id": "memory_store_1",
  "type": "memory.store",
  "position": [
    250,
    150
  ],
  "params": {
    "content": "<value>",
    "namespace": "default",
    "collection_name": "default"
  }
}

memory.query β€” Memory: Semantic Query ​

Query agent long-term vector memory for past interactions.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
querystringYesnone
namespacestringNodefaultSzukaj w zadanym namespace
collection_namestringNodefaultNazwa kolekcji
tenant_idstringNononeIdentyfikator tenanta (domyΕ›lnie user_id)
category_filteroptionsNoall
Options: all, brand_voice, user_preference, project_rule, fact
filter_metadatajsonNononeZaawansowane filtry $eq, $in, $gte, $lte
min_scorenumberNo0.7
top_knumberNo3
query_vectorjsonNonone
json
{
  "id": "memory_query_1",
  "type": "memory.query",
  "position": [
    250,
    150
  ],
  "params": {
    "query": "<value>",
    "namespace": "default",
    "collection_name": "default"
  }
}

πŸ“± Social Media Publishing & Scheduling ​

Total Nodes: 14 | Category Identifier: social

Direct API publishing and intelligent scheduling across Instagram (Posts, Reels, Stories), TikTok, YouTube Shorts, Facebook, LinkedIn, Twitter/X, and Pinterest, complete with hashtag optimization.

Enterprise Use Case: Simultaneously broadcasting a completed product video to 6 social networks with platform-tailored captions, optimal aspect ratios, and viral tags.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
social.publish_instagram_postInstagram β€” PostIn: main
Out: main, error
httpper_operation
social.publish_instagram_reelInstagram β€” ReelIn: main
Out: main, error
httpper_operation
social.publish_instagram_storyInstagram β€” StoryIn: main
Out: main, error
httpper_operation
social.publish_facebook_postFacebook β€” PostIn: main
Out: main, error
httpper_operation
social.publish_tiktok_videoTiktok β€” VideoIn: main
Out: main, error
httpper_operation
social.publish_youtube_shortYoutube β€” ShortIn: main
Out: main, error
httpper_operation
social.publish_linkedin_postLinkedin β€” PostIn: main
Out: main, error
httpper_operation
social.publish_twitter_postTwitter β€” PostIn: main
Out: main, error
httpper_operation
social.publish_pinterest_pinPinterest β€” PinIn: main
Out: main, error
httpper_operation
social.schedule_postSchedule Social PostIn: main
Out: main, error
httpfree
social.generate_captionGenerate CaptionIn: main
Out: main, error
edge_fnper_tokens
social.generate_hashtagsGenerate HashtagsIn: main
Out: main, error
edge_fnper_tokens
social.listen_mentionsListen: MentionsIn: main
Out: main, error
httpfree
fotohub.social.cross_publishMulti-Social PublishingIn: main
Out: main, error
builtin1 credits (~$0.0000)

Node Specifications (Social Media Publishing & Scheduling) ​

social.publish_instagram_post β€” Instagram β€” Post ​

Publish a post to Instagram.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/instagram/publish/post)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
json
{
  "id": "social_publish_instagram_post_1",
  "type": "social.publish_instagram_post",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>"
  }
}

social.publish_instagram_reel β€” Instagram β€” Reel ​

Publish a reel to Instagram.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/instagram/publish/reel)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
thumbnail_urlstringNonone
share_to_feedbooleanNoTrue
json
{
  "id": "social_publish_instagram_reel_1",
  "type": "social.publish_instagram_reel",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>",
    "share_to_feed": true
  }
}

social.publish_instagram_story β€” Instagram β€” Story ​

Publish a story to Instagram.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/instagram/publish/story)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
json
{
  "id": "social_publish_instagram_story_1",
  "type": "social.publish_instagram_story",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>"
  }
}

social.publish_facebook_post β€” Facebook β€” Post ​

Publish a post to Facebook.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/facebook/publish/post)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
link_urlstringNonone
json
{
  "id": "social_publish_facebook_post_1",
  "type": "social.publish_facebook_post",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>"
  }
}

social.publish_tiktok_video β€” Tiktok β€” Video ​

Publish a video to Tiktok.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/tiktok/publish/video)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
privacyoptionsNopublic
Options: public, friends, private
json
{
  "id": "social_publish_tiktok_video_1",
  "type": "social.publish_tiktok_video",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>",
    "privacy": "public"
  }
}

social.publish_youtube_short β€” Youtube β€” Short ​

Publish a short to Youtube.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/youtube/publish/short)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
json
{
  "id": "social_publish_youtube_short_1",
  "type": "social.publish_youtube_short",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>"
  }
}

social.publish_linkedin_post β€” Linkedin β€” Post ​

Publish a post to Linkedin.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/linkedin/publish/post)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
json
{
  "id": "social_publish_linkedin_post_1",
  "type": "social.publish_linkedin_post",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>"
  }
}

social.publish_twitter_post β€” Twitter β€” Post ​

Publish a post to Twitter.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/twitter/publish/post)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
reply_to_urlstringNonone
json
{
  "id": "social_publish_twitter_post_1",
  "type": "social.publish_twitter_post",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>"
  }
}

social.publish_pinterest_pin β€” Pinterest β€” Pin ​

Publish a pin to Pinterest.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/pinterest/publish/pin)

  • Required Tier: FREE

  • Execution Cost: per_operation

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
captionstringYesnone
media_urlstringYesnone
board_idstringYesnone
link_urlstringNonone
json
{
  "id": "social_publish_pinterest_pin_1",
  "type": "social.publish_pinterest_pin",
  "position": [
    250,
    150
  ],
  "params": {
    "caption": "<value>",
    "media_url": "<value>",
    "board_id": "<value>"
  }
}

social.schedule_post β€” Schedule Social Post ​

Queue a post for publication at a future time.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/schedule)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
platformoptionsYesnone
Options: instagram, facebook, tiktok, youtube, linkedin (+2 more)
captionstringYesnone
media_urlstringYesnone
publish_atstringYesnone
json
{
  "id": "social_schedule_post_1",
  "type": "social.schedule_post",
  "position": [
    250,
    150
  ],
  "params": {
    "platform": "<value>",
    "caption": "<value>",
    "media_url": "<value>",
    "publish_at": "<value>"
  }
}

social.generate_caption β€” Generate Caption ​

LLM-generated caption + hashtags tuned to a platform.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
topicstringYesnone
platformoptionsNoinstagram
Options: instagram, facebook, tiktok, youtube, linkedin (+2 more)
toneoptionsNocasual
Options: casual, professional, funny, inspiring
hashtag_countnumberNo10
json
{
  "id": "social_generate_caption_1",
  "type": "social.generate_caption",
  "position": [
    250,
    150
  ],
  "params": {
    "topic": "<value>",
    "platform": "instagram",
    "tone": "casual",
    "hashtag_count": 10
  }
}

social.generate_hashtags β€” Generate Hashtags ​

Produce N trending hashtags for a topic.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: per_tokens

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
topicstringYesnone
countnumberNo10
json
{
  "id": "social_generate_hashtags_1",
  "type": "social.generate_hashtags",
  "position": [
    250,
    150
  ],
  "params": {
    "topic": "<value>",
    "count": 10
  }
}

social.listen_mentions β€” Listen: Mentions ​

Poll a platform for brand mentions since last run.

  • Executor Runtime: http

  • Microservice Service: social-engine (endpoint: /v1/listen/mentions)

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
platformoptionsYesnone
Options: instagram, facebook, tiktok, youtube, linkedin (+2 more)
keywordstringYesnone
max_resultsnumberNo25
json
{
  "id": "social_listen_mentions_1",
  "type": "social.listen_mentions",
  "position": [
    250,
    150
  ],
  "params": {
    "platform": "<value>",
    "keyword": "<value>",
    "max_results": 25
  }
}

fotohub.social.cross_publish β€” Multi-Social Publishing ​

Publish video or graphic simultaneously to TikTok, Reels, YouTube.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: 1 credits (~$0.0000)

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
video_urlstringYesnone
titlestringYesnone
descriptionstringNonone
platformsoptionsNoall
Options: all, tiktok_reels, youtube_shorts
schedule_timestringNonone
json
{
  "id": "fotohub_social_cross_publish_1",
  "type": "fotohub.social.cross_publish",
  "position": [
    250,
    150
  ],
  "params": {
    "video_url": "<value>",
    "title": "<value>",
    "platforms": "all"
  }
}

πŸ”Œ External Integrations & E-Commerce ​

Total Nodes: 61 | Category Identifier: integration

61 production connectors for e-commerce platforms (Allegro, Shopify, WooCommerce, eBay, Etsy, PrestaShop, Shoper), payment processors (Stripe), CRMs (HubSpot, Salesforce), team messaging (Slack, Discord, Telegram, WhatsApp), and databases (Notion, Airtable, Google Sheets).

Enterprise Use Case: Automatically generating product listings on Allegro, Shopify, and eBay complete with AI packshots, localized copy, and real-time inventory synchronization.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
mcp.call_toolMCP: Call ToolIn: main
Out: main, error
mcpfree
slack.send_messageSlack: Send MessageIn: main
Out: main, error
edge_fnfree
slack.upload_fileSlack: Upload FileIn: main
Out: main, error
edge_fnfree
gmail.sendGmail: Send EmailIn: main
Out: main, error
edge_fnfree
gmail.listGmail: List MessagesIn: main
Out: main, error
edge_fnfree
calendar.create_eventCalendar: Create EventIn: main
Out: main, error
edge_fnfree
drive.uploadDrive: Upload FileIn: main
Out: main, error
edge_fnfree
sheets.append_rowSheets: Append RowIn: main
Out: main, error
edge_fnfree
sheets.read_rangeSheets: Read RangeIn: main
Out: main, error
edge_fnfree
notion.create_pageNotion: Create PageIn: main
Out: main, error
edge_fnfree
notion.query_dbNotion: Query DatabaseIn: main
Out: main, error
edge_fnfree
airtable.create_recordAirtable: Create RecordIn: main
Out: main, error
edge_fnfree
airtable.list_recordsAirtable: List RecordsIn: main
Out: main, error
edge_fnfree
discord.send_messageDiscord: Send MessageIn: main
Out: main, error
edge_fnfree
telegram.send_messageTelegram: Send MessageIn: main
Out: main, error
edge_fnfree
twilio.send_smsTwilio: Send SMSIn: main
Out: main, error
edge_fnfree
shopify.create_productShopify: Create ProductIn: main
Out: main, error
edge_fnfree
shopify.update_productShopify: Update ProductIn: main
Out: main, error
edge_fnfree
shopify.list_productsShopify: List ProductsIn: main
Out: main, error
edge_fnfree
shopify.update_inventoryShopify: Update InventoryIn: main
Out: main, error
edge_fnfree
shopify.list_ordersShopify: List OrdersIn: main
Out: main, error
edge_fnfree
shopify.fulfill_orderShopify: Fulfill OrderIn: main
Out: main, error
edge_fnfree
woocommerce.create_productWooCommerce: Create ProductIn: main
Out: main, error
edge_fnfree
woocommerce.update_productWooCommerce: Update ProductIn: main
Out: main, error
edge_fnfree
woocommerce.list_ordersWooCommerce: List OrdersIn: main
Out: main, error
edge_fnfree
allegro.create_listingAllegro: Create ListingIn: main
Out: main, error
edge_fnfree
allegro.update_listingAllegro: Aktualizuj ofertΔ™In: main
Out: main, error
edge_fnfree
allegro.end_listingAllegro: End ListingIn: main
Out: main, error
edge_fnfree
allegro.list_ordersAllegro: List OrdersIn: main
Out: main, error
edge_fnfree
amazon.create_listingAmazon: Create ListingIn: main
Out: main, error
edge_fnfree
amazon.update_inventoryAmazon: Update InventoryIn: main
Out: main, error
edge_fnfree
amazon.list_ordersAmazon: List OrdersIn: main
Out: main, error
edge_fnfree
etsy.create_listingEtsy: Create ListingIn: main
Out: main, error
edge_fnfree
etsy.update_listingEtsy: Update ListingIn: main
Out: main, error
edge_fnfree
etsy.list_ordersEtsy: Fetch ReceiptsIn: main
Out: main, error
edge_fnfree
baselinker.add_productBaseLinker: Dodaj produktIn: main
Out: main, error
edge_fnfree
baselinker.update_stockBaseLinker: Aktualizuj stanIn: main
Out: main, error
edge_fnfree
baselinker.publish_to_marketplaceBaseLinker: Wystaw na marketplaceIn: main
Out: main, error
edge_fnfree
baselinker.list_ordersBaseLinker: Pobierz zamΓ³wieniaIn: main
Out: main, error
edge_fnfree
ceneo.upload_feedCeneo: PrzeΕ›lij feed XMLIn: main
Out: main, error
edge_fnfree
ceneo.list_ordersCeneo: Pobierz zamΓ³wienia (KupujΔ™)In: main
Out: main, error
edge_fnfree
ceneo.update_order_statusCeneo: Aktualizuj status zamΓ³wieniaIn: main
Out: main, error
edge_fnfree
ceneo.price_compareCeneo: PorΓ³wnaj cenΔ™In: main
Out: main, error
edge_fnfree
ebay.create_listingeBay: Create ListingIn: main
Out: main, error
edge_fnfree
ebay.update_listingeBay: Update ListingIn: main
Out: main, error
edge_fnfree
ebay.list_orderseBay: List OrdersIn: main
Out: main, error
edge_fnfree
ebay.ship_ordereBay: Mark ShippedIn: main
Out: main, error
edge_fnfree
empik.create_offerEmpik: Wystaw ofertΔ™In: main
Out: main, error
edge_fnfree
empik.list_ordersEmpik: Pobierz zamΓ³wieniaIn: main
Out: main, error
edge_fnfree
olx.create_adOLX: Wystaw ogΕ‚oszenieIn: main
Out: main, error
edge_fnfree
olx.list_messagesOLX: Pobierz wiadomoΕ›ciIn: main
Out: main, error
edge_fnfree
erli.create_listingErli: Wystaw ofertΔ™In: main
Out: main, error
edge_fnfree
erli.list_ordersErli: Pobierz zamΓ³wieniaIn: main
Out: main, error
edge_fnfree
zalando.create_articleZalando: Create ArticleIn: main
Out: main, error
edge_fnfree
zalando.update_stockZalando: Update StockIn: main
Out: main, error
edge_fnfree
zalando.list_ordersZalando: List OrdersIn: main
Out: main, error
edge_fnfree
kaufland.create_offerKaufland: Create OfferIn: main
Out: main, error
edge_fnfree
kaufland.list_ordersKaufland: List OrdersIn: main
Out: main, error
edge_fnfree
stripe.create_checkoutStripe: Create CheckoutIn: main
Out: main, error
edge_fnfree
stripe.list_customersStripe: List CustomersIn: main
Out: main, error
edge_fnfree
mailchimp.add_subscriberMailchimp: Add SubscriberIn: main
Out: main, error
edge_fnfree

Node Specifications (External Integrations & E-Commerce) ​

mcp.call_tool β€” MCP: Call Tool ​

Invoke an external tool on a connected MCP server.

  • Executor Runtime: mcp

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
server_namestringYesnone
tool_namestringYesnone
argumentsjsonNo{}
json
{
  "id": "mcp_call_tool_1",
  "type": "mcp.call_tool",
  "position": [
    250,
    150
  ],
  "params": {
    "server_name": "<value>",
    "tool_name": "<value>",
    "arguments": {}
  }
}

slack.send_message β€” Slack: Send Message ​

Post a message to a channel or DM.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
channelstringYesnone
textstringYesnone
blocksjsonNononeSlack Block Kit JSON (optional)
json
{
  "id": "slack_send_message_1",
  "type": "slack.send_message",
  "position": [
    250,
    150
  ],
  "params": {
    "channel": "<value>",
    "text": "<value>"
  }
}

slack.upload_file β€” Slack: Upload File ​

Share a file to a Slack channel.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
channelstringYesnone
file_urlstringYesnone
titlestringNonone
json
{
  "id": "slack_upload_file_1",
  "type": "slack.upload_file",
  "position": [
    250,
    150
  ],
  "params": {
    "channel": "<value>",
    "file_url": "<value>"
  }
}

gmail.send β€” Gmail: Send Email ​

Send an email via the connected Gmail account.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
tostringYesnone
ccstringNonone
subjectstringYesnone
bodystringYesnone
body_typeoptionsNotext
Options: text, html
json
{
  "id": "gmail_send_1",
  "type": "gmail.send",
  "position": [
    250,
    150
  ],
  "params": {
    "to": "<value>",
    "subject": "<value>",
    "body": "<value>"
  }
}

gmail.list β€” Gmail: List Messages ​

Query messages using Gmail search syntax.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
querystringNois:unread
max_resultsnumberNo20
json
{
  "id": "gmail_list_1",
  "type": "gmail.list",
  "position": [
    250,
    150
  ],
  "params": {
    "query": "is:unread",
    "max_results": 20
  }
}

calendar.create_event β€” Calendar: Create Event ​

Create a Google Calendar event.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
calendar_idstringNoprimary
titlestringYesnone
descriptionstringNonone
startstringYesnone
endstringYesnone
attendeesstringNononeComma-separated emails
json
{
  "id": "calendar_create_event_1",
  "type": "calendar.create_event",
  "position": [
    250,
    150
  ],
  "params": {
    "calendar_id": "primary",
    "title": "<value>",
    "start": "<value>"
  }
}

drive.upload β€” Drive: Upload File ​

Upload a file to Google Drive.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
file_urlstringYesnone
folder_idstringNononeTarget folder ID (optional)
filenamestringNonone
json
{
  "id": "drive_upload_1",
  "type": "drive.upload",
  "position": [
    250,
    150
  ],
  "params": {
    "file_url": "<value>"
  }
}

sheets.append_row β€” Sheets: Append Row ​

Append a row to a Google Sheet.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
spreadsheet_idstringYesnone
sheet_namestringNoSheet1
valuesjsonYesnoneArray of cell values, e.g. ["A", 123, true]
json
{
  "id": "sheets_append_row_1",
  "type": "sheets.append_row",
  "position": [
    250,
    150
  ],
  "params": {
    "spreadsheet_id": "<value>",
    "sheet_name": "Sheet1",
    "values": "<value>"
  }
}

sheets.read_range β€” Sheets: Read Range ​

Read a range of cells from a Google Sheet.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
spreadsheet_idstringYesnone
rangestringYesnone
json
{
  "id": "sheets_read_range_1",
  "type": "sheets.read_range",
  "position": [
    250,
    150
  ],
  "params": {
    "spreadsheet_id": "<value>",
    "range": "<value>"
  }
}

notion.create_page β€” Notion: Create Page ​

Create a page in a Notion database.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
database_idstringYesnone
propertiesjsonYesnone
content_mdstringNonone
json
{
  "id": "notion_create_page_1",
  "type": "notion.create_page",
  "position": [
    250,
    150
  ],
  "params": {
    "database_id": "<value>",
    "properties": "<value>"
  }
}

notion.query_db β€” Notion: Query Database ​

Fetch pages from a Notion database with filters.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
database_idstringYesnone
filterjsonNononeNotion filter object
page_sizenumberNo25
json
{
  "id": "notion_query_db_1",
  "type": "notion.query_db",
  "position": [
    250,
    150
  ],
  "params": {
    "database_id": "<value>",
    "page_size": 25
  }
}

airtable.create_record β€” Airtable: Create Record ​

Create one record in an Airtable base/table.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
base_idstringYesnone
tablestringYesnone
fieldsjsonYesnone
json
{
  "id": "airtable_create_record_1",
  "type": "airtable.create_record",
  "position": [
    250,
    150
  ],
  "params": {
    "base_id": "<value>",
    "table": "<value>",
    "fields": "<value>"
  }
}

airtable.list_records β€” Airtable: List Records ​

Fetch records from a table (with optional filterByFormula).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
base_idstringYesnone
tablestringYesnone
filter_by_formulastringNononeAirtable formula, e.g. {Status}='active'
max_recordsnumberNo50
json
{
  "id": "airtable_list_records_1",
  "type": "airtable.list_records",
  "position": [
    250,
    150
  ],
  "params": {
    "base_id": "<value>",
    "table": "<value>",
    "max_records": 50
  }
}

discord.send_message β€” Discord: Send Message ​

Post to a Discord channel via webhook or bot token.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
channel_idstringYesnone
contentstringYesnone
embedsjsonNonone
json
{
  "id": "discord_send_message_1",
  "type": "discord.send_message",
  "position": [
    250,
    150
  ],
  "params": {
    "channel_id": "<value>",
    "content": "<value>"
  }
}

telegram.send_message β€” Telegram: Send Message ​

Send a message via Telegram Bot API.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
chat_idstringYesnone
textstringYesnone
parse_modeoptionsNonone
Options: none, Markdown, HTML
json
{
  "id": "telegram_send_message_1",
  "type": "telegram.send_message",
  "position": [
    250,
    150
  ],
  "params": {
    "chat_id": "<value>",
    "text": "<value>",
    "parse_mode": "none"
  }
}

twilio.send_sms β€” Twilio: Send SMS ​

Send an SMS via Twilio.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
tostringYesnone
bodystringYesnone
json
{
  "id": "twilio_send_sms_1",
  "type": "twilio.send_sms",
  "position": [
    250,
    150
  ],
  "params": {
    "to": "<value>",
    "body": "<value>"
  }
}

shopify.create_product β€” Shopify: Create Product ​

Add a new product to the Shopify store.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesnone
descriptionstringNonone
pricenumberYesnone
imagesjsonNononeArray of image URLs
variantsjsonNonone
json
{
  "id": "shopify_create_product_1",
  "type": "shopify.create_product",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "<value>",
    "price": "<value>"
  }
}

shopify.update_product β€” Shopify: Update Product ​

Update product fields.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
product_idstringYesnone
fieldsjsonYesnone
json
{
  "id": "shopify_update_product_1",
  "type": "shopify.update_product",
  "position": [
    250,
    150
  ],
  "params": {
    "product_id": "<value>",
    "fields": "<value>"
  }
}

shopify.list_products β€” Shopify: List Products ​

Paginate products in the Shopify store.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
limitnumberNo50
statusstringNononeactive
json
{
  "id": "shopify_list_products_1",
  "type": "shopify.list_products",
  "position": [
    250,
    150
  ],
  "params": {
    "limit": 50
  }
}

shopify.update_inventory β€” Shopify: Update Inventory ​

Adjust stock level for a variant.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
inventory_item_idstringYesnone
location_idstringYesnone
availablenumberYesnoneAbsolute available count (not delta).
json
{
  "id": "shopify_update_inventory_1",
  "type": "shopify.update_inventory",
  "position": [
    250,
    150
  ],
  "params": {
    "inventory_item_id": "<value>",
    "location_id": "<value>",
    "available": "<value>"
  }
}

shopify.list_orders β€” Shopify: List Orders ​

Fetch recent orders, optionally filtered.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
statusoptionsNoany
Options: any, open, closed, cancelled
financial_statusoptionsNoany
Options: any, paid, pending, refunded, partially_refunded
limitnumberNo50
since_idstringNononeOnly orders after this id
json
{
  "id": "shopify_list_orders_1",
  "type": "shopify.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "status": "any",
    "financial_status": "any",
    "limit": 50
  }
}

shopify.fulfill_order β€” Shopify: Fulfill Order ​

Mark an order as fulfilled with tracking info.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
order_idstringYesnone
tracking_numberstringNonone
tracking_companystringNonone
notify_customerbooleanNoTrue
json
{
  "id": "shopify_fulfill_order_1",
  "type": "shopify.fulfill_order",
  "position": [
    250,
    150
  ],
  "params": {
    "order_id": "<value>",
    "notify_customer": true
  }
}

woocommerce.create_product β€” WooCommerce: Create Product ​

Create a product in WooCommerce via REST API.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
namestringYesnone
skustringNonone
regular_pricenumberYesnone
descriptionstringNonone
categoriesjsonNononeArray of category IDs
imagesjsonNononeArray of image URLs
statusoptionsNopublish
Options: publish, draft, private
json
{
  "id": "woocommerce_create_product_1",
  "type": "woocommerce.create_product",
  "position": [
    250,
    150
  ],
  "params": {
    "name": "<value>",
    "regular_price": "<value>"
  }
}

woocommerce.update_product β€” WooCommerce: Update Product ​

Update WooCommerce product fields.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
product_idstringYesnone
fieldsjsonYesnone
json
{
  "id": "woocommerce_update_product_1",
  "type": "woocommerce.update_product",
  "position": [
    250,
    150
  ],
  "params": {
    "product_id": "<value>",
    "fields": "<value>"
  }
}

woocommerce.list_orders β€” WooCommerce: List Orders ​

Paginate recent WooCommerce orders.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
statusoptionsNoany
Options: any, pending, processing, completed, refunded
per_pagenumberNo20
json
{
  "id": "woocommerce_list_orders_1",
  "type": "woocommerce.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "status": "any",
    "per_page": 20
  }
}

allegro.create_listing β€” Allegro: Create Listing ​

Publish a new product auction or buy-now listing on Allegro.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
namestringYesnoneTytuΕ‚ oferty (max 75 zn.)
category_idstringYesnoneID kategorii Allegro (np. 257936)
pricenumberYesnoneCena w PLN
quantitynumberYes1
description_htmlstringYesnone
imagesjsonNononeDo 16 URL-i zdjΔ™Δ‡
parametersjsonNononeParametry Allegro: [{id, values: [...]}, …]
conditionoptionsNoNEW
Options: NEW, USED, NEW_OTHER, REFURBISHED
delivery_shipping_rates_idstringNononeID cennika dostaw
publication_statusoptionsNoACTIVE
Options: ACTIVE, INACTIVE
json
{
  "id": "allegro_create_listing_1",
  "type": "allegro.create_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "name": "<value>",
    "category_id": "<value>",
    "price": "<value>",
    "quantity": 1
  }
}

allegro.update_listing β€” Allegro: Aktualizuj ofertΔ™ ​

ZmieΕ„ cenΔ™, stan lub parametry oferty.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
offer_idstringYesnone
fieldsjsonYesnoneObiekt z polami do aktualizacji
json
{
  "id": "allegro_update_listing_1",
  "type": "allegro.update_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "offer_id": "<value>",
    "fields": "<value>"
  }
}

allegro.end_listing β€” Allegro: End Listing ​

Terminate an active Allegro product listing or auction.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
offer_idstringYesnone
json
{
  "id": "allegro_end_listing_1",
  "type": "allegro.end_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "offer_id": "<value>"
  }
}

allegro.list_orders β€” Allegro: List Orders ​

Fetch incoming buyer orders and fulfillment statuses from Allegro.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7ZamΓ³wienia z ostatnich N dni
statusoptionsNoREADY_FOR_PROCESSING
Options: BOUGHT, READY_FOR_PROCESSING, PROCESSING, READY_FOR_SHIPMENT, SENT (+2 more)
json
{
  "id": "allegro_list_orders_1",
  "type": "allegro.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "status": "READY_FOR_PROCESSING"
  }
}

amazon.create_listing β€” Amazon: Create Listing ​

Submit a listing via Amazon SP-API.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
marketplace_idstringYesnonenp. A1PA6795UKMFR9 (DE), APJ6JRA9NG5V4 (IT)
skustringYesnone
product_typestringYesnoneAmazon product-type (np. SHOES, BOOK, TOY)
attributesjsonYesnoneAttribute dict per SP-API schema
json
{
  "id": "amazon_create_listing_1",
  "type": "amazon.create_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "marketplace_id": "<value>",
    "sku": "<value>",
    "product_type": "<value>",
    "attributes": "<value>"
  }
}

amazon.update_inventory β€” Amazon: Update Inventory ​

Set SKU stock quantity in Amazon SP-API.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
skustringYesnone
quantitynumberYesnone
json
{
  "id": "amazon_update_inventory_1",
  "type": "amazon.update_inventory",
  "position": [
    250,
    150
  ],
  "params": {
    "sku": "<value>",
    "quantity": "<value>"
  }
}

amazon.list_orders β€” Amazon: List Orders ​

Fetch recent Amazon orders for given marketplaces.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
marketplace_idsstringYesnone
daysnumberNo7
json
{
  "id": "amazon_list_orders_1",
  "type": "amazon.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "marketplace_ids": "<value>",
    "days": 7
  }
}

etsy.create_listing β€” Etsy: Create Listing ​

Draft a new listing in your Etsy shop.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesnone
descriptionstringYesnone
pricenumberYesnone
quantitynumberYes1
who_madestringNoi_didi_did, collective, someone_else
when_madestringNomade_to_ordernp. made_to_order, 2020_2024
tagsjsonNononeDo 13 tagΓ³w (tablica stringΓ³w)
materialsjsonNonone
image_idsjsonNononeUploaded image ids
json
{
  "id": "etsy_create_listing_1",
  "type": "etsy.create_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "<value>",
    "description": "<value>",
    "price": "<value>",
    "quantity": 1
  }
}

etsy.update_listing β€” Etsy: Update Listing ​

Patch an existing Etsy listing.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
listing_idstringYesnone
fieldsjsonYesnone
json
{
  "id": "etsy_update_listing_1",
  "type": "etsy.update_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "listing_id": "<value>",
    "fields": "<value>"
  }
}

etsy.list_orders β€” Etsy: Fetch Receipts ​

Pobierz zamΓ³wienia (receipts) z Etsy shopu.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
was_paidoptionsNotrue
Options: any, true, false
was_shippedoptionsNofalse
Options: any, false
limitnumberNo25
json
{
  "id": "etsy_list_orders_1",
  "type": "etsy.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "was_paid": "true",
    "was_shipped": "false",
    "limit": 25
  }
}

baselinker.add_product β€” BaseLinker: Dodaj produkt ​

Dodaj produkt do katalogu BaseLinker (wieloplatformowy).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
inventory_idstringYesnoneID magazynu BaseLinker
skustringYesnone
namestringYesnone
price_bruttonumberYesnone
quantitynumberYes0
description_htmlstringNonone
imagesjsonNonone
featuresjsonNonone
json
{
  "id": "baselinker_add_product_1",
  "type": "baselinker.add_product",
  "position": [
    250,
    150
  ],
  "params": {
    "inventory_id": "<value>",
    "sku": "<value>",
    "name": "<value>",
    "price_brutto": "<value>"
  }
}

baselinker.update_stock β€” BaseLinker: Aktualizuj stan ​

Aktualizuj iloΕ›Δ‡ sztuk SKU w magazynie BaseLinker.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
inventory_idstringYesnone
skustringYesnone
quantitynumberYesnone
json
{
  "id": "baselinker_update_stock_1",
  "type": "baselinker.update_stock",
  "position": [
    250,
    150
  ],
  "params": {
    "inventory_id": "<value>",
    "sku": "<value>",
    "quantity": "<value>"
  }
}

baselinker.publish_to_marketplace β€” BaseLinker: Wystaw na marketplace ​

Jednym klikniΔ™ciem wystaw produkt na Allegro/Amazon/eBay przez BaseLinker.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
inventory_idstringYesnone
skustringYesnone
marketplaceoptionsYesnone
Options: allegro, amazon, ebay, empik, erli (+1 more)
marketplace_paramsjsonNononePlatform-specific override (category_id, shipping, …)
json
{
  "id": "baselinker_publish_to_marketplace_1",
  "type": "baselinker.publish_to_marketplace",
  "position": [
    250,
    150
  ],
  "params": {
    "inventory_id": "<value>",
    "sku": "<value>",
    "marketplace": "<value>"
  }
}

baselinker.list_orders β€” BaseLinker: Pobierz zamΓ³wienia ​

Pobierz zamΓ³wienia z BaseLinker (wszystkie kanaΕ‚y).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
status_idstringNononeOpcjonalny filtr statusu
json
{
  "id": "baselinker_list_orders_1",
  "type": "baselinker.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7
  }
}

ceneo.upload_feed β€” Ceneo: PrzeΕ›lij feed XML ​

WyΕ›lij plik XML z ofertami do Ceneo (price comparison).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
feed_urlstringYesnoneURL publicznego pliku XML (Ceneo pobiera cyklicznie)
formatoptionsNoceneo
Options: ceneo, google_shopping, custom
json
{
  "id": "ceneo_upload_feed_1",
  "type": "ceneo.upload_feed",
  "position": [
    250,
    150
  ],
  "params": {
    "feed_url": "<value>",
    "format": "ceneo"
  }
}

ceneo.list_orders β€” Ceneo: Pobierz zamΓ³wienia (KupujΔ™) ​

Pobierz zamΓ³wienia z Ceneo KupujΔ™ (marketplace).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
statusoptionsNopending
Options: any, pending, confirmed, shipped, cancelled
json
{
  "id": "ceneo_list_orders_1",
  "type": "ceneo.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "status": "pending"
  }
}

ceneo.update_order_status β€” Ceneo: Aktualizuj status zamΓ³wienia ​

ZmieΕ„ status (shipped/cancelled) w Ceneo KupujΔ™.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
order_idstringYesnone
statusoptionsYesnone
Options: confirmed, shipped, delivered, cancelled
tracking_numberstringNononeNumer przewozowy (dla shipped)
courierstringNononeNp. DPD, InPost, DHL, Poczta Polska
json
{
  "id": "ceneo_update_order_status_1",
  "type": "ceneo.update_order_status",
  "position": [
    250,
    150
  ],
  "params": {
    "order_id": "<value>",
    "status": "<value>"
  }
}

ceneo.price_compare β€” Ceneo: PorΓ³wnaj cenΔ™ ​

Pobierz ceny konkurencji dla danego EAN / nazwy produktu.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
eanstringNononeKod EAN/GTIN produktu
product_namestringNononeAlternatywnie: nazwa
top_nnumberNo10Ile ofert zwrócić
json
{
  "id": "ceneo_price_compare_1",
  "type": "ceneo.price_compare",
  "position": [
    250,
    150
  ],
  "params": {
    "top_n": 10
  }
}

ebay.create_listing β€” eBay: Create Listing ​

Create a new fixed-price or auction listing on eBay.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
marketplace_idstringYesnonenp. EBAY_US, EBAY_DE, EBAY_PL
skustringYesnone
titlestringYesnone
description_htmlstringYesnone
pricenumberYesnone
currencystringNoEUR
quantitynumberYes1
category_idstringYesnoneeBay category ID (np. 9355)
conditionoptionsNoNEW
Options: NEW, NEW_OTHER, USED_EXCELLENT, USED_GOOD, USED_ACCEPTABLE (+1 more)
imagesjsonNononeArray of image URLs
fulfillment_policy_idstringYesnone
payment_policy_idstringYesnone
return_policy_idstringYesnone
json
{
  "id": "ebay_create_listing_1",
  "type": "ebay.create_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "marketplace_id": "<value>",
    "sku": "<value>",
    "title": "<value>",
    "description_html": "<value>"
  }
}

ebay.update_listing β€” eBay: Update Listing ​

Update eBay listing price / quantity / fields.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
listing_idstringYesnone
fieldsjsonYesnone
json
{
  "id": "ebay_update_listing_1",
  "type": "ebay.update_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "listing_id": "<value>",
    "fields": "<value>"
  }
}

ebay.list_orders β€” eBay: List Orders ​

Fetch recent eBay orders (Fulfillment API).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
order_statusoptionsNoACTIVE
Options: ACTIVE, CANCELLED, COMPLETED, IN_PROGRESS
json
{
  "id": "ebay_list_orders_1",
  "type": "ebay.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "order_status": "ACTIVE"
  }
}

ebay.ship_order β€” eBay: Mark Shipped ​

Create shipment fulfillment with tracking info.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
order_idstringYesnone
tracking_numberstringYesnone
carrierstringYesnonenp. DHL, FEDEX, UPS, USPS, DPD, GLS
line_itemsjsonNononeItems to fulfill: [{lineItemId, quantity}, …]
json
{
  "id": "ebay_ship_order_1",
  "type": "ebay.ship_order",
  "position": [
    250,
    150
  ],
  "params": {
    "order_id": "<value>",
    "tracking_number": "<value>",
    "carrier": "<value>"
  }
}

empik.create_offer β€” Empik: Wystaw ofertΔ™ ​

UtwΓ³rz nowΔ… ofertΔ™ w Empik Marketplace (wymaga BaseLinker/Mirakl).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
product_idstringYesnoneEmpik product ID (lub EAN)
pricenumberYesnone
quantitynumberYes1
conditionoptionsNoNEW
Options: NEW, USED_GOOD, USED_NEW
shipping_typestringNononenp. standard, express
json
{
  "id": "empik_create_offer_1",
  "type": "empik.create_offer",
  "position": [
    250,
    150
  ],
  "params": {
    "product_id": "<value>",
    "price": "<value>",
    "quantity": 1,
    "condition": "NEW"
  }
}

empik.list_orders β€” Empik: Pobierz zamΓ³wienia ​

Pobierz zamΓ³wienia z Empik Marketplace.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
statusoptionsNoWAITING_ACCEPTANCE
Options: PENDING, WAITING_ACCEPTANCE, SHIPPING, SHIPPED, RECEIVED (+2 more)
json
{
  "id": "empik_list_orders_1",
  "type": "empik.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "status": "WAITING_ACCEPTANCE"
  }
}

olx.create_ad β€” OLX: Wystaw ogΕ‚oszenie ​

UtwΓ³rz ogΕ‚oszenie na OLX.pl.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesnoneTytuΕ‚ (max 70 zn.)
descriptionstringYesnone
pricenumberYesnone
category_idstringYesnoneID kategorii OLX
citystringYesnone
imagesjsonNononeDo 8 URL-i zdjΔ™Δ‡
advertiser_typeoptionsNobusiness
Options: private, business
json
{
  "id": "olx_create_ad_1",
  "type": "olx.create_ad",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "<value>",
    "description": "<value>",
    "price": "<value>",
    "category_id": "<value>"
  }
}

olx.list_messages β€” OLX: Pobierz wiadomoΕ›ci ​

Pobierz wiadomoΕ›ci od kupujΔ…cych (dla obsΕ‚ugi).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
unread_onlybooleanNoTrue
limitnumberNo50
json
{
  "id": "olx_list_messages_1",
  "type": "olx.list_messages",
  "position": [
    250,
    150
  ],
  "params": {
    "unread_only": true,
    "limit": 50
  }
}

erli.create_listing β€” Erli: Wystaw ofertΔ™ ​

Wystaw ofertΔ™ w Erli (PL marketplace bez prowizji).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesnone
category_idstringYesnone
pricenumberYesnone
quantitynumberYes1
description_htmlstringYesnone
imagesjsonNonone
eanstringNononeKod EAN (zalecane)
json
{
  "id": "erli_create_listing_1",
  "type": "erli.create_listing",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "<value>",
    "category_id": "<value>",
    "price": "<value>",
    "quantity": 1
  }
}

erli.list_orders β€” Erli: Pobierz zamΓ³wienia ​

Pobierz zamΓ³wienia z Erli.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
statusoptionsNonew
Options: new, processing, shipped, completed, cancelled
json
{
  "id": "erli_list_orders_1",
  "type": "erli.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "status": "new"
  }
}

zalando.create_article β€” Zalando: Create Article ​

Submit a fashion article to Zalando Partner Connect (ZDT).

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
eanstringYesnoneGTIN/EAN (required)
article_config_idstringYesnone
namestringYesnone
pricenumberYesnone
currencystringNoEUR
imagesjsonNononeMin. 4 images, up to 8
attributesjsonNononeZalando attribute schema per category
json
{
  "id": "zalando_create_article_1",
  "type": "zalando.create_article",
  "position": [
    250,
    150
  ],
  "params": {
    "ean": "<value>",
    "article_config_id": "<value>",
    "name": "<value>",
    "price": "<value>"
  }
}

zalando.update_stock β€” Zalando: Update Stock ​

Update stock level in Zalando Partner Connect.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
eanstringYesnone
quantitynumberYesnone
json
{
  "id": "zalando_update_stock_1",
  "type": "zalando.update_stock",
  "position": [
    250,
    150
  ],
  "params": {
    "ean": "<value>",
    "quantity": "<value>"
  }
}

zalando.list_orders β€” Zalando: List Orders ​

Fetch recent Zalando orders.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
order_statusoptionsNoACCEPTED
Options: CREATED, ACCEPTED, SHIPPED, DELIVERED, CANCELLED
json
{
  "id": "zalando_list_orders_1",
  "type": "zalando.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "order_status": "ACCEPTED"
  }
}

kaufland.create_offer β€” Kaufland: Create Offer ​

Create an offer in Kaufland Global Marketplace.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
eanstringYesnone
pricenumberYesnone
quantitynumberYes1
delivery_time_minstringNo1
delivery_time_maxstringNo3
conditionoptionsNoNEW
Options: NEW, USED_LIKE_NEW, USED_VERY_GOOD, USED_GOOD, USED_ACCEPTABLE
json
{
  "id": "kaufland_create_offer_1",
  "type": "kaufland.create_offer",
  "position": [
    250,
    150
  ],
  "params": {
    "ean": "<value>",
    "price": "<value>",
    "quantity": 1,
    "delivery_time_min": "1"
  }
}

kaufland.list_orders β€” Kaufland: List Orders ​

Fetch recent Kaufland orders.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
daysnumberNo7
statusoptionsNoopen
Options: open, shipped, delivered, canceled
json
{
  "id": "kaufland_list_orders_1",
  "type": "kaufland.list_orders",
  "position": [
    250,
    150
  ],
  "params": {
    "days": 7,
    "status": "open"
  }
}

stripe.create_checkout β€” Stripe: Create Checkout ​

Create a Checkout Session and return the URL.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
line_itemsjsonYesnoneStripe line_items array
success_urlstringYesnone
cancel_urlstringYesnone
modeoptionsNopayment
Options: payment, subscription
json
{
  "id": "stripe_create_checkout_1",
  "type": "stripe.create_checkout",
  "position": [
    250,
    150
  ],
  "params": {
    "line_items": "<value>",
    "success_url": "<value>",
    "cancel_url": "<value>",
    "mode": "payment"
  }
}

stripe.list_customers β€” Stripe: List Customers ​

Paginate through Stripe customers.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
emailstringNononeFilter by email
limitnumberNo20
json
{
  "id": "stripe_list_customers_1",
  "type": "stripe.list_customers",
  "position": [
    250,
    150
  ],
  "params": {
    "limit": 20
  }
}

mailchimp.add_subscriber β€” Mailchimp: Add Subscriber ​

Add or update a subscriber in a list.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
list_idstringYesnone
emailstringYesnone
merge_fieldsjsonNonone
double_optinbooleanNoTrue
json
{
  "id": "mailchimp_add_subscriber_1",
  "type": "mailchimp.add_subscriber",
  "position": [
    250,
    150
  ],
  "params": {
    "list_id": "<value>",
    "email": "<value>",
    "double_optin": true
  }
}

☁️ Cloud Storage & Asset Delivery ​

Total Nodes: 10 | Category Identifier: storage

Secure asset management and Bring-Your-Own-Bucket (BYOB) delivery: FotoHub Gallery, AWS S3 (multipart upload and presigned URLs), Cloudflare R2 (zero egress fees), Google Cloud Storage, Dropbox, and Microsoft OneDrive.

Enterprise Use Case: Archiving high-resolution 4K master video files directly to an enterprise AWS S3 bucket while serving optimized WebP thumbnails from Cloudflare R2.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
storage.dropbox_uploadDropbox: UploadIn: main
Out: main, error
edge_fnfree
storage.dropbox_listDropbox: List FolderIn: main
Out: main, error
edge_fnfree
storage.onedrive_uploadOneDrive: UploadIn: main
Out: main, error
edge_fnfree
storage.s3_putAWS S3: Put ObjectIn: main
Out: main, error
edge_fnfree
storage.s3_get_urlAWS S3: Get Signed URLIn: main
Out: main, error
edge_fnfree
storage.r2_putCloudflare R2: Put ObjectIn: main
Out: main, error
edge_fnfree
fotohub.files.saveFotoHub Files: Save FileIn: main
Out: main, error
builtinfree
fotohub.bucket.uploadFOTOhub: Zapisz do Bucket S3In: main
Out: main, error
builtinfree
fotohub.files.getFotoHub Files: Get FileIn: main
Out: main, error
builtinfree
fotohub.bucket.downloadFOTOhub: Pobierz z Bucket S3In: main
Out: main, error
builtinfree

Node Specifications (Cloud Storage & Asset Delivery) ​

storage.dropbox_upload β€” Dropbox: Upload ​

Upload a file URL to Dropbox.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
file_urlstringYesnone
target_pathstringYesnone
json
{
  "id": "storage_dropbox_upload_1",
  "type": "storage.dropbox_upload",
  "position": [
    250,
    150
  ],
  "params": {
    "file_url": "<value>",
    "target_path": "<value>"
  }
}

storage.dropbox_list β€” Dropbox: List Folder ​

List files in a Dropbox folder.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
folder_pathstringNo/
json
{
  "id": "storage_dropbox_list_1",
  "type": "storage.dropbox_list",
  "position": [
    250,
    150
  ],
  "params": {
    "folder_path": "/"
  }
}

storage.onedrive_upload β€” OneDrive: Upload ​

Upload a file URL to OneDrive.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
file_urlstringYesnone
target_pathstringYesnone
json
{
  "id": "storage_onedrive_upload_1",
  "type": "storage.onedrive_upload",
  "position": [
    250,
    150
  ],
  "params": {
    "file_url": "<value>",
    "target_path": "<value>"
  }
}

storage.s3_put β€” AWS S3: Put Object ​

Upload a file URL to an S3 bucket.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
bucketstringYesnone
keystringYesnone
file_urlstringYesnone
content_typestringNonone
json
{
  "id": "storage_s3_put_1",
  "type": "storage.s3_put",
  "position": [
    250,
    150
  ],
  "params": {
    "bucket": "<value>",
    "key": "<value>",
    "file_url": "<value>"
  }
}

storage.s3_get_url β€” AWS S3: Get Signed URL ​

Create a pre-signed GET URL for an S3 object.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
bucketstringYesnone
keystringYesnone
json
{
  "id": "storage_s3_get_url_1",
  "type": "storage.s3_get_url",
  "position": [
    250,
    150
  ],
  "params": {
    "bucket": "<value>",
    "key": "<value>"
  }
}

storage.r2_put β€” Cloudflare R2: Put Object ​

Upload a file URL to R2.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
bucketstringYesnone
keystringYesnone
file_urlstringYesnone
json
{
  "id": "storage_r2_put_1",
  "type": "storage.r2_put",
  "position": [
    250,
    150
  ],
  "params": {
    "bucket": "<value>",
    "key": "<value>",
    "file_url": "<value>"
  }
}

fotohub.files.save β€” FotoHub Files: Save File ​

Persist an asset into FotoHub secure project storage.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
file_urlstringNonone
namestringNoplik-agenta.png
folder_idstringNonone
json
{
  "id": "fotohub_files_save_1",
  "type": "fotohub.files.save",
  "position": [
    250,
    150
  ],
  "params": {
    "name": "plik-agenta.png"
  }
}

fotohub.bucket.upload β€” FOTOhub: Zapisz do Bucket S3 ​

Zapisz obiekt w Twoim prywatnym buckecie S3 w chmurze FOTOhub.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
bucket_namestringYesnone
keystringYesnone
file_urlstringNonone
json
{
  "id": "fotohub_bucket_upload_1",
  "type": "fotohub.bucket.upload",
  "position": [
    250,
    150
  ],
  "params": {
    "bucket_name": "<value>",
    "key": "<value>"
  }
}

fotohub.files.get β€” FotoHub Files: Get File ​

Download or reference an asset from FotoHub storage bucket.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
file_idstringNonone
file_pathstringNonone
json
{
  "id": "fotohub_files_get_1",
  "type": "fotohub.files.get",
  "position": [
    250,
    150
  ],
  "params": {}
}

fotohub.bucket.download β€” FOTOhub: Pobierz z Bucket S3 ​

Generuje bezpieczny URL dostΔ™powy do obiektu w Twoim prywatnym buckecie S3.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
bucket_namestringYesnone
keystringYesnone
json
{
  "id": "fotohub_bucket_download_1",
  "type": "fotohub.bucket.download",
  "position": [
    250,
    150
  ],
  "params": {
    "bucket_name": "<value>",
    "key": "<value>"
  }
}

πŸ”€ Flow Logic & Data Transformation ​

Total Nodes: 15 | Category Identifier: logic

Deterministic execution control and data manipulation: If/Else conditional branching, multi-case Switch, While/ForEach loops, math aggregations (SUM, AVG, MIN, MAX, COUNT), array sorting, deduplication, and JMESPath JSON restructuring.

Enterprise Use Case: Filtering a batch of 100 generated images, retaining only the top 5 highest-rated candidates, and sorting them descending by aesthetic score.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
logic.ifIfIn: main
Out: true, false
builtinFree (0 credits)
logic.switchSwitchIn: main
Out: default, case_1, case_2, case_3, case_4
builtinFree (0 credits)
logic.mergeMergeIn: in_1, in_2, in_3
Out: main
builtinFree (0 credits)
logic.delayDelayIn: main
Out: main
builtinfree
data.setSet FieldsIn: main
Out: main
builtinfree
data.filterFilterIn: main
Out: main
builtinfree
data.mapMapIn: main
Out: main
builtinfree
logic.approveApproval RequiredIn: main
Out: approved, rejected
builtinfree
logic.loopLoop over ItemsIn: main
Out: item, done
builtinfree
logic.parallelParallel BranchesIn: main
Out: out_1, out_2, out_3, out_4
builtinfree
data.aggregateAggregateIn: main
Out: main
builtinfree
data.sortSortIn: main
Out: main
builtinfree
data.uniqueUniqueIn: main
Out: main
builtinfree
data.transformJMESPath TransformIn: main
Out: main
builtinfree
logic.switch_exprSwitch (Expression)In: main
Out: case_a, case_b, case_c, default
builtinfree

Node Specifications (Flow Logic & Data Transformation) ​

logic.if β€” If ​

Branch the flow on a condition.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: true (main), false (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
conditionstringYesnoneExpression that must evaluate to truthy
json
{
  "id": "logic_if_1",
  "type": "logic.if",
  "position": [
    250,
    150
  ],
  "params": {
    "condition": "<value>"
  }
}

logic.switch β€” Switch ​

Route to one of many branches by value.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: default (main), case_1 (main), case_2 (main), case_3 (main), case_4 (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
valuestringYesnone
casesjsonNo[{'match': 'active', 'port': 'case_1'}, {'match': 'pending', 'port': 'case_2'}]Array of {match, port}.
default_portstringNodefault
json
{
  "id": "logic_switch_1",
  "type": "logic.switch",
  "position": [
    250,
    150
  ],
  "params": {
    "value": "<value>",
    "cases": [
      {
        "match": "active",
        "port": "case_1"
      },
      {
        "match": "pending",
        "port": "case_2"
      }
    ],
    "default_port": "default"
  }
}

logic.merge β€” Merge ​

Combine multiple branches into one flow.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: in_1 (main), in_2 (main), in_3 (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
strategyoptionsNomerge_objects
Options: merge_objects, concat_arrays, wait_all
json
{
  "id": "logic_merge_1",
  "type": "logic.merge",
  "position": [
    250,
    150
  ],
  "params": {
    "strategy": "merge_objects"
  }
}

logic.delay β€” Delay ​

Pause the run for N seconds.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
secondsnumberNo5
json
{
  "id": "logic_delay_1",
  "type": "logic.delay",
  "position": [
    250,
    150
  ],
  "params": {
    "seconds": 5
  }
}

data.set β€” Set Fields ​

Add or override fields on the data flowing through.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
fieldsjsonNo{}
keep_inputbooleanNoTrue
json
{
  "id": "data_set_1",
  "type": "data.set",
  "position": [
    250,
    150
  ],
  "params": {
    "fields": {},
    "keep_input": true
  }
}

data.filter β€” Filter ​

Keep only items matching a condition (JMESPath).

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
items_pathstringNo$.items
predicate_pathstringNonone
json
{
  "id": "data_filter_1",
  "type": "data.filter",
  "position": [
    250,
    150
  ],
  "params": {
    "items_path": "$.items"
  }
}

data.map β€” Map ​

Transform each item using a template.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
items_pathstringNo$.items
templatejsonNo{'id': '$.id', 'name': '$.name'}
json
{
  "id": "data_map_1",
  "type": "data.map",
  "position": [
    250,
    150
  ],
  "params": {
    "items_path": "$.items",
    "template": {
      "id": "$.id",
      "name": "$.name"
    }
  }
}

logic.approve β€” Approval Required ​

Pause the run until a user explicitly approves or rejects.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: approved (main), rejected (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
titlestringYesPlease review
messagestringNonone
timeout_hoursnumberNo24
json
{
  "id": "logic_approve_1",
  "type": "logic.approve",
  "position": [
    250,
    150
  ],
  "params": {
    "title": "Please review",
    "timeout_hours": 24
  }
}

logic.loop β€” Loop over Items ​

Execute downstream nodes once per item.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: item (main), done (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
items_pathstringNo$.items
max_iterationsnumberNo1000
modeoptionsNosequential
Options: sequential, parallel
json
{
  "id": "logic_loop_1",
  "type": "logic.loop",
  "position": [
    250,
    150
  ],
  "params": {
    "items_path": "$.items",
    "max_iterations": 1000,
    "mode": "sequential"
  }
}

logic.parallel β€” Parallel Branches ​

Run multiple branches concurrently and wait for all.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: out_1 (main), out_2 (main), out_3 (main), out_4 (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
wait_fornumberNo00 = all
json
{
  "id": "logic_parallel_1",
  "type": "logic.parallel",
  "position": [
    250,
    150
  ],
  "params": {
    "wait_for": 0
  }
}

data.aggregate β€” Aggregate ​

Sum / avg / min / max / count over an array path.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
items_pathstringNo$.items
field_pathstringNonone
opoptionsNocount
Options: sum, avg, min, max, count
json
{
  "id": "data_aggregate_1",
  "type": "data.aggregate",
  "position": [
    250,
    150
  ],
  "params": {
    "items_path": "$.items",
    "op": "count"
  }
}

data.sort β€” Sort ​

Sort items by a field.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
items_pathstringNo$.items
field_pathstringYesnone
orderoptionsNoasc
Options: asc, desc
json
{
  "id": "data_sort_1",
  "type": "data.sort",
  "position": [
    250,
    150
  ],
  "params": {
    "items_path": "$.items",
    "field_path": "<value>",
    "order": "asc"
  }
}

data.unique β€” Unique ​

Deduplicate items by a field.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
items_pathstringNo$.items
field_pathstringNononeIf empty, full-item equality.
json
{
  "id": "data_unique_1",
  "type": "data.unique",
  "position": [
    250,
    150
  ],
  "params": {
    "items_path": "$.items"
  }
}

data.transform β€” JMESPath Transform ​

Apply any JMESPath expression to produce a new structure.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
expressionstringYesnone
json
{
  "id": "data_transform_1",
  "type": "data.transform",
  "position": [
    250,
    150
  ],
  "params": {
    "expression": "<value>"
  }
}

logic.switch_expr β€” Switch (Expression) ​

Route by a free-form expression evaluated once.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: case_a (main), case_b (main), case_c (main), default (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
valuestringYesnone
mapjsonNo{'active': 'case_a', 'pending': 'case_b', 'done': 'case_c'}
json
{
  "id": "logic_switch_expr_1",
  "type": "logic.switch_expr",
  "position": [
    250,
    150
  ],
  "params": {
    "value": "<value>",
    "map": {
      "active": "case_a",
      "pending": "case_b",
      "done": "case_c"
    }
  }
}

πŸ“₯ Workflow Input & Output Boundaries ​

Total Nodes: 2 | Category Identifier: io

Entry-point parameter parsing, schema validation, and standardized workflow completion summaries.

Enterprise Use Case: Accepting initial client request payloads from web forms and packaging output CDN URLs for synchronous API responses.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
io.input_jsonJSON InputIn: main
Out: main
builtinfree
io.output_saveSave OutputIn: main
Out: main
builtinfree

Node Specifications (Workflow Input & Output Boundaries) ​

io.input_json β€” JSON Input ​

Start the flow with a literal JSON object.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
datajsonNo{}
json
{
  "id": "io_input_json_1",
  "type": "io.input_json",
  "position": [
    250,
    150
  ],
  "params": {
    "data": {}
  }
}

io.output_save β€” Save Output ​

Store a JSON or binary result to Supabase Storage and record the URL.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
bucketoptionsNoagent-outputs
Options: photos, videos, audio, documents, agent-outputs
pathstringNonone
publicbooleanNoFalse
json
{
  "id": "io_output_save_1",
  "type": "io.output_save",
  "position": [
    250,
    150
  ],
  "params": {
    "bucket": "agent-outputs",
    "public": false
  }
}

⌨️ Secure Code Sandboxes ​

Total Nodes: 2 | Category Identifier: code

Isolated, resource-constrained execution sandboxes for Python (with NumPy, Pillow, Requests) and JavaScript (V8 engine) with strict CPU, memory, and timeout bounds.

Enterprise Use Case: Custom pricing calculations, parsing complex supplier XML/CSV feeds, or computing custom image aspect transformations.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
code.jsCode (JavaScript)In: main
Out: main, error
code_jsfree
code.pythonCode (Python)In: main
Out: main, error
code_pythonper_minute

Node Specifications (Secure Code Sandboxes) ​

code.js β€” Code (JavaScript) ​

Run a JavaScript snippet in a Deno sandbox (no network/fs).

  • Executor Runtime: code_js

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
codestringYesnone
timeout_snumberNo10
json
{
  "id": "code_js_1",
  "type": "code.js",
  "position": [
    250,
    150
  ],
  "params": {
    "code": "<value>",
    "timeout_s": 10
  }
}

code.python β€” Code (Python) ​

Run a Python snippet in a sandboxed microVM (NumPy / Pandas / Pillow available).

  • Executor Runtime: code_python

  • Required Tier: FREE

  • Execution Cost: per_minute

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
codestringYesnone
timeout_snumberNo30
memory_mbnumberNo512
json
{
  "id": "code_python_1",
  "type": "code.python",
  "position": [
    250,
    150
  ],
  "params": {
    "code": "<value>",
    "timeout_s": 30,
    "memory_mb": 512
  }
}

🌐 HTTP & REST API Client ​

Total Nodes: 1 | Category Identifier: http

Universal REST client supporting GET, POST, PUT, DELETE, and PATCH with custom headers, Bearer/Basic authentication, retry policies, and timeout guards.

Enterprise Use Case: Fetching real-time exchange rates from external banking APIs or sending event webhooks to enterprise ERP systems.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
http.requestHTTP RequestIn: main
Out: main, error
edge_fnfree

Node Specifications (HTTP & REST API Client) ​

http.request β€” HTTP Request ​

Call any URL. Supports auth, pagination, retries. User-provided URLs go through an SSRF-safe egress.

  • Executor Runtime: edge_fn

  • Required Tier: FREE

  • Execution Cost: free

  • Input Ports: main (main)

  • Output Ports: main (main), error (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
methodoptionsNoGET
Options: GET, POST, PUT, PATCH, DELETE
urlstringYesnone
headersjsonNo{}
queryjsonNo{}
bodyjsonNo{}
body_formatoptionsNojson
Options: json, form, text, none
auth_typeoptionsNonone
Options: none, bearer, basic, api_key, oauth2
json
{
  "id": "http_request_1",
  "type": "http.request",
  "position": [
    250,
    150
  ],
  "params": {
    "method": "GET",
    "url": "<value>",
    "headers": {},
    "query": {}
  }
}

πŸ›‘οΈ System Safeguards & Rollback ​

Total Nodes: 1 | Category Identifier: system

Workflow configuration snapshots and automated rollback safeguards that restore previous stable states when runtime anomalies are detected.

Enterprise Use Case: Protecting production sales bots from configuration drift by rolling back automatically if error rates surge above 2%.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
system.version_snapshotSystem: Version SnapshotIn: in
Out: main, rollback
builtinFree (0 credits)

Node Specifications (System Safeguards & Rollback) ​

system.version_snapshot β€” System: Version Snapshot ​

Create a configuration snapshot for rollback safeguards.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: in (any)

  • Output Ports: main (any), rollback (any)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
snapshot_tagstringNov1.0-checkpointUnikalna nazwa punktu kontrolnego.
auto_rollback_on_failurebooleanNoTrueCzy automatycznie wycofać zmiany w przypadku awarii kolejnego węzła.
json
{
  "id": "system_version_snapshot_1",
  "type": "system.version_snapshot",
  "position": [
    250,
    150
  ],
  "params": {
    "snapshot_tag": "v1.0-checkpoint",
    "auto_rollback_on_failure": true
  }
}

πŸ› οΈ Developer Inspection Tooling ​

Total Nodes: 1 | Category Identifier: developer

Inspection utilities, execution mock environments, and interactive test harnesses for developing and debugging custom agent logic.

Enterprise Use Case: Simulating external API responses and edge function executions during workflow prototyping without incurring third-party API costs.

Category Summary Table ​

Node Type (type)Display NamePorts (In / Out)RuntimeCost Model
ai.code_sandbox_execPiaskownica Kodu (Python / JS Sandbox)In: main
Out: main
builtinFree (0 credits)

Node Specifications (Developer Inspection Tooling) ​

ai.code_sandbox_exec β€” Piaskownica Kodu (Python / JS Sandbox) ​

Wykonuje bezpieczny skrypt transformacji danych, kalkulacji matematycznych i formatowania JSON w izolowanym Ε›rodowisku.

  • Executor Runtime: builtin

  • Required Tier: FREE

  • Execution Cost: Free (0 credits)

  • Input Ports: main (main)

  • Output Ports: main (main)

Configuration Parameters (params):

ParameterTypeRequiredDefaultDescription / Allowed Values
languageoptionsNopython
Options: python, javascript
codestringNo`# WejΕ›cie dostΔ™pne pod zmiennΔ…: input_data

Wynik przypisz do: output_data ​

output_data = {'status': 'processed', 'data': input_data}| | |timeout_ms|number| No |3000` | |

json
{
  "id": "ai_code_sandbox_exec_1",
  "type": "ai.code_sandbox_exec",
  "position": [
    250,
    150
  ],
  "params": {
    "language": "python",
    "code": "# Wej\u015bcie dost\u0119pne pod zmienn\u0105: input_data\n# Wynik przypisz do: output_data\noutput_data = {'status': 'processed', 'data': input_data}",
    "timeout_ms": 3000
  }
}

Production Pipeline Recipes ​

These battle-tested DAG orchestrations demonstrate how specialized nodes interconnect into autonomous business pipelines.

Recipe 1: E-Commerce Content Automation (Packshot βž” 3D Studio Mockup βž” Allegro & Instagram) ​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ trigger.webhook │────▢│ fotohub.image.remove_bg│────▢│ fotohub.creative.mockup β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                                   β”‚
                        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                        β–Ό                                                          β–Ό
             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
             β”‚ allegro.create_listingβ”‚                                  β”‚social.publish_instagram_reβ”‚
             β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

This workflow receives raw product images via Webhook, eliminates background clutter using alpha matting, composes the product into a photorealistic 3D studio scene with physically accurate lighting, and concurrently publishes the commercial listing on Allegro and promotional Reel on Instagram.

Recipe 2: Viral Short-Form Video Engine with Auto-Clipper & Karaoke Captions ​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ trigger.schedule │────▢│ fotohub.shorts.clip_auto│────▢│ fotohub.shorts.subtitles_karaβ”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                                        β”‚
                                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                 β–Ό
                      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                      β”‚ fotohub.shorts.add_bumper  │────▢│ fotohub.social.cross_publish β”‚
                      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Runs on a daily schedule: fetches the latest webinar or podcast recording, pinpoints high-engagement segments using AI clipping, overlays dynamic karaoke subtitles (MrBeast / Hormozi style), attaches brand intro/outro bumpers, and broadcasts to TikTok, YouTube Shorts, and Instagram Reels simultaneously.

Recipe 3: Multi-Agent Consensus Swarm with Self-Healing ​

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  core_io.input   │────▢│  agent.swarm_fanout │────▢│   agent.consensus_aggregate   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                                     β”‚
                                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                     β–Ό
                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚  agent.critique_loop  │────▢│      agent.self_healing       β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Dispatches prompts to 3 distinct LLM personas in parallel. The consensus node evaluates answers based on confidence weighting and quorum rules, passes the winning strategy into a critique loop, and automatically heals execution anomalies before producing the final decision.