# API

All API calls use GET and or POST requests to retrieve and set values. Every response from a GET or POST request use the same structure. The response is in JSON format and includes a true / false field to indicate success, an error field to provide more detailed information if there is an error, and a content field that contains either the current value of the setting or a message detailing what action the request performed.

`{"success":true,"error":null,"content":0}`

In addition to this document, the web interface provides a full list of API calls and their use cases.

![API GET URL](/files/orFKrXJCrcZ8PXhkC98s) ![API POST URL and Instructions](/files/FxYeLsmgsI6wyFuEyDvj)

![API Properties Figure](/files/8brS8at4H9ojM4jtrmpO) ![API JSON Response](/files/K99OteI6p9ypPt7a2dUj)

## API Calls Using SSL <a href="#api-calls-using-ssl" id="api-calls-using-ssl"></a>

When SSL is enabled you must include a valid API key in the header of your request. It key in the header should be named `x-api-key` and the value should be the API key you issued starting with **NDI-**. Here is some example C# code for sending GET and POST requests with SSL where `API KEY` is a string value containing the **NDI-** prefixed key:

```
static async Task<string> PostAsync(string uri, Dictionary<string, string> values)
{
var client = new HttpClient(); client.DefaultRequestHeaders.Add("x-api-key", API_KEY);
var content = JsonContent.Create(values);
var result = await client.PostAsync(uri, content); return await result.Content.ReadAsStringAsync();
}
static async Task<string> GetAsync(string uri)
{
var client = new HttpClient(); client.DefaultRequestHeaders.Add("x-api-key", API_KEY);
var result = await client.GetAsync(uri);
return await result.Content.ReadAsStringAsync();
}
```

***

The following subsections detail each API endpoint available in NDI Bridge Service:

### Auto Start <a href="#auto-start" id="auto-start"></a>

Get or set whether to start join or host on service start-up. Will always return the latest auto start value. The service must be restarted to reflect this change.

| Key   | Type   | Description                                                              | Notes                                                                                             |
| ----- | ------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) 0, 1 or 2 where 0 = None, 1</p><p>= Host, and 2 = Join</p> | <p>If provided on a</p><p>POST request, the Bridge Service auto start mode will be</p><p>set.</p> |

`GET URL: http://localhost:8080/api/auto_start`&#x20;

`POST URL: http://localhost:8080/api/auto_start`

`EXAMPLE POST CONTENT: {"value":"0"}`

### GPU List <a href="#gpu-list" id="gpu-list"></a>

Gets the list of available GPUs.

`GET URL: http://localhost:8080/api/gpu_list`

### Host Bandwidth <a href="#host-bandwidth" id="host-bandwidth"></a>

Get the current host bandwidth message.

`GET URL: http://localhost:8080/api/host/bandwidth_message`

### Host Bridge Name <a href="#host-bridge-name" id="host-bridge-name"></a>

Get or set the host bridge name. Will always return the latest host bridge name.

| Key   | Type   | Description                  | Notes                                                                               |
| ----- | ------ | ---------------------------- | ----------------------------------------------------------------------------------- |
| value | String | (required) Any string value. | <p>If provided on a</p><p>POST request, the host bridge name</p><p>will be set.</p> |

`GET URL: http://localhost:8080/api/host/bridge_name`&#x20;

`POST URL: http://localhost:8080/api/host/bridge_name`

`EXAMPLE POST CONTENT: {"value":"My Bridge Host"}`

### Host Buffer <a href="#host-buffer" id="host-buffer"></a>

Get or set the host buffer value. Will always return the latest host buffer value.

| Key   | Type   |                                                             |                                                                                                                                           |
| ----- | ------ | ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| value | String | <p>(optional) A buffer length value from 0-</p><p>3000.</p> | <p>Buffer length value</p><p>in the range of 0-3000. If pro- vided on a POST request, the host buffer length value</p><p>will be set.</p> |

`GET URL: http://localhost:8080/api/host/buffer`&#x20;

`POST URL: http://localhost:8080/api/host/buffer`

`EXAMPLE POST CONTENT: {"value":"0"}`

### Host Clear Encryption Key <a href="#host-clear-encryption-key" id="host-clear-encryption-key"></a>

Clears the host encryption key on POST.

`POST URL: http://localhost:8080/api/host/clear_encryption_key`&#x20;

`EXAMPLE POST CONTENT: {}`

### Host GPU Limit <a href="#host-gpu-limit" id="host-gpu-limit"></a>

