mrkeyoor.com_
Tue 01 Sept 17:23 UTC
Dataevaluationupdated 31 Aug 2026

getcontact-cli review

GetContact CLI is a Python command-line client whose documentation is in Indonesian; the repository has no English guide. It looks up phone profiles and tags through GetContact's private API, checks account quota, handles captchas, and can process a CSV without the Android app or a browser.

trackingstars / 7d
Verdict

Our GetContact CLI install finished in 24 seconds with 35 packages and 37 MB on disk, but the repo had no test target, so the quick setup does not prove its private API still works. Use it only for authorized research with an account you can afford to lose and a plan for deleting the saved results. The missing license, Indonesian-only documentation, and recent HTTP 403 repair make it a poor production dependency.

We ran it

Lab card: what happened when we ran getcontact-cliScreenshot of getcontact-cli (github.com/xdreizein666/getcontact-cli)
Install✓ · 24s35 packages · 37 MB
Build✓ · 22s
Testsn/ano test script
Known vulns0(pip-audit)
Repo2 files~706 lines of source · 0 MB · 0 CI workflows

Answers from our run

Does getcontact-cli build from source?

Dependencies installed in 24 seconds (35 packages), and the build succeeded in 22 seconds. We cloned commit 72f8b61 into a clean Debian container with 3 CPUs and no project-specific setup.

Does getcontact-cli have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does getcontact-cli have known vulnerabilities in its dependencies?

pip-audit found none in the dependency tree at the time of our run.

Who should not use getcontact-cli?

English-only teams: the sole README is in Indonesian, and the two-file repository has no English documentation.

What are the alternatives to getcontact-cli?

TruecallerJS, PhoneInfoga. Our GetContact CLI install finished in 24 seconds with 35 packages and 37 MB on disk, but the repo had no test target, so the quick setup does not prove its private API still works.

Setup3/524-second install; WhatsApp account enrollment is the harder part
Docs3/5Detailed Indonesian README, but no English guide or manifest
Community2/5533 stars and maintainer replies, with only days of history
Maturity1/5No license, release, CI, or tests; private endpoints can move

Who it’s for

Indonesian-speaking API researchers using an account and phone numbers they are authorized to test.
Developers who want profile or tag lookups and CSV output for a controlled experiment.
Users able to protect local account credentials and delete exported personal data when the work ends.

Who it’s NOT for

English-only teams: the sole README is in Indonesian, and the two-file repository has no English documentation.
Production developers who need a supported integration: the README says the client impersonates GetContact 8.4.0, while two open issues reported HTTP 403 during account setup.
Organizations that require clear redistribution rights: GitHub reports no license, and commit 72f8b61 contains no license file.
Account holders who cannot risk a block or terms dispute: the README says the private-API approach almost violates GetContact's terms and can trigger captchas when requests arrive too quickly.
Anyone collecting phone data at scale: the author explicitly says the tool is not intended for mass collection, and every result may contain personal information on disk.

Setup reality

Our sandbox install succeeded in 24 seconds, adding 35 packages and using 37 MB on disk. The build succeeded in 22 seconds. There was no test script or target, so tests were skipped; pip-audit found 0 known vulnerabilities.

The README's two-package command covers only the Python dependencies. A real lookup needs a user-owned GetContact account, its token and derived encryption material, or a WhatsApp verification flow through VerifyKit. The script stores those credentials in ~/.config/gtc/credentials.json and requests mode 600 on POSIX systems.

Every command also writes a dated result file unless its directory is changed. The client depends on private endpoints, fixed request-signing material, GetContact 8.4.0 behavior, and a separate VerifyKit request format. The README warns that upstream changes can require code edits and that rapid batches can trigger a captcha.

It queries GetContact without the Android app

The 705-line GetContact CLI sends profile, tag, quota, and captcha requests to GetContact's private service. It has an interactive menu and separate commands for automation. A search can print a display name, email, tag count, or raw JSON. Batch mode reads a CSV, waits 1.5 seconds between requests by default, records failed rows, and continues.

The repository has 2 files and about 706 lines of source. Its size makes the behavior inspectable, but does not make it official. The README calls it a research project, says it is unaffiliated with GetContact, and explains that it imitates the Android app. That experiment still touches a real account and other people's phone data.

The 24-second install is easier than account enrollment

Our sandbox installed 35 packages in 24 seconds and used 37 MB on disk. The README asks for Python 3.9 or newer plus requests and cryptography; it provides no requirements file or package installer. You run gtc.py directly, while repeatable dependency pinning is left to the user.

