API for DIM, or other ways of targeting specific content types

This discussion was created from comments split from: Beta for DazCentral, your new Content Manager.
You currently have no notifications.
Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2025 Daz Productions Inc. All Rights Reserved.
Comments
Greetings,
Is there any chance I can ask for the data sources and API used by DAZ Install Manager?
I've reached a point where my total Library is taking up too much of my Macbook Pro's 4TB internal drive, and I want to eliminate all V4 and Genesis (but not Genesis 2, 3, or 8 based items, and not environments, etc.) from my library to free up space.
There's no way to do that within DAZ Install Manager, even though a dataset _is_ available to do that from the DAZ store site, easily downloadable. (https://www.daz3d.com/dazstatic/slab/getFilters?all=true) I'd like to build myself a trivial tool, obviously nothing as powerful as DAZ Install Manager, that lets me filter my installed items by compatible figure, so I can at least have an idea which ones I need to remove.
Since I get the feeling that major changes to DAZ Install Manager are unlikely, now that DAZCentral is out, and DAZCentral is unusable to me (too large a collection, and non-Windows use) I'd really like it if the PTB would pass along information about how to implement some of the stuff ourselves.
I'll acknowledge, it's a little frustrating, because the local database side is problematic. I feel like I'm not going to be able to remove the smart content rows from the Postgresql database, even if I can
After all that, Smart Content will still have the data, but with broken icons, because the database is still relatively opaque to me, unfortunately. I'm not sure if there's a parent row that I can delete, where the deletion will `cascade` to the subsidiary tables. I need to do more investigation there... If the foreign keys to a central SKU table are set up as 'ON DELETE CASCADE' then this'll work really well. If not, then I'm going to have to figure out all the related tables...
Optimally, DAZ Install Manager would allow filtering by compatible product by using the openly available JSON containing that data, but that would take a lot of work on someone's part. In lieu of that, if we could have API information about how to retrieve the Manifestfiles for things we've purchased (presumably there's a 'signin' method, and then a request to download owned SKUs, and then a way to request individual manifest files for each sku, and then a way to download the .zips for selected skus) that would make it a lot easier for me to build myself my own tool to manage my library. This would let me create a tool that only downloads the zips for items that meet the filters I want to build (like 'NOT (Gen3 OR Gen4 OR Genesis)'). I can then use InstallManager to (1) hide the items that I don't care to see right now, and (2) install the already-downloaded ZIP files for the newer products.
For what it's worth, I've already removed nearly everything identified by 'V4' or 'Victoria 4', but there's a significant number of items (and worse, _textures_ for those items!) which don't have the compatible item in their title, and thus are not searchable-for in the filter. And the problem gets worse in Genesis, especially because the textures got larger.
ne solution was to use filter-by-SKU-range. Unfortunately, I want a significant number of the environments within the lower SKU ranges, because they can be up-shifted to Iray relatively well. I really like environments, so I don't want to delete or avoid those, but manually working through hundreds, and in some cases thousands, of items is exhausting, and frustrating, and I know I'm missing things, and it's especially galling when the data is...right there, loaded the first time you pull up the DAZ store page, and stored in localstorage in the browser, or available via a trivial GET request.
Thanks very much for any information anyone can pass along.
-- Morgan
+1
This is highly unlikely. What may help is the ability to filter by package content - see http://docs.daz3d.com/doku.php/public/software/install_manager/referenceguide/interface/filter_field/advanced_filtering#file
This was out of place in a thread on Daz Central so I've split it out - feel free to edit the title.
Since 1.1.0.33 it is possible to use an externally constructed filter - the chnage log explians this http://docs.daz3d.com/doku.php/public/software/install_manager/change_log_1_1_0_41#1_1_0_33 and there is an external data source here https://www.daz3d.com/dazstatic/slab/getFilters?all=true
&Rob offers a David 3 example URI "daz3dim://filter//sku::5355,5704,6030,6083,6461,6520,7106,7431,7984,8684,9627,14287,15005,15006" for "David 3"
Well if you download all your files with DIM, there are still a lot of options for managing your content with the data available from the store.
My kingdom for a "filter by figure" in DIM that works for more than just official morphs.
This is me speaking from the time when I had to buy third party programs to automatically unzip and auto press the various set up interface buttons...
DIM... Never has something with so much potential disappointed me this much.