UI Files to Stash Migration Guide
Migration Steps
- Update your API Integrations
- Request your client credentials. We'll probably reach out to you first!
- Modify your existing API calls.
- Visit the API documentation page for more details on feature changes
- Test and Validate Thoroughly test your applications to ensure that everything works similarly to how they do today.
- Let us know if you have questions or how we can help!
Why Replace UI Files?
Stash is replacing UI Files, due to the following key factors:
- Architecture: Modern platform and framework
- Availability: Object Versioning, Lots of 9s
- Performance: Load balanced infrastructure and delegation to AWS when possible e.g., direct file downloads
- Security: Encryption at rest, auditing, time-limited read access, client secret rotation, service-to-service sharing
- Maintainabilty: Removes operational burden from Dev-ops via lifecyle policies and no more worrying about storage capacity
- Visibility: Admin tooling and future developer access and reporting
How can I access my existing files?
- After reaching out to us for your client credentials, we will start the process of copying your existing files to S3 via AWS DataSync.
- We request that you look over and verify your file inventory and clean up any files that might be used for testing purposes.
- Your files and metadata will be automatically mapped to the Stash application and will be accessible via their existing uuid identifiers.
What features are changing?
- Applications will download files directly from S3 by retrieving a pre-signed url from Stash.
- Stash will not provide long-lived public or hawkid protected urls (TTL URLs).
- We believe that AWS S3's pre-signed urls are a better fit for these use cases and remove Stash as a security vulnerability.
- If you have specific Access Control requirements or need long lived urls, you should proxy that access through your application.
- Metadata
- searching has been retired
- There are no special keywords that trigger behavior in Stash e.g., ttl, filename, etc
- File Expiration/Deletion
- In addition to specifying file expiration on upload/update, a separate
DELETEAPI has been added for ad-hoc file deletion. - In non-prod environments file assets are set to automatically expire in 30 days. If you have a non-prod environment where you need file persistence e.g., a staging/demo environment, we will establish a separate client-id in Stash production for you to use.
- In addition to specifying file expiration on upload/update, a separate
- File Sharing
- The ability to share files implicitly between API Clients now exists in addition to the existing per-file sharing.
- Sharing remains READ-ONLY.
Tip
You can also leverage file sharing between your accounts for read-only access in the use case where you clone down your production database to a non-prod environment.