Apple Podcasts Subscriptions

In macOS Catalina the podcast fetcher was moved from iTunes to a dedicated Podcasts app which is now missing some of the functionality that was available in the previous version.

OPML feed of Apple Podcasts subscriptions
An OPML feed of podcast subscriptions.

For example, the OPML import and export functionality is missing so I went looking for an SQLite database that Apple likes to use for this kind of storage (similar to highlight information for Books).

I found a plist file which lists all the podcast subscriptions under:

~/Library/Containers/com.apple.podcasts/Data/Documents/PodcastsDB.plist

with the relevant parts looking like this:

<array>
    <dict>
        <key>feedUrl</key>
        <string>https://jasonbarnard.com/feed/podcast/</string>
        <key>title</key>
        <string>#SEOisAEO Digital Marketing Podcast - The most fun you'll ever have learning about digital from the experts</string>
        <key>uuid</key>
        <string>131C83A7-7244-4B9C-96CE-2847C84C9A06</string>
    </dict>
    <dict>
        <key>feedUrl</key>
        <string>http://feeds.soundcloud.com/users/soundcloud:users:130477445/sounds.rss</string>
        <key>storeId</key>
        <string>956912399</string>
        <key>title</key>
        <string>1 Day Business Breakthrough - Helping Entrepreneurs Discover Their Next Big Idea Today |1DayBB</string>
        <key>uuid</key>
        <string>B3D9254A-EF70-4B3E-8F10-6A811D54104D</string>
    </dict>
</array>

I’m still now sure how the UUID is calculated.

Export as OPML

I created a PHP package to create an OPML export of all your subscriptions. Here is how to use it if you have PHP and Composer installed locally:

composer create-project kasparsd/podcasts-tools
cd podcasts-tools
composer export > opml.xml

which will install the package and export the feeds to opml.xml in the same directory.

Leave a Reply