বিক্রেতা নির্দেশিকা: বিজ্ঞাপন নিলাম চালান

বিক্রেতা API নির্দেশিকা এবং সুরক্ষিত দর্শক API বিজ্ঞাপন নিলামের জন্য রেফারেন্স।

এই নিবন্ধে, আপনি বিজ্ঞাপন নিলামের জন্য একটি প্রযুক্তিগত রেফারেন্স পাবেন, যেমনটি পরীক্ষামূলক সুরক্ষিত দর্শক API-এর বর্তমান পুনরাবৃত্তিতে ব্যবহৃত হয়।

প্রোটেক্টেড অডিয়েন্স API-এর সম্পূর্ণ জীবনচক্রের জন্য বিকাশকারীর নির্দেশিকা পড়ুন এবং বিক্রেতারা কীভাবে ডিভাইসে নিলাম চালায় সে সম্পর্কে গভীর আলোচনার জন্য সুরক্ষিত শ্রোতা API ব্যাখ্যাকারী পড়ুন।

ডেভেলপার না? Protected Audience API ওভারভিউ পড়ুন।

সুরক্ষিত দর্শক API বিজ্ঞাপন নিলাম কি?

একটি সুরক্ষিত অডিয়েন্স API বিজ্ঞাপন নিলাম হল ছোট জাভাস্ক্রিপ্ট প্রোগ্রামগুলির একটি সংগ্রহ যা ব্রাউজার ব্যবহারকারীর ডিভাইসে একটি বিজ্ঞাপন বেছে নিতে চালায়। গোপনীয়তা রক্ষা করার জন্য, বিক্রেতা এবং ক্রেতাদের থেকে সমস্ত বিজ্ঞাপন নিলাম কোড বিচ্ছিন্ন জাভাস্ক্রিপ্ট ওয়ার্কলেটগুলিতে চালানো হয় যা বাইরের বিশ্বের সাথে কথা বলতে পারে না।

একটি সুরক্ষিত দর্শক API বিজ্ঞাপন নিলামের ছয়টি ধাপ
এই চিত্রটি একটি সুরক্ষিত দর্শক API বিজ্ঞাপন নিলামের প্রতিটি পর্যায়ের রূপরেখা দেয়৷
  1. একজন ব্যবহারকারী বিজ্ঞাপন প্রদর্শন করে এমন একটি সাইট পরিদর্শন করেন।
  2. বিক্রেতার কোড navigator.runAdAuction() নির্বাহ করে। এটি নির্দিষ্ট করে কোন বিজ্ঞাপনের স্থান বিক্রয়ের জন্য এবং কে বিড করতে পারে। বিক্রেতাদের অবশ্যই একটি স্ক্রিপ্ট অন্তর্ভুক্ত করতে হবে যা প্রতিটি বিড, scoreAd() স্কোর করে।
  3. আমন্ত্রিত ক্রেতার কোড একটি বিড, একটি প্রাসঙ্গিক বিজ্ঞাপন ক্রিয়েটিভের URL এবং অন্যান্য ডেটা তৈরি করতে কার্যকর করে৷ বিডিং স্ক্রিপ্ট ক্রেতার কী/মান পরিষেবা থেকে রিয়েল-টাইম ডেটা, যেমন অবশিষ্ট বিজ্ঞাপন প্রচারের বাজেটের জন্য অনুসন্ধান করতে পারে।
  4. বিক্রেতার কোড প্রতিটি বিড স্কোর করে এবং একজন বিজয়ী নির্বাচন করে। এই যুক্তিটি বিড মান ব্যবহার করে এবং অন্যান্য ডেটা একটি বিডের আকাঙ্খিততা প্রদান করে। যে বিজ্ঞাপনগুলি প্রাসঙ্গিক বিজয়ীকে হারাতে পারে না সেগুলি প্রত্যাখ্যান করা হয়৷ বিক্রেতা রিয়েল-টাইম ডেটার জন্য তাদের নিজস্ব কী/মান পরিষেবা ব্যবহার করতে পারেন।
  5. বিজয়ী বিজ্ঞাপনটি একটি অস্বচ্ছ মান হিসাবে ফেরত দেওয়া হয়, যা একটি বেড়াযুক্ত ফ্রেমে প্রদর্শিত হয়। বিক্রেতা এবং প্রকাশক উভয়ই এই মান দেখতে অক্ষম হবে।
  6. নিলাম বিক্রেতা এবং বিজয়ী ক্রেতাদের রিপোর্ট করা হয়.

