# Label coverage of Google Cloud resources

> System labels (goog-*) never count as labeled.

Source: https://docs.levelfour.ai/api-reference/google-cloud/get-providers-gcp-inventory-label-hygiene


## GET /api/v1/providers/gcp/inventory/label-hygiene

System labels (goog-*) never count as labeled.

### Authentication

Send `Authorization: Bearer <token>`.

### Parameters

- `keys` (query, array of string, nullable)

### Responses

#### 200: Successful Response

- `success` (boolean, default `true`)
- `timestamp` (string, required)
- `data` (object, required)
  - `items` (array of object, required)
    - `resource_type` (string, required)
    - `total` (integer, required)
    - `labeled` (integer, required): Resources carrying every requested key, or any user label when none is given
    - `coverage_pct` (number, required)
  - `top_unlabeled` (array of object, required)
    - `resource_id` (string, required)
    - `resource_type` (string, required)
    - `project_id` (string, required)
    - `monthly_cost` (number, nullable, required): Last full month. Detailed export cost for the resource, net of every credit except promotional and free-tier credits. Null when no Detailed export names resources.

#### Errors

- `400`: Bad Request
- `401`: Authentication Error
- `403`: Authorization Error
- `404`: Not Found
- `409`: Conflict
- `422`: Validation Error
- `429`: Rate Limit Exceeded
- `500`: Internal Server Error

Body of `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`:

- `success` (`false`, required)
- `error` (object, required)
  - `code` (string, required)
  - `message` (string, required)
  - `details` (any)
- `timestamp` (date-time string, required)
