IoT Platform APIリファレンス (16.0_0版) |
<改版履歴>
版数 |
説明 |
日付 |
1.0版 |
初版 |
2016/10/7 |
1.1版 |
注釈の番号を振り直し(欠落を解消) 1.2節にダイナミックリソースコントローラー(DRC)の参照先を記載 2.2節を2.2.1~2.2.5に分割し、2.2.6を追加 2.2節に記載していた「リソース_Binary」に対する制約事項を削除 日本時間記載を全てUTCに変更 2.3.1節、2.4.1節 SSL通信にあたってTLS1.1またはTLS1.2を使用すべきである旨を記載 2.5.1節 MQTTにおけるQoSに関する記載の追記 |
2016/11/1 |
1.2版 |
誤記の修正 リソースの検索における$orderbyの記述を削除 2.1節「各パラメータの最大・最小値」に関する追記 3.2節 エラー応答追記 7.2節 Body文におけるlast_modifiedの日時に関する記載追記 |
2016/12/1 |
1.3版 |
2.1節 リソースパスの利用可能文字について修正 |
2017/1/12 |
4_1.0版 |
機能エンハンス 2.3.1節、2.3.2節 部分取得機能(Range Request)を追加 2.4節「CORS(Cross-Domain Resource Sharing)対応」を追加 3.3節、5.3節 hierarchy_get権の利用方法を追加 8.1節、8.2節 クライアント証明書関連事項を追加 8.1節 hierarchy_get権、hierarchy_put権を追加 |
2017/4/1 |
4_2.0版 |
機能エンハンス 2.4節、8.1節、8.2節 17年夏以降エンハンスに関する記載を削除 2.2.7節 通信頻度に対するシステム制限について を追加 第11章 システム格納データリファレンス を追加 |
2017/8/1 |
5.0_0版 |
機能エンハンス 3.1節、3.4節 csv/テキスト/バイナリ形式のデータ登録、およびデータ登録時の圧縮送信を追加 3.3節 配列形式に対する検索を追加 |
2017/11/18 |
5.1_0版 |
機能エンハンス 2.1節、2.4.1節、3.1節、3.4節、3.5節、4.1節、11.3節 要求とエラー情報との関連づけ機能を追加 2.1節 skip件数の最小値を変更 3.3節 検索結果の並び替え機能を追加 2.3.1節、2.5.1節 サポートするTLSバージョンの変更 補記追加 3.1節、3.2節、3.3節、3.4節、3.5節 クエリに対する補記を追加 |
2018/3/17 |
5.1_1版 |
誤記の修正 2.1節 誤記の削除 11.3節 誤記の修正 |
2018/4/11 |
5.1_2版 |
記載の追加 第10章 章タイトルの変更 10.1節 Requestにおける注意事項、Responseにおける要求仕様を追加 10.3節 リソース(転送)_JSONのAPI呼出し仕様を追加 |
2018/6/13 |
7.0_0版 |
機能エンハンス 2.3.1節、2.3.2節、2.4.1節、2.4.2節 データ取得時の圧縮通信機能を追加 2.4.1節、5.1節、5.5節 要求とエラー情報との関連づけ機能を追加 10.1節 リーズンフレーズの要求を削除 11.3節 失敗要因メッセージを追加 |
2018/9/15 |
9.0_0版 |
機能エンハンス 変更なし |
2019/8/22 |
11.0_0版 |
仕様変更に関する追記 2.3.2節 HTTPレスポンスのreason-phraseに関する注意書きを追記 ※以下のAPI実行時はreason-phrase付与されません。 第5章 リソース_Binaryデータ制御(REST)記載の全API 第7章 リソース制御(REST)記載の全API 第8章 アクセスコード制御(REST)記載の全API 第9章 イベント制御(REST)記載の全API |
2021/1/16 |
14.0_0版 |
機能エンハンス 変更なし |
2022/4/1 |
16.0_0版 |
ダイナミックリソースコントローラー(オンデマンドデータ収集)機能 削除にともなう 修正 |
2024/6/3 |
はじめに
このたびは「IoT Platformサービス(以下、本サービス)」をご検討いただき、誠にありがとうございます。
この「IoT Platform APIリファレンス(以下、本書)」は、本サービスをご契約いただいたお客様、またはご採用いただくお客様のための資料です。下記につきましてご了承くださいますよう、よろしくお願いいたします。
1. ご検討中のお客様は、本書を本サービスご採用可否のご判断のためにのみ、ご参照願います。
2. 本書および本書の内容について、第三者へご開示、ご提供にはならないようにお願いいたします。
3. 発行元の許可なく、本書の記載内容を複写、転写することを禁止します。
本書には本サービスをご採用いただくための重要な情報を記載しています。
ご契約いただいたお客様は、ご利用前に本書をよくお読みの上、本サービスをご利用ください。なお、本書は大切に保管してください。
ご採用いただけないお客様は、お客様の責任で本書をすみやかに廃棄願います。
本書の作成にあたって、細心の注意を払い可能な限り分かりやすい記載に努めていますが、本書の記述に誤りや欠落があっても弊社はいかなる責任も負わないものとします。本書及びその記述内容は予定なく変更される場合があります。
本書の内容の一部または全部を無断で複製・転載・改編しないでください。
免責事項について
・本サービスのマニュアルに記載されていない操作を行なったことで思わぬ誤動作や、予期せぬ課金が発生した場合であっても一切の責任を追いかねます。
・本サービスの利用、または利用できなかったことにより万が一損害(業務の中断・データの破損/損失・事故などによる損害や第三者からの賠償請求の可能性を含む)が生じたとしても、責任を一切負いかねます。
<用語>
用語 |
説明 |
備考 |
IoT |
Internet of Thingsの略 「モノのインターネット」と言われるが、「モノがインターネットプロトコル(インターネット言語)でネットワークされている状態」のこと。
|
|
REST |
REpresentational State Transfer の略 複数のソフトウェア連携に適した設計原則をWebに適用したソフトウェアの設計様式を示す。 ※特定のURLにパラメータを指定してHTTPでアクセスするとXMLで記述されたメッセージが送られてくるような、呼び出しインターフェース(「RESTful API」と呼ばれる)。 本サービスではXMLではなくJSON形式で返信する。
|
|
MQTT |
Message Queuing Telemetry Transport の略 MQTTとは、TCP/IPネットワーク上の通信プロトコルで、多数の主体の間で短いメッセージを頻繁に送受信する用途に向いた軽量なプロトコル。M2MネットワークやIoT(Internet of Things)分野での普及が見込まれている。ヘッダ部分が最小で2バイトと小さく、HTTPで同様の通信を行う場合より、通信量やCPU負荷・電力消費量などを数十分の一に抑える。
|
|
ダイナミック リソース コントローラー |
Dynamic Resource Controller 富士通の広域分散技術を用いた分散制御処理。データ収集においてトラフィックの変動に従い、限られたリソースの中で最適化した収集の実現を補佐する機能。
|
|
リソース |
リソースデータの収集単位 |
|
リソースデータ |
1つのデータ |
|
アクセスコード |
リソースを対象に設定する認可情報 |
|
- 目次 -
2.2.2. リソース、アクセスコード及びイベントのAPI操作について
2.2.3. 同一リソースに対するREST/MQTTの両立について
2.2.4. リソース/アクセスコード/イベント制御インターフェースの登録・更新時のJSONキーについて
2.2.6. リソース、アクセスコードおよびイベントの設定反映時間について
2.4. CORS (Cross-Origin Resource Sharing)対応
第3章 リソース_JSON/リソース(転送)_JSONのデータ制御(REST)
3.1. リソース_JSONへのデータ登録/リソース(転送)_JSONによるデータ転送
第4章 リソース_JSON/リソース(転送)_JSONへのデータ制御(MQTT)
4.1. リソース_JSONへのデータ登録/リソース(転送)_JSONへのデータ転送
4.2. リソース_JSON/リソース(転送)_JSONのデータ参照
本書はIoT Platform(以下:本サービス)のご利用に際し、APIを利用しアプリケーションを開発する方向けの「APIリファレンス」です。
サービスのご利用に際し、お客様を支援するための以下のマニュアルをご用意しております。
マニュアル名 |
説明 |
IoT Platform サービス詳細説明書 |
本サービスのサービス仕様を説明しています。 |
IoT Platform ユーザーガイド |
本サービスを利用したシステムを設計するにあたって、具体的な例を交えて設計指針の説明を行うマニュアルです。 |
IoT Platform APIリファレンス |
本サービスで提供するサービスを利用したアプリケーションを設計するためのAPIのリファレンスマニュアルです。(本書) |
IoT Platform サービスポータル操作マニュアル |
Web インターフェース機能(以下:サービスポータル)に関するマニュアルです。 |
Memo リソース、アクセスコードなど本サービス全般の定義・考え方については、「IoT Platform サービスポータル操作マニュアル」第3章をご参照ください。 また、ダイナミックリソースコントローラーについては「IoT Platformユーザーガイド」を参照ください。 |
本サービスの保持するデータに対して、REST(HTTP)/MQTTにてアクセスすることによる操作が可能です。本章ではその共通事項について説明します。
表1:外部インタフェース最大・最小値一覧に、REST(HTTP) のヘッダ、URI及びMQTTのTopicにおいて指定するパラメータの最大・最小値を説明します。
表2:filter条件詳細リソースデータ制御インタフェース 最大・最小値一覧に、REST(HTTP)にて検索時に指定するfilter条件の詳細パラメータの最大・最小値を説明します。
表3: filter条件詳細アクセスコード制御・イベント制御インタフェース 最大・最小値一覧に、API操作によりアクセスコードやイベントを登録・参照・更新・削除する時に指定するfilter条件の詳細パラメータの最大・最小値を説明します。
表4: select条件詳細リソースデータ制御インタフェース 最大・最小値一覧に、select条件に指定する詳細パラメータの最大・最小値を説明します。
表5: Body部リソースデータ制御インタフェース最大・最小値一覧に、RESTのBodyやMQTTのPayloadに展開されるリソースデータに記載するパラメータの最大・最小値を説明します。
表 1:外部インタフェース最大値・最小値一覧
パラメータ名 |
説明 |
使用可能文字 |
最小 |
最大 |
リソースパス |
リソースを一意に表現するためのパス。/(スラッシュ)区切りで階層的に表現できます。 |
・半角英数字 先頭や「/」の後に「-」と「_」は指定不可。 |
2文字 |
128文字 (但しリソース(転送用)の場合「_fwd」、 |
拡張子 |
リソースデータのフォーマットを表す拡張子 |
json、csv、txt、bin |
3文字 |
4文字 |
圧縮タイプ |
Bodyデータを圧縮して送信する際のデータの圧縮タイプ |
gzのみ |
2文字 |
2文字 |
アクセスコード |
外部IFアクセスの権限を示す識別子 |
半角英数字のみ |
3文字 |
48文字 |
登録日時 |
登録対象データに付与する/付与された登録日時。 |
・半角英数字および、+ or - |
16文字 |
24文字 |
RETAIN |
MQTT broker側で本登録データを保持しておくかどうか。 |
true または false |
4文字 |
5文字 |
filter条件 |
処理対象を、<filter条件>に一致するものに限定します。 |
後述のname,valueに使用可能な文字列に従います。 |
6文字 |
256文字 |
top件数 |
検索結果として得られるデータ数を限定します |
半角数字 |
1件 |
1000件 |
skip件数 |
検索結果として得られたデータを指定件数分skipします |
半角数字 |
0件 |
100,000 件 |
選択key |
Select条件時の選択key |
・後述のnameに使用可能な文字列に従います。 |
8文字 |
256文字 |
Content-Type |
BodyのMIMEタイプ |
RFC2046、RFC6838、RFC4289、RFC6657に従います。 |
0文字 |
128文字 |
x-iotpf-request-id |
リクエスト識別ID |
%x21-%x7E |
0文字 |
64文字 |
x-iotpf-meta-data1, |
リソースデータのメタデータ |
%x21-%x7E |
1文字 |
128文字 |
JSON配列要素数 |
Body文にJSON配列を記載する際における配列要素数 |
- |
- |
1,000 |
表 2:filter条件詳細リソースデータ制御インタフェース 最大・最小値一覧
パラメータ名 |
説明 |
使用可能文字 |
最小 |
最大 |
プロパティ名 |
JSON形式のリソースデータにおけるname |
・「”」、「\(*1)」、「’」、「&」、「$」、「(」、「)」制御コードを除く、全てのUnicode文字(UTF-8) |
1文字 |
128文字 |
条件値 |
JSON形式のリソースデータにおけるvalueに対する条件値 |
・「”」、「\(*1)」、「’」,「$」制御コードを除く、全てのUnicode文字 (UTF-8) |
文字列の場合、 |
|
整数の場合、 |
||||
実数の場合、 |
||||
比較演算子 |
eq(等号)、ne(不等号)、gt(より大きい)、ge(以上)、lt(より小さい)、le(以下) |
eq、ne、gt、ge、lt、leのいずれか |
1回 |
8回 |
論理演算子 |
and(論理積)、or(論理和)。 |
and、orのいずれか |
0回 |
8回 |
(*1) U+005C(REVERSE SOLIDUS)
表 3:filter条件詳細アクセスコード制御・イベント制御インタフェース 最大・最小値一覧
パラメータ名 |
説明 |
使用可能文字 |
最小 |
最大 |
プロパティ名 |
フィルタプロパティ名 |
_resource_path |
各1回 |
各1回 |
条件値 |
各プロパティ名に対する条件値。 |
・「”」、「\(*1)」、「’」,「$」制御コードを除く、全てのUnicode文字(UTF-8 ※1) |
文字列の場合、 |
|
比較演算子 |
eq(等号) |
eqのみ |
- |
3回 |
論理演算子 |
and(論理積) |
andのみ |
- |
2回 |
(*1) U+005C(REVERSE SOLIDUS)
表 4:select条件詳細リソースデータ制御インタフェース 最大・最小値一覧
パラメータ名 |
説明 |
使用可能文字 |
最小 |
最大 |
選択key |
JSON形式のリソースデータにおけるname |
・「”」、「\(*1)」、「'」、「&」、「$」、「(」、「)」制御コードを除く、全てのUnicode文字(UTF-8 ※1) |
1文字 |
128文字 |
選択keyの 複数指定 |
<選択key>は「,」区切りで複数指定可 |
「,」 |
- |
10回 |
(*1) U+005C(REVERSE SOLIDUS)
表 5:Body部リソースデータ制御インタフェース最大・最小値一覧
パラメータ名 |
説明 |
使用可能文字 |
最小 |
最大 |
- |
Body部に記載できる文字 |
JSON形式の配列であること |
0 Byte |
16Mbyte (JSONをBSON形式に変換した場合のサイズ) |
- |
Body部に記載できる文字 |
拡張子に応じた内容であること ・jsonまたは省略の場合 JSON形式 ・csvの場合 csvファイル形式 ・txtの場合 テキストファイル形式 ・binの場合 任意のバイト列 |
0 Byte |
256kbyte (圧縮送信時は伸長後のサイズ) |
name |
JSON形式のリソースデータにおけるname |
・「”」、「\(*1)」、「’」、「&」、「$」、「(」、「)」制御コードを除く、全てのUnicode文字(UTF-8) |
1文字 |
128文字 |
value |
JSON形式のリソースデータにおけるvalue |
・「”」、「\(*1)」、「’」,「$」制御コードを除く、全てのUnicode文字(UTF-8) ・true/falseは、bool値であることを示します。 |
文字列の場合、 |
|
整数の場合、 |
||||
実数の場合、 |
(*1) U+005C(REVERSE SOLIDUS)
本サービスでは、リソースID数、API、SSLやイベントの利用回数に応じて従量課金させて頂きます。
リソース、アクセスコード及びイベントの追加・参照・更新・削除をAPI操作するためには、予めcreate、delete、list権を持ったリソース及びアクセスコードが必要です。また、API操作できるのは、create、delete、list権を持ったアクセスコードが指定するリソースパス配下のみです。
リソース及びアクセスコードのAPI操作を行う場合、予めサービスポータルより、上階層のリソース及びアクセスコードの登録をお願いします。
「リソース_JSON」では、RESTで登録したリソースデータをMQTTにてSUBSCRIBEにより参照することができます。
但し、「リソース_Binary」においてはRESTで登録したリソースデータをMQTTにてSUBSCRIBEにより参照することはできません。
本ドキュメントに記載したJSONキー以外のキーは使用不可とし、使用された場合は400 応答します。
また、他の制御インターフェースにおいて必要ないJSONキーが設定されていた場合も、400 応答します。例えば、「リソース_JSON」においてリソースデータを登録する際に、リクエストのBodyに“fwd_info”キーを設定すると“fwd_info”は「リソース(転送)_JSON」に必要な設定であるため400 応答されます。
リソースパスは以下のように定義しています。
・「リソース_JSON」:<お客様任意>
・「リソース(転送)_JSON」:_fwd/<お客様任意>
先頭の「_fwd/」制御文字も含みリソースパスとします。
・「リソース_Binary」:_bin/<お客様任意>
先頭の「_bin/」制御文字も含みリソースパスとします。
サービスポータルや制御API操作にてリソース、アクセスコードおよびイベントの追加/変更/削除を実施した後、実施内容が利用できるようになるまで、最大5分程度の時間がかかります。(なお、この時間は将来のエンハンス等において変更される可能性があります。)
通信頻度が一定時間目安を超えた場合、すべてのリクエストがエラー返却またはデータ破棄されます。これらの事象の発生は下記から確認することができます。本事象となった場合には、通信頻度の調整、または料金プランの変更をご検討ください。
通信手段 |
発生する事象 |
確認する方法 |
REST(HTTP) |
エラー返却 |
HTTPレスポンスにより確認できます。 429 Too Many Requestsの場合に発生しています。 |
MQTT |
データ破棄 |
エラーログ蓄積機能により確認できます。 “trigger”:“MP”, “error_factor_message”:“Failed to execute publishing resource data, in the system internal processing.”となるエラーログ蓄積の場合に発生しています。 |
Parameters |
値 |
補足 |
Base URL |
http://<zone>.fujitsu.com https://<zone>.fujitsu.com
|
<zone>に入る値はご契約後の通知内容に従ってください。 |
l httpの場合は80/tcpポートを使用
l httpsの場合は443/tcpポートを使用(TLS1.2に対応)
l 注)
Ø URLのパス部(「?」より前の部分)は、パーセントエンコードが不要になります。(パーセントエンコード不可)
Headers |
値 |
補足 |
M/O(*1) |
Authorization |
Bearer <アクセスコード> |
アクセスコードはサービスポータルにて設定した値 |
M |
Accept-Encoding |
gzip |
取得データ(ペイロード)のgzip圧縮受信を希望する場合に指定 |
O(*2) |
Range |
bytes=<先頭位置>- bytes=<先頭位置>-<末尾位置> bytes=-<サイズ> ※コンマ区切りにより複数範囲の指定が可能 |
データの一部のみ取得を希望する場合に指定 ※複数範囲を指定した場合は、マルチパートで応答します。 |
O(*3) |
(*1) M:必須、O:オプション
(*2) 3.2リソース_JSONのデータ参照、および3.3リソース_JSONのデータ検索のみで利用できます。
(*3) 5.2リソース_Binaryのデータ参照 のみで利用できます。
Status-Code |
Reason-Phrase(*1) |
説明 |
200 |
OK |
成功、リソースデータ作成の成功 |
201 |
Created |
リソース、アクセスコード、イベント作成の成功 |
204 |
No Content |
以下の何れかに該当 ・リソースデータ参照時において、リソースは存在するが該当するリソースデータが存在しない ・リソースの削除において、削除成功 ・メタデータ・アクセスコード・イベント参照時において、各種情報が存在しない ・メタデータ・アクセスコード・イベント削除時において、削除成功 |
206 |
Partial content |
部分取得の成功 |
400 |
Bad Request |
リクエストデータに不正値があります |
401 |
Unauthorized |
リソースへのアクセス権がありません |
403 |
Forbidden |
アクセス権がありません |
404 |
Not Found |
リソースが存在しません |
405 |
Method Not Allowed |
該当のメソッドタイプは許可されていません |
408 |
Request Time-out |
リクエストタイムアウトです |
409 |
Conflict |
他のリソースと競合しています |
411 |
Length Required |
サーバアクセスを拒否しました(Content-Lengh指定なし) |
412 |
Precondition Failed |
サーバアクセスを拒否しました(リクエスト条件が不正) |
413 |
Payload Too Large |
サーバアクセスを拒否しました(リクエストボディサイズがサーバ許容範囲超越) |
414 |
URI Too Long |
サーバアクセスを拒否しました(URIが長い) |
415 |
Unsupported Media Type |
サーバアクセスを拒否しました(未サポートContent-Type) |
416 |
Requested Range Not Satisfiable |
サーバアクセスを拒否しました(Range要求の値が不正) |
421 |
Misdirected Request |
レスポンスを生成できないサーバに送信されました |
423 |
Locked |
リソースがロックされています |
429 |
Too Many Requests |
契約上のトラフィック上限を超えています |
495 |
SSL Certificate Error |
無効なクライアント証明書を受信しました |
496 |
SSL Certificate Required |
クライアントからクライアント証明書が送付されませんでした |
497 |
HTTP Request Sent to HTTPS Port |
HTTPSリクエストポートにてHTTPリクエストを受信しました |
500 |
Internal Server Error |
サーバ側の問題による失敗です |
501 |
Not Implemented |
サーバで未サポートリクエストのメソッドが送信されました |
502 |
Bad Gateway |
ゲートウェイサーバが起動していません |
503 |
Service Unavailable |
一時的にアクセスできません |
504 |
Gateway Time-out |
ゲートウェイサーバが時間内にレスポンスを返せませんでした |
(*1) 以下のAPI実行時は付与されません。
第5章 リソース_Binaryデータ制御(REST)記載の全API
第7章 リソース制御(REST)記載の全API
第8章 アクセスコード制御(REST)記載の全API
第9章 イベント制御(REST)記載の全API
Headers |
値 |
補足 |
Content-Encoding |
gzip |
取得データ(ペイロード)がgzip圧縮伝送された場合に限り付与します。(*1) |
Content-Length |
Bodyサイズ(byte) |
- |
Content-Range |
<先頭位置>-<末尾位置>/<全体長> |
206応答にて付与します。Range要求において複数範囲を指定するとマルチパート応答となり、それぞれのパートに付与します。 |
(*1) 3.2リソース_JSONのデータ参照、および3.3リソース_JSONのデータ検索のRequestにてAccept-Encodingが指定され、かつ取得したデータの圧縮前のサイズが1024byteを超える場合に付与します。
1. エラー時は以下の形式で詳細情報を設定する
Headers |
値 |
補足 |
Content-Type |
application/json または application/json; charset=UTF-8 |
固定 |
1. Body
{"errors": [{ "message": "<メッセージ>", "<任意のname>": "<任意のvalue>" }]} |
パラメータ名 |
値 |
補足 |
M/O(*1) |
メッセージ |
エラーの詳細情報 |
― |
M |
任意のname |
エラーの付加情報のname |
エラーに応じて任意のnameを設定 |
O |
任意のvalue |
<任意のname>に応じたvalue |
― |
O |
(*1) M:必須、O:オプション
エラー時はBodyに詳細情報が設定されます。詳細情報については、付録1を参照してください。
Webブラウザでは、同一生成源ポリシー (Same-Origin Policy) によってWebページを生成したドメイン以外へのREST (HTTP) リクエストは基本的にはできません。IoT Platformでは、安全にクロスドメインアクセスを許可する仕組みとしてCORS (Cross-Origin Resource Sharing)(*1) に対応しています。
(*1) W3Cにて規定されています。(http://www.w3.org/TR/cors/)
CORS仕様に準じてクロスドメインアクセスを行う際の通信手順には、以下の2種類があります。
Ø 直接、クロスドメインアクセスするリクエスト(本要求リクエスト)を送信する手順。
Ø Preflight Request(クロスドメインアクセスが可能か否かを確認するリクエスト)を送信し、そのレスポンスを受けた後に改めてクロスドメインアクセスするリクエスト(本要求リクエスト)を送信する手順。
なお、CORS対応はREST(HTTP)アクセスに限り動作します。サービスポータルへのアクセスには動作しませんのでご注意ください。
Method |
値 |
補足 |
Options |
- |
- |
Headers |
値 |
補足 |
M/O(*1) |
Origin |
<オリジンサーバのドメイン> |
- |
M |
Access-Control-Request-Method |
POST、PUT、GET、DELETEのいずれか |
本要求のREST (HTTP) で使用するメソッドを指定してください。 |
M |
Access-Control-Request-Headers |
Authorization |
- |
M |
Content-Type |
下記参照ください。 |
O |
|
Range |
下記参照ください。 |
O |
|
x-iotpf-meta-data1 x-iotpf-meta-data2 x-iotpf-meta-data3 |
下記参照ください。 |
O |
|
x-iotpf-request-id |
下記参照ください |
O |
|
Accept-Encoding |
下記参照ください |
O |
(*1) M:必須、O:オプション
Ø Access-Control-Request-Headersの補足事項について
² 複数ヘッダを指定する場合は、「,」(コンマ) で区切って指定します。
² Content-Typeは、本要求リクエストが以下となる場合に必要です。
1. リソースの登録(7.1節)
2. リソースのメタデータ更新(7.3節)
3. アクセスコードの登録(8.1節)
4. アクセスコードの更新(8.3節)
5. イベントの登録(9.1節)
6. イベント情報の更新(9.3節)
7. リソース_JSONへのデータ登録/リソース(転送)_JSONによるデータ転送(3.1節)
8. リソース_JSONのデータ更新(3.4節)
9. リソース_Binaryへのデータ登録(5.1節)
² x-iotpf-meta-data1、x-iotpf-meta-data2、x-iotpf-meta-data3、Rangeは、本要求リクエストが以下となる場合に必要です。
1. リソース_Binaryデータ制御(REST)(第5章)
² x-iotpf-request-idは、本要求リクエストが以下となる場合に必要です。
1. リソース_JSONへのデータ登録/リソース(転送)_JSONによるデータ転送(3.1節)
2. リソース_JSONのデータ更新(3.4節)
3. リソース_JSONのデータ削除(3.5節)
4. リソース_Binaryへのデータ登録(5.1節)
5. リソース_Binaryのデータ削除(5.5節)
² Accept-Encodingは、本要求リクエストが以下となる場合に必要です。
1. リソース_JSONのデータ参照(3.2節)
2. リソース_JSONのデータ検索(3.3節)
Ø サービスポータルにてCORSが有効と設定されている場合において、Originヘッダが付与され、かつ必須ヘッダが付与されていない場合は、エラー応答 (400) を返します。
Body |
値 |
補足 |
なし |
- |
- |
Status-Code |
Reason-Phrase |
説明 |
2.3.2節を参照 |
- |
- |
Headers |
値 |
補足 |
Access-Control-Allow-Origin |
* |
固定(全てのオリジンを許可します) |
Access-Control-Allow-Methods |
OPTIONS,POST,PUT,GET,DELETE |
固定 |
Access-Control-Allow-Headers |
Authorization |
固定 |
Content-Type |
固定 |
|
Range |
リソース_Binaryデータ制御(REST)時 |
|
x-iotpf-meta-data1 x-iotpf-meta-data2 x-iotpf-meta-data3 |
リソース_Binaryデータ制御(REST)時 |
|
x-iotpf-request-id |
リソース_JSON/リソース(転送)_JSONのデータ制御(REST)、リソース_Binaryデータ制御(REST)時 |
|
Accept-Encoding |
リソース_JSON/リソース(転送)_JSONのデータ制御(REST)時 |
|
Access-Control-Max-Age |
86400 |
固定(24時間) |
Ø Access-Control-Request-Headersに複数ヘッダを指定する場合は「,」(コンマ)で区切って指定します。
Body |
値 |
補足 |
ボディ |
成功:なし 失敗:あり(失敗エラー情報) |
- |
CORSを利用する場合の、通常リクエストとの差分を以下に示します。その他の共通事項は2.3節を参照ください。
クロスドメインアクセスする場合のRequestには、以下のヘッダを付与してください。
Headers |
値 |
補足 |
M/O(*1) |
Origin |
<オリジンサーバのドメイン> |
- |
M |
(*1) M:必須、O:オプション
Headers |
値 |
補足 |
Access-Control-Allow-Origin |
* |
固定(全てのオリジンを許可します) CORSリクエストに対して許可した場合に限り付与します。 ※ CORS機能は、サービスポータルから利用するか否かの設定ができます。利用する場合に限りCORSリクエストを許可します。 |
Access-Control-Expose-Headers |
Location Content-Length Content-Range x-iotpf-meta-data1 x-iotpf-meta-data2 x-iotpf-meta-data3 Content-Encoding |
固定 CORSリクエストに対して許可した場合に限り付与します。 |
本サービスでは、MQTT v3.1をサポートしています。
l MQTTブローカーアドレス
MQTTブローカーアドレス |
ポート番号 |
SSL/TLS |
<zone>.fujitsu.com |
1883/TCP |
|
<zone>.fujitsu.com |
8883/TCP |
○ |
l <zone>に入る値はご契約後の通知内容に従ってください。
l SSL/TLSはTLS1.2に対応しています。
l 利用可能なメッセージタイプ
メッセージタイプ |
値 |
説明 |
利用可否 |
予約済み |
0 |
予約済み |
× |
CONNECT |
1 |
クライアントからサーバへの接続要求 |
○ |
CONNACK |
2 |
接続確認応答 |
△(送信不可) |
PUBLISH |
3 |
メッセージ発行 |
○ |
PUBACK |
4 |
PUBLISHの確認応答(QoS=1) |
○ |
PUBREC |
5 |
PUBLISHの確認応答(QoS=2,part1) |
○ |
PUBREL |
6 |
PUBLISHの解放要求(QoS=2,part2) |
○ |
PUBCOMP |
7 |
PUBLISHの解放応答(QoS=2,part3) |
○ |
SUBSCRIBE |
8 |
購読要求 |
○ |
SUBACK |
9 |
SUBSCRIBE確認応答 |
△(送信不可) |
UNSUBSCRIBE |
10 |
購読解除要求 |
○ |
UNSUBACK |
11 |
UNSUBSCRIBE確認応答 |
△(送信不可) |
PINGREQ |
12 |
PING要求 |
◯ |
PINGRESP |
13 |
PING応答 |
△(送信不可) |
DISCONNECT |
14 |
切断通知 |
○ |
予約済み |
15 |
予約済 |
× |
l 固定ヘッダ設定値
Parameters |
値 |
補足 |
適用対象の メッセージタイプ |
DUPフラグ |
0 or 1 を任意に設定できます。 |
0:初回メッセージ 1:再送メッセージ |
PUBLISH PUBREL SUBSCRIBE UNSUBSCRIBE |
QoSフラグ |
0 or 1
or 2を任意に設定できます。 ※ MQTTクライアント~ブローカー間のQoSであり、エンド~エンドではありません。 |
0:最高一回 1:最低一回 2:正確に一回 |
PUBLISH |
RETAINフラグ |
0 or 1 を任意に設定できます。 |
0:MQTT brokerで 最新情報を保持しない 1:保持する |
PUBLISH |
l 可変ヘッダ設定値
Parameters |
値 |
補足 |
適用対象の メッセージタイプ |
プロトコル名 |
MQIsdp |
固定 |
CONNECT |
プロトコルバージョン |
3 |
固定 |
CONNECT |
User nameフラグ |
1 |
固定 |
CONNECT |
Passwordフラグ |
1 |
固定 |
CONNECT |
Will RETAIN |
0 |
固定 |
CONNECT |
Will QoS |
0 |
固定 |
CONNECT |
Willフラグ |
0 |
固定 |
CONNECT |
Clean Sessionフラグ |
1 |
固定 |
CONNECT |
キープアライブ・ タイマー |
1秒以上 1800秒以下 |
1800秒より大きい値もしくは0秒を設定した場合、 エラー(0x05:接続拒否) として切断 |
CONNECT |
トピック名 |
<アクセスコード>/v1/<Tenant ID>/<リソースパス> (*1) |
― |
PUBLISH SUBSCRIBE UNSUBSCRIBE |
(*1) <アクセスコード>の部分は、アクセス可否の判定のために利用します。適切な<アクセスコード>が設定されている場合、/v1/<Tenant ID>/<リソースパス>の部分が一致すればMQTTクライアント間でメッセージ交換をすることができます。
l ペイロード設定値
l CONNECT
Parameters |
値 |
最大長 |
補足 |
クライアント識別子 |
クライアントを一意に識別する文字列 |
23文字 |
クライアントごとに重複なく設定してください。 |
User Name |
ユーザ名 |
10文字 |
ご契約後の通知内容に従ってください。 (テナントID固定) |
Password |
パスワード |
12文字 |
サービスポータルより設定 |
l PUBLISH
² リソースデータ登録メッセージ
l SUBSCRIBE
² 購読対象のトピックのリスト
l トピック名は「<アクセスコード>/v1/<Tenant ID>/<リソースパス>」とします。
l UNSUBSCRIBE
² 購読解除対象のトピックのリスト
l トピック名は「<アクセスコード>/v1/<Tenant ID>/<リソースパス>」とします。
l
MQTTのトピック名におけるワイルドカードについて
以下のパターンのワイルドカード表現に対応しています。未対応のワイルドカード表現を使用したSUBSCRIBE/UNSUBSCRIBEメッセージを受信した場合、エラーとしてコネクションを切断します。
No |
パターン |
説明 |
マッチするリソースパスの例 |
1 |
<アクセスコード>/v1/<Tenant ID>/# |
<Tenant ID>のテナント内の 全てのリソースパス |
DC/ DC/aaa/Tokyo DC/bbb/Tokyo/1 DC/aaa/Fukuoka/1 DC/bbb/Fukuoka など全て。 |
2 |
<アクセスコード>/v1/<Tenant ID>/DC/aaa/# |
リソースパスの前方一致 |
DC/aaa DC/aaa/Tokyo DC/aaa/Fukuoka/1 |
3 |
<アクセスコード>/v1/<Tenant ID>/DC/+/Tokyo |
リソースパスの部分一致 |
DC/aaa/Tokyo |
² 「<アクセスコード>/v1/<Tenant ID>/」は必須とします。
² 以下のワイルドカードパターンには対応していません。
l 「+」が複数出現する
l 「#」と「+」の組み合わせ
l 最後に「+」が出現する
l 固定ヘッダ
l 特になし
l 可変ヘッダ
Parameters |
値 |
補足 |
適用対象のメッセージタイプ |
接続戻りコード |
0: 接続許可 1: 接続拒否(プロトコルバージョン許容不可) 2: 接続拒否(識別子拒否) 3: 接続拒否(サーバ使用不可) 4: 接続拒否(ユーザ名/パスワードが不正) 5: 接続拒否(権限なし) |
― |
CONNACK |
l ペイロード
l 特になし
リソース_JSON及びリソース(転送)_JSONの制御が行えるRESTのインターフェースの一覧を以下に示します。
表 6:データ蓄積/参照インターフェース一覧
プロトコル |
種別 |
用途 |
章 |
REST |
リソース_JSONへのデータ登録/ リソース(転送) _JSONによるデータ転送
|
リソースに対して新たにデータを登録(転送)します。 [オプション] リソース_JSONの場合: ・日時指定: 指定された日時でデータを登録 ・Bulk Insertフラグ指定: Bulk Insertでデータを登録 ※Bulk Insertとは一回のAPI起動で複数のデータを登録することを指します。 |
3.1章 |
リソースデータの参照 |
リソースに登録済みのデータを参照します。 [オプション] ・なし: 最新データを返します。 ・日時指定: 指定日時のデータを返します。 |
3.2章 |
|
リソースデータの検索 |
リソースに登録済みのデータを、条件を指定して検索します。検索結果として、HITした登録済みデータそれぞれに、本サービスにおいて管理する登録日時情報を付加した上でデータを返します。 [オプション] ・QUERYにて、検索条件を指定できます。 |
3.3章 |
|
リソースデータの更新 |
リソースに登録済みのデータを更新します。 [オプション] ・新登録日時を指定: データの更新とともに、登録日時を変更します。 ・なし: データの更新のみを行い、登録日時は変更しません。 |
3.4章 |
|
リソースデータの削除 |
リソースに登録済みのデータを削除します。 [オプション] ・QUERYにて、削除条件を指定できます。 |
3.5章 |
Request
Parameters |
値 |
|
Method |
PUT |
|
URI |
データ蓄積 |
<Base URL>/v1/<Tenant ID>/<リソースパス>.<拡張子>.<圧縮タイプ>?$date=<登録日時>&$retain=<RETAIN>&$bulk=<Bulk Insertフラグ>&$charset=<Bodyデータ文字コード>&$skip=<Bodyデータ削除指定行>&$numconv=<数値変換> |
データ転送 |
<Base URL>/v1/<Tenant ID>/_fwd/<リソースパス>.<拡張子>.<圧縮タイプ>?$date=<登録日時>&$retain=<RETAIN>&$charset=<Bodyデータ文字コード>&$skip=<Bodyデータ削除指定行>&$numconv=<数値変換> |
|
Headers |
2.3.1 節 参照 |
|
Body |
登録対象データ |
Memo IoT Platformのデータ登録では、「存在するリソースにデータを格納する」という考え方から、MethodにPUTを使用する仕様です。リソースへのPOST Methodは「リソースの作成(7.1 リソースの登録)」にて使われます。 |
² URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ登録対象のリソースパス |
M |
拡張子 |
以下のいずれかを指定します。省略時は「.」を含め省略し、この場合はjsonが指定されたものとみなします。 ・json ・csv ・txt ・bin |
O |
圧縮タイプ |
Bodyデータを圧縮して送信する際の圧縮タイプを以下で指定します。省略時は「.」を含め省略し、この場合はBodyデータが無圧縮とみなします。 ・gz |
O |
登録日時 |
登録対象データに付与する登録日時(*2) 省略可($date=含む)で、省略時は本サービスでのリクエスト受信日時を採用します。 ・既に指定登録日時のデータが存在するかどうかはチェックせず、追記を行います。 |
O |
RETAIN |
MQTT broker側で本登録データを保持しておくかどうか。 ・false :保持しない false時は、省略可($retain=含む) ※Bulk Insert指定時は、RETAINが指定されても無視します。 |
O |
Bulk Insertフラグ |
Bulk Insert(1度に複数リクエストを送信すること。)を実行するか否かを指定します。拡張子がjson、または省略の場合に限り有効です。 ・none:Bulk Insertしません ・single_resource_path:単一リソースに対してBulk Insertを実行します none 時は省略可($bulk=含む) |
O |
Bodyデータ文字コード |
Bodyデータの文字コードを指定します。拡張子がcsv、txtの場合に限り有効です。 ・utf-8 :UTF-8 ・shift_jis :Shift-JIS utf-8時は省略可($charset=含む) |
O |
Bodyデータ削除指定行 |
Bodyデータの先頭から削除する行数を指定します。拡張子がcsvの場合に限り有効です。省略することができ($skip=含む)、この場合は行削除を行いません。 |
O |
数値変換 |
Bodyデータ中の数値を文字列に変換するか否かを指定します。拡張子がcsvの場合に限り有効です。 ・true :数値変換します。 ・false :数値変換しません。 true時は省略可($numconv=含む) |
O |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。以降の「登録日時」はすべて同一仕様です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
1. URIパラメータのクエリに対し、上記一覧に記載がなく、かつ本章の他の要求(参照、検索、更新、削除)にて許容しているものを指定した場合には、エラーとならず無視します。許容されていないものは、解析失敗としてエラー応答します。
² HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
・拡張子がjsonまたは省略の場合 application/json; charset=UTF-8 |
固定 |
O |
・拡張子がcsvの場合 text/csv; charset=<charset> <charset>は以下のいずれか。 ・UTF-8 ・Shift_JIS |
|||
・拡張子がtxtの場合 text/plain; charset=<charset> <charset>は以下のいずれか ・UTF-8 ・Shift_JIS |
|||
・拡張子がbinの場合 BodyのMIMEタイプ |
|||
・圧縮タイプがgzの場合(拡張子は任意) application/gzip または application/x-gzip |
|||
x-iotpf-request-id |
リクエスト識別ID(任意文字列)(*2) |
本サービス内および通信先の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。 |
O |
(*1) M:必須、O:オプション
(*2) 値に「-」のみが設定された場合は、ヘッダ設定無しと扱います。
² Body (拡張子がjsonまたは省略の場合)
1. 共通事項
Ø メンバーの順序性は保証せず、登録時の並びで参照できるとは限りません。
Ø 重複したnameを持つメンバは保存しません。
Ø JSON配列の最大要素数は1000個です。
2. <Bulk Insertフラグ>なし または none の場合
Ø JSON形式の登録対象のデータとして、配列([ ])での開始は許容しません。
3. <Bulk Insertフラグ> が single_resource_path の場合
Ø 各リソースデータを以下のJSONオブジェクトとし、JSON配列形式で複数格納できます。
Parameters |
形式 |
説明 |
最大長 |
M/O(*1) |
_date |
日時(*2) |
登録日時 ・設定されていなければ、クエリストリングの<登録日時>を設定します。クエリストリングの<登録日時>も設定されていなければ受信日時を設定します。 |
24文字 |
O |
_data |
文字列 |
登録対象のリソースデータ本体(JSON形式) |
全体の最大サイズに従う |
M |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。以降の「登録日時」はすべて同一仕様です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
登録データ例:
[ {“_date”:“ 20160717T131520Z”, “_data”: {“name1”:“value1”}}, {“_date”:“20160717T131521Z”, “_data”:{“name1”:“value1”}} ] |
Ø Bulk InsertフラグありのAPIはBulk InsertフラグなしのAPI料金と比較して高額となります。詳細はご契約時のサービスメニューをご参照ください。
Ø Bulk Insertにて登録したデータに対してイベント処理は行いません。
Ø Bulk Insertにて登録したデータはMQTT Subscriberに通知されません。
² Body (拡張子がcsvの場合)
1. CSV形式をJSON形式に変換して格納します。変換後のデータ形式を以下に示します。
name : “csv”
value : 2重配列形式。
2. CSVフォーマットはRFC4180に準ずる形式にしてください。
Ø CSVの区切り文字「,(コンマ)」の直前/直後にある「”(ダブルクォーテーション)」は削除されます。
Ø CSV中の改行コードは“CR LF”、“LF”に対応しています。
3. CSV中の各データは以下のように解釈します。
Ø 数字(小数点を含む)または指数表記であり、かつ$numconv=falseの場合
数値と解釈します。指数表記時、仮数部と指数部の間の記号は“e”または“E”です。
Ø true、またはfalseの場合
bool値と解釈します。
Ø 上記以外の場合
文字列と解釈します。$charset=shit_jisが指定された場合は文字コードがShift-JISであるとし、UTF-8に変換します。
※ 実際のBody中の文字コードによらず、Shift-JIS文字としてUTF-8へ変換します。
4. Body先頭にUTF-8を示すバイトオーダーマーク(BOM)が付与されていた場合、削除されます。
5. 転送リソースによる転送、イベント発生時の付与データ、およびMQTT Subscriberへの通知は、JSON形式に変換されたデータが通知されます。
6. 以下に変換例を示します。
Bodyデータ(CSV形式)
node-a, true, 10.1 node-b, false, 20.0 |
格納データ(JSON形式)
{ "csv": [ [ "node-a", true, 10.1 ], [ "node-b", false, 20 ] ] } |
² Body (拡張子がtxtの場合)
1. テキスト形式をJSON形式に変換して格納します。変換後のデータ形式を以下に示します。
name : “txt”
value : 文字列
2. $charset=shit_jisが指定された場合は文字コードがShift_JISであるとし、UTF-8に変換します。
※実際のBody中の文字コードによらず、Shift-JIS文字としてUTF-8へ変換します。
3. Body先頭にUTF-8を示すバイトオーダーマーク(BOM)が付与されていた場合、削除されます。
4. 転送リソースによる転送、イベント発生時の付与データ、およびMQTT Subscriberへの通知は、JSON形式に変換されたデータが通知されます。
5. 以下に変換例を示します。
Bodyデータ(テキスト形式)
#include <stdio.h>
int main(int argc, char **argv) { printf(“Hello, World!!\n”); } |
格納データ(JSON形式)
{ "txt": "#include <stdio.h>\r\n\r\nint main(int argc, char *argv)\r\n{\r\n\tprintf(\"Hello, World!!\\n\";\r\n}\r\n" } |
² Body (拡張子がbinの場合)
1. バイナリ形式をJSON形式に変換して格納します。変換後のデータ形式を以下に示します。
name : “bin”
value : Base64形式の文字列
2. 転送リソースによる転送、イベント発生時の付与データ、およびMQTT Subscriberへの通知は、JSON形式に変換されたデータが通知されます。
3. 以下に変換例を示します。
Bodyデータ(バイナリ形式)
1234567890 |
格納データ(JSON形式)
{ "bin": "MTIzNDU2Nzg5MA==" } |
² Bodyの圧縮送信
1. 圧縮タイプにgzを指定した場合は、Bodyデータをgzipにて圧縮し送信することができます。データ伸長し、拡張子に応じてJSON形式に変換した後に格納します。
2. 処理可能な最大データ長は、伸長後のデータ長で判断します。
3. 転送リソースによる転送、イベント発生時の付与データ、およびMQTT Subscriberへの通知は、伸長およびJSON形式に変換されたデータが通知されます。
2. Response
² 正常応答時
Parameters |
値 |
Status-Code |
200 OK |
Headers |
2.3.2節 参照 |
Body |
なし |
² エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
|
Method |
GET |
|
URI |
最新データの参照 |
<Base URL>/v1/<Tenant ID>/<リソースパス>/_present.<拡張子>?<QUERY> |
過去データの参照(*1) |
<Base URL>/v1/<Tenant ID>/<リソースパス>/_past(<登録日時>).<拡張子>?<QUERY> |
|
Headers |
2.3.1 節 参照 |
|
Body |
なし |
(*1) <登録日時>のデータが複数存在した場合、全てのデータを返却します。
² URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ参照対象のリソースパス |
M |
登録日時 |
参照対象データの登録日時(*2)。 |
M |
拡張子 |
以下を指定。省略時は「.」を含め省略します。 ・json |
O |
QUERY |
参照条件(後述)。省略時(?含む)は、条件なし(全て)として扱います。 |
O |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Zなど)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.」、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えてください。本サービスがレスポンスに格納する場合、UTCを用います。
1. URIパラメータのクエリに対し、上記一覧に記載がなく、かつ本章の他の要求(登録、検索、更新、削除)にて許容しているものを指定した場合には、エラーとならず無視します。許容されていないものは、解析失敗としてエラー応答します。
² QUERY一覧
書式 |
説明 |
$select=<選択key> |
<選択key>で指定されたフィールドのデータのみを返します。 ・<選択key>は、JSONでのname、XMLでの要素名、属性名に相当し、登録データ内の任意のkeyを指定できます。フィールドの階層は「.」で表現します。 ・<選択key>は「,」区切りで複数指定できます。 ・本サービスの管理データである、_date/_resource_path/_dataは<選択key>に使用できません。 例)$select=sensor.id,sensor.name,sensor.data.temp |
3. Response
² 正常応答時
Parameters |
値 |
|
Status-Code |
200 OK |
|
Headers |
Content-Type |
<拡張子>に従ったMIMEタイプ。 ・jsonの場合: application/json; charset=UTF-8 |
Body |
一致したリソースデータ |
|
² Body
以下の形式で、複数の登録済みデータを返却します。
Name |
Value |
_resource_path |
対象データのリソースパス |
_date |
対象データの登録日時(*1) |
_data |
JSON形式の登録済みのデータ |
(*1) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Zなど)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.」、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えてください。本サービスがレスポンスに格納する場合、UTCを用います。
² エラー応答時
1. 参照対象のリソースが存在しなかった場合、404 Not Foundを返します。
2. 条件に一致したリソースデータが存在しなかった場合、204 No Contentを返します。
3. 条件に一致したリソースデータ数が2以上でデータサイズの合計が16MBを超える場合、または、一致したリソースデータ数が1000を超える場合、400 Bad Requestを返します。
4. その他エラーについては、2.3.2 節参照
Request
Parameters |
値 |
|
Method |
GET |
|
URI |
データ本体の取得(*1) |
<Base URL>/v1/<Tenant ID>/<リソースパス(/$all 利用可)>/_past.<拡張子>?<QUERY> |
HIT数の取得 |
<Base URL>/v1/<Tenant ID>/<リソースパス(/$all 利用可)>/_past/_count?<QUERY> |
|
Headers |
2.3.1 節 参照 |
|
Body |
なし |
(*1) 検索結果として得られるデータの順番は、<リソースパス>および<登録日時>でソートします。
² URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス(/$all 利用可) |
検索対象のリソースパス。記述方法は後述します。 |
M |
拡張子 |
以下を指定。省略時は「.」を含め省略します。 ・json |
O |
QUERY |
検索条件(後述)。省略時(?含む)は、条件なし(全て)として扱います。 |
O |
(*1) M:必須、O:オプション
1. URIパラメータのクエリに対し、上記一覧に記載がなく、かつ本章の他の要求(登録、参照、更新、削除)にて許容しているものを指定した場合には、エラーとならず無視します。許容されていないものは、解析失敗としてエラー応答します。
² <リソースパス(/$all利用可)>の記述方法
1. 1)リソースパスをフルパスで指定:
Ø 指定したリソースパスのリソースデータを返却します。
2. 2)リソースパスの途中までを指定し、その後ろに「/$all」を付加:
Ø 指定したパス配下全てのリソースパスのリソースデータを返却します。
Ø 例
Ø 「AX」「A/B」「A/B/C」の3つのリソースが存在する状態で、「A/$all」を指定した場合、「A/B」および「A/B/C」の2つのリソースを対象とします。
Memo 対象テナント内全てのリソース_JSONを対象とした検索は以下で指定できますが、検索母数が多い場合タイムアウトするため非推奨です。 <テナントID>/$all/_past |
² $all にて複数のリソースパスを対象にする場合、リクエストのAuthorizationヘッダに格納するアクセスコードは、以下のいずれかを使用する必要があります。
1. 対象リソースパス全てに read 権を持つアクセスコードを使用する。
Ø 1つでも read 権のないリソースパスを含む場合、エラー応答( 401 Unauthorized )します。
2. 対象リソースパスの上位パスにhierarchy_get権を持つアクセスコードを使用する。
Ø hierarchy_get権を利用する際の$all指定は、リソースパスの途中までを指定し、その後ろに「$all」を付加してください。
Ø 「$all」のみが指定された場合、hieraachy_get権は利用されず、read権のみが利用されます。1つでもread権のないリソースパスを含む場合、エラー応答( 401 Unauthorized )します。
² QUERY一覧
書式 |
説明 |
$filter=<filter条件> |
<filter条件>に一致するもののみを返すよう、結果を限定します。 <filter条件>は、「プロパティ名 演算子 条件値」とし、and orで複数定義可能です。使用可能な演算子、プロパティ名は後述します。 |
$top=n |
検索結果として得られるデータをn件に限定します。最大取得件数は1000件です。 |
$skip=n |
検索結果として得られたデータをn件skipします。検索結果として得られるデータの順番は、第一ソートkey:<リソースパス>、第二ソートkey:<登録日時>でソートします。 |
$select=<選択key> |
<選択key>で指定されたフィールドのデータのみを返します。 ・<選択key>は、JSONでのnameに相当し、登録データ内の任意のnameを指定可能です。フィールドの階層は「.」で表現します。 ・<選択key>は「,」区切りで複数指定できます。 ・_date/_resource_path/_dataは<選択key>に使用できません。 例)$select=sensor.no,sensor.name,sensor.data.temp |
$orderby=<ソートkey> <ソート順> |
検索結果の並べ替え方式を指定します。 ・<ソートkey>は、並べ替え基準となる情報を指定します。以下のいずれかが指定可能です。 _resource_path _date ・<ソート順>は、並べ替え順を指定します。以下のいずれかが指定可能です。 asc : 昇順で並べ替えを行います。 desc : 降順で並べ替えを行います。 ・<ソートkey>と<ソート順>との間は、半角スペースを置きます。 ・<ソートkey> <ソート順>のペアは、「,」区切りで複数指定できます。 ・指定されなかった<ソートkey>における並べ替え順は不定です。 ・$orderbyが指定されなかった場合は、以下が指定されたものとして動作します。 $orderby=_resource_path asc,_date desc |
1. /_count が指定された場合、$top、$skip、$select、$orderbyは無視します。($filterのみ併用可能)
² filter条件の演算子
演算子 |
説明 |
例 |
eq |
等号 |
/temperature?$filter=Owner eq ‘Tom’ |
ne |
不等号 |
/temperature?$filter=Owner ne null |
gt |
より大きい |
/temperature?$filter=Floor1.Value gt 1000 |
ge |
以上 |
/temperature?&$filter=Floor1.Value ge 1000 |
lt |
より小さい |
/temperature?$filter=Floor1.Value lt 1000 |
le |
以下 |
/temperature?$filter=Floor1.Value le 1000 |
and |
論理積 |
/temperature?$filter=Floor1.Value ge 1000 and Owner eq ‘Tom’ |
or |
論理和 |
/temperature?$filter=Id eq 2 or Id eq 1 |
1. nullは、値が存在しないことを示します。
2. データのnameが階層構造になっている場合は、<name>.<name>で表現します。
3. (A eq 1 and B eq 1)or(A eq 2 and B eq 2)のような表現も可能です。
Ø ただしこの場合、()内に()は定義できません。例えば、((A eq 1 and B eq 1)or(A eq 2 and B eq 2))and(C eq 1)はエラーとなります。
4. 正規表現によるマッチングには対応していません。
5. 文字列はシングルクォートで囲みます。シングルクォートで囲まないものは数値とみなします。
6. JSON配列の内容を指定する場合は、<name>.<配列index>で表現します。配列indexは数字です。
例:
検索対象データ |
{ “Owners”:[ “Taro”, “Jiro” ] } |
filter条件指定例 |
$filter=Owners.0 eq ‘Taro’ |
Ø 配列内にオブジェクト構造があり、かつnameが数字のみで構成されている場合、配列index指定とnameの識別ができない場合があります。下記例を参考に配列indexとnameの双方を指定してください。
検索対象データ例:
① {“data”:[{“0”:“Taro”},{“0”:“Jiro”}]} ② {“data”:[{“0”:“Jiro”},{“0”:“Taro”}]} ③ {“data”:{“0”:“Taro”}} |
検索例:
filter指定条件 |
適合するデータ |
$filter=data.0 eq ‘Taro’ |
①、②、③ |
$filter=data.1.0 eq ‘Taro’ |
② |
² filter条件に利用可能なプロパティ名
プロパティ名 |
説明 |
備考 |
_date |
登録日時 |
検索対象データの登録日時(*1) ※_dateで条件指定する登録日時についてはシングルクォートを使って囲みません。 |
任意のname |
登録データに含まれる任意のname |
URIの非予約文字(「半角英数字」、「-」、「.」、「_」、「~」以外)はパーセントエンコードしてください。 |
(*1) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Zなど)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えてください。本サービスがレスポンスに格納する場合、UTCを用います。
4. Response
[データ本体(リソースデータ)の取得]
² 正常応答時
Parameters |
値 |
|
Status-Code |
200 OK |
|
Headers |
Content-Type |
application/json; charset=UTF-8 |
Body |
一致したリソースデータ |
|
1. Body
Ø 以下の形式で、複数の登録済みデータを返却します。形式は<拡張子>に従います。
Name |
Value |
_resource_path |
対象データのリソースパス |
_date |
対象データの登録日時(*1) |
_data |
<拡張子>に従った形式の、登録済みのデータ。 |
(*1) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Zなど)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えてください。本サービスがレスポンスに格納する場合、UTCを用います。
Ø 対象リソースに検索条件に合致するデータが存在しない場合、そのリソースに関するデータは返却しません。
² エラー応答時
1. 対象のリソースが存在しなかった場合、404 Not Foundを返します。
2. 条件に一致するリソースデータが存在しなかった場合、204 No Contentを返します。
3. 条件に一致したリソースデータ数が2以上でデータサイズの合計が16MBを超える場合、または、一致したリソースデータ数が1000を超える場合、400 Bad Requestを返します。
Ø この時、エラーレスポンスに受付可能なtop数として、acceptable_top=n をBodyに格納します。
4. その他エラーについては、2.3.2 節を参照ください。
[HIT数の取得]
² 正常応答時
Parameters |
値 |
|
Status-Code |
200 OK |
|
Headers |
Content-Type |
text/plain |
Body |
一致したリソースデータ数 |
|
1. Body
Ø 一致したリソースデータ数をそのまま返却します。
² エラー応答時については、2.3.2 節を参照ください。
Request
Parameters |
値 |
|
Method |
PUT |
|
URI |
過去データの更新(*1) |
<Base URL>/v1/<Tenant ID>/<リソースパス>/_past(<登録日時(旧)>).<拡張子>.<圧縮タイプ>?$newdate=<登録日時(新)> &$charset=<Bodyデータ文字コード>&$skip=<Bodyデータ削除指定行>&$numconv=<数値変換> |
Headers |
2.3.1 節 参照 |
|
Body |
更新対象データ |
|
(*1) 同じ登録日時を持つデータが複数存在した場合、ひとつのみ更新(どのデータになるかは不定)されます。
² URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ更新対象のリソースパス |
M |
拡張子 |
以下のいずれかを指定します。省略時は「.」を含め省略し、この場合はjsonが指定されたものとみなします。 ・json ・csv ・txt ・bin |
O |
圧縮タイプ |
Bodyデータを圧縮して送信する際の圧縮タイプを以下で指定します。省略時は「.」を含め省略し、この場合はBodyデータが無圧縮とみなします。 ・gz |
O |
登録日時(旧) |
更新対象データの登録日時(*2) |
M |
登録日時(新) |
更新後の登録日時(*2) 省略可($newdate=含む)で、省略時は登録日時を更新しません。 ・既に指定登録日時のデータが存在するかどうかはチェックせず、上書きを行います。 |
O |
Bodyデータ文字コード |
Bodyデータの文字コードを指定します。拡張子がcsv、txtの場合に限り有効です。 ・utf-8 :UTF-8 ・shift_jis :Shift-JIS utf-8時は省略可($charset=含む) |
O |
Bodyデータ削除指定行 |
Bodyデータの先頭から削除する行数を指定します。拡張子がcsvの場合に限り有効です。省略することができ($skip=含む)、この場合は行削除を行いません。 |
O |
数値変換 |
Bodyデータ中の数値を文字列に変換するか否かを指定します。拡張子がcsvの場合に限り有効です。 ・true :数値変換します。 ・false :数値変換しません。 true時は省略可($numconv=含む) |
O |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Zなど)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えてください。本サービスがレスポンスに格納する場合、UTCを用います。
l URIパラメータのクエリに対し、上記一覧に記載がなく、かつ本章の他の要求(登録、参照、検索、削除)にて許容しているものを指定した場合には、エラーとならず無視します。許容されていないものは、解析失敗としてエラー応答します。
² HTTPヘッダ
Headers |
値 |
説明 |
M/O(*1) |
Content-Type |
・拡張子がjsonまたは省略の場合 application/json; charset=UTF-8 |
固定 |
O |
・拡張子がcsvの場合 text/csv; charset=<charset> <charset>は以下のいずれか。 ・UTF-8 ・Shift_JIS |
|||
・拡張子がtxtの場合 text/plain; charset=<charset> <charset>は以下のいずれか ・UTF-8 ・Shift_JIS |
|||
・拡張子がbinの場合 BodyのMIMEタイプ |
|||
・圧縮タイプがgzの場合(拡張子は任意) application/gzip または application/x-gzip |
|||
x-iotpf-request-id |
リクエスト識別ID(任意文字列)(*2) |
本サービス内および通信先の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。 |
O |
(*1) M:必須、O:オプション
(*2) 値に「-」のみが設定された場合は、ヘッダ設定無しと扱います。
² Body
拡張子に従った形式の、登録対象のデータです。詳細は3.1節を参照ください。
Ø JSONの場合、配列([ ])での開始は許容しません。
Response
正常応答時
Parameters |
値 |
Status-Code |
200 OK |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
|
Method |
DELETE |
|
URL |
過去データの削除 |
<Base URL>/v1/<Tenant ID>/<リソースパス>/_past?<QUERY> |
Headers |
2.3.1 節、および下記参照 |
|
Body |
なし |
|
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ削除対象のリソースパス |
M |
QUERY |
削除条件(後述)。 |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
説明 |
M/O(*1) |
x-iotpf-request-id |
リクエスト識別ID(任意文字列)(*2) |
本サービス内の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。 |
O |
(*1) M:必須、O:オプション
(*2) 値に「-」のみが設定された場合は、ヘッダ設定無しと扱います。
QUERY一覧
書式 |
説明 |
$filter=<filter条件> |
<filter条件>に一致するもののみを削除するよう、結果を限定します。<filter条件>は、「プロパティ名 演算子 条件値」とし、and orで複数定義可能です。使用可能な演算子、プロパティ名は後述します。 |
1. URIパラメータのクエリに対し、上記一覧に記載がなく、かつ本章の他の要求(登録、参照、検索、更新)にて許容しているものを指定した場合には、エラーとならず無視します。許容されていないものは、解析失敗としてエラー応答します。
filter条件の演算子
3.3 節を参照ください。
filter条件に利用可能なプロパティ名
3.3 節を参照ください。
Response
正常応答時
Parameters |
値 |
Status-Code |
200 OK |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
リソース_JSON及びリソース(転送)_JSONの制御が行えるMQTTのインターフェースの一覧を以下に示します。
表 7:データ蓄積/参照インターフェース一覧
プロトコル |
種別 |
用途 |
章 |
MQTT |
リソースへのデータ登録 |
リソースに対して新たにデータを追加登録(転送)します。 [オプション] ・なし: 本サービスでの受信日時でデータを登録 ・日時指定: 指定された日時でデータを登録 |
4.1章 |
リソースデータの参照 |
リソースに登録されるデータを参照します。
|
4.2章 |
Request
Parameters |
値 |
|
メッセージタイプ |
PUBLISH |
|
Topic |
データ蓄積 |
<アクセスコード>/v1/<Tenent ID>/<リソースパス> |
データ転送 |
<アクセスコード>/v1/<Tenent ID>/_fwd/<リソースパス> |
|
他固定ヘッダおよび可変ヘッダ |
2.5.1節 参照 |
|
ペイロード |
本サービスヘッダ用および、登録対象データ Header名と値は「<Header名>: <値><CRLF>」形式で記述します。 本サービス用ヘッダの終了「<CRLF><CRLF>」にて判定するものとし、[<CRLF>]は、Headerのものを含みます。 本サービス用ヘッダは省略することができます。 |
本サービス用ヘッダ
Headers |
値 |
M/O(*1) |
Date |
<登録日時> |
O |
x-iotpf-request-id |
<リクエスト識別ID(任意文字列)>(*2) |
O |
(*1) M:必須、O:オプション
(*2) 本サービス内の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。
パラメータ
パラメータ名 |
説明 |
M/O(*1) |
アクセスコード |
アクセス権限を表す文字列。管理者から入手します。 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ登録対象のリソースパス |
M |
登録日時 |
登録対象データに付与する登録日時(*2)。 省略可で、省略時は本サービスでのリクエスト受信日時を採用します。 ・既に指定登録日時のデータが存在するかどうかはチェックせず、上書きを行います。 |
O |
リクエスト識別ID |
本サービス内および通信先の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。 値に「-」のみが設定された場合は、設定無しと扱います。 |
O |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
登録対象のデータ
1. JSON形式の任意のデータ
Ø 配列([ ])での開始は許容しません。
Ø メンバーの順序性は保証せず、登録時の並びで参照できるとは限りません。
Ø 重複したnameを持つメンバは保存しません。
Response
QoSレベルに応じたメッセージ(なし/PUBACKメッセージ/PUBRECメッセージ)
MQTTでのリソースデータの参照では、SUBSCRIBEメッセージを使用します。
対象のTopic(リソースパス)をSUBSCRIBEしておくことで、以下のメッセージをMQTT PUBLISHにて受信することが可能です。
プロトコル |
操作 |
SUBSCRIBEによる受信 |
Retainオプション |
REST |
リソースデータの登録 |
○(*1) |
○ |
リソースデータの参照 |
× |
― |
|
リソースデータの更新 |
× |
― |
|
リソースデータの削除 |
× |
― |
|
MQTT |
リソースデータの登録 |
○ |
○ |
リソースデータの参照 |
× |
― |
(*1) Bulk Insertにて登録されたデータは、MQTT PUBLISHにて受信することはできません。
Request
Parameters |
値 |
メッセージタイプ |
SUBSCRIBE |
固定ヘッダおよび可変ヘッダ |
2.5.1節 参照 |
ペイロード |
Topic名 「<アクセスコード>/v1/<Tenant ID>/<リソースパス>」 または 「<アクセスコード>/v1/<Tenant ID>/_fwd/<リソースパス> のリスト |
パラメータ
パラメータ名 |
説明 |
M/O(*1) |
アクセスコード |
アクセス権限を表す文字列。管理者から入手します。 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ登録対象のリソースパス |
M |
(*1) M:必須、O:オプション
Response
SUBACKメッセージ
リソース_Binaryに対するデータ蓄積/リソースのデータ参照インターフェース一覧を以下に示します。
表 8:データ蓄積/参照インターフェース一覧
プロトコル |
種別 |
用途 |
章 |
REST |
リソースへのデータ登録 |
リソースに対して新たにデータを追加登録します。 [オプション] ・なし: 本サービスでの受信日時でデータを登録 ・日時指定: 指定された日時でデータを登録 |
5.1章 |
リソースデータの参照 |
リソースに登録済みのデータの実体を参照します。 [オプション] ・なし: 最新データを返します ・日時指定: 指定日時のデータを返します |
5.2章 |
|
リソースデータの検索 |
リソースに登録済みのデータを、条件を指定して検索します。検索結果として、HITした登録済みデータの情報を返します。 (検索できるのはメタデータのみです。登録したデータの実体は検索できません。) [オプション] ・QUERYにて、検索条件を指定できます |
5.3章 |
|
リソースデータの削除 |
リソースに登録済みのデータを削除します [オプション] ・QUERYにて、削除条件を指定できます |
5.5章 |
² REST/MQTTの連携動作ついて
「リソース_Binary」においてはRESTで登録したリソースデータをMQTTのSUBSCRIBEにより参照することはできません。
Request
Parameters |
値 |
|
Method |
PUT |
|
URI |
データ蓄積 |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス>?$date=<登録日時> |
Headers |
2.3.1 節 及び、下記を参照ください。 |
|
Body |
登録対象データ |
|
Memo IoT Platformのデータ登録では、「存在するリソースにデータを格納する」という考え方から、MethodにPUTを使用する仕様です。リソースへのPOST Methodは「リソースの作成(7.1 リソースの登録)」にて使われます。 |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ登録対象のリソースパス |
M |
登録日時 |
登録対象データに付与する登録日時(*2)。 省略できます($date=含む)。省略時は本サービスにおけるリクエスト受信日時を採用します。 すでに指定登録日時のデータが存在する場合、上書き登録を行います。 |
O |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
BodyのMIMEタイプ |
各リソースデータのメタデータとして管理し、レスポンスに付与します |
O |
x-iotpf-meta-data1 |
任意のメタデータ |
各リソースデータのメタデータとして管理し、レスポンスに付与します |
O |
x-iotpf-request-id |
リクエスト識別ID(任意文字列)(*2) |
本サービス内の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。 |
O |
(*1) M:必須、O:オプション
(*2) 値に「-」のみが設定された場合は、ヘッダ設定無しと扱います。
Body
1. 登録対象のデータ。
Ø 最大サイズ: 100MB
Ø RESTにて登録したBinaryデータは、MQTTでは参照できません。
Response
正常応答時
Parameters |
値 |
Status-Code |
200 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
|
Method |
GET |
|
URI |
最新データの参照 |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス>/_present |
過去データの参照 |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス>/_past(<登録日時>) |
|
Headers |
2.3.1 節 参照 |
|
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ参照対象のリソースパス |
M |
登録日時 |
参照対象データの登録日時(*2)。 |
M |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
Response
正常応答時
Parameters |
値 |
説明 |
||
Status-Code |
200 |
成功(全体取得) |
||
206 |
成功(部分取得) |
|||
Headers |
field name |
Value |
M/O(*1) |
|
Content-Type |
BodyのMIMEタイプ。 リソースデータ登録時に指定した値を設定します。 リソースデータ登録時に指定しなかった場合、「application/octet-stream」を設定します。 |
M |
||
x-iotpf-meta-data1 x-iotpf-meta-data2 x-iotpf-meta-data3 |
メタデータ。 リソースデータ登録時に設定した場合に付与します。 |
O |
||
Body |
データ本体 |
|||
(*1) M:必須、O:オプション
エラー応答時
1. 参照対象のリソースが存在しなかった場合、404を返します。
2. 条件に一致したリソースデータが存在しなかった場合、204を返します。
3. その他エラーについては、2.3.2 節を参照ください。
Request
Parameters |
値 |
|
Method |
GET |
|
URI |
データリストの取得(*1) |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス($all利用可)>/_past?<QUERY> |
HIT数の取得 |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス($all利用可)>/_past/_count?<QUERY> |
|
Headers |
2.3.1 参照 |
|
Body |
なし |
(*1) 検索結果として得られるデータの順番は、<登録日時>でソートします。
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
検索対象のリソースパス。記述方法は後述します。 |
M |
QUERY |
検索条件(後述)。省略時(?含む)は、条件なし(全て)として扱います。 |
O |
(*1) M:必須、O:オプション
<リソースパス(/$all利用可)>の記述方法
1. 1)リソースパスをフルパスで指定:
Ø 指定したリソースパスのリソースデータ情報を返却します。
2. 2)リソースパスの途中までを指定し、その後ろに「/$all」を付加:
Ø 指定したパス配下全てのリソースパスのリソースデータ情報を返却します。
Ø 例
Ø 「AX」「A/B」「A/B/C」の3つのリソースが存在する状態で、「A/$all」を指定した場合、「A/B」および「A/B/C」の2つのリソースを対象とします。
Ø 対象テナント内の全てのBinaryリソースを対象にする場合、次の通り設定します。
Ø <テナントID>/_bin/$all/_past
$all にて複数のリソースパスを対象にする場合、リクエストのAuthorizationヘッダに格納するアクセスコードは、以下のいずれかを使用する必要があります。
1. 対象リソースパス全てに read 権を持つアクセスコードを使用する。
Ø 1つでも read 権のないリソースパスを含む場合、エラー応答( 401 )します。
2. 対象リソースパスの上位パスにhierarchy_get権を持つアクセスコードを使用する。
Ø hierarchy_get権を利用する際の$all指定は、リソースパスの途中までを指定し、その後ろに「$all」を付加してください。
Ø 「$all」のみが指定された場合、hieraachy_get権は利用されず、read権のみが利用されます。1つでもread権のないリソースパスを含む場合、エラー応答( 401 )します。
QUERY一覧
書式 |
説明 |
$filter=<filter条件> |
<filter条件>に一致するもののみを返すよう、結果を限定します。 <filter条件>は、「プロパティ名 演算子 条件値」とし、andで複数定義可能。使用可能な演算子、プロパティ名は後述します。 |
$top=n |
検索結果として得られるデータをn件に限定します。 最大取得件数は1000件です。 |
$skip=n |
検索結果として得られたデータをn件skipします。検索結果として得られるデータの順番は、第一ソートkey:<リソースパス>、第二ソートkey:<登録日時>でソートします。 |
1. /_count が指定された場合、$top、$skipは無視する($filterのみ併用可能)
filter条件の演算子
演算子 |
説明 |
例 |
eq |
等号 |
/image?$filter=_date eq 20160101T000000.001Z |
gt |
より大きい |
/image?$filter=_date gt 20160101T000000.001Z |
ge |
以上 |
/image?$filter=_date ge 20160101T000000.001Z |
lt |
より小さい |
/image?$filter=_date lt 20160101T000000.001Z |
le |
以下 |
/image?$filter=_date le 20160101T000000.001Z |
and |
論理積 |
/image?$filter=_date ge 20160101T000000.001Z and _date le 20160529T101010.001Z |
1. andは上記例ののように、一度のみ使用できます。
filter条件に利用可能なプロパティ名
プロパティ名 |
説明 |
備考 |
_date |
登録日時 |
検索対象データの登録日時(*1) ※_dateで条件指定する登録日時についてはシングルクォートで囲みません |
(*1) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
Response
[データリストの取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
application/json; charset=UTF-8 |
Body |
一致したリソースデータのメタデータ情報 |
|
1. Body
Ø 以下の形式で、複数の登録済みデータの情報をJSON形式で返却します。
Name |
Value |
M/O(*1) |
name |
リソースデータの名前。URIのパスで表現。 _bin/<リソースパス>/_past(<登録日時>) |
M |
content_type |
リソースデータのMIMEタイプ。 リソースデータ登録時に指定したContent-Typeを設定。リソースデータ登録時に未指定の場合は、「application/octet-stream」を設定します |
M |
(*1) M:必須、O:オプション
Ø 対象リソースに検索条件に合致するデータが存在しない場合、そのリソースに関するデータは返却しません
エラー応答時
1. 対象のリソースが存在しなかった場合、404を返します。
2. 条件に一致するリソースデータが存在しなかった場合、204を返します
3. 条件に一致したリソースデータ数が1000を超える場合、400を返します。
Ø この時、エラーレスポンスに受付可能なtop数として、acceptable_top=n をBodyに格納します
4. その他エラーについては、2.3.2 節参照
[HIT数の取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
text/plain; charset=UTF-8 |
Body |
一致したリソースデータ数 |
|
1. Body
Ø 一致したリソースデータ数をそのまま返却します。
エラー応答時については、2.3.2 節を参照ください。
リソース_Binaryを更新するためのインターフェースはありません。
ただし、5.1節にあるリソース_Binaryのデータ登録を用い、既に登録をした同時刻を指定して登録することにより、上書き更新が可能です。
Request
Parameters |
値 |
|
Method |
DELETE |
|
URI |
過去データの削除 |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス>/_past?<QUERY> |
Headers |
2.3.1節 参照 |
|
Body |
なし |
|
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ削除対象のリソースパス |
M |
QUERY |
削除条件(後述)。 |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
x-iotpf-request-id |
リクエスト識別ID(任意文字列)(*2) |
本サービス内の影響でリクエストが欠損した場合に出力するエラー情報に利用されます。エラー情報は11.3節を参照ください。 |
O |
(*1) M:必須、O:オプション
(*2) 値に「-」のみが設定された場合は、ヘッダ設定無しと扱います。
QUERY一覧
書式 |
説明 |
$filter=<filter条件> |
<filter条件>に一致するもののみを削除するよう、結果を限定します。<filter条件>は、「プロパティ名 演算子 条件値」とし、andで複数定義できます。使用可能な演算子、プロパティ名は後述します。 |
filter条件の演算子
3.3 節 参照
filter条件に利用可能なプロパティ名
3.3 節 参照
Response
正常応答時
Parameters |
値 |
Status-Code |
200 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
リソース_Binaryへのデータ蓄積/リソースのデータ参照インターフェース一覧を以下に示します。
表 9:データ蓄積/参照インターフェース一覧
プロトコル |
種別 |
用途 |
章 |
MQTT |
リソースへのデータ登録 |
リソースに対して新たにデータを追加登録します。 |
6.1章 |
リソースデータの参照 |
リソースに登録されるデータを参照します。 |
6.2章 |
Request
Parameters |
値 |
メッセージタイプ |
PUBLISH |
Topic |
<アクセスコード>/v1/<Tenent ID>/_bin/<リソースパス> |
他固定ヘッダおよび可変ヘッダ |
2.5.1節 参照 |
ペイロード |
登録対象データ |
パラメータ
パラメータ名 |
説明 |
M/O(*1) |
アクセスコード |
アクセス権限を表す文字列。管理者から入手します。 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ登録対象のリソースパス |
M |
(*1) M:必須、O:オプション
登録対象のデータ
1. 最大サイズ: 16MB
Response
QoSレベルに応じたメッセージ(なし/PUBACKメッセージ/PUBRECメッセージ)
MQTTでのリソースデータの参照では、SUBSCRIBEメッセージを使用します。
対象のTopic(リソースパス)をSUBSCRIBEしておくことで、以下のメッセージをMQTT PUBLISHにて受信することが可能です。
※REST IFにて登録したBinaryデータは、MQTTでは参照できません。
プロトコル |
操作 |
SUBSCRIBE による受信 |
Retain オプション |
REST |
リソースデータの登録 |
× |
― |
リソースデータの参照 |
× |
― |
|
リソースデータの更新 |
× |
― |
|
リソースデータの削除 |
× |
― |
|
MQTT |
リソースデータの登録 |
○ |
○ |
リソースデータの参照 |
× |
― |
Request
Parameters |
値 |
メッセージタイプ |
SUBSCRIBE |
固定ヘッダおよび可変ヘッダ |
2.5.1節 参照 |
ペイロード |
Topic名「<アクセスコード>/v1/<Tenent ID>/_bin/<リソースパス>」のリスト |
パラメータ
パラメータ名 |
説明 |
M/O(*1) |
アクセスコード |
アクセス権限を表す文字列。管理者から入手する。 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
データ登録対象のリソースパス |
M |
(*1) M:必須、O:オプション
Response
SUBACKメッセージ
リソース制御が行えるインターフェースの一覧を以下に示します。
リソース制御APIを利用するにはリソース及びアクセスコードをサービスポータルにて事前に設定する必要があります。2.2節を参照願います。
表 10:リソース制御インターフェース一覧
種別 |
用途 |
章 |
リソースの登録 |
リソースを新規に登録する。 [オプション] ・Bodyなし: リソースのみ作成 ・Bodyにメタデータ格納: リソース登録時にメタデータの初期設定を行う |
7.1章 |
リソースの メタデータ参照 |
リソースのメタデータを参照する。 [オプション] ・リソースパスの一部を$allで指定: 指定パス配下のリソースのメタデータを返す |
7.2章 |
リソースの メタデータ更新 |
リソースのメタデータを更新する。 [オプション] なし |
7.3章 |
リソースの削除 |
リソースを削除する。 [オプション] なし |
7.4章 |
Request
Parameters |
値 |
||
Method |
POST |
||
URI |
JSON |
蓄積 |
<Base URL>/v1/<Tenant ID>/<リソースパス> |
転送 |
<Base URL>/v1/<Tenant ID>/_fwd/<リソースパス> |
||
Binary |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス> |
||
Headers |
2.3.1 節 および下記参照 |
||
Body |
メタデータ |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
登録対象のリソースパス |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
application/json; charset=UTF-8 |
固定 |
O |
(*1) M:必須、O:オプション
Body
次の通り、JSON形式でメタデータを格納することでメタデータの初期化ができます。
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
||||
resource |
― |
M |
開始タグ |
― |
||||
|
retention_period |
数値 |
O(*2) |
リソースデータの保存期間(日) ・設定されていない場合、保存期間は1日とします。 ・値の範囲は1~9999 |
9999 |
|||
|
fwd_info |
― |
O(*3) |
転送先情報 |
― |
|||
|
|
http |
― |
M |
HTTPの転送先情報 |
― |
||
|
|
|
method |
string |
M |
“GET”,“POST”,“PUT”,“DELETE”,“HEAD”,“OPTIONS”,“TRACE”のいずれか |
7文字 |
|
|
|
|
uri |
string |
M |
URI。 “http://~”または“https://~” |
256文字 |
|
|
|
|
basic_auth_id |
string |
O |
Basic認証用のID |
20文字 |
|
|
|
|
basic_auth_pass |
string |
O |
Basic認証用のパスワード |
20文字 |
|
|
|
|
header_fields |
― (配列) |
O |
HTTPヘッダ (配列の要素は最大10個) |
― |
|
|
|
|
|
field_name |
string |
M |
ヘッダフィールド名。“:”は含みません。 |
20文字 |
|
|
|
|
field_value |
string |
M |
上記ヘッダフィールドに格納する値 |
512文字 |
(*1) M:必須、O:オプション。各子要素のM/Oは、親要素を設定した場合の要否を表します。
(*2) リソース_JSON、リソース_Binaryの場合に限り有効です。
(*3) 対象リソースがJSON形式の転送リソースの場合のみ設定できます。
Response
正常応答時
Parameters |
値 |
|
Status-Code |
201 |
|
Headers |
Location |
<Base URL>/v1/<Tenant ID>/<リソースパス> or <Base URL>/v1/<Tenant ID>/_fwd/<リソースパス> or <Base URL>/v1/<Tenant ID>/_bin/<リソースパス> |
Body |
なし |
|
エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
|||
Method |
GET |
|||
URI |
データリストの取得 |
JSON |
蓄積 |
<Base URL>/v1/<Tenant ID>/<リソースパス(/$all) >/_resources?<QUERY> |
転送 |
<Base URL>/v1/<Tenant ID>/_fwd/<リソースパス(/$all)>/_resources?<QUERY> |
|||
バイナリ |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス(/$all)>/_resources?<QUERY> |
|||
HIT数の取得 |
JSON |
蓄積 |
<Base URL>/v1/<Tenant ID>/<リソースパス(/$all) >/_resources/_count?<QUERY> |
|
転送 |
<Base URL>/v1/<Tenant ID>/_fwd/<リソースパス(/$all)>/_resources/_count?<QUERY> |
|||
バイナリ |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス(/$all)>/_resources/_count?<QUERY> |
|||
Headers |
2.3.1 節 参照 |
|||
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
QUERY |
参照条件(後述)。省略時(?含む)は、条件なし(全て)として扱う。 |
O |
(*1) M:必須、O:オプション
<リソースパス(/$all)>の記述方法
1. リソースパスをフルパスで指定:
Ø 指定したリソースパスのメタデータを返却します。
2. リソースパスの途中までを指定し、その後ろに「/$all」を付加:
Ø 指定したパス配下全てのリソースパスのメタデータを返却します。
Ø 例
Ø 「A」「AX」「A/B」「A/B/C」の4つのリソースが存在する状態で、「A/$all」を指定した場合、「A/B」および「A/B/C」の2つのリソースを対象とします。
Ø 各リソース種別の全てのリソースパスを対象にする場合、次の通り設定します。
Ø リソース_JSON: <テナントID>/$all/_resources
Ø リソース(転送)_JSON: <テナント ID>/_fwd/$all/_resources
Ø リソース_Binary: <テナント ID>/_bin/$all/_resources
※異なるリソース種別のリソースパスを一度に参照することはできません。
QUERY一覧
書式 |
説明 |
$top=n |
検索結果として得られるデータをn個に限定します(最大値は1,000) |
$skip=n |
検索結果として得られたデータをn件skipします。検索結果として得られるデータの順番は、リソースパスにてソートします。 |
1. /_count が指定された場合、$top、$skipは無視する
Response
[データリストの取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
application/json; charset=UTF-8 |
Body |
対象リソースのメタデータ(複数) |
|
1. Body
Ø 次の通り、各リソースのメタデータをJSONオブジェクトとし、JSON配列形式で複数格納します。
Ø 各リソースの情報は、リソースパスでソートします(昇順)
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|||||
resources |
― |
M |
開始タグ |
― |
|||||
|
resource_path |
string |
M |
リソースパス |
128文字 |
||||
|
retention_period |
数値 |
O |
リソースデータの保存期間 ・設定されていない場合、保存期間は1日とします。 ・値は1~9999とします。 |
9999 |
||||
|
last_modified |
日時 |
M |
最新データの<登録日時>(*2)(*3) |
20文字 |
||||
|
fwd_info |
― |
O(*4) |
転送先情報 |
― |
||||
|
|
http |
― |
M |
HTTPの転送先情報 |
― |
|||
|
|
|
method |
string |
M |
“GET”,“POST”,“PUT”,“DELETE”,“HEAD”,“OPTIONS”,“TRACE”のいずれか。 |
6文字 |
||
|
|
|
uri |
string |
M |
URI。 “http://~”または“https://~” |
256文字 |
||
|
|
|
basic_auth_id |
string |
O |
Basic認証用のID |
20文字 |
||
|
|
|
basic_auth_pass |
string |
O |
Basic認証用のパスワード |
20文字 |
||
|
|
|
header_fields |
― (配列) |
O |
HTTPヘッダ (配列の要素は最大10個まで設定できます) |
― |
||
|
|
|
|
field_name |
string |
M |
ヘッダフィールド名。“:”は含まない。 |
20文字 |
|
|
|
|
|
field_value |
string |
M |
上記ヘッダフィールドに格納する値 |
512文字 |
|
(*1) M:必須、O:オプション。各子要素のM/Oは、親要素を設定した場合の有無を表します。
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
(*3) リソースデータ登録/更新にて<登録日時>を指定できるため、サーバの最終更新日時と最新データの<登録日時>は一致しないケースがあります。
(*4) 対象リソースがJSON形式の転送リソースの場合のみ設定します。
Ø パラメータに設定値がない場合、そのパラメータはレスポンスに格納されません。
Ø リソース内にデータが存在しない場合、last_modifiedパラメータも格納されません。
Ø リクエストのAuthorizationヘッダに指定されるアクセスコードが、対象となるリソースへのlist権持っていない場合、参照することはできません。
エラー応答時
1. 条件に一致するリソースが1つも存在しなかった場合、404 を返します。
2. 条件に一致したリソース数が1000を超える場合、400 を返します。このときのエラーレスポンスのBody部に、受付可能なtop数としてacceptable_top=<n>を格納します。
3. その他エラーについては、2.3.2 節を参照ください。
[HIT数の取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
text/plain |
Body |
一致したリソース数 |
|
1. Body
Ø 一致したリソース数をそのまま返却します。
Ø リクエストのAuthorizationヘッダに格納したアクセスコードが list 権限を持たないリソースは、カウント対象としません。
エラー応答時については、2.3.2節を参照ください。
Request
Parameters |
値 |
||
Method |
PUT |
||
URI |
JSON |
蓄積 |
<Base URL>/v1/<Tenant ID>/<リソースパス>/_resources |
転送 |
<Base URL>/v1/<Tenant ID>/_fwd/<リソースパス>/_resources |
||
バイナリ |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス>/_resources |
||
Headers |
2.3.1 節 および下記参照 |
||
Body |
メタデータ |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
メタデータ更新対象のリソースパス |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
application/json; charset=UTF-8 |
固定 |
O |
(*1) M:必須、O:オプション
Body
1. 7.1節を参照ください。
2. 対象リソースのメタデータを、更新データで全て上書きします。
Ø 更新前に設定パラメータとしてA,Bが登録されており、更新でAだけを指定した場合、Bは削除指示と判断してBを削除します。
Response
正常応答時
Parameters |
値 |
Status-Code |
200 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
||
Method |
DELETE |
||
URI |
JSON |
蓄積 |
<Base URL>/v1/<Tenant ID>/<リソースパス> |
転送 |
<Base URL>/v1/<Tenant ID>/_fwd/<リソースパス> |
||
バイナリ |
<Base URL>/v1/<Tenant ID>/_bin/<リソースパス> |
||
Headers |
2.3.1 節 参照 |
||
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節参照 |
M |
Tenant ID |
リソース所有テナントの識別子 |
M |
リソースパス |
削除対象のリソースパス |
M |
(*1) M:必須、O:オプション
Response
正常応答時
Parameters |
値 |
Status-Code |
204 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時
1. 削除対象リソースにアクセスコードが紐付いていた場合削除できません。この場合、423を返却します。
2. その他エラーについては 2.3.2 節を参照ください。
アクセスコード制御のインターフェースを以下に示します。プロトコルは全てREST(HTTP)とします。
表 11:アクセスコード制御インターフェース一覧
種別 |
用途 |
章 |
アクセスコードの登録 |
アクセスコードを新規登録します。 [オプション] なし |
8.1章 |
アクセスコード情報の参照 |
アクセスコードの情報を参照(検索)します。 [検索オプション] ・アクセスコード指定 ・リソースパス指定(前方一致検索可) |
8.2章 |
アクセスコード情報の更新 |
アクセスコードの情報を更新します。 [オプション] なし |
8.3章 |
アクセスコードの削除 |
アクセスコードを削除します。 [オプション] なし |
8.4章 |
Request
Parameters |
値 |
Method |
POST |
URI |
<Base URL>/v1/<Tenant ID>/_access_codes/<Access Code> |
Headers |
2.3.1 節、及び下記を参照ください。 |
Body |
アクセスコード情報 |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
Access Code |
アクセスコード |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
application/json; charset=UTF-8 |
固定 |
M |
(*1) M:必須、O:オプション
Body: アクセスコード情報
次の通り、JSON形式でアクセスコード情報を登録します。
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|||
access_code |
― |
M |
開始タグ |
― |
|||
|
permissions |
― |
M |
権限情報 |
― |
||
|
|
ip_filter |
string (配列) |
O |
サービスポータルで定義したアクセス制限(アクセスコード)設定のIPアドレス範囲情報を指定してください。未定義のIPアドレス範囲情報を設定した場合、エラーレスポンス(400)を返却します。 ・[“開始IPアドレス”,“終了IPアドレス”]の形式で2つのIPアドレスを指定できます。 ・1つのIPアドレスを設定する場合、開始IPアドレスと終了IPアドレスを同じアドレスにしてください。 ・「開始IPアドレス>終了IPアドレス(IPアドレスを32bitとみなして比較した場合)」となる設定はできません。 |
35文字 |
|
|
|
resource_operations |
― (配列) |
M |
リソースに紐づく権限情報 |
|
|
|
|
|
resource_path
|
string |
M |
リソースパス |
128文字 |
|
|
|
operations |
string (配列) |
M |
“hierarchy_get”、“hierarchy_put”、“create”、“read”、“update”、“delete”、“list”のいずれか。配列で複数指定できます。 |
72文字 |
|
certification_info |
― |
O |
クライアント証明書情報 |
|
||
|
|
certification |
string |
M |
クライアント証明書 ・PEM形式 「-----BEGIN CERTIFICATE-----」, 「-----END CERTIFICATE-----」を含めてください。また、改行コードは「\n」として登録してください。 |
10000文字 |
|
|
|
certificate_usage |
string |
M |
クライアント証明書の利用用途。 以下を指定してください。 ・auth:クライアント認可で使用する。 |
4文字 |
|
|
protocols |
string (配列) |
O |
プロトコル指定情報 “http”、“https”、“mqtt”、“mqtts”のいずれか。配列で複数指定できます。 |
29文字 |
(*1) M:必須、O:オプション。各子要素のM/Oは、親要素を設定した場合の要否を表します。
1. 権限割り当てのないアクセスコード情報の登録はエラーとします。
Ø すなわち、resource_operationsに1つ以上のresource_path、operationsを設定する必要があります。最大1000組設定できます。
Ø 設定可能な権限設定パターンを以下の表に示します。
|
権限 |
||||
パターン |
create |
read, hierarchy_get(*1) |
update, hierarchy_put(*1) |
delete |
list
|
1 |
○ |
○ |
○ |
○ |
○ |
2 |
○ |
○ |
|
○ |
○ |
3 |
○ |
|
○ |
○ |
○ |
4 |
○ |
|
|
○ |
○ |
5 |
|
○ |
○ |
|
○ |
6 |
|
○ |
|
|
○ |
7 |
|
|
○ |
|
○ |
8 |
|
|
|
|
○ |
9 |
|
○ |
○ |
|
|
10 |
|
○ |
|
|
|
11 |
|
|
○ |
|
|
(*1) どちらか、または両方の権限を設定できます。
2. create/delete/list/hierarchy_get/hierarchy_putは、指定したリソースパス配下全てのリソースパスへの権限として扱います。
3. create/delete/list/hierarchy_get/hierarchy_put権を、階層の異なるパスに設定した場合、より上位パスの権限に従って動作します。
Ø 例:
リソースパス「A/B」に create,delete,list,hierarchy_get.hierarchy_put
権、
リソースパス「A/B/C」に list 権のみを設定した場合、
リソースパス「A/B/C/D」には、create,delete,list,hierarychy_get,hierarchy_putが可能
4. certification_infoを設定する場合には、certification、certificate_usageの両方の設定が必ず必要です。ない場合にはエラー応答(400)を返します。
5. protocolsの設定について、以下に説明します。
パターン |
動作 |
“protocols”のメンバなし |
全てのプロトコルが指定されたものと解釈します。 |
“protocols”のメンバは存在するが、値がない。 ・”protocols”:[ ] ・”protocols”:[“”] |
フォーマットエラーとしてエラー応答(400)します。 |
Response
正常応答時
Parameters |
値 |
|
Status-Code |
201 |
|
Headers |
Location |
<Base URL>/v1/<Tenant ID>/_access_codes/<Access Code> |
Body |
なし |
|
エラー応答時については、2.3.2節を参照ください。
Request
Parameters |
値 |
|
Method |
GET |
|
URI |
データリストの取得 |
<Base URL>/v1/<Tenant ID>/_access_codes/<Access Code>?<QUERY> |
HIT数の取得 |
<Base URL>/v1/<Tenant ID>/_access_codes/<Access Code>/_count?<QUERY> |
|
Headers |
2.3.1 節 参照 |
|
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
QUERY |
検索条件(後述)。省略時(?含む)は、条件なし(全て)として扱います。 |
O |
(*1) M:必須、O:オプション
QUERY一覧
書式 |
説明 |
$filter=<filter条件> |
<filter条件>に一致するもののみを返すよう、結果を限定します。 <filter条件>は、「プロパティ名 演算子 条件値」とし、andで複数定義可能。使用可能な演算子、プロパティ名は後述します。 |
$top=n |
検索結果として得られるデータをn件に限定します。最大は1000件まで指定できます。 |
$skip=n |
検索結果として得られたデータをn件skipします。検索結果として得られるデータの順番は、アクセスコードでソートします。 |
1. /_count が指定された場合、$top、$skipは無視します。($filterのみ併用可能)
filter条件の演算子
演算子 |
説明 |
例 |
eq |
等号 |
$filter=_resource_path eq ‘hoge’ |
filter条件に利用可能なプロパティ名
プロパティ名 |
説明 |
備考 |
_resource_path |
リソースパス |
「/」も含めてパーセントエンコードは不要です |
filter条件のサポート関数
Function |
説明 |
例 |
bool startswith(string p0, string p1) |
前方一致 |
$filter=startswith(_resource_path, ’hoge’) eq true |
1. false指定は未対応です。
2. $filter条件直下で_resource_path eq hogeと指定されたときは完全指定となり、startswith()を利用して指定された際は前方一致指定となります。
Response
[データリストの取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
application/json; charset=UTF-8 |
Body |
一致したアクセスコード情報 |
|
1. Body
Ø 次の通り、各アクセスコードの情報をJSONオブジェクトとし、JSON配列形式で複数格納します。
Ø 各アクセスコード情報は、アクセスコード(access_code)でソートします。(昇順)
Parameters |
形式 |
説明 |
最大長 |
|||
access_codes |
― (配列) |
開始タグ |
― |
|||
|
access_code |
string |
アクセスコード |
48文字 |
||
|
permissions |
― |
権限情報 |
― |
||
|
|
ip_filter |
string (配列) |
アクセス制限定義を行う許可IPアドレスの範囲情報。[“開始IPアドレス”,“終了IPアドレス”]の形式で2つのIPアドレスを指定します。 |
35文字 |
|
|
|
resource_operations |
― (配列) |
リソースに紐づく権限情報 |
|
|
|
|
|
resource_path
|
string |
リソースパス |
128文字 |
|
|
|
operations |
string (配列) |
“hierarchy_get”、“hierarchy_put”、“create”、“read”、“update”、“delete”、“list”のいずれか。配列で複数指定できます。 |
72文字 |
|
certification_info |
― |
クライアント証明書情報 |
|
||
|
|
certification |
string |
クライアント証明書 ・PEM形式 「-----BEGIN CERTIFICATE-----」, 「-----END CERTIFICATE-----」を含みます。また、改行コードは「\n」として表示されます。 |
10000文字 |
|
|
|
certificate_usage |
string |
クライアント証明書の利用用途。 以下を指定してください。 ・auth:クライアント認可で使用する。 |
4文字 |
|
|
protocols |
string (配列) |
プロトコル指定情報 “http”、“https”、“mqtt”、“mqtts”のいずれか。配列で複数指定できます。 |
29文字 |
Ø パラメータに設定値がない場合、レスポンスにはパラメータそのものを格納しません。
Ø リクエストのAuthorizationヘッダに格納したアクセスコードの権限を超える権限を持つアクセスコードは、レスポンスに格納しません。
Ø アクセスコード登録時に“protocols”の指定が無かった場合には、“protocols”は通知されません。
エラー応答時
1. 条件に一致するアクセスコード情報が存在しなかった場合、404を返します。
2. Authorizationヘッダのアクセスコードが登録されていない場合、401を返します。
3. 条件に一致したアクセスコード情報数が1000を超える場合、400を返します。
Ø この時、エラーレスポンスに受付可能なtop数として、acceptable_top=n をBodyに格納します。
4. その他エラーについては、2.3.2 節を参照ください。
[HIT数の取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
text/plain |
Body |
一致したアクセスコード数 |
|
1. Body
Ø 一致したアクセスコード数をそのまま返却
Ø リクエストのAuthorizationヘッダに格納したアクセスコードの権限を超える権限を持つアクセスコードは、カウント対象としません
エラー応答時については、2.3.2 節を参照ください。
Request
Parameters |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/_access_codes/<Access Code> |
Headers |
2.3.1節 および下記参照 |
Body |
アクセスコード情報 |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
Access Code |
アクセスコード |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
application/json; charset=UTF-8 |
固定 |
M |
(*1) M:必須、O:オプション
Body: アクセスコード情報
1. 8.1節を参照ください。
2. 対象のアクセスコード情報を、更新データで全て上書きします。
Ø 更新前に設定パラメータとしてA,Bが登録されており、更新でAだけを指定した場合、Bは削除指示と判断してBを削除します。
Response
正常応答時
Parameters |
値 |
Status-Code |
200 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については、2.3.2節を参照ください。
Request
Parameters |
値 |
Method |
DELETE |
URI |
<Base URL>/v1/<Tenant ID>/_access_codes/<Access Code> |
Headers |
2.3.1 節 参照 |
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
Access Code |
アクセスコード |
M |
(*1) M:必須、O:オプション
Response
正常応答時
Parameters |
値 |
Status-Code |
204 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時
1. 削除対象のアクセスコードがイベントに紐付いていた場合、アクセスコード削除不可とし、ステータスコード 423 と、紐付いてるイベントIDを返します。
2. その他エラーについては 2.3.2 節を参照ください。
イベント制御のインターフェースを以下に示します。プロトコルは全てREST(HTTP)とします。
表 12:イベント制御インターフェース一覧
種別 |
用途 |
章 |
イベントの登録 |
イベントを新規登録します。 [オプション] なし |
9.1章 |
イベント情報の参照 |
イベントの情報を参照(検索)します。 [検索オプション] ・イベントID指定 ・リソースパス指定(前方一致検索可) |
9.2章 |
イベント情報の更新 |
イベントの情報を更新します。 [オプション] なし |
9.3章 |
イベントの削除 |
イベントを削除します。 [オプション] なし |
9.4章 |
Request
Parameters |
値 |
Method |
POST |
URI |
<Base URL>/v1/<Tenant ID>/_events |
Headers |
2.3.1 節、および下記を参照ください |
Body |
イベント情報 |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
application/json; charset=UTF-8 |
固定 |
M |
(*1) M:必須、O:オプション
Body: イベント情報
次の通り、JSON形式でイベント情報を登録する。
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|||||
event |
― |
M |
開始タグ |
― |
|||||
|
conditions |
― |
M |
イベント条件 |
― |
||||
|
|
targets |
― |
M |
対象 |
― |
|||
|
|
|
resource_path |
string |
M |
対象のリソースパス バイナリデータへの操作の場合は対象リソースパスを“_bin/”から設定してください。 |
128文字 |
||
|
|
|
operations |
string (配列) |
M |
対象のリソースデータ操作 ・通常のリソースの場合、[“create”,“update”] を指定してください。 ・リソース_Binaryの場合、 “create” を指定してください。 |
33文字 |
||
|
|
|
read_access_code |
string |
M |
対象リソースパスのread権またはhierarchy_get権を持つアクセスコード |
48文字 |
||
|
|
notification_condition |
― |
O |
通知条件 |
― |
|||
|
|
|
start_time |
日時または時刻 |
O(*2) |
開始日時または、時刻(*3) |
20文字 |
||
|
|
|
end_time |
日時または時刻 |
O(*4) |
終了日時または、時刻(*3) |
20文字 |
||
|
|
|
body_conditions |
― |
O |
データボディ条件 Binaryリソースに対しては設定不可 |
― |
||
|
|
|
|
path_type |
string |
M |
pathの形式 “JSONPath”のみ指定できます |
8文字 |
|
|
|
|
|
path |
string |
M |
ボディ要素を指定するためのパス |
1902文字 |
|
|
|
|
|
comparing_operator |
string |
M |
比較演算子 “eq”(=),“ne”(≠),“gt”(>),“ge”(≧),“lt”(<),“le”(≦),“substring_of”(部分一致)のいずれか。(*5) |
12文字 |
|
|
|
|
|
value |
stringまたは数値 |
M |
比較対象の値。 |
文字列の場合、 1~128文字
整数の場合、 -2,147,483,648~2,147,483,647
実数の場合、 整数部分10桁、小数部分5桁 |
|
|
|
awake_condition |
― |
O |
イベント抑止解除条件。 Binaryリソースに対しては設定できません。 ※本設定を行うと、notification_conditionを満たしイベント通知実施後、イベント抑止状態になります。イベント抑止状態を解除するための条件をここで設定してください。 |
― |
|||
|
|
|
body_conditions |
― |
M |
データボディ条件 |
― |
||
|
|
|
|
path_type |
string |
M |
pathの形式。 ”JSONPath”のみ指定できます。 |
8文字 |
|
|
|
|
|
path |
string |
M |
ボディ要素を指定するためのパス |
1902文字 |
|
|
|
|
|
comparing_operator |
string |
M |
比較演算子。 “eq”(=),“ne”(≠),“gt”(>),“ge”(≧),“lt”(<),“le”(≦),“substring_of”(部分一致)のいずれか。(*5) |
12文字 |
|
|
|
|
|
value |
stringまたは数値 |
M |
比較対象の値。 |
文字列の場合、 1~128文字
整数の場合、 -2,147,483,648~2,147,483,647
実数の場合、 整数部分10桁、小数部分5桁 |
|
|
notification |
―(*6) |
M |
通知内容 |
― |
||||
|
|
http |
― |
O |
HTTP通知設定 |
― |
|||
|
|
|
method |
string |
M |
“GET”,“POST”,“PUT”,“DELETE”,“HEAD”,“OPTIONS”,“TRACE”のいずれか。 |
7文字 |
||
|
|
|
uri |
string |
M |
URI。 “http://~”または“https://~” |
256文字 |
||
|
|
|
basic_auth_id |
string |
O |
Basic認証用のID |
20文字 |
||
|
|
|
basic_auth_pass |
string |
O |
Basic認証用のパスワード |
20文字 |
||
|
|
|
header_fields |
― (配列) |
O |
HTTPヘッダ (配列の要素は最大10個) |
― |
||
|
|
|
|
field_name |
string |
M |
ヘッダフィールド名。“:”は含みません。 |
20文字 |
|
|
|
|
|
field_value |
string |
M |
上記ヘッダフィールドに格納する値 |
512文字 |
|
|
|
|
body |
string |
O |
ボディに格納する値 省略時はイベントのトリガとなったリソースデータ本体・イベントID・イベント発生日時・対象リソースパス |
1024文字 |
||
|
|
smtp |
― |
O |
SMTP通知設定 |
― |
|||
|
|
|
send_to |
string |
M |
通知先Eメールアドレス |
256文字 |
||
|
|
|
subject |
string |
O |
件名 |
256文字 |
||
|
|
|
body |
string |
M |
本文 |
140文字 |
||
(*1) M:必須、O:オプション。各子要素のM/Oは、親要素を設定した場合の要否を表します。
(*2) start_timeとend_timeの片方のみを設定することはできません。また、両設定値は日時または、時刻のどちらかに揃える必要があります。
(*3) 日時指定の場合は、ISO8601に従ってください(20141225T103612Zなど)。また、精度は秒まで指定可能です。時刻指定の場合はISO8601から年月日の情報を削ったものとなります(T103612Z など)。精度は同様に秒までです。タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えてください。
(*4) start_timeとend_timeの片方のみを指定することはできません。また、両設定値は日時または、時刻のどちらかに揃える必要があります。
(*5) valueが数値の場合は、eq, ne, gt, ge, lt, leが指定できます。valueが文字列の場合はeq, ne, substring_ofが指定できます。文字列の比較においては大文字小文字の区別を行います。
(*6) notification配下には、httpかsmtpいずれかの設定が必要です。
Response
正常応答時
Parameters |
値 |
|
Status-Code |
201 |
|
Headers |
Location |
<Base URL>/v1/<Tenant ID>/_events/<Event ID> |
Body |
なし |
|
1. Locationには作成したイベントのURIを格納します。
エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
||
Method |
GET |
||
URI |
Event ID指定による参照 |
<Base URL>/v1/<Tenant ID>/_events/<Event ID> |
|
QUERYによる検索 |
データリストの取得 |
<Base URL>/v1/<Tenant ID>/_events?<QUERY> |
|
HIT数の取得 |
<Base URL>/v1/<Tenant ID>/_events/_count?<QUERY> |
||
Headers |
2.3.1 節 参照 |
||
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
Event ID |
イベントのID ・省略時(「/events」)は対象テナントの全てのイベントを対象とします。(「/events/」の書き方は許容しません。) |
O |
QUERY |
検索条件(後述)。省略時(?含む)は、条件なし(全て)として扱う。 |
O |
(*1) M:必須、O:オプション
QUERY一覧
書式 |
説明 |
$filter=<filter条件> |
<filter条件>に一致するもののみを返すよう、結果を限定します。<filter条件>は、「プロパティ名 演算子 条件値」とし、andで複数個を定義することができます。使用可能な演算子、プロパティ名は後述します。 |
$top=n |
検索結果として得られるデータをn件に限定します。最大取得件数は1000件です。 |
$skip=n |
検索結果として得られたデータをn件skipします。検索結果として得られるデータの順番はEventIDでソートされます。 |
1. /_count が指定された場合$top、$skipは無視されます($filterのみ併用できます)
filter条件の演算子
演算子 |
説明 |
例 |
eq |
等号 |
$filter=_resource_path eq ‘hoge’ |
filter条件に利用可能なプロパティ名
プロパティ名 |
説明 |
備考 |
_resource_path |
リソースパス |
「/」も含めてパーセントエンコード不要 |
filter条件のサポート関数
Function |
説明 |
例 |
bool startswith(string p0, string p1) |
前方一致 |
$filter=startswith(_resource_path, ’hoge’) eq true |
1. false指定は未対応です。
2. $filter条件直下で_resource_path eq hogeと指定されたときは完全指定となり、startswith()を利用して指定された際は前方一致指定となります。
Response
[Event ID指定での参照 または データリストの取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
application/json; charset=UTF-8 |
Body |
一致したイベント情報 |
|
1. Body
Ø 次の通り、各イベントの情報をJSONオブジェクトとし、JSON配列形式で複数格納します。(太字:イベント登録時との差分)
Ø 各イベント情報はイベントID(event_id)で昇順にてソートされます。
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|||||
events |
― |
M |
開始タグ |
― |
|||||
|
event_id |
string |
M |
イベントID |
12文字 |
||||
|
conditions |
― |
M |
イベント条件 |
― |
||||
|
|
targets |
― |
M |
対象 |
― |
|||
|
|
|
resource_path |
string |
M |
対象のリソースパス |
128文字 |
||
|
|
|
operations |
string (配列) |
M
|
対象のリソースデータ操作 ・JSONリソースの場合、「[“create”,“update”]」 を指定してください。 ・Binaryリソースの場合、「“create”」を指定してください。 |
33文字 |
||
|
|
|
read_access_code |
string |
M |
対象リソースパスのread権またはhierarchy_get権を持つアクセスコード |
48文字 |
||
|
|
notification_condition |
― |
O |
通知条件 |
― |
|||
|
|
|
start_time |
日時または時刻 |
O
|
開始日時または、時刻 |
20文字 |
||
|
|
|
end_time |
日時または時刻 |
O
|
終了日時または、時刻 |
20文字 |
||
|
|
|
body_conditions |
― |
O |
データボディ条件 |
― |
||
|
|
|
|
path_type |
string |
M |
pathの形式。 “JSONPath”を指定してください。 |
8文字 |
|
|
|
|
|
path |
string |
M |
ボディ要素を指定するためのパス |
1902文字 |
|
|
|
|
|
comparing_operator |
string |
M |
比較演算子。 “eq”(=),“ne”(≠),“gt”(>),“ge”(≧),“lt”(<),“le”(≦),“substring_of”(部分一致)のいずれか。 |
12文字 |
|
|
|
|
|
value |
stringまたは数値 |
M |
比較対象の値。 |
文字列の場合、 1~128文字
整数の場合、 -2,147,483,648~2,147,483,647
実数の場合、 整数部分10桁、小数部分5桁 |
|
|
|
awake_condition |
― |
O |
イベント抑止解除条件 ※本設定を行うと、notification_conditionを満たしイベント通知実施後、イベント抑止状態になります。イベント抑止状態を解除するための条件をここで設定します。 |
― |
|||
|
|
|
body_conditions |
― |
O |
データボディ条件 |
― |
||
|
|
|
|
path_type |
string |
M |
pathの形式。 “JSONPath”を指定してくだい。 |
8文字 |
|
|
|
|
|
path |
string |
M |
ボディ要素を指定するためのパス |
1902文字 |
|
|
|
|
|
comparing_operator |
string |
M |
比較演算子。 “eq”(=),“ne”(≠),“gt”(>),“ge”(≧),“lt”(<),“le”(≦),“substring_of”(部分一致)のいずれか。 |
12文字 |
|
|
|
|
|
value |
stringまたは数値 |
M |
比較対象の値。 |
文字列の場合、 1~128文字
整数の場合、 -2,147,483,648~2,147,483,647
実数の場合、 整数部分10桁、小数部分5桁 |
|
|
notification |
― |
M |
通知内容 |
― |
||||
|
|
http |
― |
O |
HTTP通知設定 |
― |
|||
|
|
|
method |
string |
M |
“GET”,“POST”,“PUT”,“DELETE”,“HEAD”,“OPTIONS”,“TRACE”のいずれか。 |
7文字 |
||
|
|
|
uri |
string |
M |
URI。 “http://~”または“https://~” |
256文字 |
||
|
|
|
basic_auth_id |
string |
O |
Basic認証用のID |
20文字 |
||
|
|
|
basic_auth_pass |
string |
O |
Basic認証用のパスワード |
20文字 |
||
|
|
|
header_fields |
― (配列) |
O
|
HTTPヘッダ |
― |
||
|
|
|
|
field_name |
string |
M |
ヘッダフィールド名。“:”は含みません。 |
20文字 |
|
|
|
|
|
field_value |
string |
M |
上記ヘッダフィールドに格納する値 |
512文字 |
|
|
|
|
body |
string |
O |
ボディに格納する値。 省略時はイベントのトリガとなったリソースデータ本体・イベントID・イベント発生日時・対象リソースパス。 |
1024文字 |
||
|
|
smtp |
― |
O |
SMTP通知設定 |
― |
|||
|
|
|
send_to |
string |
M |
通知先Eメールアドレス |
256文字 |
||
|
|
|
subject |
string |
O |
件名 |
256文字 |
||
|
|
|
body |
string |
M |
本文 |
140文字 |
||
(*1) M:必須、O:オプション。各子要素のM/Oは、親要素を設定した場合の有無を表します。
Ø パラメータに設定値がない場合、レスポンスにはパラメータそのものを格納しません。
Ø リクエストのAuthorizationヘッダに格納したアクセスコードが、list権を持たないリソースに対するイベント情報は、レスポンスに格納しません。
エラー応答時
1. 条件に一致するイベント情報が存在しなかった場合、404を返します。
2. 条件に一致したイベント数が1000を超える場合、400を返します。
Ø この時、エラーレスポンスに受付可能なtop数として、acceptable_top=n をBodyに格納します。
3. その他エラーについては、2.3.2 節を参照ください。
[HIT数の取得]
正常応答時
Parameters |
値 |
|
Status-Code |
200 |
|
Headers |
Content-Type |
text/plain |
Body |
一致したリソースデータ数 |
|
1. Body
Ø 一致したイベント数をそのまま返却します。
Ø リクエストのAuthorizationヘッダに格納したアクセスコードが、list権を持たないリソースに対するイベントは、カウント対象としません。
エラー応答時については、2.3.2 節を参照ください。
Request
Parameters |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/_events/<Event ID> |
Headers |
2.3.1節 および下記参照 |
Body |
イベント情報 |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
Event ID |
イベントID |
M |
(*1) M:必須、O:オプション
HTTPヘッダ
Headers |
値 |
補足 |
M/O(*1) |
Content-Type |
application/json; charset=UTF-8 |
固定 |
M |
(*1) M:必須、O:オプション
Body: イベント情報
1. 9.1節を参照。
2. 対象のイベント情報を、更新データで全て上書きします。
Ø 更新前に設定パラメータとしてA,Bが登録されており、更新でAだけを指定した場合、Bは削除指示と判断してBを削除します。
Response
正常応答時
Parameters |
値 |
Status-Code |
200 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
Request
Parameters |
値 |
Method |
DELETE |
URI |
<Base URL>/v1/<Tenant ID>/_events/<Event ID> |
Headers |
2.3.1 節 参照 |
Body |
なし |
URIパラメータ
パラメータ名 |
説明 |
M/O(*1) |
Base URL |
2.3.1節 参照 |
M |
Tenant ID |
対象テナントの識別子 |
M |
Event ID |
イベントID |
M |
(*1) M:必須、O:オプション
Response
正常応答時
Parameters |
値 |
Status-Code |
204 |
Headers |
2.3.2節 参照 |
Body |
なし |
エラー応答時については 2.3.2 節を参照ください。
本サービスの以下の機能では、外部システムの呼出しを行います。本章では、呼出しにおける動作仕様について説明します。
API呼出し(イベント機能)
Email送信(イベント機能)
API呼出し(リソース(転送)_JSON機能)
イベントにおけるアクション内容として「API呼び出し」を選択した際に呼び出されるAPIの内容を以下に示します。
Request
Parameters |
値 |
Method |
<イベントにおいて指定されたメソッド> |
URI |
<イベントにおいて指定されたURI> |
Headers |
Host: <イベントにおいて指定されたURIに含まれるホスト名> |
<イベントにおいて指定されたヘッダ名>:<イベントにおいて指定されたヘッダ値> (複数) |
|
認証ID、認証パスワードをいれた場合: Authorization: Basic <認証ID:認証パスワードをBase64エンコードした値> |
|
Body |
ボディに値を設定した場合:ボディに設定した値 |
ボディに値を設定しなかった場合:JSON形式で表 13のデータを格納 |
(注) 基本的にはHTTP/1.1仕様に沿った要求を発行しますが、お客様の設定内容やシステムの実装によりHTTP仕様を逸脱する場合があります。問題が発生した場合は弊社までご相談ください。
表 13:イベント通知データとして格納されるJSONデータ
Name |
value |
event_id |
イベントID |
date |
イベント判定を行った日時(*1) |
resource_path |
イベントに使われたリソースパス |
operation |
リソースパスに対して行った制御内容 createは登録、updateは更新を意味する |
body |
リソースパスに対して登録または更新された際のBody文 |
(*1) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
イベントIDが「123456789abc」、イベント判定を行った日時が日本時間2016年3月1日0時0分0秒、
リソースパスには「Printer/1F/Printer」が指定されており、Body文に「{"temperature" : 24}」を登録した場合、イベントの送信されるBody文の例を以下に示します。
{ "event_id" : "123456789abc", "date" : "20160301T000000.000Z", "resource_path" : "Printer/1F/Printer", "operation" : "create", "body " :{ "temperature" : 24 } } |
Response
HTTP メッセージフォーマット形式を満たしてください。ステータスラインのみを必要とします。以下に、ステータスコードに対する処理仕様を示します。
ステータスコード |
判断 |
リトライ |
2xx |
受付成功 |
しない |
408, 503, 504, 509 応答未受信 |
受付失敗 |
する |
上記以外 |
受付失敗 |
しない |
イベントにおいてアクション内容として「Email」を選択した際に送信されるメールの内容を以下に示します。
Parameters |
値 |
|
To |
イベントにおいて指定されたメールアドレス |
|
From |
eventinfo@<zone>.fujitsu.com(*1) |
|
Return-Path |
iot-system-info@ml.css.fujitsu.com |
|
Subject |
イベントにおいて指定された件名 |
|
Body |
Content-Type |
text/plain; charset=UTF-8 |
本体 |
イベントにおいて指定された本文 |
|
添付 |
Content-Type |
text/plain; charset=UTF-8; name=eventinfo.txt |
本体 |
JSON形式で 表 13 のデータを格納 |
(*1) ドメイン名の<zone>はサービス提供システムに依存します。ご契約後の通知内容に従って下さい。
リソース(転送)_JSONを利用した際に呼び出されるAPIの内容を以下に示します。
Request
Parameters |
値 |
Method |
<リソース(転送)_JSONにおいて指定されたメソッド> |
URI |
<リソース(転送)_JSONにおいて指定されたURI> |
Headers |
Host: <リソース(転送)_JSONにおいて指定されたURIに含まれるホスト名> |
<リソース(転送)_JSONにおいて指定されたヘッダ名>:<リソース(転送)_JSONにおいて指定されたヘッダ値> (複数) |
|
認証ID、認証パスワードをいれた場合: Authorization: Basic <認証ID:認証パスワードをBase64エンコードした値> |
|
Body |
リソース(転送)_JSONに格納したデータ |
(注) 基本的にはHTTP/1.1仕様に沿った要求を発行しますが、お客様の設定内容やシステムの実装によりHTTP仕様を逸脱する場合があります。問題が発生した場合は弊社までご相談ください。
Response
HTTP メッセージフォーマット形式を満たしてください。ステータスラインのみを必要とします。以下に、ステータスコードに対する処理仕様を示します。
ステータスコード |
判断 |
リトライ |
2xx |
受付成功 |
しない |
408, 503, 504, 509 応答未受信 |
受付失敗 |
する |
上記以外 |
受付失敗 |
しない |
本サービスでは、システムが自律的にリソースに格納するデータがあります。本章では、格納されるデータの形式や内容について説明します。
ダイナミックリソースコントローラーにより、ゲートウェイ装置が参照するリコメンド値をJSON形式で格納します。
リコメンドリソース名 |
サービスポータルから設定 |
Parameters |
形式 |
M/O(*1) |
説明 |
recommend_value |
string |
M |
リコメンド値("ON"または"OFF") |
recommend_parameter |
string |
M |
リコメンド引数 (サービスポータルにおける分散設定において設定した引数。 但し、本サービスのシステム負荷が極めて大きい場合、"ALM"が入ります) |
エッジコンピューティング条件の引数が「recommend is on」である場合において、リコメンド値が「ON」に変化した際にリコメンドリソースに格納されるJSONデータ例を以下に示します。
{ "recommend_value" : "ON” "recommend_parameter" : "recommend is on" } |
ダイナミックリソースコントローラーが、APIアクセスの負荷計測結果をJSON形式で格納します。
負荷リソース名 |
サービスポータルから設定 |
Parameters |
形式 |
M/O(*1) |
説明 |
tps |
string |
M |
お客様テナントに対する負荷データ (tps)[transaction/second] |
bps |
string |
M |
お客様テナントに対する負荷データ (bps)[bit/second] |
(*1) M:必須、O:オプション
10tps、10,000bpsの場合において、負荷リソースに格納されるJSONデータの例を以下に記載します。
{ "tps" : "10", "bps" : "10000" } |
エラーログ蓄積機能が、本サービス内および通信先の影響でリクエストが欠損した場合のエラー情報を格納します。該当時刻近辺の処理結果を確認し対応ください。
エラー収集用リソース名 |
_error |
Parameters |
形式 |
M/O(*1) |
説明 |
|
collection_first_time |
日時(*2) |
M |
エラー収集期間の開始時刻 |
|
collection_last_time |
日時 |
M |
エラー収集期間の終了時刻 |
|
errors |
― (配列) |
M |
エラー情報 |
|
|
trigger |
string |
M |
失敗要因が設定されます。 |
|
resource_path |
string |
M |
エラーが発生したリソースパス。エラー収集期間内の最も古い情報のリソースパスが設定されます。 |
|
data_registration_time |
日時 |
O |
リソースデータ登録時刻。失敗要因がイベントの場合のみ設定されます。 |
|
event_id |
string |
O |
イベントID。失敗要因がイベントの場合のみ設定されます。 |
|
error_factor_message |
string |
M |
失敗要因メッセージ。下記参照ください。 |
|
number_of_times |
数値 |
M |
エラー収集期間内で失敗要因と失敗要因メッセージが同一であったものの回数。 |
|
request_id |
stringの 配列 |
O |
エラー発生となった要求にて指定したx-iotpf-request-idの値が設定されます。 |
message |
string |
O |
エラー情報登録失敗の場合に下記が設定されます。 |
(*1) M:必須、O:オプション
(*2) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。秒とミリ秒の区切りは「.]、タイムゾーン指定は「±hhmm」形式で省略時は「Z」を添えます。本サービスがレスポンスに格納する場合、UTCを用います。
error_factor_messageに記載される失敗要因メッセージの一覧を以下に記載します。
trigger |
失敗要因メッセージ |
説明 |
Transfer Resource |
It failed in the transmission of forwarding data. (IoT-PF internal error) |
転送失敗:システム内要因により失敗しました。 |
Transfer Resource |
It failed in the transmission of forwarding data. (Forwarding parameter error) |
転送失敗:転送設定情報の不備により失敗しました。 |
Transfer Resource |
It failed in the transmission of forwarding data. (Connection error(HTTP)) |
転送失敗:通信エラー(HTTP)により失敗しました。 |
Transfer Resource |
It failed in the transmission of forwarding data. (Connection error(TCP)) |
転送失敗:通信エラー(TCP)により失敗しました。 |
Event |
Event connection failed. |
イベント送信失敗:イベント送信先への接続に失敗しました。 |
Event |
Event transmission retry over. code=408 |
イベント送信失敗:イベント送信が、レスポンスコード408により再送しましたが、再送回数オーバーにより失敗しました。 |
Event |
Event transmission failed. code=404 |
イベント送信失敗:イベント送信が、レスポンスコード404で失敗しました。 |
Event |
Event transmission retry over. code=503 |
イベント送信失敗:イベント送信が、レスポンスコード503により再送しましたが、再送回数オーバーにより失敗ました。 |
Event |
Event transmission failed. code=500 |
イベント送信失敗:イベント送信が、レスポンスコード500により失敗しました。 |
Event |
Event Send Request was rejected due to inflow regulation. |
イベント送信失敗:要求過負荷によりイベント送信に失敗しました。 |
Event |
Fail to send SMTP mail. |
イベント送信失敗:システム内要因により、イベント送信(メール送信)に失敗しました。 |
Event |
Retry out to send SMTP mail. |
イベント送信失敗:メールサーバとの通信異常が発生し、イベント送信(メール送信)に失敗しました。 |
MQTT Broker |
Failed to execute publishing resource data, in the system internal processing. |
MQTTデータ格納失敗:内部処理においてデータ喪失が発生し、リソースデータの格納に失敗しました。 |
MQTT Parser |
Failed to execute publishing resource data, in the system internal processing. |
MQTTデータ格納失敗:内部処理においてデータ喪失が発生し、リソースデータの格納に失敗しました。 |
MQTT Parser |
Failed to execute publishing resource data, in invalid data format. |
MQTTデータ格納失敗:登録データ(ペイロードJSON/登録日時/リクエスト識別ID等)が仕様に準じていない形式のため、データの格納に失敗しました。 |
MQTT Parser |
Failed to execute publishing resource data, in message payload length error. |
MQTTデータ格納失敗:登録データ(ペイロード長)が不正のため、データの格納に失敗しました。 |
ここでは、API要求がエラーとなった場合にBody文に通知される内容を説明します。エラーは以下の形式で通知されます。
フィールド名 |
値 |
errors.message |
エラー文 |
errors.acceptable_top |
レスポンスのBodyサイズが16MB以内となるtop数 (エラーコードが"number of response-data is larger than 1000"または,"response size is larger than 16MB"の場合のみ) |
Body文の例を以下に記載します。
{ “errors”: [ { “message”: “response size is larger than 16MB”, “acceptable_top”: 100 } ] } |
errors.messageに記載されるエラーのBody文内容の一覧を以下に記載します。
HTTPレスポンス |
エラーのBody文内容 |
対処方針 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] iot-pf is temporally unavailable.[11007]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] iot-pf is temporally unavailable.[11009]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] iot-pf is temporally unavailable.[11010]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[CREATE] iot-pf internal error.[11011]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[CREATE] iot-pf internal error.[11013]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクへまでお願い致します。 |
500 Internal Server Error |
{"errors":[{"message":"[CREATE] iot-pf internal error.[11016]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[CREATE] iot-pf internal error.[11017]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] iot-pf is temporally unavailable.[11022]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] No Connection.[11027]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[SEARCH] iot-pf is temporally unavailable.[11028]"}]} |
システム高負荷の場合に発生することがあります。検索範囲を絞って再実施することを推奨します。 |
503 Service Unavailable |
{"errors":[{"message":"[SEARCH] iot-pf is temporally unavailable.[11030]"}]} |
システム高負荷の場合に発生することがあります。検索範囲を絞って再実施することを推奨します。 |
503 Service Unavailable |
{"errors":[{"message":"[SEARCH] iot-pf is temporally unavailable.[11031]"}]} |
システム高負荷の場合に発生する可能性があります。検索範囲を絞って再実施することを推奨します。 |
500 Internal Server Error |
{"errors":[{"message":"[SEARCH] iot-pf internal error.[11032]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[SEARCH] iot-pf internal error.[11034]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[SEARCH] iot-pf internal error.[11036]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[SEARCH] iot-pf internal error.[11037]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[SEARCH] iot-pf is temporally unavailable.[11039]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[SEARCH] No Connection.[11040]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[UPDATE] iot-pf is temporally unavailable.[11041]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[UPDATE] iot-pf is temporally unavailable.[11043]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[UPDATE] iot-pf is temporally unavailable.[11044]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[UPDATE] iot-pf internal error.[11045]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[UPDATE] iot-pf internal error.[11047]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[UPDATE] iot-pf internal error.[11049]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[UPDATE] iot-pf internal error.[11050]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[UPDATE] iot-pf is temporally unavailable.[11051]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[UPDATE] No Connection.[11052]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[REMOVE] iot-pf is temporally unavailable.[11053]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[REMOVE] iot-pf is temporally unavailable.[11055]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[REMOVE] iot-pf is temporally unavailable.[11056]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[REMOVE] iot-pf internal error.[11057]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[REMOVE] iot-pf internal error.[11059]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[REMOVE] iot-pf internal error.[11061]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[REMOVE] iot-pf internal error.[11062]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[REMOVE] iot-pf is temporally unavailable.[11063]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[REMOVE] No Connection.[11064]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] iot-pf is temporally unavailable.[12003]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] main data is required."}]} |
Body文に記載がありません。Body文が正しく記載されているか確認してください。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] main data is too large."}]} |
Body文が大きすぎます。データを分割するなどBody文を小さくしてください。 |
503 Service Unavailable |
{"errors":[{"message":"[CREATE] iot-pf is temporally unavailable.[12006]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] url format error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] query num invalid."}]} |
URLに"?"が複数存在します。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] query too large."}]} |
クエリが長すぎます。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] url unescape error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] access code is wrong."}]} |
アクセスコードが誤っています。 正しいアクセスコードが記載されているか確認してください。 |
400 Bad Request |
{"errors":[{"message":"[CREATE] x-iotpf-request-id format error."}]} |
x-iotpf-request-idの内容が不正です。 |
400 Bad Request |
{"errors":[{"message":"[SEARCH] url format error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[SEARCH] query num invalid."}]} |
URLに"?"が複数存在します。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[SEARCH] query too large."}]} |
クエリが長すぎます。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[SEARCH] url unescape error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[SEARCH] access code is wrong."}]} |
アクセスコードが誤っています。 正しいアクセスコードが記載されているか確認してください。 |
503 Service Unavailable |
{"errors":[{"message":"iot-pf is temporally unavailable.[12026]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] main data is required."}]} |
Body文に記載がありません。Body文が正しく記載されているか確認してください。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] main data is too large."}]} |
Body文が大きすぎます。データを分割するなどBody文を小さくしてください。 |
503 Service Unavailable |
{"errors":[{"message":"iot-pf is temporally unavailable.[12029]"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] url format error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] query num invalid."}]} |
URLに"?"が複数存在します。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] query too large."}]} |
クエリが長すぎます。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] url unescape error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] access code is wrong."}]} |
アクセスコードが誤っています。 正しいアクセスコードが記載されているか確認してください。 |
400 Bad Request |
{"errors":[{"message":"[UPDATE] x-iotpf-request-id format error."}]} |
x-iotpf-request-idの内容が不正です。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] url format error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] query num invalid."}]} |
URLに"?"が複数存在します。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] query too large."}]} |
クエリが長すぎます。クエリを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] url unescape error."}]} |
URLの指定が誤っています。URLを見なおしてください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] query must not be exists. for present"}]} |
最新削除(_present)にも関わらず、クエリが指定されています。クエリを除いて実行してください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] query is required. for past."}]} |
過去のデータの削除(_past)にも関わらず、クエリが指定されていません。クエリを指定してください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] access code is wrong."}]} |
アクセスコードが誤っています。 正しいアクセスコードが記載されているか確認してください。 |
400 Bad Request |
{"errors":[{"message":"[REMOVE] x-iotpf-request-id format error."}]} |
x-iotpf-request-idの内容が不正です。 |
429 Too Many Requests |
{"errors":[{"message":"Number of request per second has exceeded maximum usage limit of service contract."}]} |
アクセス頻度がシステム許容値を越えています。アクセス頻度を見直してください。 |
400 Bad Request |
{"errors":[{"message":"fail to get decompressed data size."}]} |
指定された圧縮形式の情報が異常です。 |
400 Bad Request |
{"errors":[{"message":" decompressed data is too large."}]} |
伸長後のデータ長が大きすぎます。 |
423 Locked |
{"errors":[{"message":" request access code has event. "}]} |
対象アクセスコードに紐づいたイベントが存在しています。 イベントの紐付けを解除してください。 |
423 Locked |
{"errors":[{"message":" request access code can't read event."}]} |
対象アクセスコードに紐付いたイベントが存在しているため、read権を削除できません。 |
423 Locked |
{"errors":[{"message":" request access code has dispersion policy."}]} |
対象アクセスコードに紐付いた分散ポリシーが存在しています。 分散ポリシーの紐付けを解除してください。 |
423 Locked |
{"errors":[{"message":" request access code has recommend resource."}]} |
対象アクセスコードに紐付いたリコメンドリソースが存在しています。 リコメンドリソースの紐付けを解除してください。 |
423 Locked |
{"errors":[{"message":" request access code can't update dispersion policy."}]} |
対象アクセスコードに紐付いた分散ポリシーが存在しているため、update件を削除できません。 |
423 Locked |
{"errors":[{"message":" request access code can't update recommend resource."}]} |
対象アクセスコードに紐付いたリコメンドリソースが存在しているため、update件を削除できません。 |
423 Locked |
{"errors":[{"message":" request access code and resource have event."}]} |
対象アクセスコードとリソースに紐付いたイベントが存在しています。 イベントの紐付けを解除してください。 |
503 Service Unavailable |
{"errors":[{"message":" iot-pf Service Unavailable."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":" iot-pf internal error."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
404 Not Found |
{"errors":[{"message":" Reload configuration to fail to read config."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":" tenant id is required. "}]} |
テナントIDが指定されていません。 |
400 Bad Request |
{"errors":[{"message":" access code is requred. "}]} |
アクセスコードが指定されていません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : resource_path is duplicated. (resourcepath=[リソースパス])"}]} |
リソースパスの重複があります。 |
400 Bad Request |
{"errors":[{"message":" parameter duplication. "}]} |
パラメータに重複があります。 |
400 Bad Request |
{"errors":[{"message":" request access code already exists. "}]} |
指定されたアクセスコードがすでに存在しています。 |
400 Bad Request |
{"errors":[{"message":" request resource path does not exist. : ResourcePath= [リソースパス]"}]} |
指定されたリソースパスは存在しません。 |
404 Not Found |
{"errors":[{"message":" resource path not found. "}]} |
対象のリソースIDが登録されていません。 |
404 Not Found |
{"errors":[{"message":" access code not found. "}]} |
検索条件に一致するアクセスコードがみつかりませんでした。 |
404 Not Found |
{"errors":[{"message":" event not found. "}]} |
検索条件に一致するイベントがみつかりませんでした。 |
404 Not Found |
{"errors":[{"message":" target resource not found. "}]} |
対象リソースが見つかりません。 |
404 Not Found |
{"errors":[{"message":" tenant ID not found. "}]} |
該当するテナントIDが見つかりません。 |
400 Bad Request |
{"errors":[{"message":" event id is required. "}]} |
イベントIDが指定されていません。 |
400 Bad Request |
{"errors":[{"message":" URL FORMAT ERROR"}]} |
正しいリクエストURLではありません。 |
400 Bad Request |
{"errors":[{"message":" Incorrect access code search conditions. "}]} |
アクセスコード検索条件に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" Incorrect event code search conditions. "}]} |
イベント検索条件に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" Incorrect filter condition. "}]} |
filter条件に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter is error. : incorrect top condition "}]} |
top条件に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter is error. : incorrect skip condition "}]} |
skip条件に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" Request data format error. "}]} |
リクエストデータの内容に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" Number of resource path is over for one request. (resourcePathSize=[リソースパス個数])"}]} |
1リクエストで登録可能なリソースパスの制限を超えています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : permissions"}]} |
アクセスコード権限情報が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : resource_path and operations in resource_operations"}]} |
リソース権限の情報が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : resource_path of resource_operations"}]} |
リソース権限のリソースパスが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : operations of resource_operations"}]} |
リソース権限のアクセス権が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : conditions"}]} |
イベント条件が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : targets"}]} |
イベント対象が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : resource_path of targets"}]} |
イベント対象のリソースパスが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : operations of targets"}]} |
対象のリソースデータ操作が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : read_access_code of targets"}]} |
対象リソースパスのread権をもつアクセスコードが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : path_type of notification_condition"}]} |
通知条件のpath形式が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : path of notification_condition"}]} |
通知条件のボディ要素を指定するリソースパスが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : comparing_operator of notification_condition"}]} |
通知条件の比較演算子が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : value of notification_condition"}]} |
通知条件の比較対象の値が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : path_type of awake_condition"}]} |
抑止条件のpath形式が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : path of awake_condition"}]} |
抑止条件のボディ要素を指定するリソースパスが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : comparing_operator of awake_condition"}]} |
抑止条件の比較演算子が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : value of awake_condition"}]} |
抑止条件の比較対象の値が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : notification smtp or http"}]} |
通知内容の指定が不足します。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : send_to of smtp notification"}]} |
通知内容の通知先eメールアドレスが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : body of smtp notification"}]} |
通知内容の通知eメールの本文が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : method of http notification"}]} |
通知内容のHTTP Methodが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : uri of http notification"}]} |
通知内容のURIが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : field_name and field_value of http notification"}]} |
通知内容のヘッダフィールドが不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : filed_name of http notification"}]} |
通知内容のヘッダフィールド名が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : filed_value of http notification"}]} |
通知内容のヘッダフィールドの値が不足しています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error is required. : notification"}]} |
通知内容が不足しています。 |
403 Forbidden |
{"errors":[{"message":" Authorization accesscode is required."}]} |
アクセスコードが指定されていません。 |
401 Unauthorized |
{"errors":[{"message":" Authorization error. (AccessCode=[アクセスコード], NG_ResoucePath=[リソースパス])"}]} |
指定されたアクセスコードで権限のないリソースが含まれています。 |
401 Unauthorized |
{"errors":[{"message":" Client authorization error. (AccessCode=[アクセスコード])"}]} |
アクセスコードで認可されていないクライアントからのアクセスです。 |
401 Unauthorized |
{"errors":[{"message":" Protocol authorization error. (AccessCode=[アクセスコード])"}]} |
アクセスコードで認可されていないプロトコルでのアクセスです。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect access code operations"}]} |
アクセスコードのアクセス権の組合せが不正です。 |
400 Bad Request |
{"errors":[{"message":" request ipfilter does not exist. (tenanatId=[テナントID], startIpAddr=[IPアドレス], endIpAddr=[IPアドレス])"}]} |
指定されたアクセス制限設定がありません。 |
400 Bad Request |
{"errors":[{"message":" hit data is larger than limit. (acceptable_top=1000)"}]} |
検索されたデータが1000件を超えています。 |
403 Forbidden |
{"errors":[{"message":" Authorization accesscode format error."}]} |
アクセスコードの形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" Fail to url decode(utf-8)."}]} |
不正な文字コードのデータが含まれています。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : Url Path is required."}]} |
URLパスが必要です。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : Incorrect protocol"}]} |
不正なプロトコルが指定されています。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : incorrect url path"}]} |
URLパスが不正です。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : incorrect url path start"}]} |
URLパスが不正な文字で始まっています。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : tenant id format error."}]} |
テナントIDの形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : input _access_codes or _events."}]} |
URLの指定が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : unnecessary query is input"}]} |
不要なクエリが指定されています。 |
400 Bad Reqeust |
{"errors":[{"message":" URL format error. : access code format error."}]} |
アクセスコードの形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : input _counts."}]} |
HIT数の取得のURL指定が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : event id format error."}]} |
イベントIDの形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect access code name's string length"}]} |
アクセスコード名の長さが正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect access code discription's string length"}]} |
アクセスコードの説明の長さが正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : number of ipfilter is larger than 5."}]} |
5個以上のアクセス制限が指定されています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : start ipaddress format error"}]} |
アクセス制限のIPアドレスの形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : end ipaddress format error"}]} |
アクセス制限のIPアドレスの形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : ipfilter format error."}]} |
アクセス制限の指定形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect ipfilter range"}]} |
アクセス制限の指定形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : operations format error. (NG Operation kind=[アクセス権])"}]} |
アクセス権の指定形式が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : operation is duplicated."}]} |
同じアクセス権が重複して指定されています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : resource path format error."}]} |
リソースパスの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect event name's string length"}]} |
イベント名の文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. :event description's string length"}]} |
イベントの説明文の文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : event target operations format eror."}]} |
リソース操作の指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : inccorect notification_condition's start_time or end_time (start_time=[日時], end_time=[日時])"}]} |
イベント判定日時の指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : cannot be set to body conditions to binary resource."}]} |
リソース_Binaryに対してイベント条件が指定されています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : access code format error."}]} |
アクセスコードの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect path_type of notification condition"}]} |
通知条件のpath_typeの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect path_type's string length of notification condition"}]} |
通知条件のpath_typeの文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : comparing_operator of notification condition (comparing_operator=[比較条件])"}]} |
通知条件の比較条件の指定形式に誤りがあります。 |
400 Bad Reuqest |
{"errors":[{"message":" input parameter error. : comparing operator format error (comparing_operator=[比較演算子])"}]} |
通知条件の比較条件の比較演算子に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect path_type of awake condition"}]} |
抑止条件の指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect path's string length of awake condition"}]} |
抑止条件のpathの指定文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : comparing_operator of awake condition (comparing_operator=[比較条件])"}]} |
抑止条件の比較条件の指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect comparing operator of awake condition (comparing_operator=[比較演算子])"}]} |
抑止条件の比較条件の比較演算子に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorret send_to's length of smtp notification"}]} |
通知内容の連絡先Eメールアドレスの形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorret body's length of smtp notification"}]} |
通知内容のEメール本文の形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorret subject's length of smtp notification"}]} |
通知内容のEメール件名の形式に誤りがあります。 |
400 Bad Reuqest |
{"errors":[{"message":" input parameter error. : incorrect method of http notification"}]} |
通知内容のHTTPメソッドの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect uri's length of http notification"}]} |
通知内容のURL指定形式の文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : number of header fields is larger than 10"}]} |
通知内容のヘッダフィールドが11個以上指定されています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect field_name's length of http notification"}]} |
通知内容のヘッダフィールドの指定形式の文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect field_value's length of http notification"}]} |
通知内容のヘッダフィールドの指定形式の文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect basic_auth_id's length of http notification"}]} |
通知内容のHTTPベーシック認証IDの文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect basic_auth_pass's length of http notification"}]} |
通知内容のHTTPベーシック認証パスワードの文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : certification info format error."}]} |
証明書の指定形式に誤りがあります。 |
400 Bad Reuqest |
{"errors":[{"message":" input parameter error. :protocols format error."}]} |
プロトコルの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : certification file is too large. Size=[サイズ]"}]} |
証明書のサイズがシステム許容値を越えています。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : certification format error.([証明書形式文字列] is required)"}]} |
証明書の形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : protocols is duplicated."}]} |
プロトコルの指定に重複があります。 |
500 Internal Server Error |
{"errors":[{"message":" certification file parse error.([エラー番号])"}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[12401] transfer resource is temporarily unavailable"}]} |
転送リソースが一時的に利用できません。しばらく待ってから再度ご利用ください。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect body's length of http notification"}]} |
通知内容のボディ長が正しくありません。 |
403 Forbidden |
{"errors":[{"message":" Ip filter NG. (tenantId=[テナントID], accessCode=[アクセスコード], srcIp=[要求元IPアドレス])"}]} |
アクセス制限設定により、アクセスを拒否しています。 |
400 Bad Request |
{"errors":[{"message":" request http header error. (Header:[ヘッダ内容])"}]} |
HTTPヘッダ内容に誤りがあります。 |
401 Unauthorized |
{"errors":[{"message":" Authorization error. (AccessCode=[アクセスコード])"}]} |
アクセスコードに誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : uri of http notification format error."}]} |
通知内容のHTTP Methodの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : field_name length of http notification format error."}]} |
通知内容のHTTP Methodの指定文字列長が正しくありません。 |
400 Bad Request |
{"errors":[{"message":" input parameter error. : incorrect body_conditions of awake condition"}]} |
抑止条件のbody_conditionsの指定形式に誤りがあります。 |
400 Bad Request |
{"errors":[{"message":" URL format error. : access code is necessary."}]} |
URLにアクセスコードが指定されていません。 |
400 Bad Request |
{"errors":[{"message":"[12990] Illigal put data."}]} |
パラメータ指定に誤りがあります。 |
500 Internal Server Error |
{"errors":[{"message":"[11901] Fail to loadCollection."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[12992] Abnormality occurred by PUT processing."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11903] Fail to create CommonData."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11904] Fail to get socket(PUT)."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11905] Fail to send PreProcess(PUT)."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"[12980] Illigal delete data."}]} |
パラメータ指定に誤りがあります。 |
500 Internal Server Error |
{"errors":[{"message":"[11911] Fail to loadCollection."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[12912] Abnormality occurred by DELETE processing."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11913] Fail to create CommonData."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11914] Fail to get socket(DELETE)."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11915] Fail to send PreProcess(DELETE)."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"[12920] Illigal get data."}]} |
パラメータ指定に誤りがあります。 |
500 Internal Server Error |
{"errors":[{"message":"[11921] Fail to loadCollection."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[12922] Abnormality occurred by GET processing."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11923] Fail to create CommonData."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11924] Fail to get socket(GET)."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11925] Fail to send PreProcess(GET)."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11935] Fail to send PreProcess."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
408 Request Timeout |
{"errors":[{"message":"[11936] REST- Connection Error."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[11937] Service Unavailable.."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
500 Internal Server Error |
{"errors":[{"message":"[11938]Internal Server Error."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
503 Service Unavailable |
{"errors":[{"message":"[12900] Before start service(for initialization)."}]} |
システム初期化処理中です。しばらく待ってから再度ご利用ください。 |
429 Too Many Requests |
{"errors":[{"message":"[12906]Number of request per second has exceeded maximum usage limit of service contract."}]} |
アクセス頻度がシステム許容値を越えています。アクセス頻度を見直してください。 |
503 Service Unavailable |
{"errors":[{"message":"[11937] Service Unavailable.."}]} |
予期せぬ内部異常を検出しました。エラーメッセージをヘルプデスクまでご連絡願います。 |
400 Bad Request |
{"errors":[{"message":"number of response-data is larger than 1000","acceptable_top": [top値指定可能数]}]} |
取得データ件数が、1,001以上となる(topオプションなし)参照リクエストです。 |
400 Bad Request |
{"errors":[{"message":"response size is larger than 16MB","acceptable_top": [top値指定可能数]}]} |
取得データ量が、16MBより大となる参照リクエストです。 |
503 Service Unavailable |
{"errors":[{"message":"number of concurrent request for heavy queries exceeded the maximum usage limit."}]} |
処理負荷の高いクエリが多数同時に要求されています。同時要求数を減らしてください。 |