Bob Kolo - V.P. of Technology | Jun 29, 2011
We are proud to introduce IVA's OData API 1.0, our newest software system. It’s designed to greatly
improve your queries, expand your search across multiple media categories, and make your use of IVA content simple and intuitive. This Cloud-based service helps insure that our systems are the most reliable, scalable, and portable in the industry. IVA's OData API 1.0 contains over 20 collections of data items related to Movies, Games, Music Videos, Songs, TV Series, TV Seasons, and TV Episodes.
The IVA OData API 1.0 is built using OData (Open Data Protocol) (for powerful queries) and it leverages web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON. For more information on oData please visit their web site http://www.odata.org/ .
RESTful - IVA's OData API 1.0 incorporates Representational State Transfer (REST) architecture.
This makes the system easy to use and easy to understand. Data can be accessed using simple,
intuitive URLs to content. For example: http://api.internetvideoarchive.com/1.0/DataService/
EntertainmentPrograms would return all EntertainmentPrograms.
EntertaInmentPrograms - All of IVA's content is now integrated into a single collection of
Entertainment Programs that allows users to search across TV, Movies, Music, Games and Other
entertainment content. Users can also specify exact Entertainment Program types if they wish.
TV Data - IVA has spent the past year upgrading our Television meta data and TV promos in anticipation of Web Services. TV content is now organized and searchable by TV Series, TV Seasons, and TV Episodes with a Series -> Season -> Episode hierarchy.
Unlimited Filtering - All of the IVA collections can be queried using every property in the collection. Filtering operators include equal (Eq), not equal (Ne), greater than (Gt), greater than or equal to (Ge), less than (Lt), less than or equal to (Le), And, Or, and Not. For a complete list of all filtering options visit oDATA query options.
IVA Warning – IVA’s database now includes "red band" content and foreign content that is not suitable for general audiences. These video assets are available in the VideoAssets collection where the IVAWarning property is set to ‘true’. This flags the content so that you can choose whether or not to include it on your site.
Joining Data Server Side - IVA's OData API 1.0 allows developers to join various associated collections of data together to reduce round trip request. This improves efficiency and performance.
New Security Options - In addition to using a DeveloperID Token appended to the URL, developers can now pass the DeveloperID in the request header. IVA also offers Basic Authentication options for subscribers with a CustomerID and password.
Service Limiting - IVA's OData API 1.0 now uses rate limiting by IP address, and DeveloperID. This rate-limiting ensures that access to the service is available.
Data Formats - IVA's OData API 1.0 are available in ATOM and JSON formats.
Compatibility and Accessibility - IVA's OData API 1.0 was built using open standard OData, so it
is compatible with a host of OData-Ready applications like Excel, Web Browsers, and various Client Libraries.
GetEncodes() Method – This provides a secure way to get hashed URLs to video content for any video resource.
Documentation - As with any other OData service, you can browse the top level endpoint (or any
intermediate resource) to discover the sub-resources available, or you can use the documentation [link to resources here] to guide your exploration.
- Check out the oData SDK to download the appropriate client library.
- Review the $metadata page and Collections page of the Web Services for a detailed list of
collections and properties or review the Data Dictionary Documentation for a written explanation of each item available in the OData API.
- Review the Query Examples page for frequently used queries to ingest IVA Meta Data.
- Download the example project (VB.NET)
We love LinqPad to design queries against the Web Service. Linqpad allows you to see all of the properties in the collections and displays the results in html grid. See instructions for setting up LinqPad here.
Here's a nice Article on Microsoft's site that contains oData examples.