API Stability Long-Term

The pendingUser() GraphQL query will return information on a specified pending user. Similarly, the pendingUsers() query will return a list of pending users. To remove an invitation, you can use the revokePendingUser() mutation.

Pending users are only possible if the environment variable, SEND_USER_INVITES is set to true. Otherwise, when adding a new user and sending them an invitation, they won't be pending, they'll become a new user.

For established users, there is the query user() to get information on a specific user, and the users() to get a list of users. There is also the mutation addUserV2() to add a user account, updateUser() to change one, and removeUser() to delete a user.

Syntax

graphql
pendingUser(
      token: string!
   ): PendingUser!

For the input, you'll have to give the token for the pending user. If you don't know that, you can use the pendingUsers() query. For the results, you can get the pending user's email address, when they were invited and by whom. See the Returned Datatype section for more on this.

Example

Below is an example of how this query field might be used:

Raw
graphql
query {
  pendingUser(
      token: "abc123"
    )
  {id, newUserEmail}
}
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 {
  pendingUser(
      token: \"abc123\"
    )
  {id, newUserEmail}
}"
}
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 {
  pendingUser(
      token: \"abc123\"
    )
  {id, newUserEmail}
}"
}
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 { ^
  pendingUser( ^
      token: \"abc123\" ^
    ) ^
  {id, newUserEmail} ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
  pendingUser(
      token: \"abc123\"
    )
  {id, newUserEmail}
}"
}'
    "$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 {
  pendingUser(
      token: \"abc123\"
    )
  {id, newUserEmail}
}";
$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 {
  pendingUser(
      token: \"abc123\"
    )
  {id, newUserEmail}
}"
}'''

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 {
  pendingUser(
      token: \"abc123\"
    )
  {id, newUserEmail}
}"
}
);


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": {
    "pendingUser": {
     "id": "123abc",
     "newUserEmail": "joe@company.com"
    }
 }
}

Returned Datatype

For the returned datatype, you can get the pending user's email address, when they were invited and by whom, etc. Below is a list of parameters you can request, along with descriptions of them:

Table: PendingUser

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: Mar 26, 2025
createdAtlongyes Long-TermThe time the pending user was created.
idstringyes Long-TermThe identifier or token for the pending user.
idpbooleanyes Long-TermWhether IdP is enabled for the organization.
invitedByEmailstringyes Long-TermThe email address of the user that invited the pending user.
invitedByNamestringyes Long-TermThe name of the user that invited the pending user.
newUserEmailstringyes Long-TermThe email of the pending user.
orgNamestringyes Long-TermThe name of the organization for the pending user.
pendingUserStatePendingUserStateyes Long-TermThe current organization state for the user. See PendingUserState.