Settings Configuration
info
Settings Overview: This page covers all configuration settings available in the Teads SDK for iOS, organized by placement type and use case.
TeadsSDK
| Name | Type | Field/Method | Description | 
|---|---|---|---|
| TeadsSDKVersionNumber | Double | Field | Current TeadsSDK Version number (read-only) | 
| TeadsSDKVersionString | String | Field | Current TeadsSDK Version string in semver format (read-only) | 
| configure(with partnerKey: String?) | Void | Method | Initialize the Teads SDK. Call this in AppDelegate.didFinishLaunchingWithOptionsto increase launch speed and load ads faster. Optional partner key for Outbrain integration. | 
| createPlacement<PlacementType>(with config: PlacementType.Config, delegate: TeadsAdPlacementEventsDelegate?) | PlacementType | Method | Generic method to create any placement type (Feed, Media, MediaNative, Recommendations) using their respective config objects. | 
| createInReadPlacement(pid: Int, settings: TeadsAdPlacementSettings, delegate: TeadsInReadAdPlacementDelegate?) | TeadsInReadAdPlacement | Method | Create a legacy inRead ad placement to request inRead ads. Returns TeadsInReadAdPlacement instance that must be owned/retained. | 
| createNativePlacement(pid: Int, settings: TeadsAdPlacementSettings, delegate: TeadsNativeAdPlacementDelegate?) | TeadsNativeAdPlacement | Method | Create a legacy native ad placement to request native ads. Returns TeadsNativeAdPlacement instance that must be owned/retained. | 
| createPrebidPlacement(settings: TeadsAdPlacementSettings, delegate: TeadsInReadAdPlacementDelegate?) | TeadsPrebidAdPlacement | Method | Create a legacy inRead ad placement to request load Prebid ad response. Returns TeadsPrebidAdPlacement instance that must be owned/retained. | 
TeadsAdPlacementMedia
| Configuration | Type | Description | 
|---|---|---|
| pid | Int | Publisher ID from your publisher manager | 
| articleUrl | URL? | URL of the article where the ad will be displayed. Provides context for brand safety purposes | 
| enableValidationMode | Bool | Enable the Validation Tool mode for testing and debugging ad placements | 
TeadsAdPlacementMediaNative
| Configuration | Type | Description | 
|---|---|---|
| pid | Int | Publisher ID from your publisher manager | 
| articleUrl | URL? | URL of the article where the ad will be displayed. Provides context for brand safety purposes | 
TeadsAdPlacementFeed
| Name | Type | Field/Method | Description | 
|---|---|---|---|
| articleUrl | URL | Field | URL of the article where the feed will be displayed | 
| widgetId | String | Field | Widget identifier | 
| installationKey | String | Field | Installation key for your app | 
| widgetIndex | Int | Field | Index of the widget in the feed | 
| userId | String? | Field | Optional user identifier for personalization | 
| darkMode | Bool | Field | Enable dark mode theme for the feed widget (default: false) | 
| testDisplay | Bool | Field | Enable test display mode for debugging (default: false) | 
| infiniteWidgetsOnTheSamePage | Bool | Field | Allow infinite widgets on the same page (default: false) | 
| printLogs(domain: String?) | Void | Static Method | Print logs for debugging purposes with optional domain filtering | 
TeadsAdPlacementRecommendations
| Name | Type | Field/Method | Description | 
|---|---|---|---|
| articleUrl | URL | Field | URL of the article for which recommendations will be fetched | 
| widgetId | String | Field | Widget identifier | 
| widgetIndex | Int | Field | Index of the widget (default: 0) | 
| testLocation | String? | Field | Test location for Geo simulation (country code, e.g., "us") | 
| testRTB | Bool | Field | Enable test RTB mode for debugging (default: false) | 
| configureViewabilityPerListing(for: UIView, withRec: OBRecommendation) | Void | Static Method | Configure viewability tracking for individual recommendation listings | 
| getAboutURL() | String | Static Method | Get the ad choices URL | 
| getUrl(_ rec: OBRecommendation) | String | Static Method | Get URL for a specific recommendation | 
TeadsAdapterSettings
| Name | Type | Field/Method | Description | 
|---|---|---|---|
| enableDebug() | Void | Method | Enable debug logging for Teads inApp SDK. | 
| userConsent(subjectGdpr: String, consent: String, tcfVersion: TCFVersion, cmpSdkId: Int) | Void | Method | The GDPR consent and status, should match the IAB specifications. | 
| setUsPrivacy(usPrivacy: String) | Void | Method | The CCPA consent string, should match the IAB specifications. | 
| setGppConsent(consent: String, sectionIds: String) | Void | Method | The GPP consent and applicable section ids, should match the IAB specifications. | 
| disableBatteryMonitoring() | Void | Method | Prevent to automatically set UIDevice.current.isBatteryMonitoringEnabled. | 
| disableCrashMonitoring() | Void | Method | Disable crash monitoring that collects crashes on Teads SDK by default. | 
| disableTeadsAudioSessionManagement() | Void | Method | By default, the Teads SDK handles the audio session by setting its category to ambient. This means that all the audio played by other apps will be simply mixed with the ad sound. | 
| pageUrl(url: String) | Void | Method | Provide context for brand safety purposes. | 
| enableValidationMode() | Void | Method | Enable the Validation Tool mode. | 
| addExtras(String, for: String) | Void | Method | Add the given extra to your placement and request settings data. | 
| registerAdView(UIView, delegate: TeadsMediatedAdViewDelegate) | Void | Method | Register the ad view in case of mediation adapter. | 
| setMediaScale(_ mediaScale: MediaScale) | Void | Method | Set how the MediaView fits on its container. Works for images only on inFeed native creatives. | 
MediaScale Enum Values
| Value | Description | 
|---|---|
| MediaScale.scaleAspectFill | Contents scaled to fill with fixed aspect. Some portion of content may be clipped. Behaviour is similar to UIView.ContentMode.scaleToFill. | 
| MediaScale.scaleAspectFit | Contents scaled to fit with fixed aspect. Remainder is transparent. Behaviour is similar to UIView.ContentMode.scaleAspectFit. | 
Audio Management
| Setting | Description | Use Case | 
|---|---|---|
| disableTeadsAudioSessionManagement() | Disable automatic audio session management | When you want to handle audio sessions manually | 
| Default behavior | SDK sets audio session category to ambient | Allows mixing with other app audio | 
Best Practices
Production Settings
- Remove enableValidationMode()before production
- Remove testing configurations in production builds
- Ensure proper privacy consent is configured
- Set appropriate urlfor brand safety
- Use production placement IDs and installation keys
Testing Settings
- Use enableValidationMode()for integration testing
- Use testing configurations for development and debugging
- Test with different privacy consent scenarios
- Verify settings work across all placement types
- Use test placement IDs and installation keys
Performance Optimization
- Initialize SDK early in application lifecycle
- Use appropriate placement lifecycle management
- Monitor memory usage and performance
Related Documentation
- Integration Guide - Complete integration steps
- Privacy Guide - Privacy and compliance information
- Validation Tool - Testing and validation
- Troubleshooting Guide - Common issues and solutions