dhaga.docs
Using Dhaga

Importing contacts

Add contacts from a LinkedIn ZIP, vCard, or CSV, and manage connected Google or Outlook accounts in one place.

Already have an address book somewhere? Import it instead of re-typing. Dhaga takes it three ways: a file you export (works everywhere, no setup), a connected Google or Outlook account that then keeps itself in step, and on-device import in the mobile app. Existing people are matched and skipped, and every imported field keeps a receipt so you can trace where it came from — a permanent note on the contact, not something you can edit away.

Open Contacts & sync (/app/import) from the navigation. This is the one place to connect accounts, change their sync settings, and import contact files. Old Settings links now point here instead of showing a second copy of the same controls.

From LinkedIn (upload the ZIP)

  1. Click Get contacts from LinkedIn to open LinkedIn's Get a copy of your data page.
  2. Select Connections and request the archive. LinkedIn emails a ZIP, usually within a day.
  3. Return to Contacts & sync and upload that ZIP directly. Do not unzip it. If you already unzipped it, you can upload Connections.csv instead.

Dhaga opens the archive in your browser and reads only Connections.csv. A missing, damaged, ambiguous, or oversized archive stays on the page with a specific recovery step; the archive and unrelated files inside it are never sent to the server.

From a file (.vcf or CSV)

Drop a .vcf (vCard) or .csv onto the Phone or computer file area, or click Choose file. The file is parsed entirely in your browser — nothing is uploaded until you pick who to keep. You then get a review list to select rows, and only the selected contacts are saved. Dhaga detects Google, LinkedIn, and vCard exports automatically; there is no Dhaga format to choose.

The screen has collapsible "How to export from…" steps for each source. In short:

  • iPhone / iCloud — on a computer, sign in to iCloud.com → Contacts, press ⌘A / Ctrl+A to select everyone, then the gear (bottom-left) → Export vCard. (On the phone you can share a single contact as .vcf, but iCloud.com exports everyone at once.)
  • AndroidContacts app → Settings → Export → Export to .vcf file, then move it to your computer.
  • Googlecontacts.google.com → Export and choose vCard or Google CSV (both work here).
  • LinkedIn — use the ZIP-first option above. A direct Connections.csv remains supported if you already extracted it.

Dhaga reminds you to finish a LinkedIn import

LinkedIn doesn't hand you the file on the spot — it emails a ZIP about a day later, which is easy to forget. After you click Get contacts from LinkedIn, a short "did your export arrive? upload it here" reminder rides your daily brief on days 1, 3, 6, and 7, then stops — and stops sooner the moment you import your LinkedIn contacts. Upload the ZIP directly from the reminder; no unzipping is required. It's a section of that one daily email, not a message of its own, and clicking the button is the only opt-in it has. Reminders only go out on instances with email configured; an instance without email set up simply skips them.

Big address books

Very large files (100k+ contacts, tens of MB) will warn you and can be slow — split the .vcf into a few smaller files if it drags.

Connect Google or Outlook — once, not every time

When the instance is configured for it, the Google & Outlook accounts card at the top of Contacts & sync shows Connect Google Contacts and/or Connect Outlook Contacts. Clicking one sends you to that provider's own consent screen — you're granting your own account, and you can disconnect any time.

This is not a one-off copy. The account becomes a connection Dhaga keeps in step: new contacts arrive on their own, changes follow, and deletions are honoured. You never import that account again — the block lists what's connected and when each one last synced, so you can see it's working instead of guessing.

  • Google covers Google Contacts.
  • Outlook covers Outlook.com, Hotmail, Live, and Microsoft 365.
  • More than one account per provider is fine — two Google accounts, work and personal, each sync separately. Once one is connected the button reads Connect another … account, and each connection is listed by its own email address.

Everything you can change about a connection — pause syncing, run it now, let Dhaga write changes back out, or disconnect — lives in that same Google & Outlook accounts card. Choose one-way if Dhaga should only read address-book fields. Two-way can write those fields back, but never writes your private notes, extracted facts, or relationships to the provider.

These buttons only show when configured

The connector needs a one-time operator setup (OAuth credentials). If you don't see it, the instance hasn't wired it up — the file import above covers every source in the meantime. Administrators of a self-hosted enterprise deployment: see Self-hosting for the Google Cloud / Azure steps.

No Apple / iCloud connector

There's no "Connect iCloud" button — Apple provides no contacts API. For Apple/iCloud contacts, use the .vcf export from iCloud.com described above; it brings in everyone at once.

On your phone (mobile app)

The mobile app can import the contacts already on the device. Open the Import contacts screen, grant the Contacts permission when asked (iOS and Android each show a native prompt; if you decline, the screen offers an Open Settings shortcut), then pick who to bring in. It uses the same API key you set up on the mobile Setup screen — no extra configuration.

Needs a native build

On-device import ships as code but needs a native app build to appear (it can't arrive via an over-the-air JS update or plain Expo Go), and is pending on-device testing.

What happens to the non-people you bring in

An address book is never only people — "Ola Support", "Vegetable Vendor", "AC Repair" come in with everyone else. Dhaga looks over the imported rows you never do anything with and marks the ones that read as a business or a service, so they stop turning up in the Home briefing and the other places Dhaga volunteers a name.

Nothing is deleted or hidden. Those rows stay in People, in search, in duplicate detection, in your Wrapped card and in every export — the only change is that Dhaga stops suggesting them. The People page shows an "N hidden from suggestions" link that opens exactly those rows, each contact says whether the call was Dhaga's guess or yours, and one tap overrules it for good. Anyone you've starred, noted, or reached out to is never judged at all. See your daily briefing for the full behaviour.

Once people are in, add notes and facts, enrich them from the web, or group them into events.

On this page