staged Uploads Create
Creates staged upload targets for file uploads such as images, videos, and 3D models.
Use the mutation instead of direct file creation mutations when:
- Uploading large files: Files over a few MB benefit from staged uploads for better reliability
- Uploading media files: Videos, 3D models, and high-resolution images
- Bulk importing: CSV files, product catalogs, or other bulk data
- Using external file sources: When files are stored remotely and need to be transferred to Shopify
The mutation is the first step in Shopify's secure two-step upload process:
Step 1: Create staged upload targets (this mutation)
- Generate secure, temporary upload URLs for your files.
- Receive authentication parameters for the upload.
Step 2: Upload files and create assets
- Upload your files directly to the provided URLs using the authentication parameters.
- Use the returned
as thein subsequent mutations like.
This approach provides better performance for large files, handles network interruptions gracefully, and ensures secure file transfers to Shopify's storage infrastructure.
After creating staged upload targets, complete the process by:
- Uploading files: Send your files to the returned
urlusing the providedparametersfor authentication - Creating file assets: Use the
as thein mutations such as:
Learn more about uploading media to Shopify.
Arguments
- Anchor to inputinput•[Staged
Upload Input!]! required The information required to generate staged upload targets.
- Anchor to stagedTargetsstaged•[Staged
Targets Media Upload Target!] The staged upload targets that were generated.
- Anchor to userErrorsuser•[User
Errors Error!]! non-null The list of errors that occurred from executing the mutation.