このノードを使用すると、Node-REDから、Platioのプレート・ミニアプリにレコードを取得・作成・更新・削除することができます。
このノードは、Platio APIを使用してPlatioと通信するため、Platio APIの基本的な動作について知っておく必要があります。Platio APIについては、Platio APIドキュメントを参照してください。
- Platio Studioでプレートを作成します。
- プレートのユーザーを作成します。この時、「レコードや添付ファイルへのAPIでのアクセスを許可」にチェックを入れます。
- プレートのPlatio Data Consoleを開き、作成したユーザーでログインします。
- 開発者ページにアクセスし、必要な情報を確認します。
各ノードには、アクセスするアプリケーションやコレクションなどの情報を、Node-REDのUIから設定することができます。
- 名前 (
name
) - ノードの名前。
- アプリケーションID (
applicationId
) - アプリケーション(プレート)のID。
- コレクションID (
collectionId
) - コレクションのID。
- Authorizationヘッダー (
authorization
) - Platio APIの認証用トークンを設定します。上記の開発者ページのAPIトークンの欄でトークンを生成し、表示された「Authorizationヘッダー」の内容をコピーして貼り付けます。
上記で設定した項目は、msg.plate
に値を設定することで、処理ごとに値を上書きすることができます。
msg.platio = {
applicationId: 'pxxxxxxxxxxxxxxxxxxxxxxxxxx',
collectionId: 'txxxxxxx',
authorization: 'Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
};
エラーが発生すると、Node-REDにエラーとして通知します。catchノードを使うことで、エラー発生時の処理を行うことができます。
platio inノードを使用すると、指定したレコードを取得したり、検索条件にマッチするレコードのリストを取得することができます。
共通の設定に加えて、以下の項目を設定することができます。
- レコードID (
recordId
) - 取得するレコードのID。
- 取得件数 (
limit
) - 最大レコード取得数。
- ソートキー (
sortKey
) - ソートキー。
column
,createdAt
,updatedAt
,createdBy
,updatedBy
のいずれか。 - ソート順 (
sortOrder
) - ソート順。
ascending
またはdescending
。 - ソートカラムID (
sortColumnId
) - ソートするカラムのID。ソートキーが
column
の場合のみ指定できます。 - 検索式 (
search
) - レコードの検索条件。詳細は、レコード検索書式を参照してください。
- タイムゾーン (
timezone
) - 検索時に使用されるタイムゾーン。
Asia/Tokyo
など。
ノードの設定または処理ごとに設定で、レコードIDを指定した場合、指定されたレコードを取得し、msg.payload
に設定します。レコードの形式については、Platio APIドキュメントを参照してください。
レコードIDを指定しなかった場合、指定したコレクション内のレコードの配列を取得し、msg.payload
に設定します。
取得件数を指定すると、指定された件数のレコードを取得します。APIの制限(100)以上の値を指定した場合、APIを繰り返し呼び出します。
platio outノードを使用すると、レコードを作成したり、既存のレコードを更新・削除することができます。
共通の設定に加えて、以下の項目を設定することができます。
- レコードID (
recordId
) - 更新・削除するレコードのID。
- 削除 (
delete
) - 指定したレコードを削除する場合には
true
。それ以外の場合にはfalse
。
ノードの設定または処理ごとに設定で、レコードIDを指定しなかった場合、msg.payload
に指定された値でレコードを作成します。
レコードIDを指定した場合には、そのレコードを更新します。レコードを更新するときには、msg.payload
に含まれないカラムの値は削除されます。
レコードIDを指定し、かつ削除がtrue
の場合には、レコードを削除します。レコードを削除する場合には、msg.payload
は使用されません。
レコード作成・更新時のmsg.payload
は、以下のような形式で指定します。詳細については、Platio APIドキュメントを参照してください。
msg.payload = {
values: {
cxxxxxxx: {
type: 'Number',
value: 20
},
cyyyyyyy: {
type: 'String',
value: 'Text'
}
}
};