Skip to content

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.

Markdown · Authoritative OpenAPI

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.json

TypeScript

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.