Terminal System API (1.0.0)

Download OpenAPI specification:Download

Base URL

ベースURLは以下のとおりです。各APIエンドポイントはこのベースURLから始まります。

http://<bind-address>/api

Third Party Notices

URL 説明
http://<bind-address>/third_party_notices/inherent/ インストールイメージに含まれるサードパーティ製のソフトウェアのライセンス情報を取得します。
http://<bind-address>/third_party_notices/extra/ インストールイメージに含まれないサードパーティ製のソフトウェアのライセンス情報を取得します。

Streamer

Get Streamer Default Settings File Contents

intdash-agent-streamerのデフォルト設定ファイルの内容を取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Streamer Default Settings File Contents

intdash-agent-streamerのデフォルト設定ファイルの内容を更新します。

Authorizations:
basicAuth
Request Body schema: multipart/form-data
string <binary>

yamlフォーマットで記載されたintdash-agent-streamerのデフォルト設定。

使用できる項目

  • agent
    キー 説明
    channel_mode_default スレッド間をつなぐチャンネルのバッファが溢れた場合の処理。 wait, allow-drop, quit が選択可能です。
    * wait: バッファに制限を持たずメモリに保持す続けます。
    * allow-drop: バッファに入れられなかったデータを破棄します。
    * quit: バッファに入れられなかった場合エラー終了します。

例:

agent:
  channel_mode_default: quit

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Invalid request body",
  • "status": 400,
  • "detail": "request {request}: {detail}.",
  • "instance": "/pkg/error.go#123"
}

Connection to Server

Get Connection Settings

agentdのGet Connection Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Connection Settings

agentdのUpdate Connection Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Connection Settings State

Agentとintdashサーバー間の接続に関する設定の状態を取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "verified": true,
  • "edge_name": "edge01",
  • "edge_nickname": "nickname01"
}

Get Transport Settings

agentdのGet Transport Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Transport Settings

agentdのUpdate Transport Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Stream

List Upstream Settings

agentdのList Upstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Create Upstream Settings

agentdのCreate Upstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Upstream Settings

agentdのGet Upstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Upstream Settings

agentdのUpdate Upstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Upstream Settings

agentdのDelete Upstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List Upstream State

agentdのList Upstream Stateにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Upstream State

agentdのGet Upstream Stateにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List Downstream Settings

agentdのList Downstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Create Downstream Settings

agentdのCreate Downstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Downstream Settings

agentdのGet Downstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Downstream Settings

agentdのUpdate Downstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Downstream Settings

agentdのDelete Downstream Settingsにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List Downstream State

agentdのList Downstream Stateにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Downstream State

agentdのGet Downstream Stateにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Filter

List Filters for Upstream

agentdのList Filters for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Create Filter for Upstream

agentdのCreate Filter for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Filter for Upstream

agentdのGet Filter for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Filter for Upstream

agentdのUpdate Filter for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Filter for Upstream

agentdのDelete Filter for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List Filters for Downstream

agentdのList Filters for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Create Filter for Downstream

agentdのCreate Filter for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Filter for Downstream

agentdのGet Filter for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Filter for Downstream

agentdのUpdate Filter for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Filter for Downstream

agentdのDelete Filter for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Deferred Upload

Get Deferred Upload Settings

agentdのGet Deferred Upload Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Deferred Upload Settings

agentdのUpdate Deferred Upload Settingsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Deferred Upload State

agentdのGet Deferred Upload Stateにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Measurement

List Measurements

agentdのList Measurementsにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Measurement

agentdのGet Measurementにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
uuid
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Measurement

agentdのDelete Measurementにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
uuid
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Device Connector IPC

List Device Connector IPC Settings for Upstream

デバイスコネクターの送信用IPC設定。 agentdのList Device Connector IPC Settings for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Create Device Connector IPC Settings for Upstream

デバイスコネクターの送信用IPC設定。 agentdのCreate Device Connector IPC Settings for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Device Connector IPC Settings for Upstream

デバイスコネクターの送信用IPC設定。 agentdのGet Device Connector IPC Settings for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Update Device Connector IPC Settings for Upstream

デバイスコネクターの送信用IPC設定。 agentdのUpdate Device Connector IPC Settings for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Device Connector IPC Settings for Upstream

デバイスコネクターの送信用IPC設定。 agentdのDelete Device Connector IPC Settings for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List State of Device Connector IPC for Upstream

デバイスコネクターの送信用IPCの状態。 agentdのList Device Connector IPC States for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get State of Device Connector IPC for Upstream

デバイスコネクターの送信用IPCの状態。 agentdのGet Device Connector IPC State for Upstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List Device Connector IPC Settings for Downstream

デバイスコネクターの受信用IPC設定。 agentdのList Device Connector IPC Settings for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Create Device Connector IPC Settings for Downstream

デバイスコネクターの受信用IPC設定。 agentdのCreate Device Connector IPC Settings for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Device Connector IPC Settings for Downstream

デバイスコネクターの受信用IPC設定。 agentdのGet Device Connector IPC Settings for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Downdate Device Connector IPC Settings for Downstream

デバイスコネクターの受信用IPC設定。 agentdのUpdate Device Connector IPC Settings for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Delete Device Connector IPC Settings for Downstream

