# Connection Statuses

## Types

There are four connection statuses for MMA Fight Details:

**Connected**: Connection is healthy, our onsite team have no issues and are delivering data at the lowest latency (\~2/3s from real time)

**Disconnected**: We are disconnected to our onsite team however there is an issue with the data being sent to us in real time – data will not be coming through until connection is re-established.

**Market closed:** Indication from the data collectors that they are having issues collecting data and you should suspend markets.

**Market open:** Indication from the data collectors that on-site issues have been resloved and you can enable markets.

## **1. Disconnected**

This packet will be sent to indicate that we are totally disconnected to our onsite team. You will only receive this packet once – Assume that the state of the round is disconnected until you receive another “ConnectionStateChanged” packet.

### **Response Model**

#### **Disconnected Object**

| Field Name       | Type   | Description                                                     |
| ---------------- | ------ | --------------------------------------------------------------- |
| timestamp        | date   | The timestamp of the event, in UTC                              |
| eventElementType | string | The type of event, in this case always “ConnectionStateChanged” |
| state            | string | The type of state, in this case “Disconnected”                  |

### **Sample Event Packet**

```
{
  "eventElementType": "ConnectionStateChanged",
  "state": "Disconnected",
  "timestamp": "2025-09-04T11:19:45.700Z"
}
```

## **2. Connected**

This packet will be sent to indicate that we are connected to our onsite team. You will only receive this packet once – Assume that the state of the round is connected until you receive another “ConnectionStateChanged” packet.

### **Respo**n**se Model**

#### **Connected Object**

| Field Name       | Type   | Description                                                     |
| ---------------- | ------ | --------------------------------------------------------------- |
| timestamp        | date   | The timestamp of the event, in UTC                              |
| eventElementType | string | The type of event, in this case always “ConnectionStateChanged” |
| state            | string | The type of state, in this case “Connected”                     |

### **Sample Event Packet**

```
{
  "eventElementType": "ConnectionStateChanged",
  "state": "Connected",
  "timestamp": "2025-09-04T11:21:55.977Z"
}
```

## **3. Market closed**

### **Respo**n**se Model**

#### **MarketClose Object**

| Field Name       | Type    | Description                                         |
| ---------------- | ------- | --------------------------------------------------- |
| timestamp        | date    | The timestamp of the event, in UTC                  |
| eventElementType | string  | The type of event, in this case always “MarketOpen” |
| SeqNum           | integer | Seq number of the packet                            |

```
{
  "eventElementType": "MarketClose",
  "seqNum": 16,
  "timestamp": "2025-11-19T10:28:22.828916500Z"
}
```

## **4. Market Open**

### **Respo**n**se Model**

#### **MarketOpen Object**

| Field Name       | Type    | Description                                         |
| ---------------- | ------- | --------------------------------------------------- |
| timestamp        | date    | The timestamp of the event, in UTC                  |
| eventElementType | string  | The type of event, in this case always “MarketOpen” |
| SeqNum           | integer | Seq number of the packet                            |

```
{
  "eventElementType": "MarketOpen",
  "seqNum": 17,
  "timestamp": "2025-11-19T10:29:07.534412Z"
}
```
