Cast Rewinder a une petite API.

Pour tous les développeurs il y a une petite API RESTful accessible via des méthodes GET ou POST.

GET

Le point d’arrivée de l’API est rewind.website/api/get, voici tous les arguments qu’on peut y passer :

  • url requis, l’URL du flux, ou l’URL d’un podcast iTunes ou d’une page SoundCloud
  • frequency la fréquence accepte les valeurs :
    • monthly Mensuel
    • weekly Hebdo valeur par défaut
    • daily Quotidien
    • custom_days Par jour de la semaine
  • start_date Date de début accepte des valeurs de dates, utilise aujourd’hui par défaut, format `AAAA-MM-JJ`
  • start_date_timezone Fuseau horaire de la date de début accepte des valeurs de fuseaux horaires sous la forme d’un TZ name, comme définit sur la liste officielle des fuseaux horaires. Ex. : America/Los_Angeles ou Europe/Isle_of_Man (les espaces dans les noms sont remplacées par des “_”) valeur par défaut “Etc/UTC”, soit UTC+00:00
  • option_start_at Option d’épisode de départ accepte des nombres entiers positif, utilise 1 par défaut
  • option_order Option d’ordre de diffusion accepte les valeurs :
    • asc ordre ascendant valeur par défaut
    • desc ordre descendant
  • option_format Option de format du flux accepte les valeurs :
    • feed_rss valeur par défaut
    • feed_atom
    • feed_json
  • option_keepdates Option pour garder les dates originelles de publication accepte les valeurs :
    • false valeur par défaut
    • true

Si la valeur de frequency est réglée sur custom_days, il faut fournir un argument pour chacun des jours sélectionnés, sans quoi la fréquence est réglée à Hebdo par défaut.

  • custom_day_mon=y pour publier les lundi
  • custom_day_tue=y pour publier les mardi
  • custom_day_wed=y pour publier les mercredi
  • custom_day_thu=y pour publier les jeudi
  • custom_day_fri=y pour publier les vendredi
  • custom_day_sat=y pour publier les samedi
  • custom_day_sun=y pour publier les dimanche

Voici deux exemples :

POST

Le point d’arrivée de l’API est rewind.website/api/post. La requête doit être envoyée au format JSON, avec le type de contenu application/json. Les arguments sont les mêmes que pour les requêtes en GET.

Voici un exemple de JSON pour une requête en POST, toutes les valeurs passées sont les valeurs par défaut :

{
  "url": <ton url>,
  "frequency": "custom_days",
  "custom_day_mon": false,
  "custom_day_tue": false,
  "custom_day_wed": false,
  "custom_day_thu": false,
  "custom_day_fri": false,
  "custom_day_sat": false,
  "custom_day_sun": false,
  "start_date" : <aujourd’hui>,
  "start_date_timezone" : "Etc/UTC",
  "option_start_at": 1,
  "option_order": "asc",
  "option_format": "feed_rss",
  "option_keepdates": false
}

Réponse

L’API répond à toute requête bien formée par un objet JSON contenant l’ID du feed et son URL complète.

{
  "feed_id": 16,
  "url": "https://rewind.website/16/mon-tue-sun/20180708+0000"
}

Avec l’ID du flux il est possible de construire ses propres URLs, en suivant les bonnes fréquence, date de début et options.