Migracja do interfejsu Marketplace API

Włącz API

Podobnie jak w przypadku innych interfejsów API Authorized Buyers, przed skorzystaniem z interfejsu Marketplace API musisz go włączyć. Aby włączyć interfejs Marketplace API, wykonaj te czynności:

  1. Otwórz stronę Interfejsy API włączone w Konsoli interfejsów API Google. Wybierz projekt, którego używasz do uzyskiwania dostępu do innych interfejsów API Authorized Buyers, np. Ad Exchange Buyer II lub interfejsu API określania stawek w czasie rzeczywistym.
  2. Kliknij link + WŁĄCZ INTERFEJSY API I USŁUGI.
  3. W polu wyszukiwania wpisz „Authorized Buyers Marketplace API” i naciśnij Enter.
  4. W wynikach wyszukiwania kliknij Authorized Buyers Marketplace API.
  5. Kliknij przycisk WŁĄCZ, aby włączyć interfejs Marketplace API.
  6. Dostęp do interfejsu Marketplace API powinien być teraz możliwy za pomocą danych logowania utworzonych w tym projekcie.

Zaktualizuj swoje dane logowania OAuth 2.0

Musisz zmienić dotychczasowe przepływy pracy OAuth 2.0 z zakresem interfejsu API Ad Exchange Buyer II, aby korzystać z zakresu interfejsu Marketplace API:

https://www.googleapis.com/auth/authorized-buyers-marketplace

Zalecamy korzystanie z protokołu OAuth 2.0 konta usługi, aby uzyskać dostęp do interfejsu API. Wszystkie obsługiwane przepływy OAuth 2.0 muszą określać nowy zakres interfejsów API, aby można było zażądać od Google tokena dostępu do interfejsu Marketplace API.

Mapowanie zasobów interfejsu Ad Exchange Buyer II API do interfejsu Marketplace API

W imieniu klientów

Jeśli korzystasz z zasobu accounts.clients interfejsu API Ad Exchange Buyer II, możesz przeprowadzić migrację do zasobu buyers.clients interfejsu Marketplace API.

Metody zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
accounts.clients.create buyers.clients.create
accounts.clients.get buyers.clients.get
accounts.clients.list buyers.clients.list

Ta metoda obsługuje teraz filtry listy.

accounts.clients.update buyers.clients.patch

Ta metoda obsługuje teraz częściowe aktualizacje za pomocą parametru updateMask.

Pola zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
Client.clientAccountId Client.name

Element clientAccountId to identyfikator zasobu klienta.

Client.role Client.role
Client.status Client.state
Client.clientName Client.displayName
Client.visibleToSeller Client.sellerVisible
Client.entityType

To pole zostało wycofane.

Client.entityId

To pole zostało wycofane.

Client.entityName

To pole zostało wycofane.

Client.partnerClientId Client.partnerClientId

Zaproszenia i użytkownicy

Marketplace API łączy funkcje interfejsów API accounts.clients.invitations i accounts.clients.users w jednym zasobie buyers.clients.users.

Metody zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
accounts.clients.invitations.create buyers.clients.users.create
accounts.clients.invitations.get buyers.clients.users.get
accounts.clients.invitations.list buyers.clients.users.list

Tylko użytkownicy, dla których właściwość state ma wartość INVITED, będą równoznaczne z danymi zwróconymi przez accounts.clients.invitations.list.

accounts.clients.users.get buyers.clients.users.get
accounts.clients.users.list buyers.clients.users.list
accounts.clients.users.update

Nie możesz już stosować poprawek do użytkowników klienta za pomocą interfejsu API. Zalecamy użycie buyers.clients.users.delete do usunięcia użytkownika klienta i jego ponownego utworzenia z preferowanymi zmianami.

Pola zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
ClientUserInvitation.invitationId

To pole zostało wycofane.

ClientUserInvitation.email ClientUser.email
ClientUserInvitation.clientAccountId

To pole nie jest już dostępne dla użytkowników klienta. Zamiast tego wyświetl clientAccountId w nazwie klienta nadrzędnego.

