wealthbox-cli 1.0.0__tar.gz → 1.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/CONTRIBUTING.md +19 -4
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/PKG-INFO +28 -10
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/README.md +27 -9
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/pyproject.toml +1 -1
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/.env.example +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/.github/workflows/ci.yml +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/.gitignore +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/LICENSE +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/SECURITY.md +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/docs/cli-reference.md +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/__init__.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/__init__.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/_config.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/_util.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/activity.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/categories.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/comments.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/config.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/contacts.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/events.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/households.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/main.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/me.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/notes.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/opportunities.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/projects.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/tasks.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/users.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/cli/workflows.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/__init__.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/activity.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/base.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/categories.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/comments.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/contacts.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/events.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/households.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/me.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/notes.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/opportunities.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/projects.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/tasks.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/users.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/client/workflows.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/__init__.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/activity.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/comments.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/common.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/contacts.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/custom_fields.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/enums.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/events.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/households.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/notes.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/opportunities.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/projects.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/tasks.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/models/workflows.py +0 -0
- {wealthbox_cli-1.0.0 → wealthbox_cli-1.0.1}/src/wealthbox_tools/py.typed +0 -0
|
@@ -15,7 +15,13 @@ source .venv/bin/activate # macOS/Linux
|
|
|
15
15
|
pip install -e ".[dev]"
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Configure your Wealthbox API token:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
wbox config set-token
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Or copy `.env.example` to `.env` and add your token there.
|
|
19
25
|
|
|
20
26
|
## Running Tests
|
|
21
27
|
|
|
@@ -32,8 +38,8 @@ ruff check src/
|
|
|
32
38
|
mypy src/
|
|
33
39
|
```
|
|
34
40
|
|
|
35
|
-
- **ruff** for linting (E, F, I rules;
|
|
36
|
-
- **mypy** in strict mode
|
|
41
|
+
- **ruff** for linting (E, F, I rules; 120-char line length)
|
|
42
|
+
- **mypy** in strict mode (has known `untyped-decorator` warnings from Typer — not currently enforced in CI)
|
|
37
43
|
|
|
38
44
|
## Project Architecture
|
|
39
45
|
|
|
@@ -55,11 +61,20 @@ Three layers under `src/wealthbox_tools/`:
|
|
|
55
61
|
6. If the resource has category types, add them via `make_category_command()` in the resource's `categories` sub-app
|
|
56
62
|
7. Add tests in `tests/test_<resource>_create.py` and `tests/test_<resource>_update.py`
|
|
57
63
|
|
|
64
|
+
## CI
|
|
65
|
+
|
|
66
|
+
Pull requests and pushes to `main` run GitHub Actions CI:
|
|
67
|
+
|
|
68
|
+
- **Lint:** `ruff check src/ tests/`
|
|
69
|
+
- **Test:** `pytest` across Python 3.11, 3.12, 3.13
|
|
70
|
+
|
|
71
|
+
Both must pass before merging.
|
|
72
|
+
|
|
58
73
|
## Pull Requests
|
|
59
74
|
|
|
60
75
|
- Keep PRs focused — one feature or fix per PR
|
|
61
76
|
- All tests must pass (`pytest`)
|
|
62
|
-
- No ruff
|
|
77
|
+
- No ruff errors
|
|
63
78
|
- Update the CLI reference docs if commands change
|
|
64
79
|
|
|
65
80
|
## Reporting Issues
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: wealthbox-cli
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.1
|
|
4
4
|
Summary: CLI and client library for the Wealthbox CRM API
|
|
5
5
|
Project-URL: Homepage, https://github.com/massive-value/wealthbox-cli
|
|
6
6
|
Project-URL: Issues, https://github.com/massive-value/wealthbox-cli/issues
|
|
@@ -92,26 +92,44 @@ pip install -e ".[dev]"
|
|
|
92
92
|
|
|
93
93
|
## Configuration
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
### Getting your API token
|
|
96
96
|
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
1. Log in to [Wealthbox](https://app.crmworkspace.com)
|
|
98
|
+
2. Click the three dots menu (**...**) in the top right
|
|
99
|
+
3. Go to **Settings** -> **API Access**
|
|
100
|
+
4. Click **Create Access Token**
|
|
101
|
+
|
|
102
|
+
### Storing your token
|
|
103
|
+
|
|
104
|
+
``` bash
|
|
105
|
+
wbox config set-token
|
|
99
106
|
```
|
|
100
107
|
|
|
101
|
-
|
|
108
|
+
This prompts for your Wealthbox API token (input is masked) and stores it in
|
|
109
|
+
`~/.config/wbox/config.json` (Linux/macOS) or `%APPDATA%\wbox\config.json` (Windows).
|
|
102
110
|
|
|
103
|
-
|
|
111
|
+
Other configuration commands:
|
|
104
112
|
|
|
105
113
|
``` bash
|
|
106
|
-
|
|
114
|
+
wbox config show # display stored config (token masked)
|
|
115
|
+
wbox config clear # remove stored config
|
|
107
116
|
```
|
|
108
117
|
|
|
109
|
-
**
|
|
118
|
+
**Alternative methods** (for CI, scripting, or containers):
|
|
110
119
|
|
|
111
|
-
```
|
|
112
|
-
|
|
120
|
+
``` bash
|
|
121
|
+
# Environment variable
|
|
122
|
+
export WEALTHBOX_TOKEN="your_api_token_here"
|
|
123
|
+
|
|
124
|
+
# .env file in working directory
|
|
125
|
+
echo 'WEALTHBOX_TOKEN=your_api_token_here' > .env
|
|
126
|
+
|
|
127
|
+
# Per-command flag
|
|
128
|
+
wbox contacts list --token your_api_token_here
|
|
113
129
|
```
|
|
114
130
|
|
|
131
|
+
Token is resolved in this order: `--token` flag > `WEALTHBOX_TOKEN` env var > config file > `.env` file.
|
|
132
|
+
|
|
115
133
|
------------------------------------------------------------------------
|
|
116
134
|
|
|
117
135
|
## Usage
|
|
@@ -61,26 +61,44 @@ pip install -e ".[dev]"
|
|
|
61
61
|
|
|
62
62
|
## Configuration
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
### Getting your API token
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
1. Log in to [Wealthbox](https://app.crmworkspace.com)
|
|
67
|
+
2. Click the three dots menu (**...**) in the top right
|
|
68
|
+
3. Go to **Settings** -> **API Access**
|
|
69
|
+
4. Click **Create Access Token**
|
|
70
|
+
|
|
71
|
+
### Storing your token
|
|
72
|
+
|
|
73
|
+
``` bash
|
|
74
|
+
wbox config set-token
|
|
68
75
|
```
|
|
69
76
|
|
|
70
|
-
|
|
77
|
+
This prompts for your Wealthbox API token (input is masked) and stores it in
|
|
78
|
+
`~/.config/wbox/config.json` (Linux/macOS) or `%APPDATA%\wbox\config.json` (Windows).
|
|
71
79
|
|
|
72
|
-
|
|
80
|
+
Other configuration commands:
|
|
73
81
|
|
|
74
82
|
``` bash
|
|
75
|
-
|
|
83
|
+
wbox config show # display stored config (token masked)
|
|
84
|
+
wbox config clear # remove stored config
|
|
76
85
|
```
|
|
77
86
|
|
|
78
|
-
**
|
|
87
|
+
**Alternative methods** (for CI, scripting, or containers):
|
|
79
88
|
|
|
80
|
-
```
|
|
81
|
-
|
|
89
|
+
``` bash
|
|
90
|
+
# Environment variable
|
|
91
|
+
export WEALTHBOX_TOKEN="your_api_token_here"
|
|
92
|
+
|
|
93
|
+
# .env file in working directory
|
|
94
|
+
echo 'WEALTHBOX_TOKEN=your_api_token_here' > .env
|
|
95
|
+
|
|
96
|
+
# Per-command flag
|
|
97
|
+
wbox contacts list --token your_api_token_here
|
|
82
98
|
```
|
|
83
99
|
|
|
100
|
+
Token is resolved in this order: `--token` flag > `WEALTHBOX_TOKEN` env var > config file > `.env` file.
|
|
101
|
+
|
|
84
102
|
------------------------------------------------------------------------
|
|
85
103
|
|
|
86
104
|
## Usage
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|