channels_contacts
👥 Load people into a custom channel account, so its conversations are titled with names and each person has a card in the workspace's contacts.
contacts is a list of {contact_id, display_name, conversation_id?, avatar_url?, details?}. contact_id is the platform's id for the person. details may carry email, phone, about, company, job_title, linkedin, website. Give conversation_id for people the account already has a conversation with.
import_history: 'answered' reads into the inbox only the conversations in which the other side wrote; 'all' reads every conversation; omit it to load names only. The import runs in the background; a second request while one runs is queued, not lost. Check progress with channels.list(account_id=...): history_import.skipped counts the conversations left out and not_imported names the first 100 with the reason. Up to 5000 contacts per call; loading again is safe.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| contacts | Yes | People to load: {contact_id, display_name, conversation_id?, avatar_url?, details?}. | |
| account_id | Yes | The custom channel account (from channels.list). | |
| in_workspace | No | Run this one call in this workspace id instead of the session's. Nothing is stored; other sessions are not affected. | |
| import_history | No | Also read their existing conversations: 'answered' or 'all'. OMIT to load names only. |