JavaScript SDK: swarmhit.senders.create(params)
Creates a sender, with its accounts when given. An account linked here leaves the sender it had. An unknown id refuses the request (400) and creates nothing.
Authorization
bearerAuth An API key created on the Access tokens page.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/senders" \ -H "Content-Type: application/json" \ -d '{ "firstName": "Jane", "lastName": "Cooper", "linkedinAccountId": "aCc123", "emailAccountIds": [ "mBx123", "mBx456" ] }'{ "data": { "id": "string", "firstName": "string", "lastName": "string", "name": "string", "picture": "string", "managerIds": [ "string" ], "linkedinAccountId": "string", "emailAccountIds": [ "string" ], "whatsappAccountIds": [ "string" ], "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }}List voices GET
**JavaScript SDK:** [`swarmhit.voices.list()`](/smart-api/sdk/methods#voices) The voices an `ai_voice_note` step can speak in: the shared library plus any voice this workspace cloned from its own recording. Put `id` into the step's `config.voiceId` for all senders, or into an item in `config.voiceAssignments` for sender-specific voices. These are synthesized voices only: a recorded `voice_note` step carries its own audio, per sender, and takes nothing from here. Cloned voices cost more credits per voice note than library voices. Cloning needs an audio upload and is done in Swarmhit (Settings → Voices), not through the API.
Delete a sender DELETE
**JavaScript SDK:** [`swarmhit.senders.delete(senderId)`](/smart-api/sdk/methods#senders) Its accounts are unlinked and stay in their campaigns.