# Google Analytics API . management . customDimensions

## Instance Methods

Get a custom dimension to which the user has access.

Create a new custom dimension.

Lists custom dimensions to which the user has access.

Updates an existing custom dimension. This method supports patch semantics.

Updates an existing custom dimension.

### Method Details

`get(accountId, webPropertyId, customDimensionId)`

    Get a custom dimension to which the user has access.

    Args:
      accountId: string, Account ID for the custom dimension to retrieve. (required)
      webPropertyId: string, Web property ID for the custom dimension to retrieve. (required)
      customDimensionId: string, The ID of the custom dimension to retrieve. (required)

    Returns:
      An object of the form:

        { # JSON template for Analytics Custom Dimension.
          "index": 42, # Index of the custom dimension.
          "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
          "name": "A String", # Name of the custom dimension.
          "created": "A String", # Time the custom dimension was created.
          "updated": "A String", # Time the custom dimension was last modified.
          "webPropertyId": "A String", # Property ID.
          "active": True or False, # Boolean indicating whether the custom dimension is active.
          "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
          "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
            "href": "A String", # Link to the property to which the custom dimension belongs.
            "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
          },
          "id": "A String", # Custom dimension ID.
          "selfLink": "A String", # Link for the custom dimension
          "accountId": "A String", # Account ID.
        }

`insert(accountId, webPropertyId, body)`

    Create a new custom dimension.

    Args:
      accountId: string, Account ID for the custom dimension to create. (required)
      webPropertyId: string, Web property ID for the custom dimension to create. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # JSON template for Analytics Custom Dimension.
        "index": 42, # Index of the custom dimension.
        "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
        "name": "A String", # Name of the custom dimension.
        "created": "A String", # Time the custom dimension was created.
        "updated": "A String", # Time the custom dimension was last modified.
        "webPropertyId": "A String", # Property ID.
        "active": True or False, # Boolean indicating whether the custom dimension is active.
        "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
        "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
          "href": "A String", # Link to the property to which the custom dimension belongs.
          "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
        },
        "id": "A String", # Custom dimension ID.
        "selfLink": "A String", # Link for the custom dimension
        "accountId": "A String", # Account ID.
      }

    Returns:
      An object of the form:

        { # JSON template for Analytics Custom Dimension.
          "index": 42, # Index of the custom dimension.
          "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
          "name": "A String", # Name of the custom dimension.
          "created": "A String", # Time the custom dimension was created.
          "updated": "A String", # Time the custom dimension was last modified.
          "webPropertyId": "A String", # Property ID.
          "active": True or False, # Boolean indicating whether the custom dimension is active.
          "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
          "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
            "href": "A String", # Link to the property to which the custom dimension belongs.
            "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
          },
          "id": "A String", # Custom dimension ID.
          "selfLink": "A String", # Link for the custom dimension
          "accountId": "A String", # Account ID.
        }

`list(accountId, webPropertyId, max_results=None, start_index=None)`

    Lists custom dimensions to which the user has access.

    Args:
      accountId: string, Account ID for the custom dimensions to retrieve. (required)
      webPropertyId: string, Web property ID for the custom dimensions to retrieve. (required)
      max_results: integer, The maximum number of custom dimensions to include in this response.
      start_index: integer, An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.

    Returns:
      An object of the form:

        { # A custom dimension collection lists Analytics custom dimensions to which the user has access. Each resource in the collection corresponds to a single Analytics custom dimension.
        "username": "A String", # Email ID of the authenticated user
        "kind": "analytics#customDimensions", # Collection type.
        "items": [ # Collection of custom dimensions.
          { # JSON template for Analytics Custom Dimension.
              "index": 42, # Index of the custom dimension.
              "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
              "name": "A String", # Name of the custom dimension.
              "created": "A String", # Time the custom dimension was created.
              "updated": "A String", # Time the custom dimension was last modified.
              "webPropertyId": "A String", # Property ID.
              "active": True or False, # Boolean indicating whether the custom dimension is active.
              "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
              "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
                "href": "A String", # Link to the property to which the custom dimension belongs.
                "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
              },
              "id": "A String", # Custom dimension ID.
              "selfLink": "A String", # Link for the custom dimension
              "accountId": "A String", # Account ID.
            },
        ],
        "itemsPerPage": 42, # The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
        "previousLink": "A String", # Link to previous page for this custom dimension collection.
        "startIndex": 42, # The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
        "nextLink": "A String", # Link to next page for this custom dimension collection.
        "totalResults": 42, # The total number of results for the query, regardless of the number of results in the response.
      }

