GASでユーザー登録APIを連携するが、エラーとなる。
GASでユーザー登録を実装しようと考えています。
以下コードでエラーが出ます。
ユーザー削除で使えているtokenを使用しているので、tokenは間違っていないと思います。
ドメインIDの値は間違っていないかと思います。
初心者で初歩的なところで間違えているかもしれません、ご教授願います。
■エラー
{"code":"INVALID_PARAMETER","description":"domainId is required."}
■コード
function addUser(token) {
let headers = {
"Authorization": "Bearer " + token,
"Content-Type": "application/json",
};
let data =
{
"domainId": ×××××××,
"email": "×××××××",
"userName": {
"lastName": "ワークス",
"firstName": "太郎"
},
"passwordConfig": {
"passwordCreationType": "ADMIN",
"password": "test",
},
"privateEmail": "×××××××",
"searchable": true,
}
var options = {
'method': 'post',
'headers': headers,
'body': data
};
}
投稿に新しいコメントが追加されましたら通知を送信します。
コメント2
업데이트 된 답글입니다.
yuichi_bf99a2 投稿者
bodyをpayloadにすることでできました。
2023.06.22
업데이트 된 답글입니다.
'name'
あなたのコードを見る限り、domainId, email, password, privateEmail などの具体的な値は伏せられていますが、「×××××××」として提供されていることから、これらのフィールドが文字列として正しく扱われていない可能性があります。JSONデータ内で値を文字列として扱う場合は、値をダブルクオート("")で囲む必要があります。
また、optionsオブジェクト内でリクエストボディをJSON文字列に変換し、正しいプロパティ名payloadを使用する必要があります。bodyというプロパティ名はUrlFetchApp.fetchメソッドでは認識されません。
以下に修正されたコードサンプルを示します:
function addUser(token) {
let headers = {
"Authorization": "Bearer " + token,
"Content-Type": "application/json",
};
let data = JSON.stringify({
"domainId": "12345678", // ここに正しいdomainIdを文字列として設定します
"email": "test@test.com", // ここに新規登録するユーザーのメールアドレスを文字列として設定します
"userName": {
"lastName": "ワークス",
"firstName": "太郎"
},
"passwordConfig": {
"passwordCreationType": "ADMIN",
"password": "test", // 適切な初期パスワードを文字列として設定します
},
"privateEmail": "private@example.com", // ユーザーのプライベートメールを文字列として設定します
"searchable": true,
});
var options = {
'method': 'post',
'headers': headers,
'payload': data // 'body' の代わりに 'payload' を使用します
};
let response = UrlFetchApp.fetch("https://www.worksapis.com/v1.0/users", options);
console.log(response.getContentText()); // レスポンス内容を確認するためのログ出力
}
このサンプルでは、domainId, email, password, privateEmail を適切な値に置き換える必要があります。また、GASのコンソールログに出力して、実行結果を確認できるようにconsole.logを使用しています。
これらの修正後に再び実行し、エラーが解消されるかを確認してください。
2023.12.22
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。