Skip to main content

antidetect-importer

AdsPower & GoLogin to Multilogin migration — parse competitor exports, audit gaps, push MLX profile/create.

PyPI version Python versions License: MIT

pip install antidetect-importer
antidetect-import parse export.csv --format adspower -o raw.json

CLI: antidetect-import · Python 3.10+ · optional [mlx] for Launcher helpers

Coupon hubs: Verified MLX deals (SAAS50 browser / MIN50 cloud phone) — anti-detect.github.io · SaaSVerdict. Get latest codes before checkout. Core CLI works without a vendor account. Affiliate disclosure.

AdsPower & GoLogin to Multilogin migration — parse competitor exports, audit gaps, push MLX profile/create.

Parse AdsPower, Dolphin Anty, Incogniton, and GoLogin profile exports into a neutral JSON schema, then normalize to MLX profile/create payloads.

Built for migration workflows: audit what transfers, fill gaps, push profiles to Multilogin.

Problem

Competitor antidetect tools export profiles in incompatible CSV/JSON shapes. MLX profile/create expects a specific payload — timezone, proxy, UA, and masking flags do not map 1:1. Manual migration across hundreds of profiles is error-prone and hides gaps (missing cookies, startup URLs, credentials).

Install

pip install antidetect-importer

# MLX push helper
pip install antidetect-importer[mlx]

Quick start

antidetect-import parse tests/fixtures/adspower/export.csv --format adspower -o raw.json
antidetect-import report raw.json --show-missing-fields
antidetect-import normalize --input raw.json -o mlx-ready.json --folder-id YOUR-FOLDER-UUID
antidetect-import mlx-push --input mlx-ready.json   # requires MLX_TOKEN

CLI

# 1. Parse vendor export → neutral JSON
antidetect-import parse tests/fixtures/adspower/export.csv --format adspower -o raw.json
antidetect-import parse tests/fixtures/dolphin/backup.json --format dolphin -o raw.json
antidetect-import parse tests/fixtures/incogniton/export.json --format incogniton -o raw.json
antidetect-import parse tests/fixtures/gologin/export.json --format gologin -o raw.json

# 2. Migration readiness report (table when gaps exist)
antidetect-import report raw.json --show-missing-fields

# 3. Normalize → MLX-ready JSON
antidetect-import normalize --input raw.json -o mlx-ready.json --folder-id YOUR-FOLDER-UUID

# 4. Push to MLX Cloud (optional)
export MLX_TOKEN=your_bearer_token
export MLX_FOLDER_ID=your-folder-uuid
antidetect-import mlx-push --input mlx-ready.json

# Fail fast on first API error (default: continue and print summary table)
antidetect-import mlx-push --input mlx-ready.json --fail-fast

mlx-push reads the profiles array from mlx-ready.json, maps name, proxy, timezone, ua, and notes into MLX profile/create payloads, and prints a rich summary table listing created and failed profiles (--continue-on-error, default on).

Neutral schema

See docs/NEUTRAL_SCHEMA.md for the full field reference.

Each profile in raw.json includes identity (name, source, source_id), locale (timezone, language, user_agent), screen, proxy, cookies, vendor extras, and parser warnings.

MLX normalization maps these to POST /profile/create with default masking flags. Sidecar fields _cookies, _startup_urls, and _credentials are preserved for follow-up import (cookies via Launcher API or session-bundle-kit).

Supported migrations

Vendor Supported --format Synthetic fixture
AdsPower yes adspower tests/fixtures/adspower/export.csv
Dolphin Anty yes dolphin tests/fixtures/dolphin/backup.json
Incogniton yes incogniton tests/fixtures/incogniton/export.json
GoLogin yes gologin tests/fixtures/gologin/export.json

Typical export sources: AdsPower bulk CSV; Dolphin API { "data": [...] }; Incogniton profileData JSON; GoLogin REST profile array (see docs/NEUTRAL_SCHEMA.md).

Fixtures are synthetic and anonymized — see tests/fixtures/README.md.

Migration checklist (10 steps)

  1. Inventory — List profiles, folders, and tags in the source browser; note plan limits on the MLX target.
  2. Export metadata — AdsPower CSV, Dolphin API JSON, Incogniton API JSON, or GoLogin REST export (not proprietary local DBs).
  3. Parse — antidetect-import parse <export> --format <vendor> -o raw.json.
  4. Audit gaps — antidetect-import report raw.json --show-missing-fields (table lists missing MLX fields per profile).
  5. Fix timezone / language — Fill IANA timezone and BCP-47 locale in source tool or post-process raw.json.
  6. Verify proxy — Ensure each profile has host + port; credentials stay in raw.json / mlx-ready.json (handle as secrets).
  7. Normalize — antidetect-import normalize --input raw.json -o mlx-ready.json --folder-id <uuid>; review required_gaps and filled_defaults in output.
  8. Drop or patch incomplete — Re-run with --drop-incomplete or fix gaps before push.
  9. Push profiles — antidetect-import mlx-push --input mlx-ready.json (requires MLX_TOKEN; optional MLX_FOLDER_ID).
  10. Import cookies & warm up — Load _cookies via Launcher API or session-bundle-kit; re-install extensions; warm sessions before production.

