You can use our Admin GraphQL API’s StagedUploadTargetGenerate mutation to initialize a storage bucket with your image file, which returns to you a src URL you can use to add the image(s) to resources:
https://help.shopify.com/en/api/graphql-admin-api/reference/mutation/stageduploadtargetgenerate
Hope that helps, it definitely appears to solve the issue of having to upload to another service. Let me know if you have any questions, or if I’ve misunderstood what you’re looking for.
Cheers.
The answer above has been updated for accuracy on July 3rd, 2019