Docs/Contact import
Last updated April 7, 2026

Contact import

Bring your existing audience into Kagibag. Import contacts from CSV files, HubSpot exports, or the API, and the system handles field mapping, deduplication, and identity resolution automatically.

Import sources

SourceHow it worksBest for
CSV uploadUpload any CSV file and map columns to contact fields in the browser.One-time imports
HubSpot exportUpload a CSV exported from HubSpot. Column headers are auto-detected and mapped for you.Migrating from HubSpot
API importSend contacts as JSON via the MCP Server or REST API.Automated or recurring imports

Starting a CSV import

Navigate to Admin, then Contacts, then Import. Upload your CSV file. The system reads the file headers and shows a column mapping screen. Each column can be mapped to a standard contact field or skipped. Click Import to start processing.

Field mapping

Standard fields available for mapping. Column aliases (like "Email Address" or "First Name") are recognized automatically.

FieldRequiredDescription
emailYesThe contact's email address
first_nameNoFirst or given name
last_nameNoLast or family name
companyNoOrganization or company name
titleNoJob title or role
phoneNoPhone number

Import processing

Imports run asynchronously in the background. Each row is processed individually so a single bad row does not block the rest.

StatusDescription
UploadedFile received, waiting to start.
ParsingSystem is reading and validating rows.
ProcessingRows are being matched, deduplicated, and enriched.
ProcessedAll rows handled successfully.
ErrorOne or more rows failed — review the error details.
Large imports (thousands of contacts) may take a few minutes. You can navigate away and check back — the import continues in the background.

Identity resolution

Each imported email is normalized (lowercased, whitespace stripped) and checked against existing contacts. If a match is found, the existing contact profile is updated with any new information. If no match exists, a new contact profile is created. This prevents duplicates when importing the same list multiple times.

Reviewing results

After processing completes, the import summary shows total rows processed, how many matched existing contacts, how many created new contacts, and how many had errors. Click into individual rows to see error details or the resolved contact profile.

Using imported contacts

Once imported, contacts are available throughout Kagibag. Use them to:

  • Send invitations for invite-only events
  • Include them in automatic marketing campaigns
  • Segment them into targeted audiences

Contacts are enriched over time with additional data from their interactions.

API imports

Use the MCP Server's import_contacts tool to import contacts programmatically. Send a JSON array of contact objects with email, first_name, last_name, company, and title fields. The API returns a 202 response with an import ID. Poll check_import_status with that ID to track progress.

[
  { "email": "[email protected]", "first_name": "Jane", "last_name": "Doe", "company": "Acme" },
  { "email": "[email protected]", "first_name": "John", "last_name": "Smith" }
]
Related use cases

See where this workflow fits

Use these pages to connect the how-to guide with the commercial workflow it supports.