# Betting - Live actions

The Live Actions websocket offers a live 'stream' of team and player actions during a match. It is primarily used by clients integrating data for live betting markets. Updates will be received whenever a key action is completed, and this websocket is essential for live scores and match actions. To connect to this websocket endpoint, the provided authentication token is required. Heartbeats are sent from this endpoint between data packets to indicate a continuous connection.

## Endpoint URL

## Live match actions

`CONNECT` `wss://dde-streams.data.imgarena.com/snooker/fixtures/{fixtureId}/actions`

#### Path Parameters

| Name                                        | Type | Description                       |
| ------------------------------------------- | ---- | --------------------------------- |
| fixtureId<mark style="color:red;">\*</mark> | UUID | Unique id of a requested fixture. |

#### Headers

| Name                                     | Type   | Description                                      |
| ---------------------------------------- | ------ | ------------------------------------------------ |
| Accept<mark style="color:red;">\*</mark> | String | application/vnd.imggaming.dde.api+json;version=1 |
| Connection                               | String | keep-alive                                       |

{% tabs %}
{% tab title="401: Unauthorized " %}

```javascript
{
    The supplied authentication is invalid
}
```

{% endtab %}

{% tab title="400: Bad Request " %}

```javascript
{
    Request is missing required HTTP header 'Accept'
}
```

{% endtab %}
{% endtabs %}

## Authentication

We don't look at the header for websockets. Instead we expect the client to push through that auth message immediately on connecting in the following format

```json
{"authToken": "ACCESS_TOKEN"}
```

## Request limits

IMG Arena monitors customer traffic to ensure it follows guidelines and isn't excessive. We recommend a request rate of 5 per second and encourage staying connected to websockets instead of repeated re-connections.

## Request parameters

Two optional parameters are in common with these WebSocket endpoints:

* `speed` - this can be “fast” or “normal”. The default is normal and only applicable for offline matches.
* `startPosition` : integer value, default is 0. This is how many events to skip from the beginning of the list. e.g. five would start sending events from the 5th event received for that WebSockte. This is a helpful feature if you want to continue without getting all the events again from the beginning when you reconnect.

## Response Fields

<table data-header-hidden><thead><tr><th width="189">Property</th><th>Description</th></tr></thead><tbody><tr><td><a data-mention href="../objects/live-objects/action">action</a></td><td>Detailed player action details within a match</td></tr></tbody></table>
