Web Service: NativeStyleService

Target Namespace:
https://www.google.com/apis/ads/publisher/v202502

Port NativeStyleServiceInterfacePort Port typeSource code

Location:
https://ads.google.com/apis/ads/publisher/v202502/NativeStyleService
Protocol:
SOAP
Default style:
document
Transport protocol:
SOAP over HTTP
Operations:
  1. createNativeStylesDetailSource code
  2. getNativeStylesByStatementDetailSource code
  3. performNativeStyleActionDetailSource code
  4. updateNativeStylesDetailSource code

Operations

    Port type NativeStyleServiceInterfaceSource code

    1. createNativeStyles
      Description:
      Creates new {@link NativeStyle} objects.
      Operation type:
      Request-response. The endpoint receives a message, and sends a correlated message.
      Input:
      createNativeStylesRequest (wsdlsoap:header, use = literal, part = RequestHeader)Source code
      parameters type createNativeStyles
      Creates new {@link NativeStyle} objects.
      • nativeStyles - optional, unbounded; type NativeStyle
        Used to define the look and feel of native ads, for both web and apps. Native styles determine how native creatives look for a segment of inventory.
        • id - optional; type long
          Uniquely identifies the {@code NativeStyle}. This attribute is read-only and is assigned by Google when a native style is created.
        • name - optional; type string
          The name of the native style. This attribute is required and has a maximum length of 255 characters.
        • htmlSnippet - optional; type string
          The HTML snippet of the native style with placeholders for the associated variables. This attribute is required.
        • cssSnippet - optional; type string
          The CSS snippet of the native style, with placeholders for the associated variables. This attribute is required.
        • creativeTemplateId - optional; type long
          The creative template ID this native style associated with. This attribute is required on creation and is read-only afterwards.
        • isFluid - optional; type boolean
          Whether this is a fluid size native style. If {@code true}, this must be used with 1x1 size.
        • targeting - optional; type Targeting
          The targeting criteria for this native style. Only ad unit and key-value targeting are supported at this time.
          Contains targeting criteria for {@link LineItem} objects. See {@link LineItem#targeting}.
          • geoTargeting - optional; type GeoTargeting
            Provides line items the ability to target geographical locations. By default, line items target all countries and their subdivisions. With geographical targeting, you can target line items to specific countries, regions, metro areas, and cities. You can also exclude the same.

            The following rules apply for geographical targeting:

            • You cannot target and exclude the same location.
            • You cannot target a child whose parent has been excluded. For example, if the state of Illinois has been excluded, then you cannot target Chicago.
            • You must not target a location if you are also targeting its parent. For example, if you are targeting New York City, you must not have the state of New York as one of the targeted locations.
            • You cannot explicitly define inclusions or exclusions that are already implicit. For example, if you explicitly include California, you implicitly exclude all other states. You therefore cannot explicitly exclude Florida, because it is already implicitly excluded. Conversely if you explicitly exclude Florida, you cannot explicitly include California.
            • targetedLocations - optional, unbounded; type Location
              The geographical locations being targeted by the {@link LineItem}.
              A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
              • id - optional; type long
                Uniquely identifies each {@code Location}.
              • type - optional; type string
                The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
              • canonicalParentId - optional; type int
                The nearest location parent's ID for this geographical entity.
              • displayName - optional; type string
                The localized name of the geographical entity.
            • excludedLocations - optional, unbounded; type Location
              The geographical locations being excluded by the {@link LineItem}.
              A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
              • id - optional; type long
                Uniquely identifies each {@code Location}.
              • type - optional; type string
                The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
              • canonicalParentId - optional; type int
                The nearest location parent's ID for this geographical entity.
              • displayName - optional; type string
                The localized name of the geographical entity.
            Specifies what geographical locations are targeted by the {@link LineItem}. This attribute is optional.
          • inventoryTargeting - optional; type InventoryTargeting
            A collection of targeted and excluded ad units and placements.
            • targetedAdUnits - optional, unbounded; type AdUnitTargeting
              Represents targeted or excluded ad units.
              • adUnitId - optional; type string
                Included or excluded ad unit id.
              • includeDescendants - optional; type boolean
                Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
              A list of targeted {@link AdUnitTargeting}.
            • excludedAdUnits - optional, unbounded; type AdUnitTargeting
              Represents targeted or excluded ad units.
              • adUnitId - optional; type string
                Included or excluded ad unit id.
              • includeDescendants - optional; type boolean
                Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
              A list of excluded {@link AdUnitTargeting}.
            • targetedPlacementIds - optional, unbounded; type long
              A list of targeted {@link Placement} ids.
            Specifies what inventory is targeted by the {@link LineItem}. This attribute is required. The line item must target at least one ad unit or placement.
          • dayPartTargeting - optional; type DayPartTargeting
            Modify the delivery times of line items for particular days of the week. By default, line items are served at all days and times.
            • dayParts - optional, unbounded; type DayPart
              {@code DayPart} represents a time-period within a day of the week which is targeted by a {@link LineItem}.
              • dayOfWeek - optional; type DayOfWeek - type string with restriction - enum { 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY' }
                Day of the week the target applies to. This field is required.
              • startTime - optional; type TimeOfDay
                Represents the start time of the targeted period (inclusive).
                Represents a specific time in a day.
                • hour - optional; type int
                  Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                  Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
              • endTime - optional; type TimeOfDay
                Represents the end time of the targeted period (exclusive).
                Represents a specific time in a day.
                • hour - optional; type int
                  Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                  Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
              Specifies days of the week and times at which a {@code LineItem} will be delivered.

              If targeting all days and times, this value will be ignored.

            • timeZone - optional; type DeliveryTimeZone - type string with restriction - enum { 'PUBLISHER', 'BROWSER' }
              Specifies the time zone to be used for delivering {@link LineItem} objects. This attribute is optional and defaults to {@link DeliveryTimeZone#BROWSER}.

              Setting this has no effect if targeting all days and times.

            Specifies the days of the week and times that are targeted by the {@link LineItem}. This attribute is optional.
          • dateTimeRangeTargeting - optional; type DateTimeRangeTargeting
            The date time ranges that the line item is eligible to serve.
            • targetedDateTimeRanges - optional, unbounded; type DateTimeRange
              Represents a range of dates (combined with time of day) that has an upper and/or lower bound.
              • startDateTime - optional; type DateTime
                Represents a date combined with the time of day.
                • date - optional; type Date
                  Represents a date.
                  • year - optional; type int
                    Year (e.g., 2009)
                  • month - optional; type int
                    Month (1..12)
                  • day - optional; type int
                    Day (1..31)
                • hour - optional; type int
                • minute - optional; type int
                • second - optional; type int
                • timeZoneId - optional; type string
                The start date time of this range. This field is optional and if it is not set then there is no lower bound on the date time range. If this field is not set then {@code endDateTime} must be specified.
              • endDateTime - optional; type DateTime
                Represents a date combined with the time of day.
                • date - optional; type Date
                  Represents a date.
                  • year - optional; type int
                    Year (e.g., 2009)
                  • month - optional; type int
                    Month (1..12)
                  • day - optional; type int
                    Day (1..31)
                • hour - optional; type int
                • minute - optional; type int
                • second - optional; type int
                • timeZoneId - optional; type string
                The end date time of this range. This field is optional and if it is not set then there is no upper bound on the date time range. If this field is not set then {@code startDateTime} must be specified.
            Specifies the dates and time ranges that are targeted by the {@link LineItem}. This attribute is optional.
          • technologyTargeting - optional; type TechnologyTargeting
            Provides {@link LineItem} objects the ability to target or exclude technologies.
            • bandwidthGroupTargeting - optional; type BandwidthGroupTargeting
              The bandwidth groups being targeted by the {@link LineItem}.
              Represents bandwidth groups that are being targeted or excluded by the {@link LineItem}.
              • isTargeted - optional; type boolean
                Indicates whether bandwidth groups should be targeted or excluded. This attribute is optional and defaults to {@code true}.
              • bandwidthGroups - optional, unbounded; type Technology
                The bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • browserTargeting - optional; type BrowserTargeting
              The browsers being targeted by the {@link LineItem}.
              Represents browsers that are being targeted or excluded by the {@link LineItem}.
              • isTargeted - optional; type boolean
                Indicates whether browsers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
              • browsers - optional, unbounded; type Technology
                Browsers that are being targeted or excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • browserLanguageTargeting - optional; type BrowserLanguageTargeting
              The languages of browsers being targeted by the {@link LineItem}.
              Represents browser languages that are being targeted or excluded by the {@link LineItem}.
              • isTargeted - optional; type boolean
                Indicates whether browsers languages should be targeted or excluded. This attribute is optional and defaults to {@code true}.
              • browserLanguages - optional, unbounded; type Technology
                Browser languages that are being targeted or excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • deviceCapabilityTargeting - optional; type DeviceCapabilityTargeting
              The device capabilities being targeted by the {@link LineItem}.
              Represents device capabilities that are being targeted or excluded by the {@link LineItem}.
              • targetedDeviceCapabilities - optional, unbounded; type Technology
                Device capabilities that are being targeted by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
              • excludedDeviceCapabilities - optional, unbounded; type Technology
                Device capabilities that are being excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • deviceCategoryTargeting - optional; type DeviceCategoryTargeting
              The device categories being targeted by the {@link LineItem}.
              Represents device categories that are being targeted or excluded by the {@link LineItem}.
              • targetedDeviceCategories - optional, unbounded; type Technology
                Device categories that are being targeted by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
              • excludedDeviceCategories - optional, unbounded; type Technology
                Device categories that are being excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • deviceManufacturerTargeting - optional; type DeviceManufacturerTargeting
              The device manufacturers being targeted by the {@link LineItem}.
              Represents device manufacturer that are being targeted or excluded by the {@link LineItem}.
              • isTargeted - optional; type boolean
                Indicates whether device manufacturers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
              • deviceManufacturers - optional, unbounded; type Technology
                Device manufacturers that are being targeted or excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • mobileCarrierTargeting - optional; type MobileCarrierTargeting
              The mobile carriers being targeted by the {@link LineItem}.
              Represents mobile carriers that are being targeted or excluded by the {@link LineItem}.
              • isTargeted - optional; type boolean
                Indicates whether mobile carriers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
              • mobileCarriers - optional, unbounded; type Technology
                Mobile carriers that are being targeted or excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • mobileDeviceTargeting - optional; type MobileDeviceTargeting
              The mobile devices being targeted by the {@link LineItem}.
              Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
              • targetedMobileDevices - optional, unbounded; type Technology
                Mobile devices that are being targeted by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
              • excludedMobileDevices - optional, unbounded; type Technology
                Mobile devices that are being excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • mobileDeviceSubmodelTargeting - optional; type MobileDeviceSubmodelTargeting
              The mobile device submodels being targeted by the {@link LineItem}.
              Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
              • targetedMobileDeviceSubmodels - optional, unbounded; type Technology
                Mobile device submodels that are being targeted by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
              • excludedMobileDeviceSubmodels - optional, unbounded; type Technology
                Mobile device submodels that are being excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • operatingSystemTargeting - optional; type OperatingSystemTargeting
              The operating systems being targeted by the {@link LineItem}.
              Represents operating systems that are being targeted or excluded by the {@link LineItem}.
              • isTargeted - optional; type boolean
                Indicates whether operating systems should be targeted or excluded. This attribute is optional and defaults to {@code true}.
              • operatingSystems - optional, unbounded; type Technology
                Operating systems that are being targeted or excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            • operatingSystemVersionTargeting - optional; type OperatingSystemVersionTargeting
              The operating system versions being targeted by the {@link LineItem}.
              Represents operating system versions that are being targeted or excluded by the {@link LineItem}.
              • targetedOperatingSystemVersions - optional, unbounded; type Technology
                Operating system versions that are being targeted by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
              • excludedOperatingSystemVersions - optional, unbounded; type Technology
                Operating system versions that are being excluded by the {@link LineItem}.
                Represents a technology entity that can be targeted.
                • id - optional; type long
                  The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                • name - optional; type string
                  The name of the technology being targeting. This value is read-only and is assigned by Google.
            Specifies the browsing technologies that are targeted by the {@link LineItem}. This attribute is optional.
          • customTargeting - optional; type CustomCriteriaSet - extension of abstract type CustomCriteriaNode
            A {@link CustomCriteriaSet} comprises of a set of {@link CustomCriteriaNode} objects combined by the {@link CustomCriteriaSet.LogicalOperator#logicalOperator}. The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
            A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
              • logicalOperator - optional; type CustomCriteriaSet.LogicalOperator - type string with restriction - enum { 'AND', 'OR' }
                The logical operator to be applied to {@link CustomCriteriaSet#children}. This attribute is required. This attribute is required.
              • children - optional, unbounded; type CustomCriteriaNode
                The custom criteria. This attribute is required.
                A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                  Specifies the collection of custom criteria that is targeted by the {@link LineItem}.

                  Once the {@link LineItem} is updated or modified with custom targeting, the server may return a normalized, but equivalent representation of the custom targeting expression.

                  {@code customTargeting} will have up to three levels of expressions including itself.

                  The top level {@code CustomCriteriaSet} i.e. the {@code customTargeting} object can only contain a {@link CustomCriteriaSet.LogicalOperator#OR} of all its children.

                  The second level of {@code CustomCriteriaSet} objects can only contain {@link CustomCriteriaSet.LogicalOperator#AND} of all their children. If a {@link CustomCriteria} is placed on this level, the server will wrap it in a {@link CustomCriteriaSet}.

                  The third level can only comprise of {@link CustomCriteria} objects.

                  The resulting custom targeting tree would be of the form:

                • userDomainTargeting - optional; type UserDomainTargeting
                  Specifies the domains or subdomains that are targeted or excluded by the {@link LineItem}. Users visiting from an IP address associated with those domains will be targeted or excluded. This attribute is optional.
                  Provides line items the ability to target or exclude users visiting their websites from a list of domains or subdomains.
                  • domains - optional, unbounded; type string
                    The domains or subdomains that are being targeted or excluded by the {@link LineItem}. This attribute is required and the maximum length of each domain is 67 characters.
                  • targeted - optional; type boolean
                    Indicates whether domains should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • contentTargeting - optional; type ContentTargeting
                  Used to target {@link LineItem}s to specific videos on a publisher's site.
                  • targetedContentIds - optional, unbounded; type long
                    The IDs of content being targeted by the {@code LineItem}.
                  • excludedContentIds - optional, unbounded; type long
                    The IDs of content being excluded by the {@code LineItem}.
                  • targetedVideoContentBundleIds - optional, unbounded; type long
                    A list of video content bundles, represented by {@link ContentBundle} IDs, that are being targeted by the {@code LineItem}.
                  • excludedVideoContentBundleIds - optional, unbounded; type long
                    A list of video content bundles, represented by {@link ContentBundle} IDs, that are being excluded by the {@code LineItem}.
                  Specifies the video categories and individual videos targeted by the {@link LineItem}.
                • videoPositionTargeting - optional; type VideoPositionTargeting
                  Specifies targeting against video position types.
                  Represents positions within and around a video where ads can be targeted to.

                  Example positions could be {@code pre-roll} (before the video plays), {@code post-roll} (after a video has completed playback) and {@code mid-roll} (during video playback).

                  Empty video position targeting means that all video positions are allowed. If a bumper line item has empty video position targeting it will be updated to target all bumper positions.

                  • targetedPositions - optional, unbounded; type VideoPositionTarget
                    The {@link VideoTargetingPosition} objects being targeted by the video {@link LineItem}.
                    Represents the options for targetable positions within a video.
                    • videoPosition - optional; type VideoPosition
                      Represents a targetable position within a video. A video ad can be targeted to a position (pre-roll, all mid-rolls, or post-roll), or to a specific mid-roll index.
                      • positionType - optional; type VideoPosition.Type - type string with restriction - enum { 'UNKNOWN', 'ALL', 'PREROLL', 'MIDROLL', 'POSTROLL' }
                        The type of video position (pre-roll, mid-roll, or post-roll).
                      • midrollIndex - optional; type int
                        The index of the mid-roll to target. Only valid if the {@link positionType} is {@link VideoPositionType#MIDROLL}, otherwise this field will be ignored.
                      The video position to target. This attribute is required.
                    • videoBumperType - optional; type VideoBumperType - type string with restriction - enum { 'BEFORE', 'AFTER' }
                      The video bumper type to target. To target a video position or a pod position, this value must be null. To target a bumper position this value must be populated and the line item must have a bumper type. To target a custom ad spot, this value must be null.
                    • videoPositionWithinPod - optional; type VideoPositionWithinPod
                      Represents a targetable position within a pod within a video stream. A video ad can be targeted to any position in the pod (first, second, third ... last). If there is only 1 ad in a pod, either first or last will target that position.
                      • index - optional; type int
                        The specific index of the pod. The index is defined as:
                        • 1 = first
                        • 2 = second
                        • 3 = third
                        • ....
                        • 100 = last
                        100 will always be the last position. For example, for a pod with 5 positions, 100 would target position 5. Multiple targets against the index 100 can exist.
                        Positions over 100 are not supported.
                      The video position within a pod to target. To target a video position or a bumper position, this value must be null. To target a position within a pod this value must be populated. To target a custom ad spot, this value must be null.
                    • adSpotId - optional; type long
                      A custom spot {@link AdSpot} to target. To target a video position, a bumper type or a video position within a pod this value must be null.
                • mobileApplicationTargeting - optional; type MobileApplicationTargeting
                  Provides the ability to target or exclude users' mobile applications.
                  • mobileApplicationIds - optional, unbounded; type long
                    The {@link MobileApplication#id IDs} that are being targeted or excluded.
                  • isTargeted - optional; type boolean
                    Indicates whether mobile apps should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                  Specifies targeting against mobile applications.
                • buyerUserListTargeting - optional; type BuyerUserListTargeting
                  The {@code BuyerUserListTargeting} associated with a programmatic {@link LineItem} or {@link ProposalLineItem} object.
                  • hasBuyerUserListTargeting - optional; type boolean
                    Whether the programmatic {@code LineItem} or {@code ProposalLineItem} object has buyer user list targeting.
                  Specifies whether buyer user lists are targeted on a programmatic {@link LineItem} or {@link ProposalLineItem}. This attribute is readonly and is populated by Google.
                • inventoryUrlTargeting - optional; type InventoryUrlTargeting
                  A collection of targeted inventory urls.
                  • targetedUrls - optional, unbounded; type InventoryUrl
                    The representation of an inventory Url that is used in targeting.
                    • id - optional; type long
                  • excludedUrls - optional, unbounded; type InventoryUrl
                    The representation of an inventory Url that is used in targeting.
                    • id - optional; type long
                  Specifies the URLs that are targeted by the entity. This is currently only supported by {@link YieldGroup}.
                • verticalTargeting - optional; type VerticalTargeting
                  Specifies the verticals that are targeted by the entity. The IDs listed here correspond to the IDs in the AD_CATEGORY table of type VERTICAL.
                  Vertical targeting information.
                  • targetedVerticalIds - optional, unbounded; type long
                  • excludedVerticalIds - optional, unbounded; type long
                • contentLabelTargeting - optional; type ContentLabelTargeting
                  Content label targeting information.
                  • excludedContentLabelIds - optional, unbounded; type long
                  Specifies the content labels that are excluded by the entity. The IDs listed here correspond to the IDs in the CONTENT_LABEL table.
                • requestPlatformTargeting - optional; type RequestPlatformTargeting
                  Provides line items the ability to target the platform that requests and renders the ad.

                  The following rules apply for {@link RequestPlatformTargeting}

                  • {@link RequestPlatformTargeting} must be specified for {@link ProposalLineItem}s.
                  • {@link RequestPlatformTargeting} must be specified for video line items. Empty values for {@link RequestPlatformTargeting#targetedRequestPlatforms} mean that all request platforms will be targeted.
                  • {@link RequestPlatformTargeting} is read-only and assigned by Google for non-video line items.
                  • {@link RequestPlatformTargeting} is read-only and assigned by Google for line items generated from proposal line items.
                  • targetedRequestPlatforms - optional, unbounded; type RequestPlatform - type string with restriction - enum { 'UNKNOWN', 'BROWSER', 'MOBILE_APP', 'VIDEO_PLAYER' }
                  Specifies the request platforms that are targeted by the {@link LineItem}. This attribute is required for video line items and for {@link ProposalLineItem}.

                  This value is modifiable for video line items, but read-only for non-video line items.

                  This value is read-only for video line items generated from proposal line items.

                • inventorySizeTargeting - optional; type InventorySizeTargeting
                  Represents a collection of targeted and excluded inventory sizes. This is currently only available on {@link YieldGroup} and {@link TrafficDataRequest}.
                  • isTargeted - optional; type boolean
                    Whether the inventory sizes should be targeted or excluded.
                  • targetedSizes - optional, unbounded; type TargetedSize
                    A list of {@link TargetedSizeDto}s.
                    A size that is targeted on a request.
                    • size - optional; type Size
                      Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                      For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                      • width - optional; type int
                        The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                      • height - optional; type int
                        The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                      • isAspectRatio - optional; type boolean
                        Whether this size represents an aspect ratio.
                  Specifies the sizes that are targeted by the entity. This is currently only supported on {@link YieldGroup} and {@link TrafficDataRequest}.
              • status - optional; type NativeStyleStatus - type string with restriction - enum { 'ACTIVE', 'ARCHIVED', 'INACTIVE', 'UNKNOWN' }
                The status of the native style. This attribute is read-only.
              • size - optional; type Size
                The size of the native style. This attribute is required.
                Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                • width - optional; type int
                  The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                • height - optional; type int
                  The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                • isAspectRatio - optional; type boolean
                  Whether this size represents an aspect ratio.
        Output:
        createNativeStylesResponse (wsdlsoap:header, use = literal, part = ResponseHeader)Source code
        parameters type createNativeStylesResponse
        • rval - optional, unbounded; type NativeStyle
          Used to define the look and feel of native ads, for both web and apps. Native styles determine how native creatives look for a segment of inventory.
          • id - optional; type long
            Uniquely identifies the {@code NativeStyle}. This attribute is read-only and is assigned by Google when a native style is created.
          • name - optional; type string
            The name of the native style. This attribute is required and has a maximum length of 255 characters.
          • htmlSnippet - optional; type string
            The HTML snippet of the native style with placeholders for the associated variables. This attribute is required.
          • cssSnippet - optional; type string
            The CSS snippet of the native style, with placeholders for the associated variables. This attribute is required.
          • creativeTemplateId - optional; type long
            The creative template ID this native style associated with. This attribute is required on creation and is read-only afterwards.
          • isFluid - optional; type boolean
            Whether this is a fluid size native style. If {@code true}, this must be used with 1x1 size.
          • targeting - optional; type Targeting
            The targeting criteria for this native style. Only ad unit and key-value targeting are supported at this time.
            Contains targeting criteria for {@link LineItem} objects. See {@link LineItem#targeting}.
            • geoTargeting - optional; type GeoTargeting
              Provides line items the ability to target geographical locations. By default, line items target all countries and their subdivisions. With geographical targeting, you can target line items to specific countries, regions, metro areas, and cities. You can also exclude the same.

              The following rules apply for geographical targeting:

              • You cannot target and exclude the same location.
              • You cannot target a child whose parent has been excluded. For example, if the state of Illinois has been excluded, then you cannot target Chicago.
              • You must not target a location if you are also targeting its parent. For example, if you are targeting New York City, you must not have the state of New York as one of the targeted locations.
              • You cannot explicitly define inclusions or exclusions that are already implicit. For example, if you explicitly include California, you implicitly exclude all other states. You therefore cannot explicitly exclude Florida, because it is already implicitly excluded. Conversely if you explicitly exclude Florida, you cannot explicitly include California.
              • targetedLocations - optional, unbounded; type Location
                The geographical locations being targeted by the {@link LineItem}.
                A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                • id - optional; type long
                  Uniquely identifies each {@code Location}.
                • type - optional; type string
                  The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                • canonicalParentId - optional; type int
                  The nearest location parent's ID for this geographical entity.
                • displayName - optional; type string
                  The localized name of the geographical entity.
              • excludedLocations - optional, unbounded; type Location
                The geographical locations being excluded by the {@link LineItem}.
                A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                • id - optional; type long
                  Uniquely identifies each {@code Location}.
                • type - optional; type string
                  The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                • canonicalParentId - optional; type int
                  The nearest location parent's ID for this geographical entity.
                • displayName - optional; type string
                  The localized name of the geographical entity.
              Specifies what geographical locations are targeted by the {@link LineItem}. This attribute is optional.
            • inventoryTargeting - optional; type InventoryTargeting
              A collection of targeted and excluded ad units and placements.
              • targetedAdUnits - optional, unbounded; type AdUnitTargeting
                Represents targeted or excluded ad units.
                • adUnitId - optional; type string
                  Included or excluded ad unit id.
                • includeDescendants - optional; type boolean
                  Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                A list of targeted {@link AdUnitTargeting}.
              • excludedAdUnits - optional, unbounded; type AdUnitTargeting
                Represents targeted or excluded ad units.
                • adUnitId - optional; type string
                  Included or excluded ad unit id.
                • includeDescendants - optional; type boolean
                  Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                A list of excluded {@link AdUnitTargeting}.
              • targetedPlacementIds - optional, unbounded; type long
                A list of targeted {@link Placement} ids.
              Specifies what inventory is targeted by the {@link LineItem}. This attribute is required. The line item must target at least one ad unit or placement.
            • dayPartTargeting - optional; type DayPartTargeting
              Modify the delivery times of line items for particular days of the week. By default, line items are served at all days and times.
              • dayParts - optional, unbounded; type DayPart
                {@code DayPart} represents a time-period within a day of the week which is targeted by a {@link LineItem}.
                • dayOfWeek - optional; type DayOfWeek - type string with restriction - enum { 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY' }
                  Day of the week the target applies to. This field is required.
                • startTime - optional; type TimeOfDay
                  Represents the start time of the targeted period (inclusive).
                  Represents a specific time in a day.
                  • hour - optional; type int
                    Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                  • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                    Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                • endTime - optional; type TimeOfDay
                  Represents the end time of the targeted period (exclusive).
                  Represents a specific time in a day.
                  • hour - optional; type int
                    Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                  • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                    Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                Specifies days of the week and times at which a {@code LineItem} will be delivered.

                If targeting all days and times, this value will be ignored.

              • timeZone - optional; type DeliveryTimeZone - type string with restriction - enum { 'PUBLISHER', 'BROWSER' }
                Specifies the time zone to be used for delivering {@link LineItem} objects. This attribute is optional and defaults to {@link DeliveryTimeZone#BROWSER}.

                Setting this has no effect if targeting all days and times.

              Specifies the days of the week and times that are targeted by the {@link LineItem}. This attribute is optional.
            • dateTimeRangeTargeting - optional; type DateTimeRangeTargeting
              The date time ranges that the line item is eligible to serve.
              • targetedDateTimeRanges - optional, unbounded; type DateTimeRange
                Represents a range of dates (combined with time of day) that has an upper and/or lower bound.
                • startDateTime - optional; type DateTime
                  Represents a date combined with the time of day.
                  • date - optional; type Date
                    Represents a date.
                    • year - optional; type int
                      Year (e.g., 2009)
                    • month - optional; type int
                      Month (1..12)
                    • day - optional; type int
                      Day (1..31)
                  • hour - optional; type int
                  • minute - optional; type int
                  • second - optional; type int
                  • timeZoneId - optional; type string
                  The start date time of this range. This field is optional and if it is not set then there is no lower bound on the date time range. If this field is not set then {@code endDateTime} must be specified.
                • endDateTime - optional; type DateTime
                  Represents a date combined with the time of day.
                  • date - optional; type Date
                    Represents a date.
                    • year - optional; type int
                      Year (e.g., 2009)
                    • month - optional; type int
                      Month (1..12)
                    • day - optional; type int
                      Day (1..31)
                  • hour - optional; type int
                  • minute - optional; type int
                  • second - optional; type int
                  • timeZoneId - optional; type string
                  The end date time of this range. This field is optional and if it is not set then there is no upper bound on the date time range. If this field is not set then {@code startDateTime} must be specified.
              Specifies the dates and time ranges that are targeted by the {@link LineItem}. This attribute is optional.
            • technologyTargeting - optional; type TechnologyTargeting
              Provides {@link LineItem} objects the ability to target or exclude technologies.
              • bandwidthGroupTargeting - optional; type BandwidthGroupTargeting
                The bandwidth groups being targeted by the {@link LineItem}.
                Represents bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                • isTargeted - optional; type boolean
                  Indicates whether bandwidth groups should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • bandwidthGroups - optional, unbounded; type Technology
                  The bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • browserTargeting - optional; type BrowserTargeting
                The browsers being targeted by the {@link LineItem}.
                Represents browsers that are being targeted or excluded by the {@link LineItem}.
                • isTargeted - optional; type boolean
                  Indicates whether browsers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • browsers - optional, unbounded; type Technology
                  Browsers that are being targeted or excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • browserLanguageTargeting - optional; type BrowserLanguageTargeting
                The languages of browsers being targeted by the {@link LineItem}.
                Represents browser languages that are being targeted or excluded by the {@link LineItem}.
                • isTargeted - optional; type boolean
                  Indicates whether browsers languages should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • browserLanguages - optional, unbounded; type Technology
                  Browser languages that are being targeted or excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • deviceCapabilityTargeting - optional; type DeviceCapabilityTargeting
                The device capabilities being targeted by the {@link LineItem}.
                Represents device capabilities that are being targeted or excluded by the {@link LineItem}.
                • targetedDeviceCapabilities - optional, unbounded; type Technology
                  Device capabilities that are being targeted by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
                • excludedDeviceCapabilities - optional, unbounded; type Technology
                  Device capabilities that are being excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • deviceCategoryTargeting - optional; type DeviceCategoryTargeting
                The device categories being targeted by the {@link LineItem}.
                Represents device categories that are being targeted or excluded by the {@link LineItem}.
                • targetedDeviceCategories - optional, unbounded; type Technology
                  Device categories that are being targeted by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
                • excludedDeviceCategories - optional, unbounded; type Technology
                  Device categories that are being excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • deviceManufacturerTargeting - optional; type DeviceManufacturerTargeting
                The device manufacturers being targeted by the {@link LineItem}.
                Represents device manufacturer that are being targeted or excluded by the {@link LineItem}.
                • isTargeted - optional; type boolean
                  Indicates whether device manufacturers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • deviceManufacturers - optional, unbounded; type Technology
                  Device manufacturers that are being targeted or excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • mobileCarrierTargeting - optional; type MobileCarrierTargeting
                The mobile carriers being targeted by the {@link LineItem}.
                Represents mobile carriers that are being targeted or excluded by the {@link LineItem}.
                • isTargeted - optional; type boolean
                  Indicates whether mobile carriers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • mobileCarriers - optional, unbounded; type Technology
                  Mobile carriers that are being targeted or excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • mobileDeviceTargeting - optional; type MobileDeviceTargeting
                The mobile devices being targeted by the {@link LineItem}.
                Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                • targetedMobileDevices - optional, unbounded; type Technology
                  Mobile devices that are being targeted by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
                • excludedMobileDevices - optional, unbounded; type Technology
                  Mobile devices that are being excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • mobileDeviceSubmodelTargeting - optional; type MobileDeviceSubmodelTargeting
                The mobile device submodels being targeted by the {@link LineItem}.
                Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                • targetedMobileDeviceSubmodels - optional, unbounded; type Technology
                  Mobile device submodels that are being targeted by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
                • excludedMobileDeviceSubmodels - optional, unbounded; type Technology
                  Mobile device submodels that are being excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • operatingSystemTargeting - optional; type OperatingSystemTargeting
                The operating systems being targeted by the {@link LineItem}.
                Represents operating systems that are being targeted or excluded by the {@link LineItem}.
                • isTargeted - optional; type boolean
                  Indicates whether operating systems should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                • operatingSystems - optional, unbounded; type Technology
                  Operating systems that are being targeted or excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              • operatingSystemVersionTargeting - optional; type OperatingSystemVersionTargeting
                The operating system versions being targeted by the {@link LineItem}.
                Represents operating system versions that are being targeted or excluded by the {@link LineItem}.
                • targetedOperatingSystemVersions - optional, unbounded; type Technology
                  Operating system versions that are being targeted by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
                • excludedOperatingSystemVersions - optional, unbounded; type Technology
                  Operating system versions that are being excluded by the {@link LineItem}.
                  Represents a technology entity that can be targeted.
                  • id - optional; type long
                    The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                  • name - optional; type string
                    The name of the technology being targeting. This value is read-only and is assigned by Google.
              Specifies the browsing technologies that are targeted by the {@link LineItem}. This attribute is optional.
            • customTargeting - optional; type CustomCriteriaSet - extension of abstract type CustomCriteriaNode
              A {@link CustomCriteriaSet} comprises of a set of {@link CustomCriteriaNode} objects combined by the {@link CustomCriteriaSet.LogicalOperator#logicalOperator}. The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
              A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                • logicalOperator - optional; type CustomCriteriaSet.LogicalOperator - type string with restriction - enum { 'AND', 'OR' }
                  The logical operator to be applied to {@link CustomCriteriaSet#children}. This attribute is required. This attribute is required.
                • children - optional, unbounded; type CustomCriteriaNode
                  The custom criteria. This attribute is required.
                  A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                    Specifies the collection of custom criteria that is targeted by the {@link LineItem}.

                    Once the {@link LineItem} is updated or modified with custom targeting, the server may return a normalized, but equivalent representation of the custom targeting expression.

                    {@code customTargeting} will have up to three levels of expressions including itself.

                    The top level {@code CustomCriteriaSet} i.e. the {@code customTargeting} object can only contain a {@link CustomCriteriaSet.LogicalOperator#OR} of all its children.

                    The second level of {@code CustomCriteriaSet} objects can only contain {@link CustomCriteriaSet.LogicalOperator#AND} of all their children. If a {@link CustomCriteria} is placed on this level, the server will wrap it in a {@link CustomCriteriaSet}.

                    The third level can only comprise of {@link CustomCriteria} objects.

                    The resulting custom targeting tree would be of the form:

                  • userDomainTargeting - optional; type UserDomainTargeting
                    Specifies the domains or subdomains that are targeted or excluded by the {@link LineItem}. Users visiting from an IP address associated with those domains will be targeted or excluded. This attribute is optional.
                    Provides line items the ability to target or exclude users visiting their websites from a list of domains or subdomains.
                    • domains - optional, unbounded; type string
                      The domains or subdomains that are being targeted or excluded by the {@link LineItem}. This attribute is required and the maximum length of each domain is 67 characters.
                    • targeted - optional; type boolean
                      Indicates whether domains should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                  • contentTargeting - optional; type ContentTargeting
                    Used to target {@link LineItem}s to specific videos on a publisher's site.
                    • targetedContentIds - optional, unbounded; type long
                      The IDs of content being targeted by the {@code LineItem}.
                    • excludedContentIds - optional, unbounded; type long
                      The IDs of content being excluded by the {@code LineItem}.
                    • targetedVideoContentBundleIds - optional, unbounded; type long
                      A list of video content bundles, represented by {@link ContentBundle} IDs, that are being targeted by the {@code LineItem}.
                    • excludedVideoContentBundleIds - optional, unbounded; type long
                      A list of video content bundles, represented by {@link ContentBundle} IDs, that are being excluded by the {@code LineItem}.
                    Specifies the video categories and individual videos targeted by the {@link LineItem}.
                  • videoPositionTargeting - optional; type VideoPositionTargeting
                    Specifies targeting against video position types.
                    Represents positions within and around a video where ads can be targeted to.

                    Example positions could be {@code pre-roll} (before the video plays), {@code post-roll} (after a video has completed playback) and {@code mid-roll} (during video playback).

                    Empty video position targeting means that all video positions are allowed. If a bumper line item has empty video position targeting it will be updated to target all bumper positions.

                    • targetedPositions - optional, unbounded; type VideoPositionTarget
                      The {@link VideoTargetingPosition} objects being targeted by the video {@link LineItem}.
                      Represents the options for targetable positions within a video.
                      • videoPosition - optional; type VideoPosition
                        Represents a targetable position within a video. A video ad can be targeted to a position (pre-roll, all mid-rolls, or post-roll), or to a specific mid-roll index.
                        • positionType - optional; type VideoPosition.Type - type string with restriction - enum { 'UNKNOWN', 'ALL', 'PREROLL', 'MIDROLL', 'POSTROLL' }
                          The type of video position (pre-roll, mid-roll, or post-roll).
                        • midrollIndex - optional; type int
                          The index of the mid-roll to target. Only valid if the {@link positionType} is {@link VideoPositionType#MIDROLL}, otherwise this field will be ignored.
                        The video position to target. This attribute is required.
                      • videoBumperType - optional; type VideoBumperType - type string with restriction - enum { 'BEFORE', 'AFTER' }
                        The video bumper type to target. To target a video position or a pod position, this value must be null. To target a bumper position this value must be populated and the line item must have a bumper type. To target a custom ad spot, this value must be null.
                      • videoPositionWithinPod - optional; type VideoPositionWithinPod
                        Represents a targetable position within a pod within a video stream. A video ad can be targeted to any position in the pod (first, second, third ... last). If there is only 1 ad in a pod, either first or last will target that position.
                        • index - optional; type int
                          The specific index of the pod. The index is defined as:
                          • 1 = first
                          • 2 = second
                          • 3 = third
                          • ....
                          • 100 = last
                          100 will always be the last position. For example, for a pod with 5 positions, 100 would target position 5. Multiple targets against the index 100 can exist.
                          Positions over 100 are not supported.
                        The video position within a pod to target. To target a video position or a bumper position, this value must be null. To target a position within a pod this value must be populated. To target a custom ad spot, this value must be null.
                      • adSpotId - optional; type long
                        A custom spot {@link AdSpot} to target. To target a video position, a bumper type or a video position within a pod this value must be null.
                  • mobileApplicationTargeting - optional; type MobileApplicationTargeting
                    Provides the ability to target or exclude users' mobile applications.
                    • mobileApplicationIds - optional, unbounded; type long
                      The {@link MobileApplication#id IDs} that are being targeted or excluded.
                    • isTargeted - optional; type boolean
                      Indicates whether mobile apps should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                    Specifies targeting against mobile applications.
                  • buyerUserListTargeting - optional; type BuyerUserListTargeting
                    The {@code BuyerUserListTargeting} associated with a programmatic {@link LineItem} or {@link ProposalLineItem} object.
                    • hasBuyerUserListTargeting - optional; type boolean
                      Whether the programmatic {@code LineItem} or {@code ProposalLineItem} object has buyer user list targeting.
                    Specifies whether buyer user lists are targeted on a programmatic {@link LineItem} or {@link ProposalLineItem}. This attribute is readonly and is populated by Google.
                  • inventoryUrlTargeting - optional; type InventoryUrlTargeting
                    A collection of targeted inventory urls.
                    • targetedUrls - optional, unbounded; type InventoryUrl
                      The representation of an inventory Url that is used in targeting.
                      • id - optional; type long
                    • excludedUrls - optional, unbounded; type InventoryUrl
                      The representation of an inventory Url that is used in targeting.
                      • id - optional; type long
                    Specifies the URLs that are targeted by the entity. This is currently only supported by {@link YieldGroup}.
                  • verticalTargeting - optional; type VerticalTargeting
                    Specifies the verticals that are targeted by the entity. The IDs listed here correspond to the IDs in the AD_CATEGORY table of type VERTICAL.
                    Vertical targeting information.
                    • targetedVerticalIds - optional, unbounded; type long
                    • excludedVerticalIds - optional, unbounded; type long
                  • contentLabelTargeting - optional; type ContentLabelTargeting
                    Content label targeting information.
                    • excludedContentLabelIds - optional, unbounded; type long
                    Specifies the content labels that are excluded by the entity. The IDs listed here correspond to the IDs in the CONTENT_LABEL table.
                  • requestPlatformTargeting - optional; type RequestPlatformTargeting
                    Provides line items the ability to target the platform that requests and renders the ad.

                    The following rules apply for {@link RequestPlatformTargeting}

                    • {@link RequestPlatformTargeting} must be specified for {@link ProposalLineItem}s.
                    • {@link RequestPlatformTargeting} must be specified for video line items. Empty values for {@link RequestPlatformTargeting#targetedRequestPlatforms} mean that all request platforms will be targeted.
                    • {@link RequestPlatformTargeting} is read-only and assigned by Google for non-video line items.
                    • {@link RequestPlatformTargeting} is read-only and assigned by Google for line items generated from proposal line items.
                    • targetedRequestPlatforms - optional, unbounded; type RequestPlatform - type string with restriction - enum { 'UNKNOWN', 'BROWSER', 'MOBILE_APP', 'VIDEO_PLAYER' }
                    Specifies the request platforms that are targeted by the {@link LineItem}. This attribute is required for video line items and for {@link ProposalLineItem}.

                    This value is modifiable for video line items, but read-only for non-video line items.

                    This value is read-only for video line items generated from proposal line items.

                  • inventorySizeTargeting - optional; type InventorySizeTargeting
                    Represents a collection of targeted and excluded inventory sizes. This is currently only available on {@link YieldGroup} and {@link TrafficDataRequest}.
                    • isTargeted - optional; type boolean
                      Whether the inventory sizes should be targeted or excluded.
                    • targetedSizes - optional, unbounded; type TargetedSize
                      A list of {@link TargetedSizeDto}s.
                      A size that is targeted on a request.
                      • size - optional; type Size
                        Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                        For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                        • width - optional; type int
                          The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                        • height - optional; type int
                          The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                        • isAspectRatio - optional; type boolean
                          Whether this size represents an aspect ratio.
                    Specifies the sizes that are targeted by the entity. This is currently only supported on {@link YieldGroup} and {@link TrafficDataRequest}.
                • status - optional; type NativeStyleStatus - type string with restriction - enum { 'ACTIVE', 'ARCHIVED', 'INACTIVE', 'UNKNOWN' }
                  The status of the native style. This attribute is read-only.
                • size - optional; type Size
                  The size of the native style. This attribute is required.
                  Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                  For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                  • width - optional; type int
                    The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                  • height - optional; type int
                    The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                  • isAspectRatio - optional; type boolean
                    Whether this size represents an aspect ratio.
          Fault:
          ApiException (wsdlsoap:fault, use = literal)Source code
          ApiException type ApiExceptionFault
          Exception class for holding a list of service errors.
          Base class for exceptions.
          • message - optional; type string
            Error message.
          • errors - optional, unbounded; type ApiError
            The API error base class that provides details about an error that occurred while processing a service request.

            The OGNL field path is provided for parsers to identify the request data element that may have caused the error.

            • fieldPath - optional; type string
              The OGNL field path to identify cause of error.
            • fieldPathElements - optional, unbounded; type FieldPathElement
              A parsed copy of the field path. For example, the field path "operations[1].operand" corresponds to this list: {FieldPathElement(field = "operations", index = 1), FieldPathElement(field = "operand", index = null)}.
              A segment of a field path. Each dot in a field path defines a new segment.
              • field - optional; type string
                The name of a field in lower camelcase. (e.g. "biddingStrategy")
              • index - optional; type int
                For list fields, this is a 0-indexed position in the list. Null for non-list fields.
            • trigger - optional; type string
              The data that caused the error.
            • errorString - optional; type string
              A simple string representation of the error and reason.
            List of errors.
          A fault element of type ApiException.
        • getNativeStylesByStatement
          Description:
          Gets a {@link NativeStylePage NativeStylePage} of {@link NativeStyle} objects that satisfy the given {@link Statement}. The following fields are supported for filtering:
          PQL Property Object Property
          {@code id} {@link NativeStyle#id}
          {@code name} {@link NativeStyle#name}
          Operation type:
          Request-response. The endpoint receives a message, and sends a correlated message.
          Input:
          getNativeStylesByStatementRequest (wsdlsoap:header, use = literal, part = RequestHeader)Source code
          parameters type getNativeStylesByStatement
          Gets a {@link NativeStylePage NativeStylePage} of {@link NativeStyle} objects that satisfy the given {@link Statement}. The following fields are supported for filtering:
          PQL Property Object Property
          {@code id} {@link NativeStyle#id}
          {@code name} {@link NativeStyle#name}
          • filterStatement - optional; type Statement
            Captures the {@code WHERE}, {@code ORDER BY} and {@code LIMIT} clauses of a PQL query. Statements are typically used to retrieve objects of a predefined domain type, which makes SELECT clause unnecessary.

            An example query text might be {@code "WHERE status = 'ACTIVE' ORDER BY id LIMIT 30"}.

            Statements support bind variables. These are substitutes for literals and can be thought of as input parameters to a PQL query.

            An example of such a query might be {@code "WHERE id = :idValue"}.

            Statements also support use of the LIKE keyword. This provides wildcard string matching.

            An example of such a query might be {@code "WHERE name LIKE '%searchString%'"}.

            The value for the variable idValue must then be set with an object of type {@link Value}, e.g., {@link NumberValue}, {@link TextValue} or {@link BooleanValue}.
            • query - optional; type string
              Holds the query in PQL syntax. The syntax is:
              [WHERE {[AND | OR] ...}]
              [ORDER BY [ASC | DESC]]
              [LIMIT {[,] } | { OFFSET }]


                   := {< | <= | > | >= | = | != }

                   := {< | <= | > | >= | = | != }
              := IN
              := IS NULL
              := LIKE
              := :

            • values - optional, unbounded; type String_ValueMapEntry
              Holds keys and values for bind variables and their values. The key is the name of the bind variable. The value is the literal value of the variable.

              In the example {@code "WHERE status = :bindStatus ORDER BY id LIMIT 30"}, the bind variable, represented by {@code :bindStatus} is named {@code bindStatus}, which would also be the parameter map key. The bind variable's value would be represented by a parameter map value of type {@link TextValue}. The final result, for example, would be an entry of {@code "bindStatus" => StringParam("ACTIVE")}.

              This represents an entry in a map with a key of type String and value of type Value.
              • key - optional; type string
              • value - optional; type Value
                {@code Value} represents a value.
            Output:
            getNativeStylesByStatementResponse (wsdlsoap:header, use = literal, part = ResponseHeader)Source code
            parameters type getNativeStylesByStatementResponse
            • rval - optional; type NativeStylePage
              Captures a page of {@link NativeStyle} objects.
              • totalResultSetSize - optional; type int
                The size of the total result set to which this page belongs.
              • startIndex - optional; type int
                The absolute index in the total result set on which this page begins.
              • results - optional, unbounded; type NativeStyle
                Used to define the look and feel of native ads, for both web and apps. Native styles determine how native creatives look for a segment of inventory.
                • id - optional; type long
                  Uniquely identifies the {@code NativeStyle}. This attribute is read-only and is assigned by Google when a native style is created.
                • name - optional; type string
                  The name of the native style. This attribute is required and has a maximum length of 255 characters.
                • htmlSnippet - optional; type string
                  The HTML snippet of the native style with placeholders for the associated variables. This attribute is required.
                • cssSnippet - optional; type string
                  The CSS snippet of the native style, with placeholders for the associated variables. This attribute is required.
                • creativeTemplateId - optional; type long
                  The creative template ID this native style associated with. This attribute is required on creation and is read-only afterwards.
                • isFluid - optional; type boolean
                  Whether this is a fluid size native style. If {@code true}, this must be used with 1x1 size.
                • targeting - optional; type Targeting
                  The targeting criteria for this native style. Only ad unit and key-value targeting are supported at this time.
                  Contains targeting criteria for {@link LineItem} objects. See {@link LineItem#targeting}.
                  • geoTargeting - optional; type GeoTargeting
                    Provides line items the ability to target geographical locations. By default, line items target all countries and their subdivisions. With geographical targeting, you can target line items to specific countries, regions, metro areas, and cities. You can also exclude the same.

                    The following rules apply for geographical targeting:

                    • You cannot target and exclude the same location.
                    • You cannot target a child whose parent has been excluded. For example, if the state of Illinois has been excluded, then you cannot target Chicago.
                    • You must not target a location if you are also targeting its parent. For example, if you are targeting New York City, you must not have the state of New York as one of the targeted locations.
                    • You cannot explicitly define inclusions or exclusions that are already implicit. For example, if you explicitly include California, you implicitly exclude all other states. You therefore cannot explicitly exclude Florida, because it is already implicitly excluded. Conversely if you explicitly exclude Florida, you cannot explicitly include California.
                    • targetedLocations - optional, unbounded; type Location
                      The geographical locations being targeted by the {@link LineItem}.
                      A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                      • id - optional; type long
                        Uniquely identifies each {@code Location}.
                      • type - optional; type string
                        The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                      • canonicalParentId - optional; type int
                        The nearest location parent's ID for this geographical entity.
                      • displayName - optional; type string
                        The localized name of the geographical entity.
                    • excludedLocations - optional, unbounded; type Location
                      The geographical locations being excluded by the {@link LineItem}.
                      A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                      • id - optional; type long
                        Uniquely identifies each {@code Location}.
                      • type - optional; type string
                        The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                      • canonicalParentId - optional; type int
                        The nearest location parent's ID for this geographical entity.
                      • displayName - optional; type string
                        The localized name of the geographical entity.
                    Specifies what geographical locations are targeted by the {@link LineItem}. This attribute is optional.
                  • inventoryTargeting - optional; type InventoryTargeting
                    A collection of targeted and excluded ad units and placements.
                    • targetedAdUnits - optional, unbounded; type AdUnitTargeting
                      Represents targeted or excluded ad units.
                      • adUnitId - optional; type string
                        Included or excluded ad unit id.
                      • includeDescendants - optional; type boolean
                        Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                      A list of targeted {@link AdUnitTargeting}.
                    • excludedAdUnits - optional, unbounded; type AdUnitTargeting
                      Represents targeted or excluded ad units.
                      • adUnitId - optional; type string
                        Included or excluded ad unit id.
                      • includeDescendants - optional; type boolean
                        Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                      A list of excluded {@link AdUnitTargeting}.
                    • targetedPlacementIds - optional, unbounded; type long
                      A list of targeted {@link Placement} ids.
                    Specifies what inventory is targeted by the {@link LineItem}. This attribute is required. The line item must target at least one ad unit or placement.
                  • dayPartTargeting - optional; type DayPartTargeting
                    Modify the delivery times of line items for particular days of the week. By default, line items are served at all days and times.
                    • dayParts - optional, unbounded; type DayPart
                      {@code DayPart} represents a time-period within a day of the week which is targeted by a {@link LineItem}.
                      • dayOfWeek - optional; type DayOfWeek - type string with restriction - enum { 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY' }
                        Day of the week the target applies to. This field is required.
                      • startTime - optional; type TimeOfDay
                        Represents the start time of the targeted period (inclusive).
                        Represents a specific time in a day.
                        • hour - optional; type int
                          Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                        • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                          Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                      • endTime - optional; type TimeOfDay
                        Represents the end time of the targeted period (exclusive).
                        Represents a specific time in a day.
                        • hour - optional; type int
                          Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                        • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                          Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                      Specifies days of the week and times at which a {@code LineItem} will be delivered.

                      If targeting all days and times, this value will be ignored.

                    • timeZone - optional; type DeliveryTimeZone - type string with restriction - enum { 'PUBLISHER', 'BROWSER' }
                      Specifies the time zone to be used for delivering {@link LineItem} objects. This attribute is optional and defaults to {@link DeliveryTimeZone#BROWSER}.

                      Setting this has no effect if targeting all days and times.

                    Specifies the days of the week and times that are targeted by the {@link LineItem}. This attribute is optional.
                  • dateTimeRangeTargeting - optional; type DateTimeRangeTargeting
                    The date time ranges that the line item is eligible to serve.
                    • targetedDateTimeRanges - optional, unbounded; type DateTimeRange
                      Represents a range of dates (combined with time of day) that has an upper and/or lower bound.
                      • startDateTime - optional; type DateTime
                        Represents a date combined with the time of day.
                        • date - optional; type Date
                          Represents a date.
                          • year - optional; type int
                            Year (e.g., 2009)
                          • month - optional; type int
                            Month (1..12)
                          • day - optional; type int
                            Day (1..31)
                        • hour - optional; type int
                        • minute - optional; type int
                        • second - optional; type int
                        • timeZoneId - optional; type string
                        The start date time of this range. This field is optional and if it is not set then there is no lower bound on the date time range. If this field is not set then {@code endDateTime} must be specified.
                      • endDateTime - optional; type DateTime
                        Represents a date combined with the time of day.
                        • date - optional; type Date
                          Represents a date.
                          • year - optional; type int
                            Year (e.g., 2009)
                          • month - optional; type int
                            Month (1..12)
                          • day - optional; type int
                            Day (1..31)
                        • hour - optional; type int
                        • minute - optional; type int
                        • second - optional; type int
                        • timeZoneId - optional; type string
                        The end date time of this range. This field is optional and if it is not set then there is no upper bound on the date time range. If this field is not set then {@code startDateTime} must be specified.
                    Specifies the dates and time ranges that are targeted by the {@link LineItem}. This attribute is optional.
                  • technologyTargeting - optional; type TechnologyTargeting
                    Provides {@link LineItem} objects the ability to target or exclude technologies.
                    • bandwidthGroupTargeting - optional; type BandwidthGroupTargeting
                      The bandwidth groups being targeted by the {@link LineItem}.
                      Represents bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                      • isTargeted - optional; type boolean
                        Indicates whether bandwidth groups should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                      • bandwidthGroups - optional, unbounded; type Technology
                        The bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • browserTargeting - optional; type BrowserTargeting
                      The browsers being targeted by the {@link LineItem}.
                      Represents browsers that are being targeted or excluded by the {@link LineItem}.
                      • isTargeted - optional; type boolean
                        Indicates whether browsers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                      • browsers - optional, unbounded; type Technology
                        Browsers that are being targeted or excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • browserLanguageTargeting - optional; type BrowserLanguageTargeting
                      The languages of browsers being targeted by the {@link LineItem}.
                      Represents browser languages that are being targeted or excluded by the {@link LineItem}.
                      • isTargeted - optional; type boolean
                        Indicates whether browsers languages should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                      • browserLanguages - optional, unbounded; type Technology
                        Browser languages that are being targeted or excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • deviceCapabilityTargeting - optional; type DeviceCapabilityTargeting
                      The device capabilities being targeted by the {@link LineItem}.
                      Represents device capabilities that are being targeted or excluded by the {@link LineItem}.
                      • targetedDeviceCapabilities - optional, unbounded; type Technology
                        Device capabilities that are being targeted by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • excludedDeviceCapabilities - optional, unbounded; type Technology
                        Device capabilities that are being excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • deviceCategoryTargeting - optional; type DeviceCategoryTargeting
                      The device categories being targeted by the {@link LineItem}.
                      Represents device categories that are being targeted or excluded by the {@link LineItem}.
                      • targetedDeviceCategories - optional, unbounded; type Technology
                        Device categories that are being targeted by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • excludedDeviceCategories - optional, unbounded; type Technology
                        Device categories that are being excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • deviceManufacturerTargeting - optional; type DeviceManufacturerTargeting
                      The device manufacturers being targeted by the {@link LineItem}.
                      Represents device manufacturer that are being targeted or excluded by the {@link LineItem}.
                      • isTargeted - optional; type boolean
                        Indicates whether device manufacturers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                      • deviceManufacturers - optional, unbounded; type Technology
                        Device manufacturers that are being targeted or excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • mobileCarrierTargeting - optional; type MobileCarrierTargeting
                      The mobile carriers being targeted by the {@link LineItem}.
                      Represents mobile carriers that are being targeted or excluded by the {@link LineItem}.
                      • isTargeted - optional; type boolean
                        Indicates whether mobile carriers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                      • mobileCarriers - optional, unbounded; type Technology
                        Mobile carriers that are being targeted or excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • mobileDeviceTargeting - optional; type MobileDeviceTargeting
                      The mobile devices being targeted by the {@link LineItem}.
                      Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                      • targetedMobileDevices - optional, unbounded; type Technology
                        Mobile devices that are being targeted by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • excludedMobileDevices - optional, unbounded; type Technology
                        Mobile devices that are being excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • mobileDeviceSubmodelTargeting - optional; type MobileDeviceSubmodelTargeting
                      The mobile device submodels being targeted by the {@link LineItem}.
                      Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                      • targetedMobileDeviceSubmodels - optional, unbounded; type Technology
                        Mobile device submodels that are being targeted by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • excludedMobileDeviceSubmodels - optional, unbounded; type Technology
                        Mobile device submodels that are being excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • operatingSystemTargeting - optional; type OperatingSystemTargeting
                      The operating systems being targeted by the {@link LineItem}.
                      Represents operating systems that are being targeted or excluded by the {@link LineItem}.
                      • isTargeted - optional; type boolean
                        Indicates whether operating systems should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                      • operatingSystems - optional, unbounded; type Technology
                        Operating systems that are being targeted or excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    • operatingSystemVersionTargeting - optional; type OperatingSystemVersionTargeting
                      The operating system versions being targeted by the {@link LineItem}.
                      Represents operating system versions that are being targeted or excluded by the {@link LineItem}.
                      • targetedOperatingSystemVersions - optional, unbounded; type Technology
                        Operating system versions that are being targeted by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • excludedOperatingSystemVersions - optional, unbounded; type Technology
                        Operating system versions that are being excluded by the {@link LineItem}.
                        Represents a technology entity that can be targeted.
                        • id - optional; type long
                          The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                        • name - optional; type string
                          The name of the technology being targeting. This value is read-only and is assigned by Google.
                    Specifies the browsing technologies that are targeted by the {@link LineItem}. This attribute is optional.
                  • customTargeting - optional; type CustomCriteriaSet - extension of abstract type CustomCriteriaNode
                    A {@link CustomCriteriaSet} comprises of a set of {@link CustomCriteriaNode} objects combined by the {@link CustomCriteriaSet.LogicalOperator#logicalOperator}. The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                    A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                      • logicalOperator - optional; type CustomCriteriaSet.LogicalOperator - type string with restriction - enum { 'AND', 'OR' }
                        The logical operator to be applied to {@link CustomCriteriaSet#children}. This attribute is required. This attribute is required.
                      • children - optional, unbounded; type CustomCriteriaNode
                        The custom criteria. This attribute is required.
                        A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                          Specifies the collection of custom criteria that is targeted by the {@link LineItem}.

                          Once the {@link LineItem} is updated or modified with custom targeting, the server may return a normalized, but equivalent representation of the custom targeting expression.

                          {@code customTargeting} will have up to three levels of expressions including itself.

                          The top level {@code CustomCriteriaSet} i.e. the {@code customTargeting} object can only contain a {@link CustomCriteriaSet.LogicalOperator#OR} of all its children.

                          The second level of {@code CustomCriteriaSet} objects can only contain {@link CustomCriteriaSet.LogicalOperator#AND} of all their children. If a {@link CustomCriteria} is placed on this level, the server will wrap it in a {@link CustomCriteriaSet}.

                          The third level can only comprise of {@link CustomCriteria} objects.

                          The resulting custom targeting tree would be of the form:

                        • userDomainTargeting - optional; type UserDomainTargeting
                          Specifies the domains or subdomains that are targeted or excluded by the {@link LineItem}. Users visiting from an IP address associated with those domains will be targeted or excluded. This attribute is optional.
                          Provides line items the ability to target or exclude users visiting their websites from a list of domains or subdomains.
                          • domains - optional, unbounded; type string
                            The domains or subdomains that are being targeted or excluded by the {@link LineItem}. This attribute is required and the maximum length of each domain is 67 characters.
                          • targeted - optional; type boolean
                            Indicates whether domains should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • contentTargeting - optional; type ContentTargeting
                          Used to target {@link LineItem}s to specific videos on a publisher's site.
                          • targetedContentIds - optional, unbounded; type long
                            The IDs of content being targeted by the {@code LineItem}.
                          • excludedContentIds - optional, unbounded; type long
                            The IDs of content being excluded by the {@code LineItem}.
                          • targetedVideoContentBundleIds - optional, unbounded; type long
                            A list of video content bundles, represented by {@link ContentBundle} IDs, that are being targeted by the {@code LineItem}.
                          • excludedVideoContentBundleIds - optional, unbounded; type long
                            A list of video content bundles, represented by {@link ContentBundle} IDs, that are being excluded by the {@code LineItem}.
                          Specifies the video categories and individual videos targeted by the {@link LineItem}.
                        • videoPositionTargeting - optional; type VideoPositionTargeting
                          Specifies targeting against video position types.
                          Represents positions within and around a video where ads can be targeted to.

                          Example positions could be {@code pre-roll} (before the video plays), {@code post-roll} (after a video has completed playback) and {@code mid-roll} (during video playback).

                          Empty video position targeting means that all video positions are allowed. If a bumper line item has empty video position targeting it will be updated to target all bumper positions.

                          • targetedPositions - optional, unbounded; type VideoPositionTarget
                            The {@link VideoTargetingPosition} objects being targeted by the video {@link LineItem}.
                            Represents the options for targetable positions within a video.
                            • videoPosition - optional; type VideoPosition
                              Represents a targetable position within a video. A video ad can be targeted to a position (pre-roll, all mid-rolls, or post-roll), or to a specific mid-roll index.
                              • positionType - optional; type VideoPosition.Type - type string with restriction - enum { 'UNKNOWN', 'ALL', 'PREROLL', 'MIDROLL', 'POSTROLL' }
                                The type of video position (pre-roll, mid-roll, or post-roll).
                              • midrollIndex - optional; type int
                                The index of the mid-roll to target. Only valid if the {@link positionType} is {@link VideoPositionType#MIDROLL}, otherwise this field will be ignored.
                              The video position to target. This attribute is required.
                            • videoBumperType - optional; type VideoBumperType - type string with restriction - enum { 'BEFORE', 'AFTER' }
                              The video bumper type to target. To target a video position or a pod position, this value must be null. To target a bumper position this value must be populated and the line item must have a bumper type. To target a custom ad spot, this value must be null.
                            • videoPositionWithinPod - optional; type VideoPositionWithinPod
                              Represents a targetable position within a pod within a video stream. A video ad can be targeted to any position in the pod (first, second, third ... last). If there is only 1 ad in a pod, either first or last will target that position.
                              • index - optional; type int
                                The specific index of the pod. The index is defined as:
                                • 1 = first
                                • 2 = second
                                • 3 = third
                                • ....
                                • 100 = last
                                100 will always be the last position. For example, for a pod with 5 positions, 100 would target position 5. Multiple targets against the index 100 can exist.
                                Positions over 100 are not supported.
                              The video position within a pod to target. To target a video position or a bumper position, this value must be null. To target a position within a pod this value must be populated. To target a custom ad spot, this value must be null.
                            • adSpotId - optional; type long
                              A custom spot {@link AdSpot} to target. To target a video position, a bumper type or a video position within a pod this value must be null.
                        • mobileApplicationTargeting - optional; type MobileApplicationTargeting
                          Provides the ability to target or exclude users' mobile applications.
                          • mobileApplicationIds - optional, unbounded; type long
                            The {@link MobileApplication#id IDs} that are being targeted or excluded.
                          • isTargeted - optional; type boolean
                            Indicates whether mobile apps should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          Specifies targeting against mobile applications.
                        • buyerUserListTargeting - optional; type BuyerUserListTargeting
                          The {@code BuyerUserListTargeting} associated with a programmatic {@link LineItem} or {@link ProposalLineItem} object.
                          • hasBuyerUserListTargeting - optional; type boolean
                            Whether the programmatic {@code LineItem} or {@code ProposalLineItem} object has buyer user list targeting.
                          Specifies whether buyer user lists are targeted on a programmatic {@link LineItem} or {@link ProposalLineItem}. This attribute is readonly and is populated by Google.
                        • inventoryUrlTargeting - optional; type InventoryUrlTargeting
                          A collection of targeted inventory urls.
                          • targetedUrls - optional, unbounded; type InventoryUrl
                            The representation of an inventory Url that is used in targeting.
                            • id - optional; type long
                          • excludedUrls - optional, unbounded; type InventoryUrl
                            The representation of an inventory Url that is used in targeting.
                            • id - optional; type long
                          Specifies the URLs that are targeted by the entity. This is currently only supported by {@link YieldGroup}.
                        • verticalTargeting - optional; type VerticalTargeting
                          Specifies the verticals that are targeted by the entity. The IDs listed here correspond to the IDs in the AD_CATEGORY table of type VERTICAL.
                          Vertical targeting information.
                          • targetedVerticalIds - optional, unbounded; type long
                          • excludedVerticalIds - optional, unbounded; type long
                        • contentLabelTargeting - optional; type ContentLabelTargeting
                          Content label targeting information.
                          • excludedContentLabelIds - optional, unbounded; type long
                          Specifies the content labels that are excluded by the entity. The IDs listed here correspond to the IDs in the CONTENT_LABEL table.
                        • requestPlatformTargeting - optional; type RequestPlatformTargeting
                          Provides line items the ability to target the platform that requests and renders the ad.

                          The following rules apply for {@link RequestPlatformTargeting}

                          • {@link RequestPlatformTargeting} must be specified for {@link ProposalLineItem}s.
                          • {@link RequestPlatformTargeting} must be specified for video line items. Empty values for {@link RequestPlatformTargeting#targetedRequestPlatforms} mean that all request platforms will be targeted.
                          • {@link RequestPlatformTargeting} is read-only and assigned by Google for non-video line items.
                          • {@link RequestPlatformTargeting} is read-only and assigned by Google for line items generated from proposal line items.
                          • targetedRequestPlatforms - optional, unbounded; type RequestPlatform - type string with restriction - enum { 'UNKNOWN', 'BROWSER', 'MOBILE_APP', 'VIDEO_PLAYER' }
                          Specifies the request platforms that are targeted by the {@link LineItem}. This attribute is required for video line items and for {@link ProposalLineItem}.

                          This value is modifiable for video line items, but read-only for non-video line items.

                          This value is read-only for video line items generated from proposal line items.

                        • inventorySizeTargeting - optional; type InventorySizeTargeting
                          Represents a collection of targeted and excluded inventory sizes. This is currently only available on {@link YieldGroup} and {@link TrafficDataRequest}.
                          • isTargeted - optional; type boolean
                            Whether the inventory sizes should be targeted or excluded.
                          • targetedSizes - optional, unbounded; type TargetedSize
                            A list of {@link TargetedSizeDto}s.
                            A size that is targeted on a request.
                            • size - optional; type Size
                              Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                              For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                              • width - optional; type int
                                The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                              • height - optional; type int
                                The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                              • isAspectRatio - optional; type boolean
                                Whether this size represents an aspect ratio.
                          Specifies the sizes that are targeted by the entity. This is currently only supported on {@link YieldGroup} and {@link TrafficDataRequest}.
                      • status - optional; type NativeStyleStatus - type string with restriction - enum { 'ACTIVE', 'ARCHIVED', 'INACTIVE', 'UNKNOWN' }
                        The status of the native style. This attribute is read-only.
                      • size - optional; type Size
                        The size of the native style. This attribute is required.
                        Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                        For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                        • width - optional; type int
                          The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                        • height - optional; type int
                          The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                        • isAspectRatio - optional; type boolean
                          Whether this size represents an aspect ratio.
                      The collection of native styles contained within this page.
              Fault:
              ApiException (wsdlsoap:fault, use = literal)Source code
              ApiException type ApiExceptionFault
              Exception class for holding a list of service errors.
              Base class for exceptions.
              • message - optional; type string
                Error message.
              • errors - optional, unbounded; type ApiError
                The API error base class that provides details about an error that occurred while processing a service request.

                The OGNL field path is provided for parsers to identify the request data element that may have caused the error.

                • fieldPath - optional; type string
                  The OGNL field path to identify cause of error.
                • fieldPathElements - optional, unbounded; type FieldPathElement
                  A parsed copy of the field path. For example, the field path "operations[1].operand" corresponds to this list: {FieldPathElement(field = "operations", index = 1), FieldPathElement(field = "operand", index = null)}.
                  A segment of a field path. Each dot in a field path defines a new segment.
                  • field - optional; type string
                    The name of a field in lower camelcase. (e.g. "biddingStrategy")
                  • index - optional; type int
                    For list fields, this is a 0-indexed position in the list. Null for non-list fields.
                • trigger - optional; type string
                  The data that caused the error.
                • errorString - optional; type string
                  A simple string representation of the error and reason.
                List of errors.
              A fault element of type ApiException.
            • performNativeStyleAction
              Description:
              Performs actions on {@link NativeStyle native styles} that match the given {@link Statement}.
              Operation type:
              Request-response. The endpoint receives a message, and sends a correlated message.
              Input:
              performNativeStyleActionRequest (wsdlsoap:header, use = literal, part = RequestHeader)Source code
              parameters type performNativeStyleAction
              Performs actions on {@link NativeStyle native styles} that match the given {@link Statement}.
              • nativeStyleAction - optional; type NativeStyleAction
                Represents an action that can be performed on native styles.
                • filterStatement - optional; type Statement
                  Captures the {@code WHERE}, {@code ORDER BY} and {@code LIMIT} clauses of a PQL query. Statements are typically used to retrieve objects of a predefined domain type, which makes SELECT clause unnecessary.

                  An example query text might be {@code "WHERE status = 'ACTIVE' ORDER BY id LIMIT 30"}.

                  Statements support bind variables. These are substitutes for literals and can be thought of as input parameters to a PQL query.

                  An example of such a query might be {@code "WHERE id = :idValue"}.

                  Statements also support use of the LIKE keyword. This provides wildcard string matching.

                  An example of such a query might be {@code "WHERE name LIKE '%searchString%'"}.

                  The value for the variable idValue must then be set with an object of type {@link Value}, e.g., {@link NumberValue}, {@link TextValue} or {@link BooleanValue}.
                  • query - optional; type string
                    Holds the query in PQL syntax. The syntax is:
                    [WHERE {[AND | OR] ...}]
                    [ORDER BY [ASC | DESC]]
                    [LIMIT {[,] } | { OFFSET }]


                         := {< | <= | > | >= | = | != }

                         := {< | <= | > | >= | = | != }
                    := IN
                    := IS NULL
                    := LIKE
                    := :

                  • values - optional, unbounded; type String_ValueMapEntry
                    Holds keys and values for bind variables and their values. The key is the name of the bind variable. The value is the literal value of the variable.

                    In the example {@code "WHERE status = :bindStatus ORDER BY id LIMIT 30"}, the bind variable, represented by {@code :bindStatus} is named {@code bindStatus}, which would also be the parameter map key. The bind variable's value would be represented by a parameter map value of type {@link TextValue}. The final result, for example, would be an entry of {@code "bindStatus" => StringParam("ACTIVE")}.

                    This represents an entry in a map with a key of type String and value of type Value.
                    • key - optional; type string
                    • value - optional; type Value
                      {@code Value} represents a value.
                Output:
                performNativeStyleActionResponse (wsdlsoap:header, use = literal, part = ResponseHeader)Source code
                parameters type performNativeStyleActionResponse
                • rval - optional; type UpdateResult
                  Represents the result of performing an action on objects.
                  • numChanges - optional; type int
                    The number of objects that were changed as a result of performing the action.
                Fault:
                ApiException (wsdlsoap:fault, use = literal)Source code
                ApiException type ApiExceptionFault
                Exception class for holding a list of service errors.
                Base class for exceptions.
                • message - optional; type string
                  Error message.
                • errors - optional, unbounded; type ApiError
                  The API error base class that provides details about an error that occurred while processing a service request.

                  The OGNL field path is provided for parsers to identify the request data element that may have caused the error.

                  • fieldPath - optional; type string
                    The OGNL field path to identify cause of error.
                  • fieldPathElements - optional, unbounded; type FieldPathElement
                    A parsed copy of the field path. For example, the field path "operations[1].operand" corresponds to this list: {FieldPathElement(field = "operations", index = 1), FieldPathElement(field = "operand", index = null)}.
                    A segment of a field path. Each dot in a field path defines a new segment.
                    • field - optional; type string
                      The name of a field in lower camelcase. (e.g. "biddingStrategy")
                    • index - optional; type int
                      For list fields, this is a 0-indexed position in the list. Null for non-list fields.
                  • trigger - optional; type string
                    The data that caused the error.
                  • errorString - optional; type string
                    A simple string representation of the error and reason.
                  List of errors.
                A fault element of type ApiException.
              • updateNativeStyles
                Description:
                Updates the specified {@link NativeStyle} objects.
                Operation type:
                Request-response. The endpoint receives a message, and sends a correlated message.
                Input:
                updateNativeStylesRequest (wsdlsoap:header, use = literal, part = RequestHeader)Source code
                parameters type updateNativeStyles
                Updates the specified {@link NativeStyle} objects.
                • nativeStyles - optional, unbounded; type NativeStyle
                  Used to define the look and feel of native ads, for both web and apps. Native styles determine how native creatives look for a segment of inventory.
                  • id - optional; type long
                    Uniquely identifies the {@code NativeStyle}. This attribute is read-only and is assigned by Google when a native style is created.
                  • name - optional; type string
                    The name of the native style. This attribute is required and has a maximum length of 255 characters.
                  • htmlSnippet - optional; type string
                    The HTML snippet of the native style with placeholders for the associated variables. This attribute is required.
                  • cssSnippet - optional; type string
                    The CSS snippet of the native style, with placeholders for the associated variables. This attribute is required.
                  • creativeTemplateId - optional; type long
                    The creative template ID this native style associated with. This attribute is required on creation and is read-only afterwards.
                  • isFluid - optional; type boolean
                    Whether this is a fluid size native style. If {@code true}, this must be used with 1x1 size.
                  • targeting - optional; type Targeting
                    The targeting criteria for this native style. Only ad unit and key-value targeting are supported at this time.
                    Contains targeting criteria for {@link LineItem} objects. See {@link LineItem#targeting}.
                    • geoTargeting - optional; type GeoTargeting
                      Provides line items the ability to target geographical locations. By default, line items target all countries and their subdivisions. With geographical targeting, you can target line items to specific countries, regions, metro areas, and cities. You can also exclude the same.

                      The following rules apply for geographical targeting:

                      • You cannot target and exclude the same location.
                      • You cannot target a child whose parent has been excluded. For example, if the state of Illinois has been excluded, then you cannot target Chicago.
                      • You must not target a location if you are also targeting its parent. For example, if you are targeting New York City, you must not have the state of New York as one of the targeted locations.
                      • You cannot explicitly define inclusions or exclusions that are already implicit. For example, if you explicitly include California, you implicitly exclude all other states. You therefore cannot explicitly exclude Florida, because it is already implicitly excluded. Conversely if you explicitly exclude Florida, you cannot explicitly include California.
                      • targetedLocations - optional, unbounded; type Location
                        The geographical locations being targeted by the {@link LineItem}.
                        A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                        • id - optional; type long
                          Uniquely identifies each {@code Location}.
                        • type - optional; type string
                          The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                        • canonicalParentId - optional; type int
                          The nearest location parent's ID for this geographical entity.
                        • displayName - optional; type string
                          The localized name of the geographical entity.
                      • excludedLocations - optional, unbounded; type Location
                        The geographical locations being excluded by the {@link LineItem}.
                        A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                        • id - optional; type long
                          Uniquely identifies each {@code Location}.
                        • type - optional; type string
                          The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                        • canonicalParentId - optional; type int
                          The nearest location parent's ID for this geographical entity.
                        • displayName - optional; type string
                          The localized name of the geographical entity.
                      Specifies what geographical locations are targeted by the {@link LineItem}. This attribute is optional.
                    • inventoryTargeting - optional; type InventoryTargeting
                      A collection of targeted and excluded ad units and placements.
                      • targetedAdUnits - optional, unbounded; type AdUnitTargeting
                        Represents targeted or excluded ad units.
                        • adUnitId - optional; type string
                          Included or excluded ad unit id.
                        • includeDescendants - optional; type boolean
                          Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                        A list of targeted {@link AdUnitTargeting}.
                      • excludedAdUnits - optional, unbounded; type AdUnitTargeting
                        Represents targeted or excluded ad units.
                        • adUnitId - optional; type string
                          Included or excluded ad unit id.
                        • includeDescendants - optional; type boolean
                          Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                        A list of excluded {@link AdUnitTargeting}.
                      • targetedPlacementIds - optional, unbounded; type long
                        A list of targeted {@link Placement} ids.
                      Specifies what inventory is targeted by the {@link LineItem}. This attribute is required. The line item must target at least one ad unit or placement.
                    • dayPartTargeting - optional; type DayPartTargeting
                      Modify the delivery times of line items for particular days of the week. By default, line items are served at all days and times.
                      • dayParts - optional, unbounded; type DayPart
                        {@code DayPart} represents a time-period within a day of the week which is targeted by a {@link LineItem}.
                        • dayOfWeek - optional; type DayOfWeek - type string with restriction - enum { 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY' }
                          Day of the week the target applies to. This field is required.
                        • startTime - optional; type TimeOfDay
                          Represents the start time of the targeted period (inclusive).
                          Represents a specific time in a day.
                          • hour - optional; type int
                            Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                          • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                            Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                        • endTime - optional; type TimeOfDay
                          Represents the end time of the targeted period (exclusive).
                          Represents a specific time in a day.
                          • hour - optional; type int
                            Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                          • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                            Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                        Specifies days of the week and times at which a {@code LineItem} will be delivered.

                        If targeting all days and times, this value will be ignored.

                      • timeZone - optional; type DeliveryTimeZone - type string with restriction - enum { 'PUBLISHER', 'BROWSER' }
                        Specifies the time zone to be used for delivering {@link LineItem} objects. This attribute is optional and defaults to {@link DeliveryTimeZone#BROWSER}.

                        Setting this has no effect if targeting all days and times.

                      Specifies the days of the week and times that are targeted by the {@link LineItem}. This attribute is optional.
                    • dateTimeRangeTargeting - optional; type DateTimeRangeTargeting
                      The date time ranges that the line item is eligible to serve.
                      • targetedDateTimeRanges - optional, unbounded; type DateTimeRange
                        Represents a range of dates (combined with time of day) that has an upper and/or lower bound.
                        • startDateTime - optional; type DateTime
                          Represents a date combined with the time of day.
                          • date - optional; type Date
                            Represents a date.
                            • year - optional; type int
                              Year (e.g., 2009)
                            • month - optional; type int
                              Month (1..12)
                            • day - optional; type int
                              Day (1..31)
                          • hour - optional; type int
                          • minute - optional; type int
                          • second - optional; type int
                          • timeZoneId - optional; type string
                          The start date time of this range. This field is optional and if it is not set then there is no lower bound on the date time range. If this field is not set then {@code endDateTime} must be specified.
                        • endDateTime - optional; type DateTime
                          Represents a date combined with the time of day.
                          • date - optional; type Date
                            Represents a date.
                            • year - optional; type int
                              Year (e.g., 2009)
                            • month - optional; type int
                              Month (1..12)
                            • day - optional; type int
                              Day (1..31)
                          • hour - optional; type int
                          • minute - optional; type int
                          • second - optional; type int
                          • timeZoneId - optional; type string
                          The end date time of this range. This field is optional and if it is not set then there is no upper bound on the date time range. If this field is not set then {@code startDateTime} must be specified.
                      Specifies the dates and time ranges that are targeted by the {@link LineItem}. This attribute is optional.
                    • technologyTargeting - optional; type TechnologyTargeting
                      Provides {@link LineItem} objects the ability to target or exclude technologies.
                      • bandwidthGroupTargeting - optional; type BandwidthGroupTargeting
                        The bandwidth groups being targeted by the {@link LineItem}.
                        Represents bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                        • isTargeted - optional; type boolean
                          Indicates whether bandwidth groups should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • bandwidthGroups - optional, unbounded; type Technology
                          The bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • browserTargeting - optional; type BrowserTargeting
                        The browsers being targeted by the {@link LineItem}.
                        Represents browsers that are being targeted or excluded by the {@link LineItem}.
                        • isTargeted - optional; type boolean
                          Indicates whether browsers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • browsers - optional, unbounded; type Technology
                          Browsers that are being targeted or excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • browserLanguageTargeting - optional; type BrowserLanguageTargeting
                        The languages of browsers being targeted by the {@link LineItem}.
                        Represents browser languages that are being targeted or excluded by the {@link LineItem}.
                        • isTargeted - optional; type boolean
                          Indicates whether browsers languages should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • browserLanguages - optional, unbounded; type Technology
                          Browser languages that are being targeted or excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • deviceCapabilityTargeting - optional; type DeviceCapabilityTargeting
                        The device capabilities being targeted by the {@link LineItem}.
                        Represents device capabilities that are being targeted or excluded by the {@link LineItem}.
                        • targetedDeviceCapabilities - optional, unbounded; type Technology
                          Device capabilities that are being targeted by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • excludedDeviceCapabilities - optional, unbounded; type Technology
                          Device capabilities that are being excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • deviceCategoryTargeting - optional; type DeviceCategoryTargeting
                        The device categories being targeted by the {@link LineItem}.
                        Represents device categories that are being targeted or excluded by the {@link LineItem}.
                        • targetedDeviceCategories - optional, unbounded; type Technology
                          Device categories that are being targeted by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • excludedDeviceCategories - optional, unbounded; type Technology
                          Device categories that are being excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • deviceManufacturerTargeting - optional; type DeviceManufacturerTargeting
                        The device manufacturers being targeted by the {@link LineItem}.
                        Represents device manufacturer that are being targeted or excluded by the {@link LineItem}.
                        • isTargeted - optional; type boolean
                          Indicates whether device manufacturers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • deviceManufacturers - optional, unbounded; type Technology
                          Device manufacturers that are being targeted or excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • mobileCarrierTargeting - optional; type MobileCarrierTargeting
                        The mobile carriers being targeted by the {@link LineItem}.
                        Represents mobile carriers that are being targeted or excluded by the {@link LineItem}.
                        • isTargeted - optional; type boolean
                          Indicates whether mobile carriers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • mobileCarriers - optional, unbounded; type Technology
                          Mobile carriers that are being targeted or excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • mobileDeviceTargeting - optional; type MobileDeviceTargeting
                        The mobile devices being targeted by the {@link LineItem}.
                        Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                        • targetedMobileDevices - optional, unbounded; type Technology
                          Mobile devices that are being targeted by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • excludedMobileDevices - optional, unbounded; type Technology
                          Mobile devices that are being excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • mobileDeviceSubmodelTargeting - optional; type MobileDeviceSubmodelTargeting
                        The mobile device submodels being targeted by the {@link LineItem}.
                        Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                        • targetedMobileDeviceSubmodels - optional, unbounded; type Technology
                          Mobile device submodels that are being targeted by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • excludedMobileDeviceSubmodels - optional, unbounded; type Technology
                          Mobile device submodels that are being excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • operatingSystemTargeting - optional; type OperatingSystemTargeting
                        The operating systems being targeted by the {@link LineItem}.
                        Represents operating systems that are being targeted or excluded by the {@link LineItem}.
                        • isTargeted - optional; type boolean
                          Indicates whether operating systems should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                        • operatingSystems - optional, unbounded; type Technology
                          Operating systems that are being targeted or excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      • operatingSystemVersionTargeting - optional; type OperatingSystemVersionTargeting
                        The operating system versions being targeted by the {@link LineItem}.
                        Represents operating system versions that are being targeted or excluded by the {@link LineItem}.
                        • targetedOperatingSystemVersions - optional, unbounded; type Technology
                          Operating system versions that are being targeted by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • excludedOperatingSystemVersions - optional, unbounded; type Technology
                          Operating system versions that are being excluded by the {@link LineItem}.
                          Represents a technology entity that can be targeted.
                          • id - optional; type long
                            The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                          • name - optional; type string
                            The name of the technology being targeting. This value is read-only and is assigned by Google.
                      Specifies the browsing technologies that are targeted by the {@link LineItem}. This attribute is optional.
                    • customTargeting - optional; type CustomCriteriaSet - extension of abstract type CustomCriteriaNode
                      A {@link CustomCriteriaSet} comprises of a set of {@link CustomCriteriaNode} objects combined by the {@link CustomCriteriaSet.LogicalOperator#logicalOperator}. The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                      A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                        • logicalOperator - optional; type CustomCriteriaSet.LogicalOperator - type string with restriction - enum { 'AND', 'OR' }
                          The logical operator to be applied to {@link CustomCriteriaSet#children}. This attribute is required. This attribute is required.
                        • children - optional, unbounded; type CustomCriteriaNode
                          The custom criteria. This attribute is required.
                          A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                            Specifies the collection of custom criteria that is targeted by the {@link LineItem}.

                            Once the {@link LineItem} is updated or modified with custom targeting, the server may return a normalized, but equivalent representation of the custom targeting expression.

                            {@code customTargeting} will have up to three levels of expressions including itself.

                            The top level {@code CustomCriteriaSet} i.e. the {@code customTargeting} object can only contain a {@link CustomCriteriaSet.LogicalOperator#OR} of all its children.

                            The second level of {@code CustomCriteriaSet} objects can only contain {@link CustomCriteriaSet.LogicalOperator#AND} of all their children. If a {@link CustomCriteria} is placed on this level, the server will wrap it in a {@link CustomCriteriaSet}.

                            The third level can only comprise of {@link CustomCriteria} objects.

                            The resulting custom targeting tree would be of the form:

                          • userDomainTargeting - optional; type UserDomainTargeting
                            Specifies the domains or subdomains that are targeted or excluded by the {@link LineItem}. Users visiting from an IP address associated with those domains will be targeted or excluded. This attribute is optional.
                            Provides line items the ability to target or exclude users visiting their websites from a list of domains or subdomains.
                            • domains - optional, unbounded; type string
                              The domains or subdomains that are being targeted or excluded by the {@link LineItem}. This attribute is required and the maximum length of each domain is 67 characters.
                            • targeted - optional; type boolean
                              Indicates whether domains should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • contentTargeting - optional; type ContentTargeting
                            Used to target {@link LineItem}s to specific videos on a publisher's site.
                            • targetedContentIds - optional, unbounded; type long
                              The IDs of content being targeted by the {@code LineItem}.
                            • excludedContentIds - optional, unbounded; type long
                              The IDs of content being excluded by the {@code LineItem}.
                            • targetedVideoContentBundleIds - optional, unbounded; type long
                              A list of video content bundles, represented by {@link ContentBundle} IDs, that are being targeted by the {@code LineItem}.
                            • excludedVideoContentBundleIds - optional, unbounded; type long
                              A list of video content bundles, represented by {@link ContentBundle} IDs, that are being excluded by the {@code LineItem}.
                            Specifies the video categories and individual videos targeted by the {@link LineItem}.
                          • videoPositionTargeting - optional; type VideoPositionTargeting
                            Specifies targeting against video position types.
                            Represents positions within and around a video where ads can be targeted to.

                            Example positions could be {@code pre-roll} (before the video plays), {@code post-roll} (after a video has completed playback) and {@code mid-roll} (during video playback).

                            Empty video position targeting means that all video positions are allowed. If a bumper line item has empty video position targeting it will be updated to target all bumper positions.

                            • targetedPositions - optional, unbounded; type VideoPositionTarget
                              The {@link VideoTargetingPosition} objects being targeted by the video {@link LineItem}.
                              Represents the options for targetable positions within a video.
                              • videoPosition - optional; type VideoPosition
                                Represents a targetable position within a video. A video ad can be targeted to a position (pre-roll, all mid-rolls, or post-roll), or to a specific mid-roll index.
                                • positionType - optional; type VideoPosition.Type - type string with restriction - enum { 'UNKNOWN', 'ALL', 'PREROLL', 'MIDROLL', 'POSTROLL' }
                                  The type of video position (pre-roll, mid-roll, or post-roll).
                                • midrollIndex - optional; type int
                                  The index of the mid-roll to target. Only valid if the {@link positionType} is {@link VideoPositionType#MIDROLL}, otherwise this field will be ignored.
                                The video position to target. This attribute is required.
                              • videoBumperType - optional; type VideoBumperType - type string with restriction - enum { 'BEFORE', 'AFTER' }
                                The video bumper type to target. To target a video position or a pod position, this value must be null. To target a bumper position this value must be populated and the line item must have a bumper type. To target a custom ad spot, this value must be null.
                              • videoPositionWithinPod - optional; type VideoPositionWithinPod
                                Represents a targetable position within a pod within a video stream. A video ad can be targeted to any position in the pod (first, second, third ... last). If there is only 1 ad in a pod, either first or last will target that position.
                                • index - optional; type int
                                  The specific index of the pod. The index is defined as:
                                  • 1 = first
                                  • 2 = second
                                  • 3 = third
                                  • ....
                                  • 100 = last
                                  100 will always be the last position. For example, for a pod with 5 positions, 100 would target position 5. Multiple targets against the index 100 can exist.
                                  Positions over 100 are not supported.
                                The video position within a pod to target. To target a video position or a bumper position, this value must be null. To target a position within a pod this value must be populated. To target a custom ad spot, this value must be null.
                              • adSpotId - optional; type long
                                A custom spot {@link AdSpot} to target. To target a video position, a bumper type or a video position within a pod this value must be null.
                          • mobileApplicationTargeting - optional; type MobileApplicationTargeting
                            Provides the ability to target or exclude users' mobile applications.
                            • mobileApplicationIds - optional, unbounded; type long
                              The {@link MobileApplication#id IDs} that are being targeted or excluded.
                            • isTargeted - optional; type boolean
                              Indicates whether mobile apps should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                            Specifies targeting against mobile applications.
                          • buyerUserListTargeting - optional; type BuyerUserListTargeting
                            The {@code BuyerUserListTargeting} associated with a programmatic {@link LineItem} or {@link ProposalLineItem} object.
                            • hasBuyerUserListTargeting - optional; type boolean
                              Whether the programmatic {@code LineItem} or {@code ProposalLineItem} object has buyer user list targeting.
                            Specifies whether buyer user lists are targeted on a programmatic {@link LineItem} or {@link ProposalLineItem}. This attribute is readonly and is populated by Google.
                          • inventoryUrlTargeting - optional; type InventoryUrlTargeting
                            A collection of targeted inventory urls.
                            • targetedUrls - optional, unbounded; type InventoryUrl
                              The representation of an inventory Url that is used in targeting.
                              • id - optional; type long
                            • excludedUrls - optional, unbounded; type InventoryUrl
                              The representation of an inventory Url that is used in targeting.
                              • id - optional; type long
                            Specifies the URLs that are targeted by the entity. This is currently only supported by {@link YieldGroup}.
                          • verticalTargeting - optional; type VerticalTargeting
                            Specifies the verticals that are targeted by the entity. The IDs listed here correspond to the IDs in the AD_CATEGORY table of type VERTICAL.
                            Vertical targeting information.
                            • targetedVerticalIds - optional, unbounded; type long
                            • excludedVerticalIds - optional, unbounded; type long
                          • contentLabelTargeting - optional; type ContentLabelTargeting
                            Content label targeting information.
                            • excludedContentLabelIds - optional, unbounded; type long
                            Specifies the content labels that are excluded by the entity. The IDs listed here correspond to the IDs in the CONTENT_LABEL table.
                          • requestPlatformTargeting - optional; type RequestPlatformTargeting
                            Provides line items the ability to target the platform that requests and renders the ad.

                            The following rules apply for {@link RequestPlatformTargeting}

                            • {@link RequestPlatformTargeting} must be specified for {@link ProposalLineItem}s.
                            • {@link RequestPlatformTargeting} must be specified for video line items. Empty values for {@link RequestPlatformTargeting#targetedRequestPlatforms} mean that all request platforms will be targeted.
                            • {@link RequestPlatformTargeting} is read-only and assigned by Google for non-video line items.
                            • {@link RequestPlatformTargeting} is read-only and assigned by Google for line items generated from proposal line items.
                            • targetedRequestPlatforms - optional, unbounded; type RequestPlatform - type string with restriction - enum { 'UNKNOWN', 'BROWSER', 'MOBILE_APP', 'VIDEO_PLAYER' }
                            Specifies the request platforms that are targeted by the {@link LineItem}. This attribute is required for video line items and for {@link ProposalLineItem}.

                            This value is modifiable for video line items, but read-only for non-video line items.

                            This value is read-only for video line items generated from proposal line items.

                          • inventorySizeTargeting - optional; type InventorySizeTargeting
                            Represents a collection of targeted and excluded inventory sizes. This is currently only available on {@link YieldGroup} and {@link TrafficDataRequest}.
                            • isTargeted - optional; type boolean
                              Whether the inventory sizes should be targeted or excluded.
                            • targetedSizes - optional, unbounded; type TargetedSize
                              A list of {@link TargetedSizeDto}s.
                              A size that is targeted on a request.
                              • size - optional; type Size
                                Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                                For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                                • width - optional; type int
                                  The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                                • height - optional; type int
                                  The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                                • isAspectRatio - optional; type boolean
                                  Whether this size represents an aspect ratio.
                            Specifies the sizes that are targeted by the entity. This is currently only supported on {@link YieldGroup} and {@link TrafficDataRequest}.
                        • status - optional; type NativeStyleStatus - type string with restriction - enum { 'ACTIVE', 'ARCHIVED', 'INACTIVE', 'UNKNOWN' }
                          The status of the native style. This attribute is read-only.
                        • size - optional; type Size
                          The size of the native style. This attribute is required.
                          Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                          For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                          • width - optional; type int
                            The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                          • height - optional; type int
                            The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                          • isAspectRatio - optional; type boolean
                            Whether this size represents an aspect ratio.
                  Output:
                  updateNativeStylesResponse (wsdlsoap:header, use = literal, part = ResponseHeader)Source code
                  parameters type updateNativeStylesResponse
                  • rval - optional, unbounded; type NativeStyle
                    Used to define the look and feel of native ads, for both web and apps. Native styles determine how native creatives look for a segment of inventory.
                    • id - optional; type long
                      Uniquely identifies the {@code NativeStyle}. This attribute is read-only and is assigned by Google when a native style is created.
                    • name - optional; type string
                      The name of the native style. This attribute is required and has a maximum length of 255 characters.
                    • htmlSnippet - optional; type string
                      The HTML snippet of the native style with placeholders for the associated variables. This attribute is required.
                    • cssSnippet - optional; type string
                      The CSS snippet of the native style, with placeholders for the associated variables. This attribute is required.
                    • creativeTemplateId - optional; type long
                      The creative template ID this native style associated with. This attribute is required on creation and is read-only afterwards.
                    • isFluid - optional; type boolean
                      Whether this is a fluid size native style. If {@code true}, this must be used with 1x1 size.
                    • targeting - optional; type Targeting
                      The targeting criteria for this native style. Only ad unit and key-value targeting are supported at this time.
                      Contains targeting criteria for {@link LineItem} objects. See {@link LineItem#targeting}.
                      • geoTargeting - optional; type GeoTargeting
                        Provides line items the ability to target geographical locations. By default, line items target all countries and their subdivisions. With geographical targeting, you can target line items to specific countries, regions, metro areas, and cities. You can also exclude the same.

                        The following rules apply for geographical targeting:

                        • You cannot target and exclude the same location.
                        • You cannot target a child whose parent has been excluded. For example, if the state of Illinois has been excluded, then you cannot target Chicago.
                        • You must not target a location if you are also targeting its parent. For example, if you are targeting New York City, you must not have the state of New York as one of the targeted locations.
                        • You cannot explicitly define inclusions or exclusions that are already implicit. For example, if you explicitly include California, you implicitly exclude all other states. You therefore cannot explicitly exclude Florida, because it is already implicitly excluded. Conversely if you explicitly exclude Florida, you cannot explicitly include California.
                        • targetedLocations - optional, unbounded; type Location
                          The geographical locations being targeted by the {@link LineItem}.
                          A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                          • id - optional; type long
                            Uniquely identifies each {@code Location}.
                          • type - optional; type string
                            The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                          • canonicalParentId - optional; type int
                            The nearest location parent's ID for this geographical entity.
                          • displayName - optional; type string
                            The localized name of the geographical entity.
                        • excludedLocations - optional, unbounded; type Location
                          The geographical locations being excluded by the {@link LineItem}.
                          A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.
                          • id - optional; type long
                            Uniquely identifies each {@code Location}.
                          • type - optional; type string
                            The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)
                          • canonicalParentId - optional; type int
                            The nearest location parent's ID for this geographical entity.
                          • displayName - optional; type string
                            The localized name of the geographical entity.
                        Specifies what geographical locations are targeted by the {@link LineItem}. This attribute is optional.
                      • inventoryTargeting - optional; type InventoryTargeting
                        A collection of targeted and excluded ad units and placements.
                        • targetedAdUnits - optional, unbounded; type AdUnitTargeting
                          Represents targeted or excluded ad units.
                          • adUnitId - optional; type string
                            Included or excluded ad unit id.
                          • includeDescendants - optional; type boolean
                            Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                          A list of targeted {@link AdUnitTargeting}.
                        • excludedAdUnits - optional, unbounded; type AdUnitTargeting
                          Represents targeted or excluded ad units.
                          • adUnitId - optional; type string
                            Included or excluded ad unit id.
                          • includeDescendants - optional; type boolean
                            Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.
                          A list of excluded {@link AdUnitTargeting}.
                        • targetedPlacementIds - optional, unbounded; type long
                          A list of targeted {@link Placement} ids.
                        Specifies what inventory is targeted by the {@link LineItem}. This attribute is required. The line item must target at least one ad unit or placement.
                      • dayPartTargeting - optional; type DayPartTargeting
                        Modify the delivery times of line items for particular days of the week. By default, line items are served at all days and times.
                        • dayParts - optional, unbounded; type DayPart
                          {@code DayPart} represents a time-period within a day of the week which is targeted by a {@link LineItem}.
                          • dayOfWeek - optional; type DayOfWeek - type string with restriction - enum { 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY' }
                            Day of the week the target applies to. This field is required.
                          • startTime - optional; type TimeOfDay
                            Represents the start time of the targeted period (inclusive).
                            Represents a specific time in a day.
                            • hour - optional; type int
                              Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                            • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                              Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                          • endTime - optional; type TimeOfDay
                            Represents the end time of the targeted period (exclusive).
                            Represents a specific time in a day.
                            • hour - optional; type int
                              Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.
                            • minute - optional; type MinuteOfHour - type string with restriction - enum { 'ZERO', 'FIFTEEN', 'THIRTY', 'FORTY_FIVE' }
                              Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.
                          Specifies days of the week and times at which a {@code LineItem} will be delivered.

                          If targeting all days and times, this value will be ignored.

                        • timeZone - optional; type DeliveryTimeZone - type string with restriction - enum { 'PUBLISHER', 'BROWSER' }
                          Specifies the time zone to be used for delivering {@link LineItem} objects. This attribute is optional and defaults to {@link DeliveryTimeZone#BROWSER}.

                          Setting this has no effect if targeting all days and times.

                        Specifies the days of the week and times that are targeted by the {@link LineItem}. This attribute is optional.
                      • dateTimeRangeTargeting - optional; type DateTimeRangeTargeting
                        The date time ranges that the line item is eligible to serve.
                        • targetedDateTimeRanges - optional, unbounded; type DateTimeRange
                          Represents a range of dates (combined with time of day) that has an upper and/or lower bound.
                          • startDateTime - optional; type DateTime
                            Represents a date combined with the time of day.
                            • date - optional; type Date
                              Represents a date.
                              • year - optional; type int
                                Year (e.g., 2009)
                              • month - optional; type int
                                Month (1..12)
                              • day - optional; type int
                                Day (1..31)
                            • hour - optional; type int
                            • minute - optional; type int
                            • second - optional; type int
                            • timeZoneId - optional; type string
                            The start date time of this range. This field is optional and if it is not set then there is no lower bound on the date time range. If this field is not set then {@code endDateTime} must be specified.
                          • endDateTime - optional; type DateTime
                            Represents a date combined with the time of day.
                            • date - optional; type Date
                              Represents a date.
                              • year - optional; type int
                                Year (e.g., 2009)
                              • month - optional; type int
                                Month (1..12)
                              • day - optional; type int
                                Day (1..31)
                            • hour - optional; type int
                            • minute - optional; type int
                            • second - optional; type int
                            • timeZoneId - optional; type string
                            The end date time of this range. This field is optional and if it is not set then there is no upper bound on the date time range. If this field is not set then {@code startDateTime} must be specified.
                        Specifies the dates and time ranges that are targeted by the {@link LineItem}. This attribute is optional.
                      • technologyTargeting - optional; type TechnologyTargeting
                        Provides {@link LineItem} objects the ability to target or exclude technologies.
                        • bandwidthGroupTargeting - optional; type BandwidthGroupTargeting
                          The bandwidth groups being targeted by the {@link LineItem}.
                          Represents bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                          • isTargeted - optional; type boolean
                            Indicates whether bandwidth groups should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • bandwidthGroups - optional, unbounded; type Technology
                            The bandwidth groups that are being targeted or excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • browserTargeting - optional; type BrowserTargeting
                          The browsers being targeted by the {@link LineItem}.
                          Represents browsers that are being targeted or excluded by the {@link LineItem}.
                          • isTargeted - optional; type boolean
                            Indicates whether browsers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • browsers - optional, unbounded; type Technology
                            Browsers that are being targeted or excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • browserLanguageTargeting - optional; type BrowserLanguageTargeting
                          The languages of browsers being targeted by the {@link LineItem}.
                          Represents browser languages that are being targeted or excluded by the {@link LineItem}.
                          • isTargeted - optional; type boolean
                            Indicates whether browsers languages should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • browserLanguages - optional, unbounded; type Technology
                            Browser languages that are being targeted or excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • deviceCapabilityTargeting - optional; type DeviceCapabilityTargeting
                          The device capabilities being targeted by the {@link LineItem}.
                          Represents device capabilities that are being targeted or excluded by the {@link LineItem}.
                          • targetedDeviceCapabilities - optional, unbounded; type Technology
                            Device capabilities that are being targeted by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                          • excludedDeviceCapabilities - optional, unbounded; type Technology
                            Device capabilities that are being excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • deviceCategoryTargeting - optional; type DeviceCategoryTargeting
                          The device categories being targeted by the {@link LineItem}.
                          Represents device categories that are being targeted or excluded by the {@link LineItem}.
                          • targetedDeviceCategories - optional, unbounded; type Technology
                            Device categories that are being targeted by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                          • excludedDeviceCategories - optional, unbounded; type Technology
                            Device categories that are being excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • deviceManufacturerTargeting - optional; type DeviceManufacturerTargeting
                          The device manufacturers being targeted by the {@link LineItem}.
                          Represents device manufacturer that are being targeted or excluded by the {@link LineItem}.
                          • isTargeted - optional; type boolean
                            Indicates whether device manufacturers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • deviceManufacturers - optional, unbounded; type Technology
                            Device manufacturers that are being targeted or excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • mobileCarrierTargeting - optional; type MobileCarrierTargeting
                          The mobile carriers being targeted by the {@link LineItem}.
                          Represents mobile carriers that are being targeted or excluded by the {@link LineItem}.
                          • isTargeted - optional; type boolean
                            Indicates whether mobile carriers should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • mobileCarriers - optional, unbounded; type Technology
                            Mobile carriers that are being targeted or excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • mobileDeviceTargeting - optional; type MobileDeviceTargeting
                          The mobile devices being targeted by the {@link LineItem}.
                          Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                          • targetedMobileDevices - optional, unbounded; type Technology
                            Mobile devices that are being targeted by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                          • excludedMobileDevices - optional, unbounded; type Technology
                            Mobile devices that are being excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • mobileDeviceSubmodelTargeting - optional; type MobileDeviceSubmodelTargeting
                          The mobile device submodels being targeted by the {@link LineItem}.
                          Represents mobile devices that are being targeted or excluded by the {@link LineItem}.
                          • targetedMobileDeviceSubmodels - optional, unbounded; type Technology
                            Mobile device submodels that are being targeted by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                          • excludedMobileDeviceSubmodels - optional, unbounded; type Technology
                            Mobile device submodels that are being excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • operatingSystemTargeting - optional; type OperatingSystemTargeting
                          The operating systems being targeted by the {@link LineItem}.
                          Represents operating systems that are being targeted or excluded by the {@link LineItem}.
                          • isTargeted - optional; type boolean
                            Indicates whether operating systems should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                          • operatingSystems - optional, unbounded; type Technology
                            Operating systems that are being targeted or excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        • operatingSystemVersionTargeting - optional; type OperatingSystemVersionTargeting
                          The operating system versions being targeted by the {@link LineItem}.
                          Represents operating system versions that are being targeted or excluded by the {@link LineItem}.
                          • targetedOperatingSystemVersions - optional, unbounded; type Technology
                            Operating system versions that are being targeted by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                          • excludedOperatingSystemVersions - optional, unbounded; type Technology
                            Operating system versions that are being excluded by the {@link LineItem}.
                            Represents a technology entity that can be targeted.
                            • id - optional; type long
                              The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.
                            • name - optional; type string
                              The name of the technology being targeting. This value is read-only and is assigned by Google.
                        Specifies the browsing technologies that are targeted by the {@link LineItem}. This attribute is optional.
                      • customTargeting - optional; type CustomCriteriaSet - extension of abstract type CustomCriteriaNode
                        A {@link CustomCriteriaSet} comprises of a set of {@link CustomCriteriaNode} objects combined by the {@link CustomCriteriaSet.LogicalOperator#logicalOperator}. The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                        A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                          • logicalOperator - optional; type CustomCriteriaSet.LogicalOperator - type string with restriction - enum { 'AND', 'OR' }
                            The logical operator to be applied to {@link CustomCriteriaSet#children}. This attribute is required. This attribute is required.
                          • children - optional, unbounded; type CustomCriteriaNode
                            The custom criteria. This attribute is required.
                            A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.
                              Specifies the collection of custom criteria that is targeted by the {@link LineItem}.

                              Once the {@link LineItem} is updated or modified with custom targeting, the server may return a normalized, but equivalent representation of the custom targeting expression.

                              {@code customTargeting} will have up to three levels of expressions including itself.

                              The top level {@code CustomCriteriaSet} i.e. the {@code customTargeting} object can only contain a {@link CustomCriteriaSet.LogicalOperator#OR} of all its children.

                              The second level of {@code CustomCriteriaSet} objects can only contain {@link CustomCriteriaSet.LogicalOperator#AND} of all their children. If a {@link CustomCriteria} is placed on this level, the server will wrap it in a {@link CustomCriteriaSet}.

                              The third level can only comprise of {@link CustomCriteria} objects.

                              The resulting custom targeting tree would be of the form:

                            • userDomainTargeting - optional; type UserDomainTargeting
                              Specifies the domains or subdomains that are targeted or excluded by the {@link LineItem}. Users visiting from an IP address associated with those domains will be targeted or excluded. This attribute is optional.
                              Provides line items the ability to target or exclude users visiting their websites from a list of domains or subdomains.
                              • domains - optional, unbounded; type string
                                The domains or subdomains that are being targeted or excluded by the {@link LineItem}. This attribute is required and the maximum length of each domain is 67 characters.
                              • targeted - optional; type boolean
                                Indicates whether domains should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                            • contentTargeting - optional; type ContentTargeting
                              Used to target {@link LineItem}s to specific videos on a publisher's site.
                              • targetedContentIds - optional, unbounded; type long
                                The IDs of content being targeted by the {@code LineItem}.
                              • excludedContentIds - optional, unbounded; type long
                                The IDs of content being excluded by the {@code LineItem}.
                              • targetedVideoContentBundleIds - optional, unbounded; type long
                                A list of video content bundles, represented by {@link ContentBundle} IDs, that are being targeted by the {@code LineItem}.
                              • excludedVideoContentBundleIds - optional, unbounded; type long
                                A list of video content bundles, represented by {@link ContentBundle} IDs, that are being excluded by the {@code LineItem}.
                              Specifies the video categories and individual videos targeted by the {@link LineItem}.
                            • videoPositionTargeting - optional; type VideoPositionTargeting
                              Specifies targeting against video position types.
                              Represents positions within and around a video where ads can be targeted to.

                              Example positions could be {@code pre-roll} (before the video plays), {@code post-roll} (after a video has completed playback) and {@code mid-roll} (during video playback).

                              Empty video position targeting means that all video positions are allowed. If a bumper line item has empty video position targeting it will be updated to target all bumper positions.

                              • targetedPositions - optional, unbounded; type VideoPositionTarget
                                The {@link VideoTargetingPosition} objects being targeted by the video {@link LineItem}.
                                Represents the options for targetable positions within a video.
                                • videoPosition - optional; type VideoPosition
                                  Represents a targetable position within a video. A video ad can be targeted to a position (pre-roll, all mid-rolls, or post-roll), or to a specific mid-roll index.
                                  • positionType - optional; type VideoPosition.Type - type string with restriction - enum { 'UNKNOWN', 'ALL', 'PREROLL', 'MIDROLL', 'POSTROLL' }
                                    The type of video position (pre-roll, mid-roll, or post-roll).
                                  • midrollIndex - optional; type int
                                    The index of the mid-roll to target. Only valid if the {@link positionType} is {@link VideoPositionType#MIDROLL}, otherwise this field will be ignored.
                                  The video position to target. This attribute is required.
                                • videoBumperType - optional; type VideoBumperType - type string with restriction - enum { 'BEFORE', 'AFTER' }
                                  The video bumper type to target. To target a video position or a pod position, this value must be null. To target a bumper position this value must be populated and the line item must have a bumper type. To target a custom ad spot, this value must be null.
                                • videoPositionWithinPod - optional; type VideoPositionWithinPod
                                  Represents a targetable position within a pod within a video stream. A video ad can be targeted to any position in the pod (first, second, third ... last). If there is only 1 ad in a pod, either first or last will target that position.
                                  • index - optional; type int
                                    The specific index of the pod. The index is defined as:
                                    • 1 = first
                                    • 2 = second
                                    • 3 = third
                                    • ....
                                    • 100 = last
                                    100 will always be the last position. For example, for a pod with 5 positions, 100 would target position 5. Multiple targets against the index 100 can exist.
                                    Positions over 100 are not supported.
                                  The video position within a pod to target. To target a video position or a bumper position, this value must be null. To target a position within a pod this value must be populated. To target a custom ad spot, this value must be null.
                                • adSpotId - optional; type long
                                  A custom spot {@link AdSpot} to target. To target a video position, a bumper type or a video position within a pod this value must be null.
                            • mobileApplicationTargeting - optional; type MobileApplicationTargeting
                              Provides the ability to target or exclude users' mobile applications.
                              • mobileApplicationIds - optional, unbounded; type long
                                The {@link MobileApplication#id IDs} that are being targeted or excluded.
                              • isTargeted - optional; type boolean
                                Indicates whether mobile apps should be targeted or excluded. This attribute is optional and defaults to {@code true}.
                              Specifies targeting against mobile applications.
                            • buyerUserListTargeting - optional; type BuyerUserListTargeting
                              The {@code BuyerUserListTargeting} associated with a programmatic {@link LineItem} or {@link ProposalLineItem} object.
                              • hasBuyerUserListTargeting - optional; type boolean
                                Whether the programmatic {@code LineItem} or {@code ProposalLineItem} object has buyer user list targeting.
                              Specifies whether buyer user lists are targeted on a programmatic {@link LineItem} or {@link ProposalLineItem}. This attribute is readonly and is populated by Google.
                            • inventoryUrlTargeting - optional; type InventoryUrlTargeting
                              A collection of targeted inventory urls.
                              • targetedUrls - optional, unbounded; type InventoryUrl
                                The representation of an inventory Url that is used in targeting.
                                • id - optional; type long
                              • excludedUrls - optional, unbounded; type InventoryUrl
                                The representation of an inventory Url that is used in targeting.
                                • id - optional; type long
                              Specifies the URLs that are targeted by the entity. This is currently only supported by {@link YieldGroup}.
                            • verticalTargeting - optional; type VerticalTargeting
                              Specifies the verticals that are targeted by the entity. The IDs listed here correspond to the IDs in the AD_CATEGORY table of type VERTICAL.
                              Vertical targeting information.
                              • targetedVerticalIds - optional, unbounded; type long
                              • excludedVerticalIds - optional, unbounded; type long
                            • contentLabelTargeting - optional; type ContentLabelTargeting
                              Content label targeting information.
                              • excludedContentLabelIds - optional, unbounded; type long
                              Specifies the content labels that are excluded by the entity. The IDs listed here correspond to the IDs in the CONTENT_LABEL table.
                            • requestPlatformTargeting - optional; type RequestPlatformTargeting
                              Provides line items the ability to target the platform that requests and renders the ad.

                              The following rules apply for {@link RequestPlatformTargeting}

                              • {@link RequestPlatformTargeting} must be specified for {@link ProposalLineItem}s.
                              • {@link RequestPlatformTargeting} must be specified for video line items. Empty values for {@link RequestPlatformTargeting#targetedRequestPlatforms} mean that all request platforms will be targeted.
                              • {@link RequestPlatformTargeting} is read-only and assigned by Google for non-video line items.
                              • {@link RequestPlatformTargeting} is read-only and assigned by Google for line items generated from proposal line items.
                              • targetedRequestPlatforms - optional, unbounded; type RequestPlatform - type string with restriction - enum { 'UNKNOWN', 'BROWSER', 'MOBILE_APP', 'VIDEO_PLAYER' }
                              Specifies the request platforms that are targeted by the {@link LineItem}. This attribute is required for video line items and for {@link ProposalLineItem}.

                              This value is modifiable for video line items, but read-only for non-video line items.

                              This value is read-only for video line items generated from proposal line items.

                            • inventorySizeTargeting - optional; type InventorySizeTargeting
                              Represents a collection of targeted and excluded inventory sizes. This is currently only available on {@link YieldGroup} and {@link TrafficDataRequest}.
                              • isTargeted - optional; type boolean
                                Whether the inventory sizes should be targeted or excluded.
                              • targetedSizes - optional, unbounded; type TargetedSize
                                A list of {@link TargetedSizeDto}s.
                                A size that is targeted on a request.
                                • size - optional; type Size
                                  Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                                  For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                                  • width - optional; type int
                                    The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                                  • height - optional; type int
                                    The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                                  • isAspectRatio - optional; type boolean
                                    Whether this size represents an aspect ratio.
                              Specifies the sizes that are targeted by the entity. This is currently only supported on {@link YieldGroup} and {@link TrafficDataRequest}.
                          • status - optional; type NativeStyleStatus - type string with restriction - enum { 'ACTIVE', 'ARCHIVED', 'INACTIVE', 'UNKNOWN' }
                            The status of the native style. This attribute is read-only.
                          • size - optional; type Size
                            The size of the native style. This attribute is required.
                            Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}.

                            For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.

                            • width - optional; type int
                              The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                            • height - optional; type int
                              The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.
                            • isAspectRatio - optional; type boolean
                              Whether this size represents an aspect ratio.
                    Fault:
                    ApiException (wsdlsoap:fault, use = literal)Source code
                    ApiException type ApiExceptionFault
                    Exception class for holding a list of service errors.
                    Base class for exceptions.
                    • message - optional; type string
                      Error message.
                    • errors - optional, unbounded; type ApiError
                      The API error base class that provides details about an error that occurred while processing a service request.

                      The OGNL field path is provided for parsers to identify the request data element that may have caused the error.

                      • fieldPath - optional; type string
                        The OGNL field path to identify cause of error.
                      • fieldPathElements - optional, unbounded; type FieldPathElement
                        A parsed copy of the field path. For example, the field path "operations[1].operand" corresponds to this list: {FieldPathElement(field = "operations", index = 1), FieldPathElement(field = "operand", index = null)}.
                        A segment of a field path. Each dot in a field path defines a new segment.
                        • field - optional; type string
                          The name of a field in lower camelcase. (e.g. "biddingStrategy")
                        • index - optional; type int
                          For list fields, this is a 0-indexed position in the list. Null for non-list fields.
                      • trigger - optional; type string
                        The data that caused the error.
                      • errorString - optional; type string
                        A simple string representation of the error and reason.
                      List of errors.
                    A fault element of type ApiException.

                WSDL source code

                <?xml version="1.0"?>
                <!-- Generated file, do not edit -->
                <!-- Copyright 2025 Google Inc. All Rights Reserved -->
                <wsdl:definitions targetNamespace="https://www.google.com/apis/ads/publisher/v202502"
                xmlns:tns="https://www.google.com/apis/ads/publisher/v202502"
                xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
                >
                <wsdl:types>
                <schema elementFormDefault="qualified" jaxb:version="1.0" targetNamespace="https://www.google.com/apis/ads/publisher/v202502"
                xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
                >
                <complexType abstract="true" name="ObjectValue">
                <annotation>
                <documentation>Contains an object value. <p> <b>This object is experimental! <code>ObjectValue</code> is an experimental, innovative, and rapidly changing new feature for Ad Manager. Unfortunately, being on the bleeding edge means that we may make backwards-incompatible changes to <code>ObjectValue</code>. We will inform the community when this feature is no longer experimental.</b></documentation>
                </annotation>
                </complexType>
                <complexType name="ActivateNativeStyles">
                <annotation>
                <documentation>Action to activate native styles.</documentation>
                </annotation>
                </complexType>
                <complexType name="AdUnitTargeting">
                <annotation>
                <documentation>Represents targeted or excluded ad units.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="adUnitId" type="xsd:string">
                <annotation>
                <documentation>Included or excluded ad unit id.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="includeDescendants" type="xsd:boolean">
                <annotation>
                <documentation>Whether or not all descendants are included (or excluded) as part of including (or excluding) this ad unit. By default, the value is {@code true} which means targeting this ad unit will target all of its descendants.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType abstract="true" name="ApiError">
                <annotation>
                <documentation>The API error base class that provides details about an error that occurred while processing a service request. <p>The OGNL field path is provided for parsers to identify the request data element that may have caused the error.</p></documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="fieldPath" type="xsd:string">
                <annotation>
                <documentation>The OGNL field path to identify cause of error.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="fieldPathElements" type="tns:FieldPathElement">
                <annotation>
                <documentation>A parsed copy of the field path. For example, the field path "operations[1].operand" corresponds to this list: {FieldPathElement(field = "operations", index = 1), FieldPathElement(field = "operand", index = null)}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="trigger" type="xsd:string">
                <annotation>
                <documentation>The data that caused the error.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="errorString" type="xsd:string">
                <annotation>
                <documentation>A simple string representation of the error and reason.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="ApiException">
                <annotation>
                <documentation>Exception class for holding a list of service errors.</documentation>
                </annotation>
                </complexType>
                <complexType name="TechnologyTargeting">
                <annotation>
                <documentation>Provides {@link LineItem} objects the ability to target or exclude technologies.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="bandwidthGroupTargeting" type="tns:BandwidthGroupTargeting">
                <annotation>
                <documentation>The bandwidth groups being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="browserTargeting" type="tns:BrowserTargeting">
                <annotation>
                <documentation>The browsers being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="browserLanguageTargeting" type="tns:BrowserLanguageTargeting">
                <annotation>
                <documentation>The languages of browsers being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="deviceCapabilityTargeting" type="tns:DeviceCapabilityTargeting">
                <annotation>
                <documentation>The device capabilities being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="deviceCategoryTargeting" type="tns:DeviceCategoryTargeting">
                <annotation>
                <documentation>The device categories being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="deviceManufacturerTargeting" type="tns:DeviceManufacturerTargeting">
                <annotation>
                <documentation>The device manufacturers being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="mobileCarrierTargeting" type="tns:MobileCarrierTargeting">
                <annotation>
                <documentation>The mobile carriers being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="mobileDeviceTargeting" type="tns:MobileDeviceTargeting">
                <annotation>
                <documentation>The mobile devices being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="mobileDeviceSubmodelTargeting" type="tns:MobileDeviceSubmodelTargeting">
                <annotation>
                <documentation>The mobile device submodels being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="operatingSystemTargeting" type="tns:OperatingSystemTargeting">
                <annotation>
                <documentation>The operating systems being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="operatingSystemVersionTargeting" type="tns:OperatingSystemVersionTargeting">
                <annotation>
                <documentation>The operating system versions being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="ApplicationException">
                <annotation>
                <documentation>Base class for exceptions.</documentation>
                </annotation>
                </complexType>
                <complexType name="ArchiveNativeStyles">
                <annotation>
                <documentation>Action to archive native styles.</documentation>
                </annotation>
                </complexType>
                <complexType name="AuthenticationError">
                <annotation>
                <documentation>An error for an exception that occurred when authenticating.</documentation>
                </annotation>
                </complexType>
                <complexType name="BandwidthGroup">
                <annotation>
                <documentation>Represents a group of bandwidths that are logically organized by some well known generic names such as 'Cable' or 'DSL'.</documentation>
                </annotation>
                </complexType>
                <complexType name="BandwidthGroupTargeting">
                <annotation>
                <documentation>Represents bandwidth groups that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether bandwidth groups should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="bandwidthGroups" type="tns:Technology">
                <annotation>
                <documentation>The bandwidth groups that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="BooleanValue">
                <annotation>
                <documentation>Contains a boolean value.</documentation>
                </annotation>
                </complexType>
                <complexType name="Browser">
                <annotation>
                <documentation>Represents an internet browser.</documentation>
                </annotation>
                </complexType>
                <complexType name="BrowserLanguage">
                <annotation>
                <documentation>Represents a Browser's language.</documentation>
                </annotation>
                </complexType>
                <complexType name="BrowserLanguageTargeting">
                <annotation>
                <documentation>Represents browser languages that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether browsers languages should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="browserLanguages" type="tns:Technology">
                <annotation>
                <documentation>Browser languages that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="BrowserTargeting">
                <annotation>
                <documentation>Represents browsers that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether browsers should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="browsers" type="tns:Technology">
                <annotation>
                <documentation>Browsers that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="BuyerUserListTargeting">
                <annotation>
                <documentation>The {@code BuyerUserListTargeting} associated with a programmatic {@link LineItem} or {@link ProposalLineItem} object.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="hasBuyerUserListTargeting" type="xsd:boolean">
                <annotation>
                <documentation>Whether the programmatic {@code LineItem} or {@code ProposalLineItem} object has buyer user list targeting.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="CommonError">
                <annotation>
                <documentation>A place for common errors that can be used across services.</documentation>
                </annotation>
                </complexType>
                <complexType name="ContentTargeting">
                <annotation>
                <documentation>Used to target {@link LineItem}s to specific videos on a publisher's site.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedContentIds" type="xsd:long">
                <annotation>
                <documentation>The IDs of content being targeted by the {@code LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedContentIds" type="xsd:long">
                <annotation>
                <documentation>The IDs of content being excluded by the {@code LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedVideoContentBundleIds" type="xsd:long">
                <annotation>
                <documentation>A list of video content bundles, represented by {@link ContentBundle} IDs, that are being targeted by the {@code LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedVideoContentBundleIds" type="xsd:long">
                <annotation>
                <documentation>A list of video content bundles, represented by {@link ContentBundle} IDs, that are being excluded by the {@code LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="CreativeTemplateError">
                <annotation>
                <documentation>A catch-all error that lists all generic errors associated with CreativeTemplate.</documentation>
                </annotation>
                <complexContent></complexContent>
                </complexType>
                <complexType name="CustomCriteria">
                <annotation>
                <documentation>A {@link CustomCriteria} object is used to perform custom criteria targeting on custom targeting keys of type {@link CustomTargetingKey.Type#PREDEFINED} or {@link CustomTargetingKey.Type#FREEFORM}.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:CustomCriteriaLeaf">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="keyId" type="xsd:long">
                <annotation>
                <documentation>The {@link CustomTargetingKey#id} of the {@link CustomTargetingKey} object that was created using {@link CustomTargetingService}. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="valueIds" type="xsd:long">
                <annotation>
                <documentation>The ids of {@link CustomTargetingValue} objects to target the custom targeting key with id {@link CustomCriteria#keyId}. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="operator" type="tns:CustomCriteria.ComparisonOperator">
                <annotation>
                <documentation>The comparison operator. This attribute is required.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="CustomCriteriaSet">
                <annotation>
                <documentation>A {@link CustomCriteriaSet} comprises of a set of {@link CustomCriteriaNode} objects combined by the {@link CustomCriteriaSet.LogicalOperator#logicalOperator}. The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:CustomCriteriaNode">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="logicalOperator" type="tns:CustomCriteriaSet.LogicalOperator">
                <annotation>
                <documentation>The logical operator to be applied to {@link CustomCriteriaSet#children}. This attribute is required. <span class="constraint Required">This attribute is required.</span></documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="children" type="tns:CustomCriteriaNode">
                <annotation>
                <documentation>The custom criteria. This attribute is required.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="CmsMetadataCriteria">
                <annotation>
                <documentation>A {@code CmsMetadataCriteria} object is used to target {@code CmsMetadataValue} objects.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:CustomCriteriaLeaf">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="operator" type="tns:CmsMetadataCriteria.ComparisonOperator">
                <annotation>
                <documentation>The comparison operator. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="cmsMetadataValueIds" type="xsd:long">
                <annotation>
                <documentation>The ids of {@link CmsMetadataValue} objects used to target CMS metadata. This attribute is required.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="CustomTargetingError">
                <annotation>
                <documentation>Lists all errors related to {@link CustomTargetingKey} and {@link CustomTargetingValue} objects.</documentation>
                </annotation>
                </complexType>
                <complexType abstract="true" name="CustomCriteriaLeaf">
                <annotation>
                <documentation>A {@link CustomCriteriaLeaf} object represents a generic leaf of {@link CustomCriteria} tree structure.</documentation>
                </annotation>
                </complexType>
                <complexType abstract="true" name="CustomCriteriaNode">
                <annotation>
                <documentation>A {@link CustomCriteriaNode} is a node in the custom targeting tree. A custom criteria node can either be a {@link CustomCriteriaSet} (a non-leaf node) or a {@link CustomCriteria} (a leaf node). The custom criteria targeting tree is subject to the rules defined on {@link Targeting#customTargeting}.</documentation>
                </annotation>
                </complexType>
                <complexType name="AudienceSegmentCriteria">
                <annotation>
                <documentation>An {@link AudienceSegmentCriteria} object is used to target {@link AudienceSegment} objects.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:CustomCriteriaLeaf">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="operator" type="tns:AudienceSegmentCriteria.ComparisonOperator">
                <annotation>
                <documentation>The comparison operator. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="audienceSegmentIds" type="xsd:long">
                <annotation>
                <documentation>The ids of {@link AudienceSegment} objects used to target audience segments. This attribute is required.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="Date">
                <annotation>
                <documentation>Represents a date.</documentation>
                </annotation>
                </complexType>
                <complexType name="DateTimeRange">
                <annotation>
                <documentation>Represents a range of dates (combined with time of day) that has an upper and/or lower bound.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="startDateTime" type="tns:DateTime">
                <annotation>
                <documentation>The start date time of this range. This field is optional and if it is not set then there is no lower bound on the date time range. If this field is not set then {@code endDateTime} must be specified.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="endDateTime" type="tns:DateTime">
                <annotation>
                <documentation>The end date time of this range. This field is optional and if it is not set then there is no upper bound on the date time range. If this field is not set then {@code startDateTime} must be specified.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="DateTimeValue">
                <annotation>
                <documentation>Contains a date-time value.</documentation>
                </annotation>
                <complexContent></complexContent>
                </complexType>
                <complexType name="DateValue">
                <annotation>
                <documentation>Contains a date value.</documentation>
                </annotation>
                <complexContent></complexContent>
                </complexType>
                <complexType name="DayPart">
                <annotation>
                <documentation>{@code DayPart} represents a time-period within a day of the week which is targeted by a {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="dayOfWeek" type="tns:DayOfWeek">
                <annotation>
                <documentation>Day of the week the target applies to. This field is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="startTime" type="tns:TimeOfDay">
                <annotation>
                <documentation>Represents the start time of the targeted period (inclusive).</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="endTime" type="tns:TimeOfDay">
                <annotation>
                <documentation>Represents the end time of the targeted period (exclusive).</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="DayPartTargeting">
                <annotation>
                <documentation>Modify the delivery times of line items for particular days of the week. By default, line items are served at all days and times.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="dayParts" type="tns:DayPart">
                <annotation>
                <documentation>Specifies days of the week and times at which a {@code LineItem} will be delivered. <p>If targeting all days and times, this value will be ignored.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="timeZone" type="tns:DeliveryTimeZone">
                <annotation>
                <documentation>Specifies the time zone to be used for delivering {@link LineItem} objects. This attribute is optional and defaults to {@link DeliveryTimeZone#BROWSER}. <p>Setting this has no effect if targeting all days and times.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="DeactivateNativeStyles">
                <annotation>
                <documentation>Action to deactivate native styles.</documentation>
                </annotation>
                </complexType>
                <complexType name="DeviceCapability">
                <annotation>
                <documentation>Represents a capability of a physical device.</documentation>
                </annotation>
                </complexType>
                <complexType name="DeviceCapabilityTargeting">
                <annotation>
                <documentation>Represents device capabilities that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedDeviceCapabilities" type="tns:Technology">
                <annotation>
                <documentation>Device capabilities that are being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedDeviceCapabilities" type="tns:Technology">
                <annotation>
                <documentation>Device capabilities that are being excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="DeviceCategory">
                <annotation>
                <documentation>Represents the category of a device.</documentation>
                </annotation>
                </complexType>
                <complexType name="DeviceCategoryTargeting">
                <annotation>
                <documentation>Represents device categories that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedDeviceCategories" type="tns:Technology">
                <annotation>
                <documentation>Device categories that are being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedDeviceCategories" type="tns:Technology">
                <annotation>
                <documentation>Device categories that are being excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="DeviceManufacturer">
                <annotation>
                <documentation>Represents a mobile device's manufacturer.</documentation>
                </annotation>
                </complexType>
                <complexType name="DeviceManufacturerTargeting">
                <annotation>
                <documentation>Represents device manufacturer that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether device manufacturers should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="deviceManufacturers" type="tns:Technology">
                <annotation>
                <documentation>Device manufacturers that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="FeatureError">
                <annotation>
                <documentation>Errors related to feature management. If you attempt using a feature that is not available to the current network you'll receive a FeatureError with the missing feature as the trigger.</documentation>
                </annotation>
                </complexType>
                <complexType name="FieldPathElement">
                <annotation>
                <documentation>A segment of a field path. Each dot in a field path defines a new segment.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="field" type="xsd:string">
                <annotation>
                <documentation>The name of a field in lower camelcase. (e.g. "biddingStrategy")</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="index" type="xsd:int">
                <annotation>
                <documentation>For list fields, this is a 0-indexed position in the list. Null for non-list fields.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="GeoTargeting">
                <annotation>
                <documentation>Provides line items the ability to target geographical locations. By default, line items target all countries and their subdivisions. With geographical targeting, you can target line items to specific countries, regions, metro areas, and cities. You can also exclude the same. <p>The following rules apply for geographical targeting: <ul> <li>You cannot target and exclude the same location. <li>You cannot target a child whose parent has been excluded. For example, if the state of Illinois has been excluded, then you cannot target Chicago. <li>You must not target a location if you are also targeting its parent. For example, if you are targeting New York City, you must not have the state of New York as one of the targeted locations. <li>You cannot explicitly define inclusions or exclusions that are already implicit. For example, if you explicitly include California, you implicitly exclude all other states. You therefore cannot explicitly exclude Florida, because it is already implicitly excluded. Conversely if you explicitly exclude Florida, you cannot explicitly include California. </ul></documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedLocations" type="tns:Location">
                <annotation>
                <documentation>The geographical locations being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedLocations" type="tns:Location">
                <annotation>
                <documentation>The geographical locations being excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="ImageError">
                <annotation>
                <documentation>Lists all errors associated with images.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:ImageError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="InternalApiError">
                <annotation>
                <documentation>Indicates that a server-side error has occured. {@code InternalApiError}s are generally not the result of an invalid request or message sent by the client.</documentation>
                </annotation>
                <complexContent></complexContent>
                </complexType>
                <complexType name="InventorySizeTargeting">
                <annotation>
                <documentation>Represents a collection of targeted and excluded inventory sizes. This is currently only available on {@link YieldGroup} and {@link TrafficDataRequest}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Whether the inventory sizes should be targeted or excluded.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="InventoryTargeting">
                <annotation>
                <documentation>A collection of targeted and excluded ad units and placements.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedAdUnits" type="tns:AdUnitTargeting">
                <annotation>
                <documentation>A list of targeted {@link AdUnitTargeting}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedAdUnits" type="tns:AdUnitTargeting">
                <annotation>
                <documentation>A list of excluded {@link AdUnitTargeting}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedPlacementIds" type="xsd:long">
                <annotation>
                <documentation>A list of targeted {@link Placement} ids.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="InventoryTargetingError">
                <annotation>
                <documentation>Lists all inventory errors caused by associating a line item with a targeting expression.</documentation>
                </annotation>
                <complexContent></complexContent>
                </complexType>
                <complexType name="InventoryUrl">
                <annotation>
                <documentation>The representation of an inventory Url that is used in targeting.</documentation>
                </annotation>
                </complexType>
                <complexType name="Location">
                <annotation>
                <documentation>A {@link Location} represents a geographical entity that can be targeted. If a location type is not available because of the API version you are using, the location will be represented as just the base class, otherwise it will be sub-classed correctly.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="id" type="xsd:long">
                <annotation>
                <documentation>Uniquely identifies each {@code Location}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="type" type="xsd:string">
                <annotation>
                <documentation>The location type for this geographical entity (ex. "COUNTRY", "CITY", "STATE", "COUNTY", etc.)</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="canonicalParentId" type="xsd:int">
                <annotation>
                <documentation>The nearest location parent's ID for this geographical entity.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="displayName" type="xsd:string">
                <annotation>
                <documentation>The localized name of the geographical entity.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="MobileApplicationTargeting">
                <annotation>
                <documentation>Provides the ability to target or exclude users' mobile applications.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="mobileApplicationIds" type="xsd:long">
                <annotation>
                <documentation>The {@link MobileApplication#id IDs} that are being targeted or excluded.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether mobile apps should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="MobileCarrier">
                <annotation>
                <documentation>Represents a mobile carrier. Carrier targeting is only available to Ad Manager mobile publishers. For a list of current mobile carriers, you can use {@link PublisherQueryLanguageService#mobile_carrier}.</documentation>
                </annotation>
                </complexType>
                <complexType name="MobileCarrierTargeting">
                <annotation>
                <documentation>Represents mobile carriers that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether mobile carriers should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="mobileCarriers" type="tns:Technology">
                <annotation>
                <documentation>Mobile carriers that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="MobileDevice">
                <annotation>
                <documentation>Represents a Mobile Device.</documentation>
                </annotation>
                </complexType>
                <complexType name="MobileDeviceSubmodel">
                <annotation>
                <documentation>Represents a mobile device submodel.</documentation>
                </annotation>
                </complexType>
                <complexType name="MobileDeviceSubmodelTargeting">
                <annotation>
                <documentation>Represents mobile devices that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedMobileDeviceSubmodels" type="tns:Technology">
                <annotation>
                <documentation>Mobile device submodels that are being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedMobileDeviceSubmodels" type="tns:Technology">
                <annotation>
                <documentation>Mobile device submodels that are being excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="MobileDeviceTargeting">
                <annotation>
                <documentation>Represents mobile devices that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedMobileDevices" type="tns:Technology">
                <annotation>
                <documentation>Mobile devices that are being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedMobileDevices" type="tns:Technology">
                <annotation>
                <documentation>Mobile devices that are being excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType abstract="true" name="NativeStyleAction">
                <annotation>
                <documentation>Represents an action that can be performed on native styles.</documentation>
                </annotation>
                </complexType>
                <complexType name="NativeStyle">
                <annotation>
                <documentation>Used to define the look and feel of native ads, for both web and apps. Native styles determine how native creatives look for a segment of inventory.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="id" type="xsd:long">
                <annotation>
                <documentation>Uniquely identifies the {@code NativeStyle}. This attribute is read-only and is assigned by Google when a native style is created.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="name" type="xsd:string">
                <annotation>
                <documentation>The name of the native style. This attribute is required and has a maximum length of 255 characters.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="htmlSnippet" type="xsd:string">
                <annotation>
                <documentation>The HTML snippet of the native style with placeholders for the associated variables. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="cssSnippet" type="xsd:string">
                <annotation>
                <documentation>The CSS snippet of the native style, with placeholders for the associated variables. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="creativeTemplateId" type="xsd:long">
                <annotation>
                <documentation>The creative template ID this native style associated with. This attribute is required on creation and is read-only afterwards.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="isFluid" type="xsd:boolean">
                <annotation>
                <documentation>Whether this is a fluid size native style. If {@code true}, this must be used with 1x1 size.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="targeting" type="tns:Targeting">
                <annotation>
                <documentation>The targeting criteria for this native style. Only ad unit and key-value targeting are supported at this time.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="status" type="tns:NativeStyleStatus">
                <annotation>
                <documentation>The status of the native style. This attribute is read-only.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="size" type="tns:Size">
                <annotation>
                <documentation>The size of the native style. This attribute is required.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="NativeStyleError">
                <annotation>
                <documentation>Errors for native styles.</documentation>
                </annotation>
                <complexContent></complexContent>
                </complexType>
                <complexType name="NativeStylePage">
                <annotation>
                <documentation>Captures a page of {@link NativeStyle} objects.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="totalResultSetSize" type="xsd:int">
                <annotation>
                <documentation>The size of the total result set to which this page belongs.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="startIndex" type="xsd:int">
                <annotation>
                <documentation>The absolute index in the total result set on which this page begins.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="results" type="tns:NativeStyle">
                <annotation>
                <documentation>The collection of native styles contained within this page.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="NotNullError">
                <annotation>
                <documentation>Caused by supplying a null value for an attribute that cannot be null.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:NotNullError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="NullError">
                <annotation>
                <documentation>Caused by supplying a non-null value for an attribute that should be null.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:NullError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="NumberValue">
                <annotation>
                <documentation>Contains a numeric value.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:Value">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="value" type="xsd:string">
                <annotation>
                <documentation>The numeric value represented as a string.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="OperatingSystem">
                <annotation>
                <documentation>Represents an Operating System, such as Linux, Mac OS or Windows.</documentation>
                </annotation>
                </complexType>
                <complexType name="OperatingSystemTargeting">
                <annotation>
                <documentation>Represents operating systems that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="isTargeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether operating systems should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="operatingSystems" type="tns:Technology">
                <annotation>
                <documentation>Operating systems that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="OperatingSystemVersion">
                <annotation>
                <documentation>Represents a specific version of an operating system.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:Technology">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="majorVersion" type="xsd:int">
                <annotation>
                <documentation>The operating system major version.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="minorVersion" type="xsd:int">
                <annotation>
                <documentation>The operating system minor version.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="microVersion" type="xsd:int">
                <annotation>
                <documentation>The operating system micro version.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="OperatingSystemVersionTargeting">
                <annotation>
                <documentation>Represents operating system versions that are being targeted or excluded by the {@link LineItem}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedOperatingSystemVersions" type="tns:Technology">
                <annotation>
                <documentation>Operating system versions that are being targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="excludedOperatingSystemVersions" type="tns:Technology">
                <annotation>
                <documentation>Operating system versions that are being excluded by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="ParseError">
                <annotation>
                <documentation>Lists errors related to parsing.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:ParseError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="PublisherQueryLanguageContextError">
                <annotation>
                <documentation>An error that occurs while executing a PQL query contained in a {@link Statement} object.</documentation>
                </annotation>
                </complexType>
                <complexType name="PublisherQueryLanguageSyntaxError">
                <annotation>
                <documentation>An error that occurs while parsing a PQL query contained in a {@link Statement} object.</documentation>
                </annotation>
                </complexType>
                <complexType name="QuotaError">
                <annotation>
                <documentation>Describes a client-side error on which a user is attempting to perform an action to which they have no quota remaining.</documentation>
                </annotation>
                </complexType>
                <complexType name="RequestPlatformTargeting">
                <annotation>
                <documentation>Provides line items the ability to target the platform that requests and renders the ad. <p>The following rules apply for {@link RequestPlatformTargeting} <ul> <li>{@link RequestPlatformTargeting} must be specified for {@link ProposalLineItem}s. <li>{@link RequestPlatformTargeting} must be specified for video line items. Empty values for {@link RequestPlatformTargeting#targetedRequestPlatforms} mean that all request platforms will be targeted. <li>{@link RequestPlatformTargeting} is read-only and assigned by Google for non-video line items. <li>{@link RequestPlatformTargeting} is read-only and assigned by Google for line items generated from proposal line items. </ul></documentation>
                </annotation>
                </complexType>
                <complexType name="RequiredCollectionError">
                <annotation>
                <documentation>A list of all errors to be used for validating sizes of collections.</documentation>
                </annotation>
                </complexType>
                <complexType name="RequiredError">
                <annotation>
                <documentation>Errors due to missing required field.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:RequiredError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="RequiredSizeError">
                <annotation>
                <documentation>A list of all errors to be used for validating {@link Size}.</documentation>
                </annotation>
                </complexType>
                <complexType name="SetValue">
                <annotation>
                <documentation>Contains a set of {@link Value Values}. May not contain duplicates.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:Value">
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="values" type="tns:Value">
                <annotation>
                <documentation>The values. They must all be the same type of {@code Value} and not contain duplicates.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="Size">
                <annotation>
                <documentation>Represents the dimensions of an {@link AdUnit}, {@link LineItem} or {@link Creative}. <p>For interstitial size (out-of-page), native, ignored and fluid size, {@link Size} must be 1x1.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="width" type="xsd:int">
                <annotation>
                <documentation>The width of the {@link AdUnit}, {@link LineItem} or {@link Creative}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="height" type="xsd:int">
                <annotation>
                <documentation>The height of the {@link AdUnit}, {@link LineItem} or {@link Creative}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="isAspectRatio" type="xsd:boolean">
                <annotation>
                <documentation>Whether this size represents an aspect ratio.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="SoapRequestHeader">
                <annotation>
                <documentation>Represents the SOAP request header used by API requests.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="networkCode" type="xsd:string">
                <annotation>
                <documentation>The network code to use in the context of a request.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="applicationName" type="xsd:string">
                <annotation>
                <documentation>The name of client library application.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="Statement">
                <annotation>
                <documentation>Captures the {@code WHERE}, {@code ORDER BY} and {@code LIMIT} clauses of a PQL query. Statements are typically used to retrieve objects of a predefined domain type, which makes SELECT clause unnecessary. <p> An example query text might be {@code "WHERE status = 'ACTIVE' ORDER BY id LIMIT 30"}. </p> <p> Statements support bind variables. These are substitutes for literals and can be thought of as input parameters to a PQL query. </p> <p> An example of such a query might be {@code "WHERE id = :idValue"}. </p> <p> Statements also support use of the LIKE keyword. This provides wildcard string matching. </p> <p> An example of such a query might be {@code "WHERE name LIKE '%searchString%'"}. </p> The value for the variable idValue must then be set with an object of type {@link Value}, e.g., {@link NumberValue}, {@link TextValue} or {@link BooleanValue}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="query" type="xsd:string">
                <annotation>
                <documentation>Holds the query in PQL syntax. The syntax is:<br> <code>[WHERE <condition> {[AND | OR] <condition> ...}]</code><br> <code>[ORDER BY <property> [ASC | DESC]]</code><br> <code>[LIMIT {[<offset>,] <count>} | {<count> OFFSET <offset>}]</code><br> <p> <code><condition></code><br> &nbsp;&nbsp;&nbsp;&nbsp; <code>:= <property> {< | <= | > | >= | = | != } <value></code><br> <code><condition></code><br> &nbsp;&nbsp;&nbsp;&nbsp; <code>:= <property> {< | <= | > | >= | = | != } <bind variable></code><br> <code><condition> := <property> IN <list></code><br> <code><condition> := <property> IS NULL</code><br> <code><condition> := <property> LIKE <wildcard%match></code><br> <code><bind variable> := :<name></code><br> </p></documentation>
                </annotation>
                </element>
                <element maxOccurs="unbounded" minOccurs="0" name="values" type="tns:String_ValueMapEntry">
                <annotation>
                <documentation>Holds keys and values for bind variables and their values. The key is the name of the bind variable. The value is the literal value of the variable. <p> In the example {@code "WHERE status = :bindStatus ORDER BY id LIMIT 30"}, the bind variable, represented by {@code :bindStatus} is named {@code bindStatus}, which would also be the parameter map key. The bind variable's value would be represented by a parameter map value of type {@link TextValue}. The final result, for example, would be an entry of {@code "bindStatus" => StringParam("ACTIVE")}. </p></documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="StatementError">
                <annotation>
                <documentation>An error that occurs while parsing {@link Statement} objects.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:StatementError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="StringFormatError">
                <annotation>
                <documentation>A list of error code for reporting invalid content of input strings.</documentation>
                </annotation>
                </complexType>
                <complexType name="StringLengthError">
                <annotation>
                <documentation>Errors for Strings which do not meet given length constraints.</documentation>
                </annotation>
                </complexType>
                <complexType name="TargetedSize">
                <annotation>
                <documentation>A size that is targeted on a request.</documentation>
                </annotation>
                </complexType>
                <complexType name="Targeting">
                <annotation>
                <documentation>Contains targeting criteria for {@link LineItem} objects. See {@link LineItem#targeting}.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="geoTargeting" type="tns:GeoTargeting">
                <annotation>
                <documentation>Specifies what geographical locations are targeted by the {@link LineItem}. This attribute is optional.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="inventoryTargeting" type="tns:InventoryTargeting">
                <annotation>
                <documentation>Specifies what inventory is targeted by the {@link LineItem}. This attribute is required. The line item must target at least one ad unit or placement.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="dayPartTargeting" type="tns:DayPartTargeting">
                <annotation>
                <documentation>Specifies the days of the week and times that are targeted by the {@link LineItem}. This attribute is optional.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="dateTimeRangeTargeting" type="tns:DateTimeRangeTargeting">
                <annotation>
                <documentation>Specifies the dates and time ranges that are targeted by the {@link LineItem}. This attribute is optional.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="technologyTargeting" type="tns:TechnologyTargeting">
                <annotation>
                <documentation>Specifies the browsing technologies that are targeted by the {@link LineItem}. This attribute is optional.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="customTargeting" type="tns:CustomCriteriaSet">
                <annotation>
                <documentation>Specifies the collection of custom criteria that is targeted by the {@link LineItem}. <p>Once the {@link LineItem} is updated or modified with custom targeting, the server may return a normalized, but equivalent representation of the custom targeting expression. <p>{@code customTargeting} will have up to three levels of expressions including itself. <p>The top level {@code CustomCriteriaSet} i.e. the {@code customTargeting} object can only contain a {@link CustomCriteriaSet.LogicalOperator#OR} of all its children. <p>The second level of {@code CustomCriteriaSet} objects can only contain {@link CustomCriteriaSet.LogicalOperator#AND} of all their children. If a {@link CustomCriteria} is placed on this level, the server will wrap it in a {@link CustomCriteriaSet}. <p>The third level can only comprise of {@link CustomCriteria} objects. <p>The resulting custom targeting tree would be of the form: <br> <img src="https://chart.apis.google.com/chart?cht=gv&chl=digraph{customTargeting_LogicalOperator_OR-%3ECustomCriteriaSet_LogicalOperator_AND_1-%3ECustomCriteria_1;CustomCriteriaSet_LogicalOperator_AND_1-%3Eellipsis1;customTargeting_LogicalOperator_OR-%3Eellipsis2;ellipsis1[label=%22...%22,shape=none,fontsize=32];ellipsis2[label=%22...%22,shape=none,fontsize=32]}&chs=450x200"/></documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="userDomainTargeting" type="tns:UserDomainTargeting">
                <annotation>
                <documentation>Specifies the domains or subdomains that are targeted or excluded by the {@link LineItem}. Users visiting from an IP address associated with those domains will be targeted or excluded. This attribute is optional.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="contentTargeting" type="tns:ContentTargeting">
                <annotation>
                <documentation>Specifies the video categories and individual videos targeted by the {@link LineItem}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="videoPositionTargeting" type="tns:VideoPositionTargeting">
                <annotation>
                <documentation>Specifies targeting against video position types.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="buyerUserListTargeting" type="tns:BuyerUserListTargeting">
                <annotation>
                <documentation>Specifies whether buyer user lists are targeted on a programmatic {@link LineItem} or {@link ProposalLineItem}. This attribute is readonly and is populated by Google.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="inventoryUrlTargeting" type="tns:InventoryUrlTargeting">
                <annotation>
                <documentation>Specifies the URLs that are targeted by the entity. This is currently only supported by {@link YieldGroup}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="verticalTargeting" type="tns:VerticalTargeting">
                <annotation>
                <documentation>Specifies the verticals that are targeted by the entity. The IDs listed here correspond to the IDs in the AD_CATEGORY table of type VERTICAL.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="contentLabelTargeting" type="tns:ContentLabelTargeting">
                <annotation>
                <documentation>Specifies the content labels that are excluded by the entity. The IDs listed here correspond to the IDs in the CONTENT_LABEL table.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="requestPlatformTargeting" type="tns:RequestPlatformTargeting">
                <annotation>
                <documentation>Specifies the request platforms that are targeted by the {@link LineItem}. This attribute is required for video line items and for {@link ProposalLineItem}. <p>This value is modifiable for video line items, but read-only for non-video line items. <p>This value is read-only for video line items generated from proposal line items.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="inventorySizeTargeting" type="tns:InventorySizeTargeting">
                <annotation>
                <documentation>Specifies the sizes that are targeted by the entity. This is currently only supported on {@link YieldGroup} and {@link TrafficDataRequest}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="TeamError">
                <annotation>
                <documentation>Errors related to a Team.</documentation>
                </annotation>
                <complexContent>
                <extension base="tns:ApiError">
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="reason" type="tns:TeamError.Reason">
                <annotation>
                <documentation>The error reason represented by an enum.</documentation>
                </annotation>
                </element>
                </sequence>
                </extension>
                </complexContent>
                </complexType>
                <complexType name="Technology">
                <annotation>
                <documentation>Represents a technology entity that can be targeted.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="id" type="xsd:long">
                <annotation>
                <documentation>The unique ID of the {@code Technology}. This value is required for all forms of {@code TechnologyTargeting}.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="name" type="xsd:string">
                <annotation>
                <documentation>The name of the technology being targeting. This value is read-only and is assigned by Google.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="TextValue">
                <annotation>
                <documentation>Contains a string value.</documentation>
                </annotation>
                </complexType>
                <complexType name="TimeOfDay">
                <annotation>
                <documentation>Represents a specific time in a day.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="hour" type="xsd:int">
                <annotation>
                <documentation>Hour in 24 hour time (0..24). This field must be between 0 and 24, inclusive. This field is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="minute" type="tns:MinuteOfHour">
                <annotation>
                <documentation>Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="UniqueError">
                <annotation>
                <documentation>An error for a field which must satisfy a uniqueness constraint</documentation>
                </annotation>
                </complexType>
                <complexType name="UpdateResult">
                <annotation>
                <documentation>Represents the result of performing an action on objects.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="numChanges" type="xsd:int">
                <annotation>
                <documentation>The number of objects that were changed as a result of performing the action.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="UserDomainTargeting">
                <annotation>
                <documentation>Provides line items the ability to target or exclude users visiting their websites from a list of domains or subdomains.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="domains" type="xsd:string">
                <annotation>
                <documentation>The domains or subdomains that are being targeted or excluded by the {@link LineItem}. This attribute is required and the maximum length of each domain is 67 characters.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="targeted" type="xsd:boolean">
                <annotation>
                <documentation>Indicates whether domains should be targeted or excluded. This attribute is optional and defaults to {@code true}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType abstract="true" name="Value">
                <annotation>
                <documentation>{@code Value} represents a value.</documentation>
                </annotation>
                </complexType>
                <complexType name="VideoPosition">
                <annotation>
                <documentation>Represents a targetable position within a video. A video ad can be targeted to a position (pre-roll, all mid-rolls, or post-roll), or to a specific mid-roll index.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="positionType" type="tns:VideoPosition.Type">
                <annotation>
                <documentation>The type of video position (pre-roll, mid-roll, or post-roll).</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="midrollIndex" type="xsd:int">
                <annotation>
                <documentation>The index of the mid-roll to target. Only valid if the {@link positionType} is {@link VideoPositionType#MIDROLL}, otherwise this field will be ignored.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="VideoPositionTargeting">
                <annotation>
                <documentation>Represents positions within and around a video where ads can be targeted to. <p>Example positions could be {@code pre-roll} (before the video plays), {@code post-roll} (after a video has completed playback) and {@code mid-roll} (during video playback). <p>Empty video position targeting means that all video positions are allowed. If a bumper line item has empty video position targeting it will be updated to target all bumper positions.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="unbounded" minOccurs="0" name="targetedPositions" type="tns:VideoPositionTarget">
                <annotation>
                <documentation>The {@link VideoTargetingPosition} objects being targeted by the video {@link LineItem}.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="VideoPositionWithinPod">
                <annotation>
                <documentation>Represents a targetable position within a pod within a video stream. A video ad can be targeted to any position in the pod (first, second, third ... last). If there is only 1 ad in a pod, either first or last will target that position.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="index" type="xsd:int">
                <annotation>
                <documentation>The specific index of the pod. The index is defined as: <ul><li>1 = first</li> <li>2 = second</li> <li>3 = third</li> <li>....</li> <li>100 = last</li></ul> 100 will always be the last position. For example, for a pod with 5 positions, 100 would target position 5. Multiple targets against the index 100 can exist.<br> Positions over 100 are not supported.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <complexType name="VideoPositionTarget">
                <annotation>
                <documentation>Represents the options for targetable positions within a video.</documentation>
                </annotation>
                <sequence>
                <element maxOccurs="1" minOccurs="0" name="videoPosition" type="tns:VideoPosition">
                <annotation>
                <documentation>The video position to target. This attribute is required.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="videoBumperType" type="tns:VideoBumperType">
                <annotation>
                <documentation>The video bumper type to target. To target a video position or a pod position, this value must be null. To target a bumper position this value must be populated and the line item must have a bumper type. To target a custom ad spot, this value must be null.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="videoPositionWithinPod" type="tns:VideoPositionWithinPod">
                <annotation>
                <documentation>The video position within a pod to target. To target a video position or a bumper position, this value must be null. To target a position within a pod this value must be populated. To target a custom ad spot, this value must be null.</documentation>
                </annotation>
                </element>
                <element maxOccurs="1" minOccurs="0" name="adSpotId" type="xsd:long">
                <annotation>
                <documentation>A custom spot {@link AdSpot} to target. To target a video position, a bumper type or a video position within a pod this value must be null.</documentation>
                </annotation>
                </element>
                </sequence>
                </complexType>
                <simpleType name="ApiVersionError.Reason">
                <restriction base="xsd:string">
                <enumeration value="UPDATE_TO_NEWER_VERSION">
                <annotation>
                <documentation>Indicates that the operation is not allowed in the version the request was made in.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="AuthenticationError.Reason">
                <restriction base="xsd:string">
                <enumeration value="AMBIGUOUS_SOAP_REQUEST_HEADER">
                <annotation>
                <documentation>The SOAP message contains a request header with an ambiguous definition of the authentication header fields. This means either the {@code authToken} and {@code oAuthToken} fields were both null or both were specified. Exactly one value should be specified with each request.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_EMAIL">
                <annotation>
                <documentation>The login provided is invalid.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="AUTHENTICATION_FAILED">
                <annotation>
                <documentation>Tried to authenticate with provided information, but failed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_OAUTH_SIGNATURE">
                <annotation>
                <documentation>The OAuth provided is invalid.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_SERVICE">
                <annotation>
                <documentation>The specified service to use was not recognized.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MISSING_SOAP_REQUEST_HEADER">
                <annotation>
                <documentation>The SOAP message is missing a request header with an {@code authToken} and optional {@code networkCode}.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MISSING_AUTHENTICATION_HTTP_HEADER">
                <annotation>
                <documentation>The HTTP request is missing a request header with an {@code authToken}</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MISSING_AUTHENTICATION">
                <annotation>
                <documentation>The request is missing an {@code authToken}</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NETWORK_API_ACCESS_DISABLED">
                <annotation>
                <documentation>The network does not have API access enabled.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NO_NETWORKS_TO_ACCESS">
                <annotation>
                <documentation>The user is not associated with any network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NETWORK_NOT_FOUND">
                <annotation>
                <documentation>No network for the given {@code networkCode} was found.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NETWORK_CODE_REQUIRED">
                <annotation>
                <documentation>The user has access to more than one network, but did not provide a {@code networkCode}.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CONNECTION_ERROR">
                <annotation>
                <documentation>An error happened on the server side during connection to authentication service.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="GOOGLE_ACCOUNT_ALREADY_ASSOCIATED_WITH_NETWORK">
                <annotation>
                <documentation>The user tried to create a test network using an account that already is associated with a network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNDER_INVESTIGATION">
                <annotation>
                <documentation>The account is blocked and under investigation by the collections team. Please contact Google for more information.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="CollectionSizeError.Reason">
                <restriction base="xsd:string">
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="CommonError.Reason">
                <annotation>
                <documentation>Describes reasons for common errors</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="NOT_FOUND">
                <annotation>
                <documentation>Indicates that an attempt was made to retrieve an entity that does not exist.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ALREADY_EXISTS">
                <annotation>
                <documentation>Indicates that an attempt was made to create an entity that already exists.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NOT_APPLICABLE">
                <annotation>
                <documentation>Indicates that a value is not applicable for given use case.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="DUPLICATE_OBJECT">
                <annotation>
                <documentation>Indicates that two elements in the collection were identical.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_UPDATE">
                <annotation>
                <documentation>Indicates that an attempt was made to change an immutable field.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNSUPPORTED_OPERATION">
                <annotation>
                <documentation>Indicates that the requested operation is not supported.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CONCURRENT_MODIFICATION">
                <annotation>
                <documentation>Indicates that another request attempted to update the same data in the same network at about the same time. Please wait and try the request again.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="CreativeTemplateError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="CANNOT_PARSE_CREATIVE_TEMPLATE">
                <annotation>
                <documentation>The XML of the creative template definition is malformed and cannot be parsed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VARIABLE_DUPLICATE_UNIQUE_NAME">
                <annotation>
                <documentation>A creative template has multiple variables with the same uniqueName.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VARIABLE_INVALID_UNIQUE_NAME">
                <annotation>
                <documentation>The creative template contains a variable with invalid characters. Valid characters are letters, numbers, spaces, forward slashes, dashes, and underscores.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="LIST_CHOICE_DUPLICATE_VALUE">
                <annotation>
                <documentation>Multiple choices for a CreativeTemplateListStringVariable have the same value.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="LIST_CHOICE_NEEDS_DEFAULT">
                <annotation>
                <documentation>The choices for a CreativeTemplateListStringVariable do not contain the default value.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="LIST_CHOICES_EMPTY">
                <annotation>
                <documentation>There are no choices specified for the list variable.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NO_TARGET_PLATFORMS">
                <annotation>
                <documentation>No target platform is assigned to a creative template.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MULTIPLE_TARGET_PLATFORMS">
                <annotation>
                <documentation>More than one target platform is assigned to a single creative template.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNRECOGNIZED_PLACEHOLDER">
                <annotation>
                <documentation>The formatter contains a placeholder which is not defined as a variable.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PLACEHOLDERS_NOT_IN_FORMATTER">
                <annotation>
                <documentation>There are variables defined which are not being used in the formatter.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MISSING_INTERSTITIAL_MACRO">
                <annotation>
                <documentation>The creative template is interstitial, but the formatter doesn't contain an interstitial macro.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="CustomTargetingError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="KEY_NOT_FOUND">
                <annotation>
                <documentation>Requested {@link CustomTargetingKey} is not found.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_COUNT_TOO_LARGE">
                <annotation>
                <documentation>Number of {@link CustomTargetingKey} objects created exceeds the limit allowed for the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_NAME_DUPLICATE">
                <annotation>
                <documentation>{@link CustomTargetingKey} with the same {@link CustomTargetingKey#name} already exists.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_NAME_EMPTY">
                <annotation>
                <documentation>{@link CustomTargetingKey#name} is empty.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_NAME_INVALID_LENGTH">
                <annotation>
                <documentation>{@link CustomTargetingKey#name} is too long.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_NAME_INVALID_CHARS">
                <annotation>
                <documentation>{@link CustomTargetingKey#name} contains unsupported or reserved characters.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_NAME_RESERVED">
                <annotation>
                <documentation>{@link CustomTargetingKey#name} matches one of the reserved custom targeting key names.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_DISPLAY_NAME_INVALID_LENGTH">
                <annotation>
                <documentation>{@link CustomTargetingKey#displayName} is too long.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_STATUS_NOT_ACTIVE">
                <annotation>
                <documentation>Key is not active.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_NOT_FOUND">
                <annotation>
                <documentation>Requested {@link CustomTargetingValue} is not found.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID">
                <annotation>
                <documentation>The {@code WHERE} clause in the {@link Statement#query} must always contain {@link CustomTargetingValue#customTargetingKeyId} as one of its columns in a way that it is AND'ed with the rest of the query.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_COUNT_FOR_KEY_TOO_LARGE">
                <annotation>
                <documentation>The number of {@link CustomTargetingValue} objects associated with a {@link CustomTargetingKey} exceeds the network limit. This is only applicable for keys of type {@code CustomTargetingKey.Type#PREDEFINED}.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_NAME_DUPLICATE">
                <annotation>
                <documentation>{@link CustomTargetingValue} with the same {@link CustomTargetingValue#name} already exists.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_NAME_EMPTY">
                <annotation>
                <documentation>{@link CustomTargetingValue#name} is empty.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_NAME_INVALID_LENGTH">
                <annotation>
                <documentation>{@link CustomTargetingValue#name} is too long.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_NAME_INVALID_CHARS">
                <annotation>
                <documentation>{@link CustomTargetingValue#name} contains unsupported or reserved characters.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_DISPLAY_NAME_INVALID_LENGTH">
                <annotation>
                <documentation>{@link CustomTargetingValue#displayName} is too long.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_MATCH_TYPE_NOT_ALLOWED">
                <annotation>
                <documentation>Only Ad Manager 360 networks can have {@link CustomTargetingValue#matchType} other than {@link CustomTargetingValue.MatchType#EXACT}.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY">
                <annotation>
                <documentation>You can only create {@link CustomTargetingValue} objects with match type {@link CustomTargetingValue.MatchType#EXACT} when associating with {@link CustomTargetingKey} objects of type {@link CustomTargetingKey.Type#PREDEFINED}</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SUFFIX_MATCH_TYPE_NOT_ALLOWED">
                <annotation>
                <documentation>{@link CustomTargetingValue} object cannot have match type of {@link CustomTargetingValue.MatchType#SUFFIX} when adding a {@link CustomTargetingValue} to a line item.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CONTAINS_MATCH_TYPE_NOT_ALLOWED">
                <annotation>
                <documentation>{@link CustomTargetingValue} object cannot have match type of {@link CustomTargetingValue.MatchType#CONTAINS} when adding a {@link CustomTargetingValue} to targeting expression of a line item.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VALUE_STATUS_NOT_ACTIVE">
                <annotation>
                <documentation>Value is not active.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="KEY_WITH_MISSING_VALUES">
                <annotation>
                <documentation>The {@link CustomTargetingKey} does not have any {@link CustomTargetingValue} associated with it.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_VALUE_FOR_KEY">
                <annotation>
                <documentation>The {@link CustomTargetingKey} has a {@link CustomTargetingValue} specified for which the value is not a valid child.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_OR_DIFFERENT_KEYS">
                <annotation>
                <documentation>{@link CustomCriteriaSet.LogicalOperator#OR} operation cannot be applied to values with different keys.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_TARGETING_EXPRESSION">
                <annotation>
                <documentation>Targeting expression is invalid. This can happen if the sequence of operators is wrong, or a node contains invalid number of children.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING">
                <annotation>
                <documentation>The key has been deleted. {@link CustomCriteria} cannot have deleted keys.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING">
                <annotation>
                <documentation>The value has been deleted. {@link CustomCriteria} cannot have deleted values.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING">
                <annotation>
                <documentation>The key is set as the video browse-by key, which cannot be used for custom targeting.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING">
                <annotation>
                <documentation>Cannot delete a custom criteria key that is targeted by an active partner assignment.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING">
                <annotation>
                <documentation>Cannot delete a custom criteria value that is targeted by an active partner assignment.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_TARGET_AUDIENCE_SEGMENT">
                <annotation>
                <documentation>{@link AudienceSegment} object cannot be targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_TARGET_THIRD_PARTY_AUDIENCE_SEGMENT">
                <annotation>
                <documentation>Third party {@link AudienceSegment} cannot be targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT">
                <annotation>
                <documentation>Inactive {@link AudienceSegment} object cannot be targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_AUDIENCE_SEGMENTS">
                <annotation>
                <documentation>Targeted {@link AudienceSegment} object is not valid.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_TARGET_MAPPED_METADATA">
                <annotation>
                <documentation>Mapped metadata key-values are deprecated and cannot be targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED">
                <annotation>
                <documentation>Targeted {@link AudienceSegment} objects have not been approved.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="DayOfWeek">
                <annotation>
                <documentation>Days of the week.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="MONDAY">
                <annotation>
                <documentation>The day of week named Monday.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TUESDAY">
                <annotation>
                <documentation>The day of week named Tuesday.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="WEDNESDAY">
                <annotation>
                <documentation>The day of week named Wednesday.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="THURSDAY">
                <annotation>
                <documentation>The day of week named Thursday.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FRIDAY">
                <annotation>
                <documentation>The day of week named Friday.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SATURDAY">
                <annotation>
                <documentation>The day of week named Saturday.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SUNDAY">
                <annotation>
                <documentation>The day of week named Sunday.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="DeliveryTimeZone">
                <annotation>
                <documentation>Represents the time zone to be used for {@link DayPartTargeting}.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="PUBLISHER">
                <annotation>
                <documentation>Use the time zone of the publisher.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="BROWSER">
                <annotation>
                <documentation>Use the time zone of the browser.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="EntityChildrenLimitReachedError.Reason">
                <annotation>
                <documentation>The reasons for the entity children limit reached error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="LINE_ITEM_LIMIT_FOR_ORDER_REACHED">
                <annotation>
                <documentation>The number of line items on the order exceeds the max number of line items allowed per order in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED">
                <annotation>
                <documentation>The number of creatives associated with the line item exceeds the max number of creatives allowed to be associated with a line item in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED">
                <annotation>
                <documentation>The number of ad units on the placement exceeds the max number of ad units allowed per placement in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED">
                <annotation>
                <documentation>The number of targeting expressions on the line item exceeds the max number of targeting expressions allowed per line item in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TARGETING_EXPRESSION_SIZE_LIMIT_REACHED">
                <annotation>
                <documentation>The size of a single targeting expression tree exceeds the max size allowed by the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED">
                <annotation>
                <documentation>The number of custom targeting values for the free-form or predefined custom targeting key exceeds the max number allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED">
                <annotation>
                <documentation>The total number of targeting expressions on the creatives for the line item exceeds the max number allowed per line item in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED">
                <annotation>
                <documentation>The number of attachments added to the proposal exceeds the max number allowed per proposal in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED">
                <annotation>
                <documentation>The number of proposal line items on the proposal exceeds the max number allowed per proposal in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED">
                <annotation>
                <documentation>The number of product package items on the product package exceeds the max number allowed per product package in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED">
                <annotation>
                <documentation>The number of product template and product base rates on the rate card (including excluded product base rates) exceeds the max number allowed per rate card in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED">
                <annotation>
                <documentation>The number of product package item base rates on the rate card exceeds the max number allowed per rate card in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PREMIUM_LIMIT_FOR_RATE_CARD_REACHED">
                <annotation>
                <documentation>The number of premiums of the rate card exceeds the max number allowed per rate card in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED">
                <annotation>
                <documentation>The number of ad units on {@link AdExclusionRule#inventoryTargeting} exceeds the max number of ad units allowed per ad exclusion rule inventory targeting in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED">
                <annotation>
                <documentation>The number of native styles under the native creative template exceeds the max number of native styles allowed per native creative template in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED">
                <annotation>
                <documentation>The number of targeting expressions on the native style exceeds the max number of targeting expressions allowed per native style in the network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="FeatureError.Reason">
                <restriction base="xsd:string">
                <enumeration value="MISSING_FEATURE">
                <annotation>
                <documentation>A feature is being used that is not enabled on the current network.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="ImageError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="INVALID_IMAGE">
                <annotation>
                <documentation>The file's format is invalid.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_SIZE">
                <annotation>
                <documentation>{@link Size#width} and {@link Size#height} cannot be negative.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNEXPECTED_SIZE">
                <annotation>
                <documentation>The actual image size does not match the expected image size.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="OVERLAY_SIZE_TOO_LARGE">
                <annotation>
                <documentation>The size of the asset is larger than that of the overlay creative.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ANIMATED_NOT_ALLOWED">
                <annotation>
                <documentation>Animated images are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ANIMATION_TOO_LONG">
                <annotation>
                <documentation>Animation length exceeded the allowed policy limit.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CMYK_JPEG_NOT_ALLOWED">
                <annotation>
                <documentation>Images in CMYK color formats are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_NOT_ALLOWED">
                <annotation>
                <documentation>Flash files are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_WITHOUT_CLICKTAG">
                <annotation>
                <documentation>If {@link FlashCreative#clickTagRequired} is {@code true}, then the flash file is required to have a click tag embedded in it.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ANIMATED_VISUAL_EFFECT">
                <annotation>
                <documentation>Animated visual effect is not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_ERROR">
                <annotation>
                <documentation>An error was encountered in the flash file.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="LAYOUT_PROBLEM">
                <annotation>
                <documentation>Incorrect image layout.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_HAS_NETWORK_OBJECTS">
                <annotation>
                <documentation>Flash files with network objects are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_HAS_NETWORK_METHODS">
                <annotation>
                <documentation>Flash files with network methods are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_HAS_URL">
                <annotation>
                <documentation>Flash files with hard-coded click thru URLs are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_HAS_MOUSE_TRACKING">
                <annotation>
                <documentation>Flash files with mouse tracking are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_HAS_RANDOM_NUM">
                <annotation>
                <documentation>Flash files that generate or use random numbers are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_SELF_TARGETS">
                <annotation>
                <documentation>Flash files with self targets are not allowed.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_BAD_GETURL_TARGET">
                <annotation>
                <documentation>Flash file contains a bad geturl target.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FLASH_VERSION_NOT_SUPPORTED">
                <annotation>
                <documentation>Flash or ActionScript version in the submitted file is not supported.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FILE_TOO_LARGE">
                <annotation>
                <documentation>The uploaded file is too large.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SYSTEM_ERROR_IRS">
                <annotation>
                <documentation>A system error occurred, please try again.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SYSTEM_ERROR_SCS">
                <annotation>
                <documentation>A system error occurred, please try again.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNEXPECTED_PRIMARY_ASSET_DENSITY">
                <annotation>
                <documentation>The image density for a primary asset was not one of the expected image densities.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="DUPLICATE_ASSET_DENSITY">
                <annotation>
                <documentation>Two or more assets have the same image density.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MISSING_DEFAULT_ASSET">
                <annotation>
                <documentation>The creative does not contain a primary asset. (For high-density creatives, the primary asset must be a standard image file with 1x density.)</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PREVERIFIED_MIMETYPE_NOT_ALLOWED">
                <annotation>
                <documentation>preverified_mime_type is not in the client spec's allowlist.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="InternalApiError.Reason">
                <annotation>
                <documentation>The single reason for the internal API error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNEXPECTED_INTERNAL_API_ERROR">
                <annotation>
                <documentation>API encountered an unexpected internal error.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TRANSIENT_ERROR">
                <annotation>
                <documentation>A temporary error occurred during the request. Please retry.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The cause of the error is not known or only defined in newer versions.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="DOWNTIME">
                <annotation>
                <documentation>The API is currently unavailable for a planned downtime.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ERROR_GENERATING_RESPONSE">
                <annotation>
                <documentation>Mutate succeeded but server was unable to build response. Client should not retry mutate.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="InvalidUrlError.Reason">
                <restriction base="xsd:string">
                <enumeration value="ILLEGAL_CHARACTERS">
                <annotation>
                <documentation>The URL contains invalid characters.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_FORMAT">
                <annotation>
                <documentation>The format of the URL is not allowed. This could occur for a number of reasons. For example, if an invalid scheme is specified (like "ftp://") or if a port is specified when not required, or if a query was specified when not required.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INSECURE_SCHEME">
                <annotation>
                <documentation>URL contains insecure scheme.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NO_SCHEME">
                <annotation>
                <documentation>The URL does not contain a scheme.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="InventoryTargetingError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="AT_LEAST_ONE_PLACEMENT_OR_INVENTORY_UNIT_REQUIRED">
                <annotation>
                <documentation>At least one placement or inventory unit is required</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVENTORY_CANNOT_BE_TARGETED_AND_EXCLUDED">
                <annotation>
                <documentation>The same inventory unit or placement cannot be targeted and excluded at the same time</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_TARGETED">
                <annotation>
                <documentation>A child inventory unit cannot be targeted if its ancestor inventory unit is also targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVENTORY_UNIT_CANNOT_BE_TARGETED_IF_ANCESTOR_IS_EXCLUDED">
                <annotation>
                <documentation>A child inventory unit cannot be targeted if its ancestor inventory unit is excluded.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVENTORY_UNIT_CANNOT_BE_EXCLUDED_IF_ANCESTOR_IS_EXCLUDED">
                <annotation>
                <documentation>A child inventory unit cannot be excluded if its ancestor inventory unit is also excluded.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_TARGETED">
                <annotation>
                <documentation>An explicitly targeted inventory unit cannot be targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="EXPLICITLY_TARGETED_INVENTORY_UNIT_CANNOT_BE_EXCLUDED">
                <annotation>
                <documentation>An explicitly targeted inventory unit cannot be excluded.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SELF_ONLY_INVENTORY_UNIT_NOT_ALLOWED">
                <annotation>
                <documentation>A landing page-only ad unit cannot be targeted.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SELF_ONLY_INVENTORY_UNIT_WITHOUT_DESCENDANTS">
                <annotation>
                <documentation>A landing page-only ad unit cannot be targeted if it doesn't have any children.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="YOUTUBE_AUDIENCE_SEGMENTS_CAN_ONLY_BE_TARGETED_WITH_YOUTUBE_SHARED_INVENTORY">
                <annotation>
                <documentation>Audience segments shared from YouTube can only be targeted with inventory shared from YouTube for cross selling.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="MinuteOfHour">
                <annotation>
                <documentation>Minutes in an hour. Currently, only 0, 15, 30, and 45 are supported. This field is required.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="ZERO">
                <annotation>
                <documentation>Zero minutes past hour.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FIFTEEN">
                <annotation>
                <documentation>Fifteen minutes past hour.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="THIRTY">
                <annotation>
                <documentation>Thirty minutes past hour.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="FORTY_FIVE">
                <annotation>
                <documentation>Forty-five minutes past hour.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="NativeStyleError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="ACTIVE_CREATIVE_TEMPLATE_REQUIRED">
                <annotation>
                <documentation>Native styles can only be created under active creative templates.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_CUSTOM_TARGETING_MATCH_TYPE">
                <annotation>
                <documentation>Targeting expressions on the NativeStyle can only have custom criteria targeting with {@link CustomTargetingValue.MatchType#EXACT}.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_INVENTORY_TARTGETING_TYPE">
                <annotation>
                <documentation>Native styles only allows inclusion of inventory units.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_STATUS">
                <annotation>
                <documentation>The status of a native style cannot be null.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_TARGETING_TYPE">
                <annotation>
                <documentation>Targeting expressions on the native style can only have inventory targeting and/or custom targeting.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NATIVE_CREATIVE_TEMPLATE_REQUIRED">
                <annotation>
                <documentation>Native styles can only be created under native creative templates.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TOO_MANY_CUSTOM_TARGETING_KEY_VALUES">
                <annotation>
                <documentation>Targeting expressions on native styles can have a maximum of 20 key-value pairs.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNIQUE_SNIPPET_REQUIRED">
                <annotation>
                <documentation>Native styles must have an HTML snippet.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNRECOGNIZED_MACRO">
                <annotation>
                <documentation>The macro referenced in the snippet is not valid.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNRECOGNIZED_PLACEHOLDER">
                <annotation>
                <documentation>The snippet of the native style contains a placeholder which is not defined as a variable on the creative template of this native style.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="NativeStyleStatus">
                <annotation>
                <documentation>Describes status of the native style.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="ACTIVE">
                <annotation>
                <documentation>The native style is active. Active native styles are used in ad serving.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ARCHIVED">
                <annotation>
                <documentation>The native style is archived. Archived native styles are not visible in the UI and not used in ad serving.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INACTIVE">
                <annotation>
                <documentation>The native style is inactive. Inactive native styles are not used in ad serving, but visible in the UI.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="NotNullError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="ARG1_NULL">
                <annotation>
                <documentation>Assuming that a method will not have more than 3 arguments, if it does, return NULL</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="NullError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="ParseError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNPARSABLE">
                <annotation>
                <documentation>Indicates an error in parsing an attribute.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="PermissionError.Reason">
                <annotation>
                <documentation>Describes reasons for permission errors.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="PERMISSION_DENIED">
                <annotation>
                <documentation>User does not have the required permission for the request.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="PublisherQueryLanguageContextError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNEXECUTABLE">
                <annotation>
                <documentation>Indicates that there was an error executing the PQL.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="PublisherQueryLanguageSyntaxError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNPARSABLE">
                <annotation>
                <documentation>Indicates that there was a PQL syntax error.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="QuotaError.Reason">
                <restriction base="xsd:string">
                <enumeration value="EXCEEDED_QUOTA">
                <annotation>
                <documentation>The number of requests made per second is too high and has exceeded the allowable limit. The recommended approach to handle this error is to wait about 5 seconds and then retry the request. Note that this does not guarantee the request will succeed. If it fails again, try increasing the wait time. <p>Another way to mitigate this error is to limit requests to 8 per second for Ad Manager 360 accounts, or 2 per second for Ad Manager accounts. Once again this does not guarantee that every request will succeed, but may help reduce the number of times you receive this error.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="REPORT_JOB_LIMIT">
                <annotation>
                <documentation>This user has exceeded the allowed number of new report requests per hour (this includes both reports run via the UI and reports run via {@link ReportService#runReportJob}). The recommended approach to handle this error is to wait about 10 minutes and then retry the request. Note that this does not guarantee the request will succeed. If it fails again, try increasing the wait time. <p>Another way to mitigate this error is to limit the number of new report requests to 250 per hour per user. Once again, this does not guarantee that every request will succeed, but may help reduce the number of times you receive this error.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SEGMENT_POPULATION_LIMIT">
                <annotation>
                <documentation>This network has exceeded the allowed number of identifiers uploaded within a 24 hour period. The recommended approach to handle this error is to wait 30 minutes and then retry the request. Note that this does not guarantee the request will succeed. If it fails again, try increasing the wait time.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="RequestPlatform">
                <annotation>
                <documentation>Represents the platform which requests and renders the ad.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="BROWSER">
                <annotation>
                <documentation>Represents a request made from a web browser. This includes both desktop and mobile web.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MOBILE_APP">
                <annotation>
                <documentation>Represents a request made from a mobile application. This includes mobile app interstitial and rewarded video requests.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="VIDEO_PLAYER">
                <annotation>
                <documentation>Represents a request made from a video player that is playing publisher content. This includes video players embedded in web pages and mobile applications, and connected TV screens.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="RequiredCollectionError.Reason">
                <restriction base="xsd:string">
                <enumeration value="REQUIRED">
                <annotation>
                <documentation>A required collection is missing.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TOO_LARGE">
                <annotation>
                <documentation>Collection size is too large.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="TOO_SMALL">
                <annotation>
                <documentation>Collection size is too small.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="RequiredError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="REQUIRED">
                <annotation>
                <documentation>Missing required field.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="RequiredSizeError.Reason">
                <restriction base="xsd:string">
                <enumeration value="REQUIRED">
                <annotation>
                <documentation>{@link Creative#size} or {@link LineItem#creativePlaceholders} size is missing.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="NOT_ALLOWED">
                <annotation>
                <documentation>{@link LineItemCreativeAssociation#sizes} must be a subset of {@link LineItem#creativePlaceholders} sizes.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="ServerError.Reason">
                <annotation>
                <documentation>Describes reasons for server errors</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="SERVER_ERROR">
                <annotation>
                <documentation>Indicates that an unexpected error occured.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="SERVER_BUSY">
                <annotation>
                <documentation>Indicates that the server is currently experiencing a high load. Please wait and try your request again.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="StatementError.Reason">
                <restriction base="xsd:string">
                <enumeration value="VARIABLE_NOT_BOUND_TO_VALUE">
                <annotation>
                <documentation>A bind variable has not been bound to a value.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="StringFormatError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="ILLEGAL_CHARS">
                <annotation>
                <documentation>The input string value contains disallowed characters.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_FORMAT">
                <annotation>
                <documentation>The input string value is invalid for the associated field.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="StringLengthError.Reason">
                <restriction base="xsd:string">
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="TeamError.Reason">
                <annotation>
                <documentation>The reasons for the target error.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="ENTITY_NOT_ON_USERS_TEAMS">
                <annotation>
                <documentation>User cannot use this entity because it is not on any of the user's teams.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="AD_UNITS_NOT_ON_ORDER_TEAMS">
                <annotation>
                <documentation>The targeted or excluded ad unit must be on the order's teams.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PLACEMENTS_NOT_ON_ORDER_TEAMS">
                <annotation>
                <documentation>The targeted placement must be on the order's teams.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MISSING_USERS_TEAM">
                <annotation>
                <documentation>Entity cannot be created because it is not on any of the user's teams.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ALL_TEAM_ASSOCIATION_NOT_ALLOWED">
                <annotation>
                <documentation>A team that gives access to all entities of a given type cannot be associated with an entity of that type.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="INVALID_TEAM_ASSIGNMENT">
                <annotation>
                <documentation>The assignment of team to entities is invalid.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="CANNOT_UPDATE_INACTIVE_TEAM">
                <annotation>
                <documentation>Cannot modify or create a team with an inactive status.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="VideoBumperType">
                <annotation>
                <documentation>Represents the options for targetable bumper positions, surrounding an ad pod, within a video stream. This includes before and after the supported ad pod positions, {@link VideoPositionType#PREROLL}, {@link VideoPositionType#MIDROLL}, and {@link VideoPositionType#POSTROLL}.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="BEFORE">
                <annotation>
                <documentation>Represents the bumper position before the ad pod.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="AFTER">
                <annotation>
                <documentation>Represents the bumper position after the ad pod.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <simpleType name="VideoPosition.Type">
                <annotation>
                <documentation>Represents a targetable position within a video.</documentation>
                </annotation>
                <restriction base="xsd:string">
                <enumeration value="UNKNOWN">
                <annotation>
                <documentation>The value returned if the actual value is not exposed by the requested API version.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="ALL">
                <annotation>
                <documentation>This position targets all of the above video positions.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="PREROLL">
                <annotation>
                <documentation>The position defined as showing before the video starts playing.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="MIDROLL">
                <annotation>
                <documentation>The position defined as showing within the middle of the playing video.</documentation>
                </annotation>
                </enumeration>
                <enumeration value="POSTROLL">
                <annotation>
                <documentation>The position defined as showing after the video is completed.</documentation>
                </annotation>
                </enumeration>
                </restriction>
                </simpleType>
                <element name="ApiExceptionFault" type="tns:ApiException">
                <annotation>
                <documentation>A fault element of type ApiException.</documentation>
                </annotation>
                </element>
                <element name="getNativeStylesByStatement">
                <annotation>
                <documentation>Gets a {@link NativeStylePage NativeStylePage} of {@link NativeStyle} objects that satisfy the given {@link Statement}. The following fields are supported for filtering: <table> <tr> <th scope="col">PQL Property</th> <th scope="col">Object Property</th> </tr> <tr> <td>{@code id}</td> <td>{@link NativeStyle#id}</td> </tr> <tr> <td>{@code name}</td> <td>{@link NativeStyle#name}</td> </tr> </table></documentation>
                </annotation>
                </element>
                </schema>
                </wsdl:types>
                <wsdl:portType name="NativeStyleServiceInterface">
                <wsdl:documentation>Provides methods for creating and retrieving {@link NativeStyle} objects.</wsdl:documentation>
                <wsdl:operation name="getNativeStylesByStatement">
                <wsdl:documentation>Gets a {@link NativeStylePage NativeStylePage} of {@link NativeStyle} objects that satisfy the given {@link Statement}. The following fields are supported for filtering: <table> <tr> <th scope="col">PQL Property</th> <th scope="col">Object Property</th> </tr> <tr> <td>{@code id}</td> <td>{@link NativeStyle#id}</td> </tr> <tr> <td>{@code name}</td> <td>{@link NativeStyle#name}</td> </tr> </table></wsdl:documentation>
                </wsdl:operation>
                </wsdl:portType>
                <wsdl:binding name="NativeStyleServiceSoapBinding" type="tns:NativeStyleServiceInterface"></wsdl:binding>
                </wsdl:definitions>

                About wsdl-viewer.xsl

                This document was generated by SAXON 9.1.0.8 from Saxonica XSLT engine. The engine processed the WSDL in XSLT 2.0 compliant mode.
                This page has been generated bywsdl-viewer.xsl, version 3.1.02
                Author: tomi vanek
                Download athttp://tomi.vanek.sk/xml/wsdl-viewer.xsl.

                The transformation was inspired by the article
                Uche Ogbuji: WSDL processing with XSLT