खाते के बजट की मदद से, यह कंट्रोल किया जा सकता है कि कोई खाता किसी समयावधि में कितना खर्च कर सकता है. इसके लिए, बजट की प्रॉपर्टी तय की जाती हैं. जैसे, खर्च की सीमा, शुरू होने का समय, और खत्म होने का समय. इनका इस्तेमाल, खाते के किसी एक बिलिंग सेटअप के लिए किया जाना चाहिए. इससे यह पता चलता है कि किस पेमेंट्स खाते के लिए बिलिंग की जाएगी. Google Ads API में AccountBudget को बनाया, अपडेट किया, और हटाया जा सकता है. इसके लिए, AccountBudgetProposal ऑब्जेक्ट भेजे जाते हैं.
AccountBudget ऑब्जेक्ट, प्रपोज़ल लागू करने के बाद मिले नतीजे को दिखाते हैं. प्रस्ताव स्वीकार होने के बाद, उसमें किए गए बदलावों (किसी भी तरह के अडजस्टमेंट के आधार पर) से नया खाता बजट बनेगा या मौजूदा खाता बजट अपडेट होगा. यह अनुरोध में बताई गई proposal_type पर निर्भर करता है.
AccountBudgetProposalType |
ब्यौरा |
|---|---|
CREATE |
खाते का नया बजट बनाता है. इसका इस्तेमाल करने से पहले, इसे मंज़ूरी मिलनी चाहिए. |
UPDATE |
इस तरीके का इस्तेमाल करके, किसी मौजूदा खाते के बजट में बदलाव किया जा सकता है. |
END |
इस फ़ंक्शन का इस्तेमाल करके, खाते के बजट के खत्म होने का समय, मौजूदा समय पर सेट किया जाता है. |
REMOVE |
खाते के बजट को शुरू होने से पहले ही हटा देता है. |
यहां दिए गए सेक्शन में, हर तरह के प्रपोज़ल के बारे में बताया गया है.
खाते के बजट का प्रस्ताव बनाना
नया खाता बजट बनाने से, ग्राहक के खर्च करने के तरीके को कंट्रोल किया जा सकता है. नई AccountBudgetProposal बनाने के लिए, AccountBudgetProposalService का इस्तेमाल करें. आपको proposal_type को CREATE पर सेट करना होगा, ताकि यह बताया जा सके कि नया बजट बनाया जाना चाहिए. अन्य कार्रवाइयों के लिए, इस गाइड का मैनेजमेंट सेक्शन देखें.
पेमेंट्स खाते के साथ बिलिंग सेटअप का इस्तेमाल करना न भूलें. साथ ही, यह भी ध्यान रखें कि आपके पास उस खाते में बदलाव करने का ऐक्सेस हो. ज़्यादा जानकारी के लिए, बिलिंग सेटअप गाइड देखें.
यहां दिए गए उदाहरण में, नया बजट प्रपोज़ल बनाने का तरीका बताया गया है.
Java
private void runExample(GoogleAdsClient googleAdsClient, long customerId, long billingSetupId) { // Creates an AccountBudgetProposal. This will be reviewed offline by Google Ads, and if // approved will become an AccountBudget. AccountBudgetProposal proposal = AccountBudgetProposal.newBuilder() .setBillingSetup(ResourceNames.billingSetup(customerId, billingSetupId)) .setProposalType(AccountBudgetProposalType.CREATE) .setProposedName("Account Budget (example)") // Specifies the account budget starts immediately. .setProposedStartTimeType(TimeType.NOW) // Alternatively you can specify a specific start time. Refer to the // AccountBudgetProposal // resource documentation for allowed formats. // // .setProposedStartDateTime("2020-01-02 03:04:05") // Specifies that the budget runs forever. .setProposedEndTimeType(TimeType.FOREVER) // Alternatively you can specify a specific end time. Allowed formats are as above. // .setProposedEndDateTime("2021-02-03 04:05:06") // Optional: sets notes for the budget. These are free text and do not effect budget // delivery. // .setProposedNotes("Received prepayment of $0.01") // Sets the spending limit to 0.01, measured in the Google Ads account currency. .setProposedSpendingLimitMicros(10_000) // Optional: sets PO number for record keeping. This value is at the user's // discretion, and has no effect on Google Billing & Payments. // .setProposedPurchaseOrderNumber("PO number 12345") .build(); // Creates an operation which will add the new AccountBudgetProposal. AccountBudgetProposalOperation operation = AccountBudgetProposalOperation.newBuilder().setCreate(proposal).build(); try (AccountBudgetProposalServiceClient accountBudgetProposalServiceClient = googleAdsClient.getLatestVersion().createAccountBudgetProposalServiceClient()) { // Sends the request to the Account Budget Proposal Service. MutateAccountBudgetProposalResponse response = accountBudgetProposalServiceClient.mutateAccountBudgetProposal( String.valueOf(customerId), operation); System.out.printf( "Account budget proposal created: %s.%n", response.getResult().getResourceName()); } }
C#
public void Run(GoogleAdsClient client, long customerId, long billingSetupId) { // Get the AccountBudgetProposalServiceClient. AccountBudgetProposalServiceClient proposalService = client.GetService(Services.V25.AccountBudgetProposalService); // Create an AccountBudgetProposal. The proposal will be reviewed offline by Google Ads, // and if approved will become an AccountBudget. AccountBudgetProposal proposal = new AccountBudgetProposal() { BillingSetup = ResourceNames.BillingSetup(customerId, billingSetupId), ProposalType = AccountBudgetProposalType.Create, ProposedName = "Account Budget (example)", // Specify the account budget starts immediately ProposedStartTimeType = TimeType.Now, // Alternatively, you can specify a specific start time. Refer to the // AccountBudgetProposal resource documentation for allowed formats. // //ProposedStartDateTime = "2020-01-02 03:04:05", // Specify that the budget runs forever. ProposedEndTimeType = TimeType.Forever, // Alternatively you can specify a specific end time. Allowed formats are as above. //ProposedEndDateTime = "2021-02-03 04:05:06", // Optional: set notes for the budget. These are free text and do not effect budget // delivery. //ProposedNotes = "Received prepayment of $0.01", // Set the spending limit to 0.01, measured in the Google Ads account currency. ProposedSpendingLimitMicros = 10_000 // Optional: set PO number for record keeping. This value is at the user's // discretion, and has no effect on Google Billing & Payments. //ProposedPurchaseOrderNumber = "PO number 12345" }; // Create an operation which will add the new AccountBudgetProposal AccountBudgetProposalOperation operation = new AccountBudgetProposalOperation() { Create = proposal }; try { // Send the request to the Account Budget Proposal Service. MutateAccountBudgetProposalResponse response = proposalService. MutateAccountBudgetProposal(customerId.ToString(), operation); // Display the results. Console.WriteLine($"Account budget proposal '{response.Result.ResourceName}' " + "was created."); } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; } }
PHP
public static function runExample( GoogleAdsClient $googleAdsClient, int $customerId, int $billingSetupId ) { // Constructs an account budget proposal. $accountBudgetProposal = new AccountBudgetProposal([ 'billing_setup' => ResourceNames::forBillingSetup($customerId, $billingSetupId), 'proposal_type' => AccountBudgetProposalType::CREATE, 'proposed_name' => 'Account Budget (example)', // Specifies the account budget starts immediately. 'proposed_start_time_type' => TimeType::NOW, // Alternatively you can specify a specific start time. Refer to the // AccountBudgetProposal class for allowed formats. // // 'proposed_start_date_time' => '2020-01-02 03:04:05', // Specify that the budget runs forever. 'proposed_end_time_type' => TimeType::FOREVER, // Alternatively you can specify a specific end time. Allowed formats are as above. // 'proposed_end_date_time' => '2021-02-03 04:05:06', // Optional: set notes for the budget. These are free text and do not effect budget // delivery. // 'proposed_notes' => 'Received prepayment of $0.01', // Optional: set PO number for record keeping. This value is at the user's // discretion, and has no effect on Google Billing & Payments. // 'proposed_purchase_order_number' => 'PO number 12345', // Set the spending limit to 0.01, measured in the Google Ads account currency. 'proposed_spending_limit_micros' => 10000 ]); $accountBudgetProposalOperation = new AccountBudgetProposalOperation(); $accountBudgetProposalOperation->setCreate($accountBudgetProposal); // Issues a mutate request to add the account budget proposal. $accountBudgetProposalServiceClient = $googleAdsClient->getAccountBudgetProposalServiceClient(); $response = $accountBudgetProposalServiceClient->mutateAccountBudgetProposal( MutateAccountBudgetProposalRequest::build($customerId, $accountBudgetProposalOperation) ); printf( "Added an account budget proposal with resource name '%s'.%s", $response->getResult()->getResourceName(), PHP_EOL ); }
Python
def main(client: GoogleAdsClient, customer_id: str, billing_setup_id: str): account_budget_proposal_service = client.get_service( "AccountBudgetProposalService" ) billing_setup_service = client.get_service("BillingSetupService") account_budget_proposal_operation = client.get_type( "AccountBudgetProposalOperation" ) proposal = account_budget_proposal_operation.create proposal.proposal_type = client.enums.AccountBudgetProposalTypeEnum.CREATE proposal.billing_setup = billing_setup_service.billing_setup_path( customer_id, billing_setup_id ) proposal.proposed_name = "Account Budget Proposal (example)" # Specify the account budget starts immediately proposal.proposed_start_time_type = client.enums.TimeTypeEnum.NOW # Alternatively you can specify a specific start time. Refer to the # AccountBudgetProposal resource documentation for allowed formats. # # proposal.proposed_start_date_time = '2020-01-02 03:04:05' # Specify that the budget runs forever proposal.proposed_end_time_type = client.enums.TimeTypeEnum.FOREVER # Alternatively you can specify a specific end time. Allowed formats are as # above. # # proposal.proposed_end_date_time = '2021-01-02 03:04:05' # Optional: set notes for the budget. These are free text and do not effect # budget delivery. # # proposal.proposed_notes = 'Received prepayment of $0.01' proposal.proposed_spending_limit_micros = 10000 account_budget_proposal_response = ( account_budget_proposal_service.mutate_account_budget_proposal( customer_id=customer_id, operation=account_budget_proposal_operation, ) ) print( "Created account budget proposal " f'"{account_budget_proposal_response.result.resource_name}".' )
Ruby
def add_account_budget_proposal(customer_id, billing_setup_id) # GoogleAdsClient will read a config file from # ENV['HOME']/google_ads_config.rb when called without parameters client = Google::Ads::GoogleAds::GoogleAdsClient.new operation = client.operation.create_resource.account_budget_proposal do |proposal| proposal.billing_setup = client.path.billing_setup(customer_id, billing_setup_id) proposal.proposal_type = :CREATE proposal.proposed_name = 'Account Budget (example)' # Specify the account budget starts immediately proposal.proposed_start_time_type = :NOW # Alternatively you can specify a specific start time. Refer to the # AccountBudgetProposal resource documentation for allowed formats. # # proposal.proposed_start_date_time = '2020-01-02 03:04:05' # Specify that the budget runs forever. proposal.proposed_end_time_type = :FOREVER # Alternatively you can specify a specific end time. Allowed formats are as # above. # # proposal.proposed_end_date_time = '2021-01-02 03:04:05' # Optional: set notes for the budget. These are free text and do not affect # budget delivery. # # proposal.proposed_notes = 'Received prepayment of $0.01' # Set the spending limit to 0.01, measured in the Google Ads account currency. proposal.proposed_spending_limit_micros = 10_000 end account_budget_proposal_service = client.service.account_budget_proposal # Add budget proposal. response = account_budget_proposal_service.mutate_account_budget_proposal( customer_id: customer_id, operation: operation, ) puts sprintf("Created budget proposal %s.", response.results.first.resource_name) end
Perl
sub add_account_budget_proposal { my ($api_client, $customer_id, $billing_setup_id) = @_; # Create an account budget proposal. my $account_budget_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ billingSetup => Google::Ads::GoogleAds::V25::Utils::ResourceNames::billing_setup( $customer_id, $billing_setup_id ), proposalType => CREATE, proposedName => "Account Budget (example)", # Specify that the account budget starts immediately. proposedStartTimeType => NOW, # Alternatively you can specify a specific start time. Refer to the # AccountBudgetProposal class for allowed formats. # # proposedStartDateTime => "2020-01-02 03:04:05", # Specify that the account budget runs forever. proposedEndDateTime => FOREVER, # Alternatively you can specify a specific end time. Allowed formats are as below. # proposedEndDateTime => "2021-02-03 04:05:06", # Optional: set notes for the budget. These are free text and do not effect budget # delivery. # proposedNotes => "Received prepayment of $0.01", # Optional: set PO number for record keeping. This value is at the user's # discretion, and has no effect on Google Billing & Payments. # proposedPurchaseOrderNumber => "PO number 12345", # Set the spending limit to 0.01, measured in the Google Ads account currency. proposedSpendingLimitMicros => 10000 }); # Create an account budget proposal operation. my $account_budget_proposal_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({ create => $account_budget_proposal }); # Add the account budget proposal. my $account_budget_proposal_response = $api_client->AccountBudgetProposalService()->mutate({ customerId => $customer_id, operation => $account_budget_proposal_operation }); printf "Created account budget proposal '%s'.\n", $account_budget_proposal_response->{result}{resourceName}; return 1; }
curl
खाते के बजट के प्रस्ताव के अनुरोधों में, proposed_start_date_time और proposed_end_date_time हमेशा ग्राहक के खाते के टाइमज़ोन में होते हैं. आपके पास टाइमज़ोन तय करने का विकल्प नहीं होता. खर्च की सुझाई गई सीमा को हमेशा खाते की मुद्रा में मापा जाता है. इसे "माइक्रो" यूनिट का इस्तेमाल करके तय करें. इसलिए, 1.00 डॉलर = 10,00,000 माइक्रो.
आपके पास परचेज़ ऑर्डर नंबर शामिल करने का विकल्प होता है. यह नंबर, इनवॉइस में इन शुल्कों के बगल में दिखेगा. इससे बजट डिलीवरी पर कोई असर नहीं पड़ता.
खाते के बजट के लिए, मंज़ूरी के लिए सबमिट किए गए किसी प्रस्ताव को हटाना
खाते के बजट के किसी ऐसे प्रस्ताव को हटाया जा सकता है जिसे मंज़ूरी नहीं मिली है. इसके लिए, खाते के बजट के प्रस्ताव के संसाधन के नाम के साथ AccountBudgetProposalOperation.remove अनुरोध भेजें. हालांकि, ध्यान दें कि बजट के सुझाव आम तौर पर कुछ ही मिनटों में लागू हो जाते हैं.
AccountBudgetProposalOperation operation = AccountBudgetProposalOperation.newBuilder() .setRemove(ResourceNames.accountBudgetProposal(customerId, accountBudgetProposalId)) .build(); // Send request to Google Ads API (not shown).
AccountBudgetProposalOperation operation = new AccountBudgetProposalOperation()
{
Remove = ResourceNames.AccountBudgetProposal(customerId, accountBudgetProposalId)
};
// Send request to Google Ads API (not shown).$accountBudgetProposalOperation = new AccountBudgetProposalOperation(); $accountBudgetProposalOperation->setRemove(ResourceNames::forAccountBudgetProposal($customerId, $accountBudgetProposalId)); // Send request to Google Ads API (not shown).
account_budget_proposal_service = client.get_service('AccountBudgetProposalService') account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') account_budget_proposal_operation.remove = ( account_budget_proposal_service.account_budget_proposal_path( customer_id, account_budget_proposal_id ) ) # Send request to Google Ads API (not shown).
operation = client.operation.remove_resource.account_budget_proposal(client.path.account_budget_proposal(customer_id, account_budget_proposal_id))
# Send request to Google Ads API (not shown).my $account_budget_proposal_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({ remove => Google::Ads::GoogleAds::V25::Utils::ResourceNames::account_budget_proposal( $customer_id, $account_budget_proposal_id ) }); # Send request to Google Ads API (not shown).
अगर आपने मूल प्रस्ताव में कोई गलती की है, तो UPDATE ऑपरेशन के तौर पर प्रस्ताव को फिर से सबमिट किया जा सकता है. मौजूदा खाते के बजट को अपडेट करना लेख पढ़ें.
मौजूदा खाते के बजट वापस पाना
Google Ads क्वेरी लैंग्वेज (GAQL) की यह क्वेरी, किसी खाते के सभी मौजूदा खाते के बजट फ़ेच करती है:
SELECT
account_budget.resource_name,
account_budget.id,
account_budget.name,
account_budget.status,
account_budget.billing_setup,
account_budget.approved_spending_limit_micros,
account_budget.approved_spending_limit_type,
account_budget.proposed_spending_limit_micros,
account_budget.proposed_spending_limit_type,
account_budget.adjusted_spending_limit_micros,
account_budget.adjusted_spending_limit_type,
account_budget.approved_start_date_time,
account_budget.proposed_start_date_time,
account_budget.approved_end_date_time,
account_budget.approved_end_time_type,
account_budget.proposed_end_date_time,
account_budget.proposed_end_time_type
FROM
account_budget
खाते के बजट की शुरुआत और खत्म होने का समय, खर्च की सीमा वगैरह बताने वाले फ़ील्ड के कई वैरिएंट होते हैं. इनके प्रीफ़िक्स proposed और approved जैसे होते हैं. इनकी मदद से, शुरुआत में सुझाई गई वैल्यू की तुलना, मंज़ूर की गई वैल्यू से की जा सकती है. खर्च की सीमा में अतिरिक्त फ़ील्ड होते हैं. इनमें adjusted प्रीफ़िक्स होता है. इससे मंज़ूर की गई रकम में किसी भी तरह के अडजस्टमेंट के बाद, खर्च की मौजूदा सीमा का पता चलता है.
खाते के बजट की मंज़ूर की गई खर्च सीमा को समय-समय पर अडजस्ट किया जा सकता है. ऐसा इसलिए किया जाता है, ताकि बजट से ज़्यादा खर्च होने, अमान्य क्लिक गतिविधि, और प्रमोशनल कूपन जैसी चीज़ों के लिए अलग-अलग क्रेडिट दिख सकें. Google Ads के सहायता केंद्र में, खाते के बजट और खाते के क्रेडिट और अडजस्टमेंट के बारे में ज़्यादा जानकारी मिल सकती है.
जिन नए खाते के बजट को मंज़ूरी मिलना बाकी है वे भी pending_proposal नेस्ट किए गए मैसेज में दिखेंगे. साथ ही, जिन मौजूदा खाते के बजट में अपडेट होना बाकी है वे भी इस मैसेज में दिखेंगे. इस मैसेज के सब-फ़ील्ड को GAQL क्वेरी में चुना जा सकता है. जैसे, account_budget_proposal को account_budget.pending_proposal.account_budget_proposal के तौर पर क्वेरी किया जाता है. यह AccountBudgetProposal ऑब्जेक्ट के संसाधन का नाम है.
मौजूदा खाता बजट मैनेज करना
किसी ग्राहक के लिए खाते का बजट बनाने के बाद, बजट के पैरामीटर मैनेज करने के लिए AccountBudgetProposalService का इस्तेमाल किया जा सकता है. मैनेजमेंट से जुड़ी सबसे आम कार्रवाइयां, proposed_spending_limit_micros और proposed_end_date_time फ़ील्ड को अपडेट करना है. बदले जा सकने वाले फ़ील्ड की पूरी सूची देखने के लिए, AccountBudgetProposal रेफ़रंस दस्तावेज़ देखें.
आपके पास खाते के मौजूदा बजट को अपडेट करने या पूरी तरह से नया बजट बनाने का विकल्प होता है. दोनों विकल्प यहां दिखाए गए हैं.
किसी मौजूदा खाते के बजट को अपडेट करना
खाते के बजट के मौजूदा फ़ील्ड को अपडेट करने के लिए, AccountBudgetProposal ऑब्जेक्ट भेजें. इनमें AccountBudgetProposalType को UPDATE पर सेट किया गया हो. ध्यान दें कि आपको ऑपरेशन के update_maskआर्ग्युमेंट में, अपडेट किए जा रहे फ़ील्ड भी बताने होंगे.
यहां दिए गए स्निपेट में, मौजूदा खाते के बजट के लिए सुझाई गई खर्च की सीमा को अपडेट करने का तरीका बताया गया है.
AccountBudgetProposal proposal = AccountBudgetProposal.newBuilder()
.setProposalType(AccountBudgetProposalType.UPDATE)
.setAccountBudget(accountBudget.getResourceName())
.setProposedSpendingLimitMicros(
accountBudget.getProposedSpendingLimitMicros() + increaseAmount)
.build();
AccountBudgetProposalOperation operation = AccountBudgetProposalOperation.newBuilder()
.setCreate(proposal)
.setUpdateMask(
FieldMask.newBuilder().addAllPaths(Arrays.asList("proposed_spending_limit_micros")).build())
.build();
// Send request to Google Ads API (not shown).AccountBudgetProposal proposal = new AccountBudgetProposal()
{
ProposalType = AccountBudgetProposalType.Update,
AccountBudget = accountBudget.ResourceName,
ProposedSpendingLimitMicros = accountBudget.ProposedSpendingLimitMicros + increaseAmount
};
AccountBudgetProposalOperation operation = new AccountBudgetProposalOperation()
{
Create = proposal,
UpdateMask = new FieldMask()
{
Paths = { "proposed_spending_limit_micros" }
}
};
// Send request to Google Ads API (not shown).$accountBudgetProposal = new AccountBudgetProposal([ 'proposal_type' => AccountBudgetProposalType::UPDATE, 'account_budget' => $accountBudget->getResourceName(), 'proposed_spending_limit_micros' => $accountBudget->getProposedSpendingLimitMicros() + $increaseAmount ]); $accountBudgetProposalOperation = new AccountBudgetProposalOperation(); $accountBudgetProposalOperation->setCreate($accountBudgetProposal); $accountBudgetProposalOperation->setUpdateMask( FieldMasks::allSetFieldsOf($accountBudgetProposal) ); // Send request to Google Ads API (not shown).
account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') proposal = account_budget_proposal_operation.create proposal.proposal_type = client.get_type('AccountBudgetProposalTypeEnum').AccountBudgetProposalType.UPDATE proposal.account_budget = account_budget.resource_name proposal.proposed_spending_limit_micros = account_budget.proposed_spending_limit_micros + increase_amount field_mask = protobuf_helpers.field_mask(None, proposal._pb) account_budget_proposal_operation.update_mask.CopyFrom(field_mask) # Send request to Google Ads API (not shown).
proposal = client.resource.account_budget_proposal proposal.proposal_type = :UPDATE mask = client.field_mask.with proposal do proposal.account_budget = account_budget.resource_name proposal.proposed_spending_limit_micros = account_budget.proposed_spending_limit_micros + increase_amount end operation = client.operation.account_budget_proposal do |op| op.create = proposal op.update_mask = mask end # Send request to Google Ads API (not shown).
my $account_budget_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ proposalType => UPDATE, accountBudget => $account_budget->{resourceName}, proposedSpendingLimitMicros => $account_budget->{proposedSpendingLimitMicros} + $increaseAmount}); my $account_budget_proposal_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({ create => $account_budget_proposal, updateMask => all_set_fields_of($account_budget_proposal)}); # Send request to Google Ads API (not shown).
खाते के बजट को एक-दूसरे से लिंक करना
मौजूदा बजट को अपडेट करने के बजाय, Google Ads आपको एक के बाद एक कई खाते के बजट चलाने की सुविधा देता है. यहां दिए गए उदाहरण में, एक ग्राहक के लिए हर महीने खर्च करने की अलग-अलग सीमाएं तय की गई हैं.
इसके लिए, तीन AccountBudgetProposal ऑब्जेक्ट बनाएं और हर AccountBudgetProposalOperation को अलग MutateAccountBudgetProposal अनुरोध में AccountBudgetProposalService को भेजें. ऐसा इसलिए, क्योंकि MutateAccountBudgetProposalRequest हर कॉल के लिए सिर्फ़ एक operation स्वीकार करता है.
नीचे दिए गए स्निपेट में, मौजूदा बिलिंग सेटअप का इस्तेमाल करके ऐसी चेन बनाने का तरीका बताया गया है.
AccountBudgetProposal proposalMay = AccountBudgetProposal.newBuilder() .setBillingSetup(ResourceNames.billingSetup(customerId, billingSetupId)) .setProposalType(AccountBudgetProposalType.CREATE) .setProposedName("May budget") .setProposedStartDateTime("2027-05-01 00:00:00") .setProposedEndDateTime("2027-06-01 00:00:00") .setProposedSpendingLimitMicros(1_000_000_000L) .build(); AccountBudgetProposalOperation operationMay = AccountBudgetProposalOperation.newBuilder() .setCreate(proposalMay) .build(); AccountBudgetProposal proposalJune = AccountBudgetProposal.newBuilder() .setBillingSetup(ResourceNames.billingSetup(customerId, billingSetupId)) .setProposalType(AccountBudgetProposalType.CREATE) .setProposedName("June budget") .setProposedStartDateTime("2027-06-01 00:00:00") .setProposedEndDateTime("2027-07-01 00:00:00") .setProposedSpendingLimitMicros(5_000_000_000L) .build(); AccountBudgetProposalOperation operationJune = AccountBudgetProposalOperation.newBuilder() .setCreate(proposalJune) .build(); AccountBudgetProposal proposalJuly = AccountBudgetProposal.newBuilder() .setBillingSetup(ResourceNames.billingSetup(customerId, billingSetupId)) .setProposalType(AccountBudgetProposalType.CREATE) .setProposedName("July budget") .setProposedStartDateTime("2027-07-01 00:00:00") .setProposedEndDateTime("2027-08-01 00:00:00") .setProposedSpendingLimitMicros(1_000_000_000L) .build(); AccountBudgetProposalOperation operationJuly = AccountBudgetProposalOperation.newBuilder() .setCreate(proposalJuly) .build(); // Send requests to Google Ads API, one MutateAccountBudgetProposal call per operation (not shown).
AccountBudgetProposal proposalMay = new AccountBudgetProposal() { BillingSetup = ResourceNames.BillingSetup(customerId, billingSetupId), ProposalType = AccountBudgetProposalType.Create, ProposedName = "May budget", ProposedStartDateTime = "2027-05-01 00:00:00", ProposedEndDateTime = "2027-06-01 00:00:00", ProposedSpendingLimitMicros = 1_000_000_000 }; AccountBudgetProposalOperation operationMay = new AccountBudgetProposalOperation() { Create = proposalMay }; AccountBudgetProposal proposalJune = new AccountBudgetProposal() { BillingSetup = ResourceNames.BillingSetup(customerId, billingSetupId), ProposalType = AccountBudgetProposalType.Create, ProposedName = "June budget", ProposedStartDateTime = "2027-06-01 00:00:00", ProposedEndDateTime = "2027-07-01 00:00:00", ProposedSpendingLimitMicros = 5_000_000_000 }; AccountBudgetProposalOperation operationJune = new AccountBudgetProposalOperation() { Create = proposalJune }; AccountBudgetProposal proposalJuly = new AccountBudgetProposal() { BillingSetup = ResourceNames.BillingSetup(customerId, billingSetupId), ProposalType = AccountBudgetProposalType.Create, ProposedName = "July budget", ProposedStartDateTime = "2027-07-01 00:00:00", ProposedEndDateTime = "2027-08-01 00:00:00", ProposedSpendingLimitMicros = 1_000_000_000 }; AccountBudgetProposalOperation operationJuly = new AccountBudgetProposalOperation() { Create = proposalJuly }; // Send requests to Google Ads API, one MutateAccountBudgetProposal call per operation (not shown).
$proposalMay = new AccountBudgetProposal([ 'billing_setup' => ResourceNames::forBillingSetup($customerId, $billingSetupId), 'proposal_type' => AccountBudgetProposalType::CREATE, 'proposed_name' => 'May budget', 'proposed_start_date_time' => '2027-05-01 00:00:00', 'proposed_end_date_time' => '2027-06-01 00:00:00', 'proposed_spending_limit_micros' => 1000000000 ]); $operationMay = new AccountBudgetProposalOperation(); $operationMay->setCreate($proposalMay); $proposalJune = new AccountBudgetProposal([ 'billing_setup' => ResourceNames::forBillingSetup($customerId, $billingSetupId), 'proposal_type' => AccountBudgetProposalType::CREATE, 'proposed_name' => 'June budget', 'proposed_start_date_time' => '2027-06-01 00:00:00', 'proposed_end_date_time' => '2027-07-01 00:00:00', 'proposed_spending_limit_micros' => 5000000000 ]); $operationJune = new AccountBudgetProposalOperation(); $operationJune->setCreate($proposalJune); $proposalJuly = new AccountBudgetProposal([ 'billing_setup' => ResourceNames::forBillingSetup($customerId, $billingSetupId), 'proposal_type' => AccountBudgetProposalType::CREATE, 'proposed_name' => 'July budget', 'proposed_start_date_time' => '2027-07-01 00:00:00', 'proposed_end_date_time' => '2027-08-01 00:00:00', 'proposed_spending_limit_micros' => 1000000000 ]); $operationJuly = new AccountBudgetProposalOperation(); $operationJuly->setCreate($proposalJuly); // Send requests to Google Ads API, one MutateAccountBudgetProposal call per operation (not shown).
billing_setup_service = client.get_service('BillingSetupService') may_account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') proposal_may = may_account_budget_proposal_operation.create proposal_may.proposal_type = client.get_type('AccountBudgetProposalTypeEnum').AccountBudgetProposalType.CREATE proposal_may.billing_setup = billing_setup_service.billing_setup_path(customer_id, billing_setup_id) proposal_may.proposed_name = 'May budget' proposal_may.proposed_start_date_time = '2027-05-01 00:00:00' proposal_may.proposed_end_date_time = '2027-06-01 00:00:00' proposal_may.proposed_spending_limit_micros = 1000000000 june_account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') proposal_june = june_account_budget_proposal_operation.create proposal_june.proposal_type = client.get_type('AccountBudgetProposalTypeEnum').AccountBudgetProposalType.CREATE proposal_june.billing_setup = billing_setup_service.billing_setup_path(customer_id, billing_setup_id) proposal_june.proposed_name = 'June budget' proposal_june.proposed_start_date_time = '2027-06-01 00:00:00' proposal_june.proposed_end_date_time = '2027-07-01 00:00:00' proposal_june.proposed_spending_limit_micros = 5000000000 july_account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') proposal_july = july_account_budget_proposal_operation.create proposal_july.proposal_type = client.get_type('AccountBudgetProposalTypeEnum').AccountBudgetProposalType.CREATE proposal_july.billing_setup = billing_setup_service.billing_setup_path(customer_id, billing_setup_id) proposal_july.proposed_name = 'July budget' proposal_july.proposed_start_date_time = '2027-07-01 00:00:00' proposal_july.proposed_end_date_time = '2027-08-01 00:00:00' proposal_july.proposed_spending_limit_micros = 1000000000 # Send requests to Google Ads API, one MutateAccountBudgetProposal call per operation (not shown).
operation_may = client.operation.create_resource.account_budget_proposal do |proposal| proposal.billing_setup = client.path.billing_setup(customer_id, billing_setup_id) proposal.proposal_type = :CREATE proposal.proposed_name = 'May budget' proposal.proposed_start_date_time = '2027-05-01 00:00:00' proposal.proposed_end_date_time = '2027-06-01 00:00:00' proposal.proposed_spending_limit_micros = 1_000_000_000 end operation_june = client.operation.create_resource.account_budget_proposal do |proposal| proposal.billing_setup = client.path.billing_setup(customer_id, billing_setup_id) proposal.proposal_type = :CREATE proposal.proposed_name = 'June budget' proposal.proposed_start_date_time = '2027-06-01 00:00:00' proposal.proposed_end_date_time = '2027-07-01 00:00:00' proposal.proposed_spending_limit_micros = 5_000_000_000 end operation_july = client.operation.create_resource.account_budget_proposal do |proposal| proposal.billing_setup = client.path.billing_setup(customer_id, billing_setup_id) proposal.proposal_type = :CREATE proposal.proposed_name = 'July budget' proposal.proposed_start_date_time = '2027-07-01 00:00:00' proposal.proposed_end_date_time = '2027-08-01 00:00:00' proposal.proposed_spending_limit_micros = 1_000_000_000 end # Send requests to Google Ads API, one MutateAccountBudgetProposal call per operation (not shown).
my $may_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ billingSetup => Google::Ads::GoogleAds::V25::Utils::ResourceNames::billing_setup( $customer_id, $billing_setup_id ), proposalType => CREATE, proposedName => "May budget", proposedStartDateTime => "2027-05-01 00:00:00", proposedEndDateTime => "2027-06-01 00:00:00", proposedSpendingLimitMicros => 1000000000 }); my $may_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({create => $may_proposal}); my $june_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ billingSetup => Google::Ads::GoogleAds::V25::Utils::ResourceNames::billing_setup( $customer_id, $billing_setup_id ), proposalType => CREATE, proposedName => "June budget", proposedStartDateTime => "2027-06-01 00:00:00", proposedEndDateTime => "2027-07-01 00:00:00", proposedSpendingLimitMicros => 5000000000 }); my $june_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({create => $june_proposal}); my $july_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ billingSetup => Google::Ads::GoogleAds::V25::Utils::ResourceNames::billing_setup( $customer_id, $billing_setup_id ), proposalType => CREATE, proposedName => "July budget", proposedStartDateTime => "2027-07-01 00:00:00", proposedEndDateTime => "2027-08-01 00:00:00", proposedSpendingLimitMicros => 1000000000 }); my $july_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({create => $july_proposal}); # Send requests to Google Ads API, one MutateAccountBudgetProposal call per operation (not shown).
ध्यान दें कि हर प्रस्ताव में AccountBudgetProposalType.CREATE का इस्तेमाल किया गया है. इससे एक ही बजट को तीन बार अपडेट करने के बजाय, तीन अलग-अलग बजट बन जाएंगे.
खाते के बजट खत्म करना
चालू खाता बजट को बंद किया जा सकता है. साथ ही, इसे चालू करने से पहले या मंज़ूरी मिलने से पहले पूरी तरह से हटाया जा सकता है.
चालू खाते के बजट को खत्म करना
चालू खाते के बजट को हटाया नहीं जा सकता. हालांकि, खत्म होने का समय मौजूदा समय पर सेट किया जा सकता है. इसके लिए, AccountBudgetProposalType.END के साथ एक प्रस्ताव भेजें.
यहां दिए गए स्निपेट में, मौजूदा खाते के बजट को खत्म करने का तरीका बताया गया है.
AccountBudgetProposal proposal = AccountBudgetProposal.newBuilder() .setProposalType(AccountBudgetProposalType.END) .setAccountBudget(accountBudget.getResourceName()) .build(); AccountBudgetProposalOperation operation = AccountBudgetProposalOperation.newBuilder() .setCreate(proposal) .build(); // Send request to Google Ads API (not shown).
AccountBudgetProposal proposal = new AccountBudgetProposal()
{
ProposalType = AccountBudgetProposalType.End,
AccountBudget = accountBudget.ResourceName
};
AccountBudgetProposalOperation operation = new AccountBudgetProposalOperation()
{
Create = proposal
};
// Send request to Google Ads API (not shown).$accountBudgetProposal = new AccountBudgetProposal([ 'proposal_type' => AccountBudgetProposalType::END, 'account_budget' => $accountBudget->getResourceName() ]); $accountBudgetProposalOperation = new AccountBudgetProposalOperation(); $accountBudgetProposalOperation->setCreate($accountBudgetProposal); // Send request to Google Ads API (not shown).
account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') proposal = account_budget_proposal_operation.create proposal.proposal_type = client.get_type('AccountBudgetProposalTypeEnum').AccountBudgetProposalType.END proposal.account_budget = account_budget.resource_name # Send request to Google Ads API (not shown).
operation = client.operation.create_resource.account_budget_proposal do |proposal| proposal.proposal_type = :END proposal.account_budget = account_budget.resource_name end # Send request to Google Ads API (not shown).
my $account_budget_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ proposalType => END, accountBudget => $account_budget->{resourceName} }); my $account_budget_proposal_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({create => $account_budget_proposal}); # Send request to Google Ads API (not shown).
यह खाते के बजट को अपडेट करने जैसा है. इसके लिए, खत्म होने की तारीख और समय को TimeType.NOW पर सेट करें.
खाते के बजट के शुरू होने से पहले, मंज़ूर किए गए बजट को हटाना
अगर आपने खाते के बजट का कोई ऐसा प्रस्ताव दिया है जिसे आने वाले समय में लागू किया जाना है, तो उसे लागू होने से पहले पूरी तरह से हटाया जा सकता है. इसके लिए, आपको AccountBudgetProposalType.REMOVE प्रस्ताव का टाइप भेजना होगा.
यहां दिए गए स्निपेट में, आने वाले समय के लिए तय किए गए मौजूदा खाते के बजट को हटाने का तरीका बताया गया है.
AccountBudgetProposal proposal = AccountBudgetProposal.newBuilder() .setProposalType(AccountBudgetProposalType.REMOVE) .setAccountBudget(accountBudget.getResourceName()) .build(); AccountBudgetProposalOperation operation = AccountBudgetProposalOperation.newBuilder() .setCreate(proposal) .build(); // Send request to Google Ads API (not shown).
AccountBudgetProposal proposal = new AccountBudgetProposal()
{
ProposalType = AccountBudgetProposalType.Remove,
AccountBudget = accountBudget.ResourceName
};
AccountBudgetProposalOperation operation = new AccountBudgetProposalOperation()
{
Create = proposal
};
// Send request to Google Ads API (not shown).$accountBudgetProposal = new AccountBudgetProposal([ 'proposal_type' => AccountBudgetProposalType::REMOVE, 'account_budget' => $accountBudget->getResourceName() ]); $accountBudgetProposalOperation = new AccountBudgetProposalOperation(); $accountBudgetProposalOperation->setCreate($accountBudgetProposal); // Send request to Google Ads API (not shown).
account_budget_proposal_operation = client.get_type('AccountBudgetProposalOperation') proposal = account_budget_proposal_operation.create proposal.proposal_type = client.get_type('AccountBudgetProposalTypeEnum').AccountBudgetProposalType.REMOVE proposal.account_budget = account_budget.resource_name # Send request to Google Ads API (not shown).
operation = client.operation.create_resource.account_budget_proposal do |proposal| proposal.proposal_type = :REMOVE proposal.account_budget = account_budget.resource_name end # Send request to Google Ads API (not shown).
my $account_budget_proposal = Google::Ads::GoogleAds::V25::Resources::AccountBudgetProposal->new({ proposalType => REMOVE, accountBudget => $account_budget->{resourceName} }); my $account_budget_proposal_operation = Google::Ads::GoogleAds::V25::Services::AccountBudgetProposalService::AccountBudgetProposalOperation ->new({create => $account_budget_proposal}); # Send request to Google Ads API (not shown).