Skip to content

bradgarropy/captivate-sdk

Repository files navigation

🎀 captivate sdk

version downloads size github actions coverage typescript contributing contributors discord

Captivate JavaScript SDK for retrieving podcast information.

next link

πŸ“¦ Installation

This package is hosted on npm.

npm install @bradgarropy/captivate-sdk

πŸ₯‘ Usage

Start off by creating a Captivate client, then authenticate to the Captivate API. Now you can use the client to retrieve your podcast shows and episodes.

const captivate = new Captivate("abc123", "123456789")

const show = await captivate.shows.getShow("abc123")
const episode = await captivate.episodes.getEpisode("xyz123")

πŸ“– API Reference

Captivate(userId, apiKey)

Name Type Example Description
userId string "abc123" Captivate user id.
apiKey string "123456789" Captivate api key.

Create a Captivate client.

const captivate = new Captivate("abc123", "123456789")

captivate.authentication.authenticateUser()

Authenticate a user to the Captivate API.

captivate.authentication.authenticateUser()

captivate.users.getUser(userId)

Name Type Example Description
userId string "abc123" User id.

Get a user.

captivate.users.getUser("abc123")

captivate.users.getUsersShows(userId)

Name Type Example Description
userId string "abc123" User id.

Get a list of podcasts that a user belongs to.

captivate.users.getUsersShows("abc123")

captivate.users.getUsersManagedShows(userId)

Name Type Example Description
userId string "abc123" User id.

Get a list of podcasts that a user manages.

captivate.users.getUsersManagedShows("abc123")

captivate.shows.getShow(showId)

Name Type Example Description
showId string "abc123" Podcast show id.

Get a podcast.

captivate.shows.getShow("abc123")

captivate.shows.updateShow()

// TODO

captivate.shows.updateShowArtwork()

// TODO

captivate.shows.getShowEpisodes(showId)

Name Type Example Description
showId string "abc123" Podcast show id.

Get all episodes from a podcast.

captivate.shows.getShowEpisodes("abc123")

captivate.shows.getShowScheduledEpisodes(showId)

Name Type Example Description
showId string "abc123" Podcast show id.

Get all scheduled episodes from a podcast.

captivate.shows.getShowScheduledEpisodes("abc123")

captivate.shows.getShowFeedUrl(showId)

Name Type Example Description
showId string "abc123" Podcast show id.

Get the RSS feed URL for a podcast.

captivate.shows.getShowFeedUrl("abc123")

captivate.media.getMedia(mediaId)

Name Type Example Description
mediaId string "abc123" Media id.

Get an item from your media library.

captivate.media.getMedia("abc123")

captivate.media.uploadMedia()

// TODO

captivate.media.getShowMedia(showId)

Name Type Example Description
showId string "abc123" Podcast show id.

Get all media from a podcast.

captivate.media.getShowMedia("abc123")

captivate.media.searchShowMedia()

// TODO

captivate.episodes.getEpisode(episodeId)

Name Type Example Description
episodeId string "xyz123" Podcast episode id.

Get a podcast episode.

captivate.episodes.getEpisode("xyz123")

captivate.episodes.createEpisode()

// TODO

captivate.episodes.updateEpisode()

// TODO

❔ Questions

πŸ› report bugs by filing issues
πŸ“’ provide feedback with issues or on twitter
πŸ™‹πŸΌβ€β™‚οΈ use my ama or twitter to ask any other questions

✨ contributors


Brad Garropy

πŸ’» πŸ“– ⚠️ πŸš‡