cURLでの「投稿を作成」APIの呼び出しに失敗します
お世話になります。
「ホーム」の「投稿を作成」するAPIについてです。
アクセストークンの取得までは完了しており、トークンを使ってAPI呼び出しに挑戦しています。
cURLでAPIの呼び出しを行うのですが、どうしても成功せず、400 Bad Request; Invalid parameterが返ってきます。
エラーの詳細としては、
Required request part 'article' is not present.
ということで、エンドポイントにアクセスできてはいるけれども、ボディデータを渡すことに失敗しているような印象です。
いろんな記述方法を試しましたが、そのうちの一つが以下のcURLコマンドです。
-X POST
-H "Content-Type: multipart/form-data; charset=UTF-8"
-H "consumerKey: {consumerKey}"
-H "Authorization: Bearer {token}"
-F "article={JSON}"
JSON部分の記述は、
{
"title":"[TC][OpenApi] testTitle",
"body":"testBody",
"registerUtcDate":null,
"modifyUtcDate":null,
"useComment":true,
"boardNo":{{boardNo}},
"domainId":"{{domainId}}",
"memberName":null,
"department":null,
"attentionPeriodInDays":0,
"sendCreatedNotify": false
}
と、お手本通りの型をテストしていて、実際にはBoardNoとdomainIdはプログラム内で実際の値に置換しています。
JSONのダブルクォーテーションのエスケープ処理なども試していますが、結果は変わりませんでした。
(cURLで記述したいのは以下の部分です。)
Content-Type: multipart/form-data; boundary=WebAppBoundary
--WebAppBoundary
Content-Disposition: form-data; name="article"
{
"title":"[TC][OpenApi] testTitle",
"body":"testBody",
"registerUtcDate":null,
"modifyUtcDate":null,
"useComment":true,
"boardNo":{{boardNo}},
"domainId":"{{domainId}}",
"accountId":"{{accountId}}",
"memberName":null,
"department":null,
"attentionPeriodInDays":0
}
お知恵をお借りできれば幸いです。
投稿に新しいコメントが追加されましたら通知を送信します。
コメント4
업데이트 된 답글입니다.
LINE WORKS 公式アカウント
また、最小限の必須情報で投稿を試してみてください。
-F 'article={ "domainId":xxxxxxxx,"boardNo":xxxxxxxxxxxxxxx, "title":"testTitle", "body":"testBody"}'
2020.06.25
업데이트 된 답글입니다.
hikarusasaki 投稿者
明日、ご指摘のように最低限のデータで試してみたいと思います。また結果をご報告いたします。
2020.06.26
업데이트 된 답글입니다.
hikarusasaki 投稿者
下記のcURLコマンドで試していますが、同様の400エラーです。
-X POST
-H "Content-Type: multipart/form-data; charset=UTF-8"
-H "consumerKey: {consumerKey}"
-H "Authorization: Bearer {accessToken}"
-F "article={ \"title\":\"testTitle\", \"body\":\"testBody\", \"boardNo\":xxxxxxxxxxx, \"domainId\":xxxxxxxxx }"
ここでももちろん、ダブルクォーテーションエスケープをしないままやってみたり、JSONの改行を削除しないでやってみたり、-Fオプションの記述を変えてみたりなど、いろいろ試しています。
ちなみに、エラーのメッセージは下記の通りです。
{
"error":"Bad Request",
"message":"Invalid parameter",
"devMessage":"Required request part 'article' is not present",
"status":400,
"domain":"home",
"code":"SERVICE_UNAVAILABLE"
}
2020.06.26
업데이트 된 답글입니다.
hikarusasaki 投稿者
2020.06.27
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。