Request to skip a play that is currently being played.
POST/play/:play_id/skip
Ask the server if the client may end playback of and skip the currently playing song.
A 200 here does not mean the skip was granted. Both of the ways a
skip is refused are rendered as HTTP 200 with success: false:
skipDenied(code 7) — the client has no skips available. Under radio rights this is the cap of 6 skips per station per 60 minutes, or a country whose rules disallow skipping at all.playNotActive(code 12) — the play was never started, was already completed or skipped, or is not the client's current play.
A client MUST inspect the success property of the body and keep
playing the current song when it is false; treating the status code
alone as success will silently drop the listener into a dead player.
seconds optionally reports how far the listener got before skipping.
Request
Responses
- 200
- 400
- 401
- 404
- 429
- default
Either the skip succeeded (success: true), or it was refused with
skipDenied (code 7) or playNotActive (code 12), both of which
are returned here with success: false rather than as an error
status.
missingParameter (code 16) — no client_id was supplied, or the
play id in the path is missing or non-numeric (Invalid or missing play id.).
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) — no such play, or the play is not in this
client's play history.
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.