ClientUser.userId ClientUser.name

Element userId to identyfikator zasobu użytkownika.

ClientUser.clientAccountId

To pole nie jest już dostępne dla użytkowników klienta. Zamiast tego wyświetl clientAccountId w nazwie klienta nadrzędnego.

ClientUser.status ClientUser.state
ClientUser.email ClientUser.email

Produkty

Ten zasób i jego funkcje nie są dostępne w interfejsie Marketplace API.

PublisherProfiles

Jeśli korzystasz z zasobu accounts.publisherProfiles interfejsu API Ad Exchange Buyer II, możesz przeprowadzić migrację do zasobu buyers.publisherProfiles interfejsu Marketplace API.

Metody zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
accounts.publisherProfiles.get buyers.publisherProfiles.get
accounts.publisherProfiles.list buyers.publisherProfiles.list

Ta metoda obsługuje teraz filtry listy.

Pola zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
PublisherProfile.publisherProfileId PublisherProfile.name

publisherProfileId to identyfikator zasobu profilu wydawcy.

PublisherProfile.seller.accountId PublisherProfile.seller.accountId
PublisherProfile.seller.subAccountId PublisherProfile.seller.subAccountId
PublisherProfile.displayName PublisherProfile.displayName
PublisherProfile.domains PublisherProfile.domains
PublisherProfile.mobileApps PublisherProfile.mobileApps
PublisherProfile.logoUrl PublisherProfile.logoUrl
PublisherProfile.directDealsContact PublisherProfile.directDealsContact
PublisherProfile.programmaticDealsContact PublisherProfile.programmaticDealsContact
PublisherProfile.mediaKitUrl PublisherProfile.mediaKitUrl
PublisherProfile.samplePageUrl PublisherProfile.samplePageUrl
PublisherProfile.rateCardUrl

To pole zostało wycofane.

PublisherProfile.googlePlusUrl

To pole zostało wycofane.

PublisherProfile.overview PublisherProfile.overview
PublisherProfile.buyerPitchStatement PublisherProfile.pitchStatement
PublisherProfile.topHeadlines PublisherProfile.topHeadlines
PublisherProfile.audienceDescription PublisherProfile.audienceDescription
PublisherProfile.isParent PublisherProfile.isParent

Oferty pakietowe i sfinalizowane oferty pakietowe

Jeśli korzystasz z zasobu accounts.proposals interfejsu API Ad Exchange Buyer II, możesz przeprowadzić migrację do zasobu buyers.proposals interfejsu Marketplace API. Umowy zostały oddzielone od ofert pakietowych do zasobu podrzędnego buyers.proposals.deals. Sfinalizowane oferty pakietowe nie są już widoczne w interfejsie API, dzięki czemu masz dokładniejszą kontrolę nad sfinalizowanymi umowami za pomocą zasobu buyers.finalizedDeals.

Metody zasobów

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
accounts.proposals.accept buyers.proposals.accept

Wywołuj metodę buyers.proposals.accept tylko wtedy, gdy stan oferty pakietowej to BUYER_ACCEPTANCE_REQUESTED.

accounts.proposals.addNote buyers.proposals.addNote
accounts.proposals.cancelNegotiation buyers.proposals.cancelNegotiation
accounts.proposals.completeSetup buyers.finalizedDeals.setReadyToServe
accounts.proposals.create buyers.proposals.sendRfp
accounts.proposals.get buyers.proposals.get

Pamiętaj, że oferta pakietowa nie będzie już zawierać informacji o umowach.

accounts.proposals.list buyers.proposals.list

Pamiętaj, że zwracane oferty pakietowe nie będą już zawierać informacji o umowach. Jeśli używasz filtrowania list, pamiętaj, że interfejs Marketplace API obsługuje tylko składnię filtra listy.

accounts.proposals.pause buyers.finalizedDeals.pause
accounts.proposals.resume buyers.finalizedDeals.resume
accounts.proposals.update buyers.proposals.patch

