# Algorand node type

## Overview

![Screen Shot 2021-05-10 at 13.01.31.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1620666109888/yxRIAlmU0.png)

#### Node types

* With the default node config settings, the node is running in `non-archival`, `non-relay` and `non-participate` mode.
* To run a node providing "algod api", you could either an `archival` or `non-archival` node. Which means, the node with the default config settings could provide the "algod api".
* To run a relay node, it has to be an `archival` node and has to be publicly accessible.
* To run a node providing "indexer api", it has to be `archival` node, the run the `indexer` based on it.
* To participate the consensus, you could either run it on a `relay` node or `non-relay` node. Non-relay node is recommended.


#### Node type conversions

* `non-archival` to `archival`: set the node config.json's `archival` to be true. [Click here to see the "Archival" field in config](https://developer.algorand.org/docs/reference/node/config/)
* `archival` to `relay`: configuring a node to actively listen for connections from other nodes and having itself advertised using SRV records available through DNS. [Click here for details >>](https://developer.algorand.org/docs/reference/node/relay/)
* make node participate the consensus: [register participate key](https://developer.algorand.org/docs/run-a-node/participate/)


## Reference

* [Algorand Node Types](https://developer.algorand.org/docs/run-a-node/setup/types/)
* [Install Indexer](https://developer.algorand.org/docs/run-a-node/setup/indexer/)
* [Participate in Consensus](https://developer.algorand.org/docs/run-a-node/participate/)
* [Searching Algorand Blockchain - indexer](https://developer.algorand.org/docs/features/indexer/)
* [Configure Node as a Relay](https://developer.algorand.org/docs/reference/node/relay/)
