Microsoft365 ユーザID 取得 (Microsoft365 User ID Get)
メールアドレスを指定して Microsoft365 ユーザのIDを取得します。
Configs
  • A: OAuth2 設定 *
  • B: ユーザのメールアドレス *#{EL}
  • C: ユーザID(更新) *
  • X: 通信ログを保存するデータ項目 (更新)
Script (click to open)


// Get Microsoft365 User ID via Microsoft Graph API v1.0 (ver. 202210)
// (c) 2022, Questetra, Inc. (the MIT License)

//// == 工程コンフィグの参照 / Config Retrieving ==
const oauth2  = configs.get( "conf_OAuth2" ) + "";

const email   = configs.get( "conf_email" ) + "";

const dataId_userId = configs.get( "conf_userId" );
const dataId_log    = configs.get( "conf_log" );

//engine.log("email:"+email);

//// == 演算 / Calculating ==
let accessLog = "";
let uri = "https://graph.microsoft.com/v1.0/users?$filter=startswith(mail,'" + email + "')";
let response = httpClient.begin()
  .authSetting( oauth2 )
  .get( uri );
accessLog += "---GET request--- " + response.getStatusCode() + "\n";
accessLog += response.getResponseAsString() + "\n";


//// == ワークフローデータへの代入 / Data Updating ==
const status = response.getStatusCode();

let userId = "";
if( status >= 300 ){
  engine.log(accessLog);
  throw `Failed in GET request. status: ${status}`;
} else {
  const jsonObj = JSON.parse( response.getResponseAsString() );
  const values = jsonObj.value;
  for (let i = 0; i < values.length; i++) {
    let value = values[i];
    if (value.mail == email) {
      userId = value.id;
      engine.setDataByNumber( dataId_userId, userId );
    }
  }
}
if (userId == "") {
  throw `specified user None`;
}

if( dataId_log !== "" ){
  engine.setDataByNumber( dataId_log, accessLog );
}

Download

2022-10-15 (C) Questetra, Inc. (MIT License)
https://support.questetra.com/ja/addons/microsoft365-user-id-get/
Addonファイルのインポートは Professional でのみご利用いただけます
自由改変可能な JavaScript (ECMAScript) コードです。いかなる保証もありません。

Notes

Capture

See also

%d人のブロガーが「いいね」をつけました。