Skip to content
FLORA DocsGo to app

Get a technique run

client.Techniques.Runs.Get(ctx, runID, query) (*TechniqueRunGetResponse, error)
GET/techniques/{techniqueId}/runs/{runId}

Returns status, progress, outputs, and error details for a technique run when it is accessible to the authenticated public API key.

ParametersExpand Collapse
runID string

Run identifier

query TechniqueRunGetParams
TechniqueID param.Field[string]

Technique identifier or slug

minLength1
ReturnsExpand Collapse
type TechniqueRunGetResponse struct{…}
CreatedAt float64
Progress float64
RunID string

Run identifier

Status TechniqueRunGetResponseStatus
One of the following:
const TechniqueRunGetResponseStatusPending TechniqueRunGetResponseStatus = "pending"
const TechniqueRunGetResponseStatusRunning TechniqueRunGetResponseStatus = "running"
const TechniqueRunGetResponseStatusCompleted TechniqueRunGetResponseStatus = "completed"
const TechniqueRunGetResponseStatusFailed TechniqueRunGetResponseStatus = "failed"
ChargedCost float64Optional
CompletedAt float64Optional
ErrorCode stringOptional

Machine-readable run error code

ErrorMessage stringOptional

Human-readable run error message

Outputs []TechniqueRunGetResponseOutputOptional
OutputID string

Run output identifier

Type string

Run output media type

One of the following:
const TechniqueRunGetResponseOutputTypeImageURL TechniqueRunGetResponseOutputType = "imageUrl"
const TechniqueRunGetResponseOutputTypeVideoURL TechniqueRunGetResponseOutputType = "videoUrl"
const TechniqueRunGetResponseOutputTypeAudioURL TechniqueRunGetResponseOutputType = "audioUrl"
const TechniqueRunGetResponseOutputTypeText TechniqueRunGetResponseOutputType = "text"
const TechniqueRunGetResponseOutputTypeDocumentURL TechniqueRunGetResponseOutputType = "documentUrl"
URL string

Run output URL

formaturi
PollURL stringOptional
formaturi
StartedAt float64Optional

Get a technique run

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"),
  )
  run, err := client.Techniques.Runs.Get(
    context.TODO(),
    "run_abc123",
    flora.TechniqueRunGetParams{
      TechniqueID: "art-directors-critique",
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", run.RunID)
}
{
  "created_at": 0,
  "progress": 0,
  "run_id": "run_abc123",
  "status": "pending",
  "charged_cost": 0,
  "completed_at": 0,
  "error_code": "provider_error",
  "error_message": "The provider failed to complete the generation.",
  "outputs": [
    {
      "output_id": "output_1",
      "type": "imageUrl",
      "url": "https://media.flora.ai/output.png"
    }
  ],
  "poll_url": "https://example.com",
  "started_at": 0
}
{
  "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
{
  "created_at": 0,
  "progress": 0,
  "run_id": "run_abc123",
  "status": "pending",
  "charged_cost": 0,
  "completed_at": 0,
  "error_code": "provider_error",
  "error_message": "The provider failed to complete the generation.",
  "outputs": [
    {
      "output_id": "output_1",
      "type": "imageUrl",
      "url": "https://media.flora.ai/output.png"
    }
  ],
  "poll_url": "https://example.com",
  "started_at": 0
}
{
  "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."
  }
}