API Stability Preview

The childOrganizations() GraphQL query is used to get a list of linked child organizations. This is not supported, though, when using organizations in single-mode. Also, this query field is a preview and subject to change.

To link or unlink an organization to another, to make one a child of a parent, use the linkChildOrganization() and unlinkChildOrganization() mutation fields. Use the parentOrganizations() query field for information on parent organization.

To get information on an organization, you can use the organization() query field. To access the same data through the UI, see Organization Settings in the main documentation.

Syntax

Below is the syntax for the childOrganizations() query field:

graphql
childOrganizations(
     search: string, 
     orderBy: OrderBy, 
     sortBy: OrganizationsLinks__SortBy,
     limit: integer!,
     skip: integer!
   ): ChildOrganizationsResultSet!

To limit the results based on specific text contained in the names of the child organizations, use the search parameter. You can sort the results with sortBy. It uses the special datatype, OrganizationsLinks__SortBy (see Given Datatypes) — the default value is Name. For ordering results alphanumerically, use orderBy — the default value for OrderBy is ASC.

You can opt to skip the first so many results with the skip parameter — it's default value is 0. Use the limit parameter to limit the number of results returned — its default is 50.

Example

Below is an example of how you might use this query:

Raw
graphql
query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}
Mac OS or Linux (curl)
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}"
}
EOF
Mac OS or Linux (curl) One-line
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}"
}
EOF
Windows Cmd and curl
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
    -H "Authorization: Bearer $TOKEN" ^
    -H "Content-Type: application/json" ^
    -d @'{"query" : "query { ^
	childOrganizations( skip: 0, limit: 10 ) ^
  { totalResults,  ^
    results { id, name,  ^
              searchDomains { id }, ^
              stats { userCount } } } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}"
}'
    "$YOUR_LOGSCALE_URL/graphql"
Perl
perl
#!/usr/bin/perl

use HTTP::Request;
use LWP;

my $TOKEN = "TOKEN";

my $uri = '$YOUR_LOGSCALE_URL/graphql';

my $query = "query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}";
$query =~ s/\n/ /g;
my $json = sprintf('{"query" : "%s"}',$query);
my $req = HTTP::Request->new("POST", $uri );

$req->header("Authorization" => "Bearer $TOKEN");
$req->header("Content-Type" => "application/json");

$req->content( $json );

my $lwp = LWP::UserAgent->new;

my $result = $lwp->request( $req );

print $result->{"_content"},"\n";
Python
python
#! /usr/local/bin/python3

import requests

url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}"
}'''

resp = requests.post(url,
                     data = mydata,
                     headers = {
   "Authorization" : "Bearer $TOKEN",
   "Content-Type" : "application/json"
}
)

print(resp.text)
Node.js
javascript
const https = require('https');

const data = JSON.stringify(
    {"query" : "query {
	childOrganizations( skip: 0, limit: 10 )
  { totalResults, 
    results { id, name, 
              searchDomains { id },
              stats { userCount } } }
}"
}
);


const options = {
  hostname: '$YOUR_LOGSCALE_URL',
  path: 'graphql',
  port: 443,
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Content-Length': data.length,
    Authorization: 'BEARER ' + process.env.TOKEN,
    'User-Agent': 'Node',
  },
};

const req = https.request(options, (res) => {
  let data = '';
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', (d) => {
    data += d;
  });
  res.on('end', () => {
    console.log(JSON.parse(data).data);
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.write(data);
req.end();
Example Responses
Success (HTTP Response Code 200 OK)
json
{
  "data": {
    "childOrganizations": {
      "totalResults": 1,
      "results": {
         "id": "abc123",
         "name": "junior",
         "searchDomains": { "id": "xyz789" }
         "stats": { userCount: 12 }
      }
    }
  }
}

For the input's special datatype, the values are given within curly-brackets. As for the returned results, a list of requests is entered in a comma-separated list, also within curly-brackets — and again for sub-selections.

Given Datatype

Almost all of the input parameters accept basic datatypes. One of the two special datatypes used is the OrganizationsLinks__SortBy. It's used to sort the results returned based on the type of organization link — for example, based on the organization's unique identifier. The few options are listed here along with a description of each:


The OrderBy datatype, is used to order results based on whether they are in ascending or descending alphanumerically.

Table: OrderBy

ParameterTypeRequiredDefaultStabilityDescription
Some arguments may be required, as indicated in the Required column. For return datatypes, this indicates that you must specify which fields you want returned in the results.
Table last updated: Oct 10, 2025
ASC  Long-TermOrder results in ascending order (e.g., 0 to 9, A to Z).
DESC   Long-TermOrder results in descending order (e.g., 9 to 0, Z to A).

Returned Datatype

The datatype, ChildOrganizationsResultSet is used to select the results you want returned. Besides a count of the results, there's a sub-choice of information on the child organization using the Organization datatype. With this extension you can request the unique identifier and name of the child organizations — which you can use with other query and mutation fields to learn more about a specific sub-organization, as well as make changes. To see all of your choices, click on the link for that sub-datatype in the table below:

Table: ChildOrganizationsResultSet

ParameterTypeRequiredDefaultStabilityDescription
Some arguments may be required, as indicated in the Required column. For return datatypes, this indicates that you must specify which fields you want returned in the results.
Table last updated: Sep 24, 2024
results[Organization]yes PreviewThe paginated result set. See Organization.
totalResultsintegeryes PreviewThe total number of matching results.