---
title: "Get the status of a Globus file transfer task."
method: GET
path: "/datacatalog/api/data-release/files/task/{task_id}"
tags: ["Data Release"]
---

# Get the status of a Globus file transfer task.

`GET /datacatalog/api/data-release/files/task/{task_id}`

## Request

- Base URL: `https://data.usgs.gov` (the document declares no server; this is the origin it was published from)
- URL: `https://data.usgs.gov/datacatalog/api/data-release/files/task/{task_id}`
- Auth: OAuth 2
  - Authorization code: `https://auth.globus.org/v2/oauth2/authorize?scope=openid`
  - Token URL: `https://data.usgs.gov/datacatalog/api/auth/login`

Get the status and details of a Globus file transfer task.

Use this endpoint to check on a transfer previously submitted through any of
the transfer endpoints -- `globus-transfer-in`, `globus-transfer-out`, and
their component counterparts. Each of those endpoints returns a `task_id` in
its response `data`; pass that value here as the `task_id` path parameter to
poll the transfer's progress and outcome.

The task is looked up using the requesting user's Globus credentials, so a
user can only retrieve tasks they submitted.

The response `data` contains the Globus transfer task document. Notable
fields include:

- `status`: The task's current state -- `ACTIVE` (in progress),
  `SUCCEEDED` (completed successfully), or `FAILED`.
- `task_id`: The Globus task identifier.
- `files_transferred`: The number of files transferred so far.
- `bytes_transferred`: The number of bytes transferred so far.
- `source_endpoint_id` / `destination_endpoint_id`: The collections
  involved in the transfer.
- `request_time` / `completion_time`: When the task was submitted and, if
  finished, when it completed.

See the Globus Transfer API `get_task` documentation for the full set of
fields: https://docs.globus.org/api/transfer/task/#get_task_by_id.

.. code-block::

    {
        "success": true,
        "message": "Request processed successfully",
        "data": {
            "task_id": "<Globus task ID>",
            "status": "SUCCEEDED",
            "files_transferred": 3,
            "bytes_transferred": 10240,
            "source_endpoint_id": "<Globus collection ID>",
            "destination_endpoint_id": "<Globus collection ID>"
        }
    }

:param task_id: The Globus transfer task ID returned by a transfer endpoint.
:param token: A valid bearer token for the user.
:returns: A success :class:`GetTaskInfoResponse` whose `data` is the Globus
    transfer task document, passed through unchanged.
:raises GlobusTransferTaskNotFound: If the task does not exist or is not
    accessible to the requesting user (returned as 404 Not Found).

## Path parameters

- `task_id` string, required

## Response `200`

Successful Response

- GetTaskInfoResponse
  - `success` boolean, required: A boolean (true/false) indicating if the request was successful.
  - `message` union, required: Descriptive text providing context or further information about the request.
    - 'Created' | 'A component with componentName "{componentName}" already exists in this data release. Please provide a unique componentName.' | 'Deleted' | 'Deletion error' | 'Unable to delete component.' | 'Data release contains components. All components must be deleted before the data release can be deleted.' | 'DOI assigned to Data Release' | 'An entity_id is missing for some or all creators or contributors. Please add any missing entity_id values and try again.' | 'The useForPreview value may only be set to True for .png or .jpg files.' | 'The Globus Search query was not valid. See https://docs.globus.org/api/search/reference/post_query/ for query syntax.' | 'Globus transfer request successfully submitted' | 'A transfer with identical paths has not yet completed. The current transfer may be terminated in the Globus console or contact ask-sdm@usgs.gov for assistance.' | 'Invalid scopes found for transfer. Please re-authenticated and retry transfer.' | 'A transfer path cannot include a directory.' | 'Duplicate filenames not allowed for transfer.' | 'The source endpoint for the Globus transfer was unavailable. Please confirm source Globus collection is available and try again.' | 'A file name cannot contain any of the following characters: < > : " / \ | ? *. On Microsoft Windows, file paths must be formatted like /C/Users/username/filename.csv.' | 'On Microsoft Windows, file paths must be formatted like /C/Users/username/filename.csv.' | 'An unknown error occurred during the transfer. Please try again later or contact ask-sdm@usgs.gov for assistance' | 'This task cannot be found. Please check the task ID.' | 'Internal server error' | 'Invalid schema' | 'File limit reached in collection.' | 'Metadata file not selected. Select a metadata file before performing index files.' | 'Metadata file not found. Please verify metadata file exists in the collection.' | 'Not authenticated' | 'Not Authorized' | 'Item not found' | 'Permissions updated' | 'Some permission changes could not be applied. See the errors in the response for details.' | 'Request processed successfully' | 'Delete not allowed for published releases' | 'Search not avaiable for data releases with more than 10000 components.' | 'Unable to update status at this time. Contact ask-sdm@usgs.gov for assistance.' | 'Updated' | 'User provided groups must grant manager permission to Horizon identity.' | 'User provided groups must not grant admin permission to the Horizon identity.'
    - string
  - `data` object: The Globus transfer task document. See https://docs.globus.org/api/transfer/task/#get_task_by_id for the full set of fields.

## Other responses

- `404`: Not found
- `422`: Validation Error

---

[API](https://skmtc.dev/usgs/apis/usgs-science-data-catalog-api-documentation.md) - [All operations](https://skmtc.dev/usgs/apis/usgs-science-data-catalog-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/usgs/apis/usgs-science-data-catalog-api-documentation/revisions/f5f6a07ba13f?raw)
