> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# subscribe

> subscribe method for the PubSub.Client class.

### subscribe

* **subscribe**(`channels`): `Promise<void>`

List of channels for which you want to receive messages. You can only subscribe to those channels for which your token has read permission.

Note that the `subscribe` function is idempotent, and calling it again with a different set of channels *will not* unsubscribe you from the old ones. To unsubscribe, use [unsubscribe](/docs/browser-sdk/v3/js/reference/pubsub/client/unsubscribe).

#### Parameters

**`channels`** `string | string[]` — required

The channels to subscribe to, either in the form of a string (for one channel) or an array of strings.

---

#### Returns

`Promise<void>`

#### Example

```js
const pubSub = new PubSub.Client({
  token: "<your chat token>"
});

pubSub.on("message", (m) => console.log(m));

await pubSub.subscribe("my-channel");
await pubSub.subscribe(["chan-2", "chan-3"]);
```