# Campaign Manager 360 API . userRoles

## Instance Methods

Close httplib2 connections.

Deletes an existing user role.

Gets one user role by ID.

Inserts a new user role.

Retrieves a list of user roles, possibly filtered. This method supports paging.

Retrieves the next page of results.

Updates an existing user role. This method supports patch semantics.

Updates an existing user role.

### Method Details

`close()`

    Close httplib2 connections.

`delete(profileId, id, x__xgafv=None)`

    Deletes an existing user role.

    Args:
      profileId: string, User profile ID associated with this request. (required)
      id: string, User role ID. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

`get(profileId, id, x__xgafv=None)`

    Gets one user role by ID.

    Args:
      profileId: string, User profile ID associated with this request. (required)
      id: string, User role ID. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }

`insert(profileId, body=None, x__xgafv=None)`

    Inserts a new user role.

    Args:
      profileId: string, User profile ID associated with this request. (required)
      body: object, The request body.
        The object takes the form of:

    { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }

`list(profileId, accountUserRoleOnly=None, ids=None, maxResults=None, pageToken=None, searchString=None, sortField=None, sortOrder=None, subaccountId=None, x__xgafv=None)`

    Retrieves a list of user roles, possibly filtered. This method supports paging.

    Args:
      profileId: string, User profile ID associated with this request. (required)
      accountUserRoleOnly: boolean, Select only account level user roles not associated with any specific subaccount.
      ids: string, Select only user roles with the specified IDs. (repeated)
      maxResults: integer, Maximum number of results to return.
      pageToken: string, Value of the nextPageToken from the previous result page.
      searchString: string, Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, "userrole*2015" will return objects with names like "userrole June 2015", "userrole April 2015", or simply "userrole 2015". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of "userrole" will match objects with name "my userrole", "userrole 2015", or simply "userrole".
      sortField: string, Field by which to sort the list.
        Allowed values
          ID -
          NAME -
      sortOrder: string, Order of sorted results.
        Allowed values
          ASCENDING - Ascending order.
          DESCENDING - Descending order.
      subaccountId: string, Select only user roles that belong to this subaccount.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # User Role List Response
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolesListResponse".
      "nextPageToken": "A String", # Pagination token to be used for the next list operation.
      "userRoles": [ # User role collection.
        { # Contains properties of auser role, which is used to manage user access.
          "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
          "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
          "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
          "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
          "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
          "permissions": [ # List of permissions associated with this user role.
            { # Contains properties of a user role permission.
              "availability": "A String", # Levels of availability for a user role permission.
              "id": "A String", # ID of this user role permission.
              "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
              "name": "A String", # Name of this user role permission.
              "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
            },
          ],
          "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
        },
      ],
    }

`list_next()`

    Retrieves the next page of results.

            Args:
              previous_request: The request for the previous page. (required)
              previous_response: The response from the request for the previous page. (required)

            Returns:
              A request object that you can call 'execute()' on to request the next
              page. Returns None if there are no more items in the collection.

`patch(profileId, id, body=None, x__xgafv=None)`

    Updates an existing user role. This method supports patch semantics.

    Args:
      profileId: string, User profile ID associated with this request. (required)
      id: string, Required. UserRole ID. (required)
      body: object, The request body.
        The object takes the form of:

    { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }

`update(profileId, body=None, x__xgafv=None)`

    Updates an existing user role.

    Args:
      profileId: string, User profile ID associated with this request. (required)
      body: object, The request body.
        The object takes the form of:

    { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Contains properties of auser role, which is used to manage user access.
      "accountId": "A String", # Account ID of this user role. This is a read-only field that can be left blank.
      "defaultUserRole": True or False, # Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions.
      "id": "A String", # ID of this user role. This is a read-only, auto-generated field.
      "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRole".
      "name": "A String", # Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account.
      "parentUserRoleId": "A String", # ID of the user role that this user role is based on or copied from. This is a required field.
      "permissions": [ # List of permissions associated with this user role.
        { # Contains properties of a user role permission.
          "availability": "A String", # Levels of availability for a user role permission.
          "id": "A String", # ID of this user role permission.
          "kind": "A String", # Identifies what kind of resource this is. Value: the fixed string "dfareporting#userRolePermission".
          "name": "A String", # Name of this user role permission.
          "permissionGroupId": "A String", # ID of the permission group that this user role permission belongs to.
        },
      ],
      "subaccountId": "A String", # Subaccount ID of this user role. This is a read-only field that can be left blank.
    }