আমরা বিড ম্যানেজার এপিআই-এর সাথে গুগল এপিআই ক্লায়েন্ট লাইব্রেরি ব্যবহার করার পরামর্শ দিই, যাতে আপনাকে ম্যানুয়ালি HTTP রিকোয়েস্ট এবং রেসপন্স প্রসেস করতে না হয়। গুগল এপিআই ক্লায়েন্ট লাইব্রেরিগুলো উন্নততর ল্যাঙ্গুয়েজ ইন্টিগ্রেশন, উন্নত নিরাপত্তা এবং ব্যবহারকারীর অনুমোদন প্রয়োজন এমন কল করার সুবিধা প্রদান করতে পারে।
বিড ম্যানেজার এপিআইটি HTTP এবং JSON-এর উপর ভিত্তি করে তৈরি। আপনি যদি অনুরোধ এবং প্রতিক্রিয়াগুলি ম্যানুয়ালি প্রক্রিয়া করতে পছন্দ করেন, তাহলে যেকোনো স্ট্যান্ডার্ড HTTP ক্লায়েন্ট ব্যবহার করতে পারেন।
একটি ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন
আমরা বিভিন্ন প্রোগ্রামিং ভাষায় বিড ম্যানেজার এপিআই সমর্থনকারী ক্লায়েন্ট লাইব্রেরি সরবরাহ করি। ক্লায়েন্ট লাইব্রেরির সম্পূর্ণ তালিকার জন্য, স্যাম্পল ও লাইব্রেরি ট্যাবটি দেখুন।
বিড ম্যানেজার এপিআই ডেভেলপার গাইডে নিম্নলিখিত তিনটি ভাষার জন্য কোড স্নিপেট প্রদান করা হয়েছে:
এই ভাষাগুলিতে সম্পূর্ণ ইন্টিগ্রেশন উদাহরণের জন্য, আমাদের বিড ম্যানেজার এপিআই উদাহরণের গিটহাব রিপোজিটরি দেখুন।
আপনার ক্লায়েন্ট কনফিগার করুন
OAuth 2.0 ক্রেডেনশিয়াল এবং একটি ক্লায়েন্ট লাইব্রেরি ইনস্টল করা থাকলে, আপনি বিড ম্যানেজার এপিআই ব্যবহার করার জন্য প্রস্তুত। আপনার ক্লায়েন্টকে কীভাবে অনুমোদন ও কনফিগার করবেন তা নিচে দেওয়া হলো:
জাভা
প্রয়োজনীয় লাইব্রেরিগুলো ইম্পোর্ট করুন।
import static java.nio.charset.StandardCharsets.UTF_8; import com.google.api.client.auth.oauth2.Credential; import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp; import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver; import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow; import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets; import com.google.api.client.googleapis.util.Utils; import com.google.api.services.doubleclickbidmanager.DoubleClickBidManager; import java.io.Reader; import java.nio.file.Files; import java.nio.file.Paths;
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্টে সাইন ইন করেছেন যেটির Display & Video 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি সাইন ইন করা আছে, আপনার অ্যাপটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
// Read client secrets file. GoogleClientSecrets clientSecrets; try (Reader reader = Files.newBufferedReader(Paths.get(path-to-client-secrets-file), UTF_8)) { clientSecrets = GoogleClientSecrets.load(Utils.getDefaultJsonFactory(), reader); } // Generate authorization credentials. // Set up the authorization code flow. GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder( Utils.getDefaultTransport(), Utils.getDefaultJsonFactory(), clientSecrets, oauth-scopes) .build(); Credential credential = new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
একটি অনুমোদিত এপিআই ক্লায়েন্ট তৈরি করুন।
// Create authorized API client. DoubleClickBidManager service = new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential) .setApplicationName("bidmanager-java-installed-app-sample") .build();
পাইথন
প্রয়োজনীয় লাইব্রেরিগুলো ইম্পোর্ট করুন।
from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient import discovery
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্টে সাইন ইন করেছেন যেটির Display & Video 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি সাইন ইন করা আছে, আপনার অ্যাপটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
# Set up a flow object to create the credentials using the # client secrets file and OAuth scopes. credentials = InstalledAppFlow.from_client_secrets_file( path-to-client-secrets-file, oauth-scopes).run_local_server()
একটি অনুমোদিত এপিআই ক্লায়েন্ট তৈরি করুন।
# Build the discovery document URL. discovery_url = f'https://doubleclickbidmanager.googleapis.com/$discovery/rest?version=v2' # Build the API service. service = discovery.build( 'doubleclickbidmanager', 'v2', discoveryServiceUrl=discovery_url, credentials=credentials)
পিএইচপি
এই নমুনাটি ধরে নেয় যে আপনি একটি বিল্ট-ইন ওয়েব সার্ভার দিয়ে PHP চালাচ্ছেন এবং প্রাসঙ্গিক ওয়েব পেজে রিডাইরেক্ট করার জন্য আপনার ক্রেডেনশিয়াল কনফিগার করেছেন। উদাহরণস্বরূপ, index.php ফাইলের এই কোডটি নিম্নলিখিত কমান্ড এবং প্রমাণীকরণের পরে http://localhost:8000 এ রিডাইরেক্ট করার জন্য কনফিগার করা ক্রেডেনশিয়াল ব্যবহার করে চালানো যেতে পারে:
php -S localhost:8000 -t ./গুগল এপিআই পিএইচপি ক্লায়েন্ট ডাউনলোড ও ইনস্টল করুন।
পছন্দের পদ্ধতি হলো কম্পোজারের মাধ্যমে:
composer require google/apiclient:^2.12.1একবার ইনস্টল হয়ে গেলে, অটোলোডারটি অন্তর্ভুক্ত করতে ভুলবেন না।
require_once '/path/to/your-project/vendor/autoload.php';একটি Google_Client অবজেক্ট তৈরি করুন।
$client = new Google_Client();ক্লায়েন্ট সেট আপ করুন, প্রয়োজনে অথেনটিকেশন ইউআরএল-এ রিডাইরেক্ট করুন এবং একটি অ্যাক্সেস টোকেন সংগ্রহ করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্টে সাইন ইন করেছেন যেটির Display & Video 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি সাইন ইন করা আছে, আপনার অ্যাপটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
// Set up the client. $client->setApplicationName('DBM API PHP Samples'); $client->addScope(oauth-scope); $client->setAccessType('offline'); $client->setAuthConfigFile(path-to-client-secrets-file); // If the code is passed, authenticate. If not, redirect to authentication page. if (isset($_GET['code'])) { $client->authenticate($_GET['code']); } else { $authUrl = $client->createAuthUrl(); header('Location: ' . $authUrl); } // Exchange authorization code for an access token. $accessToken = $client->getAccessToken(); $client->setAccessToken($accessToken);
Display & Video 360 API পরিষেবার জন্য একটি ক্লায়েন্ট তৈরি করুন।
$service = new Google_Service_DoubleClickBidManager($client);