Skip to main content

Amazon Photos API

Project description

Amazon Photos API

Table of Contents

Installation

pip install amazon-photos

Setup

These environment variables must be set. They correspond to cookies found in the browser when logged into Amazon Photos.

export SESSION_ID="..."
export UBID_ACDCA="..."
export AT_ACBCA="..."

Query Syntax

For valid location and people IDs, see the results from the aggregations() method.

Example query:

drive/v1/search

type:(PHOTOS OR VIDEOS)
AND things:(plant AND beach OR moon)
AND timeYear:(2019)
AND timeMonth:(7)
AND timeDay:(1)
AND location:(CAN#BC#Vancouver)
AND people:(CyChdySYdfj7DHsjdSHdy)

/drive/v1/nodes

kind:(FILE* OR FOLDER*)
AND contentProperties.contentType:(image* OR video*)
AND status:(AVAILABLE*)
AND settings.hidden:false
AND favorite:(true)

Examples

from pathlib import Path
from amazon_photos import AmazonPhotos

ap = AmazonPhotos()

# get entire Amazon Photos library. (default save to `ap.parquet`)
nodes = ap.query("type:(PHOTOS OR VIDEOS)")

# query Amazon Photos library with more filters applied. (default save to `ap.parquet`)
nodes = ap.query("type:(PHOTOS OR VIDEOS) AND things:(plant AND beach OR moon) AND timeYear:(2023) AND timeMonth:(8) AND timeDay:(14) AND location:(CAN#BC#Vancouver)")

# sample first 10 nodes
node_ids = nodes.id[:10]

# move a batch of images/videos to the trash bin
ap.trash(node_ids)

# restore a batch of images/videos from the trash bin
ap.restore(node_ids)

# upload a batch of images/videos
files = Path('path/to/files').iterdir()
ap.upload(files)

# download a batch of images/videos
ap.download(node_ids)

# permanently delete a batch of images/videos.
ap.delete(node_ids)

# convenience method to get all photos
ap.photos()

# convenience method to get all videos
ap.videos()

# get current usage stats
ap.usage()

# get all identifiers calculated by Amazon.
ap.aggregations(category="all")

# get specific identifiers calculated by Amazon.
ap.aggregations(category="location")

# get trash bin contents
ap.trashed()

Common Paramters

name type description
ContentType str "JSON"
_ int 1690059771064
asset str "ALL"
"MOBILE"
"NONE
"DESKTOP"

default: "ALL"
filters str "type:(PHOTOS OR VIDEOS) AND things:(plant AND beach OR moon) AND timeYear:(2019) AND timeMonth:(7) AND location:(CAN#BC#Vancouver) AND people:(CyChdySYdfj7DHsjdSHdy)"

default: "type:(PHOTOS OR VIDEOS)"
groupByForTime str "day"
"month"
"year"
limit int 200
lowResThumbnail str "true"
"false"

default: "true"
resourceVersion str "V2"
searchContext str "customer"
"all"
"unknown"
"family"
"groups"

default: "customer"
sort str "['contentProperties.contentDate DESC']"
"['contentProperties.contentDate ASC']"
"['createdDate DESC']"
"['createdDate ASC']"
"['name DESC']"
"['name ASC']"

default: "['contentProperties.contentDate DESC']"
tempLink str "false"
"true"

default: "false"

Notes

https://www.amazon.ca/drive/v1/batchLink

  • This endpoint is called when downloading a batch of photos/videos in the web interface. It then returns a URL to download a zip file, then makes a request to that url to download the content. When making a request to download data for 1200 nodes (max batch size), it turns out to be much slower (~2.5 minutes) than asynchronously downloading 1200 photos/videos individually (~1 minute).

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

amazon-photos-0.0.15.tar.gz (12.6 kB view details)

Uploaded Source

Built Distribution

amazon_photos-0.0.15-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file amazon-photos-0.0.15.tar.gz.

File metadata

  • Download URL: amazon-photos-0.0.15.tar.gz
  • Upload date:
  • Size: 12.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for amazon-photos-0.0.15.tar.gz
Algorithm Hash digest
SHA256 382bb6f4787a61d37d9fd295bea0acb5c3c93786deb69ce2b19c3afffb84765e
MD5 1f96069b4411ad401018e935baa97050
BLAKE2b-256 8acf7910f12e1f13a3c38467d0293ec96b45214e046c901f6e42cd63b8bd8f87

See more details on using hashes here.

Provenance

File details

Details for the file amazon_photos-0.0.15-py3-none-any.whl.

File metadata

File hashes

Hashes for amazon_photos-0.0.15-py3-none-any.whl
Algorithm Hash digest
SHA256 d83eccecbae14c14373742904f2f964cef2188419f8a3ad4fe39a601821dc907
MD5 39776ddc5751017ad07cacc01d7d4ffa
BLAKE2b-256 64a4082f25031abcbaadbeaf82db918705508b1580bf7a9e09a1148241bc447c

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page