Skip to content
FLORA DocsGo to app

List techniques

client.Techniques.List(ctx, query) (*TechniquesCursorPage[TechniqueListResponse], error)
GET/techniques

Returns reusable Flora techniques visible to the authenticated public API key. Use workspace_id, query, cursor, and limit to filter the catalog.

ParametersExpand Collapse
query TechniqueListParams
Cursor param.Field[string]Optional

Opaque cursor for fetching the next page

Limit param.Field[int64]Optional

Maximum number of results to return

minimum1
maximum100
Query param.Field[string]Optional

Search query

WorkspaceID param.Field[string]Optional

Workspace identifier

ReturnsExpand Collapse
type TechniqueListResponse struct{…}
Inputs []TechniqueListResponseInput
ID string

Technique input or output identifier

Name string

Technique input or output display name

Type string

Technique input or output media type

One of the following:
const TechniqueListResponseInputTypeImageURL TechniqueListResponseInputType = "imageUrl"
const TechniqueListResponseInputTypeVideoURL TechniqueListResponseInputType = "videoUrl"
const TechniqueListResponseInputTypeAudioURL TechniqueListResponseInputType = "audioUrl"
const TechniqueListResponseInputTypeText TechniqueListResponseInputType = "text"
const TechniqueListResponseInputTypeDocumentURL TechniqueListResponseInputType = "documentUrl"
Description stringOptional

Technique input or output description

SpecifiedAspectRatio stringOptional

Required aspect ratio

SpecifiedDuration float64Optional

Required duration in seconds

Name string

Technique name

Outputs []TechniqueListResponseOutput
ID string

Technique input or output identifier

Name string

Technique input or output display name

Type string

Technique input or output media type

One of the following:
const TechniqueListResponseOutputTypeImageURL TechniqueListResponseOutputType = "imageUrl"
const TechniqueListResponseOutputTypeVideoURL TechniqueListResponseOutputType = "videoUrl"
const TechniqueListResponseOutputTypeAudioURL TechniqueListResponseOutputType = "audioUrl"
const TechniqueListResponseOutputTypeText TechniqueListResponseOutputType = "text"
const TechniqueListResponseOutputTypeDocumentURL TechniqueListResponseOutputType = "documentUrl"
Description stringOptional

Technique input or output description

SpecifiedAspectRatio stringOptional

Required aspect ratio

SpecifiedDuration float64Optional

Required duration in seconds

RunCost float64
TechniqueID string

Technique identifier

Description stringOptional

Technique description

List techniques

package main

import (
  "context"
  "fmt"

  "github.com/florafauna-ai/flora-go"
  "github.com/florafauna-ai/flora-go/option"
)

