Summary

The updateFieldAliasMapping() mutation updates an existing alias mapping on a field alias schema. Use it to change the mapping name, tags, aliases, or the set of source fields retained after aliasing. To create a new alias mapping on a schema, use addFieldAliasMapping() instead.

Syntax

graphql
updateFieldAliasMapping(
      input: UpdateFieldAliasMappingInput!
   ): String!

The mutation takes a single required input argument of type UpdateFieldAliasMappingInput!. Provide schemaId and aliasMappingId to identify the target mapping. Use fieldAliasSchemas() to retrieve those identifiers. Supply any combination of name, aliases, tags, and originalFieldsToKeep to update; omitted fields retain their existing values. The return type String! is non-nullable: the mutation returns a string that confirms the update succeeded.

Input parameters

Provide schemaId and aliasMappingId to identify the mapping to update. Supply aliases to change the source-to-alias field pairings. Use originalFieldsToKeep to control which source fields remain queryable after aliasing; this overrides the existing list. Use tags to update the mapping tags and name to rename the mapping. Any parameter not supplied retains its current value.

Table: UpdateFieldAliasMappingInput Input Datatype

ParameterTypeRequiredDefaultStabilityAvailabilityDescription
aliasMappingIdStringyes Long-Term The alias mapping identifier.
aliasesAliasInfoInputyes Long-Term A list of aliases. See AliasInfoInput.
nameString  Long-Term The name of the Alias mapping. This overrides the existing name. If not given, it's unchanged.
originalFieldsToKeepStringyes Long-Term Source fields that are aliased, but should still be available in the query. This overrides the existing values. If not given, it's unchanged.
schemaIdStringyes Long-Term The unique identifier of the schema on which the alias mapping exists.
tagsTagsInputyes Long-Term The tags of the alias mapping. This overrides the existing tags. If not given, they're unchanged. See TagsInput.

Example

Raw
graphql
mutation {
  updateFieldAliasMapping( input:
     { schemaId: "abc123",
       aliasMappingId: "def456",
       aliases: [ { source: "some", alias: "thing" } ]
     } 
  )
}
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" : "mutation {
  updateFieldAliasMapping( input:
     { schemaId: \"abc123\",
       aliasMappingId: \"def456\",
       aliases: [ { source: \"some\", alias: \"thing\" } ]
     } 
  )
}"
}
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" : "mutation {
  updateFieldAliasMapping( input:
     { schemaId: \"abc123\",
       aliasMappingId: \"def456\",
       aliases: [ { source: \"some\", alias: \"thing\" } ]
     } 
  )
}"
}
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" : "mutation { ^
  updateFieldAliasMapping( input: ^
     { schemaId: \"abc123\", ^
       aliasMappingId: \"def456\", ^
       aliases: [ { source: \"some\", alias: \"thing\" } ] ^
     }  ^
  ) ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  updateFieldAliasMapping( input:
     { schemaId: \"abc123\",
       aliasMappingId: \"def456\",
       aliases: [ { source: \"some\", alias: \"thing\" } ]
     } 
  )
}"
}'
    "$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 = "mutation {
  updateFieldAliasMapping( input:
     { schemaId: \"abc123\",
       aliasMappingId: \"def456\",
       aliases: [ { source: \"some\", alias: \"thing\" } ]
     } 
  )
}";
$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" : "mutation {
  updateFieldAliasMapping( input:
     { schemaId: \"abc123\",
       aliasMappingId: \"def456\",
       aliases: [ { source: \"some\", alias: \"thing\" } ]
     } 
  )
}"
}'''

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" : "mutation {
  updateFieldAliasMapping( input:
     { schemaId: \"abc123\",
       aliasMappingId: \"def456\",
       aliases: [ { source: \"some\", alias: \"thing\" } ]
     } 
  )
}"
}
);


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();

Returned values

The mutation returns a non-null String! that confirms the update succeeded. To retrieve the updated mapping details, use fieldAliasSchemas().