<img src="https://img.shields.io/badge/%20-ALL-%2300B180" style="float:left"/><br />
<img src="https://img.shields.io/badge/%20-Beta-green.svg" /> This is a **beta** offering.
By using this documentation, you are agreeing to abide by the terms of the <a href="https://www.jwplayer.com/beta-program-agreement/" target="_blank">JWP Beta Program Agreement</a>.
<br />
Our **Electronic Programming Guide (EPG)** is a self-updating menu to visualize live channel schedules on your app.

Example EPG display
You can create an EPG for your app using an app config.
An EPG offers several advantages:
Enables your users to navigate live streams
Increases minutes watched due to clear and accessible scheduling information
Markets various media items to users
<br /> <hr />
## Requirements
<table> <thead> <tr> <th> Item </th> <th> Notes </th> </tr> </thead> <tbody> <tr> <td width="25%"> <strong>Active app</strong></td> <td width="75%">Learn more about <a href="/platform/docs/apps-get-started" target="_blank">apps</a></td> </tr> <tr> <td> <strong>App config</strong></td> <td> <a href="/platform/docs/apps-app-config-overview" target="_blank">App config associated</a> with your app</td> </tr> <tr> <td> <strong>Live Channel</strong></td> <td> One or more live channels in your Media Library <br /><br />
Contact your JWP representative to enable and set up live channels for your account.
</td> </tr> <tr> <td> <strong>Live Channel schedule</strong></td> <td> Live Channel schedule in JSON format <br /><br />
The EPG’s channel schedule data must conform to the Broadcast Live <a href="https://docs.vualto.com/projects/vualto-control-hub-docs/en/latest/UserGuide/Events/EditEvent/ChapterPoints.htm" target="_blank">chapter points</a> JSON format, such as these <a href="https://github.com/jwplayer/ott-web-app/tree/develop/test/epg" target="_blank">sample EPG Schedule Data files</a>.
If using a partner-hosted app, contact your partner representative to create and host your live channel schedule JSON.
If using JWP Web App, contact your JW representative for assistance. <br />
You must host your live channel schedule data on your own servers.
</td> </tr> </tbody> </table>
<br /> <hr />
## Create an EPG
The instructions described here apply to the open-source Web App. Contact your app partner for instructions for you specific situation.
Use the following steps to create an EPG:
[Set custom parameters for each live channel](🔗).
<a href="/platform/docs/vdh-create-a-manual-playlist" target="_blank">Create a manual playlist</a> of your live channels.<br />In step 9, add the following key-value pair under **Custom Parameters**:
For **Key**, enter _contentType_.
For **Value**, enter _Live_.

Playlist custom parameters for live channel
<a href="/platform/docs/apps-add-content-to-the-landing-page#add-content" target="_blank">Add the playlist</a> of your live channels to the app config (steps 1-4) and click **Save**.
<br /> <br />
### Set custom parameters for a live channel
To incorporate a live channel into your app, you must add several custom parameters to the channel.

Live channel custom parameters
<br />
Use the following steps to set custom parameters for a live channel:
In your JWP dashboard <a href="https://dashboard.jwplayer.com/p/media" target="_blank">Media Library</a>, click the name of the media item for the live channel created by your JWP representative. The details page for the media item appears.
Edit the media <a href="/platform/docs/vdh-edit-video-metadata" target="_blank">metadata</a>, such as the title, description, and tags.
Under **Custom Parameters**, add all the values listed in the following table.
Key Description _catchupHours_ Must match the value in your Broadcast Live configuration Contact your JWP representative for this value. _contentType_ Routes the media item to the app’s live channels page **Value**: _LiveChannel_ _liveChannelsid_ Playlist ID for the dynamic playlist containing your live channels _scheduleDemo_ (Web App only) Interprets all values as **Today** when testing your content _scheduleUrl_ URL of <a href="https://docs.vualto.com/projects/vualto-control-hub-docs/en/latest/UserGuide/Events/EditEvent/ChapterPoints.html" target="_blank">schedule data JSON</a> (Optional) <a href="/platform/docs/vdh-create-default-custom-parameters" target="_blank">Create default custom parameters</a>.
Click **Save**.
<br /> <hr />
## Manage an EPG
The following table explains the various ways to manage an existing EPG.
<table> <thead> <tr> <th> Action </th> <th> Notes </th> </tr> </thead> <tbody> <tr> <td width="25%"> <strong>Customize</strong></td> <td width="75%">You can customize the appearance of your EPG in the <a href="/platform/docs/apps-customize-branding" target="_blank">app config</a>.</td> </tr> <tr> <td> <strong>Edit</strong><br />or<br /><strong>Delete</strong></td> <td> To edit or delete schedule data, update your JSON file according to the Broadcast Live <a href="https://docs.vualto.com/projects/vualto-control-hub-docs/en/latest/UserGuide/Events/EditEvent/ChapterPoints.html" target="_blank">chapter points</a> format: <br /><br /> <ul> <li>If using a partner-hosted app, contact your partner representative to receive help with editing or deleting your JSON file.</li> <li>If using JWP Web App, contact your JW Solutions Consultant for assistance. Your Solutions Consultant will edit or delete live channel schedule data to reflect your desired changes.</li> </ul> </td> </tr> </tbody> </table>
<br />
<!-- Removes the automatic page-to-page navigation at the bottom of the page -->
<style> .rm-Pagination { display: none; } </style>