From install to first backup in about two minutes.
Connect Frameport to your Immich server, give it an upload-only key, and choose what to back up. Here's every step, for Android and iPhone.
Before you start
Frameport backs up to Immich v3. It checks the server's version when you connect, and won't continue with anything older. Make sure you know your server's address, for example https://photos.example.net, and that your phone can reach it.
Install Frameport
Frameport is free on Google Play for Android 7.0 and later. The iPhone and iPad app, for iOS and iPadOS 17 and later, is in App Store review.
Connect your Immich server
Open Frameport and enter your server address. Frameport checks that it's a supported Immich server, then asks how you want to sign in:
- Email and password or single sign-on: the easiest way. Frameport uses your sign-in once to create its own upload-only key, called “Frameport backup” on iPhone, then discards it.
- API key: the least-privilege option. Create a key in Immich yourself and paste it in. Here's how.
- If you leave out
https://, Frameport adds it. - Immich on a sub-path works, for example
https://example.net/immich. - Signing in with a password or single sign-on needs Immich 3.2 or later. On older v3 servers, use an API key.
- Type the full address, including
https://. - Immich must be at the root of the address (an
/apiending is fine). - Pasted keys must have only
asset.upload, or Frameport won't save them.
Creating an API key in Immich
Only needed if you chose to connect with an API key.
- Open Immich in your web browser and sign in.
- Go to Account settings and open API keys.
- Create a new key and give it a name you'll recognise, like
Frameport – Pixel 9. - Under permissions, select only
asset.upload. - Create the key, copy it, and paste it into Frameport's API key field.
album.create, albumAsset.create and asset.share. It never needs read, download or delete permissions.Allow access to your photos
Frameport asks for the permissions it needs to back up. It only reads the media you give it access to.
- Photos and videos, so it can read what to back up.
- Photo location, so Android doesn't strip the location stored in each photo. Frameport never reads your phone's location.
- Notifications, needed to show progress while it uploads.
- Photos. With limited access, only the photos you've allowed can be backed up.
- Notifications are optional. Turn on “Notify me” if you want them.
Choose what to back up
Back up everything, or only the parts you care about. You can change this at any time.
- Android: “All folders” includes new folders automatically. Or turn off the folders you don't want, choose specific items, or pick a source folder.
- iPhone: choose your whole library or selected albums, and leave out screenshots and screen recordings if you like.
Set your conditions
Decide when automatic backup may run. Out of the box, Frameport waits for Wi-Fi and runs on any power source.
- Allow photos and videos on cellular, separately.
- Require charging.
- Capture delay: from immediately to 24 hours.
- Limit automatic backup to certain hours.
- Pause below a battery level.
- Turn on Automatic backup. It's off until you do.
- Photos and videos over cellular, separately.
- Only while charging.
- Wait after taking a photo: off, 5 minutes (the default), 30 minutes or 2 hours.
Run your first backup
Tap Back up now. Frameport checks each file against your server, skips anything already there and uploads the rest as originals. A first backup of a large library can take a while. You can pause and resume at any time.
- Android: a backup you start yourself keeps going in the background with a progress notification, and isn't limited by backup hours or battery level.
- iPhone: keep Frameport open for the fastest progress. In the background, iOS decides how quickly uploads run.
Servers on your home network
Frameport always validates HTTPS certificates, and you can't turn that off. If your server only has a local address without HTTPS, you can still use it:
- Android: enter a private-network address or local hostname and confirm “Use an unencrypted LAN connection?”. Or keep your public HTTPS address and add a Home network address. On Wi-Fi or Ethernet, Frameport uses it whenever it responds.
- iPhone: enter a private IP address, such as
http://192.168.1.20:2283, and turn on “Allow HTTP to a trusted local IP address”. Hostnames need HTTPS.
- Server address
- https://photos.example.net
- Home network address
- http://192.168.1.20:2283
Keeping automatic backup running
Some phones stop background apps to save battery. If that happens, Frameport shows “Automatic backup isn't running” with steps for your phone, including Samsung, Xiaomi, OPPO and Huawei. Following them usually means letting Frameport run without battery restrictions.
Keep Background App Refresh on for Frameport, and don't force-quit it: if you do, background backup stops until you open Frameport again. iOS decides exactly when background backups run.
Still stuck? The troubleshooting guide covers the messages Frameport shows and how to fix them.