Storage Solutions
Learn about the storage solutions you'll need when using the Photoshop API.
Set up your storage
You'll need some form of user-owned storage (like Amazon S3 buckets) to use with the Photoshop API. Your media files and edited transcripts are stored in your storage and accessed via pre-signed URLs for API input.
Using Amazon S3 buckets
- Log in to your AWS account.
- Go to S3.
- Create a new bucket (for example, AdobeApiTesting).
- Upload your media file to the bucket.
- Once the upload is complete, select the file and go to Actions.
- Select Share with pre-signed URL and set the URL duration.
- Copy the generated pre-signed URL for use with the API.
Using a Frame.io account
- Log in to your Frame.io account.
- Create a project (for example, AdobeApiTesting).
- Open your browser's Inspect view (in Chrome, press F12 and go to the Network tab).
- Upload your media file.
- Select the file and click Download.
- In the Network tab, you'll see a GET request using a pre-signed URL.
- Copy that URL for use with the API.
Using Frame.io Developer API
Refer to the Frame.io API guide to create assets and get pre-signed URLs.
Using Google's direct link service
You can use Google's direct link service to generate downloadable public links for your files. Before generating the links, set your file's visibility in Google Drive to Anyone with the link.
Ready-to-use workflows
A typical workflow makes calls to the Photoshop API to edit .psd or other image files and generate new image variations. The Photoshop API works with any public or signed URL.
We've documented the most common storage services and how to generate URLs programmatically.
AWS S3
A pre-signed GET/PUT URL. See the docs for more information about pre-signed URLs on S3.
Workflow samples:
- Node.js - Note that creating pre-signed URLs for AWS S3 requires signature version S3V4.
- Python
- Python application that demonstrates how to call the API using assets stored in AWS S3.
Google Drive
A signed GET/PUT URL. See the docs for setting up your Google Drive account for signed URLs.
Workflow samples:
Azure
A SAS (Shared Access Signature) for upload/download. See the docs for generating a Shared Access Signature.
Workflow samples:
Dropbox
Temporary upload/download URLs. See the docs for generating upload/download URLs. You can also create a file upload link for Dropbox.
Test your URLs
Test if your public URL or pre-signed URL is working with the following commands.
Test your input file path:
Copied to your clipboardcurl -X GET "<your_file_path>" \--output <some-file.jpg>
Test your output file path:
Copied to your clipboardcurl -X PUT "<your_file_path>" \-d <some-file.txt>