Profile User Links: insert

Requires authorization

Adds a new user to the given view (profile). Try it now or see an example.

In addition to the standard parameters, this method supports the parameters listed in the parameters table.

Request

HTTP request

POST https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/profiles/profileId/entityUserLinks

Parameters

Parameter name Value Description
Path parameters
accountId string Account ID to create the user link for.
profileId string View (Profile) ID to create the user link for.
webPropertyId string Web Property ID to create the user link for.

Authorization

This request requires authorization with the following scope (read more about authentication and authorization).

Scope
https://www.googleapis.com/auth/analytics.manage.users

Request body

In the request body, supply a management.entityUserLink resource.

Response

If successful, this method returns a management.entityUserLink resource in the response body.

Examples

Note: The code examples available for this method do not represent all supported programming languages (see the client libraries page for a list of supported languages).

Java

Uses the Java client library.

/*
 * Note: This code assumes you have an authorized Analytics service object.
 * See the User Permissions Developer Guide for details.
 */

/*
 * This request creates a new View (Profile) User Link.
 */

// Construct the user reference object.
UserRef userRef = new UserRef();
userRef.setEmail("liz@gmail.com");

// Construct the permissions object.
Permissions permissions = new Permissions();
List<String> local = Arrays.asList("EDIT", "MANAGE_USERS");
permissions.setLocal(local);

// Construct the body of the request
EntityUserLink body = new EntityUserLink();
body.setPermissions(permissions);
body.setUserRef(userRef);

try {
  analytics.management().profileUserLinks().insert("123456", "UA-123456-1",
      "7654321", body).execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

PHP

Uses the PHP client library.

/**
* Note: This code assumes you have an authorized Analytics service object.
* See the User Permissions Developer Guide for details.
*/

// Create the user reference.
$userRef = new Google_Service_Analytics_UserRef();
$userRef->setEmail('liz@gmail.com');

// Create the permissions object.
$permissions = new Google_Service_Analytics_EntityUserLinkPermissions();
$permissions->setLocal(array('COLLABORATE', 'READ_AND_ANALYZE'));

// Create the view (profile) user link.
$link = new Google_Service_Analytics_EntityUserLink();
$link->setPermissions($permissions);
$link->setUserRef($userRef);

// This request creates a new View (Profile) User Link.
try {
  $analytics->management_profileUserLinks->insert('123456', 'UA-123456-1',
      '756321', $link);
} 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();
}


Python

Uses the Python client library.

# Note: This code assumes you have an authorized Analytics service object.
# See the User Permissions Developer Guide for details.

# This request creates a new Profile User Link.
try:
  analytics.management().profileUserLinks().insert(
      accountId='123456',
      webPropertyId='UA-123456-1',
      profileId='7654321',
      body={
          'permissions': {
              'local': [
                  'EDIT',
                  'MANAGE_USERS'
              ]
          },
          'userRef': {
              'email': 'liz@gmail.com'
          }
      }
  ).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))

JavaScript

Uses the JavaScript client library.

/*
 * Note: This code assumes you have an authorized Analytics client object.
 * See the User Permissions Developer Guide for details.
 */

/*
 * This request creates a new View (Profile) User Link.
 */
function insertProfileUserLink() {
  var request = gapi.client.analytics.management.profileUserLinks.insert(
    {
      'accountId': '123456',
      'webPropertyId': 'UA-123456-1',
      'profileId': '7654321',
      'resource': {
        'permissions': {
          'local': [
            'EDIT',
            'MANAGE_USERS'
          ]
        },
        'userRef': {
          'email': 'liz@gmail.com'
        }
      }
    });
  request.execute(function (response) { // Handle the response. });
}

Try it!

Use the APIs Explorer below to call this method on live data and see the response. Alternatively, try the standalone Explorer.