# JusBrasil Court Scraper - Brazil Case Law & Jurisprudence (`jungle_synthesizer/brazil-jusbrasil-court-scraper`) Actor

Scrape Brazilian court records and jurisprudence from JusBrasil.com.br. Search by keyword or process number to extract case details, parties, lawyers, judges, rulings, and movement history from STJ, STF, TJ state courts, and more.

- **URL**: https://apify.com/jungle\_synthesizer/brazil-jusbrasil-court-scraper.md
- **Developed by:** [BowTiedRaccoon](https://apify.com/jungle_synthesizer) (community)
- **Categories:** Other, Business
- **Stats:** 3 total users, 2 monthly users, 63.6% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.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/platform/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

## JusBrasil Court Scraper — Brazil Case Law & Jurisprudence

Scrape Brazilian court records and jurisprudence from [JusBrasil.com.br](https://www.jusbrasil.com.br/). Returns case details, parties, lawyers with OAB numbers, judges, procedural movements, and decision texts from STJ, STF, state courts (TJ), and federal regional courts (TRF).

### JusBrasil Court Scraper Features

- **Extracts 20+ fields per record** — process number, court, instance, state, parties, lawyers (with OAB registration), judge/rapporteur, procedural class, claim value, status, filing date, movement history, and decision excerpts
- **Searches by keyword or CNJ process number** — keyword search hits the jurisprudencia index; process number lookup uses consulta-processual for direct case retrieval
- **Filters by court** — target STJ, STF, any TJ state court, TRF federal regional courts, or TST without post-processing
- **Collects movement history** — up to 20 procedural movements per case with dates, giving you the full timeline of a proceeding
- **Handles Brazilian date formats** — converts DD/MM/YYYY to ISO 8601 (YYYY-MM-DD) throughout the output
- **Returns related process numbers** — CNJ-format identifiers for linked cases found on the detail page
- **Residential proxy with Brazil geotargeting** — Apify RESIDENTIAL proxies with BR exit nodes, required for reliable access to JusBrasil content

### Who Uses JusBrasil Data?

- **Legal researchers** — build datasets of precedents for academic or policy analysis
- **Law firms** — monitor case outcomes for specific courts, judges, or procedural classes
- **Compliance teams** — screen counterparties for pending or concluded litigation
- **Legal tech developers** — train NLP models on Brazilian court language and legal reasoning
- **Business intelligence analysts** — track litigation trends by subject, court, or region

### How It Works

1. **Configure your search** — provide a keyword (e.g., "responsabilidade civil") or a CNJ process number, optionally with a court filter
2. **The scraper solves the Cloudflare challenge** — JusBrasil uses a managed interactive CF challenge; the actor handles this automatically via CapSolver with Brazilian residential proxy
3. **Phase 1 — collect result URLs** — searches JusBrasil's jurisprudencia or consulta-processual index and gathers detail page links from result cards
4. **Phase 2 — extract full records** — fetches each detail page and parses case metadata, parties, lawyers, movements, and decisions into structured JSON

### JusBrasil Court Scraper Input

```json
{
    "searchQuery": "responsabilidade civil",
    "court": "STJ",
    "maxItems": 10,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "BR"
    }
}
````

| Field | Type | Default | Description |
|-------|------|---------|-------------|
| `searchQuery` | string | `"responsabilidade civil"` | Keywords to search in JusBrasil jurisprudencia. Used when `processNumber` is not provided. |
| `processNumber` | string | — | CNJ process number (format: `NNNNNNN-NN.NNNN.N.NN.NNNN`). Overrides `searchQuery` when provided. |
| `court` | string | `""` (all) | Filter to a specific court. Options: STJ, STF, TJSP, TJRJ, TJMG, TJRS, TJPR, TJSC, TJBA, TRF1–TRF5, TST. |
| `maxItems` | integer | `10` | Maximum number of court records to return. |
| `proxyConfiguration` | object | RESIDENTIAL BR | Proxy settings. Brazilian residential proxies are required — JusBrasil uses Cloudflare managed challenge. |

**Process number lookup example:**

```json
{
    "processNumber": "5013952-91.2020.8.09.0079",
    "maxItems": 1,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "BR"
    }
}
```

### JusBrasil Court Scraper Output Fields

```json
{
    "process_number": "5013952-91.2020.8.09.0079",
    "court": "Tribunal de Justica de Goias",
    "instance": "2nd",
    "state": "GO",
    "subject": "DIREITO CIVIL. RESPONSABILIDADE CIVIL. DANO MORAL...",
    "parties": ["Joao da Silva (Apelante)", "Empresa XYZ Ltda (Apelado)"],
    "lawyers": ["Dr. Carlos Ferreira OAB/GO 12345"],
    "judge": "Des. Maria Santos",
    "procedural_class": "Apelacao",
    "claim_value": 50000.00,
    "status": "Julgado",
    "filed_at": "2020-07-14",
    "last_movement": "Acordao publicado no DJE",
    "last_movement_at": "2021-03-10",
    "movements": ["2021-03-10 | Acordao publicado no DJE", "2021-02-18 | Julgamento realizado"],
    "decisions": ["APELACAO CIVEL. RESPONSABILIDADE CIVIL. Recurso desprovido. Unânime."],
    "appeals": [],
    "related_processes": [],
    "process_url": "https://www.jusbrasil.com.br/jurisprudencia/tj-go/1468851555",
    "source_type": "jurisprudencia",
    "scraped_at": "2026-05-09T15:14:20.800Z"
}
```

| Field | Type | Description |
|-------|------|-------------|
| `process_number` | string | CNJ process number in NNNNNNN-NN.NNNN.N.NN.NNNN format |
| `court` | string | Full court name (e.g., Tribunal de Justica de Sao Paulo) |
| `instance` | string | Instance level: `1st`, `2nd`, or `superior` |
| `state` | string | State abbreviation inferred from court code (e.g., SP, RJ) |
| `subject` | string | Legal subject / ementa excerpt (up to 1000 characters) |
| `parties` | array | Case parties — plaintiff and defendant names |
| `lawyers` | array | Lawyers with OAB registration numbers |
| `judge` | string | Presiding judge or rapporteur name |
| `procedural_class` | string | Procedural class (Apelacao, Habeas Corpus, Recurso Especial, etc.) |
| `claim_value` | number | Claim value in BRL |
| `status` | string | Current process status |
| `filed_at` | string | Filing date in YYYY-MM-DD format |
| `last_movement` | string | Description of the most recent movement |
| `last_movement_at` | string | Date of the most recent movement in YYYY-MM-DD format |
| `movements` | array | Recent procedural movements as `"date | description"` strings (up to 20) |
| `decisions` | array | Court rulings and decision excerpts (up to 5) |
| `appeals` | array | Related appeals |
| `related_processes` | array | Related CNJ process numbers found on the detail page |
| `process_url` | string | JusBrasil URL for this process or decision |
| `source_type` | string | `"jurisprudencia"` or `"consulta-processual"` |
| `scraped_at` | string | ISO 8601 timestamp when the record was scraped |

### 🔍 FAQ

#### How do I scrape JusBrasil court records?

JusBrasil Court Scraper handles the full pipeline — Cloudflare bypass, pagination, and two-phase extraction. Provide a keyword or CNJ process number, set `maxItems`, and run it. Results arrive as structured JSON with the fields above.

#### Does JusBrasil Court Scraper need proxies?

Yes. JusBrasil sits behind a Cloudflare managed interactive challenge that requires a valid `cf_clearance` cookie. Datacenter IPs do not clear it. The actor uses Apify RESIDENTIAL proxies with Brazilian geotargeting — that's what the default `proxyConfiguration` is set to.

#### What data can I get from JusBrasil?

JusBrasil Court Scraper returns process metadata, parties, lawyer OAB numbers, judge names, procedural movement history, and decision text excerpts. Coverage spans STJ, STF, all 26 TJ state courts, five TRF federal regional courts, and TST.

#### Can I filter by court?

Yes. Set the `court` input field to a court code: STJ, STF, TJSP, TJRJ, TJMG, TJRS, TJPR, TJSC, TJBA, TRF1 through TRF5, or TST. Leave it blank to search across all courts.

#### How much does JusBrasil Court Scraper cost to run?

JusBrasil Court Scraper uses pay-per-event pricing: $0.10 per run start + $0.002 per record scraped. Ten records costs about $0.12. The Cloudflare solve adds latency but not per-request fees.

***

### Need More Features?

Need additional courts, bulk process number lookups, or custom fields? [File an issue](https://console.apify.com/actors/W2fsa5i3aGr4LKP8Z/issues) or get in touch.

### Why Use JusBrasil Court Scraper?

- **Full CF bypass built in** — JusBrasil's Cloudflare managed challenge stops most scrapers cold. This one handles it automatically so you don't have to.
- **Affordable** — $0.002/record means 1,000 Brazilian court records costs $2.10 all in, which is a reasonable price for data that would otherwise take days to collect manually.
- **Structured output** — parties, lawyers (with OAB numbers), movements, and decisions arrive as clean JSON arrays, not one large text blob you need to parse yourself.

# Actor input Schema

## `sp_intended_usage` (type: `string`):

Please describe how you plan to use the data extracted by this crawler.

## `sp_improvement_suggestions` (type: `string`):

Provide any feedback or suggestions for improvements.

## `sp_contact` (type: `string`):

Provide your email address so we can get in touch with you.

## `searchQuery` (type: `string`):

Keywords to search for in JusBrasil jurisprudence (e.g. 'responsabilidade civil'). Used when processNumber is not provided.

## `processNumber` (type: `string`):

Specific CNJ process number to look up. Overrides searchQuery when provided.

## `court` (type: `string`):

Filter to a specific court. Leave blank for all courts.

## `maxItems` (type: `integer`):

Maximum number of court records to return.

## `proxyConfiguration` (type: `object`):

Residential proxies required — JusBrasil uses Cloudflare managed challenge.

## Actor input object example

```json
{
  "sp_intended_usage": "Describe your intended use...",
  "sp_improvement_suggestions": "Share your suggestions here...",
  "sp_contact": "Share your email here...",
  "searchQuery": "responsabilidade civil",
  "court": "",
  "maxItems": 10,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "BR"
  }
}
```

# 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 = {
    "sp_intended_usage": "Describe your intended use...",
    "sp_improvement_suggestions": "Share your suggestions here...",
    "sp_contact": "Share your email here...",
    "searchQuery": "responsabilidade civil",
    "processNumber": "",
    "court": "",
    "maxItems": 10,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "BR"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("jungle_synthesizer/brazil-jusbrasil-court-scraper").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 = {
    "sp_intended_usage": "Describe your intended use...",
    "sp_improvement_suggestions": "Share your suggestions here...",
    "sp_contact": "Share your email here...",
    "searchQuery": "responsabilidade civil",
    "processNumber": "",
    "court": "",
    "maxItems": 10,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "BR",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("jungle_synthesizer/brazil-jusbrasil-court-scraper").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 '{
  "sp_intended_usage": "Describe your intended use...",
  "sp_improvement_suggestions": "Share your suggestions here...",
  "sp_contact": "Share your email here...",
  "searchQuery": "responsabilidade civil",
  "processNumber": "",
  "court": "",
  "maxItems": 10,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "BR"
  }
}' |
apify call jungle_synthesizer/brazil-jusbrasil-court-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=jungle_synthesizer/brazil-jusbrasil-court-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "JusBrasil Court Scraper - Brazil Case Law & Jurisprudence",
        "description": "Scrape Brazilian court records and jurisprudence from JusBrasil.com.br. Search by keyword or process number to extract case details, parties, lawyers, judges, rulings, and movement history from STJ, STF, TJ state courts, and more.",
        "version": "0.1",
        "x-build-id": "OR6m0orfHYdfZqfLX"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/jungle_synthesizer~brazil-jusbrasil-court-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-jungle_synthesizer-brazil-jusbrasil-court-scraper",
                "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/jungle_synthesizer~brazil-jusbrasil-court-scraper/runs": {
            "post": {
                "operationId": "runs-sync-jungle_synthesizer-brazil-jusbrasil-court-scraper",
                "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/jungle_synthesizer~brazil-jusbrasil-court-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-jungle_synthesizer-brazil-jusbrasil-court-scraper",
                "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": [
                    "maxItems"
                ],
                "properties": {
                    "sp_intended_usage": {
                        "title": "What is the intended usage of this data?",
                        "minLength": 1,
                        "type": "string",
                        "description": "Please describe how you plan to use the data extracted by this crawler."
                    },
                    "sp_improvement_suggestions": {
                        "title": "How can we improve this crawler for you?",
                        "minLength": 1,
                        "type": "string",
                        "description": "Provide any feedback or suggestions for improvements."
                    },
                    "sp_contact": {
                        "title": "Contact Email",
                        "minLength": 1,
                        "type": "string",
                        "description": "Provide your email address so we can get in touch with you."
                    },
                    "searchQuery": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Keywords to search for in JusBrasil jurisprudence (e.g. 'responsabilidade civil'). Used when processNumber is not provided.",
                        "default": "responsabilidade civil"
                    },
                    "processNumber": {
                        "title": "Process Number (CNJ)",
                        "type": "string",
                        "description": "Specific CNJ process number to look up. Overrides searchQuery when provided."
                    },
                    "court": {
                        "title": "Filter by Court",
                        "enum": [
                            "",
                            "STJ",
                            "STF",
                            "TJSP",
                            "TJRJ",
                            "TJMG",
                            "TJRS",
                            "TJPR",
                            "TJSC",
                            "TJBA",
                            "TRF1",
                            "TRF2",
                            "TRF3",
                            "TRF4",
                            "TRF5",
                            "TST"
                        ],
                        "type": "string",
                        "description": "Filter to a specific court. Leave blank for all courts.",
                        "default": ""
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "type": "integer",
                        "description": "Maximum number of court records to return.",
                        "default": 10
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Residential proxies required — JusBrasil uses Cloudflare managed challenge."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
