# 実験的 API

## 概要

実験的 API とは、今後のアップデートで互換性を保証しない API です。

将来的には正式版としてリリースするか、または非推奨となり廃止するかのどちらかです。

## その他の API

> **注意**
>
> この API は実験的機能のため、正式版では仕様が変更される可能性があります。


### ChangeUpstreamVideoBitRate

**x-sora-target**: Sora_20190327.ChangeUpstreamVideoBitRate

指定した接続のビットレートを動的に変更します。

主に `role` が `sendonly` の **配信ビットレート** を動的に変更し固定することを目的としている API です。

> **注釈**
>
> これは接続後に映像ビットレートを強制的に変更する唯一の仕組みです。

* - キー
  - 型
* - channel_id
  - string
* - connection_id
  - string
* - bit_rate
  - integer (1 - 30000)

```console
$ http POST 127.0.0.1:3000/ x-sora-target:Sora_20190327.ChangeUpstreamVideoBitRate \
    channel_id=sora \
    connection_id=HMRVPQEXJX03D3B3WE778SJGRC \
    bit_rate:=300 \
    -vvv
POST / HTTP/1.1
Accept: application/json, */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Content-Length: 96
Content-Type: application/json
Host: 127.0.0.1:3000
User-Agent: HTTPie/1.0.2
x-sora-target: Sora_20190327.ChangeUpstreamVideoBitRate

{
    "bit_rate": 300,
    "channel_id": "sora",
    "connection_id": "HMRVPQEXJX03D3B3WE778SJGRC"
}

HTTP/1.1 200 OK
access-control-allow-headers: Origin, X-Requested-With, Content-Type, Accept, x-sora-target
access-control-allow-methods: POST, OPTIONS
access-control-allow-origin: http://127.0.0.1:5000
access-control-max-age: 1000
content-length: 91
content-type: application/json
date: Wed, 27 Mar 2020 08:38:03 GMT
server: Cowboy

{
    "bit_rate": 300,
    "channel_id": "sora",
    "connection_id": "HMRVPQEXJX03D3B3WE778SJGRC"
}
```