Proxy passwords are redacted in reports and logs; parsed JSON files written with -o retain credentials needed for migration.

When migration reports show gaps (playbook)

report --show-missing-fields is the decision point — do not mlx-push blind on hundreds of profiles.

Gap signal What it means Next step
Missing timezone / language Export incomplete or vendor default Fix in source tool or patch raw.json
Empty proxy host Profile was local/direct Assign lane from proxy-lane-checker
required_gaps after normalize MLX mandatory fields absent --drop-incomplete or fill via profile-yaml-factory templates
_cookies sidecar only Metadata pushed, sessions not session-bundle-kit or Launcher cookie import
High filled_defaults count Vendor export thin Spot-check 3 profiles in MLX UI before full batch

End-to-end migration pipeline:

antidetect-import parse export.csv --format adspower -o raw.json
antidetect-import report raw.json --show-missing-fields
proxy-lane check proxies.txt -o lanes.json                    # optional: validate exits
antidetect-import normalize --input raw.json -o mlx.json --folder-id FOLDER
fp-coherence audit mlx.json --strict                          # lint normalized fingerprints
antidetect-import mlx-push --input mlx.json --fail-fast       # pilot 1 profile first
cdp-probe mlx --profile-id NEW_UUID --url https://example.com # post-migration exposure check

Coupon hubs: anti-detect.github.io · SaaSVerdict — guides for SAAS50 / MIN50, pricing comparisons, and workflow playbooks.

Migrate only profiles you are authorized to move; respect source and target vendor terms.

Python API

from antidetect_importer import parse_file, normalize_document

doc = parse_file("tests/fixtures/dolphin/backup.json", format="dolphin")
mlx_doc = normalize_document(doc, folder_id="your-folder-uuid")
print(mlx_doc["required_gaps"])

Development

cd antidetect-importer
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest
ruff check .
python -m build

Limitations

  • Metadata migration — Parses export files; does not read proprietary local databases or decrypt vendor vaults.
  • Cookies need follow-up — _cookies sidecars are preserved but not pushed by mlx-push; use Launcher API or session-bundle-kit (session-bundle export).
  • Vendor coverage — AdsPower, Dolphin, Incogniton, GoLogin only; other tools need custom parsers.
  • MLX API required for push — mlx-push needs MLX_TOKEN; parse/normalize/report are offline.

Production

Parse → report → normalize → mlx-push covers competitor metadata migration into MLX profile/create. Cookies and extensions need the follow-up steps in the migration checklist above.

Partner note (affiliate): If Multilogin X is your migration target (folder pools, Launcher CDP, isolated profiles at scale), eligible new browser purchases may accept code SAAS50 at multilogin.com — verify current terms before checkout. We only mention MLX when migration workflow fits; parse/normalize work offline without any account. Full disclosure: docs/AFFILIATE.md. Deals hubs: anti-detect.github.io · SaaSVerdict. Coupon details only via antidetect-import --show-deal (never printed by default).

FAQ: docs/FAQ.md — AdsPower to Multilogin, Dolphin Anty, Incogniton, GoLogin migration.

Related tools (on PyPI)

Package CLI Role
playwright-cdp-probe cdp-probe CDP / WebDriver exposure score
cookie-jar-bridge cookie-bridge Netscape ↔ Playwright cookies
proxy-lane-checker proxy-lane Proxy TCP / HTTP / geo / DNSBL
fingerprint-coherence fp-coherence UA / screen / timezone lint
mlx-warmup-kit mlx-warmup Post-migration browser warmup
cloud-phone-kit cloud-phone Mobile app profiles (TikTok/IG)
automation-farm-runner farm-runner Folder cron + mlx-pool

Migration pipeline: antidetect-import parse → mlx-push → mlx-warmup plan → farm-runner mlx-pool

License

MIT


Production antidetect: Multilogin X · Code SAAS50 (-50% browser) · MIN50 (-50% cloud phone)
More scripts: @Multilogin_Scripts_Bot · anti-detect.github.io · SaaSVerdict

Metadata

Release files for antidetect-importer 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for antidetect-importer 0.4.1
File Size Uploaded Provenance
antidetect_importer-0.4.1.tar.gz 29.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for antidetect-importer 0.4.1
File Interpreter ABI Platform
antidetect_importer-0.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 54.6 kB

Release files / antidetect_importer-0.4.1.tar.gz

Download URL antidetect_importer-0.4.1.tar.gz
Size 29.0 kB
Tags Source
SHA-256 checksum
How to use checksums
be9be08951652d582f2d54817b3ee12cd494a0b78fb2b130b2e930d5ba062b45
BLAKE2b-256 checksum
How to use checksums
83c92b4fc8ecf585832e7caf7db5777dfd3a6a179ded0b41e4de41891824ad7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release files / antidetect_importer-0.4.1-py3-none-any.whl

Download URL antidetect_importer-0.4.1-py3-none-any.whl
Size 25.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2fabb44ba89ce8a752b5d89a4a0be84124ad78b66a812ee86c55771bbd68f864
BLAKE2b-256 checksum
How to use checksums
8067b5a8c638473042c0d274be73112d144e76e2a2df0d594291163611a87ba4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Security for antidetect-importer 0.4.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.4.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page