API Stability Long-Term

The fieldAliasSchemas() GraphQL query is used to retrieve all of the schemas for any field aliases.

Related to this query field is the query, fieldAliasSchemaOnView() to get the active schema and its field aliases of a view.

Syntax

graphql
fieldAliasSchemas: FieldAliasSchemasInfo

There's no input for this query field. There is a special datatype for specifying the results you want returned: a list of schemas and whether they're active for the organization or view. You can drill down for data on each schema and their fields (see the Return Datatype section).

Example

The example below queries LogScale with this query field:

Raw
graphql
query {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}
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 {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}"
}
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 {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}"
}
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 { ^
  fieldAliasSchemas { ^
     schemas {id, name} ^
     activeSchemaOnOrg ^
     activeSchemasOnViews {viewName}} ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}"
}'
    "$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 {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}";
$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 {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}"
}'''

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 {
  fieldAliasSchemas {
     schemas {id, name}
     activeSchemaOnOrg
     activeSchemasOnViews {viewName}}
}"
}
);


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": {
    "fieldAliasSchemas": {
      "schemas": [
        {
          "id": "abc123",
          "name": "Tester"
        }
      ],
      "activeSchemaOnOrg": "def456",
      "activeSchemasOnViews": [
        {
          "viewName": "httplogs"
        }
      ]
    }
  },
}

Returned Datatype

The returned datatype is used to get a list of schemas, whether they're active for the organization or view. For each schema found, you can get its ID and name, as well as a list of fields and descriptions for the schema, and mapping of instances. The table below lists and describes these and others, as well as provides links to sub-parameters for more details.

Table: FieldAliasSchemasInfo

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 25, 2024
activeSchemaOnOrgstring  Long-TermThe currently active schema for the organization.
activeSchemasOnViews[ActiveSchemaOnView]yes Long-TermThe currently active schemas for views. See ActiveSchemaOnView.
schemas[FieldAliasSchema]yes Long-TermList of field alias schemas. See FieldAliasSchema.