Skip to main content

お世話になっております。

 

今やりたい事としましては、商談オブジェクトが作成されたのをトリガーに、

GoogleDriveの共有ドライブ配下に商談フォルダを作成したいです。

 

例)

商談名 = 「商談テスト」のレコードを作成

共有ドライブ>テスト管理>01. 商談管理

∟「商談テスト」フォルダ

 

下記サイトを参考にSalesforceの組織設定とApex製造を行い、

GoogleDriveのマイドライブ上でのフォルダ生成まで確認ができたのですが、

GoogleDriveの共有ドライブ上でのフォルダ生成がうまくいきません。

 

恐らく共有ドライブへのアクセス権限(アクセストークン)を

付与するためのロジックが足りないのではと個人的には思いつつ、

その製造に手詰まりになってしまったため、こちらで質問させていただきました。

 

上記内容の共有ドライブでのフォルダ生成APIに関して、

どなたかご教授いただけないでしょうか?

 

■参考リンク

https://qiita.com/sikj/items/1b0f51d3f9f119dc322c

 

■修正したコード

変更前)

JSONGenerator gen = JSON.createGenerator(true);

gen.writeStartObject();

gen.writeStringField('mimeType', 'application/vnd.google-apps.folder');

gen.writeStringField('name', folderName);

gen.writeEndObject();

 

変更後)

JSONGenerator gen = JSON.createGenerator(true);

gen.writeStartObject();

gen.writeStringField('mimeType', 'application/vnd.google-apps.folder');

gen.writeStringField('name', folderName);

gen.writeObjectField('parents', new List<String>{'<01. 商談管理フォルダのフォルダID>'});

gen.writeEndObject();

3 respuestas
  1. 25 nov 2024, 4:03

    @sena takagi さん

     

    パラメータの中に supportsAllDrivesというのを追加して、これをtrueにすると作成させませんか?

     

     リクエスト元のアプリケーションがマイドライブと共有ドライブの両方をサポートしているかどうかを指定します。 

     

    https://developers.google.com/drive/api/reference/rest/v3/files/create?hl=ja

     

    https://developers.google.com/drive/api/guides/manage-sharing?hl=ja

0/9000