func main() {
  client := flora.NewClient(
    option.WithAPIKey("My API Key"),
  )
  page, err := client.Techniques.List(context.TODO(), flora.TechniqueListParams{

  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", page)
}
{
  "techniques": [
    {
      "technique_id": "tech_art-directors-critique",
      "name": "Art Director's Critique",
      "description": "Analyze, critique, and redesign any creative asset.",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_auto-translate",
      "name": "Auto Translate",
      "description": "Translate text in images instantly",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_book-drop",
      "name": "Book Drop",
      "description": "Mocks up front and back book covers",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_cctv-cam",
      "name": "CCTV Cam",
      "description": "Any face, CCTV style",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_character-lock",
      "name": "Character Lock",
      "description": "One character, 6 different angles",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_cinematic-movie-generator",
      "name": "Cinematic Movie Stills",
      "description": "Generate film-quality scene stills",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_color-mapping",
      "name": "Segment Mapper",
      "description": "Color-codes every element in your image",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_color-transfer",
      "name": "Color Transfer",
      "description": "Apply color grading from any reference",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_earth-zoom-out",
      "name": "Earth Zoom Out",
      "description": "Zoom out to space from any scene",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_facade-swap",
      "name": "Facade Swap",
      "description": "Reskin buildings with new materials",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_fit-checks",
      "name": "Fit Check",
      "description": "Extract outfits & swap onto new looks",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_glam-shots",
      "name": "Glam Shots",
      "description": "Create polished makeup ads instantly",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_icon-pack",
      "name": "Icon Pack",
      "description": "Generate matched icon sets from a prompt",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_live-like-an-amsterdammer",
      "name": "Live like an Amsterdammer",
      "description": "Places you into everyday Amsterdam scenes",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_location-scouter",
      "name": "Location Scout",
      "description": "Scouts five views from a single location",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_logo-stylist",
      "name": "Logo Stylist",
      "description": "Stylize any logo with a new visual twist",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_memoji-me",
      "name": "Memoji Me",
      "description": "Turn any face into a custom memoji",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_moodboard-maker",
      "name": "Mood Board Maker",
      "description": "Eclectic mood board from a photo",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_mugshot",
      "name": "Mugshot",
      "description": "Turn any portrait into a mugshot",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_palette-pull",
      "name": "Palette Pull",
      "description": "Extract color palettes from any image",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_product-animator",
      "name": "Product Animator",
      "description": "Animate your product",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_product-lookbook-grid",
      "name": "Product Lookbook Grid",
      "description": "Turn products into styled grid layouts",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_product-motion",
      "name": "Product Motion",
      "description": "Animate product shots in one click",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_quick-reframe",
      "name": "Layout Resizer",
      "description": "Resize layouts for any aspect ratio",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_relight-technique",
      "name": "Relighting",
      "description": "Relights your photo",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_room-render",
      "name": "Room Render",
      "description": "Turn floor plans into realistic rooms",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_seamless-transition",
      "name": "Seamless Transition",
      "description": "Animate between any two frames",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_sigil",
      "name": "Sigil",
      "description": "Turns any image into an animated glyph",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_sketch-to-garment",
      "name": "Garment Sketch",
      "description": "One sketch, one final garment.",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_studio-blur",
      "name": "Studio Blur",
      "description": "Add pro depth-of-field blur to photos",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_studio-shot",
      "name": "Studio Shot",
      "description": "Turns any product into a studio-lit shoot",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_tarot-pull",
      "name": "Tarot Pull",
      "description": "Custom illustrated tarot card readings",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_texture-matchers",
      "name": "Texture Match",
      "description": "Replicate textures & colors across assets",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_turn-any-product-into-4-ad-visuals",
      "name": "Turn any product into 4 ad visuals",
      "description": "Make a full ad campaign from 1 product",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_ugc-creation",
      "name": "UGC Creator",
      "description": "Casual, phone-shot clips of your product",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_video-scene-builder",
      "name": "Video Scene Builder",
      "description": "Compose video scenes from still assets",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_wireframe",
      "name": "Photo Wireframe",
      "description": "Turn any photo into a clean wireframe",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_wonder-fy",
      "name": "Wonder(fy)",
      "description": "Apply Wonder's cinematic style to images",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    }
  ],
  "meta": {
    "next_cursor": null
  }
}
{
  "error": {
    "code": "input_validation_error",
    "message": "prompt: Required",
    "fields": [
      {
        "field": "prompt",
        "message": "Required"
      }
    ]
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "Invalid API key."
  }
}
{
  "error": {
    "code": "insufficient_credits",
    "message": "Insufficient credits."
  }
}
{
  "error": {
    "code": "forbidden",
    "message": "Forbidden."
  }
}
{
  "error": {
    "code": "not_found",
    "message": "Not found."
  }
}
{
  "error": {
    "code": "idempotency_duplicate",
    "message": "Duplicate idempotency key."
  }
}
{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded."
  }
}
{
  "error": {
    "code": "unknown_error",
    "message": "An unknown error occurred."
  }
}
Returns Examples
{
  "techniques": [
    {
      "technique_id": "tech_art-directors-critique",
      "name": "Art Director's Critique",
      "description": "Analyze, critique, and redesign any creative asset.",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_auto-translate",
      "name": "Auto Translate",
      "description": "Translate text in images instantly",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_book-drop",
      "name": "Book Drop",
      "description": "Mocks up front and back book covers",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_cctv-cam",
      "name": "CCTV Cam",
      "description": "Any face, CCTV style",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_character-lock",
      "name": "Character Lock",
      "description": "One character, 6 different angles",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_cinematic-movie-generator",
      "name": "Cinematic Movie Stills",
      "description": "Generate film-quality scene stills",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_color-mapping",
      "name": "Segment Mapper",
      "description": "Color-codes every element in your image",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_color-transfer",
      "name": "Color Transfer",
      "description": "Apply color grading from any reference",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_earth-zoom-out",
      "name": "Earth Zoom Out",
      "description": "Zoom out to space from any scene",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_facade-swap",
      "name": "Facade Swap",
      "description": "Reskin buildings with new materials",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_fit-checks",
      "name": "Fit Check",
      "description": "Extract outfits & swap onto new looks",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_glam-shots",
      "name": "Glam Shots",
      "description": "Create polished makeup ads instantly",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_icon-pack",
      "name": "Icon Pack",
      "description": "Generate matched icon sets from a prompt",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_live-like-an-amsterdammer",
      "name": "Live like an Amsterdammer",
      "description": "Places you into everyday Amsterdam scenes",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_location-scouter",
      "name": "Location Scout",
      "description": "Scouts five views from a single location",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_logo-stylist",
      "name": "Logo Stylist",
      "description": "Stylize any logo with a new visual twist",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_memoji-me",
      "name": "Memoji Me",
      "description": "Turn any face into a custom memoji",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_moodboard-maker",
      "name": "Mood Board Maker",
      "description": "Eclectic mood board from a photo",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_mugshot",
      "name": "Mugshot",
      "description": "Turn any portrait into a mugshot",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_palette-pull",
      "name": "Palette Pull",
      "description": "Extract color palettes from any image",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_product-animator",
      "name": "Product Animator",
      "description": "Animate your product",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_product-lookbook-grid",
      "name": "Product Lookbook Grid",
      "description": "Turn products into styled grid layouts",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_product-motion",
      "name": "Product Motion",
      "description": "Animate product shots in one click",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_quick-reframe",
      "name": "Layout Resizer",
      "description": "Resize layouts for any aspect ratio",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_relight-technique",
      "name": "Relighting",
      "description": "Relights your photo",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_room-render",
      "name": "Room Render",
      "description": "Turn floor plans into realistic rooms",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_seamless-transition",
      "name": "Seamless Transition",
      "description": "Animate between any two frames",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_sigil",
      "name": "Sigil",
      "description": "Turns any image into an animated glyph",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_sketch-to-garment",
      "name": "Garment Sketch",
      "description": "One sketch, one final garment.",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_studio-blur",
      "name": "Studio Blur",
      "description": "Add pro depth-of-field blur to photos",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_studio-shot",
      "name": "Studio Shot",
      "description": "Turns any product into a studio-lit shoot",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_tarot-pull",
      "name": "Tarot Pull",
      "description": "Custom illustrated tarot card readings",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_texture-matchers",
      "name": "Texture Match",
      "description": "Replicate textures & colors across assets",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_turn-any-product-into-4-ad-visuals",
      "name": "Turn any product into 4 ad visuals",
      "description": "Make a full ad campaign from 1 product",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_ugc-creation",
      "name": "UGC Creator",
      "description": "Casual, phone-shot clips of your product",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_video-scene-builder",
      "name": "Video Scene Builder",
      "description": "Compose video scenes from still assets",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_wireframe",
      "name": "Photo Wireframe",
      "description": "Turn any photo into a clean wireframe",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    },
    {
      "technique_id": "tech_wonder-fy",
      "name": "Wonder(fy)",
      "description": "Apply Wonder's cinematic style to images",
      "run_cost": 0,
      "inputs": [],
      "outputs": []
    }
  ],
  "meta": {
    "next_cursor": null
  }
}
{
  "error": {
    "code": "input_validation_error",
    "message": "prompt: Required",
    "fields": [
      {
        "field": "prompt",
        "message": "Required"
      }
    ]
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "Invalid API key."
  }
}
{
  "error": {
    "code": "insufficient_credits",
    "message": "Insufficient credits."
  }
}
{
  "error": {
    "code": "forbidden",
    "message": "Forbidden."
  }
}
{
  "error": {
    "code": "not_found",
    "message": "Not found."
  }
}
{
  "error": {
    "code": "idempotency_duplicate",
    "message": "Duplicate idempotency key."
  }
}
{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded."
  }
}
{
  "error": {
    "code": "unknown_error",
    "message": "An unknown error occurred."
  }
}