# KeyedFrequencyCap.Builder

Added in[API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Also in[Ad Services Extensions 8](https://developer.android.com/sdkExtensions)

# Builder

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/android/adservices/common/KeyedFrequencyCap.Builder "View this page in Java")  

```
class Builder
```

|---|------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                                             ||
| ↳ | [android.adservices.common.KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) |

Builder for creating[KeyedFrequencyCap](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap)objects.

## Summary

|                                                                                                                                                                                                                             Public constructors                                                                                                                                                                                                                              ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| [Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#Builder(kotlin.Int,%20kotlin.Int,%20java.time.Duration))`(`adCounterKey:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `maxCount:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `interval:` `[Duration](https://developer.android.com/reference/kotlin/java/time/Duration.html#)`)` <br /> |

|                                                                                                                                                                                                                                                                                        Public methods                                                                                                                                                                                                                                                                                         ||
|----------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [KeyedFrequencyCap](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap)                  | [build](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#build())`()` Builds and returns a[KeyedFrequencyCap](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap)instance.                                                                                                                                                                                        |
| [KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) | [setAdCounterKey](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#setAdCounterKey(kotlin.Int))`(`adCounterKey:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the ad counter key the frequency cap applies to.                                                                                                                                                     |
| [KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) | [setInterval](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#setInterval(java.time.Duration))`(`interval:` `[Duration](https://developer.android.com/reference/kotlin/java/time/Duration.html#)`)` Sets the interval, as a[Duration](https://developer.android.com/reference/kotlin/java/time/Duration.html#)which will be truncated to the nearest second, over which the frequency cap is calculated. |
| [KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) | [setMaxCount](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#setMaxCount(kotlin.Int))`(`maxCount:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the maximum count within the time interval for the frequency cap.                                                                                                                                                |

## Public constructors

### Builder

Added in[API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Also in[Ad Services Extensions 8](https://developer.android.com/sdkExtensions)  

```
Builder(
    adCounterKey: Int, 
    maxCount: Int, 
    interval: Duration)
```

|                                                         Parameters                                                          ||
|------------|-----------------------------------------------------------------------------------------------------------------|
| `interval` | [Duration](https://developer.android.com/reference/kotlin/java/time/Duration.html#):This value cannot be`null`. |

## Public methods

### build

Added in[API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Also in[Ad Services Extensions 8](https://developer.android.com/sdkExtensions)  

```
fun build(): KeyedFrequencyCap
```

Builds and returns a[KeyedFrequencyCap](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap)instance.

|                                                                    Return                                                                    ||
|-----------------------------------------------------------------------------------------------------------------|-----------------------------|
| [KeyedFrequencyCap](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap) | This value cannot be`null`. |

### setAdCounterKey

Added in[API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Also in[Ad Services Extensions 8](https://developer.android.com/sdkExtensions)  

```
fun setAdCounterKey(adCounterKey: Int): KeyedFrequencyCap.Builder
```

Sets the ad counter key the frequency cap applies to.

See[getAdCounterKey()](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap#getAdCounterKey())for more information.

|                                                                            Return                                                                             ||
|----------------------------------------------------------------------------------------------------------------------------------|-----------------------------|
| [KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) | This value cannot be`null`. |

### setInterval

Added in[API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Also in[Ad Services Extensions 8](https://developer.android.com/sdkExtensions)  

```
fun setInterval(interval: Duration): KeyedFrequencyCap.Builder
```

Sets the interval, as a[Duration](https://developer.android.com/reference/kotlin/java/time/Duration.html#)which will be truncated to the nearest second, over which the frequency cap is calculated.

See[getInterval()](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap#getInterval())for more information.

|                                                         Parameters                                                          ||
|------------|-----------------------------------------------------------------------------------------------------------------|
| `interval` | [Duration](https://developer.android.com/reference/kotlin/java/time/Duration.html#):This value cannot be`null`. |

|                                                                            Return                                                                             ||
|----------------------------------------------------------------------------------------------------------------------------------|-----------------------------|
| [KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) | This value cannot be`null`. |

### setMaxCount

Added in[API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Also in[Ad Services Extensions 8](https://developer.android.com/sdkExtensions)  

```
fun setMaxCount(maxCount: Int): KeyedFrequencyCap.Builder
```

Sets the maximum count within the time interval for the frequency cap.

See[getMaxCount()](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap#getMaxCount())for more information.

|                                                                            Return                                                                             ||
|----------------------------------------------------------------------------------------------------------------------------------|-----------------------------|
| [KeyedFrequencyCap.Builder](https://developer.android.com/reference/kotlin/android/adservices/common/KeyedFrequencyCap.Builder#) | This value cannot be`null`. |