blob: b9a1a577758404240b775b48483acb2c3b917f2f [file] [log] [blame]
/**
* Copyright 2023 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.
*/
export declare namespace google.ads.integration.service.partner {
export interface GetBusinessInfoRequest {}
}
export declare namespace google.ads.integration.service.partner {
export interface GetBusinessInfoResponse {
businessName?: string;
businessUrl?: string;
}
}
export declare namespace google.ads.integration.service.partner {
export interface FixBusinessInfoRequest {
/**
* Error severity for partner to make decisions.
*/
errorSeverity?: google.ads.integration.service.partner.ErrorSeverity;
/**
* Business info specific error type for partner to understand
* the error.
*/
errorType?: google.ads.integration.service.partner.BusinessInfoErrorType;
/**
* Detailed error message for partner to log.
*/
errorMessage?: string;
}
}
export declare namespace google.ads.integration.service.partner {
export interface FixBusinessInfoResponse {
/**
* Whether or not the partner is ready for Ads app to do a retry.
*/
retryReady?: boolean;
}
}
export declare namespace google.ads.integration.service.partner {
/**
* Generic error severity type for all xchannel error fixing
* methods.
*/
export const enum ErrorSeverity {
UNSPECIFIED = 'UNSPECIFIED',
/**
* This enum value means the error will prevent Ads App from
* rendering.
*/
FATAL = 'FATAL',
/**
* This enum value means the error will not prevent Ads App
* from rendering.
*/
WARNING = 'WARNING',
}
}
export declare namespace google.ads.integration.service.partner {
/**
* Business info specific error type.
*/
export const enum BusinessInfoErrorType {
/**
* Business url has unknown errors.
*/
URL_UNKNOWN_ERROR = 'URL_UNKNOWN_ERROR',
/**
* Business url could be empty, exceeding maximum allowable
* length(512), or syntactically invalid.
*/
URL_SYNTAX_ERROR = 'URL_SYNTAX_ERROR',
/**
* Business url is unreachable because it is not found,
* unauthenticated, has too many redirects or a bad redirect.
*/
URL_UNREACHABLE = 'URL_UNREACHABLE',
/**
* Business url is blocklisted by Google Ads to advertise.
*/
URL_INELIGIBLE = 'URL_INELIGIBLE',
}
}
export declare namespace google.ads.integration.service.partner {
/**
* Service called by the Ads app to get business info from
* the partner.
*/
export interface BusinessService {
/**
* Gets business info to be used in ads campaign construction.
*/
getBusinessInfo(
request: google.ads.integration.service.partner.GetBusinessInfoRequest):
Promise<google.ads.integration.service.partner.GetBusinessInfoResponse>;
/**
* Fix the invalid business info fields that Ads app got from
* the partner.
*/
fixBusinessInfo(
request: google.ads.integration.service.partner.FixBusinessInfoRequest):
Promise<google.ads.integration.service.partner.FixBusinessInfoResponse>;
}
}