Find an API

Search public APIs with auth details & Postman guides

← All APIs

Learnifier

learnifier · Education

Education No Auth Free & Open education

Learnifier API

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET Get Organization Unit with External Id

Returns information about the organization unit with the specified external id.

https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit?extid=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit?extid=example"
import requests
params = {
    "extid": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit');
url.searchParams.set('extid', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit")
	q := baseURL.Query()
	q.Set("extid", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit")
uri.query = URI.encode_www_form({
  "extid" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extorgunit?" . http_build_query([
    "extid" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET Gets a participation by external id

Gets a participation by external id.

https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation?extid=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation?extid=example"
import requests
params = {
    "extid": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation');
url.searchParams.set('extid', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation")
	q := baseURL.Query()
	q.Set("extid", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation")
uri.query = URI.encode_www_form({
  "extid" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extparticipation?" . http_build_query([
    "extid" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET Gets Organization Unit by external id

Gets an Organization Unit by external id

https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject?extid=example

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject?extid=example"
import requests
params = {
    "extid": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject');
url.searchParams.set('extid', 'example');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject")
	q := baseURL.Query()
	q.Set("extid", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject")
uri.query = URI.encode_www_form({
  "extid" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/learnifier.com/1.1.0/extproject?" . http_build_query([
    "extid" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with Learnifier?

Learnifier is a Education API. Developers commonly use education APIs for:

  • surfacing course catalogues and learning resources
  • building quiz and assessment tools
  • integrating with LMS platforms
  • tracking student progress and certifications
  • creating adaptive learning experiences

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Learnifier is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide

Open documentation ↗