> ## Documentation Index
> Fetch the complete documentation index at: https://easyaf.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# IQueryExpressionAuthorizer

> Represents a service that inspects a query expression.

## Definition

**Assembly:** Microsoft.Restier.Core.dll

**Namespace:** Microsoft.Restier.Core.Query

## Syntax

```csharp theme={"dark"}
Microsoft.Restier.Core.Query.IQueryExpressionAuthorizer
```

## Summary

Represents a service that inspects a query expression.

## Remarks

Query expression inspection evaluates an expression to determine
if it is valid according to API logic such as authorization rules.

Inspection is the first step that occurs when processing a query
expression after its children have been visited, so it occurs during
upward traversal of the query expression. This ensures that inspection
has a chance to take place before the node is altered in any way (with
the exception of normalization of expressions identifying API data).

## Methods

### <Icon icon="function" iconType="duotone" color="#419AC5" size={24} className="mr-2" /> Authorize <Badge color="orange">Abstract</Badge>

Check an expression to see whether it is authorized.

#### Syntax

```csharp theme={"dark"}
bool Authorize(Microsoft.Restier.Core.Query.QueryExpressionContext context)
```

#### Parameters

| Name      | Type                                                  | Description                   |
| --------- | ----------------------------------------------------- | ----------------------------- |
| `context` | `Microsoft.Restier.Core.Query.QueryExpressionContext` | The query expression context. |

#### Returns

Type: `bool`
`true` if the inspection passed; otherwise, `false`.
