# REST

The Anyone Network comes with a series of public REST APIs accessible by anyone who wants to investigate the live status of the network or their specific relay. This API complements the older Arweave metrics dumps that can be investigated by GraphQL requests (section coming soon).

{% hint style="info" %}
The official domain for our technical endpoints is **<https://anyone.tech>**

And the API is accessible at **<https://api.ec.anyone.tech>**
{% endhint %}

## Main API Specification

### Network-Wide API

#### Total Active Relays (Latest) <https://api.ec.anyone.tech/total-relays-latest>

```json
{
all: Total number of relays visible in latest consensus file,
offline: Relays recently running but currently offline,
online: Relays currently online
}
```

#### Total Active Relays (Over Time) <https://api.ec.anyone.tech/total-relays>

```
{
all[]: Total relays in latest consensus file over time (hourly),
offline[]:  Total relays recently offline over time (hourly),
online[]:  Total relays online over time (hourly)
}
```

#### **Total Network Bandwidth** [https://api.ec.anyone.tech/total-observed-bandwidth-latest ](<https://api.ec.anyone.tech/total-observed-bandwidth-latest >)

```
{
all: Sum of observed bandwidth for all relays in consensus file.
offline: Sum of observed bandwidth for all recently offline relays.
online: Sum of observed bandwidth for all offline relays
}
```

#### **Total Network Bandwidth (Over Time)** [**https://api.ec.anyone.tech/total-observed-bandwidth**](https://api.ec.anyone.tech/total-observed-bandwidth-latest)

```
{
all: Sum of observed bandwidth for all relays in consensus file over time.
offline: Sum of observed bandwidth for all recently offline relays over time.
online: Sum of observed bandwidth for all offline relays over time. 
}
```

Additional parameters to be appended at the end of the query

```
from: T – start time (s, m, d)
to: T – end time (s, m, d)
interval: interval 

Example: https://api-dev.dmz.ator.dev/total-relays?from=3d&to=now&interval=12h
```

#### Relay Map <https://api.ec.anyone.tech/relay-map>

```
[ // list of all relays as H3 datapoints 
    {
    "index: Unique H3 Hex ID
    "relayCount": Number of relays situated in the area of this cell
    "geo": Center of cell coordinates
    "boundary"[]: Cell boundary coordinates
    },
]
```

### Per-User Search&#x20;

#### **Relay Lookup** [**https://api.ec.anyone.tech/relays/**](<https://api.ec.anyone.tech/relays/ >)

```
{
"fingerprint": fingerprint of the relay,
"running": whether the relay is running,
"consensus_weight": Consensus weight score 
}
```

#### **Anon Check (API)** <https://check.en.anyone.tech/>[api/ip](https://check.en.anyone.tech/api/ip)

```
{
isAnon: Whether the un
IP: Your IP address visible to external sites
}
```

#### Anon Check (UI) [https://check.en.anyone.tech](https://check.en.anyone.tech/)

```
(Visual) Tells you whether you have routed through Anon.
```

### POST APIs

#### Hardware Authentication Endpoint [**https://api.ec.anyone.tech/relays**](<https://api.ec.anyone.tech/relay/ >)

### Additional API Endpoints

#### Current Status

#### All-Time Rewards

Retrieves the all-time earned rewards for a given wallet across all their relays.

```
https://relay-api.anyone.io/api/rewards/all-time/<wallet>
```

#### Relays Associated to One Wallet

Returns an object with all of the relays associated to one wallet. Used for integration with the Moken DePIN tracker.

```
https://relay-api.anyone.io/api/miners/<wallet>
```

Output:

```
[{
    "deviceId", // fingerprint 
    "type": "ANYONE", // fixed: project name 
    "friendlyName", // relay nickname 
  },
```

#### Rewards in Latest Epoch

Returns an object with the amount of tokens earnt by a relay in the last epoch, and epoch details

```
https://relay-api.anyone.io/api/rewards/<fingerprint>
```

Output:

```
{
    "date", // date and timestamp of epoch 
    "amount": // amount of tokens
    "tokenSymbol", // fixed: ANYONE
},
```

### Other Environments

To search for your relay in the **stage** environment:\
**🔗** [**https://api-stage.ec.anyone.tech** ](<https://api-stage.ec.anyone.tech >)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.anyone.io/sdk/api/rest.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
