Python

For at kunne køre eksemplet herunder skal Python installeres. Se vejledninger og hent installationen på Pythons egen hjemmeside: python.org.
Scriptet gør brug af requests pakken. Installer den ved at køre følgende kommando.


   python -m pip install requests

Følgende Python kode henter et dataudtræk fra API'et.


   import requests
   import json
   api_url = "https://api.uddannelsesstatistik.dk/Api/v1/statistik"
   api_key = INSERT KEY HERE
   query = INSERT QUERY HERE
   headers =  {"content-type":"application/json", "authorization":"Bearer %s" % api_key}
   response = requests.post(api_url, data=json.dumps(query), headers=headers)
   response.json()

Afvikles scriptet fås følgende resultat.


.NET Core

For at kunne køre eksemplet herunder skal .NET Core installeres. Se vejledninger og hent installationen på Microsofts egen hjemmeside: https://dotnet.microsoft.com/en-us/download.
Programmet herunder er skrevet i C#.


    using System;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;

    namespace ConsoleApp1
    {
        class Program
        {
            static void Main(string[] args)
            {
                var url = "https://api.uddannelsesstatistik.dk";
                var path = "/api/v1/statistik";
                var key = "INSERT KEY HERE";
                var query = "INSERT QUERY HERE";

                HttpClient client = new HttpClient();
                client.BaseAddress = new Uri(url);
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", key);
                var response = client.PostAsync(path, new StringContent(query, UnicodeEncoding.UTF8, "application/json")).Result;
                if (response.IsSuccessStatusCode)
                {
                    var result = response.Content.ReadAsStringAsync().Result;
                    Console.WriteLine(result);
                }
            }
        }
    }

Afvikles programmet fås følgende resultat.


Javascript

Javascript afvikler i alle moderne browsere, og gør det nemt at lave kodede tilføjelser til web sider. Javascript kommer som en del af browseren, og der er ikke behov for yderligere installation eller tilføjelser for at begynde at bruge JavaScript.
Modulet herunder gør det nemt at hente data fra vores API.


    function QueryHelper(key, annotation = "") {
        this.url = "https://api.uddannelsesstatistik.dk/Api/v1/";
        this.key = key;
        this.annotation = annotation;

        this.DoQuery = async function (endpoint, qry, accept) {
            return fetch(this.url + endpoint, {
                method: 'POST',
                cache: 'no-cache',
                headers: {
                "Authorization": "Bearer " + this.key,
                "Accept": accept,
                "Content-type": "application/json",
                "Annotation": this.annotation,
            },
            body: JSON.stringify(qry)
            }).then(data => {
                if (data.status == 200 && accept == "application/json")
                    return data.json().then(text => { return text });
                else if (data.status == 200)
                    return data.text().then(text => { return text });
                return Promise.reject(data);
            });
        }

        this.DoSchemaQuery = async function (qry, accept = "application/json") {
            return this.DoQuery("skema", qry, accept);
        }

        this.DoDataQuery = async function (qry, accept = "application/json") {
            return this.DoQuery("statistik", qry, accept);
        }
    };

Modulet anvendes på følgende måde


    var key = "ADD KEY HERE";
    var qry = ADD QUERY HERE;
    var qh = new QueryHelper(key, "JavaScript Example");
    qh.DoDataQuery(qry).then(data => {
        ADD LOGIC HERE
    }).catch((ex) => {
        ex.text().then(txt => { console.log(txt); });
    });

Afvikles scriptet fås følgende resultat.


Java

For at kunne køre eksemplet herunder skal Java installeres. Se vejledninger og hent installationen på Javas egen hjemmeside: www.java.com.

Følgende Java kode henter et dataudtræk fra API'et.


    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;

    class JavaExample {
        public static void main(String[] args) {
            try {
                // Sending get request
                URL url = new URL("https://api.uddannelsesstatistik.dk/Api/v1/statistik");
                String qry = "INSERT QUERY HERE";
                String key = "INSERT KEY HERE";
                HttpURLConnection conn = (HttpURLConnection) url.openConnection();
                conn.setRequestProperty("Accept", "application/json");
                conn.setRequestProperty("Authorization","Bearer " + key);
                conn.setRequestProperty("Content-Type","application/json");
                conn.setRequestMethod("POST");
                conn.setDoOutput(true);
                OutputStream os = conn.getOutputStream();
                os.write(qry.getBytes());
                os.flush();
                os.close();

                BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
                String output;
                StringBuffer response = new StringBuffer();
                while ((output = in.readLine()) != null) {
                    System.out.println("Response:-" + output.toString());
                }
                in.close();
            } catch(Exception ex) {
                System.out.println(ex.toString());
            }
        }
    }

Afvikles scriptet fås følgende resultat.


PHP

For at kunne køre eksemplet herunder skal PHP installeres. Se vejledninger og hent installationen på PHPs egen hjemmeside: www.php.net.
Scriptet gør brug af requests pakken. Installer den ved at køre følgende kommando.


try {
    $url = "https://api.uddannelsesstatistik.dk/Api/v1/statistik";
    $data = 'INSERT QUERY HERE';
    $key = "INSERT KEY HERE";
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/json' , 
        'Authorization: Bearer '.$key 
    ));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    $result = curl_exec($ch);
    if(curl_errno($ch)){
        echo 'Curl error: ' . curl_error($ch);
    }
    $data = json_decode($result, true);
    print_r($data);
    curl_close($ch);
} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}

Afvikles scriptet fås følgende resultat.


Windows Powershell

Følgende script kan afvikle på et Windows styresystem i en Powershell kommando prompt.


$key = 'INSERT KEY HERE''
$data = 'INSERT QUERY HERE'

$headers = @{
    accept = "application/json";
    "content-type" = "application/json; charset=utf-8";
    authorization = "Bearer $key";
}

Invoke-WebRequest -H $headers -B ([System.Text.Encoding]::UTF8.GetBytes($data)) -Method 'POST' -Uri https://api.uddannelsesstatistik.dk/Api/v1/statistik 

Afvikles scriptet fås følgende resultat.


Linux curl

Følgende script kan afvikle på et Linux styresystem ved at bruge kommandoen curl.


curl --insecure -X POST \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-H "authorization: Bearer INSERT KEY HERE" \
-d 'INSERT QUERY HERE' \
https://api.uddannelsesstatistik.dk/Api/v1/statistik

Afvikles scriptet fås følgende resultat.