# NetflixBackup Used to backup Netflix history using their unofficial API, and save it as a JSON file. To avoid rate-limiting and unecesarry API-calls, it doesn't get data it already got previously, and it waits in between requests. The project consists of two components: the extension and the backend. The extension gets the build identifier and auth url, and then makes the actual requests to Netflix, shows info to the user, and then sends this to the backend. The backend loads and saves data into a json file. It also returns the latest item in the stored entries to the extension, so the extension doesn't re-get entries that are already recorded. This extension should work on Chromium-based browsers, and on Firefox. It was tested on Opera Developer Edition. ## Setup ### Backend In `backend`, run `yarn install`. ### Extension #### Chromium Go to `about://extensions`. Enable developer mode. Click `Pack extension`. For `Extension root directory`, select the `extension/src` folder. If you have packed this extension before, also select the private key for `Private key file`, located at `extension/src.pem`. Click `Pack extension`. Now you will have the extension, located at `extension/src.crx`. You can drag this `src.crx` file on the `about://extensions` page. You can then click `Install` on the `NetflixBackup` extension. Allow permission. Click on `Options` for the `NetflixBackup` extension. Fill in the backend address, for example `http://localhost:3000`. Click `Save`. If the extension is not visible from the toolbar, make sure it is visible. ## Use ### Backend Run `node index.js`. You will first see how many items are currently stored, and when the latest stored was played. It will also log the first and last item currently stored. The backend is now ready. After the extension sends items, more information will be shown on the backend. ### Extension Go to Netflix. Log in on the correct profile. Refresh the page. Click on the extension in the toolbar. If everything says Ready, click on `Backup items to backend`.