> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tovuk.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Packages

> Install the native Tovuk CLI from Cargo, npm, PyPI, or Homebrew.

All package channels run the same native Rust CLI.

```sh theme={"dark"}
cargo install --locked tovuk
npm install -g tovuk
pipx install tovuk
brew tap tovuk/tovuk https://github.com/tovuk/tovuk
brew install tovuk
```

The npm package exposes `bin/tovuk.mjs` and ships no runtime JavaScript
dependencies. The PyPI package exposes `tovuk` through `tovuk.cli:main`.

Use `TOVUK_NATIVE_BINARY=/path/to/tovuk` to test a local binary from npm or
PyPI wrappers.

Scraper requests are public data only. Do not send cookies, passwords, account
tokens, private session data, private account content, private repository
credentials, or proxy URLs.

## Command Surface

```sh theme={"dark"}
tovuk login --json
tovuk account show --json
tovuk account activity --json
tovuk api-key list --json
tovuk api-key create "Production scraper" --json
tovuk api-key revoke api_key_0123456789abcdef01234567 --json
tovuk pricing --json
tovuk scraper list --json
tovuk scraper health --json
tovuk scraper show tiktok --json
tovuk request list --limit 20 --json
tovuk request list --limit 20 --cursor <nextCursor> --json
tovuk request create tiktok '{"operation":"search","query":"rust programming","limit":100}' --json
tovuk request create github '{"operation":"codeSearch","query":"serde language:Rust","maxRepos":3,"limit":100}' --json
tovuk request create linkedin '{"operation":"post-search","query":"b2b sales","sort_type":"date_posted","author_company_urns":"1035","limit":50}' --json
tovuk request create google-maps '{"searchTerms":["coffee shops"],"locationQuery":"Seattle, WA","limit":25}' --json
tovuk request create amazon '{"operation":"search","query":"mechanical keyboard","limit":25}' --json
tovuk request show request_123 --json
tovuk request results request_123 --limit 1000 --json
tovuk request cancel request_123 --json
tovuk usage --json
tovuk billing checkout plus --json
tovuk billing portal --json
tovuk support list --limit 20 --json
tovuk support create "Request failed" "Request failed after retry." --request-id request_123 --scraper-id tiktok --failing-command "tovuk request show request_123 --json" --first-log-line "upstream timeout" --json
tovuk support resolve ticket_0123456789abcdef0123 --json
```

Use `tovuk request list --limit <n> --cursor <nextCursor> --json` and
`tovuk request results <request_id> --limit <n> --cursor <nextCursor> --json`
to continue request and stored-result pagination.

The public CLI does not deploy websites, backends, databases, workers, storage
buckets, queues, cron jobs, custom domains, secrets, or other customer
infrastructure.

AI/API agents may also open account-scoped service tickets between your account
and Tovuk through `POST /v1/support/tickets` with an account API key or session
bearer token.
Responses include `created_by` for account-session versus account-API-key
attribution.
