> For the complete documentation index see https://domscan.net/llms.txt. Markdown versions of every docs page are available by appending .md to the page URL.

Source: https://domscan.net/ar/docs/products/page-weight

# API الخاص بـ API لوزن الصفحة ومواردها

قس بايتات الصفحة والطلبات والأطراف الثالثة وأزمنة التحميل. استخدم هذا المرجع لاختيار عملية ودمج عقد الاستجابة الموثق.

[عرض صفحة المنتج](https://domscan.net/ar/page-weight-api)

## العمليات

GET `/v1/page-weight` [عرض مرجع API](https://domscan.net/ar/docs/products/page-weight#getPageWeight)

## GET `/v1/page-weight`

العملية: `getPageWeight`
الوحدات والمصادقة: 6
المصادقة مطلوبة

GET /v1/page-weight الرصيد: 6

#### معاملات الاستعلام

| المعامل | النوع | مطلوب |
| --- | --- | --- |
| url | string | مطلوب |

#### حقول الرد

| الحقل | النوع |
| --- | --- |
| `url` | string |
| `final_url` | string |
| `status` | string |
| `reason` | string \| null |
| `checked_at` | string |
| `http_status` | integer \| null |
| `redirect_count` | integer |
| `duration_ms` | integer |
| `resource_limit_reached` | boolean |
| `summary` | object |
| `summary.requests` | integer |
| `summary.blocked_requests` | integer |
| `summary.total_bytes` | integer |
| `summary.third_party_requests` | integer |
| `summary.third_party_bytes` | integer |
| `summary.transfer_bytes` | integer |
| `by_type[]` | object[] |
| `by_type[]` | object |
| `by_type[].type` | string |
| `by_type[].requests` | integer |
| `by_type[].bytes` | integer |
| `largest[]` | object[] |
| `largest[]` | object |
| `largest[].url` | string |
| `largest[].type` | string |
| `largest[].bytes` | integer |
| `largest[].mime_type` | string \| null |
| `third_parties[]` | object[] |
| `third_parties[]` | object |
| `third_parties[].domain` | string |
| `third_parties[].requests` | integer |
| `third_parties[].bytes` | integer |
| `render_blocking[]` | object[] |
| `render_blocking[]` | object |
| `render_blocking[].url` | string |
| `render_blocking[].type` | string |
| `timing` | object |
| `timing.ttfb_ms` | number \| null |
| `timing.first_contentful_paint_ms` | number \| null |
| `timing.dom_content_loaded_ms` | number \| null |
| `timing.load_ms` | number \| null |
| `findings[]` | string[] |

#### طلب مثال

```bash
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/page-weight?url=https%3A%2F%2Fexample.com"
```

```javascript
const response = await fetch("https://domscan.net/v1/page-weight?url=https%3A%2F%2Fexample.com", {
  headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);
```

```python
import os
import requests

response = requests.get(
    "https://domscan.net/v1/page-weight?url=https%3A%2F%2Fexample.com",
    headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())
```

```go
package main

import (
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/page-weight?url=https%3A%2F%2Fexample.com", nil)
	if err != nil {
		panic(err)
	}
	req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))

	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	data, err := io.ReadAll(resp.Body)
	if err != nil {
		panic(err)
	}
	fmt.Println(resp.Status, string(data))
}
```

```ruby
require "json"
require "net/http"

uri = URI("https://domscan.net/v1/page-weight?url=https%3A%2F%2Fexample.com")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body))
```

#### مثال الرد

```json
{
  "url": "https://example.com/",
  "final_url": "https://example.com/",
  "status": "ok",
  "reason": null,
  "checked_at": "2026-10-13T12:00:00.000Z",
  "http_status": 200,
  "redirect_count": 0,
  "duration_ms": 4210,
  "resource_limit_reached": false,
  "summary": {
    "requests": 86,
    "blocked_requests": 4,
    "total_bytes": 3412887,
    "third_party_requests": 22,
    "third_party_bytes": 1210554,
    "transfer_bytes": 3425100
  },
  "by_type": [
    {
      "type": "image",
      "requests": 31,
      "bytes": 1840221
    },
    {
      "type": "script",
      "requests": 28,
      "bytes": 1120334
    }
  ],
  "largest": [
    {
      "url": "https://example.com/hero.jpg",
      "type": "image",
      "bytes": 612004,
      "mime_type": "image/jpeg"
    }
  ],
  "third_parties": [
    {
      "domain": "googletagmanager.com",
      "requests": 3,
      "bytes": 310442
    }
  ],
  "render_blocking": [
    {
      "url": "https://example.com/styles.css",
      "type": "stylesheet"
    }
  ],
  "timing": {
    "ttfb_ms": 180,
    "first_contentful_paint_ms": 1240,
    "dom_content_loaded_ms": 1610,
    "load_ms": 3890
  },
  "findings": [
    "page_weight_over_3mb",
    "images_over_200kb",
    "render_blocking_resources"
  ]
}
```

#### رموز حالة HTTP

- `200` OK
- `400` طلب غير صالح
- `401` غير مصرح
- `402` الدفع مطلوب
- `429` طلبات كثيرة جداً

## موارد المرجع

[OpenAPI 3.0](https://domscan.net/v1/openapi.json)
[Postman](https://domscan.net/v1/postman.json)
[MCP](https://domscan.net/ar/mcp-domain-checker)
