# Prometheus Endpoint Extractor (`datamule/prometheus-endpoint-extractor`) Actor

Point at any Prometheus HTTP API v1 server (Prometheus, Thanos, Mimir, VictoriaMetrics, Grafana Agent) and export PromQL query results, range series, label values, scrape targets, rules, metric metadata and build info as clean rows. One actor over every Prometheus-compatible server.

- **URL**: https://apify.com/datamule/prometheus-endpoint-extractor.md
- **Developed by:** [Datamule](https://apify.com/datamule) (community)
- **Categories:** Developer tools, Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.35 / 1,000 metric series rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Prometheus Endpoint Extractor

**Point at any Prometheus HTTP API and export the data as clean, tabular rows.**
One actor works against every server that speaks the [Prometheus HTTP API v1](https://prometheus.io/docs/prometheus/latest/querying/api/) —
Prometheus itself, **Thanos, Cortex/Mimir, VictoriaMetrics, Grafana Agent**, and
any Prometheus-compatible TSDB. Give it a base URL and a mode; get back rows you
can pipe into a sheet, a dataset, a webhook, or another tool.

No PromQL client, no Grafana, no per-server scraper. Just the standard API,
turned into structured data.

### What it does

Nine extraction modes, each turning a Prometheus endpoint into flat rows:

| Mode | Endpoint | One row per… |
|------|----------|--------------|
| `query` *(default)* | `/api/v1/query` | series in an instant PromQL result (metric + labels + value + timestamp) |
| `query_range` | `/api/v1/query_range` | series over a time window, with the full `values` array |
| `series` | `/api/v1/series` | series (label set) matching a selector |
| `labels` | `/api/v1/labels` | label name known to the server |
| `label_values` | `/api/v1/label/<name>/values` | value of a label (default `__name__` = every metric name) |
| `targets` | `/api/v1/targets` | scrape target (job, instance, health, last error, last scrape) |
| `rules` | `/api/v1/rules` | recording / alerting rule (group, state, query, health) |
| `metadata` | `/api/v1/metadata` | metric's metadata (type / unit / help) |
| `buildinfo` | `/api/v1/status/buildinfo` | server (version / revision / branch / Go version) |

### Example input

```json
{
  "sources": ["https://demo.promlabs.com"],
  "mode": "query",
  "query": "up"
}
````

Run a PromQL expression across several servers at once:

```json
{
  "sources": [
    "https://demo.promlabs.com",
    "https://play.victoriametrics.com/select/0/prometheus"
  ],
  "mode": "query",
  "query": "sum by (job) (up)"
}
```

Enumerate every metric name (capped), sample a range, or list scrape targets:

```json
{ "sources": ["https://demo.promlabs.com"], "mode": "label_values", "labelName": "__name__", "maxRecords": 500 }
```

```json
{ "sources": ["https://demo.promlabs.com"], "mode": "query_range", "query": "rate(demo_api_request_duration_seconds_count[5m])", "step": "60" }
```

```json
{ "sources": ["https://demo.promlabs.com"], "mode": "targets" }
```

### Input reference

- **sources** *(required)* — one or more Prometheus base URLs. Give the bare base
  (`https://demo.promlabs.com`) and the actor appends the right `/api/v1` path per
  mode, or paste a full `/api/v1/query` URL. A reverse-proxy sub-path is honored
  (VictoriaMetrics' `https://host/select/0/prometheus`).
- **mode** — one of the nine modes above (default `query`).
- **query** — the PromQL expression for `query` / `query_range` (default `up`).
- **time** — optional evaluation timestamp for `query` (RFC3339 or unix).
- **start / end / step** — the range window for `query_range` (default: last 5
  minutes at a 60s step).
- **match** — one or more series selectors for `series` (required), `labels`, and
  `label_values` (e.g. `up`, `{job="demo"}`).
- **labelName** — the label to enumerate in `label_values` (default `__name__`).
- **maxRecords** — a global cap on emitted rows (each row is one event).
- **bearer / extraHeaders** — optional auth for a gated server (never logged).
  `extraHeaders` also carries things like a Cortex/Mimir `X-Scope-OrgID` tenant header.

### Output

Each row is a flat object with a shared schema across all modes — a `_type` /
`_mode` tag, the `metricName` and full `labels` object where relevant, and the
mode-specific columns (`value`/`valueNum`/`timestamp` for samples, `targetJob`/
`targetHealth` for targets, `ruleName`/`ruleState` for rules, and so on). The
original API object is preserved losslessly in `_raw`. Prometheus sample values
are kept as their exact string (`value`) with a best-effort numeric coercion
(`valueNum`); non-finite tokens like `NaN` / `+Inf` stay lossless in `value`.

Example (`query` mode):

```json
{
  "_type": "sample",
  "_mode": "query",
  "_resultType": "vector",
  "metricName": "up",
  "labels": { "__name__": "up", "instance": "demo-service-2:10002", "job": "demo" },
  "value": "1",
  "valueNum": 1,
  "timestamp": "2026-07-08T00:56:53.491Z"
}
```

### Behavior & reliability

- **Multi-source, fault-tolerant.** A source that is auth-gated, unreachable,
  rate-limited, or that doesn't implement the requested endpoint (some servers
  don't serve `/targets`) is skipped with a warning; the run continues.
- **Honest failures.** An invalid PromQL expression makes the API return its
  in-band error (`{"status":"error",...}`); the actor surfaces that as a real
  failure rather than silently returning nothing. A valid query that matches
  nothing returns zero rows and a clean exit.

### Pricing

Pay-per-event: you're charged per row emitted to the dataset. Point it at a
single server or a whole fleet; use `maxRecords` to cap large enumerations
(`label_values` on `__name__`, `metadata`).

### Notes

This actor talks to the **read** side of the Prometheus HTTP API over plain
HTTP(S) JSON. It needs network reach to the server you point it at (a public
demo, an internal Prometheus behind a token, a hosted Thanos/Mimir/VictoriaMetrics
endpoint). It does not require Grafana or any Prometheus client library.

# Actor input Schema

## `sources` (type: `array`):

One or more Prometheus-compatible server base URLs. Any server that speaks the Prometheus HTTP API v1 works — Prometheus, Thanos, Cortex/Mimir, VictoriaMetrics, Grafana Agent, etc. Give the bare base (https://demo.promlabs.com) and the actor appends the right /api/v1 path per mode, or paste a full /api/v1/query URL. A reverse-proxy sub-path is honored (VictoriaMetrics' https://host/select/0/prometheus).

## `mode` (type: `string`):

What to extract. query (default): run a PromQL expression at /api/v1/query (one row per series). query\_range: sample an expression over a time window at /api/v1/query\_range. series: matching series (label sets) from /api/v1/series. labels: all label names. label\_values: values of one label (default **name** = every metric name). targets: scrape targets. rules: recording/alerting rules. metadata: per-metric type/unit/help. buildinfo: server version.

## `query` (type: `string`):

The PromQL expression to evaluate (query and query\_range modes). Examples: up (which targets are up), rate(http\_requests\_total\[5m]), sum by (job) (up), scalar(count(up)). Default: up.

## `time` (type: `string`):

Optional evaluation timestamp for query mode — an RFC3339 string (2026-07-08T00:00:00Z) or a unix timestamp. Leave empty to evaluate at the current server time.

## `start` (type: `string`):

Start of the range window for query\_range mode — RFC3339 or unix timestamp. Leave empty to default to 5 minutes ago.

## `end` (type: `string`):

End of the range window for query\_range mode — RFC3339 or unix timestamp. Leave empty to default to now.

## `step` (type: `string`):

Resolution step for query\_range mode — seconds (60) or a Prometheus duration (1m, 15s). Leave empty to default to 60.

## `match` (type: `array`):

One or more Prometheus series selectors used by series (required), labels, and label\_values modes to restrict the result. Examples: up  or  {job="demo"}  or  node\_cpu\_seconds\_total{mode="idle"}. Leave empty in labels/label\_values to enumerate across all series.

## `labelName` (type: `string`):

The label whose values to enumerate in label\_values mode. Default **name** returns every metric name in the server. Other examples: job, instance, namespace.

## `maxRecords` (type: `integer`):

A GLOBAL cap on the number of rows to emit across all sources (each row is one billable event). Leave empty to emit everything. label\_values on **name** or metadata can be thousands of rows, so a cap is useful there.

## `bearer` (type: `string`):

Optional bearer token for a Prometheus server behind auth (sent as Authorization: Bearer \*\*\*). Not required for open servers. Never logged.

## `extraHeaders` (type: `object`):

Optional extra HTTP headers as a JSON object, e.g. {"x-scope-orgid": "tenant-a"} (Cortex/Mimir multi-tenant) or a cookie for a gated server. Header values are never logged.

## Actor input object example

```json
{
  "sources": [
    "https://demo.promlabs.com"
  ],
  "mode": "query",
  "query": "up",
  "labelName": "__name__"
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "sources": [
        "https://demo.promlabs.com"
    ],
    "query": "up"
};

// Run the Actor and wait for it to finish
const run = await client.actor("datamule/prometheus-endpoint-extractor").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "sources": ["https://demo.promlabs.com"],
    "query": "up",
}

# Run the Actor and wait for it to finish
run = client.actor("datamule/prometheus-endpoint-extractor").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "sources": [
    "https://demo.promlabs.com"
  ],
  "query": "up"
}' |
apify call datamule/prometheus-endpoint-extractor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=datamule/prometheus-endpoint-extractor",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Prometheus Endpoint Extractor",
        "description": "Point at any Prometheus HTTP API v1 server (Prometheus, Thanos, Mimir, VictoriaMetrics, Grafana Agent) and export PromQL query results, range series, label values, scrape targets, rules, metric metadata and build info as clean rows. One actor over every Prometheus-compatible server.",
        "version": "0.1",
        "x-build-id": "uYKsMoHrObdc0YyHf"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/datamule~prometheus-endpoint-extractor/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-datamule-prometheus-endpoint-extractor",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/datamule~prometheus-endpoint-extractor/runs": {
            "post": {
                "operationId": "runs-sync-datamule-prometheus-endpoint-extractor",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/datamule~prometheus-endpoint-extractor/run-sync": {
            "post": {
                "operationId": "run-sync-datamule-prometheus-endpoint-extractor",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "sources"
                ],
                "properties": {
                    "sources": {
                        "title": "Prometheus base URLs",
                        "type": "array",
                        "description": "One or more Prometheus-compatible server base URLs. Any server that speaks the Prometheus HTTP API v1 works — Prometheus, Thanos, Cortex/Mimir, VictoriaMetrics, Grafana Agent, etc. Give the bare base (https://demo.promlabs.com) and the actor appends the right /api/v1 path per mode, or paste a full /api/v1/query URL. A reverse-proxy sub-path is honored (VictoriaMetrics' https://host/select/0/prometheus).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "query",
                            "query_range",
                            "series",
                            "labels",
                            "label_values",
                            "targets",
                            "rules",
                            "metadata",
                            "buildinfo"
                        ],
                        "type": "string",
                        "description": "What to extract. query (default): run a PromQL expression at /api/v1/query (one row per series). query_range: sample an expression over a time window at /api/v1/query_range. series: matching series (label sets) from /api/v1/series. labels: all label names. label_values: values of one label (default __name__ = every metric name). targets: scrape targets. rules: recording/alerting rules. metadata: per-metric type/unit/help. buildinfo: server version.",
                        "default": "query"
                    },
                    "query": {
                        "title": "PromQL query",
                        "type": "string",
                        "description": "The PromQL expression to evaluate (query and query_range modes). Examples: up (which targets are up), rate(http_requests_total[5m]), sum by (job) (up), scalar(count(up)). Default: up.",
                        "default": "up"
                    },
                    "time": {
                        "title": "Evaluation time (query mode)",
                        "type": "string",
                        "description": "Optional evaluation timestamp for query mode — an RFC3339 string (2026-07-08T00:00:00Z) or a unix timestamp. Leave empty to evaluate at the current server time."
                    },
                    "start": {
                        "title": "Range start (query_range mode)",
                        "type": "string",
                        "description": "Start of the range window for query_range mode — RFC3339 or unix timestamp. Leave empty to default to 5 minutes ago."
                    },
                    "end": {
                        "title": "Range end (query_range mode)",
                        "type": "string",
                        "description": "End of the range window for query_range mode — RFC3339 or unix timestamp. Leave empty to default to now."
                    },
                    "step": {
                        "title": "Range step seconds (query_range mode)",
                        "type": "string",
                        "description": "Resolution step for query_range mode — seconds (60) or a Prometheus duration (1m, 15s). Leave empty to default to 60."
                    },
                    "match": {
                        "title": "Series selectors (series / labels / label_values)",
                        "type": "array",
                        "description": "One or more Prometheus series selectors used by series (required), labels, and label_values modes to restrict the result. Examples: up  or  {job=\"demo\"}  or  node_cpu_seconds_total{mode=\"idle\"}. Leave empty in labels/label_values to enumerate across all series.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "labelName": {
                        "title": "Label name (label_values mode)",
                        "type": "string",
                        "description": "The label whose values to enumerate in label_values mode. Default __name__ returns every metric name in the server. Other examples: job, instance, namespace.",
                        "default": "__name__"
                    },
                    "maxRecords": {
                        "title": "Max records (global cap)",
                        "minimum": 1,
                        "type": "integer",
                        "description": "A GLOBAL cap on the number of rows to emit across all sources (each row is one billable event). Leave empty to emit everything. label_values on __name__ or metadata can be thousands of rows, so a cap is useful there."
                    },
                    "bearer": {
                        "title": "Bearer token",
                        "type": "string",
                        "description": "Optional bearer token for a Prometheus server behind auth (sent as Authorization: Bearer ***). Not required for open servers. Never logged."
                    },
                    "extraHeaders": {
                        "title": "Extra request headers",
                        "type": "object",
                        "description": "Optional extra HTTP headers as a JSON object, e.g. {\"x-scope-orgid\": \"tenant-a\"} (Cortex/Mimir multi-tenant) or a cookie for a gated server. Header values are never logged."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