Gets a boolean to represent if the host has reached its GPU encoding limits or not.

`GET URL: http://localhost:8080/api/host/gpu_limit`

### Host Groups <a href="#host-groups" id="host-groups"></a>

Get or set the host groups to share. Will always return the latest host groups.

| Key   | Type   | Description                                                     | Notes                                                                          |
| ----- | ------ | --------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| value | String | <p>(required) A comma delineated list of</p><p>group names.</p> | <p>If provided on a</p><p>POST request, the host groups will be</p><p>set.</p> |

`GET URL: http://localhost:8080/api/host/groups`&#x20;

`POST URL: http://localhost:8080/api/host/groups`

`EXAMPLE POST CONTENT: {"value":"public,test group"}`

### Host HX Encoder <a href="#host-hx-encoder" id="host-hx-encoder"></a>

Get or set the host HX encoder. Will always return the latest host HX encoder value.

| Key   | Type   | Description                                                      | Notes                                                                                   |
| ----- | ------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| value | String | <p>(required) 0 or 1 where 0 = h.264, 1 =</p><p>HEVC (h.265)</p> | <p>If provided on a</p><p>POST request, the host HX encoder</p><p>type will be set.</p> |

`GET URL: http://localhost:8080/api/host/hx_encoder`&#x20;

`POST URL: http://localhost:8080/api/host/hx_encoder`

`EXAMPLE POST CONTENT: {"value":"0"}`

### Host HX GPU <a href="#host-hx-gpu" id="host-hx-gpu"></a>

Get or set the host HX GPU. Will always return the latest host HX GPU.

| Key   | Type   | Description                                                                            | Notes                                                                          |
| ----- | ------ | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| value | String | <p>(required) The name of the GPU. Use</p><p>’Auto’ to automatically select a GPU.</p> | <p>If provided on a</p><p>POST request, the host HX GPU will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/host/hx_gpu`&#x20;

`POST URL: http://localhost:8080/api/host/hx_gpu`

`EXAMPLE POST CONTENT: {"value":"Auto"}`

### Host HX NDI4 Compatibility Mode <a href="#host-hx-ndi4-compatibility-mode" id="host-hx-ndi4-compatibility-mode"></a>

Get or set the host HX NDI4 compatibility mode. Will always return the latest host HX NDI4 compatibility mode value.

| Key   | Type   | Description                                                                       | Notes                                                                                                |
| ----- | ------ | --------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) A boolean to enable or dis-</p><p>able NDI4 compatibility mode.</p> | <p>If provided on a</p><p>POST request, the host HX NDI4 com- patibility mode will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/host/hx_ndi4_compatibility_mode`&#x20;

`POST URL: http://localhost:8080/api/host/hx_ndi4_compatibility_mode`

`EXAMPLE POST CONTENT: {"value":"false"}`

### Host HX Output <a href="#host-hx-output" id="host-hx-output"></a>

Get or set the host HX output. Will always return the latest host HX output value.

| Key   | Type   | Description                                                                                                   | Notes                                                                                  |
| ----- | ------ | ------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| value | String | <p>(required) 0, 1, or 2 where 0 = NDI —</p><p>HX, 1 = NDI High Bandwidth, and 2</p><p>= Do Not Transcode</p> | <p>If provided on a</p><p>POST request, the host HX output</p><p>type will be set.</p> |

`GET URL: http://localhost:8080/api/host/hx_output`&#x20;

`POST URL: http://localhost:8080/api/host/hx_output`

`EXAMPLE POST CONTENT: {"value":"0"}`

### Host HX Quality <a href="#host-hx-quality" id="host-hx-quality"></a>

Get or set the host HX quality setting. Will always return the latest host HX quality setting value.

| Key   | Type   | Description                                                                          | Notes                                                                                      |
| ----- | ------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
| value | String | <p>(required) A value between 10 and 400</p><p>with 10 being the lowest quality.</p> | <p>If provided on a</p><p>POST request, the host HX quality</p><p>setting will be set.</p> |

`GET URL: http://localhost:8080/api/host/hx_quality`&#x20;

`POST URL: http://localhost:8080/api/host/hx_quality`

`EXAMPLE POST CONTENT: {"value":"100"}`

### Host Port <a href="#host-port" id="host-port"></a>

Get or set the host port value. Will always return the latest host port value.

