# System

{% hint style="info" %}
For all headers refer to [Overview](https://axibo-support.gitbook.io/axibo-docs/axibo-rest-api-work-in-progress/overview) --> Headers
{% endhint %}

### System Status Request

The purpose of this request is to receive the AXIBO status.&#x20;

#### Endpoint&#x20;

```uri
GET http://{axibo-ip}:2200/v1/system/status
```

#### Example (GET)&#x20;

```json
{
    "mode": 0,
    "modeString": "waiting for motion commands",
    "axies": [
        "tilt",
        "pan",
        "fslide"
    ],
    "data": [
        {
            "axis": "tilt",
            "infolog": "",
            "cmdResult": 0,
            "position": -0.68,
            "isHomed": 0,
            "isBusy": 0,
            "minRange": -390,
            "maxRange": 400,
            "maxVelLimit": 50,
            "direction": -1,
            "highSpeedMode": 0,
            "torque": 0,
            "skipEventCount": 0,
            "accel": 2,
            "decel": 2,
            "current": 16,
            "statusCode": 0,
            "status": "",
            "lastHeartbeat": 1660840545277868448,
            "switchPose": 0,
            "switchStatus": 1,
            "version": 0,
            "pcktValidator": 1,
            "lostpackets": 0
        }
    ],
    "hdmiStatus": "0",
    "coProcInfo": "{\"network\": {\"number_of_triggers\": 0, \"tx_packet_counter\": 0, \"rx_packet_counter\": 1, \"failed_crc_check_tx\": 0, \"g_rtc_timer\": 10294131, \"failed_crc_check_rx\": 0}, \"power\": {\"current\": 0, \"5v\": 1, \"dc\": 15.413300000000001, \"temperature\": 29, \"cell_1\": 0, \"cell_2\": 0, \"dc_source\": 12.6187}}",
    "hardwareMode": "high torque",
    "waypointTimer": 0
}
```

### Bluetooth Status Request

The purpose of this request is to receive the AXIBO Bluetooth status.&#x20;

#### Endpoint&#x20;

```uri
GET http://{axibo-ip}:2200/v1/system/bluetooth
```

#### Example (GET)&#x20;

```json
{
    "scan_results": [
        {
            "mac": "98:CD:E3:23:42:BD",
            "name": "Wireless Controller"
        }
    ],
    "paired_devices": [
        {
            "mac": "98:CD:E3:23:42:BD",
            "name": "Wireless Controller"
        }
    ],
    "connected_devices": [
        {
            "mac": "98:CD:E3:23:42:BD",
            "name": "Wireless Controller"
        }
    ],
    "request_info": "no request made yet"
}
```

### Bluetooth Action Request

The purpose of this request is to allow the AXIBO to scan, connect, and delete Bluetooth devices.

#### Endpoint

```uri
PUT http://{axibo-ip}:2200/v1/system/bluetooth-config
```

#### Body Properties

<table><thead><tr><th>Property</th><th>Type</th><th>Required</th><th width="202">Description</th></tr></thead><tbody><tr><td><code>case</code></td><td>int</td><td>Yes</td><td><p>Case 1: scans for the Bluetooth device.</p><p>Case 2: deletes the Bluetooth device. Case 3: connects the Bluetooth device. </p></td></tr><tr><td><code>mac</code></td><td>string </td><td>yes</td><td>This is the mac address of the Bluetooth device.</td></tr></tbody></table>

#### Example (PUT)

```json
{
    "case":3,
    "mac":"67:31:E8:0E:BD:43"
}
```

### WiFi List Request

The purpose of this request is to return the current connected WiFi network.

<pre class="language-uri"><code class="lang-uri"><strong>GET http://{axibo-ip}:2200/v1/system/wifiInfo
</strong></code></pre>

#### Example (GET)

```json
{
    "networkName": "Hotspot"
}
```

### Redis Params

The purpose of this request is to return the Redis parameters of the AXIBO.&#x20;

#### Endpoint&#x20;

```uri
GET http://{axibo-ip}:2200/v1/system/redis-params
```

#### Example (GET)

```json
{
    "offsetX": 0.14000000059604645,
    "offsetY": 0.23999999463558197,
    "feedSelected": "01",
    "wifiIP": "10.42.0.1",
    "etherIP": "10.0.0.168",
    "serialNum": "9DAF65FC",
    "noise": "0",
    "smartStop": "0",
    "firmwareVersion": "93"
}
```

### List WiFi Request

The purpose of this request is to list the available and saved WiFi networks.&#x20;

#### Endpoint

```uri
GET http://{axibo-ip}:2200/v1/system/wifi
```

#### Example (GET)

```json
{
    "savedWifiList": [
        "Ifupdown (eth0)"
    ],
    "availableWifis": [
        "AXIBO-50gs"
    ]
}
```

### Connect to WiFi Request

The purpose of this request is to allow the AXIBO to connect to WiFi networks.&#x20;

#### Endpoint&#x20;

<pre class="language-uri"><code class="lang-uri"><strong>PUT http://{axibo-ip}:2200/v1/system/wifi
</strong></code></pre>

#### Body Properties

| Property   | Type   | Required | Description                                  |
| ---------- | ------ | -------- | -------------------------------------------- |
| `ssid`     | string | Yes      | The ssid of the WiFi network to connect.     |
| `password` | string | Yes      | The password of the WiFI network to connect. |

#### Example (PUT)

```json
{
    "ssid": "AXIBO-0919D85A",
    "password":"0919D85A"
}
```

### Delete WiFi Request

The purpose of this request is to allow the AXIBO to delete WiFi networks.&#x20;

#### Endpoint&#x20;

<pre class="language-uri"><code class="lang-uri"><strong>DELETE http://{axibo-ip}:2200/v1/system/wifi
</strong></code></pre>

#### Body Properties

| Property | Type   | Required | Description                             |
| -------- | ------ | -------- | --------------------------------------- |
| `ssid`   | string | Yes      | The ssid of the WiFi network to delete. |

#### Example (DELETE)

```json
{
    "ssid": "AXIBO-0919D85A",
}
```

### Websockets Routes Request

The purpose of this request is to list the AXIBO websockets.&#x20;

#### Endpoint

```uri
GET http://{axibo-ip}:2200/v1/websocket/Info
```

#### Example (GET)

```json
{
    "commsWS": "ws://10.0.0.168:2100/ws",
    "rawCam": "ws://10.0.0.168:2101/ws",
    "poseCam": "ws://10.0.0.168:2102/ws",
    "poseData": "ws://10.0.0.168:2103/ws"
}
```

### Reboot Request

The purpose of this request is to list the AXIBO websockets.&#x20;

#### Endpoint

```uri
POST http://{{base_url}}:2200/v1/system/reboot
```

#### Body Properties

No body properties. POST the request to reboot.

#### Example (POST)

```json
{
    "status": 200,
    "message": "success"
}
```

### Update Request

#### Endpoint&#x20;

<pre class="language-uri"><code class="lang-uri"><strong>GET http://{axibo-ip}:2200/v1/system/update
</strong></code></pre>

#### Example (POST)

```json
{
    "status": 200,
    "message": "success"
}
```

### Stop and Start Services Request

This request will either start or stop AXIBO services such as the tracker, camera, etc&#x20;

#### Endpoint&#x20;

```uri
PUT http://{axibo-ip}:2200/v1/system/config
```

#### Body Properties

| Property    | Type | Required | Description                                  |
| ----------- | ---- | -------- | -------------------------------------------- |
| camera      | int  | Yes      | Stop/start the camera service on AXIBO.      |
| hardware    | int  | Yes      | Stop/start the hardware service on AXIBO.    |
| tracker     | int  | Yes      | Stop/start the tracker service on AXIBO.     |
| hdmiManager | int  | Yes      | Stop/start the hdmiManager service on AXIBO. |

#### Example (PUT)

```json
{
    "camera": 1,
    "hardware": 0,
    "tracker": 1,
    "hdmiManager": 0,
}
```

### Service Status Request

This request will return if the services are enable or disabled.

#### Endpoint&#x20;

```uri
GET http://{axibo-ip}:2200/v1/system/services
```

#### Example (GET)

```json
{
    "camera": "active",
    "hardware": "active",
    "trackerTIO": "active",
    "hdmiManager": "active",
    "liveLink": "inactive",
    "AIEngine": "active"
}
```

### System Info Request

This will return system info such as version, serial number, etc.&#x20;

#### Endpoint&#x20;

```uri
GET http://{axibo-ip}:2200/v1/system/info
```

#### Example (GET)

```json
{
    "version": "1.3.3",
    "serialNum": "9DAF65FC",
    "macAddress": "32:57:ff:6d:69:53",
    "time": 1660842631246186120
}
```
