You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Run (or use) an archive node if you need address-based history queries.
11
+
- Run (or use) an archive node if you need address-based history queries such as `fullMoonlightHistory` or `moonlightHistory`.
12
12
- Support Moonlight (public) deposits and withdrawals.
13
13
- Handle finality and reverts: treat funds as final once the containing block is `finalized`, and re-process if a block is reverted.
14
14
- Use the memo field if you need per-user tagging.
15
15
16
+
:::tip[Use W3sper for Transaction Submission]
17
+
For transaction construction, signing, and submission, prefer the [W3sper SDK](/developer/integrations/w3sper). Use raw HTTP endpoints only if you are building lower-level infrastructure around RUES.
18
+
:::
19
+
16
20
## Network Access
17
21
18
22
Base URLs:
@@ -30,7 +34,7 @@ For the full HTTP/WS API and event subscription model (RUES), see [/developer/in
30
34
31
35
Two common approaches:
32
36
33
-
-**Archive GraphQL (simplest):** poll `fullMoonlightHistory` or `moonlightHistory`. See [/developer/integrations/historical_events](/developer/integrations/historical_events).
37
+
-**Archive GraphQL (simplest):** poll `fullMoonlightHistory` or `moonlightHistory` on an archive-enabled node. See [/developer/integrations/historical_events](/developer/integrations/historical_events).
34
38
-**Real-time (RUES):** subscribe to blocks/transactions and correlate with GraphQL `tx(hash: ...)` lookups.
Copy file name to clipboardExpand all lines: src/content/docs/developer/integrations/historical_events.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,9 @@ description: Documentation on the access to blockchain transaction history for p
5
5
6
6
## Overview
7
7
8
-
The GraphQL API provides access to finalized historical blockchain transaction-events, involving public (Moonlight) `DUSK` value transfers. It includes two primary endpoints:
8
+
These queries are **archive-only**. You need an archive-enabled node, or a public archive endpoint, to use them. On a non-archive node they are unavailable.
9
+
10
+
The archive GraphQL API provides access to finalized historical blockchain transaction-events involving public (Moonlight) `DUSK` value transfers. It includes two primary endpoints:
Copy file name to clipboardExpand all lines: src/content/docs/developer/integrations/http-api.md
+11-1Lines changed: 11 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,8 +3,14 @@ title: HTTP API
3
3
description: Query nodes, broadcast transactions, and subscribe to real-time events using RUES over HTTP and WebSocket.
4
4
---
5
5
6
+
:::tip[Prefer W3sper First]
7
+
For application integrations, prefer the [W3sper SDK](/developer/integrations/w3sper). It wraps transaction building, proving, submission, and common node interactions.
8
+
:::
9
+
6
10
The <ahref="https://github.com/dusk-network/rusk/wiki/RUES-%28Rusk-Universal-Event-System%29"target="_blank"><strong>Rusk Universal Event System (RUES)</strong></a> is the public interface exposed by Dusk nodes.
7
11
12
+
This page covers the common low-level HTTP and WebSocket surface. Treat it as an implementation guide, not as a frozen protocol spec.
13
+
8
14
- Use **HTTP `POST`** for request/response calls (query node state, submit transactions, generate proofs, etc.).
9
15
- Use **WebSocket + HTTP `GET`/`DELETE`** for real-time event subscriptions.
10
16
@@ -52,6 +58,10 @@ If the requested version is incompatible, the node rejects the request.
52
58
**Method**: `POST`
53
59
**Body**: a GraphQL query string.
54
60
61
+
:::note
62
+
Archive-only GraphQL fields such as `moonlightHistory`, `fullMoonlightHistory`, and `finalizedEvents` require an archive-enabled node.
63
+
:::
64
+
55
65
### Get the schema (SDL)
56
66
57
67
Send an empty body to retrieve the schema:
@@ -257,5 +267,5 @@ Events are sent as WebSocket **binary messages**:
3. Raw event data bytes (format depends on the event).
259
269
260
-
If you need historical data (archive), use GraphQL queries such as `moonlightHistory` and `finalizedEvents`.
270
+
If you need historical data, use an archive-enabled node and GraphQL queries such as `moonlightHistory`, `fullMoonlightHistory`, and `finalizedEvents`.
Copy file name to clipboardExpand all lines: src/content/docs/developer/integrations/w3sper.md
+9-7Lines changed: 9 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,12 +3,12 @@ title: W3sper SDK
3
3
description: JavaScript SDK for generating profiles, building transactions, and querying Dusk nodes.
4
4
---
5
5
6
-
W3sper (`@dusk/w3sper`) is the JavaScript SDK used by Dusk apps and tooling to interact with nodes.
6
+
W3sper (`@dusk/w3sper`) is the JavaScript SDK used by Dusk apps and tooling to interact with nodes. Prefer it over calling raw RUES endpoints directly from application code.
Copy file name to clipboardExpand all lines: src/content/docs/learn/glossary.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ Accounts in Dusk manage transactions with different visibility levels. An accoun
11
11
12
12
#### Archive Node
13
13
14
-
An [archive node](/operator/archive-node) stores the full historical record of the Dusk blockchain and does not participate in consensus.
14
+
An [archive node](/operator/archive-node) stores the full historical record of the Dusk blockchain and exposes archive-specific historical queries. Archive mode can also participate in consensus because it extends the regular node stack rather than replacing it.
`rusk-wallet --help` and `rusk-wallet <command> --help`
18
+
10
19
## Install
11
20
12
-
- Download a prebuilt binary from the <ahref="https://github.com/dusk-network/rusk/releases?q=rusk+wallet&expanded=true"target="_blank"rel="noreferrer">Rusk releases page</a>.
21
+
- Download a prebuilt binary from the releasespage.
13
22
- Or build from source from the <ahref="https://github.com/dusk-network/rusk"target="_blank"rel="noreferrer">rusk repo</a>.
14
23
15
24
## Usage
@@ -33,61 +42,27 @@ rusk-wallet --help
33
42
rusk-wallet <command> --help
34
43
```
35
44
36
-
The full CLI command reference lives in the upstream README:
For the node-operator flow (exporting consensus keys, staking, and monitoring with `stake-info`), follow: [Wallet setup](/operator/guides/node-wallet-setup).
83
-
84
-
## Non-interactive use (automation)
60
+
Only do this in controlled environments, and be careful not to leak passwords via shell history, logs, or CI output.
85
61
86
-
Most commands prompt for a wallet password when they need to decrypt secrets. For automation, you can provide it via `RUSK_WALLET_PWD`:
62
+
## Operator workflows
87
63
88
-
```bash
89
-
export RUSK_WALLET_PWD=<your_password>
90
-
rusk-wallet balance
91
-
```
64
+
If you are using the wallet for provisioner or archive-node operations, see:
92
65
93
-
Only do this in controlled environments, and be careful not to leak passwords via shell history, logs, or CI output.
Copy file name to clipboardExpand all lines: src/content/docs/operator/archive-node.md
+7-4Lines changed: 7 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,13 +3,14 @@ title: Run an archive node
3
3
description: Learn about Dusk archive nodes that store and give access to Dusk’s historical data.
4
4
---
5
5
6
-
Archive nodes extend the functionality of [Provisioners](/operator/provisioner) by also preserving a complete historical record of the Dusk blockchain. While Provisioners are focused solely on the current state, archive nodes provide essential long-term data access that supports applications, users, researchers, and auditors who need comprehensive historical information.
6
+
Archive nodes extend the functionality of [Provisioners](/operator/provisioner) by also preserving a complete historical record of the Dusk blockchain. While provisioners focus on the current state and consensus duties, archive mode adds long-term historical data access for applications, users, researchers, and auditors.
7
7
8
-
Archive nodes play a unique role in the Dusk Network by focusing on data storage and accessibility, rather than participating in consensus. This means they are not required to stake DUSK, as they serve an entirely supportive function for dApps and services that rely on historical records.
8
+
Archive nodes are commonly run as data-serving infrastructure and do not need to stake DUSK. However, archive mode is built on top of the regular node stack, so an archive node can also be configured to participate in consensus if you choose to stake and run it that way.
9
9
10
10
In short, archive nodes:
11
11
- Provide additional historical data (such as events emitted by contracts) that is not stored by a Provisioner node
12
-
- Can participate in consensus, by staking DUSK. However, they are not required to.
12
+
- Expose archive-only GraphQL queries such as `moonlightHistory`, `fullMoonlightHistory`, and `finalizedEvents`
13
+
- Can also participate in consensus by staking DUSK, though that is optional
13
14
14
15
:::tip[Run an Archive node]
15
16
If you want to quickly launch & run an archive node, you can use the <ahref="https://github.com/dusk-network/node-installer"target="_blank">node installer</a> by following [the archive guide](/operator/archive-node).
@@ -83,7 +84,9 @@ You can check which GraphQL queries are available by retrieving the schema (SDL)
83
84
curl -s -X POST "http://<your-node-host>:8080/on/graphql/query"
84
85
```
85
86
86
-
This should now return a different list than a normal node returns. An example endpoint that is now available is the **checkBlock** endpoint, which returns true or false whether a block height matches a specific block hash, which can also be queried only for finalized blocks.
87
+
This should now return a different schema than a normal node returns. Archive-enabled nodes expose additional historical queries such as `moonlightHistory`, `fullMoonlightHistory`, and `finalizedEvents`.
88
+
89
+
A regular node also exposes `checkBlock`, but the `onlyFinalized: true` behavior below is archive-only.
87
90
88
91
In order to test this endpoint, you can run the following command.
0 commit comments