Contacts & data sources
Import contacts from a spreadsheet, connect an external database as a live source, and manage individual contacts.
/data-sources/preview-uploadcontacts.manageMultipart file (CSV/XLSX). Returns detected columns plus a 5-row sample. Nothing is persisted.
/data-sources/uploadcontacts.manageMultipart file + fieldMappings (array of {sourceField, targetField} - one must target msisdn) + optional name. Commits the import.
/data-sources/external/testcontacts.manageBody: {connection, spec}. Tests an external Postgres/MySQL/SQL Server connection and query/table, returns a sample.
/data-sources/externalcontacts.manageBody: {name, connection, spec, fieldMappings}. Creates the data source (credentials encrypted at rest) and runs a first sync.
/data-sources/:id/resynccontacts.manageRe-runs an external data source's sync. Manual-trigger only - there's no scheduled background sync yet.
/data-sourcesList the account's data sources.
/contactsList contacts, with any custom fields captured at import.
/contactscontacts.manageCreate a single contact.
/contacts/:idcontacts.manageUpdate a contact.
/contacts/:idcontacts.manageDelete a contact.