How to upload a contact list in MyOperator

How to upload a contact list in MyOperator

Short answer: You can bulk‑upload contacts from a CSV/XLS file in the Web Dashboard. OBD campaigns don’t accept manual uploads; use the OBD API instead.

Applies to: Web Dashboard (latest UI) • Role required: Admin or user with Contacts → Manage permission


🧭 Table of Contents


✅ What you can do

  • Bulk‑add up to 100,000 rows per upload (subject to file size and browser limits).
  • Create new contacts and update existing ones (matching on phone number).
  • Map CSV columns to MyOperator fields during upload.
  • Export, search, filter, and bulk‑edit after import.
ℹ️ Mobile: Bulk upload is web‑only. Use a desktop browser for this task.

Back to top


🔑 Prerequisites

  • MyOperator account with access to the Web Dashboard.
  • Contacts → Manage permission (admins usually have this).
  • Clean CSV/XLS in UTF‑8 (recommended) with one contact per row.
  • Pop‑ups/downloads enabled if you plan to export after upload.

Roles & access

Role

Default Access

Admin

Full access, including bulk upload/delete

Manager

Can view/add/update contacts (if granted)

Agent

Usually read‑only (request permission if needed)

Back to top


📄 CSV template & field rules

Use the following schema. Fields marked Required must be present. Extra columns are ignored unless mapped.

Field

Required

Type/Format

Max length

Notes

phone_number

E.164 (e.g., +919876543210)

20

Used as unique key for upsert

name

Text

120

Person or company name

company

Text

120

Organization name

email

Email

120

Valid email format

tags

Comma‑separated

255

e.g., prospect,priority

notes

Text

500

Free‑form notes

visibility

Enum

public (default) or private

Sample CSV (copy‑paste):

phone_number,name,company,email,tags,notes,visibility+919876543210,Asha Rao,Acme India,asha.rao@example.com,prospect,met at expo,public+911234567890,Vikram M,,vikram@example.com,priority,,private

Validation rules

  • Phone numbers must be valid E.164 (no spaces/dashes).
  • Duplicate phone_number in file → last occurrence wins.
  • Duplicate vs existing contact → update existing record.
  • Empty rows/headers → ignored.
  • Max file size: depends on browser/memory; for large files, split into chunks of ≤100k rows.

Back to top


🪜 Step‑by‑step: Upload from CSV/XLS

  1. Sign in to the MyOperator Dashboard.
  2. Go to Manage → Contacts.
  3. Click Upload Contacts.
  4. Choose file and upload your CSV/XLS.
  5. Map columns: Match your CSV headers to MyOperator fields.
    • Example: phone_number → Phone Number, name → Name, tags → Tags.
  6. Click Review to see a summary: rows to add, rows to update, rows skipped.
  7. Click Confirm & Import. The import runs in the background; large files may queue.
  8. When done, a banner/toast confirms the results with counts.

Inline diagram (process flow)

Back to top


🎯 Expected result & how to confirm

After a successful import:

  • You see a success banner/toast with counts (e.g., 9,870 added, 130 updated, 25 skipped).
  • In Contacts, the list shows the newly added/updated records.
  • Exported list reflects the new totals.

Quick verification checklist

  • Search one of the newly added numbers to confirm it exists.
  • Filter by today’s date to see recent inserts.
  • Export contacts and open the file; spot‑check column values.

Back to top


🧭 View, search & manage contacts

  • Search: by name, number, or company.
  • Filters: by tag, visibility, date added/updated.
  • Bulk actions: add/remove tags, change visibility, delete.

Back to top


📣 OBD campaigns: use the API (manual upload not supported)

Manual uploads to OBD campaigns are not supported. To queue contacts for outbound dialing, use the OBD API.

cURL template (copy‑paste & edit):

curl -X POST \  'https://api.myoperator.com/v1/obd/campaigns/{CAMPAIGN_ID}/queue' \  -H 'Authorization: Bearer <API_TOKEN>' \  -H 'Content-Type: application/json' \  -d '{    "contacts": [      {"phone_number": "+919876543210", "name": "Asha Rao"},      {"phone_number": "+911234567890", "name": "Vikram M"}    ],    "callback_url": "https://yourapp.example.com/obd/callback"  }'
🔗 See also: OBD: Queue contacts via API (endpoint, auth, rate limits, request/response models).

Back to top


🧰 Troubleshooting & common errors

Symptom / Error text

Likely cause

Fix

“File type not supported”

Wrong extension or corrupted file

Save as CSV/XLS (UTF‑8). Re‑export from your sheet tool.

“Invalid phone number at row X”

Not in E.164; has spaces/dashes

Clean numbers → +CCXXXXXXXXXX. Remove spaces/dashes.

“Duplicate phone number”

Row repeats within file

Keep just one row or ensure duplicates carry the latest values.

“Some rows were skipped”

Missing required field(s)

Ensure phone_number exists in every row.

Export button disabled

Heavy filters/date range

Reduce the date range or clear filters, re‑try.

CSV shows garbled characters

Wrong encoding

Import as UTF‑8 in Excel (Data → From Text/CSV → File Origin: UTF‑8) or open in Google Sheets.

Upload stalls on large files

Browser/memory limits

Split into chunks of ≤100k rows; upload sequentially.

Back to top


🙋 FAQs

  • What’s the maximum rows per file?
    Up to 100,000 rows per upload is recommended for stability.
  • Can I update existing contacts through CSV?
    Yes. Matching phone_number updates the record.
  • Which columns are mandatory?
    Only phone_number is required; others are optional.
  • Will tags overwrite or append?
    By default, mapped tags overwrite the tag list. (If your org prefers append, contact Support to enable.)
  • How long does processing take?
    Small files finish in seconds; very large files may queue. You’ll see a completion banner.
  • Can I undo an upload?
    Use Filters → Date added + Bulk delete to remove recently imported contacts.

Back to top


🔗 Related articles

Back to top


🔎 Structured data (SEO)

Embed this JSON‑LD in the help‑center page for richer search results.

<script type="application/ld+json">{  "@context": "https://schema.org",  "@type": "HowTo",  "name": "Upload a contact list in MyOperator",  "tool": ["Web Dashboard"],  "totalTime": "PT5M",  "step": [    {"@type": "HowToStep", "name": "Open Contacts", "text": "Go to Manage → Contacts in the MyOperator Dashboard."},    {"@type": "HowToStep", "name": "Upload file", "text": "Click Upload Contacts and select your CSV/XLS file."},    {"@type": "HowToStep", "name": "Map columns", "text": "Match CSV headers to MyOperator fields (phone_number, name, etc.)."},    {"@type": "HowToStep", "name": "Review & confirm", "text": "Review counts to add/update/skip and confirm import."}  ]}</script><script type="application/ld+json">{  "@context": "https://schema.org",  "@type": "FAQPage",  "mainEntity": [    {"@type": "Question", "name": "What file formats are supported?", "acceptedAnswer": {"@type": "Answer", "text": "CSV and XLS (UTF‑8 recommended)."}},    {"@type": "Question", "name": "Which fields are required?", "acceptedAnswer": {"@type": "Answer", "text": "Only phone_number is required; other fields are optional."}},    {"@type": "Question", "name": "How many rows can I upload at once?", "acceptedAnswer": {"@type": "Answer", "text": "Up to 100,000 rows per upload is recommended for stability."}}  ]}</script>

Back to top


🏷️ Keywords

upload contacts CSV, MyOperator contacts import, bulk contact upload, contact CSV template, E.164 phone format, OBD API queue contacts, manage contacts, bulk edit contacts

Back to top