Skip to main content
GET
List active task tags for a flow execution

Authorizations

X-API-Key
string
header
required

API key authentication. Include your API key in the X-API-Key header as: X-API-Key YOUR_API_KEY

Example:

Authorization
string
header
required

JWT Bearer token authentication. Include your access token in the Authorization header as: Bearer YOUR_ACCESS_TOKEN

Example:

Query Parameters

flow_execution_id
string<uuid>
required

Unique identifier of the flow execution to query tags from. Required parameter; returns all active tags for this execution. Combine with task_name to filter to a specific task.

Filtering: Queries automatically scoped to user's organization via RLS. Attempting to access another organization's execution returns 404.

Response: All active tags (status='active') for the execution. Soft-deleted tags (status='deleted') are excluded automatically.

task_name
string | null

Optional task name to filter tags by specific task. Case-sensitive; must match task name exactly as defined in flow YAML. Omit to return tags for all tasks in the flow execution.

Filtering behavior:

  • Specified: Returns only tags for this task_name
  • Omitted: Returns tags for all tasks in flow execution

Combines with flow_execution_id using AND logic.

Example: task_name='extract_data' returns tags only for that task. Useful for checking task-specific workflow states (is task reviewed?).

Required string length: 1 - 200

Response

List of task tags successfully retrieved

flow_execution_id
string<uuid>
required

ID of the flow execution containing the tagged task. Establishes execution context and organization scope. Tags are scoped to flow executions; same task in different executions has independent tag sets. Used for filtering tags by execution.

Example:

"223e4567-e89b-12d3-a456-426614174000"

id
string<uuid>
required

Unique identifier for this tag record. Auto-generated UUID assigned at tag creation. Used for direct tag access and references.

Example:

"123e4567-e89b-12d3-a456-426614174000"

organization_id
string<uuid>
required

ID of organization owning this tag. Inherited from parent flow execution for multi-tenant isolation. Used for Row-Level Security (RLS) filtering and authorization. All tags scoped to single organization; cross-org access forbidden. Queries automatically filtered by user's organization_id.

Example:

"323e4567-e89b-12d3-a456-426614174000"

tag
string
required

Tag value identifying the categorization or state. Free-form string for flexible workflow customization. Case-sensitive; same tag with different case creates separate records. Combined with tag_type for organized categorization.

Common patterns:

  • Workflow: 'reviewed', 'approved', 'rejected', 'pending'
  • Quality: 'quality_checked', 'flagged', 'verified'
  • Priority: 'high', 'medium', 'low'
  • Custom: Domain-specific values
Required string length: 1 - 200
Examples:

"reviewed"

"approved"

"priority_high"

"requires_attention"

tag_type
string
required

Category or classification for the tag value. Groups related tags for filtering and organization in UI/queries. Case-sensitive; use consistent values across organization.

Common types:

  • 'review_status': Workflow states
  • 'quality': Quality assurance flags
  • 'priority': Business priority levels
  • 'approval': Approval workflow states
  • 'custom': Domain-specific categories
Required string length: 1 - 100
Examples:

"review_status"

"quality"

"priority"

"approval"

"custom"

task_name
string
required

Name of the tagged task as defined in flow definition YAML. Case-sensitive identifier matching flow configuration. Tags are attached to task_name within a flow_execution_id. Multiple tags can be attached to the same task.

Required string length: 1 - 200
Examples:

"send_email"

"extract_data"

"validate_document"

created_at
string<date-time> | null

ISO 8601 timestamp when tag was created (UTC). Represents when tag was first added to task execution. NULL for legacy tags created before timestamp tracking. Used for audit trails and chronological sorting.

Example:

"2025-01-24T10:30:00Z"

modified_by
string | null

Identifier of actor who last modified this tag. Tracks who made the last change for auditing purposes.

Values:

  • 'system': System-automated changes (workers, background jobs)
  • User ID: UUID string of the user who made the change (e.g., '123e4567-e89b-12d3-a456-426614174000')
  • Integration type: For service accounts/integrations (e.g., 'integration', 'service-account')

For deleted tags, indicates who performed soft deletion. NULL for tags never modified since creation. Used for audit trails and accountability.

Example:

"123e4567-e89b-12d3-a456-426614174000"

status
string | null

Tag lifecycle status indicating active or deleted state. Valid values: 'active', 'deleted'.

'active': Tag is visible in queries and included in task tag lists. Default state for newly created tags.

'deleted': Tag soft-deleted; excluded from list queries. Preserves audit trail (who deleted, when) without hard deletion.

Soft-delete rationale: Audit compliance requires deletion history.

Note: Only 'active' tags returned by GET /task-tags endpoint.

Example:

"active"

tag_metadata
any | null

Optional structured metadata providing tag context. Can be object, array, or primitive. NULL if no additional context needed.

Common uses:

  • Reviewer info: Who tagged and when
  • Approval details: Approver and notes
  • Quality metrics: Confidence scores, reasons
  • Custom data: Domain-specific context

Note: Part of composite unique key with flow_execution_id, task_name, tag, and tag_type. Different metadata creates separate tags.

Example:
updated_at
string<date-time> | null

ISO 8601 timestamp of last update to this tag (UTC). Changes when tag is modified or soft-deleted. For deleted tags, records deletion timestamp. NULL for tags never updated since creation. Used for change tracking and audit history.

Example:

"2025-01-24T10:35:00Z"