デバイスコネクターの受信用IPC設定。 agentdのDelete Device Connector IPC Settings for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List State of Device Connector IPC for Downstream

デバイスコネクターの受信用IPCの状態。 agentdのList Device Connector IPC State for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get State of Device Connector IPC for Downstream

デバイスコネクターの受信用IPCの状態。 agentdのGet Device Connector IPC State for Downstreamにリバースプロキシーされます。

Authorizations:
basicAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Device Connector

List Device Connectors

Device Connectorのリストを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Create Device Connector

Device Connectorを作成します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
id
required
string (device_connector_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$

デバイスコネクターを識別するための文字列。

service_id
required
string (device_connector_service_id) [ 1 .. 100 ] characters ^[-_ .()a-zA-Z0-9]{1,100}$

デバイスコネクターサービスを識別するための文字列。

enabled
boolean

デバイスコネクターが使用する全の受信用IPC設定・送信用IPC設定の有効(true)/無効(false)。一部でも無効なIPC設定がある場合も無効(false)です。

upstream_ipc_ids
required
Array of strings (device_connector_ipc_id) [ items [ 1 .. 100 ] characters ]

デバイスコネクターサービスに割り当てる送信用IPC設定のID。 downstream_ipc_ids と合わせて一つ以上のIPCを設定する必要があります。

downstream_ipc_ids
required
Array of strings (device_connector_id) [ items [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$ ]

デバイスコネクターサービスに割り当てる受信用IPC設定のID。 upstream_ipc_ids と合わせて一つ以上のIPCを設定する必要があります。

service_substitutions
required
Array of strings

デバイスコネクターサービスファイルの置換変数を置き換える値のリスト。KEY=valueのフォーマットで記載する必要があります。 使用可能な変数はGET /device_connector_servicessubstitution_variablesで定義されており、その条件を満たしている必要があります。

以下のキーに対しては特別にデフォルト値が割り当てられます。

キー デフォルト値
DC_UPSTREAM_FIFO_%d (%dには任意の数値が入ります) upstream_ipc_ids で指定されたDevice Connector IPC Settings for Upstreamに定義されたipc.path(存在しない場合は空文字)。配列インデックスが0の場合はキーがDC_UPSTREAM_FIFO_0になります。
DC_DOWNSTREAM_FIFO_%d (%dには任意の数値が入ります) downstream_ipc_ids で指定されたDevice Connector IPC Settings for Downstreamに定義されたipc.path(存在しない場合は空文字)。配列インデックスが0の場合はキーがDC_DOWNSTREAM_FIFO_0になります。
DC_TAG id で指定された文字列

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "id": "can1",
  • "service_id": "H.264 NAL Unit for EDGEPLANT USB Camera",
  • "enabled": true,
  • "upstream_ipc_ids": [
    ],
  • "downstream_ipc_ids": [
    ],
  • "service_substitutions": [
    ]
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "can1",
  • "service_id": "H.264 NAL Unit for EDGEPLANT USB Camera",
  • "enabled": true,
  • "upstream_ipc_ids": [
    ],
  • "downstream_ipc_ids": [
    ],
  • "service_substitutions": [
    ]
}

Get Device Connector

Device Connectorを取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (device_connector_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: can1

デバイスコネクターを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "can1",
  • "service_id": "H.264 NAL Unit for EDGEPLANT USB Camera",
  • "enabled": true,
  • "upstream_ipc_ids": [
    ],
  • "downstream_ipc_ids": [
    ],
  • "service_substitutions": [
    ]
}

Update Device Connector

Device Connectorを更新します。

Authorizations:
basicAuth
path Parameters
id
required
string (device_connector_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: can1

デバイスコネクターを識別するための文字列。

Request Body schema: application/json; charset=UTF-8
enabled
boolean

デバイスコネクターが使用する全の受信用IPC設定・送信用IPC設定の有効(true)/無効(false)。一部でも無効なIPC設定がある場合も無効(false)です。

upstream_ipc_ids
Array of strings (device_connector_ipc_id) [ items [ 1 .. 100 ] characters ]

デバイスコネクターサービスに割り当てる送信用IPC設定のID。 downstream_ipc_ids と合わせて一つ以上のIPCを設定する必要があります。

downstream_ipc_ids
Array of strings (device_connector_id) [ items [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$ ]

デバイスコネクターサービスに割り当てる受信用IPC設定のID。 upstream_ipc_ids と合わせて一つ以上のIPCを設定する必要があります。

service_substitutions
Array of strings

デバイスコネクターサービスファイルの置換変数を置き換える値のリスト。KEY=valueのフォーマットで記載する必要があります。 使用可能な変数はGET /device_connector_servicessubstitution_variablesで定義されており、その条件を満たしている必要があります。

以下のキーに対しては特別にデフォルト値が割り当てられます。

キー デフォルト値
DC_UPSTREAM_FIFO_%d (%dには任意の数値が入ります) upstream_ipc_ids で指定されたDevice Connector IPC Settings for Upstreamに定義されたipc.path(存在しない場合は空文字)。配列インデックスが0の場合はキーがDC_UPSTREAM_FIFO_0になります。
DC_DOWNSTREAM_FIFO_%d (%dには任意の数値が入ります) downstream_ipc_ids で指定されたDevice Connector IPC Settings for Downstreamに定義されたipc.path(存在しない場合は空文字)。配列インデックスが0の場合はキーがDC_DOWNSTREAM_FIFO_0になります。
DC_TAG id で指定された文字列

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "enabled": true,
  • "upstream_ipc_ids": [
    ],
  • "downstream_ipc_ids": [
    ],
  • "service_substitutions": [
    ]
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "can1",
  • "service_id": "H.264 NAL Unit for EDGEPLANT USB Camera",
  • "enabled": true,
  • "upstream_ipc_ids": [
    ],
  • "downstream_ipc_ids": [
    ],
  • "service_substitutions": [
    ]
}

Delete Device Connector

Device Connectorを削除します。

Authorizations:
basicAuth
path Parameters
id
required
string (device_connector_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: can1

デバイスコネクターを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Commit Device Connectors as docker-compose.override.yml

デバイスコネクターサービスファイルを元に計測用Docker Compose上書きファイル(docker-compose.override.yml)を作成します。
以下のいずれかの場合にはエラーになります。

作成されたdocker-compose.override.ymlはGET /docker/composes/measurement/files/docker-compose.override.yml/contentsにより確認できます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Device Connector Service

List Device Connector Services

Device Connectorサービスをリストを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
Example
[
  • {
    }
]

Get Device Connector Service

Device Connectorサービスを取得します。

Authorizations:
basicAuth
path Parameters
service_id
required
string (device_connector_service_id) [ 1 .. 100 ] characters ^[-_ .()a-zA-Z0-9]{1,100}$
Example: H.264 NAL Unit for EDGEPLANT USB Camera

デバイスコネクターサービスを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
Example
{
  • "service_id": "CAN-USB Interface (Upstream)",
  • "substitution_variables": [
    ],
  • "protected": true,
  • "absolute_path": "/etc/core/docker-compose/measurement/services/CAN-USB Interface (Upstream).yml"
}

Delete Device Connector Service

Device Connectorサービスを削除します。

Authorizations:
basicAuth
path Parameters
service_id
required
string (device_connector_service_id) [ 1 .. 100 ] characters ^[-_ .()a-zA-Z0-9]{1,100}$
Example: H.264 NAL Unit for EDGEPLANT USB Camera

デバイスコネクターサービスを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Device Connector Service File Contents

Device Connectorサービスファイルの内容を取得します。

Authorizations:
basicAuth
path Parameters
service_id
required
string (device_connector_service_id) [ 1 .. 100 ] characters ^[-_ .()a-zA-Z0-9]{1,100}$
Example: H.264 NAL Unit for EDGEPLANT USB Camera

デバイスコネクターサービスを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Replace Device Connector Service File Contents

Device Connectorサービスファイルの内容を設定します。

Authorizations:
basicAuth
path Parameters
service_id
required
string (device_connector_service_id) [ 1 .. 100 ] characters ^[-_ .()a-zA-Z0-9]{1,100}$
Example: H.264 NAL Unit for EDGEPLANT USB Camera

デバイスコネクターサービスを識別するための文字列。

Request Body schema: multipart/form-data
string <binary> (device_connector_service_file_contents)

デバイスコネクターサービスファイルはPOST /device_connectors/-/commit実行時に一つのdocker-compose.override.ymlとして作成されます。

例(idをHelloで作成したデバイスコネクターサービスファイル):

image: python:3
depends_on:
  intdash-edge-agent2:
    condition: service_healthy
volumes:
  - /var/run/core/intdash:/var/run/intdash
entrypoint: ["python3", "-c", "import struct, sys; f = open('${DC_UPSTREAM_FIFO_0}', 'wb'); f.write(struct.pack('<LLHHL6s2s5s', 1234, 123456789, 6, 2, 5, b'string', b'ab', b'Hello')); f.close();"]
environment:
  - ENV_VAL=${ENV_VAL}
substitution_variables:
  - key: DC_UPSTREAM_FIFO_0
  - key: ENV_VAL
    default: '/dev/ttyTHS0'
    path_glob: ['/dev/ttyTHS*']
    display_strings_i18n:
      - locale: jpn
        name: 設定値

例(作成されたdocker-compose.yml):

version: "3"
services:
    Hello:
        depends_on:
            intdash-edge-agent2:
                condition: service_healthy
        entrypoint:
            - python3
            - -c
            - import struct, sys; f = open('/var/run/intdash/hello.fifo', 'wb'); f.write(struct.pack('<LLHHL6s2s5s', 1234, 123456789, 6, 2, 5, b'string', b'ab', b'Hello')); f.close();
        environment:
            - ENV_VAL=val
        image: python:3
        volumes:
            - /var/run/core/intdash:/var/run/intdash

デバイスコネクターサービスファイルの記載方法

  • depends_on - intdash Edge Agent 2 の起動準備が整ってから起動するために以下の設定を必ず追加してください。
    depends_on:
        intdash-edge-agent2:
            condition: service_healthy
    
  • volumes - intdash Edge Agent 2 とのFIFO通信のために以下の設定を必ず追加してください。
    volumes:
        - /var/run/core/intdash:/var/run/intdash
    
  • substitution_variables - GET /device_connector_services/{service_id}substitution_variablesを生成するために使用する設定です。Terminal System Coreでのみ使用されdocker-compose.override.ymlには反映されません。
    substitution_variables:
        - key: DC_APT_CANTRX_SRC_CONF_TIMESTAMP_MODE
          default: device
          options:
            - device
            - host
          display_strings_i18n:
            - locale: jpn
              name: タイムスタンプモード
              description: 受信したデータに対して、タイムスタンプをどのように付与するか
    
    • key [string] (required) - 置換変数のキー名
    • default [string] - 置換変数のデフォルト値。
    • options [array of strings] - 置換変数に設定可能な値の配列。
    • validation [string] - 置換変数の値が有効な値であるかを判定する正規表現。
      substitution_variables:
          - key: DC_V4L2_SRC_CONF_FPS
            validation: '^[1-9][0-9]$|^100$'
      
    • path_glob [array of strings] - 置換変数に設定可能な値の絶対パスをglob表現した文字列。GET /device_connector_services/{service_id}substitution_variables.optionsに反映されます。optionsが指定されている場合はこの設定は使用されません。
      substitution_variables:
          - key: DC_APT_CANTRX_SRC_CONF_PATH
            default: '/dev/aptUSB0'
            path_glob:
              - '/dev/aptUSB*'
      
    • display_strings_i18n [array of objects] - 表示で使用する文字列セットの各言語の表現です。
      • locale [string] - ISO 639-3 言語コード
      • name [string] - 表示で使用する変数の名前
      • description [string] - 表示で使用する変数の説明
      • unit [string] - 表示で使用する変数の単位

作成されるdocker-compose.override.ymlについて

  • services - servicesのマップに使用されるキー名(上記例ではhello)はDevice Connectoridで指定した文字列が使用されます。
  • ${KEY} - デバイスコネクターサービスファイル内で置換変数を使用するには${KEY}のフォーマットを使用してください。この変数はDocker Composeで展開されるものではなくTerminal System APIで展開されるものです。Docker Composeへ設定するための環境変数には $KEY を使用してください。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Invalid request body",
  • "status": 400,
  • "detail": "'{value}' does not follow the rule for '{key}' ({rule}).",
  • "instance": "/pkg/error.go#123"
}

System

Get Terminal System Information

Terminal Systemの情報を取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "os_name": "Terminal System (Yocto Project Distro)",
  • "os_version": "v2.0.0",
  • "components": [
    ]
}

Get Terminal System Identification

Terminal Systemの識別情報を取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "computer_name": "terminal-system",
  • "serial_number": "TSBH000000000"
}

