The Pulsarr Enhanced Requests integration provides a single, powerful sensor entity in Home Assistant designed to streamline your media approval workflow from jamcalli's Pulsarr Real-time Plex watchlist monitoring and content acquisition tool, which Seamlessly sync Plex watchlists with Sonarr and Radarr.
This integration is built for efficiency, aggregating detailed information from multiple Pulsarr API endpoints into one central sensor. This allows you to view, manage, and act on pending requests directly from your Home Assistant dashboard without complex manual lookups.
- Aggregated Data: Fetches all requests awaiting approval, including the requesting user, content type, title, and the essential
contentGuids. - Enhanced Metadata: Automatically performs secondary API calls to Pulsarr to fetch rich TMDB metadata (poster, backdrop, ratings, etc.) for each requested item. This makes your dashboard card visually informative and provides context for quick decision-making.
- Actionable Service: Provides a native Home Assistant service (
pulsarr_enhanced_requests.process_request) to approve or reject requests with a single button click, instantly updating Pulsarr.
This integration is specifically designed to work with the official-unofficial Home Assistant custom card: Pulsarr Requests Card.
The installation process is similar to other custom Home Assistant integrations.
The easiest way to install the Pulsarr Enhanced Requests integration is via HACS.
HACS (Home Assistant Community Store) makes installation and updates simple. Since this is a new custom component, you must first add the repository to HACS.
- In Home Assistant, navigate to HACS.
- Go to the Integrations tab.
- Click the three dots (⋮) in the top right corner and select Custom repositories.
- Enter the URL:
https://github.com/SpaceFrags/pulsarr_enhanced_requests - Select Integration as the Category.
- Click ADD.
- After the repository is added, search for "Pulsarr" in the HACS Integrations section and click Download.
- Restart Home Assistant to load the new integration.
- Download the latest release zip file from the GitHub releases page.
- Extract the contents. You should find a folder named
pulsarr_enhanced_requests. - Copy the entire
pulsarr_enhanced_requestsfolder into your Home Assistant configuration directory undercustom_components/.- Resulting Path:
config/custom_components/pulsarr_enhanced_requests/
- Resulting Path:
- Restart Home Assistant to load the new integration.
The configuration is handled entirely through the Home Assistant UI, requiring your Pulsarr connection details.
- In Home Assistant, navigate to Settings > Devices & Services.
- Click the + ADD INTEGRATION button.
- Search for "Pulsarr Enhanced Requests".
- You will be prompted to enter the following mandatory details:
- Host: The IP address or hostname of your Pulsarr instance (e.g.,
192.168.1.10orpulsarr.local). - Port: The port Pulsarr is running on (default is
3003). - API Key: Your Pulsarr API key.
- Host: The IP address or hostname of your Pulsarr instance (e.g.,
- Click SUBMIT. If successful, a new device and one sensor will be created under the name you provided.
A single sensor entity is created: sensor.pulsarr_enhanced_requests.
| State Value | Description |
|---|---|
native_value |
The total count of pending approval requests. |
The most valuable data is stored in the state attributes, specifically pending_requests_details, which is a JSON list containing the full information for each pending request, including the enriched TMDB metadata needed for display by the custom card.
| Attribute | Type | Example | Description |
|---|---|---|---|
pending_requests_details |
list |
[{"id": "...", "contentTitle": "...", "tmdb_metadata": {...}}] |
The complete list of requests ready for approval/rejection. |
This integration provides a service that can be called via automations, scripts, or—most importantly—by your custom Lovelace card.
This service allows you to approve or reject a pending request programmatically.
| Field | Required | Description |
|---|---|---|
request_id |
Yes | The unique ID of the request to process (found in the pending_requests_details attribute). |
action |
Yes | The action to perform: approve or reject. |
Example YAML Service Call (for use in automations or scripts):
service: pulsarr_enhanced_requests.process_request
data:
request_id: YOUR_REQUEST_ID_HERE # This ID is dynamically pulled by the custom card
action: approve # Can be 'approve' or 'reject'