curl --request GET \
--url https://api.alpha-1edtech.ai/edubridge/users/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.alpha-1edtech.ai/edubridge/users/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.alpha-1edtech.ai/edubridge/users/', 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.alpha-1edtech.ai/edubridge/users/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.alpha-1edtech.ai/edubridge/users/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.alpha-1edtech.ai/edubridge/users/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.alpha-1edtech.ai/edubridge/users/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"users": [
{
"sourcedId": "<string>",
"givenName": "<string>",
"familyName": "<string>",
"roles": [],
"agents": [],
"userProfiles": [],
"email": "jsmith@example.com",
"dateLastModified": "2023-11-07T05:31:56Z",
"metadata": {},
"userMasterIdentifier": "<string>",
"username": "<string>",
"userIds": [
{
"type": "<string>",
"identifier": "<string>"
}
],
"middleName": "<string>",
"primaryOrg": {
"href": "<string>",
"sourcedId": "<string>",
"type": "<string>",
"name": "<string>"
},
"identifier": "<string>",
"preferredFirstName": "<string>",
"preferredMiddleName": "<string>",
"preferredLastName": "<string>",
"pronouns": "<string>",
"grades": [
"3"
],
"password": "<string>",
"sms": "<string>",
"phone": "<string>",
"demographics": {
"sourcedId": "<string>",
"birthDate": "<string>",
"americanIndianOrAlaskaNative": "<string>",
"asian": "<string>",
"blackOrAfricanAmerican": "<string>",
"nativeHawaiianOrOtherPacificIslander": "<string>",
"white": "<string>",
"demographicRaceTwoOrMoreRaces": "<string>",
"hispanicOrLatinoEthnicity": "<string>",
"countryOfBirthCode": "<string>",
"stateOfBirthAbbreviation": "<string>",
"cityOfBirth": "<string>",
"publicSchoolResidenceStatus": "<string>",
"dateLastModified": "2023-11-07T05:31:56Z",
"metadata": {}
}
}
],
"totalCount": 123,
"pageCount": 123,
"pageNumber": 123,
"offset": 123,
"limit": 123
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "invaliddata"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "unauthorisedrequest"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "forbidden"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "unknownobject"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "invaliddata"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "server_busy"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "internal_server_error"
}
]
},
"imsx_error_details": [
{}
]
}Get users by exclusive role
Returns all users who have exclusively the specified role.
This endpoint filters users to only return those who have one or more instances of the specified role but no other types of roles. For example, if a user has both “student” and “guide” roles, they will not be returned when filtering for “student”.
The response uses the same format as the OneRoster users endpoint.
curl --request GET \
--url https://api.alpha-1edtech.ai/edubridge/users/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.alpha-1edtech.ai/edubridge/users/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.alpha-1edtech.ai/edubridge/users/', 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.alpha-1edtech.ai/edubridge/users/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.alpha-1edtech.ai/edubridge/users/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.alpha-1edtech.ai/edubridge/users/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.alpha-1edtech.ai/edubridge/users/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"users": [
{
"sourcedId": "<string>",
"givenName": "<string>",
"familyName": "<string>",
"roles": [],
"agents": [],
"userProfiles": [],
"email": "jsmith@example.com",
"dateLastModified": "2023-11-07T05:31:56Z",
"metadata": {},
"userMasterIdentifier": "<string>",
"username": "<string>",
"userIds": [
{
"type": "<string>",
"identifier": "<string>"
}
],
"middleName": "<string>",
"primaryOrg": {
"href": "<string>",
"sourcedId": "<string>",
"type": "<string>",
"name": "<string>"
},
"identifier": "<string>",
"preferredFirstName": "<string>",
"preferredMiddleName": "<string>",
"preferredLastName": "<string>",
"pronouns": "<string>",
"grades": [
"3"
],
"password": "<string>",
"sms": "<string>",
"phone": "<string>",
"demographics": {
"sourcedId": "<string>",
"birthDate": "<string>",
"americanIndianOrAlaskaNative": "<string>",
"asian": "<string>",
"blackOrAfricanAmerican": "<string>",
"nativeHawaiianOrOtherPacificIslander": "<string>",
"white": "<string>",
"demographicRaceTwoOrMoreRaces": "<string>",
"hispanicOrLatinoEthnicity": "<string>",
"countryOfBirthCode": "<string>",
"stateOfBirthAbbreviation": "<string>",
"cityOfBirth": "<string>",
"publicSchoolResidenceStatus": "<string>",
"dateLastModified": "2023-11-07T05:31:56Z",
"metadata": {}
}
}
],
"totalCount": 123,
"pageCount": 123,
"pageNumber": 123,
"offset": 123,
"limit": 123
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "invaliddata"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "unauthorisedrequest"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "forbidden"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "unknownobject"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "invaliddata"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "server_busy"
}
]
},
"imsx_error_details": [
{}
]
}{
"imsx_codeMajor": "failure",
"imsx_severity": "error",
"imsx_description": "<string>",
"imsx_CodeMinor": {
"imsx_codeMinorField": [
{
"imsx_codeMinorFieldName": "TargetEndSystem",
"imsx_codeMinorFieldValue": "internal_server_error"
}
]
},
"imsx_error_details": [
{}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Query Parameters
Comma-separated list of fields to include in the response
"sourcedId,name"
The maximum number of items to return in the paginated response. While the OneRoster specification does not define a maximum limit, this implementation enforces a maximum of 3000 to prevent abuse and ensure optimal performance.
1 <= x <= 3000100
The number of items to skip in the paginated response
x >= 00
The field to sort the response by
The order to sort the response by
asc, desc The filter to apply to the response
"status='active'"
PROPRIETARY EXTENSION: Free-text search across multiple fields. Provides convenient text-based querying beyond the standard OneRoster filter parameter.
"john"
1administrator, aide, guardian, parent, proctor, relative, student, teacher