| Key   | Type   | Description                                                  | Notes                                                                                                                   |
| ----- | ------ | ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) Port number in the range of</p><p>1-65545.</p> | <p>Port number in the</p><p>range of 1-65545. If provided on a POST request, the host port value will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/host/port`&#x20;

`POST URL: http://localhost:8080/api/host/port`

`EXAMPLE POST CONTENT: {"value":"5990"}`

### Host Set Encryption Key <a href="#host-set-encryption-key" id="host-set-encryption-key"></a>

Sets the host’s encryption key on POST.

| Key   | Type   | Description                                              | Notes                                                                                                                   |
| ----- | ------ | -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) The encryption key string</p><p>value.</p> | <p>Returns success on</p><p>setting the encryp- tion key. Does not return the cur- rent encryption key</p><p>value.</p> |

`POST URL: http://localhost:8080/api/host/set_encryption_key`&#x20;

`EXAMPLE POST CONTENT: {"value":"some encryption key"}`

### Host Start <a href="#host-start" id="host-start"></a>

Starts the host and returns if the operation succeeded or not.

`POST URL: http://localhost:8080/api/host/start`&#x20;

`EXAMPLE POST CONTENT: {}`

### Host Status <a href="#host-status" id="host-status"></a>

Gets the current host status message.

`GET URL: http://localhost:8080/api/host/status_message`

### Host Stop <a href="#host-stop" id="host-stop"></a>

Stops the host if the host was running. Returns if the operation succeeded or not.

`POST URL: http://localhost:8080/api/host/stop`&#x20;

`EXAMPLE POST CONTENT: {}`

### Is Running <a href="#is-running" id="is-running"></a>

Returns true if Bridge is running in Host or Join mode.

`GET URL: http://localhost:8080/api/is_running`

### Join Bandwidth <a href="#join-bandwidth" id="join-bandwidth"></a>

Get the current join bandwidth message.

`GET URL: http://localhost:8080/api/join/bandwidth_message`

### Join Bridge Name <a href="#join-bridge-name" id="join-bridge-name"></a>

Get or set the join bridge name. Will always return the latest join bridge name.

| Key   | Type   | Description                  | Notes                                                                               |
| ----- | ------ | ---------------------------- | ----------------------------------------------------------------------------------- |
| value | String | (required) Any string value. | <p>If provided on a</p><p>POST request, the join bridge name</p><p>will be set.</p> |

`GET URL: http://localhost:8080/api/join/bridge_name`&#x20;

`POST URL: http://localhost:8080/api/join/bridge_name`

`EXAMPLE POST CONTENT: {"value":"My Bridge Name"}`

### Join Buffer <a href="#join-buffer" id="join-buffer"></a>

Get or set the join buffer value. Will always return the latest join buffer value.

| Key   | Type   | Description                                                | Notes                                                                                                                                     |
| ----- | ------ | ---------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) A buffer length value from</p><p>0-3000.</p> | <p>Buffer length value</p><p>in the range of 0-3000. If pro- vided on a POST request, the join buffer length value</p><p>will be set.</p> |

`GET URL: http://localhost:8080/api/join/buffer`&#x20;

`POST URL: http://localhost:8080/api/join/buffer`

`EXAMPLE POST CONTENT: {"value":"100"}`

### Join Clear Encryption Key <a href="#join-clear-encryption-key" id="join-clear-encryption-key"></a>

Clears the join encryption key when called.

`POST URL: http://localhost:8080/api/join/clear_encryption_key E`

`XAMPLE POST CONTENT: {}`

### Join GPU Limit <a href="#join-gpu-limit" id="join-gpu-limit"></a>

Gets a boolean to represent if the join has reached its GPU encoding limits or not.

`GET URL: http://localhost:8080/api/join/gpu_limit`

### Join Groups <a href="#join-groups" id="join-groups"></a>

Get or set the join groups to share. Will always return the latest join groups.

| Key   | Type   | Description                                                     | Notes                                                                          |
| ----- | ------ | --------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| value | String | <p>(required) A comma delineated list of</p><p>group names.</p> | <p>If provided on a</p><p>POST request, the join groups will be</p><p>set.</p> |

`GET URL: http://localhost:8080/api/join/groups`&#x20;

`POST URL: http://localhost:8080/api/join/groups`

`EXAMPLE POST CONTENT: {"value":"pubic,test"}`

### Join HX Encoder <a href="#join-hx-encoder" id="join-hx-encoder"></a>

Get or set the join HX encoder. Will always return the latest join HX encoder value.

