@teamwork/get-bearer-token
Version:
CLI tool to obtain bearer tokens for Teamwork API using OAuth flow
70 lines (48 loc) • 1.74 kB
Markdown
# @teamwork/get-bearer-token
Interactive CLI tool to obtain bearer tokens for the Teamwork API using OAuth flow.
## Quick Start
Have nodejs >18 installed.
```bash
npx @teamwork/get-bearer-token
```
That's it! The tool will guide you through the rest.
## What It Does
1. **Prompts for your Teamwork URL** (supports custom domains and all regions)
2. **Shows you the exact Developer Portal URL** for your setup
3. **Asks for your API credentials** (Client ID, Client Secret)
4. **Opens your browser** for OAuth authentication
5. **Displays your bearer token** with usage examples
## Prerequisites
You need to register an app in the Teamwork Developer Portal first. The tool will show you the exact URL based on your setup.
## Environment Variables (Optional)
Skip the prompts by creating a `.env` file:
```env
CLIENT_ID=your_client_id_here
CLIENT_SECRET=your_client_secret_here
REDIRECT_URI=http://localhost:3000/callback
TEAMWORK_SITE_NAME=yoursite # Optional, for backwards compatibility
TEAMWORK_REGION=us # Optional, for backwards compatibility
PORT=3000 # Optional
```
## Command Options
```bash
# Use custom port
npx @teamwork/get-bearer-token auth --port 8080
# Don't auto-open browser
npx @teamwork/get-bearer-token auth --no-open
# Show help
npx @teamwork/get-bearer-token --help
```
## Using Your Token
Once you have your bearer token:
```bash
# US region
curl -H "Authorization: Bearer YOUR_TOKEN_HERE" \
"https://yoursite.teamwork.com/projects.json"
# EU region
curl -H "Authorization: Bearer YOUR_TOKEN_HERE" \
"https://yoursite.eu.teamwork.com/projects.json"
# Staging region
curl -H "Authorization: Bearer YOUR_TOKEN_HERE" \
"https://yoursite.staging.teamwork.com/projects.json"
```