`patch(accountId, webPropertyId, customDimensionId, body, ignoreCustomDataSourceLinks=None)`

    Updates an existing custom dimension. This method supports patch semantics.

    Args:
      accountId: string, Account ID for the custom dimension to update. (required)
      webPropertyId: string, Web property ID for the custom dimension to update. (required)
      customDimensionId: string, Custom dimension ID for the custom dimension to update. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # JSON template for Analytics Custom Dimension.
        "index": 42, # Index of the custom dimension.
        "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
        "name": "A String", # Name of the custom dimension.
        "created": "A String", # Time the custom dimension was created.
        "updated": "A String", # Time the custom dimension was last modified.
        "webPropertyId": "A String", # Property ID.
        "active": True or False, # Boolean indicating whether the custom dimension is active.
        "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
        "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
          "href": "A String", # Link to the property to which the custom dimension belongs.
          "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
        },
        "id": "A String", # Custom dimension ID.
        "selfLink": "A String", # Link for the custom dimension
        "accountId": "A String", # Account ID.
      }

      ignoreCustomDataSourceLinks: boolean, Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.

    Returns:
      An object of the form:

        { # JSON template for Analytics Custom Dimension.
          "index": 42, # Index of the custom dimension.
          "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
          "name": "A String", # Name of the custom dimension.
          "created": "A String", # Time the custom dimension was created.
          "updated": "A String", # Time the custom dimension was last modified.
          "webPropertyId": "A String", # Property ID.
          "active": True or False, # Boolean indicating whether the custom dimension is active.
          "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
          "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
            "href": "A String", # Link to the property to which the custom dimension belongs.
            "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
          },
          "id": "A String", # Custom dimension ID.
          "selfLink": "A String", # Link for the custom dimension
          "accountId": "A String", # Account ID.
        }

`update(accountId, webPropertyId, customDimensionId, body, ignoreCustomDataSourceLinks=None)`

    Updates an existing custom dimension.

    Args:
      accountId: string, Account ID for the custom dimension to update. (required)
      webPropertyId: string, Web property ID for the custom dimension to update. (required)
      customDimensionId: string, Custom dimension ID for the custom dimension to update. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # JSON template for Analytics Custom Dimension.
        "index": 42, # Index of the custom dimension.
        "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
        "name": "A String", # Name of the custom dimension.
        "created": "A String", # Time the custom dimension was created.
        "updated": "A String", # Time the custom dimension was last modified.
        "webPropertyId": "A String", # Property ID.
        "active": True or False, # Boolean indicating whether the custom dimension is active.
        "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
        "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
          "href": "A String", # Link to the property to which the custom dimension belongs.
          "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
        },
        "id": "A String", # Custom dimension ID.
        "selfLink": "A String", # Link for the custom dimension
        "accountId": "A String", # Account ID.
      }

      ignoreCustomDataSourceLinks: boolean, Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.

    Returns:
      An object of the form:

        { # JSON template for Analytics Custom Dimension.
          "index": 42, # Index of the custom dimension.
          "kind": "analytics#customDimension", # Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field.
          "name": "A String", # Name of the custom dimension.
          "created": "A String", # Time the custom dimension was created.
          "updated": "A String", # Time the custom dimension was last modified.
          "webPropertyId": "A String", # Property ID.
          "active": True or False, # Boolean indicating whether the custom dimension is active.
          "scope": "A String", # Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.
          "parentLink": { # Parent link for the custom dimension. Points to the property to which the custom dimension belongs.
            "href": "A String", # Link to the property to which the custom dimension belongs.
            "type": "analytics#webproperty", # Type of the parent link. Set to "analytics#webproperty".
          },
          "id": "A String", # Custom dimension ID.
          "selfLink": "A String", # Link for the custom dimension
          "accountId": "A String", # Account ID.
        }