নিলাম কখন হয়?

সুরক্ষিত শ্রোতা API নিজে থেকে বা প্রোগ্রাম্যাটিক নিলামের সাথে চালানো যেতে পারে। একটি বহু-বিক্রেতা, প্রোগ্রাম্যাটিক নিলামে:

  1. ব্যবহারকারী একটি অংশগ্রহণকারী সাইট পরিদর্শন.
  2. একটি উপলব্ধ বিজ্ঞাপন স্লটের জন্য একটি প্রাসঙ্গিক বিজ্ঞাপন খুঁজতে অন্য বিক্রেতার দ্বারা একটি প্রোগ্রাম্যাটিক নিলাম চালানো হয়।
  3. সুরক্ষিত দর্শক API নিলাম চালানো হয়.
  4. scoreAd() প্রথম নিলামের ফলাফলের সাথে ক্রেতার বিডের তুলনা করে।

যে বিডগুলি প্রাসঙ্গিক বিজয়ীকে হারাতে পারে না সেগুলি প্রত্যাখ্যান করা হয়।

কে সুরক্ষিত দর্শক API বিজ্ঞাপন নিলাম চালায়?

বিজ্ঞাপন স্থান বিক্রি করার জন্য একটি নিলাম চালাতে পারে যে একাধিক দল আছে.

যেমন:

  • বিষয়বস্তু প্রকাশক : নিজের ওয়েবসাইটে বিজ্ঞাপন সামগ্রী হোস্ট করার জন্য কাজ করে।
  • সাপ্লাই-সাইড প্ল্যাটফর্ম (SSP) : প্রকাশকের সাথে কাজ করা এবং অন্যান্য পরিষেবা প্রদান করা।
  • তৃতীয় পক্ষের স্ক্রিপ্ট : বিজ্ঞাপন নিলামে অংশগ্রহণ সক্ষম করতে একজন প্রকাশকের জন্য কাজ করা।

Protected Audience API এর সাথে একজন বিক্রেতার তিনটি কাজ আছে:

  • প্রকাশকের নিয়মগুলি প্রয়োগ করুন: কোন ক্রেতা এবং কোন বিডগুলি যোগ্য৷
  • নিলামের যুক্তি চালান: জাভাস্ক্রিপ্ট প্রতিটি বিডের জন্য একটি পছন্দসই স্কোর গণনা করতে ওয়ার্কলেটে চলে।
  • নিলামের ফলাফল রিপোর্ট করুন।

জাভাস্ক্রিপ্ট ফাংশন navigator.runAdAuction() এ কল করে বিজ্ঞাপন নিলামের প্ররোচনা দিলে বিক্রেতার দ্বারা প্রদত্ত কোডে এই কাজগুলি প্রোগ্রাম্যাটিকভাবে করা হয়।

API ফাংশন

runAdAuction()

বিক্রেতা navigator.runAdAuction() এ কল করে একটি বিজ্ঞাপন নিলাম শুরু করার জন্য ব্যবহারকারীর ব্রাউজারকে একটি অনুরোধ করে৷

যেমন:

const auctionConfig = {
  seller: 'https://ssp.example',
  decisionLogicUrl: ...,
  trustedScoringSignalsUrl: ...,
  interestGroupBuyers: ['https://dsp.example', 'https://buyer2.example', ...],
  auctionSignals: {...},
  sellerSignals: {...},
  sellerTimeout: 100,
  perBuyerSignals: {
    'https://dsp.example': {...},
    'https://another-buyer.example': {...},
    ...
  },
  perBuyerTimeouts: {
    'https://dsp.example': 50,
    'https://another-buyer.example': 200,
    '*': 150,
    ...
  },
  componentAuctions: [
    {
      'seller': 'https://some-other-ssp.example',
      'decisionLogicUrl': ...,
      ...
    },
    ...
  ]
};

