com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterface Maven / Gradle / Ivy
Show all versions of dfp-appengine Show documentation
// Copyright 2024 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package com.google.api.ads.admanager.jaxws.v202405;
import java.util.List;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
/**
*
* Provides methods for estimating traffic (clicks/impressions) for line items. Forecasts can be
* provided for {@link LineItem} objects that exist in the system or which have not had an ID set
* yet.
*
* Test network behavior
*
* Test networks are unable to provide forecasts that would be comparable to the production
* environment because forecasts require traffic history. For test networks, a consistent behavior
* can be expected for forecast requests, according to the following rules:
*
*
*
* Inputs
({@link LineItem} Fields)
* Outputs
({@link Forecast} Fields)
*
*
* {@link LineItem#lineItemType lineItemType}
* {@link LineItem#unitsBought unitsBought}
* {@link Forecast#availableUnits availableUnits}
* {@link Forecast#forecastUnits forecastUnits (matchedUnits)}
* {@link Forecast#deliveredUnits deliveredUnits}
* Exception
*
*
* Sponsorship
* 13
* ––
* ––
* ––
*
* {@link ForecastError.Reason#NO_FORECAST_YET NO_FORECAST_YET}
*
*
*
* Sponsorship
* 20
* ––
* ––
* ––
*
* {@link ForecastError.Reason#SERVER_NOT_AVAILABLE SERVER_NOT_AVAILABLE}
*
*
*
* Sponsorship
* 50
* 1,200,000
* 6,000,000
* 600,000
* ––
*
*
* Sponsorship
* != 20 and
!= 50
* 1,200,000
* 1,200,000
* 600,000
* ––
*
*
* Not Sponsorship
* <= 500,000
* 3 * unitsBought / 2
* unitsBought * 6
* 600,000
* ––
*
*
* Not Sponsorship
* > 500,000 and <= 1,000,000
* unitsBought / 2
* unitsBought * 6
* 600,000
* ––
*
*
* Not Sponsorship
* > 1,000,000 and <= 1,500,000
* unitsBought / 2
* 3 * unitsBought / 2
* 600,000
* ––
*
*
* Not Sponsorship
* > 1,500,000
* unitsBought / 4
* 3 * unitsBought / 2
* 600,000
* ––
*
*
*
*
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.3.0.2
* Generated source version: 2.1
*
*/
@WebService(name = "ForecastServiceInterface", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
@XmlSeeAlso({
ObjectFactory.class
})
public interface ForecastServiceInterface {
/**
*
* Gets the availability forecast for a {@link ProspectiveLineItem}. An availability forecast
* reports the maximum number of available units that the line item can book, and the total number
* of units matching the line item's targeting.
*
*
* @param lineItem
* @param forecastOptions
* @return
* returns com.google.api.ads.admanager.jaxws.v202405.AvailabilityForecast
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
@RequestWrapper(localName = "getAvailabilityForecast", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetAvailabilityForecast")
@ResponseWrapper(localName = "getAvailabilityForecastResponse", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetAvailabilityForecastResponse")
public AvailabilityForecast getAvailabilityForecast(
@WebParam(name = "lineItem", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
ProspectiveLineItem lineItem,
@WebParam(name = "forecastOptions", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
AvailabilityForecastOptions forecastOptions)
throws ApiException_Exception
;
/**
*
* Gets an {@link AvailabilityForecast} for an existing {@link LineItem} object. An availability
* forecast reports the maximum number of available units that the line item can be booked with,
* and also the total number of units matching the line item's targeting.
*
* Only line items having type {@link LineItemType#SPONSORSHIP} or {@link
* LineItemType#STANDARD} are valid. Other types will result in {@link
* ReservationDetailsError.Reason#LINE_ITEM_TYPE_NOT_ALLOWED}.
*
*
* @param forecastOptions
* @param lineItemId
* @return
* returns com.google.api.ads.admanager.jaxws.v202405.AvailabilityForecast
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
@RequestWrapper(localName = "getAvailabilityForecastById", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetAvailabilityForecastById")
@ResponseWrapper(localName = "getAvailabilityForecastByIdResponse", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetAvailabilityForecastByIdResponse")
public AvailabilityForecast getAvailabilityForecastById(
@WebParam(name = "lineItemId", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
Long lineItemId,
@WebParam(name = "forecastOptions", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
AvailabilityForecastOptions forecastOptions)
throws ApiException_Exception
;
/**
*
* Gets the delivery forecast for a list of {@link ProspectiveLineItem} objects in a single
* delivery simulation with line items potentially contending with each other. A delivery forecast
* reports the number of units that will be delivered to each line item given the line item goals
* and contentions from other line items.
*
*
* @param lineItems
* @param forecastOptions
* @return
* returns com.google.api.ads.admanager.jaxws.v202405.DeliveryForecast
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
@RequestWrapper(localName = "getDeliveryForecast", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetDeliveryForecast")
@ResponseWrapper(localName = "getDeliveryForecastResponse", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetDeliveryForecastResponse")
public DeliveryForecast getDeliveryForecast(
@WebParam(name = "lineItems", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
List lineItems,
@WebParam(name = "forecastOptions", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
DeliveryForecastOptions forecastOptions)
throws ApiException_Exception
;
/**
*
* Gets the delivery forecast for a list of existing {@link LineItem} objects in a single delivery
* simulation. A delivery forecast reports the number of units that will be delivered to each line
* item given the line item goals and contentions from other line items.
*
*
* @param forecastOptions
* @param lineItemIds
* @return
* returns com.google.api.ads.admanager.jaxws.v202405.DeliveryForecast
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
@RequestWrapper(localName = "getDeliveryForecastByIds", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetDeliveryForecastByIds")
@ResponseWrapper(localName = "getDeliveryForecastByIdsResponse", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetDeliveryForecastByIdsResponse")
public DeliveryForecast getDeliveryForecastByIds(
@WebParam(name = "lineItemIds", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
List lineItemIds,
@WebParam(name = "forecastOptions", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
DeliveryForecastOptions forecastOptions)
throws ApiException_Exception
;
/**
*
* Returns forecasted and historical traffic data for the segment of traffic specified by the
* provided request.
*
* Calling this endpoint programmatically is only available for Ad Manager 360 networks.
*
*
* @param trafficDataRequest
* @return
* returns com.google.api.ads.admanager.jaxws.v202405.TrafficDataResponse
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
@RequestWrapper(localName = "getTrafficData", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetTrafficData")
@ResponseWrapper(localName = "getTrafficDataResponse", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405", className = "com.google.api.ads.admanager.jaxws.v202405.ForecastServiceInterfacegetTrafficDataResponse")
public TrafficDataResponse getTrafficData(
@WebParam(name = "trafficDataRequest", targetNamespace = "https://www.google.com/apis/ads/publisher/v202405")
TrafficDataRequest trafficDataRequest)
throws ApiException_Exception
;
}