---
title: "WebSocket.ping() | Grafana k6 documentation"
description: "Send a ping. Ping messages can be used to verify that the remote endpoint is responsive."
---

> For a curated documentation index, see [llms.txt](/llms.txt). For the complete documentation index, see [llms-full.txt](/llms-full.txt).

# WebSocket.ping()

Send a ping. You can use ping messages to verify that the remote endpoint is responsive.

### Example

*A k6 script that initiates a WebSocket connection, sends a ping, and closes it using the `onopen` handler. The console should log `connection is alive`, since the recipient should automatically emit the `pong` event.*

JavaScript ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```javascript
import { WebSocket } from 'k6/websockets';

export default function () {
  const ws = new WebSocket('ws://localhost:10000');

  ws.onopen = () => {
    console.log('WebSocket connection established!');
    ws.ping();
    ws.close();
  };

  ws.onpong = () => {
    // As required by the spec, when the ping is received, the recipient must send back a pong.
    console.log('connection is alive');
  };
}
```

The preceding example uses a WebSocket echo server, which you can run with the following command:

Bash ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```bash
docker run --detach --rm --name ws-echo-server -p 10000:8080 jmalloc/echo-server
```
