---
schema_version: "1"
id: 034b9071d7d035494a8f6c28f5440054c9e4cf820328cf3ae6ebd2cb73b9f39b
title: InAppMessagingFeatureConfigBuilder
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/marketing-cloud-mobilepush/engagement_sdk/references/ios-sdk-v11/iam-feature/classes/inappmessagingfeatureconfigbuilder.md
canonical_url: https://developer.salesforce.com/docs/marketing/mobile-unified-sdk/references/engagement-mobile-sdk-reference/inappmessagingfeatureconfigbuilder.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 7f44457bb220f977c9a8e19b045656b85b78b9a02d0bdadc9372f67ef7a35bc4
products:
  - Salesforce Engagement SDK
---
# InAppMessagingFeatureConfigBuilder

`Class`

InAppMessagingFeatureConfigBuilder class

## Declaration

```swift
@objc(SFInAppMessagingFeatureConfigBuilder)
public class InAppMessagingFeatureConfigBuilder : NSObject

@discardableResult
@objc
public func setNotificationAuthorizationOptions(_ options: UNAuthorizationOptions) -> InAppMessagingFeatureConfigBuilder

@discardableResult
@objc
public func setEventDelegate(_ delegate: InAppMessageEventDelegate) -> InAppMessagingFeatureConfigBuilder

@discardableResult
@objc
public func setURLHandlingDelegate(_ delegate: URLHandlingDelegate) -> InAppMessagingFeatureConfigBuilder

@discardableResult
@objc
public func setInAppMessageFont(name: String) -> InAppMessagingFeatureConfigBuilder

@discardableResult
@objc
public func build() -> InAppMessagingFeatureConfig
```

## Cases

### `setNotificationAuthorizationOptions(_:)`

Sets the notification authorization options used when requesting permission (e.g. for Push Primer). Default is `[.alert, .sound, .badge]` when not set.

```swift
@discardableResult
@objc
public func setNotificationAuthorizationOptions(_ options: UNAuthorizationOptions) -> InAppMessagingFeatureConfigBuilder
```

**Returns:** The `InAppMessagingFeatureConfigBuilder` instance for method chaining.

---

### `setEventDelegate(_:)`

Sets the delegate that receives in-app message display and close events.

```swift
@discardableResult
@objc
public func setEventDelegate(_ delegate: InAppMessageEventDelegate) -> InAppMessagingFeatureConfigBuilder
```

**Returns:** The `InAppMessagingFeatureConfigBuilder` instance for method chaining.

---

### `setURLHandlingDelegate(_:)`

Sets the delegate that handles URLs opened from in-app message button actions.

```swift
@discardableResult
@objc
public func setURLHandlingDelegate(_ delegate: URLHandlingDelegate) -> InAppMessagingFeatureConfigBuilder
```

**Returns:** The `InAppMessagingFeatureConfigBuilder` instance for method chaining.

---

### `setInAppMessageFont(name:)`

Sets the font used when rendering in-app messages.

```swift
@discardableResult
@objc
public func setInAppMessageFont(name: String) -> InAppMessagingFeatureConfigBuilder
```

**Returns:** The `InAppMessagingFeatureConfigBuilder` instance for method chaining.

---

### `build()`

Builds an `InAppMessagingFeatureConfig` with the current builder values. Pass the result to the SDK config when initializing the In App Messaging feature.

```swift
@discardableResult
@objc
public func build() -> InAppMessagingFeatureConfig
```

**Returns:** An `InAppMessagingFeatureConfig` instance with the current builder settings.

---