Update Terminal System Identification

Terminal Systemの識別情報を更新します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
computer_name
string [ 1 .. 63 ] characters ^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}$

コンピューター名。ホスト名として使用されます。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "computer_name": "terminal-system"
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "computer_name": "terminal-system",
  • "serial_number": "TSBH000000000"
}

Get Metrics

メトリクスを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "data_partition": {
    },
  • "top": [
    ],
  • "ip": {
    },
  • "mmcli": [
    ],
  • "gps": {
    }
}

Upgrade Terminal System with Mender Artifact File

Authorizations:
basicAuth
Request Body schema: multipart/form-data
string <binary>

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "succeeded": true,
  • "reboot_required": true
}

Reload Terminal System

Terminal System の全ての設定を再読み込みします。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Network

Get Network Route for IP

ネットワークルートを取得します。

Authorizations:
basicAuth
path Parameters
ip
required
string (network_ip) ipv4
Example: 13.115.94.197

ネットワークルートを取得する対象のIPv4アドレス。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "ip": "13.115.94.197",
  • "nic_name": "wwan0"
}

Network Device

List Network Devices

Network Deviceに関する情報のリストを取得します。

Authorizations:
basicAuth
query Parameters
filters
string <json>
Example: filters={"enabled": [true]}

リストをフィルターします。リストされるオブジェクトにある第一階層のみを対象にフィルターできます。
filtersはJSONオブジェクトで記載してください。否定フィルターを設定したい場合は!に続けてJSONオブジェクトを記載してください。

