GraphQL Bulk Operation mutation file size limit

Solved
cloudev0
Shopify Partner
2 0 1

Does the import api have a file size limit? I'm trying to upload a ~36mb file, and I keep getting broken pipe in ruby (Faraday) and curl almost instantly when I initiate the multipart form POST request. Any advice?

Thanks in advance.

Accepted Solution (1)

Accepted Solutions
GrahamS
Shopify Staff
Shopify Staff
191 34 47

This is an accepted solution.

Hey @cloudev0 

 

At the moment, the file size limit is 20 megabytes for bulk mutations. We're going to review the documentation to have this made more clear in the future.

 

Best,

Graham S | API Support @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog

View solution in original post

Replies 3 (3)
alex0000
Shopify Partner
7 0 2

I have the same problem, does somebody have an answer ? (seem to be S3 limitation)

 

<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>EntityTooLarge</Code>
    <Message>Your proposed upload exceeds the maximum allowed size</Message>
    <ProposedSize>20975508</ProposedSize>
    <MaxSizeAllowed>20971520</MaxSizeAllowed>
    <RequestId>N5FTYTNP6MPP1VB9</RequestId>
    <HostId>Nlu1xkUPTWKP345Uma79b2hQzFzqDJ3fBrZN7g1iM552PHuf0uif/gM4Cqg3UxXp7KVi+b5AIvI=</HostId>
</Error>
GrahamS
Shopify Staff
Shopify Staff
191 34 47

This is an accepted solution.

Hey @cloudev0 

 

At the moment, the file size limit is 20 megabytes for bulk mutations. We're going to review the documentation to have this made more clear in the future.

 

Best,

Graham S | API Support @ Shopify
- Was my reply helpful? Click Like to let me know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog

cloudev0
Shopify Partner
2 0 1

I ended up rotating files when writing the mutation data (think log rotation, with each file having 20mb max), then chain upload the files. Upload first file. Wait for Webhook. When Webhook comes, respond and upload the next file and so on.