[PR #2486] [MERGED] [Feature] Add support for custom metadata providers through a REST API #3723

Closed
opened 2026-04-25 00:16:48 +02:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/advplyr/audiobookshelf/pull/2486
Author: @Dewyer
Created: 1/3/2024
Status: Merged
Merged: 2/12/2024
Merged by: @advplyr

Base: masterHead: dewyer/add-custom-metadata-provider


📝 Commits (8)

  • 8027c4a Added support for custom metadata providers
  • 08a41e3 Add specification
  • 5ea4230 Small fixes
  • 12c6a1b Fix log messages
  • 3b53114 implemented suggestions, extended CMPs with series
  • 6ef4944 Merge branch 'advplyr:master' into dewyer/add-custom-metadata-provider
  • ddf4b26 Merge branch 'master' into dewyer/add-custom-metadata-provider
  • 0cf2f88 Add custom metadata provider controller, update model, move to item metadata utils

📊 Changes

19 files changed (+891 additions, -7 deletions)

View changed files

📝 client/components/app/SettingsContent.vue (+1 -0)
client/components/modals/AddCustomMetadataProviderModal.vue (+105 -0)
📝 client/components/modals/item/tabs/Match.vue (+14 -1)
client/components/tables/CustomMetadataProviderTable.vue (+127 -0)
📝 client/layouts/default.vue (+12 -0)
client/pages/config/item-metadata-utils/custom-metadata-providers.vue (+74 -0)
📝 client/pages/config/item-metadata-utils/index.vue (+6 -0)
📝 client/store/libraries.js (+3 -0)
📝 client/store/scanners.js (+50 -2)
📝 client/strings/en-us.json (+1 -0)
custom-metadata-provider-specification.yaml (+135 -0)
📝 server/Database.js (+6 -0)
server/controllers/CustomMetadataProviderController.js (+117 -0)
📝 server/controllers/LibraryController.js (+25 -1)
📝 server/controllers/SessionController.js (+1 -1)
📝 server/finders/BookFinder.js (+22 -2)
server/models/CustomMetadataProvider.js (+103 -0)
server/providers/CustomProviderAdapter.js (+80 -0)
📝 server/routers/ApiRouter.js (+9 -0)

📄 Description

About

This MR is a WiP followup for this issue: https://github.com/advplyr/audiobookshelf/issues/2467

I am trying to implement the provider in ABS. This is my first time contributing to the project so, sorry I am sure I didn't do things exactly as I should, LMK what should I change to better align with the coding style of the project.

Notes

  • I am aware that I am missing a bucnh of transaltion items, thats WiP
  • Custom providers should probably get their own page on the guides site, I will at some point write an MR for that

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/advplyr/audiobookshelf/pull/2486 **Author:** [@Dewyer](https://github.com/Dewyer) **Created:** 1/3/2024 **Status:** ✅ Merged **Merged:** 2/12/2024 **Merged by:** [@advplyr](https://github.com/advplyr) **Base:** `master` ← **Head:** `dewyer/add-custom-metadata-provider` --- ### 📝 Commits (8) - [`8027c4a`](https://github.com/advplyr/audiobookshelf/commit/8027c4a06f01f3a13d43cf041af012a4f64d62f5) Added support for custom metadata providers - [`08a41e3`](https://github.com/advplyr/audiobookshelf/commit/08a41e37b4d412ef04cb45e839acda07b1e77cd9) Add specification - [`5ea4230`](https://github.com/advplyr/audiobookshelf/commit/5ea423072be02beb9489e62c51d8aeb023acbeb1) Small fixes - [`12c6a1b`](https://github.com/advplyr/audiobookshelf/commit/12c6a1baa02b2514b48565a4e030281856b2906d) Fix log messages - [`3b53114`](https://github.com/advplyr/audiobookshelf/commit/3b531144cfdbce2379b90bb4f2ee36ca949db79c) implemented suggestions, extended CMPs with series - [`6ef4944`](https://github.com/advplyr/audiobookshelf/commit/6ef4944d89ea7e16a0535da4903d472e40e35995) Merge branch 'advplyr:master' into dewyer/add-custom-metadata-provider - [`ddf4b26`](https://github.com/advplyr/audiobookshelf/commit/ddf4b2646c3ec98bd11c552707f2ea6d64fa2513) Merge branch 'master' into dewyer/add-custom-metadata-provider - [`0cf2f88`](https://github.com/advplyr/audiobookshelf/commit/0cf2f8885ec34f85433f254c0e1ae23007be4a6c) Add custom metadata provider controller, update model, move to item metadata utils ### 📊 Changes **19 files changed** (+891 additions, -7 deletions) <details> <summary>View changed files</summary> 📝 `client/components/app/SettingsContent.vue` (+1 -0) ➕ `client/components/modals/AddCustomMetadataProviderModal.vue` (+105 -0) 📝 `client/components/modals/item/tabs/Match.vue` (+14 -1) ➕ `client/components/tables/CustomMetadataProviderTable.vue` (+127 -0) 📝 `client/layouts/default.vue` (+12 -0) ➕ `client/pages/config/item-metadata-utils/custom-metadata-providers.vue` (+74 -0) 📝 `client/pages/config/item-metadata-utils/index.vue` (+6 -0) 📝 `client/store/libraries.js` (+3 -0) 📝 `client/store/scanners.js` (+50 -2) 📝 `client/strings/en-us.json` (+1 -0) ➕ `custom-metadata-provider-specification.yaml` (+135 -0) 📝 `server/Database.js` (+6 -0) ➕ `server/controllers/CustomMetadataProviderController.js` (+117 -0) 📝 `server/controllers/LibraryController.js` (+25 -1) 📝 `server/controllers/SessionController.js` (+1 -1) 📝 `server/finders/BookFinder.js` (+22 -2) ➕ `server/models/CustomMetadataProvider.js` (+103 -0) ➕ `server/providers/CustomProviderAdapter.js` (+80 -0) 📝 `server/routers/ApiRouter.js` (+9 -0) </details> ### 📄 Description # About This MR is a WiP followup for this issue: https://github.com/advplyr/audiobookshelf/issues/2467 I am trying to implement the provider in ABS. This is my first time contributing to the project so, sorry I am sure I didn't do things exactly as I should, LMK what should I change to better align with the coding style of the project. ## Notes - I am aware that I am missing a bucnh of transaltion items, thats WiP - Custom providers should probably get their own page on the guides site, I will at some point write an MR for that --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2026-04-25 00:16:48 +02:00
adam closed this issue 2026-04-25 00:16:49 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#3723