Ta metoda obsługuje teraz częściowe aktualizacje za pomocą parametru updateMask.

accounts.finalizedProposals.list

Użyj parametru buyers.finalizedDeals.list, by wyświetlić sfinalizowane umowy dotyczące danego konta kupującego. Teraz można pobierać sfinalizowane umowy na poziomie licytującego za pomocą polecenia bidders.finalizedDeals.list.

accounts.finalizedProposals.pause

Użyj buyers.finalizedDeals.pause, aby wstrzymać poszczególne sfinalizowane umowy dotyczące danego konta kupującego.

accounts.finalizedProposals.resume

Użyj buyers.finalizedDeals.resume, aby wznowić poszczególne sfinalizowane umowy dotyczące danego konta kupującego.

Pola zasobów

Zasoby proposals i finalizedProposals mają tę samą reprezentację Proposal i mają podobne kroki migracji.

Interfejs API Ad Exchange Buyer II Interfejs API Marketplace
Proposal.proposalId Proposal.name

proposalId to identyfikator zasobu oferty pakietowej.

Proposal.updateTime Proposal.updateTime
Proposal.proposalRevision

Proposal.proposalRevision i Deal.proposalRevision

Proposal.deals.dealId Deal.name

Element dealId to identyfikator zasobu umowy.

Proposal.deals.proposalId Deal.name

Element proposalId to identyfikator nadrzędnego zasobu oferty pakietowej.

Proposal.deals.createTime Deal.createTime
Proposal.deals.updateTime Deal.updateTime
Proposal.deals.createProductId

To pole zostało wycofane.

Proposal.deals.createProductRevision

To pole zostało wycofane.

Proposal.deals.displayName Deal.displayName
Proposal.deals.buyerPrivateData.referenceId

To pole zostało wycofane i jest teraz widoczne tylko na poziomie oferty pakietowej.

Proposal.deals.dealTerms.description Deal.description
Proposal.deals.dealTerms.brandingType

To pole zostało wycofane.

Proposal.deals.dealTerms.estimatedGrossSpend Deal.estimatedGrossSpend
Proposal.deals.dealTerms.estimatedImpressionsPerDay

To pole zostało wycofane.

Proposal.deals.dealTerms.sellerTimeZone Deal.sellerTimeZone
Proposal.deals.dealTerms.guaranteedFixedPriceTerms

Deal.programmaticGuaranteedTerms

Pamiętaj, że chociaż guaranteedFixedPriceTerms.fixedPrices jest polem powtarzanym, nigdy nie zawierało ono więcej niż jednej pozycji. W związku z tym programmaticGuaranteedTerms.fixedPrice interfejsu Marketplace API jest odpowiednikiem.

Proposal.deals.dealTerms.nonGuaranteedFixedPriceTerms

Deal.preferredDealTerms

Pamiętaj, że chociaż nonGuaranteedFixedPriceTerms.fixedPrices jest polem powtarzanym, nigdy nie zawierało ono więcej niż jednej pozycji. W związku z tym preferredDealTerms.fixedPrice interfejsu Marketplace API jest odpowiednikiem.

Proposal.deals.dealTerms.NonGuaranteedAuctionTerms

Deal.privateAuctionTerms

Pamiętaj, że chociaż nonGuaranteedAuctionTerms.reservePricesPerBuyer jest polem powtarzanym, nigdy nie zawierało ono więcej niż jednej pozycji. W związku z tym privateAuctionTerms.floorPrice interfejsu Marketplace API jest odpowiednikiem.

Proposal.deals.webPropertyCode

To pole zostało wycofane.

Proposal.deals.sellerContacts Proposal.sellerContacts
Proposal.deals.availableStartTime Proposal.flightStartTime
Proposal.deals.availableEndTime Proposal.flightEndTime
Proposal.deals.description Proposal.description
Proposal.deals.targetingCriterion Deal.targeting

