Requiere autorización
Enumera los objetivos a los que el usuario tiene acceso. Pruébalo ahora y ve un ejemplo.
Además de los parámetros estándar, este método admite los parámetros enumerados en la tabla de parámetros.
Solicitud
Solicitud HTTP
GET https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/profiles/profileId/goals
Parámetros
Nombre del parámetro | Valor | Descripción |
---|---|---|
Parámetros de ruta de acceso | ||
accountId |
string |
ID de la cuenta para los que se recuperan los objetivos. Puede ser un ID de cuenta específico o "~all ", que hace referencia a todas las cuentas a las que tiene acceso un usuario.
|
profileId |
string |
ID de vista (perfil) para el que se recuperan los objetivos. Puede ser un ID de vista (perfil) específico o "~todos", que hace referencia a todas las vistas (perfiles) a las que tiene acceso el usuario. |
webPropertyId |
string |
Es el ID de propiedad web de los que se deben recuperar los objetivos. Puede ser un ID de propiedad web específico o "~all", que hace referencia a todas las propiedades web a las que el usuario tiene acceso. |
Parámetros de consulta opcionales | ||
max-results |
integer |
La cantidad máxima de objetivos que se incluirán en esta respuesta. |
start-index |
integer |
Un índice del primer objetivo que se recuperará. Utiliza este parámetro como un mecanismo de paginación junto con el parámetro max-results. |
Autorización
Esta solicitud requiere autorización con al menos uno de los siguientes alcances (obtén más información acerca de la autenticación y autorización).
Permiso |
---|
https://www.googleapis.com/auth/analytics |
https://www.googleapis.com/auth/analytics.edit |
https://www.googleapis.com/auth/analytics.readonly |
Cuerpo de la solicitud
No proporciones un cuerpo de solicitud con este método.
Respuesta
La respuesta es una colección que contiene un recurso de objetivo para cada objetivo solicitado.
{ "kind": "analytics#goals", "username": string, "totalResults": integer, "startIndex": integer, "itemsPerPage": integer, "previousLink": string, "nextLink": string, "items": [ management.goals Resource ] }
Nombre de la propiedad | Valor | Descripción | Notas |
---|---|---|---|
kind |
string |
Tipo de colección. El valor es "analytics#goals ". |
|
username |
string |
ID de correo electrónico del usuario autenticado | |
totalResults |
integer |
La cantidad total de resultados para la consulta, sin importar la cantidad de recursos en el resultado. | |
startIndex |
integer |
El índice inicial de los recursos, que es 1 de forma predeterminada o que el parámetro de consulta start-index lo especifica. |
|
itemsPerPage |
integer |
El número máximo de recursos que puede contener la respuesta, sin importar el número real de recursos mostrados. Su valor varía de 1 a 1,000 y tiene un valor predeterminado de 1,000, o lo especifica el parámetro de consulta max-results . |
|
previousLink |
string |
Vínculo a la página anterior de esta colección de objetivos. | |
nextLink |
string |
Vínculo a la página siguiente de esta colección de objetivos. | |
items[] |
list |
Una lista de objetivos. |
Ejemplos
Nota: Los ejemplos de código disponibles para este método no representan todos los lenguajes de programación admitidos (consulta la página de bibliotecas cliente para consultar una lista de lenguajes admitidos).
Java
Usa la biblioteca cliente de 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()); } } } }
PHP
Usa la biblioteca cliente de 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
Usa la biblioteca cliente de 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
Usa la biblioteca cliente de 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); } } } }
Pruébala
Usa el Explorador de APIs que aparece a continuación para llamar a este método con datos en tiempo real y ver la respuesta. También puedes probar el Explorador independiente.