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

# eth_syncing | Polygon

> Polygon API method that returns an object with information about the current synchronization status of the node, or false if the node is fully synced.

Polygon API method that returns an object with information about the current synchronization status of the node, or `false` if the node is fully synced. This method can track the progress of a node's synchronization with the Polygon blockchain. The returned object contains data such as the starting block, current block, and highest block of the node, allowing developers to monitor and estimate the time remaining for the node to sync fully.

## Parameters

* `none`

## Response

* `result` — the boolean value `false` when not syncing or a JSON object when syncing:
  * `startingBlock` — the block number where the synchronization process started, encoded as hexadecimal.
  * `currentBlock` — the block number that the node has currently processed, same as `eth_blockNumber`, encoded as hexadecimal.
  * `highestBlock` — the block number of the latest block in the blockchain known to the node.

## `eth_syncing` code examples

<CodeGroup>
  ```javascript ethers.js theme={"system"}
  const ethers = require('ethers');
  const NODE_URL = "CHAINSTACK_NODE_URL";
  const provider = new ethers.JsonRpcProvider(NODE_URL);

  const syncStatus = async () => {
      const status = await provider.send("eth_syncing", []);
       console.log(status);
     };

  syncStatus();
  ```

  ```python web3.py theme={"system"}
  from web3 import Web3  
  node_url = "CHAINSTACK_NODE_URL" 
  print (web3.eth.syncing) 
  ```
</CodeGroup>

## Use case

The `eth_syncing` method on Polygon can be useful for developers building applications that interact with the Polygon blockchain. For example, you may want to provide feedback to your application's user about the status of the Polygon node the application is connecting to.

Here is a code example using the ethers.js library:

```javascript index.js theme={"system"}
const ethers = require("ethers");
const NODE_URL = "CHAINSTACK_NODE_URL";
const provider = new ethers.JsonRpcProvider(NODE_URL);

async function syncstatus() {
    try {
        // Query the sync status
        const syncing = await provider.send("eth_syncing", []);

        if (syncing) {

            console.log(`Node is syncing. Current block: ${syncing.currentBlock}. Highest block: ${syncing.highestBlock}`);
        } else {

            console.log('Node is fully synced.');
        }
    } catch (error) {

        console.error(error);
    }
};

syncstatus()
```

In this example, the program creates a new `provider` instance and connects to the node. Then, it calls `provider.send("eth_syncing", [])` to get the current synchronization status of the node. If the node is fully synced, the function logs a message to the console indicating that the node is fully synced.

If the node is still syncing, the function logs the current block number and the highest block number known to the node.


## OpenAPI

````yaml openapi/polygon_node_api/chain_info/eth_syncing.json POST /a9bca2f0f84b54086ceebe590316fff3
openapi: 3.0.0
info:
  title: Chainstack Labs API
  version: 1.0.0
  description: This is an API for interacting with a Chainstack Labs node.
servers:
  - url: https://nd-828-700-214.p2pify.com
security: []
paths:
  /a9bca2f0f84b54086ceebe590316fff3:
    post:
      tags:
        - upload
      summary: eth_syncing
      operationId: syncing
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                id:
                  type: integer
                  default: 1
                jsonrpc:
                  type: string
                  default: '2.0'
                method:
                  type: string
                  default: eth_syncing
      responses:
        '200':
          description: The syncing information
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    type: integer
                  result:
                    type: object

````