<!--
{
  "availability" : [
    "iOS: 2.0.0 -",
    "iPadOS: 2.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Security",
  "identifier" : "/documentation/Security/SecTrustResultType",
  "metadataVersion" : "0.1.0",
  "role" : "Enumeration",
  "symbol" : {
    "kind" : "Enumeration",
    "modules" : [
      "Security"
    ],
    "preciseIdentifier" : "c:@E@SecTrustResultType"
  },
  "title" : "SecTrustResultType"
}
-->

# SecTrustResultType

Trust evaluation result codes.

```
enum SecTrustResultType
```

## Overview

You get one of these constants when you call the [`SecTrustGetTrustResult(_:_:)`](/documentation/Security/SecTrustGetTrustResult(_:_:)) method after evaluating a trust instance with either the [`SecTrustEvaluateWithError(_:_:)`](/documentation/Security/SecTrustEvaluateWithError(_:_:)) method or the [`SecTrustEvaluateAsyncWithError(_:_:_:)`](/documentation/Security/SecTrustEvaluateAsyncWithError(_:_:_:)) method. If evaluation fails and [`SecTrustGetTrustResult(_:_:)`](/documentation/Security/SecTrustGetTrustResult(_:_:)) reports [`SecTrustResultType.recoverableTrustFailure`](/documentation/Security/SecTrustResultType/recoverableTrustFailure), you might be able to change parameters like the evaluation date, and reevaluate to obtain a passing result, as described in [Configuring a Trust](/documentation/Security/configuring-a-trust).

See an individual constant below for more information about how to handle that result type in your app.

## Topics

### Result Codes

[`SecTrustResultType.unspecified`](/documentation/Security/SecTrustResultType/unspecified)

The user did not specify a trust setting.

[`SecTrustResultType.proceed`](/documentation/Security/SecTrustResultType/proceed)

The user granted permission to trust the certificate for the purposes designated in the specified policies.

[`SecTrustResultType.deny`](/documentation/Security/SecTrustResultType/deny)

The user specified that the certificate should not be trusted.

[`SecTrustResultType.recoverableTrustFailure`](/documentation/Security/SecTrustResultType/recoverableTrustFailure)

Trust is denied, but recovery may be possible.

[`SecTrustResultType.fatalTrustFailure`](/documentation/Security/SecTrustResultType/fatalTrustFailure)

Trust is denied and no simple fix is available.

[`SecTrustResultType.otherError`](/documentation/Security/SecTrustResultType/otherError)

A value that indicates a failure other than trust evaluation.

[`SecTrustResultType.invalid`](/documentation/Security/SecTrustResultType/invalid)

An indication of an invalid setting or result.

[`SecTrustResultType.confirm`](/documentation/Security/SecTrustResultType/confirm)

User confirmation is required before proceeding.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)