Campaign Manager 360 API cung cấp quyền truy cập có lập trình vào thông tin từ tài khoản Campaign Manager 360 của bạn. API này dùng để quản lý và tạo chiến dịch cũng như báo cáo, giống như cách bạn làm thông qua các dịch vụ web của Campaign Manager 360 và Trình tạo báo cáo.
Hướng dẫn này mô tả cách bắt đầu sử dụng API Campaign Manager 360.
Điều kiện tiên quyết
Trước khi sử dụng API Campaign Manager 360, bạn cần phải đáp ứng một số bước bắt buộc sau:
Bạn phải có tài khoản Campaign Manager 360. Hãy xem phần Nhà quảng cáo/Công ty quảng cáo để biết thông tin đăng ký.
Bạn phải bật Quyền truy cập API cho tài khoản Campaign Manager 360. Theo mặc định, hầu hết tài khoản đều bật tính năng này; nếu bạn không chắc chắn, hãy liên hệ với người đại diện tài khoản hoặc nhóm hỗ trợ Campaign Manager 360 để được trợ giúp.
Bạn phải có hồ sơ người dùng có quyền truy cập vào tài khoản này. Yêu cầu quản trị viên tài khoản Campaign Manager 360 tạo một hồ sơ người dùng liên kết với tài khoản này.
Kiểm tra quyền đối với hồ sơ người dùng trong giao diện người dùng của Campaign Manager 360. Các quyền này kiểm soát nội dung mà hồ sơ người dùng có thể truy cập từ API. Không có quyền API riêng.
Tạo một dự án
Để bắt đầu sử dụng API Campaign Manager 360, trước tiên, bạn cần tạo hoặc chọn một dự án trong Google API Console rồi bật API. Khi sử dụng đường liên kết này, bạn sẽ được hướng dẫn thực hiện quy trình và tự động kích hoạt API Campaign Manager 360.
Tạo thông tin xác thực
Tất cả yêu cầu bạn gửi đến API Campaign Manager 360 đều phải được uỷ quyền. Để biết thông tin tổng quan ngắn gọn về việc uỷ quyền, hãy đọc về cách uỷ quyền và xác định ứng dụng cho Google.
Hướng dẫn sau đây sẽ hướng dẫn bạn quy trình tạo mã ứng dụng khách OAuth 2.0 để sử dụng với quy trình ứng dụng đã cài đặt. Để biết hướng dẫn tạo thông tin xác thực để sử dụng với luồng tài khoản dịch vụ, hãy tham khảo hướng dẫn về Tài khoản dịch vụ.
Làm theo các bước để định cấu hình dự án Google API Console.
- Mở trang Thông tin xác thực trong API Console.
Nhấp vào CREATE CREDENTIALS (TẠO THÔNG TIN XÁC THỰC) > OAuth client ID (Mã ứng dụng khách OAuth).
Nếu trước đây bạn chưa định cấu hình màn hình xin phép bằng OAuth cho dự án này, thì bạn sẽ được hướng dẫn thực hiện việc này. Nhấp vào ĐỊNH CẤU HÌNH MÀN HÌNH YÊU CẦU ĐỒNG YÊU.
Chọn loại người dùng rồi nhấp vào TẠO.
Điền vào biểu mẫu ban đầu. Bạn có thể chỉnh sửa thông tin này sau nếu cần. Nhấp vào Lưu khi hoàn tất.
Quay lại phần Thông tin xác thực > TẠO THÔNG TIN XÁC THỰC > Mã ứng dụng khách OAuth để tiếp tục.
Chọn Ứng dụng dành cho máy tính làm loại ứng dụng, đặt tên cho ứng dụng, sau đó nhấp vào Tạo.
Khi hoàn tất, bạn sẽ thấy mã ứng dụng OAuth 2.0 và khoá ứng dụng. Bạn có thể tải mã này xuống ở định dạng JSON và lưu để sử dụng sau.
Cài đặt thư viện ứng dụng
API Campaign Manager 360 được xây dựng trên HTTP và JSON, do đó, mọi ứng dụng HTTP chuẩn đều có thể gửi yêu cầu tới API này và phân tích cú pháp các phản hồi.
Tuy nhiên, các thư viện ứng dụng API của Google cung cấp tính năng tích hợp ngôn ngữ tốt hơn, có mức độ bảo mật cao hơn và hỗ trợ thực hiện các yêu cầu được uỷ quyền. Các thư viện ứng dụng được cung cấp bằng một số ngôn ngữ lập trình. Bằng cách sử dụng các thư viện đó, bạn có thể tránh được việc phải thiết lập yêu cầu HTTP và phân tích cú pháp phản hồi theo cách thủ công.
Để bắt đầu, hãy chọn ngôn ngữ lập trình mà bạn đang sử dụng để phát triển.
C#
Cài đặt thư viện ứng dụng API Campaign Manager 360 mới nhất cho .NET. Bạn nên sử dụng NuGet để quản lý quá trình cài đặt.
Mở Bảng điều khiển Trình quản lý gói NuGet và chạy lệnh sau:
Install-Package Google.Apis.Dfareporting.v3_4
Tìm hiểu thêm
Java
Cài đặt thư viện ứng dụng Campaign Manager 360 API mới nhất cho Java. Bạn nên sử dụng Maven để quản lý quá trình cài đặt.
Thêm phần phụ thuộc sau vào tệp pom.xml
:
<dependency> <groupId>com.google.apis</groupId> <artifactId>google-api-services-dfareporting</artifactId> <version>v4-rev20250722-2.0.0</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava-jdk5</artifactId> </exclusion> </exclusions> </dependency>
Tìm hiểu thêm
PHP
Cài đặt thư viện ứng dụng Campaign Manager 360 API mới nhất cho PHP. Bạn nên sử dụng Composer để quản lý quá trình cài đặt.
Mở một cửa sổ dòng lệnh rồi chạy lệnh sau:
composer require google/apiclient
Nếu bạn đã cài đặt thư viện và chỉ muốn cập nhật lên phiên bản mới nhất:
composer update google/apiclient
Tuỳ thuộc vào hệ thống của bạn, bạn có thể cần phải thêm sudo
vào phần đầu các lệnh này.
Tìm hiểu thêm
Python
Cài đặt thư viện ứng dụng Campaign Manager 360 API mới nhất cho Python. Bạn nên sử dụng pip để quản lý quá trình cài đặt.
Mở một cửa sổ dòng lệnh rồi chạy lệnh sau:
pip install --upgrade google-api-python-client
Tuỳ thuộc vào hệ thống của bạn, bạn có thể cần phải thêm sudo
vào phần đầu các lệnh này.
Tìm hiểu thêm
Ruby
Cài đặt thư viện ứng dụng Campaign Manager 360 API mới nhất cho Ruby. Bạn nên sử dụng RubyGems để quản lý quá trình cài đặt.
Mở một cửa sổ dòng lệnh rồi chạy lệnh sau:
gem install google-api-client
Nếu bạn đã cài đặt thư viện và chỉ muốn cập nhật lên phiên bản mới nhất:
gem update -y google-api-client
Tuỳ thuộc vào hệ thống của bạn, bạn có thể cần phải thêm sudo
vào phần đầu các lệnh này.
Tìm hiểu thêm
Bạn có thể xem thêm các ngôn ngữ được hỗ trợ trên trang Thư viện ứng dụng.
Tạo yêu cầu
Sau khi tạo thông tin xác thực OAuth 2.0 và cài đặt thư viện ứng dụng, bạn đã sẵn sàng bắt đầu sử dụng API Campaign Manager 360. Tìm hiểu cách uỷ quyền, định cấu hình ứng dụng và đưa ra yêu cầu đầu tiên bằng cách làm theo hướng dẫn nhanh bên dưới.
C#
Tải tệp bí mật của ứng dụng và tạo thông tin xác thực uỷ quyền.
Trong lần đầu thực hiện bước này, bạn sẽ được yêu cầu chấp nhận lời nhắc uỷ quyền trong trình duyệt. Trước khi chấp nhận, hãy đảm bảo bạn đã đăng nhập bằng Tài khoản Google có quyền truy cập vào Campaign Manager 360. Ứng dụng của bạn sẽ được uỷ quyền truy cập vào dữ liệu thay mặt cho bất kỳ tài khoản nào đang đăng nhập.
// 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;
Tạo ứng dụng Dfareporting được uỷ quyền.
// 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" } );
Thực hiện một thao tác.
// 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
Tải tệp bí mật của ứng dụng và tạo thông tin xác thực uỷ quyền.
Trong lần đầu thực hiện bước này, bạn sẽ được yêu cầu chấp nhận lời nhắc uỷ quyền trong trình duyệt. Trước khi chấp nhận, hãy đảm bảo bạn đã đăng nhập bằng Tài khoản Google có quyền truy cập vào Campaign Manager 360. Ứng dụng của bạn sẽ được uỷ quyền truy cập vào dữ liệu thay mặt cho bất kỳ tài khoản nào đang đăng nhập.
// 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");
Tạo ứng dụng Dfareporting được uỷ quyền.
// 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();
Thực hiện một thao tác.
// 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
Tải tệp bí mật của ứng dụng và tạo thông tin xác thực uỷ quyền.
Trong lần đầu thực hiện bước này, bạn sẽ được yêu cầu chấp nhận lời nhắc uỷ quyền trong trình duyệt. Trước khi chấp nhận, hãy đảm bảo bạn đã đăng nhập bằng Tài khoản Google có quyền truy cập vào Campaign Manager 360. Ứng dụng của bạn sẽ được uỷ quyền truy cập vào dữ liệu thay mặt cho bất kỳ tài khoản nào đang đăng nhập.
// 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())); }
Tạo ứng dụng Dfareporting được uỷ quyền.
// Create a Dfareporting service object. $service = new Google_Service_Dfareporting($client);
Thực hiện một thao tác.
// 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
Tải tệp bí mật của ứng dụng và tạo thông tin xác thực uỷ quyền.
Trong lần đầu thực hiện bước này, bạn sẽ được yêu cầu chấp nhận lời nhắc uỷ quyền trong trình duyệt. Trước khi chấp nhận, hãy đảm bảo bạn đã đăng nhập bằng Tài khoản Google có quyền truy cập vào Campaign Manager 360. Ứng dụng của bạn sẽ được uỷ quyền truy cập vào dữ liệu thay mặt cho bất kỳ tài khoản nào đang đăng nhập.
# 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())
Tạo ứng dụng Dfareporting được uỷ quyền.
# Construct a service object via the discovery service. service = discovery.build('dfareporting', 'v4', http=http)
Thực hiện một thao tác.
# 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
Tải tệp bí mật của ứng dụng và tạo thông tin xác thực uỷ quyền.
Trong lần đầu thực hiện bước này, bạn sẽ được yêu cầu chấp nhận lời nhắc uỷ quyền trong trình duyệt. Trước khi chấp nhận, hãy đảm bảo bạn đã đăng nhập bằng Tài khoản Google có quyền truy cập vào Campaign Manager 360. Ứng dụng của bạn sẽ được uỷ quyền truy cập vào dữ liệu thay mặt cho bất kỳ tài khoản nào đang đăng nhập.
# 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
Tạo ứng dụng Dfareporting được uỷ quyền.
# 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'
Thực hiện một thao tác.
// 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); }
Tìm hiểu thêm
Truy cập vào Tài liệu tham khảo API để tìm hiểu về tất cả các dịch vụ mà API cung cấp. Mỗi trang chi tiết về phương thức đều có một Trình khám phá API được nhúng mà bạn có thể sử dụng để tạo yêu cầu kiểm thử ngay trong trình duyệt.
Xem các hướng dẫn khác của chúng tôi về các chủ đề nâng cao và cung cấp ví dụ toàn diện về các tác vụ phổ biến.
Khi bạn đã sẵn sàng bắt đầu viết mã, hãy thoải mái khám phá bộ sưu tập mã mẫu phong phú của chúng tôi. Bạn có thể sửa đổi và mở rộng bộ sưu tập này cho phù hợp với nhu cầu của mình.