try {
  const auctionResultPromise = navigator.runAdAuction(auctionConfig);
} catch (error) {
  // Handle error.
}

runAdAuction() একটি প্রতিশ্রুতি প্রদান করে যা একটি URN ( urn:uuid:<something> ) কে সমাধান করে যা বিজ্ঞাপন নিলামের ফলাফলকে উপস্থাপন করে। এটি শুধুমাত্র ব্রাউজার দ্বারা ডিকোড করা যেতে পারে যখন রেন্ডারিংয়ের জন্য একটি বেড়াযুক্ত ফ্রেমে পাস করা হয়: প্রকাশক পৃষ্ঠা বিজয়ী বিজ্ঞাপনটি পরিদর্শন করতে পারে না।

decisionLogicUrl স্ক্রিপ্ট প্রতিটি পৃথক বিজ্ঞাপনকে তার সংশ্লিষ্ট বিড এবং মেটাডেটা সহ, একবারে একটি বিবেচনা করে এবং তারপরে এটিকে একটি সংখ্যাসূচক পছন্দের স্কোর বরাদ্দ করে।

auctionConfig বৈশিষ্ট্য

seller
প্রয়োজন
উদাহরণ: 'https://ssp.example'
ভূমিকা: বিক্রেতার উৎপত্তি।
decisionLogicUrl
প্রয়োজন
উদাহরণ: 'https://ssp.example/auction-decision-logic.js'
ভূমিকা: নিলাম ওয়ার্কলেট জাভাস্ক্রিপ্টের জন্য URL।
trustedScoringSignalsUrl
ঐচ্ছিক
উদাহরণ: 'https://ssp.example/scoring-signals'
ভূমিকা: বিক্রেতার বিশ্বস্ত সার্ভারের URL।
interestGroupBuyers
প্রয়োজন
উদাহরণ: ['https://dsp.example', 'https://buyer2.example', ...]
ভূমিকা: নিলামে বিড করতে বলা সমস্ত স্বার্থ গোষ্ঠীর মালিকদের উত্স।
দ্রষ্টব্য: বিক্রেতা interestGroupBuyers: সমস্ত স্বার্থ গোষ্ঠীকে বিড করার অনুমতি দিতে। আগ্রহ গ্রুপের মালিকের অন্তর্ভুক্তি ব্যতীত অন্যান্য মানদণ্ডের ভিত্তিতে বিজ্ঞাপনগুলি গ্রহণ বা প্রত্যাখ্যান করা হয়। উদাহরণস্বরূপ, বিক্রেতা তাদের নীতির সাথে সম্মতি নিশ্চিত করতে বিজ্ঞাপন ক্রিয়েটিভ পর্যালোচনা করতে পারেন।
auctionSignals
ঐচ্ছিক
উদাহরণ: {...}
ভূমিকা: পৃষ্ঠার প্রসঙ্গ, নিলামের ধরন ইত্যাদি সম্পর্কে বিক্রেতার তথ্য।
sellerSignals
ঐচ্ছিক
উদাহরণ: {...}
ভূমিকা: প্রকাশক সেটিংসের উপর ভিত্তি করে তথ্য, একটি প্রাসঙ্গিক বিজ্ঞাপন অনুরোধ করা ইত্যাদি।
sellerTimeout
ঐচ্ছিক
উদাহরণ: 100
ভূমিকা: বিক্রেতার scoreAd() স্ক্রিপ্টের সর্বোচ্চ রানটাইম (ms)।
perBuyerSignals
ঐচ্ছিক
উদাহরণ:
{'https://dsp.example': {...}, 'https://another-buyer.example': {...}, ... }
ভূমিকা: প্রতিটি নির্দিষ্ট ক্রেতার জন্য তাদের সার্ভার থেকে পৃষ্ঠা সম্পর্কে প্রাসঙ্গিক সংকেত।
perBuyerTimeouts
ঐচ্ছিক
উদাহরণ: 50
ভূমিকা: নির্দিষ্ট ক্রেতার generateBid() স্ক্রিপ্টের সর্বোচ্চ রানটাইম (এমএস)।
componentAuctions
ঐচ্ছিক
উদাহরণ:
[{'seller': 'https://www.some-other-ssp.com', 'decisionLogicUrl': ..., ...}, ...]
ভূমিকা: উপাদান নিলামের জন্য অতিরিক্ত কনফিগারেশন।

