google-ads-api-client
Version:
A friendly and exhaustive client to the google-ads-api, code generated directly from google's published protobuf schema.
293 lines (292 loc) • 12.1 kB
TypeScript
import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
import { DateRange } from "../common/dates";
import { InvoiceTypeEnum_InvoiceType } from "../enums/invoice_type";
/**
* An invoice. All invoice information is snapshotted to match the PDF invoice.
* For invoices older than the launch of InvoiceService, the snapshotted
* information may not match the PDF invoice.
*
* @generated from protobuf message google.ads.googleads.v11.resources.Invoice
*/
export interface Invoice {
/**
* Output only. The resource name of the invoice. Multiple customers can share a given
* invoice, so multiple resource names may point to the same invoice.
* Invoice resource names have the form:
*
* `customers/{customer_id}/invoices/{invoice_id}`
*
* @generated from protobuf field: string resource_name = 1;
*/
resourceName: string;
/**
* Output only. The ID of the invoice. It appears on the invoice PDF as "Invoice number".
*
* @generated from protobuf field: optional string id = 25;
*/
id?: string;
/**
* Output only. The type of invoice.
*
* @generated from protobuf field: google.ads.googleads.v11.enums.InvoiceTypeEnum.InvoiceType type = 3;
*/
type: InvoiceTypeEnum_InvoiceType;
/**
* Output only. The resource name of this invoice's billing setup.
*
* `customers/{customer_id}/billingSetups/{billing_setup_id}`
*
* @generated from protobuf field: optional string billing_setup = 26;
*/
billingSetup?: string;
/**
* Output only. A 16 digit ID used to identify the payments account associated with the
* billing setup, for example, "1234-5678-9012-3456". It appears on the
* invoice PDF as "Billing Account Number".
*
* @generated from protobuf field: optional string payments_account_id = 27;
*/
paymentsAccountId?: string;
/**
* Output only. A 12 digit ID used to identify the payments profile associated with the
* billing setup, for example, "1234-5678-9012". It appears on the invoice PDF
* as "Billing ID".
*
* @generated from protobuf field: optional string payments_profile_id = 28;
*/
paymentsProfileId?: string;
/**
* Output only. The issue date in yyyy-mm-dd format. It appears on the invoice PDF as
* either "Issue date" or "Invoice date".
*
* @generated from protobuf field: optional string issue_date = 29;
*/
issueDate?: string;
/**
* Output only. The due date in yyyy-mm-dd format.
*
* @generated from protobuf field: optional string due_date = 30;
*/
dueDate?: string;
/**
* Output only. The service period date range of this invoice. The end date is inclusive.
*
* @generated from protobuf field: google.ads.googleads.v11.common.DateRange service_date_range = 9;
*/
serviceDateRange?: DateRange;
/**
* Output only. The currency code. All costs are returned in this currency. A subset of the
* currency codes derived from the ISO 4217 standard is supported.
*
* @generated from protobuf field: optional string currency_code = 31;
*/
currencyCode?: string;
/**
* Output only. The pretax subtotal amount of invoice level adjustments, in micros.
*
* @generated from protobuf field: int64 adjustments_subtotal_amount_micros = 19;
*/
adjustmentsSubtotalAmountMicros: bigint;
/**
* Output only. The sum of taxes on the invoice level adjustments, in micros.
*
* @generated from protobuf field: int64 adjustments_tax_amount_micros = 20;
*/
adjustmentsTaxAmountMicros: bigint;
/**
* Output only. The total amount of invoice level adjustments, in micros.
*
* @generated from protobuf field: int64 adjustments_total_amount_micros = 21;
*/
adjustmentsTotalAmountMicros: bigint;
/**
* Output only. The pretax subtotal amount of invoice level regulatory costs, in micros.
*
* @generated from protobuf field: int64 regulatory_costs_subtotal_amount_micros = 22;
*/
regulatoryCostsSubtotalAmountMicros: bigint;
/**
* Output only. The sum of taxes on the invoice level regulatory costs, in micros.
*
* @generated from protobuf field: int64 regulatory_costs_tax_amount_micros = 23;
*/
regulatoryCostsTaxAmountMicros: bigint;
/**
* Output only. The total amount of invoice level regulatory costs, in micros.
*
* @generated from protobuf field: int64 regulatory_costs_total_amount_micros = 24;
*/
regulatoryCostsTotalAmountMicros: bigint;
/**
* Output only. The pretax subtotal amount, in micros. This equals the
* sum of the AccountBudgetSummary subtotal amounts,
* Invoice.adjustments_subtotal_amount_micros, and
* Invoice.regulatory_costs_subtotal_amount_micros.
* Starting with v6, the Invoice.regulatory_costs_subtotal_amount_micros is no
* longer included.
*
* @generated from protobuf field: optional int64 subtotal_amount_micros = 33;
*/
subtotalAmountMicros?: bigint;
/**
* Output only. The sum of all taxes on the invoice, in micros. This equals the sum of the
* AccountBudgetSummary tax amounts, plus taxes not associated with a specific
* account budget.
*
* @generated from protobuf field: optional int64 tax_amount_micros = 34;
*/
taxAmountMicros?: bigint;
/**
* Output only. The total amount, in micros. This equals the sum of
* Invoice.subtotal_amount_micros and Invoice.tax_amount_micros.
* Starting with v6, Invoice.regulatory_costs_subtotal_amount_micros is
* also added as it is no longer already included in
* Invoice.tax_amount_micros.
*
* @generated from protobuf field: optional int64 total_amount_micros = 35;
*/
totalAmountMicros?: bigint;
/**
* Output only. The resource name of the original invoice corrected, wrote off, or canceled
* by this invoice, if applicable. If `corrected_invoice` is set,
* `replaced_invoices` will not be set.
* Invoice resource names have the form:
*
* `customers/{customer_id}/invoices/{invoice_id}`
*
* @generated from protobuf field: optional string corrected_invoice = 36;
*/
correctedInvoice?: string;
/**
* Output only. The resource name of the original invoice(s) being rebilled or replaced by
* this invoice, if applicable. There might be multiple replaced invoices due
* to invoice consolidation. The replaced invoices may not belong to the same
* payments account. If `replaced_invoices` is set, `corrected_invoice` will
* not be set.
* Invoice resource names have the form:
*
* `customers/{customer_id}/invoices/{invoice_id}`
*
* @generated from protobuf field: repeated string replaced_invoices = 37;
*/
replacedInvoices: string[];
/**
* Output only. The URL to a PDF copy of the invoice. Users need to pass in their OAuth
* token to request the PDF with this URL.
*
* @generated from protobuf field: optional string pdf_url = 38;
*/
pdfUrl?: string;
/**
* Output only. The list of summarized account budget information associated with this
* invoice.
*
* @generated from protobuf field: repeated google.ads.googleads.v11.resources.Invoice.AccountBudgetSummary account_budget_summaries = 18;
*/
accountBudgetSummaries: Invoice_AccountBudgetSummary[];
}
/**
* Represents a summarized account budget billable cost.
*
* @generated from protobuf message google.ads.googleads.v11.resources.Invoice.AccountBudgetSummary
*/
export interface Invoice_AccountBudgetSummary {
/**
* Output only. The resource name of the customer associated with this account budget.
* This contains the customer ID, which appears on the invoice PDF as
* "Account ID".
* Customer resource names have the form:
*
* `customers/{customer_id}`
*
* @generated from protobuf field: optional string customer = 10;
*/
customer?: string;
/**
* Output only. The descriptive name of the account budget's customer. It appears on the
* invoice PDF as "Account".
*
* @generated from protobuf field: optional string customer_descriptive_name = 11;
*/
customerDescriptiveName?: string;
/**
* Output only. The resource name of the account budget associated with this summarized
* billable cost.
* AccountBudget resource names have the form:
*
* `customers/{customer_id}/accountBudgets/{account_budget_id}`
*
* @generated from protobuf field: optional string account_budget = 12;
*/
accountBudget?: string;
/**
* Output only. The name of the account budget. It appears on the invoice PDF as "Account
* budget".
*
* @generated from protobuf field: optional string account_budget_name = 13;
*/
accountBudgetName?: string;
/**
* Output only. The purchase order number of the account budget. It appears on the
* invoice PDF as "Purchase order".
*
* @generated from protobuf field: optional string purchase_order_number = 14;
*/
purchaseOrderNumber?: string;
/**
* Output only. The pretax subtotal amount attributable to this budget during the service
* period, in micros.
*
* @generated from protobuf field: optional int64 subtotal_amount_micros = 15;
*/
subtotalAmountMicros?: bigint;
/**
* Output only. The tax amount attributable to this budget during the service period, in
* micros.
*
* @generated from protobuf field: optional int64 tax_amount_micros = 16;
*/
taxAmountMicros?: bigint;
/**
* Output only. The total amount attributable to this budget during the service period,
* in micros. This equals the sum of the account budget subtotal amount and
* the account budget tax amount.
*
* @generated from protobuf field: optional int64 total_amount_micros = 17;
*/
totalAmountMicros?: bigint;
/**
* Output only. The billable activity date range of the account budget, within the
* service date range of this invoice. The end date is inclusive. This can
* be different from the account budget's start and end time.
*
* @generated from protobuf field: google.ads.googleads.v11.common.DateRange billable_activity_date_range = 9;
*/
billableActivityDateRange?: DateRange;
}
declare class Invoice$Type extends MessageType<Invoice> {
constructor();
create(value?: PartialMessage<Invoice>): Invoice;
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Invoice): Invoice;
internalBinaryWrite(message: Invoice, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
* @generated MessageType for protobuf message google.ads.googleads.v11.resources.Invoice
*/
export declare const Invoice: Invoice$Type;
declare class Invoice_AccountBudgetSummary$Type extends MessageType<Invoice_AccountBudgetSummary> {
constructor();
create(value?: PartialMessage<Invoice_AccountBudgetSummary>): Invoice_AccountBudgetSummary;
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Invoice_AccountBudgetSummary): Invoice_AccountBudgetSummary;
internalBinaryWrite(message: Invoice_AccountBudgetSummary, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
* @generated MessageType for protobuf message google.ads.googleads.v11.resources.Invoice.AccountBudgetSummary
*/
export declare const Invoice_AccountBudgetSummary: Invoice_AccountBudgetSummary$Type;
export {};