---
title: "requestAuthorization(for:)"
framework: trustinsights
role: symbol
role_heading: Instance Method
path: "trustinsights/insightevaluator/requestauthorization(for:)"
---

# requestAuthorization(for:)

Requests authorization from a person to generate evaluations.

## Declaration

```swift
final nonisolated(nonsending) func requestAuthorization<each I>(for context: InsightEvaluator.InsightContext<repeat each I>) async throws -> InsightEvaluator.AuthorizationStatus where repeat each I : InsightEvaluator.InsightRequestProtocol
```

## Parameters

- `context`: The doc://com.apple.trustinsights/documentation/TrustInsights/InsightEvaluator/InsightContext to request authorization for.

## Return Value

Return Value The InsightEvaluator.AuthorizationStatus after a person has made their decision.

## Discussion

Discussion The method doesn’t return until the UI interaction is complete and a person has made a selection as to whether to allow access to insights. If access is already available, it returns immediately.

## See Also

### Obtaining permission or checking authorization to perform evaluations

- [authorizationStatus(for:)](trustinsights/insightevaluator/authorizationstatus(for:).md)
- [InsightEvaluator.AuthorizationStatus](trustinsights/insightevaluator/authorizationstatus.md)