decisionLogicUrl

decisionLogicUrl হল নিলাম কনফিগারেশন অবজেক্টের একটি সম্পত্তি, যা runAdAuction() এ পাস করা হয়েছে। এই ইউআরএলে অবশ্যই scoreAd() ফাংশনের জন্য একটি স্ক্রিপ্ট অন্তর্ভুক্ত করতে হবে। এই যুক্তিটি প্রতিটি বিজ্ঞাপনের জন্য তার পছন্দেরতা নির্ধারণের জন্য একবার চালানো হয়।

scoreAd(adMetadata, bid, auctionConfig, trustedScoringSignals, browserSignals) {
  ...
  return desirabilityScoreForThisAd;
}

browserSignals

browserSignals হল ব্রাউজার দ্বারা নির্মিত একটি বস্তু, যার মধ্যে সেই তথ্য সহ যা ব্রাউজার জানে এবং বিক্রেতার নিলাম স্ক্রিপ্ট যা যাচাই করতে চায়:

{
  topWindowHostname: 'publisher.example',
  interestGroupOwner: 'https://dsp.example',
  renderUrl: 'https://cdn.example/render',
  adComponents: ['https://cdn.com/ad-component-1', ...],
  biddingDurationMsec: 12,
  dataVersion: 1 /* DValue from the seller's Key/Value service response. */
}

একটি নিলাম শুরু হওয়ার আগে, বিক্রেতা উপলব্ধ বিজ্ঞাপন স্লটের জন্য সেরা প্রাসঙ্গিক বিজ্ঞাপনটি খুঁজে পান। scoreAd() লজিকের অংশ এমন কোনো বিজ্ঞাপনকে প্রত্যাখ্যান করে যা প্রাসঙ্গিক বিজয়ীকে হারাতে পারে না।

scoreAd()

scoreAd() নিম্নলিখিত আর্গুমেন্ট নেয়:

যুক্তি ভূমিকা
adMetadata ক্রেতা দ্বারা প্রদত্ত নির্বিচারে মেটাডেটা।
auctionConfig নিলাম কনফিগারেশন অবজেক্টটি navigator.runAdAuction() এ পাস করা হয়েছে।
bid একটি সংখ্যাসূচক বিড মান।
trustedScoringSignals বিক্রেতার বিশ্বস্ত সার্ভার থেকে নিলামের সময় পুনরুদ্ধার করা মানগুলি, বিজ্ঞাপনের বিক্রেতার মতামতের প্রতিনিধিত্ব করে৷

প্রায়শই জিজ্ঞাসিত প্রশ্ন

কিভাবে নিলাম বিজয়ী নির্ধারণ করা হয় এবং কে তাদের বাছাই করে?

বিক্রেতা প্রতিটি বিজ্ঞাপনের আকাঙ্খিত স্কোর নির্ধারণ করতে স্কোরিং যুক্তি প্রদান করে এবং ব্রাউজার বিজয়ী বিজ্ঞাপন হিসাবে সর্বোচ্চ স্কোর নির্বাচন করে।

বিক্রেতা scoreAd() ফাংশনে যুক্তি অন্তর্ভুক্ত করে এবং ব্রাউজার একটি ওয়ার্কলেটে ফাংশনটি কার্যকর করে যার বাইরে কোডের সাথে সীমিত যোগাযোগ রয়েছে। ব্রাউজার নিজেই বিজ্ঞাপন স্কোর না. স্কোরিং লজিক চালানো এবং সর্বোচ্চ স্কোর সহ বিড নির্বাচন করার জন্য ব্রাউজার একচেটিয়াভাবে দায়ী।

সমস্ত সুরক্ষিত অডিয়েন্স API রেফারেন্স

API রেফারেন্স গাইড উপলব্ধ:

সুরক্ষিত শ্রোতা API ব্যাখ্যাকারী বৈশিষ্ট্য সমর্থন এবং সীমাবদ্ধতা সম্পর্কে বিশদ প্রদান করে।