feat(bitdefender): complete Companies module (build-out 2/N)

- Completed Companies module for bitdefender GravityZone Public API
- Implemented: getCompanyDetails, getCompanyDetailsByUser, createCompany, suspendCompany, activateCompany, deleteCompany
- Discovered updateCompany and getCompaniesList not available; companies retrieved via network inventory
- Company types: 0=Partner, 1=Customer; createCompany accepts nested licenseSubscription via JSON passthrough
- All write operations require --confirm; raw also restricts createCompany/suspendCompany/activateCompany
- selftest 49 -> 55 passing

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-21 10:26:14 -07:00
parent 8a64bc48e6
commit 2a1ffab19f
5 changed files with 168 additions and 8 deletions

View File

@@ -22,10 +22,13 @@ Per-module workflow: fetch module doc -> list methods + params -> add to
- [x] getLicenseInfo
- [ ] (enumerate: getMonthlyUsage? / others)
## companies
- [x] getCompanyDetails
- [ ] getCompaniesList / getCompanyDetailsByUser
- [ ] createCompany / updateCompany / deleteCompany / suspend / activate (enumerate; gated)
## companies — COMPLETE (6; no updateCompany/getCompaniesList — those don't exist)
- [x] getCompanyDetails (no id = own)
- [x] getCompanyDetailsByUser (username)
- [x] createCompany (gated; type 0=Partner/1=Customer + name)
- [x] suspendCompany (gated)
- [x] activateCompany (gated)
- [x] deleteCompany (gated)
## network
- [x] getNetworkInventoryItems · getEndpointsList · getManagedEndpointDetails