Copy link to clipboard
Has anyone found a way to flag photos or arrange stacks within albums?
I've built a project -- mostly for personal use -- that groups photos by visual similarity, and I'm experimenting with the use of a CNN to recommend the best photo of a given group. The idea is to save myself lots of time sortingt through photos shot on holiday so that I can keep only the best shots.
The software works great; the rendition API gives me access to enough detail to drive my clustering algorithms. Problem is, I can't do anything with the results! There's no way for my app to reject the bad shots or stack photos representing the same shot. It's immensely frustrating to have invested so much time in the Lightroom API and in this project, only to be confronted by a dead end.
Has anyone found a way around this limitation? Is there an undocumented API call, or something I'm missing? It's honestly enough to make me rage-quit Lightroom. The promise was open access to my own data and so far, the degree of access isn't sufficient for even the basic task I need to perform on my data.
Copy link to clipboard
I've written a web-based plugin for Lightroom that fetches photos via the partner API and uses AI to group them together into photos that represent the "same shot." This plugin helps me cull the photos I take on vacation, discarding the 90% that are duplicates, and creating smaller, more focused albums so I can enjoy them years later without wading through a lot of crappy photos. (Example screenshot of my plugin is attached to the bottom of this post. It's not ready to share with others, though of course I would like to offer it, free of cost, once I've polished it and done some quality assurance.)
Problem: Lightroom's public APIs give me no way to pick, reject or stack photos! Therefore, my plugin can find similar photos, but it can't do anything about those similarities! I must spend hours within the Lightroom desktop app clumsily finding the photo groups so I can stack them by hand.
I recently discovered that there is another API host -- photos.adobe.io -- that the Lightroom desktop app uses to issue its own commands. These private APIs are similar to the partner APIs offered at lr.adobe.io and I can call them to accomplish the tasks I need. However, my plugin must mimic the Lightroom desktop app to do this.
I'd like to ask an official representative of Adobe about the permissibility of what I would like to do. I'm hoping that @CMass or @Charlie.D or @Mohit Goyal will be able to answer my questions, or connect me to someone who can. Specifically, I want to ask:
1. Am I allowed to intercept Lightroom's own calls to your servers, and to make similar calls from my own computer, to help organize my own photos? I don't want to get into trouble or lose access to my catalog.
2. Are there any plans to add functionality to the officially-supported partner APIs, so that my plugin could pick or reject photos, or stack them, without resorting to the proprietary APIs?
I've been frustrated by my experiences with Lightroom CC before; in some ways it feels like a step down from Lightroom Classic because I have less control over my own data and basically no way to write useful plugins. As a power user, data sovereignty and individual workflow is very important to me. I'm willing to participate in a beta or early-access program,
If the answer to these questions is "no" and "no," then I will very likely move away from the Lightroom ecosystem and switch to an open-source tool such as DarkTable. which offers most of the features of Lightroom Classic and makes it extremely easy to write plugins. I'd rather stay with the Adobe tools I know, but this inability to organize my own data is a deal-breaker for me.
Example screenshot of my plugin. It can group photos that represent the same shot, but there's no way to do anything with the knowledge.
Can I take Adobe's silence as willingness to let me reverse engineer Lightroom for purpose of manipulating my own catalog from my own machine? The API documentation simply says to "contact Adobe" with questions, and no contact information is given. I've done my best to raise the question in this forum, as it is the only apparent way to contact Adobe.
Can I get on with using Lightroom the way I need to? Anyone; @Charlie.D perhaps? I'd be happy to go through the proper channel if it's not this forum -- but I need to know whom to ask.
We understand your request here, but as you note, it is not supported today. We will consider whether to add this capability in the future. We are leaning toward supporting additive info only (vs allowing to remove or change existing data) as personal use of APIs/data is the less common scenario and we'd like to ensure broader ecosystems respect customer data. Open to further discussion on this point.
Thank you for taking the time to reply.
Regarding what is supported, I understand your concerns about misuse of these APIs; creating a stack in an existing album is additive, so that should be trivial to implement. Flagging assets is a bit more complicated; I have a few ideas, which your own engineers no doubt have too, but there's no low-effort solution; either you'll need to adopt some notion of negotiated permissions scope, or you'll need a detailed review process for partner applications, or you'll need a scheme for marking certain updates as pending user approval.
After some more mulling, I'm going to try one last thing, which is to create albums de novo with my user's picks, and offer to put their rejects into a "Rejects" album. It's not exactly optimal but it might give me enough control over my workflow to organize my photos, and it's something I can offers to others if they're willing to deal with the usability issues.