API2.0でのUSERリスト取得について

BONTY

2023.02.08既読 1572

お世話になっております。
API2.0+PHP(Laravel)にてユーザリストの取得に躓いており、ご助力賜りたく投稿させていただきました。
本来やりたい事としては「組織に対してトークbotからトークメッセージを送信」だったのですが、調べてみた結果「トークbotからのメッセージ送信は個人IDもしくはトークルームID以外にできない」との事でしたため、現在は「リストを取得→組織に分類された個人にメッセージ送信」という流れにしたいと考えております。
そのうえでAPI2.0を利用しユーザリストを取得しようとしておりますが、私の理解力が不足しており上手くユーザリストが取得できておりません。
お手数をお掛けしますが、お知恵をお貸しください。
(トークンまでは取得できております)
実際のコード
        // トークン取得
        $token = $lineWorks->lw_get_accesstoken($client_id,
$client_secret,
 $service_account_id,
 $private_key,
 'user,user.read');

        // ヘッダー情報
        $headers = ['Content-Type'  => 'application/json; charset=UTF-8',
                    'Authorization' => 'Bearer ' . $token->access_token
                   ];


        // ペイロード
        $payload = [
            'domainId' => 0000000000,
            'count' => 10,
        ];

        // HTTPリクエストを送信する
        $response = \Http::withHeaders($headers)->get($url, $payload);


$response
~~~ 略 ~~~
["reasonPhrase":"GuzzleHttp\Psr7\Response":private]=>string(2) "OK"
["statusCode":"GuzzleHttp\Psr7\Response":private]=>int(200)
~~~ 略 ~~~
※他どのdump項目を転記させていただけばよろしいでしょうか
ステータスコード等問題はなさそうなのですが、ユーザリストのデータは入っていない状態です。
不勉強でお恥ずかしい限りですが、何卒よろしくお願いいたします。

コメント2

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

    ss

    ステータス200で返却されているのであれば、正常に情報を取得できていると思います。
    Pythonですが、サンプルコード置いておきますので、参考にして頂ければと思います。



    """ユーザー情報取得(一覧)"""
    url = 'https://www.worksapis.com/v1.0/users?domainId=0000000000&count=10'
    access_token = ''

    headers = {
          'Authorization': "Bearer {}".format(access_token),
    }

    r = requests.get(url=url,headers=headers)

    hoge = json.loads(r.text)
    print(hoge['users'][0])


    response例

    {'domainId': 0000000000, 'userExternalKey': '', 'email': 'xxxxxxx@xxxxx.co.jp', 'userName': {'lastName': 'テスト', 'firstName': '太郎', 'phoneticLastName': 'テスト', 'phoneticFirstName': 'タロウ'}, 'i18nNames': [], 'nickName': None, 'privateEmail': 'xxxxxxx@xxxxx.co.jp', 'aliasEmails': [], 'employmentTypeId': 'xxxxxxx', 'searchable': True, 'organizations': [{'domainId': 0000000000, 'primary': True, 'userExternalKey': '', 'email': 'xxxxxxx@xxxxx.co.jp', 'levelId': None, 'executive': False, 'orgUnits': [{'orgUnitId': 'xxxxxxx', 'primary': True, 'positionId': 'xxxxxxx', 'isManager': True, 'visible': True, 'useTeamFeature': True, 'positionName': '社長', 'orgUnitExternalKey': None, 'orgUnitName': 'システム部', 'orgUnitEmail': 'busyo@xxxxx.co.jp', 'positionExternalKey': None}], 'organizationName': 'テスト株式会社', 'levelExternalKey': None, 'levelName': None}], 'telephone': None, 'cellPhone': '+81 00012345678', 'fax': None, 'location': '', 'task': None, 'messenger': None, 'birthdayCalendarType': None, 'birthday': None, 'hiredDate': None, 'locale': 'ja_JP', 'timeZone': 'Asia/Tokyo', 'customFields': [], 'relations': [], 'userId': 'xxxxxxx', 'isAdministrator': True, 'isPending': False, 'isSuspended': False, 'leaveOfAbsence': {'startTime': None, 'endTime': None, 'isLeaveOfAbsence': False}, 'isDeleted': False, 'suspendedReason': None, 'employmentTypeExternalKey': None, 'employmentTypeName': '利用権限タイプ'}

    2023.02.10

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

    BONTY 投稿者

    SS様

    ご回答、サンプルコードまでご記載いただきありがとうございました。
    返信が遅くなってしまい大変失礼いたしました。

    その後、別業務に手を取られており一旦本件から離れておりましたが、本日StackOverflowにてguzzleのデータ取得についての質問/回答をみつけ、記載の通りgetbodyをStringキャストすることで無事データの取得を確認できました。
    (すっかりResponseにデータがそのまま入っているものと思い込んでおりました)

    お騒がせいたしました。ご対応ありがとうございました。

    参考にしたStackoverflow投稿
    https://stackoverflow.com/questions/30549226/guzzlehttp-how-get-the-body-of-a-response-from-guzzle-6

    2023.02.21

    0
前の投稿 API 2.0を利用してSharedriveに任意のファイルをアップロード
次の投稿LINE WORKS adminでのバグと思われる事象につきまして
リスト

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