प्रोग्रामेटिक

इस गाइड में, सभी उपयोगकर्ताओं के लिए प्रोग्रामैटिक डायरेक्ट सुविधाओं का इस्तेमाल कर सकते हैं. इसमें प्रस्ताव बनाने और उसे पूरा करने का तरीका बताया गया है मोल-भाव न करें.

Primer

प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस का प्रस्ताव, Google Ad Manager के किसी ऑर्डर के जैसा ही होता है. प्रोग्रामेटिक प्रस्ताव आपके और खरीदार के बीच प्रस्तावित लेन-देन के बारे में व्यापक जानकारी शामिल होनी चाहिए. एक प्रस्ताव, अपने लाइन आइटम के साथ, किसी आइटम के लिए इन्वेंट्री के ऑफ़र को दिखाता है खरीदार.

ज़्यादा जानकारी के लिए, सहायता केंद्र पर जाएं.

एपीआई के ज़रिए प्रस्ताव बनाना

Proposal ऑब्जेक्ट बनाने के लिए, सिर्फ़ नाम और प्रोग्रामैटिक खरीदार आवश्यक. प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस के खरीदार का आईडी, यूज़र इंटरफ़ेस (यूआई) के ज़रिए हासिल किया जा सकता है या Programmatic_Buyer पीक्यूएल टेबल.

Java


Proposal proposal = new Proposal();

// Setting required Marketplace information.
ProposalMarketplaceInfo proposalMarketplaceInfo = new ProposalMarketplaceInfo();
proposalMarketplaceInfo.setBuyerAccountId(programmaticBuyerId);

// Set common required fields for a proposal.
proposal.setName("Proposal #" + new Random().nextInt(Integer.MAX_VALUE));
proposal.setPrimaryTraffickerId(primaryTraffickerId);
proposal.setMarketplaceInfo(proposalMarketplaceInfo);
    

Python


proposal = {
    # Setting required Marketplace information.
    'isProgrammatic': 'true',
    'marketplaceInfo': {
        'buyerAccountId': programmatic_buyer_id,
    },
    # Set common required fields for proposals.
    'name': 'Proposal #%s' % uuid.uuid4(),
    # ...
}
    

PHP


$proposal = new Proposal();
$proposal->setName('Proposal #' . uniqid());

// Set the required Marketplace information.
$proposalMarketplaceInfo = new ProposalMarketplaceInfo();
$proposalMarketplaceInfo->setBuyerAccountId($buyerId);
$proposal->setMarketplaceInfo($proposalMarketplaceInfo);
    

C#


// Create a proposal with the minimum required fields.
Proposal proposal = new Proposal()
{
    name = "Programmatic proposal #" + new Random().Next(int.MaxValue),
    // Set required Marketplace information
    marketplaceInfo = new ProposalMarketplaceInfo()
    {
        buyerAccountId = programmaticBuyerId
    }
};
    

Ruby


# Create proposal configuration object.
proposal = {
  :marketplace_info => {
    :buyer_account_id => buyer_id
  },
  :name => 'Proposal %s' % SecureRandom.uuid(),
  # ...
}
    

मोल-भाव के लिए खरीदार को भेजने से पहले, अतिरिक्त फ़ील्ड सेट करने होंगे. प्रस्ताव में एक विज्ञापनदाता, विक्रेता, ट्रैफ़िकर, और विक्रेता संपर्क होने चाहिए.

Java


SalespersonSplit primarySalesperson = new SalespersonSplit();
primarySalesperson.setUserId(primarySalespersonId);
proposal.setPrimarySalesperson(primarySalesperson);
    

Python


'primarySalesperson': {
    'userId': primary_salesperson_id,
},
'primaryTraffickerId': primary_trafficker_id,
'probabilityOfClose': '100000',
    

PHP


// Create salesperson splits for the primary salesperson.
$primarySalesperson = new SalespersonSplit();
$primarySalesperson->setUserId($primarySalespersonId);
$proposal->setPrimarySalesperson($primarySalesperson);

// Set the primary trafficker on the proposal for when it becomes an
// order.
$proposal->setPrimaryTraffickerId($primaryTraffickerId);

$advertiser = new ProposalCompanyAssociation();
$advertiser->setType(
    ProposalCompanyAssociationType::ADVERTISER
);
$advertiser->setCompanyId($advertiserId);
$proposal->setAdvertiser($advertiser);
    

C#


// Set fields that are required before sending the proposal to the buyer.
proposal.primaryTraffickerId = primaryTraffickerId;
proposal.sellerContactIds = new long[] { primarySalespersonId };
proposal.primarySalesperson = new SalespersonSplit()
{
    userId = primarySalespersonId,
};
proposal.advertiser = new ProposalCompanyAssociation()
{
    type = ProposalCompanyAssociationType.ADVERTISER,
    companyId = advertiserId
};
    

Ruby


:primary_salesperson => {
  :user_id => primary_salesperson_id
},
:primary_trafficker_id => primary_trafficker_id
    

आम तौर पर, प्रस्ताव शामिल होते हैं ProposalLineItem ऑब्जेक्ट है, तो अगला चरण अपने नए प्रस्ताव बनाया गया.

