# GoogleMobileAds Framework Reference

# GADRequest


    @interface GADRequest : NSObject <NSCopying>

Specifies optional parameters for ad requests.
- `


  ### [+request](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(cm)request)


  ` Returns a default request.

  #### Declaration

  Objective-C

      + (nonnull instancetype)request;

[## Additional Parameters For Ad Networks](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/Additional-Parameters-For-Ad-Networks)

- `


  ### [-registerAdNetworkExtras:](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(im)registerAdNetworkExtras:)


  ` Ad networks may have additional parameters they accept. To pass these parameters to them, create
  the ad network extras object for that network, fill in the parameters, and register it here. The
  ad network should have a header defining the interface for the 'extras' object to create. All
  networks will have access to the basic settings you've set in this GADRequest. If you register
  an extras object that is the same class as one you have registered before, the previous extras
  will be overwritten.

  #### Declaration

  Swift

      func register(_ extras: any AdNetworkExtras)

  Objective-C

      - (void)registerAdNetworkExtras:(nonnull id<https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Protocols.html#/c:objc(pl)GADAdNetworkExtras>)extras;

- `


  ### [-adNetworkExtrasFor:](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(im)adNetworkExtrasFor:)


  ` Returns the network extras defined for an ad network.

  #### Declaration

  Swift

      func adNetworkExtras(for aClass: any AdNetworkExtras.Type) -> (any AdNetworkExtras)?

  Objective-C

      - (nullable id<https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Protocols.html#/c:objc(pl)GADAdNetworkExtras>)adNetworkExtrasFor:
          (nonnull Class<https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Protocols.html#/c:objc(pl)GADAdNetworkExtras>)aClass;

- `


  ### [-removeAdNetworkExtrasFor:](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(im)removeAdNetworkExtrasFor:)


  ` Removes the extras for an ad network. \|aClass\| is the class which represents that network's
  extras type.

  #### Declaration

  Swift

      func removeAdNetworkExtras(for aClass: any AdNetworkExtras.Type)

  Objective-C

      - (void)removeAdNetworkExtrasFor:(nonnull Class<https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Protocols.html#/c:objc(pl)GADAdNetworkExtras>)aClass;

[## Publisher Provided](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/Publisher-Provided)

- `


  ### [scene](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)scene)


  ` Scene object. Used in multiscene apps to request ads of the appropriate size. If this is nil,
  uses the application's key window scene.

  #### Declaration

  Swift

      weak var scene: UIWindowScene? { get set }

  Objective-C

      @property (nonatomic, weak, nullable) UIWindowScene *scene;

[## Contextual Information](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/Contextual-Information)

- `


  ### [keywords](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)keywords)


  ` Array of keyword strings. Keywords are words or phrases describing the current user activity
  such as @"Sports Scores" or @"Football". Set this property to nil to clear the keywords.

  #### Declaration

  Swift

      var keywords: [String]? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSArray<NSString *> *keywords;

- `


  ### [contentURL](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)contentURL)


  ` URL string for a webpage whose content matches the app's primary content. This webpage content
  is used for targeting and brand safety purposes.

  #### Declaration

  Swift

      var contentURL: String? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSString *contentURL;

- `


  ### [neighboringContentURLStrings](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)neighboringContentURLStrings)


  ` URL strings for non-primary web content near an ad. Promotes brand safety and allows displayed
  ads to have an app level rating (MA, T, PG, etc) that is more appropriate to neighboring
  content.

  #### Declaration

  Swift

      var neighboringContentURLs: [String]? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSArray<NSString *> *neighboringContentURLStrings;

- `


  ### [placementID](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)placementID)


  ` An identifier for a placement in reporting. A value set here will be set onto any ad returned by
  this request.

  #### Declaration

  Swift

      var placementID: Int64 { get set }

  Objective-C

      @property int64_t placementID;

[## Request Agent Information](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/Request-Agent-Information)

- `


  ### [requestAgent](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)requestAgent)


  ` String that identifies the ad request's origin. Third party libraries that reference the Mobile
  Ads SDK should set this property to denote the platform from which the ad request originated.
  For example, a third party ad network called "CoolAds network" that is mediating requests to the
  Mobile Ads SDK should set this property as "CoolAds".

  #### Declaration

  Swift

      var requestAgent: String? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSString *requestAgent;

[## Optional Targeting Information](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/Optional-Targeting-Information)

- `


  ### [customTargeting](https://developers.google.com/ad-manager/mobile-ads-sdk/ios/api/reference/Classes/GADRequest#/c:objc(cs)GADRequest(py)customTargeting)


  ` Key-value pairs used for custom targeting.

  #### Declaration

  Swift

      var customTargeting: [String : Any]? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSDictionary<NSString *, id> *customTargeting;