{"id":45521398,"url":"https://github.com/bueckerlars/immich-sdk","last_synced_at":"2026-02-22T22:59:51.597Z","repository":{"id":335924365,"uuid":"1147416970","full_name":"bueckerlars/immich-sdk","owner":"bueckerlars","description":"Python SDK for the Immich API. ","archived":false,"fork":false,"pushed_at":"2026-02-01T21:54:28.000Z","size":141,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-02T06:10:23.122Z","etag":null,"topics":["api","immich","immich-api","python","uv"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bueckerlars.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-01T17:59:45.000Z","updated_at":"2026-02-01T21:53:59.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/bueckerlars/immich-sdk","commit_stats":null,"previous_names":["bueckerlars/immich-sdk"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/bueckerlars/immich-sdk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bueckerlars%2Fimmich-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bueckerlars%2Fimmich-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bueckerlars%2Fimmich-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bueckerlars%2Fimmich-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bueckerlars","download_url":"https://codeload.github.com/bueckerlars/immich-sdk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bueckerlars%2Fimmich-sdk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29730197,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-22T20:09:16.275Z","status":"ssl_error","status_checked_at":"2026-02-22T20:09:13.750Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","immich","immich-api","python","uv"],"created_at":"2026-02-22T22:59:49.616Z","updated_at":"2026-02-22T22:59:51.588Z","avatar_url":"https://github.com/bueckerlars.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# immich-sdk\n\n[![Python 3.13+](https://img.shields.io/badge/python-3.13+-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Code style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Ruff](https://img.shields.io/badge/ruff-enabled-0080ff.svg)](https://github.com/astral-sh/ruff)\n\nPython SDK for the [Immich](https://immich.app/) API. Type-safe client generated from the official OpenAPI specification, with support for albums, assets, authentication, libraries, and all other Immich API endpoints.\n\n- **Official API documentation:** [Immich API](https://immich.app/docs/api)\n- **OpenAPI / developer docs:** [Immich OpenAPI](https://immich.app/docs/developer/open-api)\n\n## Table of Contents\n\n- [Prerequisites](#prerequisites)\n- [Installation](#installation)\n  - [Install uv](#install-uv)\n    - [Linux](#linux)\n    - [macOS](#macos)\n    - [Windows](#windows)\n  - [Install the SDK](#install-the-sdk)\n  - [Pre-commit (development)](#pre-commit-development)\n- [Quick Start](#quick-start)\n\n## Prerequisites\n\n- **Python 3.13 or later.** The SDK requires Python 3.13+.\n- **[uv](https://docs.astral.sh/uv/)** for dependency management and virtual environments. uv is a fast, drop-in replacement for pip and pip-tools.\n\n## Installation\n\n### Install uv\n\nInstall uv using one of the methods below for your platform. See [Installation - uv](https://docs.astral.sh/uv/getting-started/installation/) for more options.\n\n#### Linux\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\nAdd `~/.local/bin` to your `PATH` if it is not already there (the installer will print instructions).\n\n#### macOS\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\nOn macOS you can also install via Homebrew:\n\n```bash\nbrew install uv\n```\n\n#### Windows\n\nUsing PowerShell:\n\n```powershell\npowershell -ExecutionPolicy ByPass -c \"irm https://astral.sh/uv/install.ps1 | iex\"\n```\n\nAfter installation, restart your terminal. The installer adds uv to your user `PATH`.\n\n### Install the SDK\n\nClone the repository and sync dependencies with uv:\n\n```bash\ngit clone https://github.com/bueckerlars/immich-sdk.git\ncd immich-sdk\nuv sync\n```\n\nThis creates a virtual environment (e.g. `.venv`) and installs the package and its dependencies. To install with development dependencies (testing, linting, pre-commit):\n\n```bash\nuv sync --extra dev\n```\n\n### Pre-commit (development)\n\nFor contributors: install the pre-commit hooks so that formatting and linting run automatically before each commit.\n\nAfter cloning and running `uv sync --extra dev`:\n\n```bash\npre-commit install\n```\n\nPre-commit will then run hooks (e.g. Ruff, Black, pyupgrade, toml-sort) on staged files. To run manually:\n\n```bash\npre-commit run --all-files\n```\n\n## Quick Start\n\n```python\nfrom immich_sdk import ImmichClient\n\nclient = ImmichClient(\n    base_url=\"https://immich.example.com\",\n    api_key=\"your-api-key\",\n)\n\n# Use sub-clients for each API area\nalbums = client.albums.get_all()\nassets = client.assets.get_all()\n```\n\nAuthentication uses the `x-api-key` header. Create an API key in Immich under Settings \u003e API Keys. For more endpoints and request/response formats, see the [official Immich API documentation](https://immich.app/docs/api).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbueckerlars%2Fimmich-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbueckerlars%2Fimmich-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbueckerlars%2Fimmich-sdk/lists"}