例(enabledtrue、のオブジェクトだけを取得):

filters={"enabled": [true]}

例(enabledtrueかつ、idが1または2、のオブジェクトだけを取得):

filters={"enabled": [true], "id": [1,2]}

例(enabledtrueかつ、idが1または2、でないオブジェクトだけを取得):

filters=!{"enabled": [true], "id": [1,2]}

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Network Connection

List Network Connections

Network Connectionのリストを取得します。

Terminal System APIは起動時にconnection_typeethernetかつenabledtrueのコネクションが無い場合は、自動的決定する1つのコネクションを有効化または作成します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Create Network Connection

Network Connectionを作成します。 変更したNetwork Connectionを反映するにはTerminal Systemの再起動が必要です。

Terminal System APIは起動時にconnection_typeethernetかつenabledtrueのコネクションが無い場合は、自動的決定する1つのコネクションを有効化または作成します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
device_name
required
string (network_device_name)

Network Manager が管理するデバイス名。

display_name
required
string non-empty

ネットワークコネクションの表示名。分かりやすい任意の名前を設定できます。

enabled
boolean
Default: true

このネットワークコネクションの有効(true)/無効(false)。 falseが指定されている場合でも、Terminal System APIの起動時に以下の条件を満たすと自動的にtrueに変更されます。

  • connection_typeethernetかつenabledtrueのコネクションが無い
  • 自動的に有効化するコネクションとしてTerminal System APIが決定した
