# `Onchain.RPC.SyncStatus`
[🔗](https://github.com/ZenHive/onchain-stack/blob/onchain-v0.16.0/packages/onchain/lib/onchain/rpc.ex#L385)

Progress object from `eth_syncing`.

`execution-apis` v1.0.0-beta.7 defines `SyncingStatus` as one union:
the boolean `false` when the node is not syncing, or this object.
`false` is not a `t:t/0`. The three fields are the spec's quantity
properties (`startingBlock`, `currentBlock`, `highestBlock`), decoded
to integers. Fields the schema does not name are ignored, so a client
snap-sync object still yields this struct.

# `t`

```elixir
@type t() :: %Onchain.RPC.SyncStatus{
  current_block: non_neg_integer(),
  highest_block: non_neg_integer(),
  starting_block: non_neg_integer()
}
```

# `deserialize`

```elixir
@spec deserialize(map()) :: t()
```

Decodes the sync-progress object from the `eth_syncing` spec example shape.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
