A command-line interface for interacting with the Comapeo Cloud API.
npm install -g comapeo-cloud-cli
The CLI requires the following environment variables:
SERVER_URL
: The URL of your Comapeo Cloud serverSERVER_BEARER_TOKEN
: Your API bearer token
You can set these in your environment or create a .env
file. For temporary overrides, use these command-line options with any command:
-s, --server-url <url>
- Override server URL-t, --server-token <token>
- Override bearer token
SERVER_URL=https://yourserver.com
SERVER_BEARER_TOKEN=your-token
Get server info:
comapeo-cloud -s https://yourserver.com -t your-token info
List all projects:
comapeo-cloud -s https://yourserver.com -t your-token list-projects
List observations for a project:
comapeo-cloud -s https://yourserver.com -t your-token list-observations -p "proj_abc123"
Get an attachment:
comapeo-cloud -s https://yourserver.com -t your-token get-attachment \
-p "proj_abc123" \
--drive-id "drive_123" \
--type "photo" \
--name "filename.jpg" \
--variant "preview"
For audio files:
comapeo-cloud -s https://yourserver.com -t your-token get-attachment \
--project-id "proj_abc123" \
--drive-id "drive_123" \
--type "audio" \
--name "recording.mp3"
Create a remote detection alert:
comapeo-cloud -s https://yourserver.com -t your-token create-alert \
--project-id "proj_abc123" \
--start-date "2024-01-01T00:00:00Z" \
--end-date "2024-01-02T00:00:00Z" \
--source-id "src_123" \
--alert-type "motion-detected" \
--lon -67.890 \
--lat 12.345
List remote detection alerts for a project:
comapeo-cloud -s https://yourserver.com -t your-token list-alerts
Export data from a project as a zip containing attachments and geojoson file:
comapeo-cloud -s https://yourserver.com -t your-token export-geojson \
-p "proj_abc123" \
-o "export.zip"
Check server health:
comapeo-cloud healthcheck
- Clone the repository
- Install dependencies:
bun install
- Build the project:
bun run build
- Run tests:
bun test
All commands support temporary server configuration via CLI flags:
comapeo-cloud -s https://alt.server.com -t alt-token [command]
The package is automatically published to npm when a new release is created on GitHub. To create a new release:
- Update the version in package.json
- Create and push a new tag
- Create a new release on GitHub
The GitHub Actions workflow will automatically:
- Run tests
- Build the project
- Publish to npm
MIT