Integrating with Zapier/Integromat/etc
So you have a file upload that you'd like to process automatically using a third-party service. Perhaps you want a Trello card created with the image uploaded and the order details attached. Or you'd like the photo uploaded to a printing service.
Using a service like Zapier or Integromat you can take your file uploads from UploadKit and perform actions with hundreds of different services according to rules that you define. But how to get them to play nicely with UploadKit?
The key thing is to enable the 'Direct link' option in UploadKit. Without it, the only link you get is the one to the preview page to download the file, which doesn't help much (unless you're sending the file to a fulfilment service for manual fulfilment, in which case actually the preview page may be a good idea!).
Once this is enabled an additional property will be added to your line item properties. If you original upload field name is say "Uploaded image" then the direct link will show up in your line item properties as "_Uploaded image (direct link)". The initial underscore prevents it from showing up in your cart or checkout.
From there it's a case of using Zapier or Integromat to extract the line item properties from each line item and finding the correct key. If you accept multiple files in a single field then you'll need to account for the fact that multiple files will be like:
_Uploaded image 1 (direct link)
_Uploaded image 2 (direct link)
_Uploaded image 3 (direct link)
If you just extract all properties with a key containing the text "direct link", you'll be good.
For reference, a Shopify order object has a line_items key, which is an array of objects. Each line item object has a properties key, which references an object with a key per uploaded file. The value will be a URL -- for a "direct link" key, the URL is the file they uploaded with any crops or enhancements applied. For a standard (non-direct) key, the URL is a preview page with a thumbnail of their image (if applicable), and buttons linking to download both the cropped/enhanced image (if available) and the originally uploaded file.