POST /exports/resource

Initiates a bulk export of resources for a workspace. The export will be processed asynchronously. Once the export has been requested, its progress can be monitored using the jobs endpoint.

Supported resource types

This endpoint currently supports exporting tasks, teams and messages within a workspace. Resources can be requested to be part of the export by providing the export_request_parameters parameter. The following resource types are supported:

Tasks:

Tasks are formatted for exports with some differences from their documented schema:

Teams:

Teams are formatted for exports with these differences from their documented schema:

Messages:

The returned schema encompasses both default messages and status updates and is similar to the status update schema. The available fields for messages are:

Export file

The final export file will be in JSON Lines format and compressed in a gzip container.

Objects are formatted according to their corresponding API schema, or limited to the fields included in the fields parameter. Exports currently include undeleted objects.

An object in the export will be up to date anywhere between the exports created_at and completed_at. There is no guaranteed ordering of objects in the export.

Access to the export file expires 30 days after its completion.

Exporting specific fields

By default, each object in an export includes a predefined set of fields based on its schema. If a more limited set of fields or fields not included by default are required, the Export API allows for specifying which fields to include in the requested export.

Fields can be specified using the fields parameter. The fields parameter conforms to the fields optional parameter available for all Asana endpoints which is documented here.

Utilizing the fields parameter is recommended if the full object is not required, especially when a large number of objects are being exported, to reduce the overall export time.

Filtering resources

A disjunction of two or more filters can be achieved by providing multiple export_request_parameters for the same resource, each with different filters. However, this approach may result in duplicate resources being returned.

Rate Limits

A workspace is currently limited to one in progress export request at a given time. The request will return with a 403 Forbidden status code if the limit is exceeded.

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
data Object No

A resource_export request starts a job to bulk export objects for one or more resources.

data.export_request_parameters[] Array No

An object containing the parameters for the export request. The keys of this object are the GIDs of the resources to be exported. The values are objects with additional parameters for each resource.

data.export_request_parameters[].filters Object No

Filters to apply to a resource that will be exported. These filters can be used to narrow down the resources that are included in the export.

data.export_request_parameters[].filters.created_at.after String No

Filter results to resources created after a specified date and time.

data.export_request_parameters[].filters.modified_at.after String No

Filter results to resources modified after a specified date and time.

data.export_request_parameters[].filters.assignee.any[] Array No

Filter by the users who are assigned to the resource. This array accepts a list of user GIDs. This is only applicable to tasks.

data.export_request_parameters[].filters.created_at.before String No

Filter results to resources created before a specified date and time.

data.export_request_parameters[].filters.created_by.any[] Array No

Filter by the users who created the resource. This array accepts a list of user GIDs.

data.export_request_parameters[].filters.assigned_by.any[] Array No

Filter by the users who assigned the resource. This array accepts a list of user GIDs. This is only applicable to tasks.

data.export_request_parameters[].filters.followers.any[] Array No

Filter by the users who are following the resource. This array accepts a list of user GIDs.

data.export_request_parameters[].filters.commented_on_by.any[] Array No

Filter by the users who commented on the resource. This array accepts a list of user GIDs.

data.export_request_parameters[].filters.liked_by.any[] Array No

Filter by the users who liked the resource. This array accepts a list of user GIDs.

data.export_request_parameters[].filters.modified_at.before String No

Filter results to resources modified before a specified date and time.

data.export_request_parameters[].resource_type String No

The type of the resource to be exported. This can be a task, team, or message.

data.export_request_parameters[].fields[] Array No

An array of fields to include for the resource type. If not provided, all non-optional fields for the resource type will be included. This conforms to the fields optional parameter available for all Asana endpoints which is documented here

data.workspace String No

Gid of a workspace.

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.