FutureNet
AS-250/AS-M250/AS-P250 シリーズ
REST API リファレンス
Ver.2.6.4 対応版

センチュリー・システムズ株式会社

目次

1 はじめに ......................................................................................................................................................... 32 使用例 ............................................................................................................................................................. 42.1 装置設定 ...................................................................................................................................................... 52.2 状態取得 ...................................................................................................................................................... 62.3 出力変更 ...................................................................................................................................................... 7
2.4 ファームウェア更新 .................................................................................................................................. 83 共通 ................................................................................................................................................................. 9
3.1 リクエストヘッダー ................................................................................................................................ 104 出力接点状態取得 ....................................................................................................................................... 11
4.1 リクエスト ................................................................................................................................................ 12
4.2 レスポンス ................................................................................................................................................ 135 出力接点状態変更 ....................................................................................................................................... 15
5.1 リクエスト ................................................................................................................................................ 16
5.2 レスポンス ................................................................................................................................................ 17
6 ファームウェアを更新 ............................................................................................................................... 18
6.1 リクエスト ................................................................................................................................................ 19
6.2 レスポンス ................................................................................................................................................ 20

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

1 はじめに概要
本書は FutureNet AS-250/AS-M250/AS-P250 シリーズにおいて、出力接点の状態の取得と変更を行う APIリファレンスです。
対象機器コマンドは AS-250 と、AS-M250/AS-P250 シリーズ全機種で利用できます。

3

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

2 使用例
概要
python で、本 API を用いる例である。

4

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

2.1 装置設定
設定装置が以下のように設定されています。
設定項目

値

LAN 側の IP アドレス

192.168．254.254

ログインパスワード

systemHTTPS

無効

5

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

2.2 状態取得概要
該当 API を用いて、出力接点 1 の状態を取得する例である。
ソース
import requests
import jwt
from datetime import datetime
import randomuri = "http://192.168.254.254/service/dout/1"
base = datetime.fromisoformat("2000-01-01 00:00:00.000")delta = datetime.now() - baseseconds = int(delta.total_seconds()) + int(random.random() * 1000)

payload = { "logas": "admin", "ita": seconds }secret = "system"
token = jwt.encode(payload, secret, algorithm="HS256")
token_str = token.decode("utf-8")
header = {'Authorization': 'Bearer {}'.format(token_str)}

resp = requests.get(uri, headers = header)
print("Result: {}".format(resp.status_code));print("Content: {}".format(resp.content.decode("utf-8")))
出力
Result: 200
Content: {"num":1,"status":"off"}6

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

2.3 出力変更概要
該当 API を用いて、出力接点 1 を Off から On に変更する例である。
ソース
import requests
import jwt
from datetime import datetime
import randomuri = "http://192.168.254.254/service/dout/1/on"
base = datetime.fromisoformat("2000-01-01 00:00:00.000")delta = datetime.now() - baseseconds = int(delta.total_seconds()) + int(random.random() * 1000)

payload = { "logas": "admin", "ita": seconds }secret = "system"
token = jwt.encode(payload, secret, algorithm="HS256")
token_str = token.decode("utf-8")
header = {'Authorization': 'Bearer {}'.format(token_str)}

resp = requests.put(uri, headers = header)
print("Result: {}".format(resp.status_code));
出力
Result: 2007

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

2.4 ファームウェア更新
概要
該当 API を用いて、ファームウェアを更新する例である。
ソース
import requests
import jwt
from datetime import datetime
import random
from io import BytesIOuri = "http://192.168.254.254/service/fwup"
base = datetime.fromisoformat("2000-01-01 00:00:00.000")delta = datetime.now() - baseseconds = int(delta.total_seconds()) + int(random.random() * 1000)

payload = { "logas": "admin", "ita": seconds }secret = "system"
token = jwt.encode(payload, secret, algorithm="HS256")
token_str = token.decode("utf-8")
header = {'Authorization': 'Bearer {}'.format(token_str)}fwImg = open("as250.img", "rb").read()files = { "file1" : ("as250.img", BytesIO(fwImg)) }resp = requests.post(uri, files = files, headers = header)
print("Result: {}".format(resp.status_code));
出力
Result: 200

8

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

3 共通

9

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

3.1 リクエストヘッダー
ヘッダーリスト
項目
認証情報

ヘッダー
Authorization: Bearer (JWT)JWT
JWT 詳細について、RFC 7519 にご参照。
要素
ヘッダー値
{
"alg" : "HS256","typ" : "JWT"
}

ペイロード

