> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbitflare.com/llms.txt
> Use this file to discover all available pages before exploring further.

# RPC-ноды Polygon

> RPC- и WebSocket-эндпоинты Polygon PoS в OrbitFlare: тарифы от 25 до 1000 RPS, gRPC и архивные данные на каждом уровне, а также выделенные инстансы.

## Обзор

OrbitFlare предоставляет RPC-инфраструктуру Polygon PoS для DeFi-протоколов, игр и продакшен-приложений. Эндпоинты привязаны к региону и аутентифицируются тем же ключом лицензии, что и остальные сервисы OrbitFlare. Каждый тариф включает RPC, WebSocket, доступ к gRPC и архивные данные.

Polygon совместим с EVM, поэтому его JSON-RPC — это стандартный API `eth_*`.

## Эндпоинт

| Регион    | Код региона | Эндпоинт                                               |
| --------- | ----------- | ------------------------------------------------------ |
| Амстердам | `ams`       | `https://ams.poly.orbitflare.com?api_key=YOUR_API_KEY` |

Общий формат совпадает с остальной платформой:

```
https://{region}.poly.orbitflare.com?api_key=YOUR_API_KEY
```

<Note>
  Эндпоинты Polygon отделены от эндпоинтов Solana, описанных в разделе [Аутентификация и лимиты](/ru/authentication). Solana использует `{region}.rpc.orbitflare.com`, Polygon — `{region}.poly.orbitflare.com`.
</Note>

## Аутентификация

Добавьте ключ лицензии в параметр запроса — так же, как для RPC-эндпоинтов Solana:

```bash theme={null}
curl -X POST "https://ams.poly.orbitflare.com?api_key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "eth_blockNumber"
  }'
```

<Tip>
  Ключ лицензии находится в разделе **Licenses** вашего [дашборда OrbitFlare](https://orbitflare.com/dashboard).
</Tip>

## Вызовы RPC

Polygon использует тот же формат JSON-RPC 2.0, что и Ethereum. Передавайте `Content-Type: application/json` с телом POST-запроса:

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST "https://ams.poly.orbitflare.com?api_key=YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "jsonrpc": "2.0",
      "method": "eth_blockNumber",
      "params": [],
      "id": 1
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://ams.poly.orbitflare.com?api_key=YOUR_API_KEY",
    {
      method: "POST",
      headers: { "Content-Type": "application/json" },
      body: JSON.stringify({
        jsonrpc: "2.0",
        method: "eth_blockNumber",
        params: [],
        id: 1,
      }),
    }
  );
  const data = await response.json();
  console.log("Latest block:", parseInt(data.result, 16));
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://ams.poly.orbitflare.com?api_key=YOUR_API_KEY",
      headers={"Content-Type": "application/json"},
      json={
          "jsonrpc": "2.0",
          "method": "eth_blockNumber",
          "params": [],
          "id": 1,
      },
  )
  data = response.json()
  print("Latest block:", int(data["result"], 16))
  ```
</CodeGroup>

## Подписки по WebSocket

Подписки в реальном времени используют схему `wss://` с тем же хостом и тем же параметром `api_key`:

```javascript theme={null}
const ws = new WebSocket(
  "wss://ams.poly.orbitflare.com?api_key=YOUR_API_KEY"
);

ws.on("open", () => {
  ws.send(JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "eth_subscribe",
    params: ["newHeads"],
  }));
});

ws.on("message", (data) => {
  const msg = JSON.parse(data);
  console.log("New block header:", msg.params?.result);
});
```

## Тарифы

Пропускная способность растёт вместе с тарифом. RPC, WebSocket, доступ к gRPC и архивные данные включены на каждом уровне, месячных лимитов по кредитам или запросам нет.

| Тариф       | Цена      | Запросов в секунду |
| ----------- | --------- | :----------------: |
| Free        | \$0/мес   |         25         |
| Starter     | \$49/мес  |         100        |
| Growth      | \$149/мес |         300        |
| Pro         | \$299/мес |         600        |
| Performance | \$499/мес |        1 000       |

<AccordionGroup>
  <Accordion title="Что будет при превышении лимита?">
    Запросы сверх лимита RPS вашего тарифа получают ответ HTTP `429 Too Many Requests`. Реализуйте экспоненциальную задержку в клиенте, чтобы корректно это обрабатывать.
  </Accordion>

  <Accordion title="Есть ли месячные лимиты по кредитам?">
    Нет. Вы можете отправлять неограниченное общее количество запросов, оставаясь в пределах посекундного лимита тарифа.
  </Accordion>
</AccordionGroup>

## Выделенные инстансы

Для изолированных высоконагруженных задач OrbitFlare также предлагает выделенные ноды Polygon:

| Возможность                | Детали                                                         |
| -------------------------- | -------------------------------------------------------------- |
| **Пропускная способность** | Индивидуальная, без счётчика                                   |
| **Оборудование**           | 100% выделенные ресурсы, изолированная среда                   |
| **Конфигурация**           | Индивидуальные конфигурации и параметры ноды                   |
| **SLA**                    | Индивидуальные условия по аптайму и времени реакции            |
| **Поддержка**              | Приоритетная инженерная поддержка                              |
| **Цены**                   | Индивидуальный расчёт по пропускной способности, региону и SLA |

<Note>
  Выделенная инфраструктура Polygon рассчитывается под каждое развёртывание. [Свяжитесь с отделом продаж](mailto:sales@orbitflare.com), чтобы обсудить пропускную способность, регион и требования к SLA.
</Note>

## Поддерживаемые методы

Эндпоинты Polygon предоставляют стандартный EVM JSON-RPC API, включая:

| Категория      | Методы                                                                            |
| -------------- | --------------------------------------------------------------------------------- |
| **Блоки**      | `eth_blockNumber`, `eth_getBlockByHash`, `eth_getBlockByNumber`                   |
| **Транзакции** | `eth_sendRawTransaction`, `eth_getTransactionByHash`, `eth_getTransactionReceipt` |
| **Аккаунты**   | `eth_getBalance`, `eth_getCode`, `eth_getStorageAt`, `eth_getTransactionCount`    |
| **Контракты**  | `eth_call`, `eth_estimateGas`, `eth_getLogs`                                      |
| **Сеть**       | `net_version`, `eth_chainId`, `eth_gasPrice`, `eth_feeHistory`                    |
| **WebSocket**  | `eth_subscribe` (newHeads, logs, newPendingTransactions)                          |

<Note>
  Polygon PoS использует `chainId: 137` для основной сети и `chainId: 80002` для тестовой сети Amoy.
</Note>

## Начало работы

<CardGroup cols={2}>
  <Card title="Аутентификация и лимиты" icon="key" href="/ru/authentication">
    Как работают API-ключи, форматы эндпоинтов, лимиты скорости и семантика ошибок.
  </Card>

  <Card title="Связаться с отделом продаж" icon="envelope" href="mailto:sales@orbitflare.com">
    Обсудите с командой OrbitFlare выделенные инстансы Polygon и корпоративные условия.
  </Card>
</CardGroup>
