タイトルにあるAPIについてですが、既にアップロードされているファイルは
そのままにするため、ファイルキーを設定してAPIを発行しているのですが、
下記のようなエラーとなってしまいます。
{“message”:“指定したファイル(id: 2016062208171989BE55053E9C4FEDA9B275062E8025F1038) が見つかりません。”,“id”:“1505999166-2001316144”,“code”:“GAIA_BL01”}
API仕様としては、“既存のファイルを残す場合、設定を取得するAPIで得られた同じパラメータのキーを指定します。”
といった記載があり、変更APIの前に取得APIでファイルキーを取得し、
それを設定しているのですが、うまくいかない状況です。
送信しているJSON文字列は下記のようなものです。
{“app”:999,“scope”:“ALL”,“desktop”:{“js”:[{“type”:“FILE”,“file”:{“fileKey”:“2016062208171989BE55053E9C4FEDA9B275062E8025F1038”}}],“css”:[]}}
JSONの記述方法、ファイルキーの取得方法等、何か間違っているのでしょうか?
ご助力いただきますと助かります。
kiyoさん
ファイルキー取得するリクエストを、URI:‘/k/v1/app/customize’ を使用していないでしょうか?
もしそうなら、URI:‘/k/v1/preview/app/customize’ で取得しなおしてみて下さい。
それで取得したファイルキーでうまくいくと思います。
amuroさん
ご連絡ありがとうございます!試してみたいと思います!!
はじめまして。
この質問とまったく同じ内容でつまずいております。
回答にもある’/k/v1/preview/app/customize’にて取得を試してみても同じ内容のエラーがでます。
質問者様はこの内容について解決できましたでしょうか?
また何か知っている方がいればご教示ください。
気になって試してみたのですが、特にエラーは出ないですね・・・。
-
GET https://example.cybozu.com/k/v1/preview/app/customize.json?app=123
{
“scope”: “ALL”,
“desktop”: {
“js”: [
{
“type”: “FILE”,
“file”: {
“fileKey”: “英数字の文字列”,
“name”: “index.js”,
“contentType”: “text/javascript”,
“size”: “1845”
}
}
],
“css”: []
},
“mobile”: {
“js”: []
},
“revision”: “23”
}
-
PUT https://example.cybozu.com/k/v1/preview/app/customize.json
{
“app”: 123,
“scope”: “ALL”,
“desktop”: {
“js”: [
{
“type”: “FILE”,
“file”: {
“fileKey”: “1で取得した文字列”
}
}
],
“css”: []
}
}
過去のやり取りにもありましたが、GETを/k/v1/app/customizeに対して行ってしまうと、ファイルが見つかりませんエラーになりました。
asagaさん
回答ありがとうございます。
元の質問内容が私の実装したかった内容と違っていたことがわかりました。
私がやりたかったのは、apiにて、あるアプリのカスタマイズファイルを他アプリへ反映することでした。
同一アプリを更新する場合はエラーもなく実行できることを確認致しました。
おかげで他アプリへの反映ができないことがわかりましたので、他の方法を検討してみます。