Radio
normalize Radio Taste
POST /api/recommendation/radio/taste/normalize
Retained recommendation Worker adapter. Automatic retries are disabled. Maximum UTF-8 request body: 4096 bytes.
Request policy
- Operation
normalizeRadioTaste- Access
- radio-capability
- Automatic retries
- None
- Redirects
- Returned to the caller without following
- Request body limit
- 4096 UTF-8 bytes
- Pagination
- No collection iterator
Parameters
No path or query parameters.
Request body
application/json
object required
Schema details
text string required
Request headers
X-Radio-Session(required) —
Responses
200
Successful response
application/json
object
Schema details
profile object required
Schema details
schemaVersion unknown required
subject object
Schema details
canonicalUrl string (uri)
displayName string
music object required
Schema details
artists object[] required
Schema details
object
Schema details
name string required
stance string required
Allowed: "love" | "like" | "curious" | "avoid"
weight number
externalIds object
Schema details
spotify-artist string
recordings object[] required
Schema details
object
Schema details
title string required
artist string required
stance string required
Allowed: "love" | "like" | "curious" | "avoid"
weight number
externalIds object
Schema details
isrc string
spotify-track string
albums object[] required
Schema details
object
Schema details
title string required
artist string required
stance string required
Allowed: "love" | "like" | "curious" | "avoid"
weight number
externalIds object
Schema details
discogs-master string
discogs-release string
genres object[] required
Schema details
object
Schema details
name string required
stance string required
Allowed: "love" | "like" | "curious" | "avoid"
weight number
notes string[] required
Schema details
string
400
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
401
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
403
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
413
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
429
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
502
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
503
Request failed
application/problem+json
ProblemDetails
Schema details
type string required (uri)
Problem type URI (see /problems/)
title string required
Short human-readable summary
status number required
HTTP status code
detail string required
Human-readable explanation
instance string (uri)
URI reference for this occurrence
Examples
Examples use synthetic fixture values. Replace fixture identifiers with public IDs returned by the service. Request bodies and precise locations are transient; keep them out of logs.
curl
curl --fail-with-body --max-time 30 --max-filesize 16777216 --request POST 'https://irvinebroque.com/api/recommendation/radio/taste/normalize' --header 'X-Radio-Session: fixture' --header 'Accept: application/json' --header "Authorization: Bearer $RADIO_CAPABILITY" --header 'Content-Type: application/json' --data-binary @request.jsonTypeScript
import { PublicApi } from '@irvinebroque/public-api';
const api = new PublicApi();
const capability = 'replace-with-scoped-radio-capability';
const result = await api.radio.normalize({
"X-Radio-Session": "fixture",
"body": {
"text": "jazz"
}
}, { capability });
console.log(result.status, result.headers.get('content-type')); // Keep transient capabilities in memory.CLI
irvinebroque radio normalize --x-radio-session 'fixture' --body-file request.json --capability "$RADIO_CAPABILITY"request.json
{
"text": "jazz"
}The SDK preserves status, headers, and the server envelope. A 304 has no fresh body. Errors retain structured problem details; ordinary error messages omit response details. Responses are limited to 16 MiB and requests time out after 30 seconds by default.