{
"logas": "admin""ita": (2000/01/01 00:00:00 から経過秒数＋α)}

シークレット装置のログインパスワード10

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

4 出力接点状態取得11

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

4.1 リクエスト
Method
GET
URI
URI

説明

/service/dout/

すべて接点の状態の取得/service/dout/(N)指定の接点の状態の取得
N: 0, 1, 100-131

12FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

4.2 レスポンス
200 OK
出力接点の状態取得が成功したことを示している。
URI/service/dout/

コンテント{"douts": [{"num": 0,"status": (STATUS)},{"num": 1,"status": (STATUS)},{"num": 100,"status": (VSTATUS)},......
{"num":131,"status": (VSTATUS)}]
注) STATUS = "on" | "off"注) VSTATUS = "on" | "off" | "fail"/service/dout/{0|1}/{"num": (URI にある番号),"status": (STATUS)}
注) STATUS = "on" | "off"/service/dout/{100-131}/{"num": (URI にある番号),"status": (VSTATUS)}
注) VSTATUS = "on" | "off" | "fail"13

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

401 unauthorized
認証失敗
ケース
ヘッダーに Authorization がない

コンテント{"title": "Access token required"}

JWT にある ita の値が、検証時時刻より小さい {"title": "Token expired"}
JWT 検証失敗{"title": "Invalid access token"}

404 Not found
ケース

コンテント/service/dout/(N)時、N が 0,1,100-131 以外の値 {"title": "do number MUST be from 0,1,100-131"}
405 Method Not allowed
ヘッダーに GET 以外のメソッドを指定していたことを示している。 レスポンスにコンテントがありません。
500 Internal Server Error
サーバー内部にエラーを発生したことを示している。 レスポンスにコンテントがありません。

14

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

5 出力接点状態変更

15

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

5.1 リクエスト
MethodPUT
URI
URI/service/dout/(N)/off

説明
出力接点(N)をオフにする
N: 0, 1, 100-131/service/dout/(N)/on

出力接点(N)をオンにする
N: 0, 1, 100-131/service/dout/(N)/off/(H)

出力接点(N)をオフにする
指定の(H) msec が経過した後、元の状態に戻る
N: 0, 1, 100-131
H: 1-300000 (msec)/service/dout/(N)/on/(H)

出力接点(N)をオンにする
指定の(H) msec が経過した後、元の状態に戻る
N: 0, 1, 100-131
H: 1-300000 (msec)

16

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

5.2 レスポンス
200 OK
出力接点の状態変更が成功したことを示している。レスポンスにコンテントがありません。
401 unauthorized
認証失敗
ケース
ヘッダーに Authorization がない

コンテント{"title": "Access token required"}

JWT にある ita の値が、検証時時刻より小さい {"title": "Token expired"}
JWT 検証失敗{"title": "Invalid access token"}

404 Not found
ケース

コンテント

URI にある(N)が 0,1,100-131 以外の値であった {"title": "do number MUST be from 0,1,100-131"}
URI にある(H)が、1-300000 以外の値であった{"title": "hold time MUST be within 1-300000"}

405 Method Not allowed
ヘッダーに PUT 以外のメソッドを指定していたことを示している。 レスポンスにコンテントがありません。
500 Internal Server Error
サーバー内部にエラーを発生したことを示している。 レスポンスにコンテントがありません。

17

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

6 ファームウェアを更新

18FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

6.1 リクエスト
MethodPOSTURI
URI/service/fwup

説明
ファームウェアを更新する

19

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

6.2 レスポンス
200 OK
ファームウェア更新が成功したことを示している。レスポンスにコンテントがありません。
401 unauthorized
認証失敗
ケース

コンテント

ヘッダーに Authorization がない{"title": "Access token required"}

JWT にある ita の値が、検証時時刻より小さい {"title": "Token expired"}
JWT 検証失敗{"title": "Invalid access token"}

405 Method Not allowed
ヘッダーに POST 以外のメソッドを指定していたことを示している。 レスポンスにコンテントがありません。
415 Invalid Media File
ケース

コンテント

無効なファームウェアであった {"title": "Invalid Firmware"}500 Internal Server Error
サーバー内部にエラーを発生したことを示している。 レスポンスにコンテントがありません。

20

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス

コマンド一覧

21

FutureNet AS-250/AS-M250/AS-P250 シリーズ REST API リファレンス Ver.2.6.4 対応版
2022 年 4 月 改訂番号 03
発行: センチュリー・システムズ株式会社
Copyright (C) 2021-2022 Century Systems Co., Ltd. All rights reserved.