# Recommender API . projects . locations . insightTypes . insights

## Instance Methods

Close httplib2 connections.

Gets the requested insight. Requires the recommender.*.get IAM permission for the specified insight type.

Lists insights for the specified Cloud Resource. Requires the recommender.*.list IAM permission for the specified insight type.

Retrieves the next page of results.

Marks the Insight State as Accepted. Users can use this method to indicate to the Recommender API that they have applied some action based on the insight. This stops the insight content from being updated. MarkInsightAccepted can be applied to insights in ACTIVE state. Requires the recommender.*.update IAM permission for the specified insight.

### Method Details

`close()`

    Close httplib2 connections.

`get(name, x__xgafv=None)`

    Gets the requested insight. Requires the recommender.*.get IAM permission for the specified insight type.

    Args:
      name: string, Required. Name of the insight. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An insight along with the information used to derive the insight. The insight may have associated recommendations as well.
      "associatedRecommendations": [ # Recommendations derived from this insight.
        { # Reference to an associated recommendation.
          "recommendation": "A String", # Recommendation resource name, e.g. projects/[PROJECT_NUMBER]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/recommendations/[RECOMMENDATION_ID]
        },
      ],
      "category": "A String", # Category being targeted by the insight.
      "content": { # A struct of custom fields to explain the insight. Example: "grantedPermissionsCount": "1000"
        "a_key": "", # Properties of the object.
      },
      "description": "A String", # Free-form human readable summary in English. The maximum length is 500 characters.
      "etag": "A String", # Fingerprint of the Insight. Provides optimistic locking when updating states.
      "insightSubtype": "A String", # Insight subtype. Insight content schema will be stable for a given subtype.
      "lastRefreshTime": "A String", # Timestamp of the latest data used to generate the insight.
      "name": "A String", # Identifier. Name of the insight.
      "observationPeriod": "A String", # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
      "severity": "A String", # Insight's severity.
      "stateInfo": { # Information related to insight state. # Information state and metadata.
        "state": "A String", # Insight state.
        "stateMetadata": { # A map of metadata for the state, provided by user or automations systems.
          "a_key": "A String",
        },
      },
      "targetResources": [ # Fully qualified resource names that this insight is targeting.
        "A String",
      ],
    }

`list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)`

    Lists insights for the specified Cloud Resource. Requires the recommender.*.list IAM permission for the specified insight type.

    Args:
      parent: string, Required. The container resource on which to execute the request. Acceptable formats: * `projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]` * `projects/[PROJECT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]` * `billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]` * `folders/[FOLDER_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]` * `organizations/[ORGANIZATION_ID]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]` LOCATION here refers to GCP Locations: https://cloud.google.com/about/locations/ INSIGHT_TYPE_ID refers to supported insight types: https://cloud.google.com/recommender/docs/insights/insight-types. (required)
      filter: string, Optional. Filter expression to restrict the insights returned. Supported filter fields: * `stateInfo.state` * `insightSubtype` * `severity` * `targetResources` Examples: * `stateInfo.state = ACTIVE OR stateInfo.state = DISMISSED` * `insightSubtype = PERMISSIONS_USAGE` * `severity = CRITICAL OR severity = HIGH` * `targetResources : //compute.googleapis.com/projects/1234/zones/us-central1-a/instances/instance-1` * `stateInfo.state = ACTIVE AND (severity = CRITICAL OR severity = HIGH)` The max allowed filter length is 500 characters. (These expressions are based on the filter language described at https://google.aip.dev/160)
      pageSize: integer, Optional. The maximum number of results to return from this request. Non-positive values are ignored. If not specified, the server will determine the number of results to return.
      pageToken: string, Optional. If present, retrieves the next batch of results from the preceding call to this method. `page_token` must be the value of `next_page_token` from the previous response. The values of other method parameters must be identical to those in the previous call.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response to the `ListInsights` method.
      "insights": [ # The set of insights for the `parent` resource.
        { # An insight along with the information used to derive the insight. The insight may have associated recommendations as well.
          "associatedRecommendations": [ # Recommendations derived from this insight.
            { # Reference to an associated recommendation.
              "recommendation": "A String", # Recommendation resource name, e.g. projects/[PROJECT_NUMBER]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/recommendations/[RECOMMENDATION_ID]
            },
          ],
          "category": "A String", # Category being targeted by the insight.
          "content": { # A struct of custom fields to explain the insight. Example: "grantedPermissionsCount": "1000"
            "a_key": "", # Properties of the object.
          },
          "description": "A String", # Free-form human readable summary in English. The maximum length is 500 characters.
          "etag": "A String", # Fingerprint of the Insight. Provides optimistic locking when updating states.
          "insightSubtype": "A String", # Insight subtype. Insight content schema will be stable for a given subtype.
          "lastRefreshTime": "A String", # Timestamp of the latest data used to generate the insight.
          "name": "A String", # Identifier. Name of the insight.
          "observationPeriod": "A String", # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
          "severity": "A String", # Insight's severity.
          "stateInfo": { # Information related to insight state. # Information state and metadata.
            "state": "A String", # Insight state.
            "stateMetadata": { # A map of metadata for the state, provided by user or automations systems.
              "a_key": "A String",
            },
          },
          "targetResources": [ # Fully qualified resource names that this insight is targeting.
            "A String",
          ],
        },
      ],
      "nextPageToken": "A String", # A token that can be used to request the next page of results. This field is empty if there are no additional results.
    }

