Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/whats-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,15 @@ of the [MetaMask developer page](https://metamask.io/developer/).

## March 2025

- Documented [Base subscription methods](/services/reference/base/json-rpc-methods/subscription-methods).
([#1916](https://github.com/MetaMask/metamask-docs/pull/1916))
- Added full table for [Gas API supported networks](/services/get-started/endpoints/#gas-api).
([#1914](https://github.com/MetaMask/metamask-docs/pull/1914))

## February 2025

- Relaunched MetaMask documentation site with new branding.
([#1898](https://github.com/MetaMask/metamask-docs/pull/1898))
- Documented [Unichain Mainnet](/services/reference/unichain) support. ([#1878](https://github.com/MetaMask/metamask-docs/pull/1878))

## January 2025
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import Tabs from "@theme/Tabs"
import TabItem from "@theme/TabItem"

<Tabs>
<TabItem value="newHeads">

```bash
wscat -c wss://base-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe", "params": ["newHeads"]}'
```

</TabItem>
<TabItem value="logs">

```bash
wscat -c wss://base-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe", "params": ["logs", {"address": "0x8320fe7702b96808f7bbc0d4a888ed1468216cfd", "topics": ["0xd78a0cb8bb633d06981248b816e7bd33c2a35a6089241d099fa519e361cab902"]}]}'
```

</TabItem>
</Tabs>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import Tabs from "@theme/Tabs"
import TabItem from "@theme/TabItem"

<Tabs>
<TabItem value="WSS">

```bash
wscat -c wss://base-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0", "id": 1, "method": "eth_unsubscribe", "params": ["0x9cef478923ff08bf67fde6c64013158d"]}'
```

</TabItem>
</Tabs>
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
title: "eth_subscribe"
---

import Tabs from "@theme/Tabs"
import TabItem from "@theme/TabItem"

import Description from "/services/reference/_partials/subscription-methods/_eth_subscribe-description.mdx"

<Description />

## Parameters

import Params from "/services/reference/_partials/subscription-methods/_eth_subscribe-parameters-no-pending.mdx"

<Params />

## Returns

import Returns from "/services/reference/_partials/subscription-methods/_eth_subscribe-returns.mdx"

<Returns />

## Example

import Example from "/services/reference/_partials/subscription-methods/_eth_subscribe-example.mdx"

<Example />

### Request

import Request from "./_eth_subscribe-request.mdx"

<Request />

### Response

import Response from "/services/reference/_partials/subscription-methods/_eth_subscribe-response-no-pending.mdx"

<Response />
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
title: "eth_unsubscribe"
---

import Tabs from "@theme/Tabs"
import TabItem from "@theme/TabItem"

import Description from "/services/reference/_partials/subscription-methods/_eth_unsubscribe-description.mdx"

<Description />

## Parameters

import Params from "/services/reference/_partials/subscription-methods/_eth_unsubscribe-parameters.mdx"

<Params />

## Returns

import Returns from "/services/reference/_partials/subscription-methods/_eth_unsubscribe-returns.mdx"

<Returns />

## Example

import Example from "/services/reference/_partials/subscription-methods/_eth_unsubscribe-example.mdx"

<Example />

### Request

import Request from "./_eth_unsubscribe-request.mdx"

<Request />

### Response

import Response from "/services/reference/_partials/subscription-methods/_eth_unsubscribe-response.mdx"

<Response />
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: "Subscription methods"
---

# Subscription methods

Subscription methods are available for [WebSocket](../../../../concepts/websockets.md) connections only, and allow you to wait for events instead of polling for them. For example, dapps can subscribe to logs and receive notifications when a specific event occurs.

The following subscription methods are available:

- [`eth_subscribe`](eth_subscribe.mdx) - Create a subscription to a particular event
- [`eth_unsubscribe`](eth_unsubscribe.mdx) - Cancel an active subscription

:::info

We recommend you use the WSS protocol to set up bidirectional stateful subscriptions. Stateless HTTP WebSockets are also
supported.

:::
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,6 @@ wscat -c wss://bsc-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0",

```bash
wscat -c wss://bsc-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe", "params": ["logs", {"address": "0x8320fe7702b96808f7bbc0d4a888ed1468216cfd", "topics":["0xd78a0cb8bb633d06981248b816e7bd33c2a35a6089241d099fa519e361cab902"]}]}'
```

</TabItem>

<TabItem value="newPendingTransactions">

```bash
wscat -c wss://bsc-mainnet.infura.io/ws/v3/<YOUR-API-KEY> -x '{"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe", "params": ["newPendingTransactions"]}'
```

</TabItem>
Expand Down
Loading