HasCurrentIdentity

This reference topic applies to FQL v4. Go to this page for the latest FQL v10 reference topics.

HasCurrentIdentity()
has_current_identity()
HasCurrentIdentity()
HasCurrentIdentity()
HasCurrentIdentity()
HasCurrentIdentity()

Description

The HasCurrentIdentity function returns true if the current client authentication credentials have an associated identity, and false if they don’t.

When authentication is performed by an identity provider, HasCurrentIdentity returns true if the associated JWT has a sub field.

Parameters

None.

Returns

A boolean indicating whether the current client credentials are associated with an identity/JWT.

Examples

The following query is run in the context of a logged-in Fauna user:

client.query(
  q.HasCurrentIdentity()
)
.then((ret) => console.log(ret))
.catch((err) => console.error(
  'Error: [%s] %s: %s',
  err.name,
  err.message,
  err.errors()[0].description,
))
false
result = client.query(
  q.has_current_identity()
)
print(result)
False
result, err := client.Query(
	f.HasCurrentIdentity())

if err != nil {
	fmt.Fprintln(os.Stderr, err)
} else {
	fmt.Println(result)
}
false
try
{
    Value result = await client.Query(
        HasCurrentIdentity()
    );

    Console.WriteLine(result);
}
catch (Exception e)
{
    Console.WriteLine($"ERROR: {e.Message}");
}
BooleanV(False)
System.out.println(
    client.query(
        HasCurrentIdentity()
    ).get());
false
HasCurrentIdentity()
false
Query metrics:
  •    bytesIn:  29

  •   bytesOut:  18

  • computeOps:   1

  •    readOps:   0

  •   writeOps:   0

  •  readBytes:   0

  • writeBytes:   0

  •  queryTime: 3ms

  •    retries:   0

The following query is run in the context of an externally-authenticated user:

client.query(
  q.HasCurrentIdentity()
)
.then((ret) => console.log(ret))
.catch((err) => console.error(
  'Error: [%s] %s: %s',
  err.name,
  err.message,
  err.errors()[0].description,
))
true
result = client.query(
  q.has_current_identity()
)
print(result)
True
result, err := client.Query(
	f.HasCurrentIdentity())

if err != nil {
	fmt.Fprintln(os.Stderr, err)
} else {
	fmt.Println(result)
}
true
try
{
    Value result = await client.Query(
        HasCurrentIdentity()
    );

    Console.WriteLine(result);
}
catch (Exception e)
{
    Console.WriteLine($"ERROR: {e.Message}");
}
BooleanV(True)
System.out.println(
    client.query(
        HasCurrentIdentity()
    ).get());
true
HasCurrentIdentity()
true
Query metrics:
  •    bytesIn:  29

  •   bytesOut:  17

  • computeOps:   1

  •    readOps:   0

  •   writeOps:   0

  •  readBytes:   0

  • writeBytes:   0

  •  queryTime: 1ms

  •    retries:   0

\