`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.

`markAccepted(name, body=None, x__xgafv=None)`

    Marks the Insight State as Accepted. Users can use this method to indicate to the Recommender API that they have applied some action based on the insight. This stops the insight content from being updated. MarkInsightAccepted can be applied to insights in ACTIVE state. Requires the recommender.*.update IAM permission for the specified insight.

    Args:
      name: string, Required. Name of the insight. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request for the `MarkInsightAccepted` method.
      "etag": "A String", # Required. Fingerprint of the Insight. Provides optimistic locking.
      "stateMetadata": { # Optional. State properties user wish to include with this state. Full replace of the current state_metadata.
        "a_key": "A String",
      },
    }

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

    Returns:
      An object of the form:

        { # An insight along with the information used to derive the insight. The insight may have associated recommendations as well.
      "associatedRecommendations": [ # Recommendations derived from this insight.
        { # Reference to an associated recommendation.
          "recommendation": "A String", # Recommendation resource name, e.g. projects/[PROJECT_NUMBER]/locations/[LOCATION]/recommenders/[RECOMMENDER_ID]/recommendations/[RECOMMENDATION_ID]
        },
      ],
      "category": "A String", # Category being targeted by the insight.
      "content": { # A struct of custom fields to explain the insight. Example: "grantedPermissionsCount": "1000"
        "a_key": "", # Properties of the object.
      },
      "description": "A String", # Free-form human readable summary in English. The maximum length is 500 characters.
      "etag": "A String", # Fingerprint of the Insight. Provides optimistic locking when updating states.
      "insightSubtype": "A String", # Insight subtype. Insight content schema will be stable for a given subtype.
      "lastRefreshTime": "A String", # Timestamp of the latest data used to generate the insight.
      "name": "A String", # Identifier. Name of the insight.
      "observationPeriod": "A String", # Observation period that led to the insight. The source data used to generate the insight ends at last_refresh_time and begins at (last_refresh_time - observation_period).
      "severity": "A String", # Insight's severity.
      "stateInfo": { # Information related to insight state. # Information state and metadata.
        "state": "A String", # Insight state.
        "stateMetadata": { # A map of metadata for the state, provided by user or automations systems.
          "a_key": "A String",
        },
      },
      "targetResources": [ # Fully qualified resource names that this insight is targeting.
        "A String",
      ],
    }