カレンダー連携で「401:Unauthorize」 となる原因について

rs_a95fdd

2022.08.26既読 1219

401:Unauthorize となってしまう原因についてご教示ください。
①まではデータ取得出来ているのですが、②で「Authentication failed :コンシューマーキーとトークンの認証失敗」が出力されます。
ヘッダー情報が異なるのでしょうか。
tokenは、①の戻り値です。

■送信してる情報
・URLは、https://www.worksapis.com/v1.0/users/" + userId + "/calendar/events"
・リクエストヘッダは、"Authorization": "Bearer " + token
           "Content-Type": "application/json; charset=UTF-8"
■レスポンス
{'code': 'UNAUTHORIZED', 'description': 'Authentication failed'}
<Response [401]>

■ソースコード(python)

#①

def get_jwt(client_id, service_account_id, privatekey):
   current_time = datetime.datetime.now().timestamp()
   iss = client_id
   sub = service_account_id
   iat = current_time
   exp = current_time + (60 * 60) # 1時間
   jws = jwt.encode(
       {
           "iss": iss,
           "sub": sub,
           "iat": iat,
           "exp": exp
       }, privatekey, algorithm="RS256")
   #JWT取得
   return jws
#②
def CalendareventS(jwt_txt,CalendarId,**EventParams):
   #リクエストURLの作成    
   apiurl = apiurl + AccountId
   apiurl = apiurl + '/calendar/events'
   header = {
       'Authorization' : 'Bearer ' + jwt_txt,
       'Content-Type' : 'application/json; charset=UTF-8'
   }
   #EventParamsに登録予定情報をセット
   r = requests.post(apiurl, headers = header, json = EventParams)
   return r


コメント1

  • 업데이트 된 답글입니다.

    rs_a95fdd 投稿者

    連投ですみません。
    access_token取得で対応出来ましたので本件クローズします。

    2022.08.29

    0
前の投稿mustReadDaysについて
次の投稿リッチメニューについて
リスト

まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。