Skip to main content
object

An asynchronous operation that exports large datasets or imports data in bulk. Create bulk operations using bulkOperationRunQuery to export data or bulkOperationRunMutation to import data.

After creation, check the status field to track progress. When completed, the url field contains a link to download results in JSONL format. The objectCount field shows the running total of processed objects, while rootObjectCount tracks only root-level objects in nested queries.

If an operation fails but retrieves partial data, then the partialDataUrl field provides access to incomplete results.


Note

url and partialDataUrl values expire after seven days.


Learn more about exporting and importing data in bulk.

DateTime

When the bulk operation was successfully completed.

DateTime!
non-null

When the bulk operation was created.

BulkOperationErrorCode

Error code for failed operations.

UnsignedInt64

File size in bytes of the file in the url field.

ID!
non-null

A globally-unique ID.

UnsignedInt64!
non-null

A running count of all the objects processed. For example, when fetching all the products and their variants, this field counts both products and variants. This field can be used to track operation progress.

URL

The URL that points to the partial or incomplete response data (in JSONL format) that was returned by a failed operation. The URL expires 7 days after the operation fails. Returns null when there's no data available.

String!
non-null

GraphQL query document specified in bulkOperationRunQuery.

UnsignedInt64!
non-null

A running count of all the objects that are processed at the root of the query. For example, when fetching all the products and their variants, this field only counts products. This field can be used to track operation progress.

BulkOperationStatus!
non-null

Status of the bulk operation.

BulkOperationType!
non-null

The bulk operation's type.

URL

The URL that points to the response data in JSONL format. The URL expires 7 days after the operation completes.


Was this section helpful?


Was this section helpful?

mutation

Starts the cancelation process of a running bulk operation.

There may be a short delay from when a cancelation starts until the operation is actually canceled.

mutation

Creates and runs a bulk operation to import data asynchronously. This mutation executes a specified GraphQL mutation multiple times using input data from a JSONL file that you've uploaded to Shopify.

The operation processes each line in your JSONL file as a separate mutation execution. The operation delivers results in a JSONL file when it completes. You can run one bulk mutation operation at a time per shop, though a bulkOperationRunQuery operation can run simultaneously.

Learn more about bulk importing data.

mutation

Creates and runs a bulk operation to fetch data asynchronously. The operation processes your GraphQL query in the background and returns results in a JSONL file when complete.

Apps can run one bulk query operation and one bulk mutation operation at a time per shop. The query must include at least one connection field and supports up to five connections with a maximum nesting depth of two levels.


Note

Results remain available for seven days after completion.


For more information, see the bulk operations guide.


Was this section helpful?

interface

Was this section helpful?