We're very happy to announce the availability of APIs for SermonAudio. Web APIs (or web services) allow programmers to access and interact with data on the site using any client front-end and on any platform.
An API Key is necessary to access the JSON APIs and gives you access to all content associated with your account as well as the ability to upload new sermons. To activate your API key, go to the PERSONAL section of the Members Only Area and use the Activate link to enable your key. Once you do, the key will appear in a gray box.
Are you a web design company? Here's a tip. Developing an integrated solution with SermonAudio via JSON APIs provides a strong value-add for your web church clients. Your clients can enjoy all of the additional exposure on SermonAudio while still having their sermons tightly integrated into the design of their own standalone website.
Who is this for? Programmers and web developers. Opening up SermonAudio via APIs will allow programmers and web developers to extend the rich functionality of SermonAudio beyond the confines of the browser. Client applications can now access data on SermonAudio with dynamic, interactive controls.
Next Generation JSON API
We are pleased to announce that SermonAudio's next generation JSON APIs are now available to all SermonAudio broadcasters. The new APIs replace our aging SOAP architecture with well-structured JSON data that is much easier for clients to parse. The new APIs are also a key piece in our internationalization efforts, as the APIs can be used as a foundation for language-aware apps and websites.
For more information and official documentation, go to:
saweb_get_sermons.aspx - Get sermons by Member ID. Optional Category: "speaker", "eventtype", "series", "year" Optional Item: Value for corresponding category.
Legacy SOAP API
To access the legacy SermonAudio SOAP APIs, please refer to the following URL:
GetEventTypes - Returns a list of valid event categories.
GetLanguages - Returns a list of valid languages.
GetSeriesByMemberID - Returns all sermon series by Member ID.
GetSpeakersByKeyword - Returns all speakers by matching keywords.
GetSpeakersByMemberID - Returns all speakers by Member ID.
NewestSermonsByMemberID - Returns newest sermons by Member ID.
NewestSermonsBySpeaker - Returns newest sermons by speaker.
GetSermonInfo - Returns the details of a single sermon by Sermon ID.
UpdateSermon - Updates the details of a single sermon by Sermon ID.
SermonList - Returns all sermons (title, speaker, etc) by Member ID. Optional Category: "speaker", "eventtype", "series", "year" Optional Item: Value for corresponding category.
Over time, we will continue to expand the APIs available for programmers to best fit your needs. Feel free to email us with feedback or suggestions for improvement.
Interactive Sermon Browser! And remember, even if you are not a web developer or programmer, you can still enjoy putting all of your sermons on your own website with a single line of copy-and-paste HTML code using our interactive sermon browser.
Batch upload utility for Drupal written by one of our broadcasters. Joe Wheaton or Lancaster Baptist Church has written the following comment:
I created a module for the Drupal CMS that allows users to mass import their sermons into SermonAudio. It might be helpful for any prospective broadcasters to know that they will be able to mass import their sermons from Drupal into SermonAudio without much hassle.
How To Easily Embed SermonAudio Sermons In WordPress. Carlos Rios has created a fantastic page to help WordPress users here.
Adding sermons to WordPress is a fairly simple task given WordPress’ oEmbed API. For the sake of this how-to I’ll be showing you the easiest way to embed SermonAudio sermons.
Matt Hamann wrote: Is there an available API for determining if a broadcaster is currently live on air? I would prefer to "roll my own" in accordance with the style of my site instead of using the provided button / JS snippet.
You could style it after the fact in javascript. At the very least they could help by putting classes based on live and off air.
Is there an available API for determining if a broadcaster is currently live on air? I would prefer to "roll my own" in accordance with the style of my site instead of using the provided button / JS snippet.
If you see Old Trailblazer episodes on Revelation by Pastor Albert Pendarvis in 2009, these are uploaded in a totally automated process using the SOAP API. Each morning at 7am, a job scheduler (cron) runs my SOAP client (see link in previous comment). The software has a list of which files to upload on which day, and performs the upload automatically.
If you have a radio broadcast, a sermon archive, or some other periodic daily or weekly audio you want to upload, this could help you set it up ahead of time and let it run automatically.
On a limited basis, I might be able to do this for you along as I am doing the Old Trailblazer uploads.
If you want to see a sample of this powerful web services API in action, I have written a sample batch sermon upload program. You can check it out in my blog on this site or go to [URL=http://www.scottmcmahan.net/sermonupload]]]www.scottmcmahan.net/sermonupload[/URL] -- the code is free software, under the GPL license.