Pulsarr

Get approval requests

GET
/v1/approval/requests

Retrieve approval requests with optional filtering

Authorization

headerX-API-Key<token>

API key authentication using X-API-Key header

Query Parameters

status?string

One status or a comma-separated list

userId?string

One user id or a comma-separated list

contentType?string
triggeredBy?string
search?string

Case-insensitive partial match on content title

limit?integer
Range1 <= value <= 1000
Default20
offset?integer
Range0 <= value <= 9007199254740991
Default0
sortBy?string
Default"createdAt"
Value in"contentTitle""userName""status""triggeredBy""createdAt""expiresAt"
sortOrder?string

Sort direction, asc for ascending and desc for descending

Default"desc"
Value in"asc""desc"

Response Body

Default Response

application/json
  1. response

One page of approval requests with the total match count

success*boolean
message*string
approvalRequests*array<>
total*number
limit*number
offset*number
Example Request
curl -X GET 'http://localhost:3003/v1/approval/requests'
Example Response
{  "success": true,  "message": "string",  "approvalRequests": [    {      "id": 0,      "userId": 0,      "userName": "string",      "contentType": "movie",      "contentTitle": "string",      "contentKey": "string",      "contentGuids": [        "string"      ],      "thumb": "string",      "proposedRouterDecision": {        "action": "route",        "routing": {          "instanceId": 0,          "instanceType": "radarr",          "qualityProfile": 0,          "rootFolder": "string",          "tags": [            "string"          ],          "priority": 0,          "searchOnAdd": true,          "seasonMonitoring": "all",          "seriesType": "standard",          "minimumAvailability": "announced",          "monitor": "movieOnly",          "syncedInstances": [            0          ],          "ruleId": 0        },        "approval": {          "reason": "string",          "triggeredBy": "quota_exceeded",          "data": {            "quotaType": "daily",            "quotaUsage": 0,            "quotaLimit": 0,            "criteriaType": "string",            "criteriaValue": "string",            "ruleId": 0,            "autoApprove": true          },          "proposedRouting": {            "instanceId": 0,            "instanceType": "radarr",            "qualityProfile": 0,            "rootFolder": "string",            "tags": [              "string"            ],            "priority": 0,            "searchOnAdd": true,            "seasonMonitoring": "all",            "seriesType": "standard",            "minimumAvailability": "announced",            "monitor": "movieOnly",            "syncedInstances": [              0            ],            "ruleId": 0          },          "additionalRouting": [            {              "instanceId": 0,              "instanceType": "radarr",              "qualityProfile": 0,              "rootFolder": "string",              "tags": [                "string"              ],              "priority": 0,              "searchOnAdd": true,              "seasonMonitoring": "all",              "seriesType": "standard",              "minimumAvailability": "announced",              "monitor": "movieOnly",              "syncedInstances": [                0              ],              "ruleId": 0            }          ]        }      },      "routerRuleId": 0,      "triggeredBy": "quota_exceeded",      "approvalReason": "string",      "status": "pending",      "approvedBy": 0,      "approvalNotes": "string",      "expiresAt": "string",      "isExpired": true,      "expirationStatus": "active",      "expirationDisplayText": "string",      "timeUntilExpiration": 0,      "createdAt": "string",      "updatedAt": "string"    }  ],  "total": 0,  "limit": 0,  "offset": 0}