priority
integer [ -2147483648 .. 2147483647 ]
Default: 0

ネットワークコネクションの優先度。 1つのネットワークデバイスに対して、2つ以上のネットワークコネクションを有効にした場合、priorityの高いネットワークコネクションが使用されます。 2つ以上のネットワークデバイスのうちどれを使用してデータを送信するかの設定はmetricを参照してください。

metric
integer [ -1 .. 9223372036854776000 ]
Default: -1

ルートのデフォルトメトリック。-1の場合は自動的にメトリックが設定されます。 任意の値に指定する場合は、DNSサーバーの優先度が適した値になっているか確認してください。適した値でない場合、名前解決に時間がかかったり、名前解決ができない可能性があります。

object
Default: {"manual":false,"address":"","subnet_mask":"","default_gateway":"","dns_servers":[],"dns_priority":0}
connection_type
required
string
Enum: "ethernet" "wireless" "wireless_access_point" "gsm"
  • ethernet - Ethernet LAN
  • wireless - 無線LAN(クライアントモード)
  • wireless_access_point - 無線LAN(アクセスポイントモード)
  • gsm - モバイル回線
object (Ethernet Settings)
Default: {"mtu":0}

Ethernetの設定。connection_typeethernetのとき設定可能です。

object (GSM Settings)
Default: {"mtu":0,"apn":"xxxxx","username":"","password":"","band_preset":""}

GSMの設定。connection_typegsmのとき設定可能です。

object (Wireless Settings)
Default: {"mtu":0,"ssid":"xxxxx","psk":"xxxxxxxx"}

ワイヤレスLANの設定。connection_typewlanのとき設定可能です。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "device_name": "cdc-wdm0",
  • "display_name": "Wireless connection 1",
  • "enabled": true,
  • "priority": 0,
  • "metric": -1,
  • "ipv4_settings": {
    },
  • "connection_type": "gsm",
  • "ethernet_settings": {
    },
  • "gsm_settings": {
    },
  • "wireless_settings": {
    }
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "uuid": "77397428-dfa1-3427-a283-92face322b04",
  • "device_name": "cdc-wdm0",
  • "display_name": "Wireless connection 1",
  • "enabled": true,
  • "priority": 0,
  • "metric": -1,
  • "protected": false,
  • "ipv4_settings": {
    },
  • "connection_type": "gsm",
  • "ethernet_settings": {
    },
  • "gsm_settings": {
    },
  • "wireless_settings": {
    }
}

Get Network Connection

Network Connectionを取得します。

Terminal System APIは起動時にconnection_typeethernetかつenabledtrueのコネクションが無い場合は、自動的決定する1つのコネクションを有効化または作成します。

Authorizations:
basicAuth
path Parameters
uuid
required
uuid (network_connection_uuid)
Example: 77397428-dfa1-3427-a283-92face322b04

ネットワークコネクションを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "uuid": "77397428-dfa1-3427-a283-92face322b04",
  • "device_name": "cdc-wdm0",
  • "display_name": "Wireless connection 1",
  • "enabled": true,
  • "priority": 0,
  • "metric": -1,
  • "protected": false,
  • "ipv4_settings": {
    },
  • "connection_type": "gsm",
  • "ethernet_settings": {
    },
  • "gsm_settings": {
    },
  • "wireless_settings": {
    }
}

Replace Network Connection

Network Connectionを設定します。 変更したNetwork Connectionを反映するにはTerminal Systemの再起動が必要です。

Terminal System APIは起動時にconnection_typeethernetかつenabledtrueのコネクションが無い場合は、自動的決定する1つのコネクションを有効化または作成します。

Authorizations:
basicAuth
path Parameters
uuid
required
uuid (network_connection_uuid)
Example: 77397428-dfa1-3427-a283-92face322b04

ネットワークコネクションを識別するための文字列。

Request Body schema: application/json; charset=UTF-8
display_name
required
string non-empty

ネットワークコネクションの表示名。分かりやすい任意の名前を設定できます。

enabled
boolean
Default: true

このネットワークコネクションの有効(true)/無効(false)。 falseが指定されている場合でも、Terminal System APIの起動時に以下の条件を満たすと自動的にtrueに変更されます。

  • connection_typeethernetかつenabledtrueのコネクションが無い
  • 自動的に有効化するコネクションとしてTerminal System APIが決定した
priority
integer [ -2147483648 .. 2147483647 ]
Default: 0

ネットワークコネクションの優先度。 1つのネットワークデバイスに対して、2つ以上のネットワークコネクションを有効にした場合、priorityの高いネットワークコネクションが使用されます。 2つ以上のネットワークデバイスのうちどれを使用してデータを送信するかの設定はmetricを参照してください。

metric
integer [ -1 .. 9223372036854776000 ]
Default: -1

