# Billing Instructions

## 1. Billing Model

Billing Condition: Charges apply only when a single request returns a 200 status code\*\*; no charges will be incurred for other status codes.

## 2. Common Examples

**Example 1: Successful Website Unlocking**

A.When a request returns a `200` status code successfully, charges will apply normally.

B.Even if the target website itself returns a 4xx error, we will still charge based on the `200` status code.

**Example 2:Failed Requests (No charge)**

The following situations are not charged; for other situations, please refer to the Status Code Reference Table:

The following scenarios do not incur charges (see the full reference table for other cases):

`429` (Too Many Requests) – Request exceeds concurrency limits.

`500` (Internal Server Error) – Server-side failure.

`504` (Gateway Timeout) – Server timeout/no response.

## 3.Status Code Reference Table

<table><thead><tr><th width="100">Code</th><th width="151">Status</th><th width="403">Description</th><th width="92">Billed</th></tr></thead><tbody><tr><td><code>200</code></td><td>Sucess</td><td>The request was successful, and the complete search engine results page data was retrieved</td><td>Yes</td></tr><tr><td><code>300</code></td><td>Not collected</td><td> Failed to parse/process the response, resulting in no valid data being collected</td><td>NO</td></tr><tr><td><code>400</code></td><td>Bad Request</td><td>Invalid parameters were passed</td><td>NO</td></tr><tr><td><code>401</code></td><td>Unauthorized</td><td>Authentication failed; please check the token validity</td><td>NO</td></tr><tr><td><code>429</code></td><td>429 Too many requests</td><td>The target server refused to fulfill the request</td><td>NO</td></tr><tr><td><code>500</code></td><td>500 Internal Server Error</td><td>The requested resource does not exist</td><td>NO</td></tr><tr><td><code>504</code></td><td>504 Timeout Error</td><td>The request rate exceeded the API limit</td><td>NO</td></tr></tbody></table>

&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.thordata.com/doc/scraping/universal-scraping-api/billing-instructions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
