Complete Tallyfy tasks from Workato
You can complete Tallyfy tasks from Workato recipes whenever something happens in another system - like a document getting signed or a CRM record updating. Here’s how to set it up.
- Mark tasks complete when a document is signed in DocuSign
- Complete approval tasks based on Microsoft Forms responses
- Update task form fields when CRM data changes
- Auto-complete tasks when ERP conditions are met
- Workato account with HTTP connector access
- Tallyfy API access token (from Settings > Integrations > REST API)
- Your Tallyfy organization ID
- Task IDs or a way to retrieve them dynamically
You’ll need the task ID and the process (run) ID. Here’s how to get them:
If Tallyfy triggered your recipe via webhook:
task_id = trigger["task"]["id"]run_id = trigger["task"]["run_id"]Use an HTTP GET to retrieve tasks within a specific process:
GET https://go.tallyfy.com/api/organizations/{org_id}/runs/{run_id}/tasksWhen you launch a process, store the returned task IDs in a lookup table. This works well for recurring workflows.
Task completion in Tallyfy uses a POST request (not PUT) to a completed-tasks endpoint1.
- Add an HTTP action to your Workato recipe
- Configure the request:
- Method: POST
- URL:
https://go.tallyfy.com/api/organizations/{org_id}/runs/{run_id}/completed-tasks - Headers:
Authorization: Bearer {your_access_token}Content-Type: application/jsonX-Tallyfy-Client: APIClient
- Set the request body:
{"task_id": "{task_id}"}
For approval tasks, you must also include is_approved:
{ "task_id": "{task_id}", "is_approved": true}If the task has form fields that need values, save them before completing the task. Tallyfy stores form field values (called “captures” in the API) through a separate endpoint:
POST https://go.tallyfy.com/api/organizations/{org_id}/tasks/{task_id}/capturesEach field is saved individually with its ID and value:
{ "id": 12345, "value": "Approved by John Smith"}You’ll need to call this endpoint once per field, then complete the task afterward. The field id comes from the task’s capture definitions.
Only complete tasks when certain conditions are met:
- Add a conditional action before the HTTP request
- Check your conditions:
trigger["order"]["status"] == "shipped" ANDtrigger["order"]["payment_status"] == "paid"
- Place the completion HTTP action inside the conditional block
Need to complete several tasks in a process? Here’s the pattern:
- Get all tasks for the process:
GET https://go.tallyfy.com/api/organizations/{org_id}/runs/{run_id}/tasks
- Use a For each loop in Workato
- Inside the loop, POST to
completed-tasksfor each matching task - Add a 1-second delay between calls to respect rate limits
Sometimes you want to save form field data without marking the task done - maybe you’re collecting data in stages. Use the captures endpoint:
POST https://go.tallyfy.com/api/organizations/{org_id}/tasks/{task_id}/captures{ "id": 67890, "value": "updated_value"}You can also update other task properties (like deadline or assignees) via PUT:
PUT https://go.tallyfy.com/api/organizations/{org_id}/runs/{run_id}/tasks/{task_id}| Error code | Meaning | Solution |
|---|---|---|
| 401 | Unauthorized | Check your Bearer token and X-Tallyfy-Client header |
| 403 | Forbidden | Verify the organization ID is correct |
| 404 | Task not found | Confirm the task ID, run ID, and org ID are valid |
| 422 | Validation failed | Required form fields probably aren’t filled yet |
- Click the error handler icon on your HTTP action
- Add a Retry action for transient failures (5xx errors)
- Configure:
- Max attempts: 3
- Interval: 5 seconds
- Backoff multiplier: 2
- Log permanent failures for review
A real-world pattern - completing a Tallyfy task when someone signs a document:
- Trigger: DocuSign - Document completed
- Action 1: List tasks in the Tallyfy process to find the right task
GET https://go.tallyfy.com/api/organizations/{org_id}/runs/{run_id}/tasks
- Action 2: Save signature details to form fields
POST https://go.tallyfy.com/api/organizations/{org_id}/tasks/{task_id}/captures
- Action 3: Complete the task
{"task_id": "{task_id}"}
- Action 4: Send confirmation email
Run through this checklist:
- Is the task in “active” status? Completed tasks can’t be completed again.
- Are all required form fields filled? The API returns a 422 if they aren’t.
- Does the user have permission? Tasks with
can_complete_only_assigneesset need an assigned user. - Are there unresolved issues? Tasks with open problem threads can’t be completed.
Usually one of these:
- The field
idmust be the numeric capture ID - not the field name - The
valuemust match the expected data type - Make sure the field actually exists on that task
- Check that values meet any validation rules on the field
You’re sending requests too fast. Fix it by:
- Adding delays between requests
- Using exponential backoff
- Reducing parallel operations
Workato > Launch Tallyfy processes from Workato
Postman > Task operations and automation
Zapier > Automate tasks using Zapier
-
Tallyfy uses POST to a
completed-tasksresource rather than a PUT/PATCH status change, which differs from many REST APIs ↩
Was this helpful?
- 2025 Tallyfy, Inc.
- Privacy Policy
- Terms of Use
- Report Issue
- Trademarks