Two authentication paths sit side by side and it is worth knowing which one a task needs: the bot posts messages through a Service Account and a signed JWT, while calendar, mail, drive, tasks and boards go through a browser OAuth login you complete once. The diagnostic tools exist because of that split — they report which half is configured and whether the token is still good, before a call fails for a reason nobody can see.
An unofficial client for LINE WORKS (NAVER WORKS). Bot messaging runs on a Service Account, while calendar, mail, drive, tasks and boards run on a user OAuth login — one login covers all of them.
- Messages sent by the bot to a user or a channel, with elements and actions, and a channel's members listed
- The organisation directory read — which is where the userId for a recipient comes from
- Calendar events listed across a window, created with attendees and a notification, updated and deleted
- Mail sent, the inbox listed with an unread filter, and one message read in full with its attachments
- Drive files and folders listed, files uploaded from base64 content or a local path, and downloaded — to a directory, which is required above 5MB
- Tasks listed by status, created with a due date and assignees, updated or completed, and deleted
- Boards listed, a board's posts listed, one post read in detail, and a new post written with comments and notifications configurable
- An OAuth login that hands back a URL to open, defaulting to every scope so a single login covers calendar, mail, tasks, drive and boards
- Diagnostics: who you are authenticated as and whether the token is still valid, a connection check across credentials, token, private key and API, and a logout that clears it all
A LINE WORKS Developer Console app — Client ID and Client Secret, a registered redirect URL, and admin approval for bot messaging. NWORKS_CLIENT_SECRET is required; NWORKS_CLIENT_ID can instead be stored by the login command. Bot messaging additionally needs NWORKS_SERVICE_ACCOUNT, NWORKS_BOT_ID and NWORKS_PRIVATE_KEY_PATH pointing at the key that signs the JWT. Everything else runs on a user OAuth login you start from inside the conversation — take the default scope so one login covers all of it. Installed with npx nworks or globally from npm, and it doubles as a CLI. Unofficial and community-maintained, with no affiliation to LINE WORKS.
One command plus a key — npm install -g nworks, then supply credentials