Useful output requires services and account material our secret-free sandbox did not supply. The generate command registers an imitated Android device, performs a Diffie-Hellman exchange, then requests WhatsApp verification through VerifyKit. Existing credentials can be added manually. The saved file contains a token, device identifier, and derived encryption value, enough to use the account according to the README.

What happened when we ran it

Our run at commit 72f8b61 installed in 24 seconds, pulled 35 packages, and occupied 37 MB. The build also succeeded in 22 seconds. The fresh Debian container had 3 CPUs, 8 GB of RAM, Python 3.12, no secrets, and no privileged access. The code and dependency setup completed in that environment.

There was no test script or target, so we skipped tests. Pip-audit reported 0 known vulnerabilities. The checkout occupied 0 MB at the lab's rounding precision and contained 2 files, roughly 706 source lines, 0 CI workflow files, no Dockerfile, and no tests directory. This does not check a real login, lookup, captcha, or WhatsApp enrollment.

Every lookup leaves personal data on disk

Each command creates 1 timestamped file in results/, even when it prints the answer to the terminal. JSON mode changes the extension, and batch mode writes CSV. GTC_RESULTS_DIR can move the directory, but the README says there is no automatic deletion. Phone numbers, names, tags, emails, and error text may remain in backups or developer folders.

Credentials live under ~/.config/gtc unless GTC_CONFIG_DIR changes it. The 705-line script attempts to set credentials.json to mode 600 on POSIX. It prints newly generated account values before saving them, while command-line imports can put a token in shell history. Use a test account, restrict the result directory, and remove both outputs after the authorized task.

Two HTTP 403 reports expose the private API cost

The code identifies itself as GetContact 8.4.0 and carries fixed signing values, device details, endpoints, and VerifyKit headers. The README says an upstream change to the app version or signing constants requires editing the script. Issues 1 and 3 soon reported an HTTP 403 during VerifyKit account setup.

The maintainer replied to both reports on August 24, 2026, saying the problem was solved. Commit 72f8b61 changed the VerifyKit request format that day. Both issues remained open when fetched, and the repository had no tagged release. A 22-second build cannot tell an operator when a private endpoint changes its accepted headers again.

No license or tests blocks ordinary production review

GitHub reported no license, and the commit tree contains only 2 files, README.md and gtc.py. There is no dependency manifest, CI workflow, tests directory, Dockerfile, or release tag. A company cannot infer permission to copy, modify, or redistribute code merely because the repository is public. Ask the author for a license before using any part in another product.

Documentation is detailed for Indonesian readers. It covers every command, CSV headers, file locations, environment variables, encryption, quotas, captcha recovery, and known limits. English-only teams get no maintained guide, and 0 automated tests means protocol corrections have no visible regression suite. The docs explain the experiment, but cannot replace executable checks around credential storage and response parsing.

PhoneInfoga avoids the GetContact account dependency

The 35-package client has two useful comparisons. TruecallerJS offers a CLI and Node.js or TypeScript API for Truecaller lookups, including bulk search, under an MIT license. PhoneInfoga uses external scanners and search engines instead of a GetContact account. Its README calls it stable but unmaintained and says results may be irrelevant or unverified. Choose it when public-source metadata is enough, and choose no lookup tool without permission to process the number.

An August 24 fix shows attention, not maturity

The repository was created on August 20, 2026 and last pushed on August 24. GitHub showed 533 stars and 3 open issues with no open pull requests on August 31. The maintainer answered two operational reports and shipped a matching fix. Seven days of public history, no releases, and no test suite are too little evidence for a stable dependency.

Our 24-second install makes GetContact CLI cheap to inspect in a sandbox. Running it against real services is the consequential step because it joins an account credential, private API impersonation, and saved personal data in one 705-line script. It may suit a controlled study with consent. For a production lookup pipeline or casual curiosity about strangers, walk away.

Alternatives

ProjectWhat it isPick it when
TruecallerJSA Node.js and TypeScript library plus CLI for Truecaller phone-number lookups.pick this instead when you need an MIT-licensed JavaScript integration and Truecaller's data is acceptable.
PhoneInfoga gh↗A GPL-licensed phone-number OSINT tool that combines metadata with external scanners.pick this instead when public-source investigation is enough and you can accept its unmaintained status.

What people are saying

  1. [velocity-scout] xdreizein666/getcontact-cli

Sources

  1. GetContact CLI README
  2. GetContact CLI repository metadata
  3. GetContact CLI source at commit 72f8b61
  4. VerifyKit HTTP 403 issue
  5. TruecallerJS README
  6. PhoneInfoga README

More data reviews

turso · TrackersListCollection · dash · awesome-zhuiju-free · iggy · ddia · the whole board →