You have a number of choices to make when choosing who, where and when people view your Vid.lys. There's also a progression of API calls to make in order to acheive protected results .
You can use a mix of IP ranges & Expiration dates & tokens. Use one or all three!
DATE CONTROLS: Examples: (from http://api.vid.ly/#AddMedia)
This example is of an XML that will allow the start date of the vid.ly to be September 22, 2015.
<?xml version="1.0"?>
<Query>
<Action>AddMedia</Action>
<userid>[userid]</userid>
<userkey>[userkey]</userkey>
<Source>
<sourcefile>[sourcefile]</sourcefile>
<Protect>
<StartDate>2015-09-22 00:00:00</StartDate>
</Protect>
</Source>
</Query>
XML sample of Vid.ly that will expire @ September 25, 2015.
<?xml version="1.0"?>
<Query>
<Action>AddMedia</Action>
<userid>[userid]</userid>
<userkey>[userkey]</userkey>
<Source>
<sourcefile>[sourcefile]</sourcefile>
<Protect>
<ExpirationDate>2015-09-25 00:00:00</ExpirationDate>
</Protect>
</Source>
</Query>
XML Sample of Vid.ly that will allow the Vid.ly to be available on September 22, but expire on the 25th of September 2015.
<?xml version="1.0"?>
<Query>
<Action>AddMedia</Action>
<userid>[userid]</userid>
<userkey>[userkey]</userkey>
<Source>
<sourcefile>[sourcefile]</sourcefile>
<Protect>
<StartDate>2015-09-22 00:00:00</StartDate>
<ExpirationDate>2015-08-25 00:00:00</ExpirationDate>
</Protect>
</Source>
</Query>
IP RANGE: Feel free to use a number of dates and IP ranges to customize your protection. With the <ipaddress> tag, you can use multiples of these, or send a comma delimited list.
Example:
<IPAddress>192.168.1.1-50</IPAddress>
<IPAddress>10.1.2.1</IPAddress>
<IPAddress>20.1.3.5</IPAddress>
..which is equivalent to:
<IPAddress>192.168.1.1-50, 10.1.2.1, 20.1.3.5</IPAddress>
IP addresses can be defined as below:
192.168.1.50 – just a single IP
192.168.1.1-50 – IP range from 192.168.1.1 to 192.168.1.50
192.168.1.* – IP range from .0 to .255
192.168.1-10.* – even bigger IP range
192.168.2.*,192.168.3.1-50,192.168.4.100 – several masks combined, separated with comma.
via XML API, use this as a template for protecting via IP:
<Query>
<Action>AddMedia</Action>
<UserID>[User ID]</UserID>
<UserKey>[User key]</UserKey>
<Notify>[Notify URL]</Notify>
<Source>
<SourceFile>[SourceFile1]</SourceFile>
<Protect>
<IpAddress>89.100.11.*,89.100.12.1-20,89.100.13.50</IpAddress>
</Protect>
</Source>
</Query>

