Csharp (SDK)
using Meitner;
using Meitner.Models.Components;
using Meitner.Models.Requests;
var sdk = new MeitnerSDK(security: new Security() {
Option1 = new SecurityOption1() {
ClientCredentials = "<YOUR_API_KEY_HERE>",
ClientSecret = "<YOUR_API_KEY_HERE>",
},
});
StudentListResponse? res = await sdk.Students.ListAsync(
limit: 1,
offset: 0
);
while(res != null)
{
// handle items
res = await res.Next!();
}from meitner import Meitner, models
import os
with Meitner(
security=models.Security(
option1=models.SecurityOption1(
client_credentials=os.getenv("MEITNER_CLIENT_CREDENTIALS", ""),
client_secret=os.getenv("MEITNER_CLIENT_SECRET", ""),
),
),
) as m_client:
res = m_client.students.list(limit=1, offset=0)
while res is not None:
# Handle items
res = res.next()curl --request GET \
--url https://api.meitner.se/directory/v1/student \
--header 'Client-ID: <api-key>' \
--header 'Client-Secret: <api-key>'const options = {
method: 'GET',
headers: {'Client-ID': '<api-key>', 'Client-Secret': '<api-key>'}
};
fetch('https://api.meitner.se/directory/v1/student', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.meitner.se/directory/v1/student",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Client-ID: <api-key>",
"Client-Secret: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.meitner.se/directory/v1/student"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Client-ID", "<api-key>")
req.Header.Add("Client-Secret", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.meitner.se/directory/v1/student")
.header("Client-ID", "<api-key>")
.header("Client-Secret", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meitner.se/directory/v1/student")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Client-ID"] = '<api-key>'
request["Client-Secret"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"meta": {
"createdAt": "2024-01-15T10:30:00Z",
"createdBy": "987fcdeb-51a2-43d1-b567-123456789abc",
"updatedAt": "2024-01-15T14:45:00Z",
"updatedBy": "987fcdeb-51a2-43d1-b567-123456789abc"
},
"external": {
"sourceID": "12345678",
"source": "ExternalIntegrationAPI"
},
"gender": "Female",
"identityNumber": "20191216-1234",
"identityTemporary": true,
"firstName": "Lise",
"lastName": "Meitner",
"dateOfBirth": "2019-12-16",
"address": {
"postalAddress": "Dalvägen 14",
"postalCode": "169 56",
"postalCity": "Solna",
"countryCode": "SWE",
"municipalityCode": "0184"
},
"emailAddress1": "lise@meitner.se",
"emailAddress2": "lise@gmail.com",
"phoneNumber1": "+46701234567",
"phoneNumber2": "example",
"eduPersonPrincipalName": "kalko@edu.goteborg.se"
}
],
"pagination": {
"offset": 0,
"limit": 1,
"total": 100
}
}{
"error": {
"code": "BadRequest",
"message": "The request contains invalid parameters or malformed data",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Unauthorized",
"message": "Authentication credentials are missing or invalid",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Forbidden",
"message": "You do not have permission to perform this operation",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "NotFound",
"message": "The requested resource could not be found",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Conflict",
"message": "The request conflicts with the current state of the resource",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "RateLimited",
"message": "Too many requests - rate limit exceeded",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Internal",
"message": "An unexpected server error occurred",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}Student
List Students
Returns a paginated list of all Students in your organization.
GET
/
student
Csharp (SDK)
using Meitner;
using Meitner.Models.Components;
using Meitner.Models.Requests;
var sdk = new MeitnerSDK(security: new Security() {
Option1 = new SecurityOption1() {
ClientCredentials = "<YOUR_API_KEY_HERE>",
ClientSecret = "<YOUR_API_KEY_HERE>",
},
});
StudentListResponse? res = await sdk.Students.ListAsync(
limit: 1,
offset: 0
);
while(res != null)
{
// handle items
res = await res.Next!();
}from meitner import Meitner, models
import os
with Meitner(
security=models.Security(
option1=models.SecurityOption1(
client_credentials=os.getenv("MEITNER_CLIENT_CREDENTIALS", ""),
client_secret=os.getenv("MEITNER_CLIENT_SECRET", ""),
),
),
) as m_client:
res = m_client.students.list(limit=1, offset=0)
while res is not None:
# Handle items
res = res.next()curl --request GET \
--url https://api.meitner.se/directory/v1/student \
--header 'Client-ID: <api-key>' \
--header 'Client-Secret: <api-key>'const options = {
method: 'GET',
headers: {'Client-ID': '<api-key>', 'Client-Secret': '<api-key>'}
};
fetch('https://api.meitner.se/directory/v1/student', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.meitner.se/directory/v1/student",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Client-ID: <api-key>",
"Client-Secret: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.meitner.se/directory/v1/student"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Client-ID", "<api-key>")
req.Header.Add("Client-Secret", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.meitner.se/directory/v1/student")
.header("Client-ID", "<api-key>")
.header("Client-Secret", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meitner.se/directory/v1/student")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Client-ID"] = '<api-key>'
request["Client-Secret"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"meta": {
"createdAt": "2024-01-15T10:30:00Z",
"createdBy": "987fcdeb-51a2-43d1-b567-123456789abc",
"updatedAt": "2024-01-15T14:45:00Z",
"updatedBy": "987fcdeb-51a2-43d1-b567-123456789abc"
},
"external": {
"sourceID": "12345678",
"source": "ExternalIntegrationAPI"
},
"gender": "Female",
"identityNumber": "20191216-1234",
"identityTemporary": true,
"firstName": "Lise",
"lastName": "Meitner",
"dateOfBirth": "2019-12-16",
"address": {
"postalAddress": "Dalvägen 14",
"postalCode": "169 56",
"postalCity": "Solna",
"countryCode": "SWE",
"municipalityCode": "0184"
},
"emailAddress1": "lise@meitner.se",
"emailAddress2": "lise@gmail.com",
"phoneNumber1": "+46701234567",
"phoneNumber2": "example",
"eduPersonPrincipalName": "kalko@edu.goteborg.se"
}
],
"pagination": {
"offset": 0,
"limit": 1,
"total": 100
}
}{
"error": {
"code": "BadRequest",
"message": "The request contains invalid parameters or malformed data",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Unauthorized",
"message": "Authentication credentials are missing or invalid",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Forbidden",
"message": "You do not have permission to perform this operation",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "NotFound",
"message": "The requested resource could not be found",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Conflict",
"message": "The request conflicts with the current state of the resource",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "RateLimited",
"message": "Too many requests - rate limit exceeded",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "Internal",
"message": "An unexpected server error occurred",
"requestID": "550e8400-e29b-41d4-a716-446655440000"
}
}Authorizations
ClientCredentials & ClientSecretOAuth2
Query Parameters
The maximum number of Students to return (default: 50) when listing Students
Example:
1
The number of Students to skip before starting to return results (default: 0) when listing Students
Example:
0
Response
Response for Student List operation - returns a paginated list of Student
Array of Student objects
Show child attributes
Show child attributes
Example:
[ { "id": "123e4567-e89b-12d3-a456-426614174000", "meta": { "createdAt": "2024-01-15T10:30:00Z", "createdBy": "987fcdeb-51a2-43d1-b567-123456789abc", "updatedAt": "2024-01-15T14:45:00Z", "updatedBy": "987fcdeb-51a2-43d1-b567-123456789abc" }, "external": { "sourceID": "12345678", "source": "ExternalIntegrationAPI" }, "gender": "Female", "identityNumber": "20191216-1234", "identityTemporary": true, "firstName": "Lise", "lastName": "Meitner", "dateOfBirth": "2019-12-16", "address": { "postalAddress": "Dalvägen 14", "postalCode": "169 56", "postalCity": "Solna", "countryCode": "SWE", "municipalityCode": "0184" }, "emailAddress1": "lise@meitner.se", "emailAddress2": "lise@gmail.com", "phoneNumber1": "+46701234567", "phoneNumber2": "example", "eduPersonPrincipalName": "kalko@edu.goteborg.se" } ]
Pagination information
Show child attributes
Show child attributes
Example:
{ "offset": 0, "limit": 1, "total": 100 }
⌘I