Ten przewodnik zawiera ogólny opis sposobu korzystania Automatyzacja bezpośrednia za pomocą interfejsu API. Opisuje, jak utworzyć ofertę pakietową i jak ją zrealizować. negocjacjach.
Primer
Zautomatyzowana oferta pakietowa jest podobna do zamówienia w usłudze Google Ad Manager. Zautomatyzowane oferty pakietowe zawierać ogólne informacje na temat proponowanej transakcji między Tobą a kupującym. Oferta pakietowa i jej elementy zamówienia reprezentuje ofertę zasobów reklamowych kupującego.
Więcej informacji znajdziesz w Centrum pomocy.
Tworzenie oferty pakietowej za pomocą interfejsu API
Do utworzenia obiektu Proposal
wystarczy nazwa i kupujący korzystający z automatyzacji.
Identyfikator kupującego można uzyskać w interfejsie użytkownika lub
Programmatic_Buyer
Tabela PQL.
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(), # ... }
Zanim wyślesz ofertę do kupującego do negocjacji, musisz skonfigurować dodatkowe pola. Do oferty pakietowej należy przypisać reklamodawcę, sprzedawcę, trafikera i sprzedawcę.
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
Oferty pakietowe zwykle składają się ProposalLineItem obiektów, następnym krokiem jest dodanie elementów zamówienia w ofercie pakietowej utworzono ofertę pakietową.
Stany zautomatyzowanej oferty pakietowej
Poniższy rysunek przedstawia zautomatyzowaną ofertę pakietową w różnych momentach z perspektywy interfejsu API. Każdy stan jest reprezentowany przez różne kombinacje tych pól:
- ProposalMarketplaceInfo.hasLocalVersionEdits
- ProposalMarketplaceInfo.negotiationStatus
- Proposal.status
Więcej informacji znajdziesz w Centrum pomocy Ad Managera.
.Przewodnik po negocjacjach
Przeprowadzimy Cię przez interfejs API do zakończenia negocjacji z kupującym. Przyjrzymy się stanom na diagramie powyżej.
Przygotowanie do sprawdzenia lub akceptacji przez kupującego
Najpierw musisz utworzyć wersję roboczą zautomatyzowanej oferty pakietowej z elementami zamówienia, które
który chcesz wysłać kupującemu. Na grafice powyżej jest to state C
.
Wysyłanie prośby o sprawdzenie lub zaakceptowanie przez kupującego
Gdy wszystko będzie gotowe do sprawdzenia przez kupującego zautomatyzowanej oferty pakietowej, możesz:
RequestBuyerReview
lub RequestBuyerAcceptance
za pomocą
Metoda ProposalService.performProposalAction.
W ten sposób przejdziesz do fazy negocjacji.
Negocjacje
Na tym etapie może wydarzyć się wiele rzeczy.
- Kupujący może zaakceptować Twoją zautomatyzowaną ofertę pakietową bez wprowadzania zmian.
- Kupujący może zaproponować zmiany. W takim przypadku oferta pakietowa zostanie odesłana.
do wersji roboczej (
state B
na rys. 1). Następnie wykonaj te czynności: otwórz ofertę pakietową do edycji, wprowadzić proponowane zmiany i odesłać kupującemu do sprawdzenia. - Możesz też wprowadzić zmiany jeszcze przed odpowiedzią kupującego. Dostępne opcje
W tym celu otwórz ofertę pakietową do edycji z poziomu
state D
na rys. 1.
Negocjacje będą kontynuowane do momentu osiągnięcia porozumienia z kupującym. Komentarze
mogą być ustalane między Tobą a kupującym za pomocą
getMarketplaceCommentsByStatement.
Jeśli jesteś w tym kraju (state A
), możesz wysłać komentarz do kupującego. Do zrobienia
musisz zaktualizować
marketplaceComment
pola oferty za pomocą funkcji
updateProposals.
Komentarz zostanie wysłany, gdy poprosisz kupującego o akceptację.
Sfinalizowano
Gdy zarówno Ty, jak i kupujący zaakceptujecie zautomatyzowaną ofertę pakietową,
przechodzi do stanu ostatecznego (state F
na rys. 1).
Ad Manager automatycznie utworzy elementy zamówienia na podstawie tej zautomatyzowanej oferty pakietowej.
W większości przypadków zautomatyzowana oferta pakietowa jest już gotowa. jednak od tego stanu można wykonać 2 czynności:
- Aby ponownie otworzyć zautomatyzowaną ofertę pakietową do ponownego negocjacji, zmień jej ustawienia
związane z wyświetlaniem w ofercie pakietowej. Aby to zrobić, otwórz
propozycja edycji (
state E to A
na Rys. 1), wprowadzenie zmian, a następnie z prośbą o zgodę kupującego. - Możesz wprowadzać powiązane zmiany, które nie powodują wyświetlania reklam, np. zaktualizować ofertę
oraz odzwierciedla to zmiany w utworzonych zamówieniach i elementach zamówienia w usłudze Ad Manager
z umowy. Możesz to zrobić, edytując wartość
state E
na Rys. 1, a następnie wykonując działanieUpdateOrderWithSellerData
.