| Key   | Type   | Description                                                      | Notes                                                                                   |
| ----- | ------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| value | String | <p>(required) 0 or 1 where 0 = h.264, 1 =</p><p>HEVC (h.265)</p> | <p>If provided on a</p><p>POST request, the join HX encoder</p><p>type will be set.</p> |

`GET URL: http://localhost:8080/api/join/hx_encoder`&#x20;

`POST URL: http://localhost:8080/api/join/hx_encoder`

`EXAMPLE POST CONTENT: {"value":"0"}`

### Join HX GPU <a href="#join-hx-gpu" id="join-hx-gpu"></a>

Get or set the join HX GPU. Will always return the latest join HX GPU.

| Key   | Type   | Description                                                                            | Notes                                                                          |
| ----- | ------ | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| value | String | <p>(required) The name of the GPU. Use</p><p>’Auto’ to automatically select a GPU.</p> | <p>If provided on a</p><p>POST request, the join HX GPU will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/join/hx_gpu`&#x20;

`POST URL: http://localhost:8080/api/join/hx_gpu`

`EXAMPLE POST CONTENT: {"value":"Auto"}`

### Join HX NDI4 Compatibility Mode <a href="#join-hx-ndi4-compatibility-mode" id="join-hx-ndi4-compatibility-mode"></a>

Get or set the join HX NDI4 compatibility mode. Will always return the latest join HX NDI4 compatibility mode value.

| Key   | Type   | Description                                                                       | Notes                                                                                                |
| ----- | ------ | --------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) A boolean to enable or dis-</p><p>able NDI4 compatibility mode.</p> | <p>If provided on a</p><p>POST request, the join HX NDI4 com- patibility mode will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/join/hx_ndi4_compatibility_mode`&#x20;

`POST URL: http://localhost:8080/api/join/hx_ndi4_compatibility_mode`

`EXAMPLE POST CONTENT: {"value":"false"}`

### Join HX Output <a href="#join-hx-output" id="join-hx-output"></a>

Get or set the join HX output. Will always return the latest join HX output value.

| Key   | Type   | Description                                                                                                   | Notes                                                                                  |
| ----- | ------ | ------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| value | String | <p>(required) 0, 1, or 2 where 0 = NDI —</p><p>HX, 1 = NDI High Bandwidth, and 2</p><p>= Do Not Transcode</p> | <p>If provided on a</p><p>POST request, the join HX output</p><p>type will be set.</p> |

`GET URL: http://localhost:8080/api/join/hx_output`&#x20;

`POST URL: http://localhost:8080/api/join/hx_output`

`EXAMPLE POST CONTENT: {"value":"0"}`

### Join HX Quality <a href="#join-hx-quality" id="join-hx-quality"></a>

Get or set the join HX quality setting. Will always return the latest join HX quality setting value.

| Key   | Type   | Description                                                                          | Notes                                                                                        |
| ----- | ------ | ------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------- |
| value | String | <p>(required) A value between 10 and 400</p><p>with 10 being the lowest quality.</p> | <p>If provided on a</p><p>POST request, the join HX quality set-</p><p>ting will be set.</p> |

`GET URL: http://localhost:8080/api/join/hx_quality`&#x20;

`POST URL: http://localhost:8080/api/join/hx_quality`

`EXAMPLE POST CONTENT: {"value":"100"}`

### Join IP Address <a href="#join-ip-address" id="join-ip-address"></a>

Get or set the join IP address. Will always return the latest join IP address.

| Key   | Type   | Description                                                   | Notes                                                                              |
| ----- | ------ | ------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| value | String | <p>(required) IP Address in IPv4 format</p><p>’127.0.0.1’</p> | <p>If provided on a</p><p>POST request, the join IP address will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/join/ip_address`&#x20;

`POST URL: http://localhost:8080/api/join/ip_address`

`EXAMPLE POST CONTENT: {"value":"127.0.0.1"}`

### Join Port <a href="#join-port" id="join-port"></a>

Get or set the join port value. Will always return the latest join port value.

| Key   | Type   | Description                                                  | Notes                                                                                                                   |
| ----- | ------ | ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) Port number in the range of</p><p>1-65535.</p> | <p>Port number in the</p><p>range of 1-65535. If provided on a POST request, the join port value will</p><p>be set.</p> |

`GET URL: http://localhost:8080/api/join/port`&#x20;

`POST URL: http://localhost:8080/api/join/port`

`EXAMPLE POST CONTENT: {"value":"5990"}`

### Join Set Encryption Key <a href="#join-set-encryption-key" id="join-set-encryption-key"></a>

