ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই আপনার ক্যাম্পেইন ম্যানেজার ৩৬০ অ্যাকাউন্টের তথ্যে প্রোগ্রাম্যাটিক অ্যাক্সেস প্রদান করে। এটি ক্যাম্পেইন ও রিপোর্ট পরিচালনা এবং তৈরি করতে ব্যবহৃত হয়, ঠিক যেমনটি আপনি ক্যাম্পেইন ম্যানেজার ৩৬০ এবং রিপোর্ট বিল্ডার ওয়েব সার্ভিসের মাধ্যমে করে থাকেন।
এই নির্দেশিকায় ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই (Campaign Manager 360 API) দিয়ে কীভাবে কাজ শুরু করতে হয় তা বর্ণনা করা হয়েছে।
পূর্বশর্ত
ক্যাম্পেইন ম্যানেজার 360 এপিআই ব্যবহার করার আগে, আপনাকে কয়েকটি পূর্বশর্তমূলক ধাপ পূরণ করতে হবে:
আপনার অবশ্যই একটি ক্যাম্পেইন ম্যানেজার ৩৬০ অ্যাকাউন্ট থাকতে হবে। সাইন আপ তথ্যের জন্য বিজ্ঞাপনদাতা/এজেন্সি বিভাগটি দেখুন।
আপনার Campaign Manager 360 অ্যাকাউন্টে API অ্যাক্সেস সক্রিয় করা থাকতে হবে। বেশিরভাগ অ্যাকাউন্টে এটি ডিফল্টরূপে সক্রিয় থাকে; আপনি নিশ্চিত না হলে, সহায়তার জন্য আপনার অ্যাকাউন্ট প্রতিনিধি বা Campaign Manager 360 সাপোর্ট টিমের সাথে যোগাযোগ করুন।
এই অ্যাকাউন্টে অ্যাক্সেসসহ আপনার একটি ইউজার প্রোফাইল থাকতে হবে। আপনার Campaign Manager 360 অ্যাকাউন্ট অ্যাডমিনিস্ট্রেটরকে দিয়ে এই অ্যাকাউন্টের সাথে যুক্ত একটি ইউজার প্রোফাইল তৈরি করিয়ে নিন।
ক্যাম্পেইন ম্যানেজার 360 UI-তে ব্যবহারকারীর প্রোফাইলের অনুমতিগুলো যাচাই করুন। এগুলোর মাধ্যমে নিয়ন্ত্রিত হয় যে ব্যবহারকারীর প্রোফাইল API থেকে কী কী অ্যাক্সেস করতে পারবে। API-এর জন্য আলাদা কোনো অনুমতি নেই।
একটি প্রকল্প তৈরি করুন
ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই ব্যবহার শুরু করতে, আপনাকে প্রথমে গুগল এপিআই কনসোলে একটি প্রজেক্ট তৈরি বা নির্বাচন করতে হবে এবং এপিআইটি সক্রিয় করতে হবে । এই লিঙ্কটি আপনাকে প্রক্রিয়াটির মাধ্যমে নির্দেশনা দেবে এবং ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই স্বয়ংক্রিয়ভাবে সক্রিয় করে দেবে।
পরিচয়পত্র তৈরি করুন
All requests you make to the Campaign Manager 360 API must be authorized. For a brief overview of authorization, read about how to authorize and identify your application to Google .
নিম্নলিখিত নির্দেশাবলী আপনাকে ইনস্টল করা অ্যাপ্লিকেশন ফ্লো-এর সাথে ব্যবহার করার জন্য একটি OAuth 2.0 ক্লায়েন্ট আইডি তৈরি করার প্রক্রিয়ায় পথ দেখাবে। সার্ভিস অ্যাকাউন্ট ফ্লো-এর সাথে ব্যবহারের জন্য ক্রেডেনশিয়াল তৈরি করার নির্দেশাবলীর জন্য, সার্ভিস অ্যাকাউন্টস গাইডটি দেখুন।
একটি গুগল এপিআই কনসোল প্রজেক্ট কনফিগার করতে ধাপগুলো অনুসরণ করুন।
- এপিআই কনসোলে ক্রেডেনশিয়ালস পৃষ্ঠাটি খুলুন।
Click CREATE CREDENTIALS > OAuth client ID .
আপনি যদি এই প্রজেক্টের জন্য আগে কোনো OAuth কনসেন্ট স্ক্রিন কনফিগার না করে থাকেন, তাহলে আপনাকে এখন তা করার জন্য নির্দেশ দেওয়া হবে। CONFIGURE CONSENT SCREEN-এ ক্লিক করুন।
Select the user type and click CREATE .
প্রাথমিক ফর্মটি পূরণ করুন। প্রয়োজনে আপনি এটি পরে সম্পাদনা করতে পারবেন। কাজ শেষ হলে সেভ-এ ক্লিক করুন।
চালিয়ে যাওয়ার জন্য Credentials > CREATE CREDENTIALS > OAuth client ID- তে ফিরে যান।
অ্যাপ্লিকেশন টাইপ হিসেবে ডেস্কটপ অ্যাপ নির্বাচন করুন, এটির একটি নাম দিন, তারপর তৈরি করুন-এ ক্লিক করুন।
কাজটি সম্পন্ন হলে, আপনাকে একটি OAuth 2.0 ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট দেওয়া হবে, যা আপনি JSON ফরম্যাটে ডাউনলোড করে পরবর্তী ব্যবহারের জন্য সংরক্ষণ করতে পারবেন।
একটি ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন
ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআইটি এইচটিটিপি এবং জেএসওএন-এর ওপর ভিত্তি করে তৈরি, তাই যেকোনো সাধারণ এইচটিটিপি ক্লায়েন্ট এতে অনুরোধ পাঠাতে এবং প্রতিক্রিয়াগুলো পার্স করতে পারে।
তবে, গুগল এপিআই ক্লায়েন্ট লাইব্রেরিগুলো উন্নততর ল্যাঙ্গুয়েজ ইন্টিগ্রেশন, উন্নত নিরাপত্তা এবং অনুমোদিত অনুরোধ করার সুবিধা প্রদান করে। এই ক্লায়েন্ট লাইব্রেরিগুলো বিভিন্ন প্রোগ্রামিং ভাষায় উপলব্ধ; এগুলো ব্যবহার করে আপনি ম্যানুয়ালি HTTP অনুরোধ সেট আপ করা এবং প্রতিক্রিয়াগুলো পার্স করার প্রয়োজনীয়তা এড়াতে পারেন।
শুরু করার জন্য, ডেভেলপমেন্টের কাজে ব্যবহৃত প্রোগ্রামিং ভাষাটি নির্বাচন করুন।
সি#
.NET-এর জন্য সর্বশেষ Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন পরিচালনার জন্য NuGet ব্যবহার করার পরামর্শ দেওয়া হয়।
NuGet প্যাকেজ ম্যানেজার কনসোলটি খুলুন এবং নিম্নলিখিত কমান্ডটি চালান:
Install-Package Google.Apis.Dfareporting.v5
আরও জানুন
জাভা
জাভার জন্য সর্বশেষ ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন পরিচালনার জন্য মেভেন ব্যবহার করার পরামর্শ দেওয়া হচ্ছে।
আপনার pom.xml ফাইলে নিম্নলিখিত ডিপেন্ডেন্সিটি যোগ করুন:
<dependency> <groupId>com.google.apis</groupId> <artifactId>google-api-services-dfareporting</artifactId> <version>v5-rev20260213-2.0.0</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava-jdk5</artifactId> </exclusion> </exclusions> </dependency>
আরও জানুন
পিএইচপি
PHP-এর জন্য সর্বশেষ Campaign Manager 360 API ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশন পরিচালনার জন্য Composer ব্যবহার করার পরামর্শ দেওয়া হচ্ছে।
একটি টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডটি চালান:
composer require google/apiclient
যদি আপনি ইতিমধ্যেই লাইব্রেরিটি ইনস্টল করে থাকেন এবং শুধু সর্বশেষ সংস্করণে আপডেট করতে চান:
composer update google/apiclient
আপনার সিস্টেমের ওপর নির্ভর করে, এই কমান্ডগুলোর শুরুতে sudo যোগ করার প্রয়োজন হতে পারে।
আরও জানুন
পাইথন
পাইথনের জন্য সর্বশেষ ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। ইনস্টলেশন পরিচালনার জন্য পিপ (pip) ব্যবহার করার পরামর্শ দেওয়া হচ্ছে।
একটি টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডটি চালান:
pip install --upgrade google-api-python-client
আপনার সিস্টেমের ওপর নির্ভর করে, এই কমান্ডগুলোর শুরুতে sudo যোগ করার প্রয়োজন হতে পারে।
আরও জানুন
রুবি
রুবির জন্য সর্বশেষ ক্যাম্পেইন ম্যানেজার ৩৬০ এপিআই ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন। আপনার ইনস্টলেশনটি পরিচালনা করার জন্য রুবিজেমস ব্যবহার করার পরামর্শ দেওয়া হচ্ছে।
একটি টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডটি চালান:
gem install google-api-client
যদি আপনি ইতিমধ্যেই লাইব্রেরিটি ইনস্টল করে থাকেন এবং শুধু সর্বশেষ সংস্করণে আপডেট করতে চান:
gem update -y google-api-client
আপনার সিস্টেমের ওপর নির্ভর করে, এই কমান্ডগুলোর শুরুতে sudo যোগ করার প্রয়োজন হতে পারে।
আরও জানুন
ক্লায়েন্ট লাইব্রেরি পৃষ্ঠায় আরও সমর্থিত ভাষা পাওয়া যাবে।
একটি অনুরোধ করুন
OAuth 2.0 ক্রেডেনশিয়াল তৈরি এবং ক্লায়েন্ট লাইব্রেরি ইনস্টল করা হয়ে গেলে, আপনি এখন ক্যাম্পেইন ম্যানেজার 360 API ব্যবহার শুরু করার জন্য প্রস্তুত। নিচের কুইকস্টার্টটি অনুসরণ করে জানুন কীভাবে অনুমোদন করতে হয়, আপনার ক্লায়েন্ট কনফিগার করতে হয় এবং আপনার প্রথম অনুরোধটি পাঠাতে হয়।
সি#
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন যেটির Campaign Manager 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি লগ ইন করা আছে, আপনার অ্যাপ্লিকেশনটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
// Load client secrets from the specified JSON file. GoogleClientSecrets clientSecrets; using(Stream json = new FileStream(pathToJsonFile, FileMode.Open, FileAccess.Read)) { clientSecrets = GoogleClientSecrets.Load(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); // 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); }
জাভা
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন যেটির Campaign Manager 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি লগ ইন করা আছে, আপনার অ্যাপ্লিকেশনটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
// 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()); }
পিএইচপি
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন যেটির Campaign Manager 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি লগ ইন করা আছে, আপনার অ্যাপ্লিকেশনটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
// 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() ); }
পাইথন
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন যেটির Campaign Manager 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি লগ ইন করা আছে, আপনার অ্যাপ্লিকেশনটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
# 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']))
রুবি
ক্লায়েন্ট সিক্রেটস ফাইলটি লোড করুন এবং অনুমোদন ক্রেডেনশিয়াল তৈরি করুন।
আপনি যখন প্রথমবার এই ধাপটি সম্পন্ন করবেন, তখন আপনার ব্রাউজারে একটি অনুমোদন অনুরোধ গ্রহণ করতে বলা হবে। গ্রহণ করার আগে, নিশ্চিত করুন যে আপনি এমন একটি Google অ্যাকাউন্ট দিয়ে লগ ইন করেছেন যেটির Campaign Manager 360-এ অ্যাক্সেস আছে। বর্তমানে যে অ্যাকাউন্টটি লগ ইন করা আছে, আপনার অ্যাপ্লিকেশনটি সেই অ্যাকাউন্টের পক্ষ থেকে ডেটা অ্যাক্সেস করার অনুমোদন পাবে।
# 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); }
আরও জানুন
এপিআই-এর সমস্ত পরিষেবা সম্পর্কে জানতে এপিআই রেফারেন্স দেখুন। প্রতিটি মেথড ডিটেইল পেজে একটি এমবেডেড এপিআই এক্সপ্লোরার রয়েছে, যা ব্যবহার করে আপনি সরাসরি আপনার ব্রাউজার থেকে টেস্ট রিকোয়েস্ট পাঠাতে পারবেন।
আমাদের অন্যান্য গাইডগুলো পর্যালোচনা করুন, যেগুলোতে উন্নত বিষয়াবলী আলোচনা করা হয়েছে এবং সাধারণ কাজগুলোর জন্য শুরু থেকে শেষ পর্যন্ত উদাহরণ দেওয়া হয়েছে।
যখন আপনি কোড লেখা শুরু করতে প্রস্তুত হবেন, তখন নির্দ্বিধায় আমাদের কোড স্যাম্পলের বিশাল সংগ্রহটি দেখে নিতে পারেন, যা আপনার প্রয়োজন অনুযায়ী পরিবর্তন ও পরিবর্ধন করা যেতে পারে।