Skip to main content

Piwigo smart home integration, free and open source

Piwigo integration for Gladys Assistant

Your Piwigo photo gallery in Gladys: counters, followed albums, new photos in scenes, widget.

Bring your Piwigo photo gallery into Gladys, over your local network: the number of photos, albums and users, the last photo added, one device per album you want to follow, scenes that react when new photos arrive or an album grows, a scene action that reads the last photos, and a dashboard widget with the last photos.

The integration was tested against a real Piwigo gallery (the linuxserver/piwigo Docker image, Piwigo 16.4.0), not yet in a real Gladys installation: feedback is welcome on the Gladys forum or in the issues.

What you need​

  • Gladys Assistant 5.1.0 or later.
  • A Piwigo gallery reachable from Gladys (same network).
  • Best: an API key (Piwigo 16 or later): in Piwigo, open your profile, API keys, create one, and copy the whole key: its identifier, a colon, its secret (pkid-20261025-…:…). The key acts as its account: an administrator key also gives the number of users.
  • Otherwise, the user name and password of an account (any Piwigo version with the web API).
  • With neither, the integration reads the gallery as a guest: public albums only.

Set up​

  1. Install the integration from the Gladys catalog.
  2. In Configuration, enter the Gallery URL with its port and folder (for example http://192.168.1.20/piwigo; a page of the gallery copied from the browser works too) and paste the API key in the password field, with the user name empty. With an account, fill in its user name and password instead.
  3. Optionally, list the Albums to follow: names or ids separated by commas (Holidays, 12); a sub-album by its path (Holidays / Beach). The id is the number at the end of the album address (index.php?/category/12); use it for a name holding a comma.
  4. Choose the Refresh (5 minutes by default) and the Language of the names, then save. Test the connection reads the gallery at once and tells the albums it did not find.
  5. In Discovery, add the Piwigo device and the album devices you want.

Devices​

The Piwigo device shows the whole gallery (read-only):

FeatureWhat it shows
PhotosPhotos the account can see
AlbumsAlbums the account can see, sub-albums included
UsersUsers of the gallery (administrator account or key only)
Last photo addedIts name, its album and the day: Sunset · Holidays · 25 Oct 2026

Each followed album gives a device Piwigo – album path:

FeatureWhat it shows
PhotosPhotos of the album and of its sub-albums
Last additionDay and time of the last photo added: 25 Oct 2026, 07:50

The integration reads the gallery itself (three or four small requests per reading): nothing to set on the Gladys side. The connection badge of the devices turns red when the gallery stops answering.

Dashboard​

The Last photos widget shows the counters (photos, albums, users) and the last photos added: name, album, day; a tap shows the time it was added and the day it was taken. With the Followed album setting, it shows one of your followed albums instead of the whole gallery.

Thumbnails are off by default: with the Show thumbnails setting, the small thumbnail of each photo is shown, which means your photos appear on every screen that displays this dashboard (a shared tablet, a public dashboard, Gladys Plus). The browser never loads Piwigo directly: Gladys asks the integration, which only serves the photos the widget lists.

Scenes​

Triggers​

  • New photos added: photos were added to the gallery, whatever the way (web upload, the mobile app, synchronization), seen at the next reading. Variables: number of photos added, name, album, date added and page of the last one.
  • Photos added to an album: an album, sub-albums included, holds more photos than at the previous reading (a new album counts from zero). Filter: the album name, exactly as in Piwigo, without its parent albums. Variables: album name, path and id, photos added, photos in the album, page of the album. A photo added to a sub-album also fires this trigger for its parent albums.

Actions​

  • Read the last photos: reads the last photos added now, of the whole gallery or of one album (name, path or id; sub-albums included). Outputs for the next actions of the scene: photos added in 24 hours, photos in all, name, album, date added and page of the last one. Nothing changes in Piwigo.

Scene ideas​

  • On New photos added, send the family a message: "{{count}} new photos, the last one: {{name}} in {{album}}".
  • Every evening at 9 p.m., Read the last photos of the album "Family", and when Photos added in 24 hours is above 0, show a message on the living room tablet.
  • On Photos added to an album "Holidays 2026", light the hallway in blue.

Troubleshooting​

  • "API key, user name or password refused": the key expired, was revoked or was not pasted whole (identifier, colon, secret); with an account, check the password.
  • "the gallery does not answer": check the address, the port and the folder from the Gladys machine.
  • "no Piwigo gallery at this address": the address leads to another page (a login page of a reverse proxy, another application): enter the address of the gallery itself.
  • "certificate refused": a self-signed certificate; use the http:// address on your network.
  • New photos do not show: Piwigo may keep the photos sent through the mobile app or the web API in a waiting room (the "lounge") until the upload is complete; they show at the next reading after that.
  • The number of users stays empty: the account or the key is not an administrator one.
  • LOG_LEVEL=debug in the logs of the integration shows each reading.

Limits​

  • New photos are seen at the next reading (5 minutes by default), and only the photos the account can see.
  • The integration only reads: it never changes, uploads or deletes anything in Piwigo.
  • No photo leaves your network through the integration unless you turn on the thumbnails of the widget.
  • The dates are the ones of the Piwigo server, as it shows them.
  • Not affiliated with the Piwigo project.

Configuration settings​

These are the settings Piwigo asks for in its configuration screen in Gladys.

SettingTypeRequiredDescription
Connect to your Piwigo gallerysectionNoEnter the address of the gallery and an API key (Piwigo 16: your profile > API keys, paste the whole key in the password field), or the user name and password of an account. An admin account also shows the users. Empty: public albums only.
Gallery URLstringYesAddress of the gallery, port and folder included. An https address behind a reverse proxy works too.
User name (without API key)stringNoLeave empty with a whole API key. Filled in: the password below is the one of this account.
API key (or account password)secretNo
Albums to followstringNoNames or ids of the albums to follow as devices, separated by commas (Holidays, 12). A sub-album by its path: Holidays / Beach. Empty: none.
RefreshselectNoHow often the gallery is read (three or four small requests).
Language of the namesselectNoLanguage of the feature names, of the last photo text and of the errors of the scene action. Names are set when a device is created: to rename them after a change, delete and re-add the device.

How to install Piwigo in Gladys​

  1. In Gladys, open Integrations: Piwigo appears in the catalog, next to the native integrations, with a community badge.
  2. Click Install. Gladys pulls the Docker image (ghcr.io/guim31/gladys-piwigo:1.0.0), starts it in a sandbox isolated from the core, and generates the integration's interface (devices, discovery and configuration).
  3. Open the Configuration screen of the integration, fill in the settings, and save.
  4. You can also install it directly from its repository URL: https://github.com/guim31/gladys-piwigo.

Piwigo requires Gladys >=5.1.0. The catalog inside Gladys refreshes every hour, so a new version becomes available at most one hour after its release.

Not running Gladys yet? It is free and open source: follow the installation guide to get started.

About external integrations​

Piwigo is an external integration: a community integration packaged as a Docker container and published on GitHub, that Gladys installs in one click and runs in a sandbox isolated from its core. It is published and maintained by guim31, not by the Gladys core team.

Subscribe to the Gladys Assistant newsletter

A few emails per month about new releases and project news. Sent by Pierre-Gilles Leymarie, founder of the project. Unsubscribe anytime 🙂