Campaign Manager 360 API আপনার Campaign Manager 360 অ্যাকাউন্ট থেকে তথ্যে প্রোগ্র্যামাটিক অ্যাক্সেস প্রদান করে। এটি ক্যাম্পেন ও রিপোর্ট তৈরি ও ম্যানেজ করতে ব্যবহার করা হয়, ঠিক যেমন আপনি Campaign Manager 360 ও রিপোর্ট বিল্ডার ওয়েব পরিষেবার মাধ্যমে করেন।
Campaign Manager 360 API কীভাবে ব্যবহার শুরু করবেন তা এই নির্দেশিকায় বর্ণনা করা হয়েছে।
পূর্বশর্ত
Campaign Manager 360 API ব্যবহার করার আগে, আপনাকে কয়েকটি পূর্বশর্ত পূরণ করতে হবে:
আপনার Campaign Manager 360 অ্যাকাউন্ট থাকতে হবে। সাইন-আপ সংক্রান্ত তথ্যের জন্য বিজ্ঞাপনদাতা/এজেন্সি দেখুন।
API অ্যাক্সেসের জন্য আপনার Campaign Manager 360 অ্যাকাউন্ট চালু থাকতে হবে। বেশিরভাগ অ্যাকাউন্টে এটি ডিফল্ট হিসেবে চালু করা থাকে; আপনি নিশ্চিত না হলে, সহায়তার জন্য আপনার অ্যাকাউন্টের প্রতিনিধি বা Campaign Manager 360 সহায়তা টিমের সাথে যোগাযোগ করুন।
এই অ্যাকাউন্টে অ্যাক্সেস আছে এমন ব্যবহারকারীর প্রোফাইল আপনার থাকতে হবে। আপনার Campaign Manager 360 অ্যাকাউন্ট অ্যাডমিনিস্ট্রেটরকে এই অ্যাকাউন্টের সাথে যুক্ত একটি ব্যবহারকারীর প্রোফাইল তৈরি করতে বলুন।
Campaign Manager 360 UI-তে ব্যবহারকারীর প্রোফাইল সংক্রান্ত অনুমতি চেক করুন। এগুলি নিয়ন্ত্রণ করে ব্যবহারকারীর প্রোফাইল API থেকে কী কী অ্যাক্সেস করতে পারবে। আলাদা কোনও API অনুমতি নেই।
প্রোজেক্ট তৈরি করুন
Campaign Manager 360 API ব্যবহার করা শুরু করতে, আপনাকে প্রথমে Google API Console-এ একটি প্রোজেক্ট তৈরি বা বেছে নিতে হবে এবং API চালু করতে হবে। এই লিঙ্ক ব্যবহার করলে, আপনি প্রসেসটি সম্পূর্ণ করার জন্য নির্দেশিকা পাবেন এবং Campaign Manager 360 API অটোমেটিক অ্যাক্টিভেট হয়ে যাবে।
ক্রেডেনশিয়াল জেনারেট করুন
Campaign Manager 360 API-তে আপনার করা সব অনুরোধ অনুমোদিত হতে হবে। অনুমোদনের সংক্ষিপ্ত ওভারভিউয়ের জন্য, কীভাবে Google-এর কাছে আপনার অ্যাপ্লিকেশন অনুমোদন ও শনাক্ত করবেন সেই সম্পর্কে পড়ুন।
ইনস্টল করা অ্যাপ্লিকেশন ফ্লো-এর সাথে ব্যবহার করার জন্য OAuth 2.0 ক্লায়েন্ট আইডি তৈরি করার প্রসেস সম্পর্কে নিম্নলিখিত নির্দেশাবলী আপনাকে গাইড করে। পরিষেবা অ্যাকাউন্ট ফ্লোয়ের সাথে ব্যবহার করার জন্য ক্রেডেনশিয়াল তৈরি করার নির্দেশাবলীর জন্য, পরিষেবা অ্যাকাউন্ট গাইড দেখুন।
Google API Console প্রোজেক্ট কনফিগার করতে ধাপগুলি অনুসরণ করুন।
- API কনসোলে ক্রেডেনশিয়াল পৃষ্ঠা খুলুন।
ক্রেডেনশিয়াল তৈরি করুন > OAuth ক্লায়েন্ট আইডি বিকল্পে ক্লিক করুন।
আপনি যদি আগে এই প্রোজেক্টের জন্য OAuth-এর সম্মতি সংক্রান্ত স্ক্রিন কনফিগার না করে থাকেন, তাহলে আপনাকে এখন তা করতে বলা হবে। সম্মতি সংক্রান্ত স্ক্রিন কনফিগার করুন বিকল্পে ক্লিক করুন।
ব্যবহারকারীর ধরন বেছে নিয়ে তৈরি করুন বিকল্পে ক্লিক করুন।
প্রাথমিক ফর্ম পূরণ করুন। প্রয়োজন হলে আপনি পরে এটি এডিট করতে পারবেন। হয়ে গেলে সেভ করুন বিকল্পে ক্লিক করুন।
চালিয়ে যেতে, ক্রেডেনশিয়াল > ক্রেডেনশিয়াল তৈরি করুন > OAuth ক্লায়েন্ট আইডি বিকল্পে ফিরে যান।
অ্যাপ্লিকেশনের ধরন হিসেবে ডেস্কটপ অ্যাপ বেছে নিন, এটির একটি নাম দিন, তারপর তৈরি করুন বিকল্পে ক্লিক করুন।
হয়ে গেলে, আপনাকে একটি OAuth 2.0 ক্লায়েন্ট আইডি ও ক্লায়েন্ট সিক্রেট দেখানো হবে, যা আপনি JSON ফর্ম্যাটে ডাউনলোড করে পরে ব্যবহারের জন্য সেভ করতে পারবেন।
ক্লায়েন্ট লাইব্রেরি ইনস্টল করা
Campaign Manager 360 API, HTTP ও JSON-এর উপর ভিত্তি করে তৈরি করা হয়েছে, তাই যেকোনও স্ট্যান্ডার্ড HTTP ক্লায়েন্ট এতে অনুরোধ পাঠাতে ও উত্তর পার্স করতে পারে।
তবে, Google API ক্লায়েন্ট লাইব্রেরি আরও ভাল ভাষা ইন্টিগ্রেশন, উন্নত নিরাপত্তা এবং অনুমোদিত অনুরোধ করার জন্য সহায়তা প্রদান করে। ক্লায়েন্ট লাইব্রেরিগুলি বিভিন্ন প্রোগ্রামিং ল্যাঙ্গুয়েজে উপলভ্য; সেগুলি ব্যবহার করে আপনি ম্যানুয়ালি HTTP অনুরোধ সেট-আপ করা এবং উত্তর পার্স করার প্রয়োজনীয়তা এড়াতে পারবেন।
শুরু করতে, ডেভেলপমেন্টের জন্য আপনি যে প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহার করছেন সেটি বেছে নিন।
C#
লেটেস্ট Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি .NET-এর জন্য ইনস্টল করুন। আপনার ইনস্টলেশন ম্যানেজ করার জন্য NuGet ব্যবহার করার সাজেশন দেওয়া হয়।
NuGet প্যাকেজ ম্যানেজার কনসোল খুলুন এবং নিম্নলিখিত কমান্ডটি রান করুন:
Install-Package Google.Apis.Dfareporting.v5
আরও জানুন
Java
লেটেস্ট Java-র জন্য Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন ম্যানেজ করতে Maven ব্যবহার করার সাজেশন দেওয়া হয়।
আপনার pom.xml ফাইলে নিম্নলিখিত ডিপেন্ডেন্সি যোগ করুন:
<dependency> <groupId>com.google.apis</groupId> <artifactId>google-api-services-dfareporting</artifactId> <version>v5-rev20260511-2.0.0</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava-jdk5</artifactId> </exclusion> </exclusions> </dependency>
আরও জানুন
PHP
লেটেস্ট PHP-এর জন্য Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন ম্যানেজ করতে Composer ব্যবহার করার সাজেশন দেওয়া হয়।
টার্মিনাল খুলে নিম্নলিখিত কমান্ড রান করুন:
composer require google/apiclient
আপনি যদি আগে থেকেই লাইব্রেরি ইনস্টল করে থাকেন এবং শুধু লেটেস্ট ভার্সনে আপডেট করতে চান:
composer update google/apiclient
আপনার সিস্টেমের উপর নির্ভর করে, আপনাকে এইসব কমান্ডের আগে
sudo যোগ করতে হতে পারে।
আরও জানুন
Python
লেটেস্ট Python-এর জন্য Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন ম্যানেজ করার জন্য pip ব্যবহার করার সাজেশন দেওয়া হয়।
টার্মিনাল খুলে নিম্নলিখিত কমান্ড রান করুন:
pip install --upgrade google-api-python-client
আপনার সিস্টেমের উপর নির্ভর করে, আপনাকে এইসব কমান্ডের আগে
sudo যোগ করতে হতে পারে।
আরও জানুন
Ruby
লেটেস্ট Ruby-এর জন্য Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন ম্যানেজ করার জন্য RubyGems ব্যবহার করার সাজেশন দেওয়া হয়।
টার্মিনাল খুলে নিম্নলিখিত কমান্ড রান করুন:
gem install google-api-client
আপনি যদি আগে থেকেই লাইব্রেরি ইনস্টল করে থাকেন এবং শুধু লেটেস্ট ভার্সনে আপডেট করতে চান:
gem update -y google-api-client
আপনার সিস্টেমের উপর নির্ভর করে, আপনাকে এইসব কমান্ডের আগে
sudo যোগ করতে হতে পারে।
আরও জানুন
ক্লায়েন্ট লাইব্রেরি পৃষ্ঠায় আরও কাজ করে এমন ভাষা খুঁজে পাওয়া যাবে।
একটি অনুরোধ জানান
OAuth 2.0 ক্রেডেনশিয়াল তৈরি করা এবং ক্লায়েন্ট লাইব্রেরি ইনস্টল করা হয়ে গেলে, আপনি Campaign Manager 360 API ব্যবহার করা শুরু করতে পারবেন। নিচে দেওয়া কুইকস্টার্ট অনুসরণ করে কীভাবে অনুমোদন করবেন, আপনার ক্লায়েন্ট কনফিগার করবেন এবং আপনার প্রথম অনুরোধ করবেন তা জানুন।
C#
ক্লায়েন্ট সিক্রেট ফাইল লোড করুন এবং অথরাইজেশন ক্রেডেনশিয়াল জেনারেট করুন।
প্রথমবার এই ধাপটি করার সময়, আপনার ব্রাউজারে একটি অনুমোদনের প্রম্পট গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, Campaign Manager 360-এ অ্যাক্সেস আছে এমন Google অ্যাকাউন্ট দিয়ে লগ-ইন করেছেন কিনা তা নিশ্চিত করুন। বর্তমানে যে অ্যাকাউন্ট দিয়ে লগ-ইন করা আছে, আপনার অ্যাপ্লিকেশন সেই অ্যাকাউন্টের হয়ে ডেটা অ্যাক্সেস করার অনুমতি পাবে।
// Load client secrets from the specified JSON file. GoogleClientSecrets clientSecrets; using(Stream json = new FileStream(pathToJsonFile, FileMode.Open, FileAccess.Read)) { clientSecrets = GoogleClientSecrets.FromStream(json); } // Create an asynchronous authorization task. // // Note: providing a data store allows auth credentials to be cached, so they survive multiple // runs of the application. This avoids prompting the user for authorization every time the // access token expires, by remembering the refresh token. The "user" value is used to // identify a specific set of credentials within the data store. You may provide different // values here to persist credentials for multiple users to the same data store. Task<UserCredential> authorizationTask = GoogleWebAuthorizationBroker.AuthorizeAsync( clientSecrets.Secrets, OAuthScopes, "user", CancellationToken.None, dataStore, new ManualCodeReceiver()); // Authorize and persist credentials to the data store. UserCredential credential = authorizationTask.Result;
একটি অনুমোদিত Dfareporting ক্লায়েন্ট তৈরি করুন।
// Create a Dfareporting service object. // // Note: application name should be replaced with a value that identifies your application. service = new DfareportingService( new BaseClientService.Initializer { HttpClientInitializer = credential, ApplicationName = "C# installed app sample" } );
অপারেশন পারফর্ম করা।
// Retrieve and print all user profiles for the current authorized user. UserProfileList profiles = service.UserProfiles.List().Execute(); foreach (UserProfile profile in profiles.Items) { Console.WriteLine("Found user profile with ID {0} and name \"{1}\".", profile.ProfileId, profile.UserName); }
Java
ক্লায়েন্ট সিক্রেট ফাইল লোড করুন এবং অথরাইজেশন ক্রেডেনশিয়াল জেনারেট করুন।
প্রথমবার এই ধাপটি করার সময়, আপনার ব্রাউজারে একটি অনুমোদনের প্রম্পট গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, Campaign Manager 360-এ অ্যাক্সেস আছে এমন Google অ্যাকাউন্ট দিয়ে লগ-ইন করেছেন কিনা তা নিশ্চিত করুন। বর্তমানে যে অ্যাকাউন্ট দিয়ে লগ-ইন করা আছে, আপনার অ্যাপ্লিকেশন সেই অ্যাকাউন্টের হয়ে ডেটা অ্যাক্সেস করার অনুমতি পাবে।
// Load the client secrets JSON file. GoogleClientSecrets clientSecrets = GoogleClientSecrets.load( jsonFactory, Files.newBufferedReader(Paths.get(pathToClientSecretsFile), UTF_8)); // Set up the authorization code flow. // // Note: providing a DataStoreFactory allows auth credentials to be cached, so they survive // multiple runs of the program. This avoids prompting the user for authorization every time the // access token expires, by remembering the refresh token. GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder( httpTransport, jsonFactory, clientSecrets, OAUTH_SCOPES) .setDataStoreFactory(dataStoreFactory) .build(); // Authorize and persist credentials to the data store. // // Note: the "user" value below is used to identify a specific set of credentials in the data // store. You may provide different values here to persist credentials for multiple users to // the same data store. Credential credential = new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
একটি অনুমোদিত Dfareporting ক্লায়েন্ট তৈরি করুন।
// Create a Dfareporting client instance. // // Note: application name below should be replaced with a value that identifies your // application. Suggested format is "MyCompany-ProductName/Version.MinorVersion". Dfareporting reporting = new Dfareporting.Builder(credential.getTransport(), credential.getJsonFactory(), credential) .setApplicationName("dfareporting-java-installed-app-sample") .build();
অপারেশন পারফর্ম করা।
// Retrieve and print all user profiles for the current authorized user. UserProfileList profiles = reporting.userProfiles().list().execute(); for (int i = 0; i < profiles.getItems().size(); i++) { System.out.printf("%d) %s%n", i + 1, profiles.getItems().get(i).getUserName()); }
PHP
ক্লায়েন্ট সিক্রেট ফাইল লোড করুন এবং অথরাইজেশন ক্রেডেনশিয়াল জেনারেট করুন।
প্রথমবার এই ধাপটি করার সময়, আপনার ব্রাউজারে একটি অনুমোদনের প্রম্পট গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, Campaign Manager 360-এ অ্যাক্সেস আছে এমন Google অ্যাকাউন্ট দিয়ে লগ-ইন করেছেন কিনা তা নিশ্চিত করুন। বর্তমানে যে অ্যাকাউন্ট দিয়ে লগ-ইন করা আছে, আপনার অ্যাপ্লিকেশন সেই অ্যাকাউন্টের হয়ে ডেটা অ্যাক্সেস করার অনুমতি পাবে।
// Create a Google_Client instance. // // Note: application name should be replaced with a value that identifies // your application. Suggested format is "MyCompany-ProductName". $client = new Google_Client(); $client->setAccessType('offline'); $client->setApplicationName('PHP installed app sample'); $client->setRedirectUri(self::OAUTH_REDIRECT_URI); $client->setScopes(self::$OAUTH_SCOPES); // Load the client secrets file. $client->setAuthConfig($pathToJsonFile); // Try to load cached credentials from the token store. Using a token store // allows auth credentials to be cached, so they survive multiple runs of // the application. This avoids prompting the user for authorization every // time the access token expires, by remembering the refresh token. if (file_exists($tokenStore) && filesize($tokenStore) > 0) { $client->setAccessToken(file_get_contents($tokenStore)); } else { // If no cached credentials were found, authorize and persist // credentials to the token store. print 'Open this URL in your browser and authorize the application.'; printf("\n\n%s\n\n", $client->createAuthUrl()); print 'Enter the authorization code: '; $code = trim(fgets(STDIN)); $client->authenticate($code); file_put_contents($tokenStore, json_encode($client->getAccessToken())); }
একটি অনুমোদিত Dfareporting ক্লায়েন্ট তৈরি করুন।
// Create a Dfareporting service object. $service = new Google_Service_Dfareporting($client);
অপারেশন পারফর্ম করা।
// Retrieve and print all user profiles for the current authorized user. $result = $service->userProfiles->listUserProfiles(); foreach ($result['items'] as $userProfile) { printf( "User profile \"%s\" (ID: %d) found for account %d.\n", $userProfile->getUserName(), $userProfile->getProfileId(), $userProfile->getAccountId() ); }
Python
ক্লায়েন্ট সিক্রেট ফাইল লোড করুন এবং অথরাইজেশন ক্রেডেনশিয়াল জেনারেট করুন।
প্রথমবার এই ধাপটি করার সময়, আপনার ব্রাউজারে একটি অনুমোদনের প্রম্পট গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, Campaign Manager 360-এ অ্যাক্সেস আছে এমন Google অ্যাকাউন্ট দিয়ে লগ-ইন করেছেন কিনা তা নিশ্চিত করুন। বর্তমানে যে অ্যাকাউন্ট দিয়ে লগ-ইন করা আছে, আপনার অ্যাপ্লিকেশন সেই অ্যাকাউন্টের হয়ে ডেটা অ্যাক্সেস করার অনুমতি পাবে।
# Set up a Flow object to be used if we need to authenticate. flow = client.flow_from_clientsecrets( path_to_client_secrets_file, scope=OAUTH_SCOPES) # Check whether credentials exist in the credential store. Using a credential # store allows auth credentials to be cached, so they survive multiple runs # of the application. This avoids prompting the user for authorization every # time the access token expires, by remembering the refresh token. storage = Storage(CREDENTIAL_STORE_FILE) credentials = storage.get() # If no credentials were found, go through the authorization process and # persist credentials to the credential store. if credentials is None or credentials.invalid: credentials = tools.run_flow(flow, storage, tools.argparser.parse_known_args()[0]) # Use the credentials to authorize an httplib2.Http instance. http = credentials.authorize(httplib2.Http())
একটি অনুমোদিত Dfareporting ক্লায়েন্ট তৈরি করুন।
# Construct a service object via the discovery service. service = discovery.build('dfareporting', 'v5', http=http)
অপারেশন পারফর্ম করা।
# Construct the request. request = service.userProfiles().list() # Execute request and print response. response = request.execute() for profile in response['items']: print('Found user profile with ID %s and user name "%s".' % (profile['profileId'], profile['userName']))
Ruby
ক্লায়েন্ট সিক্রেট ফাইল লোড করুন এবং অথরাইজেশন ক্রেডেনশিয়াল জেনারেট করুন।
প্রথমবার এই ধাপটি করার সময়, আপনার ব্রাউজারে একটি অনুমোদনের প্রম্পট গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, Campaign Manager 360-এ অ্যাক্সেস আছে এমন Google অ্যাকাউন্ট দিয়ে লগ-ইন করেছেন কিনা তা নিশ্চিত করুন। বর্তমানে যে অ্যাকাউন্ট দিয়ে লগ-ইন করা আছে, আপনার অ্যাপ্লিকেশন সেই অ্যাকাউন্টের হয়ে ডেটা অ্যাক্সেস করার অনুমতি পাবে।
# Load client ID from the specified file. client_id = Google::Auth::ClientId.from_file(path_to_json_file) # Set up the user authorizer. # # Note: providing a token store allows auth credentials to be cached, so they # survive multiple runs of the application. This avoids prompting the user for # authorization every time the access token expires, by remembering the # refresh token. authorizer = Google::Auth::UserAuthorizer.new( client_id, [API_NAMESPACE::AUTH_DFAREPORTING], token_store ) # Authorize and persist credentials to the data store. # # Note: the 'user' value below is used to identify a specific set of # credentials in the token store. You may provide different values here to # persist credentials for multiple users to the same token store. authorization = authorizer.get_credentials('user') if authorization.nil? puts format( "Open this URL in your browser and authorize the application.\n\n%s" \ "\n\nEnter the authorization code:", authorizer.get_authorization_url(base_url: OAUTH_REDIRECT_URI) ) code = STDIN.gets.chomp authorization = authorizer.get_and_store_credentials_from_code( base_url: OAUTH_REDIRECT_URI, code: code, user_id: 'user' ) end
একটি অনুমোদিত Dfareporting ক্লায়েন্ট তৈরি করুন।
# Create a Dfareporting service object. # # Note: application name should be replaced with a value that identifies # your application. Suggested format is "MyCompany-ProductName". service = API_NAMESPACE::DfareportingService.new service.authorization = authorization service.client_options.application_name = 'Ruby installed app sample' service.client_options.application_version = '1.0.0'
অপারেশন পারফর্ম করা।
// Retrieve and print all user profiles for the current authorized user. UserProfileList profiles = service.UserProfiles.List().Execute(); foreach (UserProfile profile in profiles.Items) { Console.WriteLine("Found user profile with ID {0} and name \"{1}\".", profile.ProfileId, profile.UserName); }
আরও জানুন
API যেসব পরিষেবা অফার করে সেই সম্পর্কে জানতে API রেফারেন্স দেখুন। প্রতিটি পদ্ধতি সংক্রান্ত বিবরণ পৃষ্ঠায় একটি এম্বেড করা API Explorer থাকে যা আপনি সরাসরি আপনার ব্রাউজার থেকে টেস্ট অনুরোধ করতে ব্যবহার করতে পারেন।
আমাদের অন্যান্য গাইড পর্যালোচনা করুন যা উন্নত বিষয়গুলি কভার করে এবং সাধারণ কাজের জন্য এন্ড-টু-এন্ড উদাহরণ প্রদান করে।
আপনি কোড লেখার জন্য প্রস্তুত হলে, আমাদের কোড স্যাম্পেল-এর বিস্তৃত সংগ্রহ এক্সপ্লোর করতে পারেন, যা আপনার প্রয়োজন অনুসারে পরিবর্তন এবং বর্ধিত করা যেতে পারে।