
Three Simple Methods to Invoke the Vidispine API From .NET Code by Vidispine June 15, 2016 Howto
Binagora is on fire and returns with another guest post. We know we have a bunch of developers on .NET, therefore we created a .NET SDK. This post shows how you can invoke the Vidispine API from .NET, using the SDK or using standard .NET classes. All with example code.
The following article describe three simple ways to invoke the Vidispine API from .NET code. Two of them use standard .NET classes, while the last one uses the Vidispine .NET SDK. Code snippets were written using C# but you can of course use another language, such as VB.NET, if you want to.
We'll use the simplest test case possible, and let us retrieve the id of the first available item in the Vidispine library.
First of all, let's see how it's done in Postman. As you may already know, it's just a simple http GET request to the Vidispine API to retrieve an item id.
Notice that we're using two Postman variables for a specific environment:
{{vs}}: this is the Vidispine base address (url + port)
{{credentials}}: this is the username and password in basic http format (:) encoded in base64.
Ok, that was the principle of how to query the Vidispine API for an item id. Now let's do the same thing from code.
Given the following constants:
C#
private const string address = http://xxx.xxx.xxx.xxx:8080/API; private const string userName = admin; private const string password = admin;
1
2
3
private const string address = http://xxx.xxx.xxx.xxx:8080/API;
private const string userName = admin;
private const string password = admin;
Option 1: Using WebRequest class
C#
private static string GetUsingWebRequest(string requestUri) { var request = (HttpWebRequest)WebRequest.Create(requestUri); request.Credentials = new NetworkCredential(userName, password); using(var response = (HttpWebResponse)request.GetResponse()) { var stream = response.GetResponseStream(); var reader = new StreamReader(stream); string result = reader.ReadToEnd(); return result; } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
private static string GetUsingWebRequest(string requestUri)
{
var request = (HttpWebRequest)WebRequest.Create(requestUri);
request.Credentials = new NetworkCredential(userName, password);
using(var response = (HttpWebResponse)request.GetResponse())
{
var stream = response.GetResponseStream();
var reader = new StreamReader(stream);
string result = reader.ReadToEnd();
return result;
}
}
Create a WebRequest, set the credentials and execute the request. Remember to release the request calling the Dispose() method or wrapping the instance into a using statement as we did in the sample.
Notice that in this case, we know the response contains a plain text with an item id. That's why we read the stream, and converts it into a string instead of a specific type.
Option 2: Using HttpClient class
C#
private static string GetUsingHttpClient(string requestUri) { var handler = new HttpClientHandler() { Credentials = new NetworkCredential(userName, password) }; var client = new HttpClient(handler); client.BaseAddress = new Uri(address); string message = client.GetStringAsync(requestUri).Result; return message; }
1
2
3
4
5
6
7
8
9
10
11
12
13
private static string GetUsingHttpClient(string requestUri)
{
var handler = new HttpClientHandler()
{
Credentials = new NetworkCredential(userName, password)
};
var client = new HttpClient(handler);
client.BaseAddress = new Uri(address);
string message = client.GetStringAsync(requestUri).Result;
return message;
}
Similar to previous option, it is just a matter of using another http client from the .NET framework.
In this case, credentials are specified on a client handler, then the http client is created using that handler.
The request is executed asynchronously, which is powerful and could be needed in a real situation.
In this case we're just reading the Result property immediately, but it's important to understand that the request is fired in an independent thread. Once thread is completed, you can execute your own callback.
Option 3: Using Vidispine .NET SDK
C#
private static string GetUsingVidispineSdk() { var rootResource = new VidispineResource(address).Authenticate(userName, password); var itemResource = rootResource.Item; string result = itemResource.SearchPlainGET.Number(1).CallText(); return result; }
1
2
3
4
5
6
7
8
private static string GetUsingVidispineSdk()
{
var rootResource = new VidispineResource(address).Authenticate(userName, password);
var itemResource = rootResource.Item;
string result = itemResource.SearchPlainGET.Number(1).CallText();
return result;
}
Finally the easiest way to do it, just call the SDK. Notice that in this case, the action to be executed is not part of the address. You specify the object and action based on the properties. We may say this is the strongly typed option to do it.
You can find more information about how to download and use the Vidispine .NET SDK in the post Getting Started With the Vidispine .NET SDK. If you want to try out the SDK, you can find the latest versions of the SDK here:
64-bit version of the Vidispine .NET SDK v4.5
32-bit version of the Vidispine .NET SDK v4.5
Running the app will show you the result 3 times, once for each option. In this case first item available is #525 but of course that will depend on your environment.
You can download the full console app code from the following GitHub Gist.
Hope you like it.
This blog post was written by our friends at Binagora. Check them out and see how they can help you with your next Media&Entertainment project.
Most recent headlines
05/01/2027
Worlds first 802.15.4ab-UWB chip verified by Calterah and Rohde & Schwarz to be ...
01/06/2026
January 6 2026, 05:30 (PST) Dolby Sets the New Standard for Premium Entertainment at CES 2026
Throughout the week, Dolby brings to life the latest innovatio...
02/05/2026
Dalet, a leading technology and service provider for media-rich organizations, t...
01/05/2026
January 5 2026, 18:30 (PST) NBCUniversal's Peacock to Be First Streamer to ...
01/04/2026
January 4 2026, 18:00 (PST) DOLBY AND DOUYIN EMPOWER THE NEXT GENERATON OF CREATORS WITH DOLBY VISION
Douyin Users Can Now Create And Share Videos With Stun...
26/03/2026
Extron and Audio-Technica have announced that their Design Solutions devices, Ce...
26/03/2026
SPORTEL Asia took place March 24-25 at the Orchard Hotel Singapore, drawing 370 participants representing more than 220 companies from 35 countries. Approximate...
26/03/2026
LTN will demonstrate satellite-to-IP migration solutions for broadcasters, cable networks, MVPDs, and station groups at NAB Show 2026 (Booth W2100).
The C-Ban...
26/03/2026
The Seattle Mariners have partnered with Daktronics to install an upgraded outfi...
26/03/2026
The Esports Foundation (EF) has awarded National Team Partner status to organizations and individuals across more than 100 countries and territories for the Esp...
26/03/2026
Telestream has announced expanded integration between its Vantage workflow platf...
26/03/2026
FOR-A Corporation has announced a partnership with Nippon TV and NVIDIA to distr...
26/03/2026
CBS Sports and the WNBA have expanded their partnership through a new long-term, multiplatform rights agreement. CBS Sports will feature up to 20 regular-season...
26/03/2026
Zac Brown Band will star in the Sunday Night Baseball show open on NBC and Peacock, NBC Sports announced. The open was filmed at American Family Field, home of ...
26/03/2026
Major League Baseball opens the 2026 season with nationally televised games across multiple media partners. Fans can visit MLB.com/Watch for a complete schedule...
26/03/2026
DIRECTV has announced an agreement to carry nine new MLB-operated team channels, covering the Cincinnati Reds, Detroit Tigers (Detroit SportsNet), Kansas City R...
26/03/2026
Nationals.TV, the Washington Nationals' local broadcast channel, is now avai...
26/03/2026
Starting Thursday, March 26, MLB.TV will be available on the ESPN App, giving fans access to more than 2,000 out-of-market regular season games. Fans can also r...
26/03/2026
Spotify's partnership with NAVER, Korea's leading digital platform, is built around one simple goal: making it easier for listeners in Korea to discover...
26/03/2026
Exclusive to ComposerCloud for first month
Sample library and virtual instrument gurus EastWest have announced the upcoming release of a new virtual drum i...
26/03/2026
Friday 27 March
Friday 27 March will mark Dynamic Range Day 2026, the annual day of online activity that was started in 2010 by mastering engineer Ian Sheph...
26/03/2026
Includes four separate instruments
Max Richter's SRM Sounds venture have just announced their fifth release, ASMR Choir. Captured at the main live room ...
26/03/2026
The National Film and Video Foundation (NFVF), an agency of the Department of Sport, Arts and Culture (DSAC), has been tasked with administering the Sixth Presi...
26/03/2026
By Matt Klein
Hello to everyone reading this - whether you're a current YEP, HPA member, or just YEP-curious. I'm Matt Klein, one of the co-chairs of t...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
28 participating companies, from start-ups to blue-chips, lead the UK Group as part of the GREAT Britain and Northern Ireland presence across all the Halls at N...
26/03/2026
Arkona Unveils BLADE//planner and Major Usability Enhancements at NAB 2026
Brie Clayton March 26, 2026
0 Comments
New graphical configuration tool and...
26/03/2026
Bitfocus showcases complete control at NAB Show 2026
Brie Clayton March 26, 2026
0 Comments
Continuing development drives advances in security, availa...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
26/03/2026
Nevion introduces powerful new Panel Builder to enhance VideoIPath broadcast con...
26/03/2026
2026 Oscar Nominated Films Powered by Blackmagic Design
Brie Clayton March 25, 2026
0 Comments
DaVinci Resolve Studio used on 27 of this year's no...
26/03/2026
Leader to present full suite of advanced Test & Measurement solutions at NAB Sho...
26/03/2026
Boston Conservatory to Present New England and Collegiate Premiere of Groundbrea...
26/03/2026
Thursday 26 March 2026
HBO Max included for Sky and NOW customers from 26 March...
26/03/2026
Thursday 26 March 2026
Sky Sets Iconic Costumes Dancing Together Like Never Before' in Brand CampaignTurn on cookies to view this content. Go to Privacy o...
26/03/2026
Wuppertal March 26, 2026
CS live Builds Future-Ready OB Van With Riedel MediorNet and hi Control SystemRiedel Communications today announced that Czech-based ...
26/03/2026
Back to All News
Have a Wish Worth Dying For? Netflix's First Korean YA Hor...
26/03/2026
Back to All News
The Truthers, Starring Jose Coronado and St phanie Magnin, Pre...
26/03/2026
Enhancements to Harmonic's Sports Streaming Solution Introduce Server-Side Multiview, Contextual Metadata-Driven Advertising, Dynamic In-Stream Ads and Robu...
26/03/2026
Open the report
Our 2025 report brings together results from 79 business magazine titles across 22 market sectors, published by 49 media owners. Over the year,...
26/03/2026
Editor's note: This post is part of Into the Omniverse, a series focused on ...
26/03/2026
RT Commercial today announced Fiat as sponsor of The Louise Duffy Show on RT Radio 1, Weekdays 3pm 4pm.
The Louise Duffy Show is the home of daytime music...
26/03/2026
That gaming backlog won't clear itself - GeForce NOW is here to help. Stream the latest titles straight from the cloud across a variety of devices.
This we...
26/03/2026
Wayne, N.J., March 26, 2026 Phantom High-Speed announces the latest product li...