ルートのデフォルトメトリック。-1の場合は自動的にメトリックが設定されます。 任意の値に指定する場合は、DNSサーバーの優先度が適した値になっているか確認してください。適した値でない場合、名前解決に時間がかかったり、名前解決ができない可能性があります。

object
Default: {"manual":false,"address":"","subnet_mask":"","default_gateway":"","dns_servers":[],"dns_priority":0}
object (Ethernet Settings)
Default: {"mtu":0}

Ethernetの設定。connection_typeethernetのとき設定可能です。

object (GSM Settings)
Default: {"mtu":0,"apn":"xxxxx","username":"","password":"","band_preset":""}

GSMの設定。connection_typegsmのとき設定可能です。

object (Wireless Settings)
Default: {"mtu":0,"ssid":"xxxxx","psk":"xxxxxxxx"}

ワイヤレスLANの設定。connection_typewlanのとき設定可能です。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "display_name": "Wireless connection 1",
  • "enabled": true,
  • "priority": 0,
  • "metric": -1,
  • "ipv4_settings": {
    },
  • "ethernet_settings": {
    },
  • "gsm_settings": {
    },
  • "wireless_settings": {
    }
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "uuid": "77397428-dfa1-3427-a283-92face322b04",
  • "device_name": "cdc-wdm0",
  • "display_name": "Wireless connection 1",
  • "enabled": true,
  • "priority": 0,
  • "metric": -1,
  • "protected": false,
  • "ipv4_settings": {
    },
  • "connection_type": "gsm",
  • "ethernet_settings": {
    },
  • "gsm_settings": {
    },
  • "wireless_settings": {
    }
}

Delete Network Connection

Network Connectionを削除します。

Terminal System APIは起動時にconnection_typeethernetかつenabledtrueのコネクションが無い場合は、自動的決定する1つのコネクションを有効化または作成します。

Authorizations:
basicAuth
path Parameters
uuid
required
uuid (network_connection_uuid)
Example: 77397428-dfa1-3427-a283-92face322b04

ネットワークコネクションを識別するための文字列。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

GSM Frequency Band Preset

Get GSM Frequency Band Preset

GSM用周波数バンド設定のリストを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

IP Allowlist

Get IP Allowlist

IP許可リストを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "allowlist": [
    ]
}

Replace IP Allowlist

IP許可リストを設定します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
allowlist
required
Array of strings

APIにアクセスを許可するIPをCIDR表記で指定したリスト。 IPv4で指定している場合にはIPv6のアドレスは許可されません。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "allowlist": [
    ]
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "allowlist": [
    ]
}

API User

Update API User user

APIユーザーを更新します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
password
string <password> (basic_auth_pass) [ 1 .. 256 ] characters ^[a-zA-Z0-9@$!%*?&]{1,256}$

Basic認証用のパスワード。ユーザー名とともに使用します。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "password": "p@ssword"
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "username": "user",
  • "password": "p@ssword"
}

Update API User admin

APIユーザーを更新します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
password
string <password> (basic_auth_pass) [ 1 .. 256 ] characters ^[a-zA-Z0-9@$!%*?&]{1,256}$

Basic認証用のパスワード。ユーザー名とともに使用します。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "password": "p@ssword"
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "username": "user",
  • "password": "p@ssword"
}

Login User

Regenerate maint SSH Private Key

maintユーザーののSSH秘密鍵を再生成します。

再生成を行うとSSH公開鍵も変わります。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get maint SSH Public Key

maintユーザーのSSH公開鍵を取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get maint SSH Authorized Keys

maintユーザーのauthorized_keysファイルを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Replace maint SSH Authorized Keys

maintユーザーののauthorized_keysファイルを設定します。

Authorizations:
basicAuth
Request Body schema: multipart/form-data
string <binary> (authorized_keys)

このユーザーがログインに使用する、ECDSA、RSA、またはED25519による公開鍵。 マニュアルページsshd(8)に記載されている、各行に1つの鍵を格納したフォーマットです。

Responses

Response samples

Content type
application/json; charset=UTF-8
Example
{
  • "title": "Invalid request body",
  • "status": 400,
  • "detail": "request {request}: {detail}.",
  • "instance": "/pkg/error.go#123"
}

Get admin SSH Authorized Keys

adminユーザーのauthorized_keysファイルを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Replace admin SSH Authorized Keys

adminユーザーののauthorized_keysファイルを設定します。

Authorizations:
basicAuth
Request Body schema: multipart/form-data
string <binary> (authorized_keys)

このユーザーがログインに使用する、ECDSA、RSA、またはED25519による公開鍵。 マニュアルページsshd(8)に記載されている、各行に1つの鍵を格納したフォーマットです。

Responses

Response samples

Content type
application/json; charset=UTF-8
Example
{
  • "title": "Invalid request body",
  • "status": 400,
  • "detail": "request {request}: {detail}.",
  • "instance": "/pkg/error.go#123"
}

Remote Support

Create Remote Support

遠隔サポートを作成します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
fqdn
required
string non-empty

中継サーバーのFQDN

forward_port_to
required
number [ 1 .. 65535 ]

