<img src="https://img.shields.io/badge/%20-ENTERPRISE-%23B10031" style="float:left"/><br />
The most basic advertising implementation is to run a single VAST ad tag as a pre-roll before each playlist item.

If you are using FreeWheel, follow the steps in [Enable FreeWheel Ad Manager](🔗).
If you are using a cloud-hosted player, you can [create an ad schedule](🔗) in your JWP dashboard and associate the ad schedule with your cloud-hosted player. The ad schedule will play in every instance of the embedded player.

Since any changes made to the `
advertising
` object override any advertising settings made in the dashboard, be sure to include all existing advertising dashboard configurations within the `advertising
` object.
<br /> <hr />
## Add a pre-roll ad break to a player
Use the following steps to add a pre-roll to an [embedded player](🔗):
Within `
setup()
` of an embedded JWP, add an <a href="/players/reference/advertising-config-ref" target="_blank">advertising</a> object.Define the `
client
` property within the `advertising
` object as `vast
` (VAST).Define the `
adscheduleid
` property within the `advertising
` object. Assign a randomly-generated, eight character, alpha-numeric value to this property.Define a <a href="/players/reference/advertising-config-ref#advertisingschedule" target="_blank">schedule</a> array within the `
advertising
` object. At the minimum, you must assign an ad tag to the `tag
` property. You can also assign the URL of a VMAP tag to the `schedule
` property.

As a shortcut, you can define `
advertising.tag
` (String) to create a single pre-roll ad break. If you use this shortcut, you cannot add multiple ad breaks.The `
advertising.tag
` property and `advertising.schedule[]
` property cannot be used in the same `advertising
` object.
<br />
You can build on this basic implementation by [adding multiple ad breaks](🔗), [defining ad rules](🔗) or configuring Player Bidding.
<br /> <hr />
## Add multiple ad breaks to a player
Use the following steps to add multiple ad breaks to the previous VAST pre-roll example:
Define an additional index within the <a href="/players/reference/advertising-config-ref#advertisingschedule" target="_blank">advertising.schedule</a> array.
Assign an ad tag to the `
tag
` property.When defining the `
offset
` property, choose one of the following values to schedule a mid-roll or post-roll ad:<br /><br />**Mid-roll**<br />Â Â - **{number}**: (Number) Ad plays after the specified number of seconds.<br />Â Â - **{timecode}**: (String) Ad plays at a specific time, in `hh:mm:ss:mmm
` format.<br />Â Â - **{xx%}**: (String) Ad plays after xx% of the content has played.<br /><br />**Post-roll**<br />Â Â - `post
`: (String) Ad plays after the content.
You can build on this basic implementation by [defining ad rules](🔗) or setting up Player Bidding.