PEPからkintoneへのrecord登録

背景・実現したいこと

 PEPシナリオのAPIノードを利用してkintoneアプリにrecordを登録する。

状況

 成功と判断されるが、ターゲットアプリに空白のrecordが追加される。

 

設定

URL:https://xxxxxx.cybozu.com/k/v1/record.json

HTTPメソッド:POST

Content-Type:application/json

HTTPヘッダー

キー:X-Cybozu-API-Token

値:(設定したAPIトークン)

ボディ

キー:app

値:(ターゲットのアプリID)

キー:record

値:{“name”: {“value”: “きんとーん” }}


以上です。

空白のrecordが追加されるので、最後のrecord部分の記述とは思うのですが、前例ある方がいらっしゃればご教授お願いします。

値:{“name”: {“value”: “きんとーん” }} → ☓

値:“name”: {“value”: “きんとーん” } → ☓

値:‘{“name”: {“value”: “きんとーん” }}’ → ☓

値:{‘name’: {‘value’: ‘きんとーん’ }} → ☓

向井武士さん

こんにちは。

 

PEPは使ったことがないのですが、以前に似たようなシステムで同じようなことがあり

その時は日本語がエンコードされていないことが原因でした。

 

「name」というのはフィールドコードでしょうか。

「きんとーん」を「kintone」など英語表記に変えてみて挙動は変わりますでしょうか。

kouichi様

お世話になります。

'name’はフィールドコードです。(一行文字列)

{‘name’: {‘value’: ‘kintone’ }}

で送信しても同じ結果でした。

ボディ部分で’app’が正しく動作しているので、recordの値と見ています。

上記以外に色々試しましたがデフォルト値(空白)のレコードが追加される状態です。

ご確認いただきありがとうございます。

JSONの書き方は問題ないと思うのですが。

{name:{value:"kintone"}}

クォーテーション取ったり、スペース取ったりしても変わらないですよね。

 

PEP側で特有の書き方があるのかもしれません。

PEPサポートに問い合わせされた早い解決に繋がるかもです。

 

気になるので私もPEPトライアルしてみます。

koichi様

ありがとうございます。

上記で試しても同様でした。

PEP側にもここのページURLを送って問合せします。

koichi様

ボディ部分をパラメータで「キー+値」で設定するのではなく、ボディ部分を「RAW payload」にすべてベタで記述する方法をアドバイスされました。

つまり…

ではなく以下の様にRAW payload側に要素すべてを記載。

これでKintone側のレコードにbotから内容が入りました。

蓋を開けてみれば「なぁんだ」となるのですが、ちょっと癖のあるつくりでした。

情報共有ありがとうございます。

別の入力枠があったんですね。

キーと値という表記が紛らわしかったですね。

補足します。

PEPで変数等を記載する場合…

{
"app": "170",
"record": {
"name": {"value": {% get_platform_username %} }
}
}

と書くと失敗します。

違和感を感じると思いますが、変数もダブルクォーテーションで囲む必要があります。

{% get_platform_username %} は、ユーザー名の変数)

変数が「{xxxx}」と表記される為、囲まないと要素扱いになりJSONの形式になりません。

{
"app": "170",
"record": {
"name": {"value": "{% get_platform_username %}" }
}
}

癖の強い仕様です。

補足ありがとうございます。

これはメーカーに聞かないと分からないですね。

向井さんの質問だったのに、私が勉強させてもらいました。

PEPトライアル開始待ちなので、開始したら私も試したいと思います。

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。