Software Licensing API – Example using C#
This document is a subset of the Software Licensing API document which lists all features available via the API. The following is example code showcasing how to implement those features with C#.
Request
using System;
using System.IO;
using System.Net;
using System.Text;
namespace Rextester
{
public class Program
{
public static void Main(string[] args)
{
// Create a request using a URL that can receive a post.
WebRequest request = WebRequest.Create ("https://yoursite.com/");
// Set the Method property of the request to POST.
request.Method = "POST";
// Create POST data and convert it to a byte array. Do not include the URL if you do URL verification in the EDD SL settings
string postData = "edd_action=check_license&license=&item_id=&url=";
byte[] byteArray = Encoding.UTF8.GetBytes (postData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteArray.Length;
Stream dataStream = request.GetRequestStream ();
dataStream.Write (byteArray, 0, byteArray.Length);
dataStream.Close ();
// Get the response.
WebResponse response = request.GetResponse ();
dataStream = response.GetResponseStream ();
StreamReader reader = new StreamReader (dataStream);
// Read the content. This is the response from the Software Licensing API
string responseFromServer = reader.ReadToEnd ();
// Display the content
Console.WriteLine (responseFromServer);
// Clean up the streams.
reader.Close ();
dataStream.Close ();
response.Close ();
}
}
}
Response
A response to the above query would be a JSON formatted string that would look something like this:
{ "license": "valid", "item_name": "EDD Product name", "expires": "2014-10-23 00:00:00", "payment_id": 54224, "customer_name": "John Doe", "customer_email": "[email protected]" }