List Child Clients
Returns all descendant clients of the target client as a flat list.
Query Parameters
- client_identityString
- `client_identity` of the target client. Defaults to the signed-in member's client. Must be the signed-in client or one of its descendants; any other value returns 403 `OuterClientScopeForbidden`
Response Fields
- client_identityStringrequired
- `client_identity` of the target client
- childrenArray of objectsrequired
- All descendant clients, excluding the target client itself (breadth-first order)
- client_identityString
- `client_identity` of the child client
- client_nameString
- Child client name
- parent_client_identityString
- `client_identity` of the parent client. Use it to rebuild the tree
- depthNumber
- Depth from the target client (direct child = 1)
If there are no child clients, children is an empty array. Deleted clients are excluded. Pass a client_identity from this response as the client_identity parameter of other query APIs to fetch data for that client.
curl -X GET "https://opsapi.edutap.ai/ops/v1/clients/children" \
-H "Authorization: Bearer ${ACCESS_TOKEN}"import requests
res = requests.get(
"https://opsapi.edutap.ai/ops/v1/clients/children",
headers={"Authorization": "Bearer ${ACCESS_TOKEN}"},
)
print(res.json())package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://opsapi.edutap.ai/ops/v1/clients/children", nil)
req.Header.Set("Authorization", "Bearer ${ACCESS_TOKEN}")
res, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer res.Body.Close()
b, _ := io.ReadAll(res.Body)
fmt.Println(string(b))
}import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) throws Exception {
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://opsapi.edutap.ai/ops/v1/clients/children"))
.header("Authorization", "Bearer ${ACCESS_TOKEN}")
.GET()
.build();
HttpResponse<String> res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(res.body());
}
}const res = await fetch("https://opsapi.edutap.ai/ops/v1/clients/children", {
method: "GET",
headers: {"Authorization": "Bearer ${ACCESS_TOKEN}"},
});
console.log(await res.json());Response
{
"client_identity": "acme",
"children": [
{
"client_identity": "acme_kr",
"client_name": "ACME KR",
"parent_client_identity": "acme",
"depth": 1
},
{
"client_identity": "acme_kr_seoul",
"client_name": "ACME 서울",
"parent_client_identity": "acme_kr",
"depth": 2
}
]
}