Skip to main content

Get Task Status

Retrieves the current status of an ABBYY Cloud processing task.

Common Properties

  • Name - The custom name of the node.
  • Color - The custom color of the node.
  • Delay Before (sec) - Waits in seconds before executing the node.
  • Delay After (sec) - Waits in seconds after executing node.
  • Continue On Error - Automation will continue regardless of any error. The default value is false.

Inputs

  • Task ID - ID of the ABBYY task to check status for.

Options

This node has no configurable options.

Outputs

  • Task Status - Current status object of the task containing state, progress, and result information.

How It Works

The Get Task Status node queries the current state of an ABBYY processing task. When executed, the node:

  1. Validates the task ID is not empty
  2. Sends a status request to ABBYY Cloud API
  3. Retrieves current task information
  4. Returns status object with task state and details

Requirements

  • Valid ABBYY Cloud credentials
  • Valid task ID from a previously created task

Error Handling

The node will return specific errors in the following cases:

  • Robomotion.ABBYYCloud.ErrTaskID - Task ID is invalid, empty, or not found

Usage Example

Scenario: Check if a task has completed before downloading results

1. Process Image node:
- Image Path: "C:/images/document.jpg"
- Output: {{ $.task }}

2. Get Task Status node:
- Task ID: {{ $.task.id }}

3. Decision node: Check if status is "Completed"
- If completed: Download results
- If processing: Wait and check again
- If failed: Handle error

Scenario: Monitor task progress

1. Loop every 5 seconds:
a. Get Task Status node:
- Task ID: {{ $.task_id }}

b. Check status:
- "Queued" - Task is waiting
- "InProgress" - Task is processing
- "Completed" - Task is done
- "ProcessingFailed" - Task failed

c. Exit loop when status is "Completed" or "ProcessingFailed"

Task Status Values

The status object may contain:

  • Queued - Task is queued and waiting to be processed
  • InProgress - Task is currently being processed
  • Completed - Task completed successfully
  • ProcessingFailed - Task processing failed
  • Deleted - Task has been deleted
  • NotEnoughCredits - Insufficient credits to process

Status Object Fields

The task status object typically includes:

  • Status - Current state of the task
  • TaskId - Unique task identifier
  • Credits - Credits consumed by the task
  • EstimatedProcessingTime - Estimated completion time
  • ResultUrl - URL to download results (when completed)
  • Error - Error message (if failed)
  • FilesCount - Number of files in the task
  • PagesCount - Number of pages processed

Common Use Cases

  • Task Monitoring - Check task status before attempting to retrieve results
  • Progress Tracking - Monitor long-running tasks
  • Error Detection - Identify failed tasks quickly
  • Retry Logic - Determine if task needs to be resubmitted
  • Status Dashboards - Build monitoring interfaces for batch processing
  • Quota Management - Track credit usage across tasks

Tips and Best Practices

  • Polling Strategy:
    • Don't poll too frequently (respect API rate limits)
    • Use Wait Task node for automatic polling
    • Typical polling interval: 3-5 seconds
    • Increase interval for large documents
  • Status Checking:
    • Always check status before downloading results
    • Handle all possible status values
    • Implement timeout for stuck tasks
    • Log status changes for debugging
  • Error Handling:
    • Check for "ProcessingFailed" status
    • Retrieve error message from status object
    • Implement retry logic for transient failures
    • Alert on permanent failures
  • Performance:
    • Status check is a fast operation
    • Minimal credit consumption
    • Use as a lightweight health check
  • Alternatives:
    • Use Wait Task for automatic polling with timeout
    • Get Task Status gives more control over polling
    • Combine both for complex workflows
  • Credits Management:
    • Status checks consume minimal/no credits
    • Actual processing consumes credits
    • Check credits field to track usage
    • Monitor "NotEnoughCredits" status
  • Result Retrieval:
    • Only download when status is "Completed"
    • ResultUrl is available in completed status
    • Multiple result URLs for different formats
    • Download before task deletion
  • Best Practices:
    • Store task IDs for later status checks
    • Implement exponential backoff for polling
    • Cache status to avoid redundant checks
    • Clean up completed tasks with Delete Task