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