> For the complete documentation index, see [llms.txt](https://docs.platform.softwareone.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.platform.softwareone.com/developer-resources/rest-api/task-api.md).

# Task API

The **Task API** provides a standardized way to manage and track long-running or background operations in the Marketplace Platform.&#x20;

A task represents an operation that may take some time, has progress, task logs, and a result. With this API, you can:&#x20;

* Create a new task, for example, to start a buyer transfer.
* Update progress, ETA, and parameters within a task. Only the owner service or extension can update a task.&#x20;
* Get task results, which may include a `JSON` result or redirect to a resource if the result is a file.&#x20;
* Transition the task status to `queued`, `processing`, `completed`, `rescheduled`, or `failed`.
* Get detailed logs containing additional information regarding task execution.

## Before you begin

Review the shared API docs before you work with task resources.

* [Authentication](/developer-resources/rest-api.md#authentication)
* [URL structure](/developer-resources/api-usage-and-reference/url-structure.md)
* [Error handling](/developer-resources/api-usage-and-reference/errors-handling.md)

## Core resources

The Task API is built around the following core resources:

* **Task** – Represents the state of an asynchronous, usually long-running operation.&#x20;
* **Task log** – Represents additional information regarding the execution of the task.

## Browse collections

The API is organized into collections, each containing a set of operations. Access to these operations varies by role, depending on whether you are a `client`, `vendor`, or `operations` user.

See the following sections to determine which roles are authorized to perform specific operations within each collection:

### Tasks

<table><thead><tr><th width="181">Operation</th><th width="105">Method</th><th width="214">Description</th><th>Access</th></tr></thead><tbody><tr><td><a href="/pages/ukNPQBMO5lnmQRg83kTM">Create task</a></td><td>POST</td><td>Creates a task.</td><td>svc</td></tr><tr><td><a href="/pages/7V26IuJOGy9s1pCKUxTM">List tasks</a></td><td>GET</td><td>Gets a list of tasks.</td><td>ops, svc, vendor, client</td></tr><tr><td><a href="/pages/RGeU0hZ1nxxlu4xJr8Zg">Get task by id</a></td><td>GET</td><td>Gets a task by id.</td><td>ops, svc, vendor, client</td></tr><tr><td><a href="/pages/ykIwSZ97clvUa5D6AUiR">Get task result</a></td><td>GET</td><td>Redirects to a platform resource or returns a result JSON value.</td><td>ops, svc, vendor, client</td></tr></tbody></table>

### Task Log

<table><thead><tr><th width="141">Operation</th><th width="155">Method</th><th width="297">Description</th><th>Access</th></tr></thead><tbody><tr><td><a href="/pages/2xQA90wp4EpKo7HvSFNo">Get task logs</a></td><td>GET</td><td>Gets the log records for a task.</td><td>ops, svc</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.platform.softwareone.com/developer-resources/rest-api/task-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