中継サーバーの待ち受けポート番号

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "fqdn": "maint.example.net",
  • "forward_port_to": 10022
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "login_user": "maint",
  • "fqdn": "maint.example.net",
  • "forward_port_to": 10022
}

Get Remote Support

遠隔サポートを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "login_user": "maint",
  • "fqdn": "maint.example.net",
  • "forward_port_to": 10022
}

Delete Remote Support

遠隔サポートを削除します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Remote Support State

遠隔サポートの状態を取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "running": true
}

Event

List Events (experimental)

イベントのリストを取得します。

Authorizations:
basicAuth
query Parameters
filters
string <json>
Example: filters={"enabled": [true]}

リストをフィルターします。リストされるオブジェクトにある第一階層のみを対象にフィルターできます。
filtersはJSONオブジェクトで記載してください。否定フィルターを設定したい場合は!に続けてJSONオブジェクトを記載してください。

例(enabledtrue、のオブジェクトだけを取得):

filters={"enabled": [true]}

例(enabledtrueかつ、idが1または2、のオブジェクトだけを取得):

filters={"enabled": [true], "id": [1,2]}

例(enabledtrueかつ、idが1または2、でないオブジェクトだけを取得):

filters=!{"enabled": [true], "id": [1,2]}

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Monitor

Get Monitors

モニター設定のリストを取得します。

Authorizations:
basicAuth
query Parameters
filters
string <json>
Example: filters={"enabled": [true]}

リストをフィルターします。リストされるオブジェクトにある第一階層のみを対象にフィルターできます。
filtersはJSONオブジェクトで記載してください。否定フィルターを設定したい場合は!に続けてJSONオブジェクトを記載してください。

例(enabledtrue、のオブジェクトだけを取得):

filters={"enabled": [true]}

例(enabledtrueかつ、idが1または2、のオブジェクトだけを取得):

filters={"enabled": [true], "id": [1,2]}

例(enabledtrueかつ、idが1または2、でないオブジェクトだけを取得):

filters=!{"enabled": [true], "id": [1,2]}

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Create Monitor

モニター設定を作成します。POST /monitors/-/applyするまでモニター設定は適応されません。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
id
required
string (monitor_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$

モニター設定を識別するための文字列。文字列はsubsystemの文字列に_を付加した文字列で始まる必要があります。

subsystem
required
string [ 1 .. 32 ] characters ^[a-z]{1,32}$

モニターのサブシステム

enabled
boolean
Default: true

モニターの有効(true)/無効(false)

args
Array of strings

サブシステム毎に必要とする引数のリスト。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "id": "log_usb-disconnected",
  • "subsystem": "log",
  • "enabled": true,
  • "args": [
    ]
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "log_usb-disconnected",
  • "subsystem": "log",
  • "enabled": true,
  • "variables": [
    ]
}

Get Monitor

モニター設定を取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (monitor_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: log_usb-disconnected

モニター設定を識別するための文字列。文字列はsubsystemの文字列に_を付加した文字列で始まる必要があります。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "log_usb-disconnected",
  • "subsystem": "log",
  • "enabled": true,
  • "variables": [
    ]
}

Update Monitor

モニター設定を更新します。POST /monitors/-/applyするまでモニター設定は適応されません。

Authorizations:
basicAuth
path Parameters
id
required
string
Request Body schema: application/json; charset=UTF-8
enabled
boolean
Default: true

モニターの有効(true)/無効(false)

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "enabled": true
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "log_usb-disconnected",
  • "subsystem": "log",
  • "enabled": true,
  • "variables": [
    ]
}

Delete Monitor

モニター設定を削除します。POST /monitors/-/applyするまでモニター設定は適応されません。

Authorizations:
basicAuth
path Parameters
id
required
string (monitor_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: log_usb-disconnected

モニター設定を識別するための文字列。文字列はsubsystemの文字列に_を付加した文字列で始まる必要があります。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Apply Monitors

全てのモニター設定を適用します。

Authorizations:
basicAuth
path Parameters
id
required
string (monitor_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: log_usb-disconnected

モニター設定を識別するための文字列。文字列はsubsystemの文字列に_を付加した文字列で始まる必要があります。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Compose

List Docker Conposes

Docker Composeに関する設定のリストを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Create Docker Compose

Docker Composeに関する設定を作成します。

Authorizations:
basicAuth
Request Body schema: application/json; charset=UTF-8
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

boot_after
string
Default: "system"
Enum: "" "system" "measurement"

Docker Composeプロジェクトを起動するタイミング。boot_afterで指定されたDocker Composeプロジェクトの起動が完了すると自動的に起動します。 boot_afterの設定にかかわらず、Start Docker Composeで起動することも可能です。

  • "" - 自動的に起動はしません。
  • "system" - あらかじめインストールされているsystemプロジェクトの起動が完了すると自動的に起動します。systemプロジェクトは電源On後に起動します。
  • "measurement" - あらかじめインストールされているmeasurementプロジェクトの起動が完了すると自動的に起動します。
prune_unused_tag
bool
Default: true

Docker Composeが使用するDockerイメージのうち、使用しないタグを自動的に削除します。自動的に削除を行うタイミングは以下になります。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "id": "custom",
  • "boot_after": "",
  • "prune_unused_tag": true
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "custom",
  • "boot_after": "",
  • "prune_unused_tag": true,
  • "protected": false,
  • "docker_compose_yml": "/etc/core/docker-compose/measurement/docker-compose.yml",
  • "working_directory": "/var/lib/core/docker-compose/measurement"
}

Get Docker Compose

Docker Composeに関する設定を取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "custom",
  • "boot_after": "",
  • "prune_unused_tag": true,
  • "protected": false,
  • "docker_compose_yml": "/etc/core/docker-compose/measurement/docker-compose.yml",
  • "working_directory": "/var/lib/core/docker-compose/measurement"
}

