---
title: "setConfiguration(pirServerURL:pirPrivacyPassIssuerURL:pirAuthenticationToken:controlProviderBundleIdentifier:)"
framework: networkextension
role: symbol
role_heading: Instance Method
path: "networkextension/neurlfiltermanager/setconfiguration(pirserverurl:pirprivacypassissuerurl:pirauthenticationtoken:controlproviderbundleidentifier:)"
---

# setConfiguration(pirServerURL:pirPrivacyPassIssuerURL:pirAuthenticationToken:controlProviderBundleIdentifier:)

Sets a URL filter configuration with the required PIR server attributes and app extension information.

## Declaration

```swift
func setConfiguration(pirServerURL: URL, pirPrivacyPassIssuerURL: URL?, pirAuthenticationToken: String, controlProviderBundleIdentifier: String) throws
```

## Parameters

- `pirServerURL`: The PIR server URL. The URL must contain only the domain name of the PIR server.
- `pirPrivacyPassIssuerURL`: The PIR Privacy Pass issuer URL. The URL must contain only the domain name of the Privacy Pass issuer. If nil, the configuration uses the PIR server URL as the Privacy Pass issuer URL.
- `pirAuthenticationToken`: An HTTP bearer token that authenticates the person using your app. The system uses this token to attest that it’s a valid user when requesting anonymous authentication tokens.
- `controlProviderBundleIdentifier`: The bundle identifier of the doc://com.apple.networkextension/documentation/NetworkExtension/NEURLFilterControlProvider app extension.

## See Also

### Working with the filter configuration

- [loadFromPreferences()](networkextension/neurlfiltermanager/loadfrompreferences().md)
- [saveToPreferences()](networkextension/neurlfiltermanager/savetopreferences().md)
- [removeFromPreferences()](networkextension/neurlfiltermanager/removefrompreferences().md)
- [handleConfigChange()](networkextension/neurlfiltermanager/handleconfigchange().md)
