Skip to content

Simulate configuration change impact for releases

POST
/simulate/impact
curl --request POST \
--url https://example.com/api/v1/simulate/impact \
--header 'Content-Type: application/json' \
--data '{ "databaseId": 1, "arrType": "radarr", "releases": [ { "id": "example", "title": "example", "type": "movie" } ], "profileNames": [ "example" ], "proposedChanges": [ { "kind": "set_cf_score", "profileName": "example", "customFormatName": "example", "score": 1 } ] }'

Applies proposed custom-format score and quality-profile threshold changes to an isolated ephemeral sandbox cache and returns release-level impact, config A/B diff, and cascade warnings. Proposed changes never touch pcd_ops or the registered cache.

Media typeapplication/json
object
databaseId
required

PCD database instance ID

integer
arrType
required
string
Allowed values: radarr sonarr
releases
required
Array<object>
>= 1 items <= 50 items
object
id
required

Client-generated correlation ID

string
title
required

Release title to parse and evaluate

string
type
required
string
Allowed values: movie series
profileNames
required

PCD or TRaSH selectors (‘name’ | ‘pcd:name’ | ‘trash:name’)

Array<string>
>= 1 items <= 10 items
proposedChanges
required
Array
<= 100 items
One of: discriminator: kind
object
kind
required
string
Allowed values: set_cf_score
profileName
required

Raw PCD quality-profile name (pcd:-stripped)

string
customFormatName
required
string
score
required

Finite integer custom-format score

integer

Impact simulation results

Media typeapplication/json
object
parserAvailable
required
boolean
cascadeBasis
required
string
Allowed values: current
appliedChanges
required
Array
One of: discriminator: kind
object
kind
required
string
Allowed values: set_cf_score
profileName
required

Raw PCD quality-profile name (pcd:-stripped)

string
customFormatName
required
string
score
required

Finite integer custom-format score

integer
skippedChanges
required
Array<object>
object
change
required
One of: discriminator: kind
object
kind
required
string
Allowed values: set_cf_score
profileName
required

Raw PCD quality-profile name (pcd:-stripped)

string
customFormatName
required
string
score
required

Finite integer custom-format score

integer
reason
required
string
releaseImpacts
required
Array<object>
object
id
string
title
required
string
parsed
required
One of:
object
source
required

Detected source (e.g., bluray, webdl, webrip)

string
resolution
required

Detected resolution (e.g., 1080p, 2160p)

string
modifier
required

Quality modifier (e.g., remux, none)

string
languages
required

Detected languages

Array<string>
releaseGroup

Detected release group

string
nullable
year
required

Detected year

integer
edition

Detected edition (e.g., Director’s Cut)

string
nullable
releaseType

Release type for series (single_episode, season_pack, etc.)

string
nullable
profiles
required
Array<object>
object
profileName
required
string
editable
required
boolean
currentTotal
required
integer
proposedTotal
required
integer
delta
required
integer
minimumScore
required
integer
upgradeUntilScore
required
integer
currentState
required
string
Allowed values: below accepted upgrade-reached
proposedState
required
string
Allowed values: below accepted upgrade-reached
changedCfs
required
Array<object>
object
cfName
required
string
matches
required
boolean
currentScore
required
integer
proposedScore
required
integer
delta
required
integer
configDiff
required
Array<object>
object
entityType
required
string
Allowed values: quality_profile
name
required
string
arrType
required
string
Allowed values: radarr sonarr lidarr
changes
required
Array<object>
object
field
required

Dot-notated field path

string
type
required
string
Allowed values: added changed removed
current
required
Any of:
string
desired
required
Any of:
string
cascade
required
Array<object>
object
nodeKind
required
string
Allowed values: custom_format
name
required
string
arrType
required
string
counts
required

Distinct related-entity counts keyed by node kind, plus total

object
key
additional properties
integer
byArrType
required
object
key
additional properties
integer
truncated
required
boolean
Example
{
"cascadeBasis": "current",
"appliedChanges": [
{
"kind": "set_cf_score"
}
],
"skippedChanges": [
{
"change": {
"kind": "set_cf_score"
}
}
],
"releaseImpacts": [
{
"profiles": [
{
"currentState": "below",
"proposedState": "below"
}
]
}
],
"configDiff": [
{
"entityType": "quality_profile",
"arrType": "radarr",
"changes": [
{
"type": "added"
}
]
}
],
"cascade": [
{
"nodeKind": "custom_format"
}
]
}

Invalid request (bad JSON, cap violation, bad arrType, unknown change kind)

Media typeapplication/json
object
error
required
string
Examplegenerated
{
"error": "example"
}

Database instance or built cache not found

Media typeapplication/json
object
error
required
string
Examplegenerated
{
"error": "example"
}

Internal server error

Media typeapplication/json
object
error
required
string
Examplegenerated
{
"error": "example"
}