Sets the join encryption key on POST.

| Key   | Type   | Description                                              | Notes                                                                                                                   |
| ----- | ------ | -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| value | String | <p>(required) The encryption key string</p><p>value.</p> | <p>Returns success on</p><p>setting the encryp- tion key. Does not return the cur- rent encryption key</p><p>value.</p> |

`POST URL: http://localhost:8080/api/join/set_encryption_key`&#x20;

`EXAMPLE POST CONTENT: {"value":"some encryption key"}`

### Join Start <a href="#join-start" id="join-start"></a>

Starts the join and returns if the operation succeeded or not.

`POST URL: http://localhost:8080/api/join/start`&#x20;

`EXAMPLE POST CONTENT: {}`

### Join Status <a href="#join-status" id="join-status"></a>

Gets the current join status message.

`GET URL: http://localhost:8080/api/join/status_message`

### Join Stop <a href="#join-stop" id="join-stop"></a>

Stops the join if the join was running. Returns if the operation succeeded or not.

`POST URL: http://localhost:8080/api/join/stop`&#x20;

`EXAMPLE POST CONTENT: {}`

### Local Bridge Name

Get or set the local bridge name. Will always return the latest local bridge name.

<table><thead><tr><th valign="top">Key</th><th valign="top">Type</th><th valign="top">Description</th><th valign="top">Notes</th></tr></thead><tbody><tr><td valign="top">value</td><td valign="top">String</td><td valign="top">(required) Any string value.</td><td valign="top"><p>If provided on a</p><p>POST request, the local bridge name will be set.</p></td></tr></tbody></table>

`GET URL: http://localhost:8080/api/local/bridge_name`&#x20;

`POST URL: http://localhost:8080/api/local/bridge_name`

`EXAMPLE POST CONTENT:{"value":"My Bridge Name"}`

### Local Groups

Get or set the local groups to share. Will always return the latest local groups.

<table><thead><tr><th valign="top">Key</th><th valign="top">Type</th><th valign="top">Description</th><th valign="top">Notes</th></tr></thead><tbody><tr><td valign="top">value</td><td valign="top">String</td><td valign="top"><p>(required) A comma delineated list of</p><p>group names.</p></td><td valign="top"><p>If provided on a</p><p>POST request, the local groups will be set.</p></td></tr></tbody></table>

`GET URL: http://localhost:8080/api/local/groups`&#x20;

`POST URL: http://localhost:8080/api/local/groups`

`EXAMPLE POST CONTENT: {"value":"public,test"}`

### Local HX GPU

Get or set the local HX GPU. Will always return the latest local HX GPU.

<table><thead><tr><th valign="top">Key</th><th valign="top">Type</th><th valign="top">Description</th><th valign="top">Notes</th></tr></thead><tbody><tr><td valign="top">value</td><td valign="top">String</td><td valign="top"><p>(required) The name of the GPU. Use</p><p>’Auto’ to automatically select a GPU.</p></td><td valign="top"><p>If provided on a</p><p>POST request, the local HX GPU will be set.</p></td></tr></tbody></table>

`GET URL: http://localhost:8080/api/local/hx_gpu`&#x20;

`POST URL: http://localhost:8080/api/local/hx_gpu`

`EXAMPLE POST CONTENT: {"value":"Auto"}`

### Local HX NDI4 Compatibility Mode

Get or set the local HX NDI4 compatibility mode. Will always return the latest local HX NDI4 compatibility mode value.

<table><thead><tr><th valign="top">Key</th><th valign="top">Type</th><th valign="top">Description</th><th valign="top">Notes</th></tr></thead><tbody><tr><td valign="top">value</td><td valign="top">String</td><td valign="top"><p>(required) A boolean to enable or dis-</p><p>able NDI4 compatibility mode.</p></td><td valign="top"><p>If provided on a</p><p>POST request, the local HX NDI4 compatibility mode will be set.</p></td></tr></tbody></table>

`GET URL: http://localhost:8080/api/local/hx_ndi4_compatibility_mode`&#x20;

`POST URL: http://localhost:8080/api/local/hx_ndi4_compatibility_mode`

`EXAMPLE POST CONTENT: {"value":"false"}`

### Local HX Output <a href="#local_hx_output" id="local_hx_output"></a>

Get or set the local HX output. Will always return the latest local HX output value.