Update Docker Compose

Docker Composeに関する設定を更新します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Request Body schema: application/json; charset=UTF-8
boot_after
string
Default: "system"
Enum: "" "system" "measurement"

Docker Composeプロジェクトを起動するタイミング。boot_afterで指定されたDocker Composeプロジェクトの起動が完了すると自動的に起動します。 boot_afterの設定にかかわらず、Start Docker Composeで起動することも可能です。

  • "" - 自動的に起動はしません。
  • "system" - あらかじめインストールされているsystemプロジェクトの起動が完了すると自動的に起動します。systemプロジェクトは電源On後に起動します。
  • "measurement" - あらかじめインストールされているmeasurementプロジェクトの起動が完了すると自動的に起動します。
prune_unused_tag
bool
Default: true

Docker Composeが使用するDockerイメージのうち、使用しないタグを自動的に削除します。自動的に削除を行うタイミングは以下になります。

Responses

Request samples

Content type
application/json; charset=UTF-8
{
  • "boot_after": "",
  • "prune_unused_tag": true
}

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "custom",
  • "boot_after": "",
  • "prune_unused_tag": true,
  • "protected": false,
  • "docker_compose_yml": "/etc/core/docker-compose/measurement/docker-compose.yml",
  • "working_directory": "/var/lib/core/docker-compose/measurement"
}

Delete Docker Compose

Docker Composeに関する設定を削除します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

List Docker Compose Files

Docker Composeディレクトリに保存されているファイルのリストを取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Get Docker Compose File

Docker Composeディレクトリに保存されているファイルを取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

path
required
string (docker_compose_file_path)
Example: docker-compose.yml

Docker Compose 実行時の作業ディレクトリからの相対パス。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "custom",
  • "path": "docker-compose.yml",
  • "readonly": false,
  • "absolute_path": "/etc/core/docker-compose/{id}"
}

Delete Docker Compose File

Docker Composeディレクトリに保存されているファイルを削除します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

path
required
string (docker_compose_file_path)
Example: docker-compose.yml

Docker Compose 実行時の作業ディレクトリからの相対パス。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Get Docker Compose File Contents

Docker Composeディレクトリに保存されているファイルの内容を取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

path
required
string (docker_compose_file_path)
Example: docker-compose.yml

Docker Compose 実行時の作業ディレクトリからの相対パス。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Replace Docker Compose File Contents

Docker Composeディレクトリに保存されているファイルの内容を設定します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

path
required
string (docker_compose_file_path)
Example: docker-compose.yml

Docker Compose 実行時の作業ディレクトリからの相対パス。

Request Body schema: multipart/form-data
string <binary> (docker_compose_file_contents)

docker-composeディレクトリ内のファイル。 ファイル名property.jsonはAPiにより自動的に内容が変更されます。APIが読み取りできない内容が記載されている場合はpanicになります。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Invalid request body",
  • "status": 400,
  • "detail": "'{value}' does not follow the rule for '{key}' ({rule}).",
  • "instance": "/pkg/error.go#123"
}

Start Docker Compose

Docker Composeを起動します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Stop Docker Compose

Docker Composeを終了します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Pull Docker Compose

Docker Composeに関連付けられたイメージを取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Build Docker Compose

Docker Composeをビルドします。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_compose_id) [ 1 .. 100 ] characters ^[-_a-zA-Z0-9]{1,100}$
Example: custom

Docker Composeに関する設定を識別するための文字列。systemは予約されているため使用できません。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Image

List Docker Images

Docker Imageのリストを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
[
  • {
    }
]

Get Docker Image

Dockerイメージを取得します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_image_id) = 12 characters ^[a-z0-9]{12}$
Example: b535b3285e1d

DockerイメージのIMAGE ID。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "id": "b535b3285e1d",
  • "repository": "hello-world",
  • "tag": "latest",
  • "size": "155MB"
}

Delete Docker Compose

Dockerイメージを削除します。

Authorizations:
basicAuth
path Parameters
id
required
string (docker_image_id) = 12 characters ^[a-z0-9]{12}$
Example: b535b3285e1d

DockerイメージのIMAGE ID。

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Container

List Docker Containers

Docker Engine APIのList containersにリバースプロキシーされます。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "title": "Request is rejected",
  • "status": 403,
  • "detail": "request is rejected due to '{reason}'",
  • "instance": "/pkg/error.go#123"
}

Version

Get Version

Terminal System APIのバージョンを取得します。

Authorizations:
basicAuth

Responses

Response samples

Content type
application/json; charset=UTF-8
{
  • "version": "1.0.0"
}