प्रोग्राम के हिसाब से प्रस्ताव की स्थिति

नीचे दिए गए डायग्राम में, प्रोग्रामैटिक विज्ञापनों के सुझाव दिखाए गए हैं. मोल-भाव किया जा सकता है. हर राज्य को इससे दिखाया जाता है यहां इन फ़ील्ड के अलग-अलग कॉम्बिनेशन इस्तेमाल किए जा सकते हैं:

ज़्यादा जानकारी के लिए, Ad Manager सहायता केंद्र पर जाएं.

उन राज्यों में, प्रोग्राम के हिसाब से प्रस्ताव बनाया गया हो सकता है
           Marketplace के साथ इंटरैक्शन करना.
इमेज 1: प्रोग्राम के हिसाब से प्रस्ताव की स्थिति

मोल-भाव करने के लिए सिलसिलेवार तरीके से निर्देश

यहां हम आपको एपीआई का इस्तेमाल करके, एक खरीदार के साथ प्रोग्रामेटिक प्रस्ताव. हम इस डायग्राम में राज्यों के बारे में जानकारी देंगे पढ़ें.

खरीदार की समीक्षा या मंज़ूरी के लिए तैयार किया जा रहा है

सबसे पहले, आपको ऐसे प्रस्ताव लाइन आइटम के साथ एक प्रोग्रामेटिक प्रस्ताव ड्राफ़्ट करना होगा जिसे किसी खरीदार को भेजना है. ऊपर दिए गए चित्र में यह state C है.

खरीदार की समीक्षा या उसे स्वीकार करने का अनुरोध करना

जब आप खरीदार से प्रोग्राम के हिसाब से तैयार किए गए प्रस्ताव की समीक्षा करवाने के लिए तैयार हों, तो RequestBuyerReview या RequestBuyerAcceptance को ProposalService.performProposalAction का तरीका इस्तेमाल करें. इससे आपको मोल-भाव के चरण पर ले जाया जाएगा.

मोल-भाव

इस चरण में कई चीज़ें हो सकती हैं.

  • खरीदार बिना किसी बदलाव के आपका प्रोग्रामेटिक प्रस्ताव स्वीकार कर सकता है.
  • खरीदार, बदलाव का सुझाव दे सकता है. इस स्थिति में, प्रस्ताव को वापस भेजा जाएगा ड्राफ़्ट की स्थिति में बदलाव करेगा (इमेज 1 में state B). इसके बाद, आपको यह करना होगा बदलाव करने के लिए प्रस्ताव खोलें, प्रस्तावित बदलाव करें और उसे खरीदार की समीक्षा के लिए वापस भेजें.
  • आपके पास खरीदार के जवाब देने से पहले, बदलाव करने का विकल्प भी होता है. आप ऐसा करने के लिए, इमेज 1 में state D के सुझाए गए प्रस्ताव को खोलकर ऐसा करें.

यह मोल-भाव तब तक जारी रहता है, जब तक कि खरीदार के साथ आपका कोई कानूनी समझौता नहीं हो जाता. टिप्पणियों की सुविधा आपके और खरीदार के बीच getMarketplaceCommentsByStatement. state A में रहते हुए आप खरीदार को एक टिप्पणी भेज सकते हैं. ऐसा करें तो आपको यह अपडेट करना होगा marketplaceComment प्रस्ताव पर फ़ील्ड का उपयोग करके updateProposals. इसके बाद, खरीदार के अनुरोध को स्वीकार करने का अनुरोध करने पर, यह टिप्पणी भेज दी जाएगी.

फ़ाइनल ड्राफ़्ट

जब आप और खरीदार, दोनों ने प्रोग्राम के हिसाब से तैयार किए गए प्रस्ताव को स्वीकार कर लिया हो, तो आखिरी स्थिति में जाता है (इमेज 1 में state F). इसके बाद Ad Manager, प्रोग्राम के हिसाब से अपने-आप इस प्रपोज़ल से लाइन आइटम बनाता है.

ज़्यादातर मामलों में, अब आपने प्रोग्रामैटिक सिस्टम के प्रस्ताव तैयार कर लिए हैं; हालांकि, ऐसी दो कार्रवाइयां हैं जिन्हें इस स्थिति से किया जा सकता है:

  • आपके पास बदलाव करने का विकल्प है. इसके बाद, प्रोग्राम के हिसाब से अपने प्रस्ताव को फिर से मोल-भाव करने के लिए खोलें प्रस्ताव पर सेवा से संबंधित फ़ील्ड. ऐसा करने के लिए, बदलाव करने का प्रस्ताव (इमेज 1 में state E to A), बदलाव करना, और खरीदार की अनुमति का अनुरोध कर रहा है.
  • आप प्रदर्शित नहीं होने वाले संबंधित संपादन कर सकते हैं, जैसे कि प्रस्ताव के इन बदलावों को लागू करके, Ad Manager के क्रम और इन लाइन आइटम में बदलाव किया जा सकता है आपको इस डील का फ़ायदा मिल सकता है. ऐसा करने के लिए, आप इमेज 1 में मौजूद state E के बदलाव में बदलाव कर सकते हैं. इसके बाद, UpdateOrderWithSellerData कार्रवाई कर सकते हैं.