keyengine

standalone easy-to-plug license issuer

Purchase a license

« To main page

License creation code snippets

API v1

php

(tested on version 7.3)

<?php
$keHost = 'lic.example.com';
$keSecret = '12345';
$keTest = false;
$productDescr = 'Acme program license for 1 year';
$productId = 'ACME1';
$licType = 'enterprise';
$name = 'Johnny Walker';

function gen_license() {
    global $keHost, $keSecret, $keTest;
    global $productDescr, $productId, $licType, $name;
    $data = [[
        'articles' => [['name'=>$productId]],
        'productName' => $productDescr,
        'test'=> $keTest,
        'licensedto' => $name,
        'lictype' => $licType,
        'licduration' => '1y',
        'name' => $name,
        'addrLine1' => '',
        'city' => '',
        'state' => '',
        'zipCode' => '',
        'country' => '',
        'email' => 'john@example.com',
        'phoneNumber' => ''
    ]];
    echo json_encode($data);

    $url = $keHost;

    $options = array(
        'http' => array(
            'header'  => "Content-type: application/json\r\nAuthorization: Secret $keSecret\r\n",
            'method'  => 'POST',
            'content' => json_encode($data)
        )
    );
    $context  = stream_context_create($options);
    $result = file_get_contents($url . '/v1/issue/', false, $context);
    $error = error_get_last();
    if ($result === false)
        return array(false, $error['message']);
    return json_decode($result);
}

API v0

php

(tested on version 7.3)

<?php
$keHost = 'lic.example.com';
$keSecret = '12345';
$keTest = false;
$productDescr = 'Acme program';
$productId = 'ACME1';
$licType = 'enterprise';

function gen_license() {
    global $keHost, $keSecret, $keTest;
    global $productDescr, $productId, $licType;
    $data = array();
    $data['productId'] = $productId;
    $data['productName'] = $productDescr;
    $data['test'] = $keTest ? "true" : "false";
    $data['licensedto'] = $_POST['licensedto'];
    $data['lictype'] = $licType;
    $data['licduration'] = null;
    $data['name'] = $_POST['name'];
    $data['addrLine1'] = $_POST['addrLine1'];
    $data['city'] = $_POST['city'];
    $data['state'] = $_POST['state'];
    $data['zipCode'] = $_POST['zipCode'];
    $data['country'] = $_POST['country'];
    $data['email'] = $_POST['email'];
    $data['phoneNumber'] = $_POST['phoneNumber'];

    $url = $keHost;

    $options = array(
        'http' => array(
            'header'  => "Content-type: application/x-www-form-urlencoded\r\nAuthorization: Secret $keSecret\r\n",
            'method'  => 'POST',
            'content' => http_build_query($data)
        )
    );
    $context  = stream_context_create($options);
    $result = file_get_contents($url . '/upload/', false, $context);
    $error = error_get_last();
    if ($result === false)
        return array(false, $error['message']);
    return array(json_decode($result));
}

« To main page