Channel Feed API

Every BrightTALK Channel has an associated feed API that returns a list of its publicly available Communications (e.g. webcasts).The API supports Channel owners building BrightTALK content integrations – custom listings of public Communications for display on your own or your partner’s websites or other web-apps.

The feed API returns a list of the Channel’s publicly available Communications, that are published and in a state of upcoming, live or recorded, sorted in scheduled date / time order (most recent first). Each entry in the list includes data about an individual Communication. In addition to essential information about the Communication, such as it’s title, start date/time and presenter, the data also includes fields which can be used to support intelligent content filtering such as the Communication’s status, categories and tags.

A Channel’s public feed is accessible at a URL relative to the Channel’s public viewing URL on the BrightTALK portal – https://www.brighttalk.com/channel/{channelId}/feed. The {channelId} is a unique identifier which can be discovered in URL bar of your browser when viewing your channel.

For example, for the BrightTALK Academy channel, the feed is available via

https://www.brighttalk.com/channel/1166/feed

 

For technical specifications, please see further details below:

Specification

The feed is returned in Atom format (see RFC 4287) with Atom compliant BrightTALK extensions. There is an atom:entry element in the feed for each public or ‘feed-only’ Communication that are published and in a state of upcoming, live, processing or recorded. (Communications that either flagged as private (practice), or have been cancelled, unpublished, or deleted are not included).  The child elements in each atom:entry, including its Atom-compliant BrightTALK extensions (prefix bt:) are as follows.

  • id - permanent GUID for the Communication.
  • updated - date and time the entry was last updated.
  • title - title of the Communication.
  • author/name - name(s) of the Communication’s presenter(s)
  • summary - description of the Communication.
  • bt:communication id - ID of the Communication on the BrightTALK platform
  • bt:channel id - ID of the Channel on the BrightTALK platform
  • bt:status - state of the Communication - upcoming, live, processing, or recorded
  • bt:format - audio or video
  • bt:duration - duration of the Communication in seconds
  • bt:start - scheduled start time of the Communication
  • bt:entryTime - date/time when viewers can enter a live Communication - automatically set to 5 minutes before scheduled start time
  • bt:closeTime - scheduled end date/time of the Communication
  • bt:rating - average user rating of Communication, on a scale of 0 to 5
  • bt:featured - indicates this Communication’s start time was the closest (before or after) to the time the feed was requested. 
  • category - tags (scheme=keyword) and categorization (scheme=category) tags assigned to the Communication.
  • link to webcast - the designated page where the Communication can be accessed, either on the BrightTALK portal, or a customer’s web page.
  • link to thumbnail image - either first slide of Communication, or a selected preview image
  • link to full-sized preview image - either first slide of Communication, or a selected preview image
  • link to calendar file - link to a .vcs file viewers can download and add to Outlook or other compatible calendar program

All dates/times in the feed are in the UTC time zone (in Unix timestamp format). It is the responsibility of the application consuming and parsing the feed to convert these times to the desired time zone of the viewer.

Request

GET /channel/{channelId}/feed

Parameters

Name Required Description
page N The page of the feed to return. Defaults to 1 (the first page).
size N The page size in terms of the no. of feed entries. Defaults to 1,000.

 

Success Responses

Feed entries are reported in scheduled date / time order, descending.

Zero Communications in Channel 

HTTP/1.1 200 OK

Content-Type: application/xml;charset=UTF-8

...

<?xml version="1.0" encoding="utf-8"?>

<feed xmlns:bt="http://brighttalk.com/2009/atom_extensions"   

  xmlns:ns3="http://www.w3.org/2005/Atom"/>

One or more Communications in Channel

HTTP/1.1 200 OK

Content-Type: application/xml;charset=UTF-8

...

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<!-- Atom Syndication Format with BrightTALK (bt:) extensions. See RFC 4287 -->

<feed xmlns:bt="http://brighttalk.com/2009/atom_extensions" 

  xmlns:ns3="http://www.w3.org/2005/Atom">

<id>tag:brighttalk.com,2011:channel:{channelId}</id>

<updated>2012-06-21T09:48:51Z</updated>

<title>Channel’s configured ‘name’.</title>

<subtitle>Channel’s configured strap/tagline.</subtitle>

<bt:description>Channel’s configured description.</bt:description>

 

<link href="https://www.brighttalk.com/service/channel/channel/{channelId}/feed? 
  page=1&amp;size=1000" rel="self" type="application/atom+xml"/>

 

<link href="https://www.brighttalk.com/channel/{channelId}" rel="alternate" 

  type="text/html"/>

 

<!-- Paging links -->

<link href="https://www.brighttalk.com/service/channel/channel/{channelId}/feed?

  page={n}&amp;size=1" rel="last" type="application/atom+xml"/>

<link href="https://www.brighttalk.com/service/channel/channel/{channelId}/feed?

  page=2&amp;size=1" rel="next" type="application/atom+xml"/>  

 

<!-- One atom:entry element for each public Communication in appropriate state -->

<entry>

  <id>tag:brighttalk.com,2011:communication:{commId}</id>

  <updated>2012-04-15T16:04:50Z</updated>

  <title>Communication’s title</title>

  <author><name>Communication’s presenter(s)</name></author>

  <summary>Communication’s description.</summary>

  <bt:communication id="{commId}"/>

  <bt:channel id="{channelId}"/>

  <bt:featured>true</bt:featured>

  <!-- One of ‘upcoming’, ‘live’, ‘processing’ or 'recorded' -->

  <bt:status>upcoming</bt:status>

  <bt:format>audio</bt:format>

  <!-- Duration in seconds -->

  <bt:duration>448</bt:duration>

  <!-- Start time in UNIX timestamp format -->

  <bt:start>1368918000</bt:start>

  <!-- Optional - only present if status upcoming -->

  <bt:entryTime>1368917700</bt:entryTime>

  <!-- Optional - only present if status upcoming or live -->

  <bt:closeTime>1369026300</bt:closeTime>

  <!-- Average rating -->

  <bt:rating>3.0</bt:rating>

  <!-- Optional - Only if Communication’s start time is closest to ‘now’ -->

  <bt:featured>true</bt:featured>

 

  <!-- One or more keywords (aka tags) -->

  <category scheme="keyword" term="test"/>

  <category scheme="keyword" term="integration"/>

  ...

  <!-- Optional - Zero of more categorization tags -->

  <category scheme="category" term="Asset class/Gilt"/>

  <category scheme="category" term="Asset class/Bond"/>

  ...

  <link href="https://www.brighttalk.com/webcast/{channelId}/{commId}" rel="alternate" 

    type="text/html"/>

  <!-- Optional - only present if the Communication has a thumbnail image -->

  <link href="https://www.brighttalk.com/communication/{commId}/tn1_1.png" 

    rel="enclosure" title="thumbnail" type="image/png"/>

  <!-- Optional - only present if the Communication has slides -->

  <link href="https://www.brighttalk.com/communication/{commId}/slide1_001.png" 

    rel="related" title="preview" type="image/png"/>

  <!--Optional - only present for upcoming Communication -->

  <link href="{calendar file url}" 

    rel="related" title="calendar" type="text/calendar" />

</entry>

<entry>...</entry>

...

</feed>

 

Error Responses

None.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request