Nie można już konfigurować kierowania za pomocą klucza do określenia kategorii kierowania. Pamiętaj jednak, że kategorie, na które można kierować reklamy, znajdziesz tutaj: Deal.targeting. Na przykład klucz GOOG_CREATIVE_SIZE z Ad Exchange kupującego II odnosi się do Deal.targeting.inventorySizeTargeting interfejsu Marketplace API.

Proposal.deals.targeting Deal.targeting

Dodaliśmy więcej kategorii kryteriów kierowania.

Proposal.deals.creativeRestrictions.creativeFormat Deal.creativeRequirements.creativeFormat
Proposal.deals.creativeRestrictions.skippableAdType Deal.creativeRequirements.skippableAdType
Proposal.deals.creativeRestrictions.creativeSpecifications.creativeSize Deal.targeting.inventorySizeTargeting
Proposal.deals.externalDealId

To pole zostało wycofane.

Proposal.deals.syndicationProduct

To pole zostało wycofane.

Proposal.deals.creativePreApprovalPolicy Deal.creativeRequirements.creativePreApprovalPolicy
Proposal.deals.creativeSafeFrameCompatibility Deal.creativeRequirements.creativeSafeFrameCompatibility
Proposal.deals.dealServingMetadata

Podobne informacje znajdziesz w polu FinalizedDeal.dealPausingInfo.

Proposal.deals.programmaticCreativeSource Deal.creativeRequirements.programmaticCreativeSource
Proposal.deals.deliveryControl Deal.deliveryControl

Dodaliśmy dodatkowe informacje o sposobie zawierania umów.

Proposal.deals.isSetupComplete FinalizedDeal.readyToServe

Teraz możesz zasygnalizować, że umowa jest gotowa do wyświetlenia, dopiero gdy została sfinalizowana. Aby wskazać, że sfinalizowana umowa automatyzacji gwarantowanej jest gotowa do wyświetlania, użyj metody buyers.finalizedDeals.setReadyToServe.

Proposal.originatorRole Proposal.originatorRole
Proposal.seller.accountId Proposal.publisherProfile

Użyj nazwy profilu wydawcy, by zidentyfikować sprzedawcę. Profile wydawców możesz wyświetlać za pomocą zasobu buyers.publisherProfiles.

Proposal.seller.subAccountId Proposal.publisherProfile

Użyj nazwy profilu wydawcy, by zidentyfikować sprzedawcę. Profile wydawców możesz wyświetlać za pomocą zasobu buyers.publisherProfiles.

Proposal.buyer.accountId

Proposal.buyer lub Proposal.client.

Używane pole zależy od typu konta kupującego, który negocjuje. Są to nazwy zasobów odpowiednio zasobu buyers interfejsu Real-time interfejsu API lub zasobu buyers.clients interfejsu Marketplace API.

Proposal.billedBuyer.accountId Proposal.billedBuyer

Jest to teraz nazwa zasobu odnosząca się do konta kupującego, która jest reprezentowana w zasobie buyers interfejsu Real-time interfejsu API.

Proposal.displayName Proposal.displayName
Proposal.proposalState Proposal.state
Proposal.isRenegotiating Proposal.isRenegotiating
Proposal.buyerPrivateData Proposal.buyerPrivateData
Proposal.sellerContacts Proposal.sellerContacts
Proposal.buyerContacts Proposal.buyerContacts
Proposal.privateAuctionId

To pole zostało wycofane.

Proposal.isSetupComplete FinalizedDeal.readyToServe

Teraz masz dostęp do bardziej szczegółowych informacji dzięki buyers.finalizedDeals.

Proposal.lastUpdaterOrCommentorRole Proposal.lastUpdaterOrCommentorRole
Proposal.notes.proposalRevision

To pole zostało wycofane.

Proposal.notes.noteId

To pole zostało wycofane.

Proposal.notes.createTime Proposal.notes.createTime
Proposal.notes.creatorRole Proposal.notes.creatorRole
Proposal.notes.note Proposal.notes.note
Proposal.termsAndConditions Proposal.termsAndConditions