List the stations available to this client.
GET/station
Returns a page of the stations in the app's default placement that this
client may play. It behaves like GET /placement/\{placement_id\}/station, except that with no placement in the
path the default placement for the credentials is used.
Stations are filtered before paging, so total is the number of
stations that matched the filters, not the number in the placement.
Offline stations never appear here. They belong to a separate offline
placement, which is not the default placement this route reads, so no
filter can bring them back. To list them, name that placement
explicitly on GET /placement/{placement_id}/station — its id is
offline_placement.id on the POST /session response.
By default the list is also filtered by the country the caller's IP
address resolves to. Pass and_countries/or_countries to filter by
explicit countries instead, or all_countries to disable the country
filter entirely.
Request
Responses
- 200
- 400
- 401
- 404
- 429
- default
The page of stations that matched the filters.
missingParameter (code 16) — Missing client id, no client_id
was supplied.
invalidParameter (code 15) — invalid page number (non-numeric
page), invalid per_page value (non-numeric per_page), or
could not parse that JSON query (a q starting with { that is
not valid JSON).
Credentials were missing or invalid. The response carries
WWW-Authenticate: Basic realm="Feed.fm".
Response Headers
The authentication challenge. Always Basic realm="Feed.fm".
Basic realm="Feed.fm"missingObject (code 17) — Could not find any streaming music associated with this application: no default placement, or no
stations, for these credentials and this location.
The server judged the rate of requests from these credentials to be excessive and is refusing them for a time. The block lasts 30 seconds from the request that tripped it. Requests made during the block are refused and do not extend it.
The threshold is not published, and is not part of this contract. The threshold is also tuned from time to time.
The response carries a Retry-After header giving whole seconds until
the block clears. Wait at least that long. It says when to come back,
not what rate to aim for, and retrying sooner simply meets the block
again.
This exists to stop abuse, and a well-behaved client should not reach it; if yours does, the fix is to reduce your request rate rather than to retry on a timer. If you believe your application needs a rate that trips it, contact Feed.fm rather than working around it.
An error occurred.