Skip to content

Reopen task

Endpoint

This endpoint reopens a completed task, setting its status back usually to active or incomplete. The exact endpoint depends on the task type:

  • Process Task: DELETE /organizations/{org_id}/runs/{run_id}/completed-tasks/{task_id}
  • One-off Task: DELETE /organizations/{org_id}/completed-tasks/{task_id}

Replace {org_id}, {run_id} (if applicable), and {task_id} with the appropriate IDs.

Request

Headers

  • Authorization: Bearer {your_access_token}
  • Accept: application/json
  • X-Tallyfy-Client: APIClient

Body

No request body is needed for this DELETE request.

Code Samples

(Examples use the endpoint for process tasks. Adapt the URL for one-off tasks.)

const accessToken = 'YOUR_PERSONAL_ACCESS_TOKEN';
const orgId = 'YOUR_ORGANIZATION_ID';
const runId = 'PROCESS_RUN_ID'; // Set to null or use different endpoint for one-off
const taskId = 'TASK_ID_TO_REOPEN';
const apiUrl = runId
? `https://api.tallyfy.com/organizations/${orgId}/runs/${runId}/completed-tasks/${taskId}`
: `https://api.tallyfy.com/organizations/${orgId}/completed-tasks/${taskId}`;
const headers = new Headers();
headers.append('Authorization', `Bearer ${accessToken}`);
headers.append('Accept', 'application/json');
headers.append('X-Tallyfy-Client', 'APIClient');
fetch(apiUrl, {
method: 'DELETE', // Use DELETE method
headers: headers
})
.then(response => {
if (!response.ok) { // Check for 200 OK
// Error handling...
return response.json().then(errData => { throw new Error(/*...*/); }).catch(() => { throw new Error(/*...*/); });
}
console.log(`Successfully reopened task ${taskId}. Status: ${response.status}`);
// Reopen might return the updated task state
return response.json();
})
.then(data => {
if(data) {
console.log('Reopened task details:');
console.log(JSON.stringify(data, null, 2));
}
})
.catch(error => {
console.error(`Error reopening task ${taskId}:`, error);
});

Response

A successful request returns a 200 OK status code. The response body typically contains the details of the task, now back in an active (or incomplete) state.

{
"data": {
"id": "TASK_ID_TO_REOPEN",
"title": "Review Proposal",
"status": "active", // Status is no longer 'completed'
"completed_at": null, // Completion timestamp is removed
"completer_id": null,
// ... other task properties ...
}
}

If the task was not previously completed or the ID is invalid, an error status will be returned.