Open documentation ↗Overview
## Notes **Tutorial demo** using this API is at [https://spinitron.com/v2-api-demo/](https://spinitron.com/v2-api-demo/). For web integration using iframes and/or JavaScript instead of an API, see [https://spinitron.github.io/v2-web-integration/](https://spinitron.github.io/v2-web-integration/). **Your API key** is found in the Spinitron web app. Log in to Spinitron and go to *Automation & API* in the *Admin* menu. **Authenticate** by presenting your API key using either HTTP Bearer Authorization (preferred) curl -H 'Authorization: Bearer YOURAPIKEY' 'https://spinitron.com/api/spins' or in the query parameter `access-token` (less secure owing to webserver log files) curl 'https://spinitron.com/api/spins?access-token=YOURAPIKEY' **Limit** per page of results is 20 by default and miximally 200. **Try it out** below works to generate example cURL requests but not to get responses from Spinitron. We do not accept queries sent from web browsers. Copy-paste the cURL commands and run them from your computer. **Cache** the data you get from the API if you are using it in web or mobile integration. It's not ok to query the API on *every* page request you serve. The [demo](https://spinitron.com/v2-api-demo/) shows how easy it can be to implement a file cache. An extension to this API with access to all stations for partner applications is available. Contact us.
Spinitron v2 API is a media API from spinitron.com. Requests are authenticated with an API key. It is served over HTTPS. Its OpenAPI description documents 9 endpoints.
At a glance
- Authentication
- API key
- HTTPS
- Yes
- CORS
- Unknown
- Category
- Media
- Base URL
https://spinitron.com/api- Version
- 1.0.0
- Endpoints
- 9
- OpenAPI
- Specification ↗
- Spec updated
- 2021-06-21
Make a first request
Replace the placeholders; the documentation says exactly where credentials go.
curl -X GET "https://spinitron.com/api/personas" \
-H "Accept: application/json" \
-H "X-API-Key: YOUR_API_KEY"const response = await fetch("https://spinitron.com/api/personas", {
method: "GET",
headers: {
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY",
},
});
const data = await response.json();
console.log(data);import requests
response = requests.request(
"GET",
"https://spinitron.com/api/personas",
headers={
"Accept": "application/json",
"X-API-Key": "YOUR_API_KEY",
},
timeout=30,
)
print(response.json())Endpoints
| Method | Path | What it does |
|---|---|---|
| GET | /personas | Get Personas |
| GET | /personas/{id} | Get Persona by id |
| GET | /playlists | Returns playlists optionally filtered by {start} and/or {end} datetimes |
| GET | /playlists/{id} | Get a Playlist by id |
| GET | /shows | Returns scheduled shows optionally filtered by {start} and/or {end} datetimes |
| GET | /shows/{id} | Get a Show by id |
| GET | /spins | Returns spins optionally filtered by {start} and/or {end} datetimes |
| POST | /spins | Log a Spin |
| GET | /spins/{id} | Get a Spin by id |
Questions
Does the Spinitron v2 API API need an API key?
Yes. The Spinitron v2 API API uses API key authentication; the documentation explains how to get credentials.
Does the Spinitron v2 API API support HTTPS?
Yes, the Spinitron v2 API API is served over HTTPS.
How many endpoints does the Spinitron v2 API API have?
Its OpenAPI description lists 9 endpoints in version 1.0.0. All of them are shown on this page.
What are alternatives to the Spinitron v2 API API?
Other Media APIs include SiriKit Cloud Media, Radio & Music Services, Spotify Web API, setlist.fm API, NBA Stats API.
Similar media APIs
Compare alternatives →SiriKit Cloud Media
MediaAdd intelligent features with Apple Intelligence, machine learning, and related technologies.
Radio & Music Services
MediaWe encapsulate Radio & Music business logic for iPlayer Radio and BBC Music products on all platforms. We add value by reliably providing the right blend of metadata needed by clients.
Spotify Web API
MediaYou can use Spotify's Web API to discover music and podcasts, manage your Spotify library, control audio playback, and much more. Browse our available Web API endpoints using the sidebar at left, or via the navigation bar on top of this page on smaller screens. In order to make successful Web API requests your app will need a valid access token. One can be obtained through <a href="https://developer.spotify.com/documentation/general/guides/authorization-guide/">OAuth 2.0</a>. The base URI for all Web API requests is `https://api.spotify.com/v1`. Need help? See our <a href="https://developer.spotify.com/documentation/web-api/guides/">Web API guides</a> for more information, or visit the <a href="https://community.spotify.com/t5/Spotify-for-Developers/bd-p/Spotify_Developer">Spotify for Developers community forum</a> to ask questions and connect with other developers.
setlist.fm API
Media<p> The setlist.fm API has been designed to give you easy access to setlist data in order to build fancy websites and other applications. Before starting to use the API, be sure to ... <ol> <li>... understand how setlist.fm works (the <a href="https://www.setlist.fm/faq">FAQ</a> and the <a href="https://www.setlist.fm/guidelines">Guidelines</a> are a good starting point),</li> <li>... read this documentation carefully and</li> <li>... <a href="https://www.setlist.fm/settings/api">apply for an API key</a> (link for logged in users only) - if you're no registered user yet, then <a href="https://www.setlist.fm/signup">register first</a> (it's free).</li> </ol> </p> <p> If this documentation isn't enough or if you've got other things you'd like to tell us about the API, visit the <a href="https://www.setlist.fm/forum/setlistfm/setlistfm-api">API Forum</a>. </p> <p> Note that the setlist.fm API is, according to the <a href="https://www.setlist.fm/help/api-terms">API terms of service</a>, only free for non-commercial projects. If you're interested in using the API for commercial purposes, <a href="https://www.setlist.fm/contact">contact us</a>. </p> <h2>About this Service</h2> <p> This service provides methods to get both setlists and components of setlists such as artists, cities, countries or venues. </p> <h2>Supported Content Types</h2> <p> The REST service currently supports XML (default) and JSON content. </p> <p> To receive a JSON response, set the <code>Accept</code> <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">header</a> to <em>application/json</em>. </p> <h2>Internationalization</h2> <p> <small>(Please note that this is an experimental feature and does not work for all cities!)</small> </p> <p> Most of the featured methods honor the <code>Accept-Language</code> <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4">header</a>. This header is used for localizing cities and countries. The default language is English (en), but you can provide any of the languages Spanish (es), French (fr), German (de), Portuguese (pt), Turkish (tr), Italian (it) or Polish (pl). </p> <p> E.g. if you search a setlist for a concert that took place in Vienna and you pass "de" as header, you'll get <em>"Wien, Österreich"</em> instead of <em>"Vienna, Austria"</em>.<br/> This also works if you use a different language than the country's native language. </p> <p> E.g. for a concert in New York, you'll get <em>"Nueva York, Estados Unidos"</em> instead of <em>"New York, United States"</em> if you pass "es" as language. </p> <h2>API Keys</h2> API keys (<a href="https://www.setlist.fm/settings/api">application form</a>) must be included in the request with the <code>x-api-key</code> header. <h2>Version History</h2> <table class="table table-bordered table-versions"> <thead> <tr> <th>Version</th> <th>Docs</th> <th>End of Service</th> </tr> </thead> <tbody> <tr> <td><strong>1.0</strong></td> <td><a href="/docs/1.0">Docs</a></td> <td>-</li> </tr> <tr> <td><strong>0.1</strong></td> <td></td> <td>December 31, 2017</li> </tr> </tbody> </table>
NBA Stats API
MediaThe destination for current and historic NBA statistics.
APOD
MediaThis endpoint structures the APOD imagery and associated metadata so that it can be repurposed for other applications. In addition, if the concept_tags parameter is set to True, then keywords derived from the image explanation are returned. These keywords could be used as auto-generated hashtags for twitter or instagram feeds; but generally help with discoverability of relevant imagery
Listed from APIs.guru (CC0).