The segment() GraphQL query will do fetch
information about a specific segment. This query is not a quick
lookup and should be used only for troubleshooting or to help with
data recovery. It requires ManageCluster
permission.
Below is the syntax for the segment() query
field:
segment(
id : string!
) : Segment
Below is an example using this query field:
Show:
Raw Mac OS or Linux (curl) Mac OS or Linux (curl) One-line Windows Cmd and curl Windows Powershell and curl Perl Python Node.js
Raw query {
segment(
id : "123abc"
)
{ repository { id, name} }
}
Mac OS or Linux (curl) curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "query{
segment(
id: \"123abc\"
)
{repository {id, name} }
}"
}
EOF
Mac OS or Linux (curl) One-line curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "query{
segment(
id: \"123abc\"
)
{repository {id, name} }
}"
}
EOF
Windows Cmd and curl curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
-H "Authorization: Bearer $TOKEN" ^
-H "Content-Type: application/json" ^
-d @'{"query" : "query{ ^
segment( ^
id: \"123abc\" ^
) ^
{repository {id, name} } ^
}" ^
} '
Windows Powershell and curl curl.exe -X POST
-H "Authorization: Bearer $TOKEN "
-H "Content-Type: application/json"
-d '{"query" : "query{
segment(
id: \"123abc\"
)
{repository {id, name} }
}"
}'
"$YOUR_LOGSCALE_URL /graphql"
Perl
use HTTP::Request;
use LWP;
my $INGEST_TOKEN = "TOKEN" ;
my $uri = '$YOUR_LOGSCALE_URL/graphql' ;
my $json = '{"query" : "query{
segment(
id: \"123abc\"
)
{repository {id, name} }
}"
}' ;
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
import requests
url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "query{
segment(
id: \"123abc\"
)
{repository {id, name} }
}"
}'''
resp = requests.post(url,
data = mydata,
headers = {
"Authorization" : "Bearer $TOKEN" ,
"Content-Type" : "application/json"
}
)
print (resp.text)
Node.js const https = require ('https' );
const data = JSON .stringify (
{"query" : "query{
segment(
id: \"123abc\"
)
{repository {id, name} }
}"
}
);
const options = {
hostname : '$YOUR_LOGSCALE_URL/graphql' ,
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 Show:
Success (HTTP Response Code 200 OK)
Success (HTTP Response Code 200 OK) {
"data" : {
"segment" : {
repository{
"id" : "123abc" ,
"name" : "humio"
}
}
}
}
For segment , there are a few parameters.
They're listed here along with descriptions of each:
Table: Segment
Parameter Type Required Default Stability Description Some arguments may be required, as indicated in the Required column. For some fields, this column indicates that a result will always be returned for this column. Table last updated: Apr 15, 2025 datasource
Datasource
yes Preview
This is the datasource. See Datasource
. deletedAt
long Preview
When the segment was deleted. end
long yes Preview
When the segment ended. id
string yes Preview
The unique identifier of the segment. organization
Organization
yes Preview
The organization for the segment. See Organization
. repository
Repository
yes Preview
The repository for the segment. See Repository
. start
long yes Preview
When the segment started.