<table><thead><tr><th valign="top">Key</th><th valign="top">Type</th><th valign="top">Description</th><th valign="top">Notes</th></tr></thead><tbody><tr><td valign="top">value</td><td valign="top">String</td><td valign="top"><p>(required) 0, 1, or 2 where 0 = NDI —</p><p>HX, 1 = NDI High Bandwidth, and 2</p><p>= Do Not Transcode</p></td><td valign="top"><p>If provided on a</p><p>POST request, the local HX output type will be set.</p></td></tr></tbody></table>

`GET URL: http://localhost:8080/api/local/hx_output`&#x20;

`POST URL: http://localhost:8080/api/local/hx_output`

`EXAMPLE POST CONTENT: {"value":"0"}`

### Local HX Quality

Get or set the local HX quality setting. Will always return the latest local HX quality setting value.

<table><thead><tr><th valign="top">Key</th><th valign="top">Type</th><th valign="top">Description</th><th valign="top">Notes</th></tr></thead><tbody><tr><td valign="top">value</td><td valign="top">String</td><td valign="top"><p>(required) A value between 10 and 400</p><p>with 10 being the lowest quality.</p></td><td valign="top"><p>If provided on a</p><p>POST request, the local HX quality setting will be set.</p></td></tr></tbody></table>

`GET URL:  http://localhost:8080/api/local/hx_quality`&#x20;

`POST URL: http://localhost:8080/api/local/hx_quality`

`EXAMPLE POST CONTENT: {"value":"100"}`

### Local Send Groups

Get or set the send NDI Groups where locally the sources from this Bridge will appear in. Will always return the current local send groups.

<table data-header-hidden><thead><tr><th valign="top"></th><th valign="top"></th><th valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top">Key</td><td valign="top">Type</td><td valign="top">Description</td><td valign="top">Notes</td></tr><tr><td valign="top">value</td><td valign="top">String</td><td valign="top"><p>(required) A comma delineated list of</p><p>send groups names.</p></td><td valign="top"><p>If provided on a</p><p>POST request, the local send groups will be set.</p></td></tr></tbody></table>

`GET URL: http://localhost:8080/api/local/send_groups`&#x20;

`POST URL: http://localhost:8080/api/local/send_groups`

`EXAMPLE POST CONTENT: {"value":"public,test group"}`

### Local Start

Starts the local bridge and returns if the operation succeeded or not.

`POST URL: http://localhost:8080/api/local/start`&#x20;

`EXAMPLE POST CONTENT: {"value":"Local started."}`

### Local Status

Gets the current local status message.

`GET URL: http://localhost:8080/api/local/status_message`

### Local Stop

Stops the local if the local was running. Returns if the operation succeeded or not.

`POST URL: http://localhost:8080/api/local/stop`

`EXAMPLE POST CONTENT: {"value":"Local stopped."}`

### Connection Test Start

Starts the connection test. You can use the connection test to help identify the best buffer setting for your chosen bitrate given your current network conditions. You must have at least one active connection to perform a connection test.

`POST URL:   http://localhost:8080/api/connection_test_start`

### Connection Test Start <a href="#connection-test-start" id="connection-test-start"></a>

Starts the connection test. You can use the connection test to help identify the best buffer setting for your chosen bitrate given your current network conditions. You must have at least one active connection to perform a connection test.

`POST URL: http://localhost:8080/api/connection_test_start`

### Connection Test Stop <a href="#connection-test-stop" id="connection-test-stop"></a>

Stops the connection test. The response to this request will include the recommended buffer setting.

`POST URL: http://localhost:8080/api/connection_test_stop`

### Connection Test Bitrate <a href="#connection-test-bitrate" id="connection-test-bitrate"></a>

Get or set the bitrate used in the connection test. Will always return the current bitrate value.

| Key   | Type   | Description                                                                                                                                                                                        | Notes |
| ----- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- |
| value | String | <p>(required) Value between 1 and the</p><p>maximum speed reported by the net- work adapters. When provided on a POST request, the Bridge Service con-</p><p>nection test bitrate will be set.</p> |       |

`GET URL: http://localhost:8080/api/connection_test_bitrate`&#x20;

`POST URL: http://localhost:8080/api/connection_test_bitrate`

### Run Mode <a href="#run-mode" id="run-mode"></a>

Gets the current running mode.

`GET URL: http://localhost:8080/api/runmode`

### Uptime <a href="#uptime" id="uptime"></a>

Returns the timespan since the service started.

`GET URL: http://localhost:8080/api/uptime`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ndi.video/all/developing-with-ndi/utilities/bridge-service/api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
