// Copyright 2016 Google Inc. All Rights Reserved.
//
// 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.adwords.jaxws.v201609.cm;
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;
/**
*
* Use this service to manage ad parameters, which let you quickly update
* parameterized values (such as prices or inventory levels) in a text ad.
* Whereas updates to regular ad text can take hours to go live, updates to
* parameterized values go live in minutes.
*
* <p>To define where parameterized values appear in an ad, you insert
* <code>{param#:<var>default-value</var>}</code> tags in your ad text. You
* can use these tags in any line of display text, and also in the
* destination URL. When the text ad is displayed, values in these tags are
* replaced by the ad parameter's {@linkplain AdParam#insertionText
* insertion text}. <code>default-value</code> specifies the string to display
* if one of the following conditions is true:</p>
* <ul>
* <li>The parameter has not been set.</li>
* <li>The parameter's insertion text is too long for the display line.</li>
* <li>The ad is being shown on the
* {@linkplain NetworkTarget#networkCoverageType Google Display Network}.</li>
* </ul>
* <span class="constraint AdxEnabled">This is disabled for AdX.</span>
*
*
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.2.9-b130926.1035
* Generated source version: 2.1
*
*/
@WebService(name = "AdParamServiceInterface", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609")
@XmlSeeAlso({
ObjectFactory.class
})
public interface AdParamServiceInterface {
/**
*
* Returns the ad parameters that match the criteria specified in the
* selector.
*
* @param serviceSelector Specifies which ad parameters to return.
* @return A list of ad parameters.
*
*
* @param serviceSelector
* @return
* returns com.google.api.ads.adwords.jaxws.v201609.cm.AdParamPage
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609")
@RequestWrapper(localName = "get", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609", className = "com.google.api.ads.adwords.jaxws.v201609.cm.AdParamServiceInterfaceget")
@ResponseWrapper(localName = "getResponse", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609", className = "com.google.api.ads.adwords.jaxws.v201609.cm.AdParamServiceInterfacegetResponse")
public AdParamPage get(
@WebParam(name = "serviceSelector", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609")
Selector serviceSelector)
throws ApiException_Exception
;
/**
*
* Sets and removes ad parameters.
* <p class="note"><b>Note:</b> {@code ADD} is not supported. Use {@code SET}
* for new ad parameters.</p>
*
* <ul class="nolist">
* <li>{@code SET}: Creates or updates an ad parameter, setting the new
* parameterized value for the given ad group / keyword pair.
* <li>{@code REMOVE}: Removes an ad parameter. The <code><var>default-value</var>
* </code> specified in the ad text will be used.</li>
* </ul>
*
* @param operations The operations to perform.
* @return A list of ad parameters, where each entry in the list is the
* result of applying the operation in the input list with the same index.
* For a {@code SET} operation, the returned ad parameter will contain the
* updated values. For a {@code REMOVE} operation, the returned ad parameter
* will simply be the ad parameter that was removed.
*
*
* @param operations
* @return
* returns java.util.List<com.google.api.ads.adwords.jaxws.v201609.cm.AdParam>
* @throws ApiException_Exception
*/
@WebMethod
@WebResult(name = "rval", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609")
@RequestWrapper(localName = "mutate", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609", className = "com.google.api.ads.adwords.jaxws.v201609.cm.AdParamServiceInterfacemutate")
@ResponseWrapper(localName = "mutateResponse", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609", className = "com.google.api.ads.adwords.jaxws.v201609.cm.AdParamServiceInterfacemutateResponse")
public List<AdParam> mutate(
@WebParam(name = "operations", targetNamespace = "https://adwords.google.com/api/adwords/cm/v201609")
List<AdParamOperation> operations)
throws ApiException_Exception
;
}