---
schema_version: "1"
id: 26e1563c2f2e3a8e6c8ab17db65131184fc5420ff92bf7396e82549e48c86928
title: AgentforceFeatureFlagSettings
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/genai/agentforce-mobile-sdk/references/ios/agentforce-feature-flag-settings-ios.md
canonical_url: https://developer.salesforce.com/docs/ai/agentforce-mobile-sdk/references/agentforce-mobile-sdk/agentforce-feature-flag-settings-ios.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 3fa9dc62193d4cf259a418e31e995fa1924ed48f6096ead040a64f6e68e1a13a
products:
  - Agentforce Mobile SDK
  - Agentforce and Einstein Generative AI
---
# AgentforceFeatureFlagSettings

## Overview

Configuration structure controlling feature availability and experimental functionality within the Agentforce SDK. Provides fine-grained control over SDK capabilities, enabling progressive feature rollout, A/B testing scenarios, and organization-specific customizations.

## Declaration

```swift
struct AgentforceFeatureFlagSettings
```

## Properties

| Property                | Type   | Description                                                                                          |
| ----------------------- | ------ | ---------------------------------------------------------------------------------------------------- |
| `enableMultiModalInput` | `Bool` | Enables rich media input capabilities, including image uploads. Doesn't enable other document types. |
| `enablePDFFileUpload`   | `Bool` | Enables specific support for PDF document uploads and processing.                                    |
| `multiAgent`            | `Bool` | Enables multi-agent conversation capabilities including agent discovery, switching, and comparison.  |
| `shouldBlockMicrophone` | `Bool` | Controls microphone access for voice input features.                                                 |
| `enableVoice`           | `Bool` | Enables voice input capabilities for conversations.                                                  |
| `enableOnboarding`      | `Bool` | Enables onboarding opt-in UI.                                                                        |

## Methods

| Method      | Signature                                                                                                                      | Description                                                                                                       |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
| `init`      | `init(enableMultiModalInput:enablePDFFileUpload:multiAgent:shouldBlockMicrophone:enableVoice:enableOnboarding:internalFlags:)` | Creates a feature flag configuration with specified public feature enablement and optional internal flags.        |
| `subscript` | `subscript(_:) -> Bool`                                                                                                        | Access internal feature flag values via string key. This provides public access for demo apps and external usage. |

## Configuration Patterns

```swift
let settings = AgentforceFeatureFlagSettings(
    enableMultiModalInput: false,
    enablePDFFileUpload: false,
    multiAgent: false
)
```

```swift
let settings = AgentforceFeatureFlagSettings(
    enableMultiModalInput: true,
    enablePDFFileUpload: true,
    multiAgent: true,
    enableVoice: true
)
```
