승인 필요
사용자가 액세스할 수 있는 목표를 나열합니다. 지금 사용해 보기 또는 예시를 확인하세요.
이 메서드는 표준 매개변수 외에도 매개변수 표에 나열된 매개변수를 지원합니다.
요청
HTTP 요청
GET https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/profiles/profileId/goals
매개변수
매개변수 이름 | 값 | 설명 |
---|---|---|
경로 매개변수 | ||
accountId |
string |
목표를 가져올 계정 ID입니다. 특정 계정 ID 또는 사용자가 액세스할 수 있는 모든 계정을 나타내는 '~all '일 수 있습니다.
|
profileId |
string |
목표를 가져올 보기 (프로필) ID입니다. 특정 보기 (프로필) ID 또는 사용자가 액세스할 수 있는 모든 보기 (프로필)를 나타내는 '~all'일 수 있습니다. |
webPropertyId |
string |
목표를 가져올 웹 속성 ID입니다. 특정 웹 속성 ID 또는 사용자가 액세스할 수 있는 모든 웹 속성을 나타내는 '~all'일 수 있습니다. |
선택적 쿼리 매개변수 | ||
max-results |
integer |
이 응답에 포함할 최대 목표 수입니다. |
start-index |
integer |
검색할 첫 번째 목표의 색인입니다. 이 매개변수를 max-results 매개변수와 함께 페이지로 나누기 메커니즘으로 사용합니다. |
승인
이 요청에는 다음 범위 중 최소 하나를 사용하여 인증이 필요합니다. (인증 및 승인에 대해 자세히 알아보기)
범위 |
---|
https://www.googleapis.com/auth/analytics |
https://www.googleapis.com/auth/analytics.edit |
https://www.googleapis.com/auth/analytics.readonly |
요청 본문
이 메소드를 사용할 때는 요청 본문을 제공하지 마세요.
응답
응답은 요청된 목표별로 목표 리소스 하나를 포함하는 컬렉션입니다.
{ "kind": "analytics#goals", "username": string, "totalResults": integer, "startIndex": integer, "itemsPerPage": integer, "previousLink": string, "nextLink": string, "items": [ management.goals Resource ] }
속성 이름 | 값 | 설명 | Notes |
---|---|---|---|
kind |
string |
컬렉션 유형 값은 'analytics#goals '입니다. |
|
username |
string |
인증된 사용자의 이메일 ID | |
totalResults |
integer |
결과의 리소스 수와 관계없이 쿼리의 총 결과 수입니다. | |
startIndex |
integer |
리소스의 시작 색인으로, 기본적으로 1이거나 start-index 쿼리 매개변수로 지정됩니다. |
|
itemsPerPage |
integer |
반환되는 실제 리소스 수와 관계없이 응답에 포함할 수 있는 최대 리소스 수입니다. 값의 범위는 1~1,000이며 기본값은 1,000이거나 max-results 쿼리 매개변수로 지정됩니다. |
|
previousLink |
string |
이 목표 수집에 대한 이전 페이지의 링크입니다. | |
nextLink |
string |
이 목표 컬렉션의 다음 페이지로 연결되는 링크입니다. | |
items[] |
list |
목표 목록입니다. |
예
참고: 이 메서드에 제공되는 코드 예시가 지원되는 모든 프로그래밍 언어를 나타내는 것은 아닙니다. 지원되는 언어 목록은 클라이언트 라이브러리 페이지를 참조하세요.
Java
자바 클라이언트 라이브러리를 사용합니다.
/** * Note: This code assumes you have an authorized Analytics service object. * See the Goal Dev Guide for details. */ /** * Example #1: * This example requests a list of all goals for the authorized user. */ try { Goals goals = analytics.management. goals.list("12345", "UA-12345-1","523").execute(); } catch (GoogleJsonResponseException e) { System.err.println("There was a service error: " + e.getDetails().getCode() + " : " + e.getDetails().getMessage()); } /** * Example #2: * Retrieves all goals for all views (profiles) for the user, using a * wildcard '~all' as the profile ID. */ Goals goals = analytics.management.goals.list("12345", "UA-12345-1", "~all").execute(); /** * Example #3: * The results of the list method are stored in the Goals object. The following * code shows how to iterate through them. */ for (Goal goal : goals.getItems()) { System.out.println("Account ID: " + goal.getAccountId()); System.out.println("Property ID: " + goal.getWebPropertyId()); System.out.println("Property Internal Id: " + goal.getInternalWebPropertyId()); System.out.println("View (Profile) ID: " + goal.getId()); System.out.println("Goal Number: " + goal.getId()); System.out.println("Goal Name: " + goal.getName()); System.out.println("Goal Value: " + goal.getValue()); System.out.println("Is Goal Active: " + goal.getActive()); System.out.println("Goal Type: " + goal.getType()); System.out.println("Goal Created: " + goal.getCreated()); System.out.println("Goal Updated: " + goal.getUpdated()); if (goal.getUrlDestinationDetails() != null) { printGoalUrlDestinationDetails(goal.getUrlDestinationDetails()); } else if (goal.getVisitTimeOnSiteDetails() != null) { printGoalVisitTimeOnSiteDetails(goal.getVisitTimeOnSiteDetails()); } else if (goal.getVisitNumPagesDetails() != null) { printGoalVisitNumPagesDetails(goal.getVisitNumPagesDetails()); } else if (goal.getEventDetails() != null) { printGoalEventDetails(goal.getEventDetails()); } } /** * Example #4: * How to iterate through 'URL_DESTINATION' goals. */ private static void printUrlDestinationDetails(UrlDestinationDetails destinationDetails) { System.out.println("Goal Url: " + destinationDetails.getUrl()); System.out.println("Case Sensitive: " + destinationDetails.getCaseSensitive()); System.out.println("Match Type: " + destinationDetails.getMatchType()); System.out.println("First Step Required: " + destinationDetails.getFirstStepRequired()); if (destinationDetails.getSteps() != null) { System.out.println("Goal Steps: "); for (Steps step : destinationDetails.getSteps()) { System.out.println("Step Number: " + step.getNumber()); System.out.println("Name: " + step.getName()); System.out.println("URL: " + step.getUrl()); } } else { System.out.println("No Steps Configured"); } } /** * Example #5: * How to access a 'VISIT_TIME_ON_SITE' goal. */ private static void printVisitTimeOnSiteDetails( VisitTimeOnSiteDetails visitTimeOnSiteDetails) { System.out.println("Goal Type: VISIT_TIME_ON_SITE"); System.out.println("VISIT_TIME_ON_SITE - Comparison Type: " + visitTimeOnSiteDetails.getComparisonType()); System.out.println("VISIT_TIME_ON_SITE - Comparison Value: " + visitTimeOnSiteDetails.getComparisonValue()); } /** * Example #6: * How to access a 'VISIT_NUM_PAGES' goal. */ private static void printVisitNumPagesDetails(VisitNumPagesDetails visitNumPagesDetails) { System.out.println("Goal Type: VISIT_NUM_PAGES"); System.out.println("VISIT_NUM_PAGES - Comparison Type: " + visitNumPagesDetails.getComparisonType()); System.out.println("VISIT_NUM_PAGES - Comparison Value: " + visitNumPagesDetails.getComparisonValue()); } /** * Example #7: * How to iterate through 'EVENT' goals. */ private static void printGoalEventDetails(EventDetails eventDetails) { System.out.println("EVENT - Use Event Value: " + eventDetails.getUseEventValue()); if (eventDetails.getEventConditions() != null) { System.out.println("Goal Conditions: "); for (EventConditions conditions : eventDetails.getEventConditions()) { System.out.println("Type: " + conditions.getType()); if (conditions.getType().equals("VALUE")) { System.out.println("Comparison Type: " + conditions.getComparisonType()); System.out.println("Comparison Value: " + conditions.getComparisonValue()); } else { System.out.println("matchType: " + conditions.getMatchType()); System.out.println("expression: " + conditions.getExpression()); } } } }
2,399필리핀
PHP 클라이언트 라이브러리를 사용합니다.
/** * Note: This code assumes you have an authorized Analytics service object. * See the Goal Developer Guide for details. */ /** * Example #1: * Requests goals for a single view (profile). */ try { $goals = $analytics->management_goals->listManagementGoals('123456', 'UA-123456-1', '7654321'); } catch (apiServiceException $e) { print 'There was an Analytics API service error ' . $e->getCode() . ':' . $e->getMessage(); } catch (apiException $e) { print 'There was a general API error ' . $e->getCode() . ':' . $e->getMessage(); } /** * Example #2: * Retrieves all goals for all views (profiles) for the authorized user, using a * wildcard '~all' as the view (profile) ID. */ $goals = $analytics->management_goals->listManagementGoals('123456', 'UA-123456-1', '~all'); /** * Example #3: * The results of the list method are stored in the goals object. The following * code shows how to iterate through them. */ foreach ($goals->getItems() as $goal) { $html = <<<HTML <pre> Account id = {$goal->getAccountId()} Property id = {$goal->getWebPropertyId()} Internal property id = {$goal->getInternalWebPropertyId()} View (profile) id = {$goal->getProfileId()} Goal id = {$goal->getId()} Goal name = {$goal->getName()} Goal value = {$goal->getValue()} Goal active = {$goal->getActive()} Goal created = {$goal->getCreated()} Goal updated = {$goal->getUpdated()} Goal type = {$goal->getType()} HTML; // Check for the various types of Goals. $type = $goal->getType(); if ($type == 'URL_DESTINATION') { $details = $goal->getUrlDestinationDetails(); $html .=<<<HTML Goal URL = {$details->getUrl()} Case sensitive = {$details->getCaseSensitive()} Match type = {$details->getMatchType()} First step required = {$details->getFirstStepRequired()} HTML; // Iterate through the steps foreach($details->getSteps() as $step) { $html .= <<<HTML Step number = {$step->getNumber()} Step name = {$step->getName()} Step URL = {$step->getUrl()} HTML; } } else if ($type == 'VISIT_TIME_ON_SITE') { $details = $goal->getVisitTimeOnSiteDetails(); $html .= <<<HTML Comparison type = {$details->getComparisonType()} Comparison value = {$details->getComparisonValue()} HTML; } else if ($type == 'VISIT_NUM_PAGES') { $details = $goal->getVisitNumPagesDetails(); $html .= <<<HTML Comparison type = {$details->getComparisonType()} Comparison value = {$details->getComparisonValue()} HTML; } else if ($type == 'EVENT') { $details = $goal->getEventDetails(); $html .= <<<HTML Use event value = {$details->getUseEventValue()} HTML; // Get all the event goal conditions. foreach ($details->getEventConditions() as $condition) { $html .= <<<HTML Event type = {$condition->getType()} HTML; if ($condition->getType() == 'VALUE') { // Process VALUE. $html .= <<<HTML Comparison type = {$condition->getComparisonType()} Comparison value = {$condition->getComparisonValue()} HTML; } else { // Process CATEGORY, ACTION, LABEL. $html .= <<<HTML Match type = {$condition->getMatchType()} Expression = {$condition->getExpression()} HTML; } } } $html .= '</pre>'; print $html; }
Python
Python 클라이언트 라이브러리를 사용합니다.
# Note: This code assumes you have an authorized Analytics service object. # See the Goal Dev Guide for details. # Example #1: # Requests a list of all goals for the authorized user. try: goals = analytics.management().goals().list( accountId='12345', webPropertyId='UA-12345-1', profileId='523').execute() except TypeError, error: # Handle errors in constructing a query. print ('There was an error in constructing your query : %s' % error) except HttpError, error: # Handle API errors. print ('There was an API error : %s : %s' % (error.resp.status, error.resp.reason())) # Example #2: # Retrieves all goals for all views (profiles) for the user, using a # wildcard '~all' as the profile ID. goals = analytics.management().goals().list(accountId='12345', webPropertyId='UA-12345-1', profileId='~all').execute() # Example #3: # The results of the list method are stored in the Goals object. The following # code shows how to iterate through them. for goal in goals_response.get('items', []): print 'Account ID = %s' % goal.get('accountId') print 'Property ID = %s' % goal.get('webPropertyId') print 'Internal Property ID = %s' % goal.get('internalWebPropertyId') print 'View (Profile) ID = %s' % goal.get('profileId') print 'Goal Number = %s' % goal.get('id') print 'Goal Name = %s' % goal.get('name') print 'Goal Value = %s' % goal.get('value') print 'Goal Active = %s' % goal.get('active') print 'Goal Type = %s' % goal.get('type') print 'Created = %s' % goal.get('created') print 'Updated = %s' % goal.get('updated') # Print the goal details depending on the type of goal. if goal.get('urlDestinationDetails'): print_url_destination_goal_details(goal.get('urlDestinationDetails')) elif goal.get('visitTimeOnSiteDetails'): print_visit_time_on_site_goal_details(goal.get('visitTimeOnSiteDetails')) elif goal.get('visitNumPagesDetails'): print_visit_num_pages_goal_details(goal.get('visitNumPagesDetails')) elif goal.get('eventDetails'): print_event_goal_details(goal.get('eventDetails')) # Example #4: # How to access a 'URL_DESTINATION' goals. def print_url_destination_goal_details(goal_details): print 'Goal URL = %s' % goal_details.get('url') print 'Case Sensitive = %s' % goal_details.get('caseSensitive') print 'Match Type = %s' % goal_details.get('matchType') print 'First Step Required = %s' % goal_details.get('firstStepRequired') print '------ Url Destination Goal Steps -------' for goal_step in goal_details.get('steps', []): print 'Step Number = %s' % goal_step.get('number') print 'Step Name = %s' % goal_step.get('name') print 'Step URL = %s' % goal_step.get('url') else: print 'No Steps Configured' # Example #5: # How to access a 'VISIT_TIME_ON_SITE' goal. def print_visit_time_on_site_goal_details(goal_details): print '------ Visit Time On Site Goal -------' print 'Comparison Type = %s' % goal_details.get('comparisonType') print 'comparison Value = %s' % goal_details.get('comparisonValue') # Example #6: # How to iterate through 'VISIT_NUM_PAGES' goals. def print_visit_num_pages_goal_details(goal_details): print '------ Visit Num Pages Goal -------' print 'Comparison Type = %s' % goal_details.get('comparisonType') print 'comparison Value = %s' % goal_details.get('comparisonValue') # Example #7: # How to iterate through 'EVENT' goals. def print_event_goal_details(goal_details): print 'Use Event Value = %s' % goal_details.get('useEventValue') for event_condition in goal_details.get('eventConditions', []): event_type = event_condition.get('type') print 'Type = %s' % event_type if event_type == 'VALUE': print 'Comparison Type = %s' % event_condition.get('comparisonType') print 'Comparison Value = %s' % event_condition.get('comparisonValue') else: # CATEGORY, ACTION, LABEL types. print 'Match Type = %s' % event_condition.get('matchType') print 'Expression = %s' % event_condition.get('expression')
JavaScript
JavaScript 클라이언트 라이브러리를 사용합니다.
/* * Note: This code assumes you have an authorized Analytics client object. * See the Goals Developer Guide for details. */ /* * Example 1: * Requests a list of all goals for the authorized user. */ function listGoals() { var request = gapi.client.analytics.management.goals.list({ 'accountId': '123456', 'webPropertyId': 'UA-123456-1', 'profileId': '7654321' }); request.execute(printGoals); } /* * Example 2: * The results of the list method are passed as the results object. * The following code shows how to iterate through them. */ function printGoals(results) { if (results && !results.error) { var goals = results.items; for (var i = 0, goal; goal = goals[i]; i++) { console.log('Account Id: ' + goal.accountId); console.log('Property Id: ' + goal.webPropertyId); console.log('Internal Property Id: ' + goal.internalWebPropertyId); console.log('View (Profile) Id: ' + goal.profileId); console.log('Goal Id: ' + goal.id); console.log('Goal Name: ' + goal.name); console.log('Goal Value: ' + goal.value); console.log('Goal Active: ' + goal.active); console.log('Goal Type: ' + goal.type); console.log('Created: ' + goal.created); console.log('Updated: ' + goal.updated); // Print the goal details depending on the type of goal. if (goal.urlDestinationDetails) { printDestinationDetails(goal.urlDestinationDetails); } else if (goal.visitTimeOnSiteDetails) { printComparisonDetails(goal.visitTimeOnSiteDetails); } else if (goal.visitNumPagesDetails) { printComparisonDetails(goal.visitNumPagesDetails); } else if (goal.eventDetails) { printEventDetails(goal.eventDetails); } } } } function printDestinationDetails(details) { console.log('Goal URL: ' + details.url); console.log('Case Sensitive: ' + details.caseSensitive); console.log('Match Type: ' + details.matchType); console.log('First Step Required: ' + details.firstStepRequired); // Iterate through the steps. var steps = details.steps; if (steps) { for (var i = 0, step; step = steps[i]; i++) { console.log('Step Number: ' + step.number); console.log('Step Name: ' + step.name); console.log('Step URL: ' + step.url); } } else { console.log('No Steps Configured.'); } } function printComparisonDetails(details) { console.log('Comparison Type: ' + details.comparisonType); console.log('Comparison Value: ' + details.comparisonValue); } function printEventDetails(details) { var conditions = details.eventContitions; if (conditions) { for (var i = 0, condition; condition = conditions[i]; i++) { console.log('Condition Type: ' + condition.type); if (condition.type == 'VALUE') { console.log('Comparison Type: ' + condition.comparisonType); console.log('Comparison Value: ' + condition.comparisonValue); } else { console.log('Match Type: ' + condition.matchType); console.log('Expression: ' + condition.expression); } } } }
사용해 보기
아래의 API 탐색기를 사용하여 실시간 데이터를 대상으로 이 메소드를 호출하고 응답을 확인해 보세요. 또는 독립형 탐색기를 사용해 보세요.