# Bulk Senders

A bulk sender object represents a campaign worker which sends messages
to the borrowers returned by a campaign's query results.

For each row returned by the campaign in its query result a message is sent via the
<a href="/api-docs/api-public/communicator/peach.communicator.handlers.handle_send">Send endpoint</a>.

Some of the query results columns are automatically mapped to the request body of the Send endpoint,
these columns are:
- `caseId`
- `contactId`
- `context`
- `interactionExternalId`
- `isTransactional`
- `loanId`
- `previousInteractionId`
- `statementId`
- `sendAt`
- `useTemplate`

In order for a bulk sender to function, at a minimum the
campaign's query results must return at least the column
`borrowerId`.

Note that bulk senders send with `{ strictUndefined: true }` so any missing context variables 
will cause the send request to fail rather than sending with a default (empty) value, which is
the standard behavior for the `/communicator/send` endpoint.

For more details on required columns see
per-`InteractionSubject` documentation for&nbsp;
<a href="/api-docs/api-public/campaigns/peach.people.campaigns.handlers_runs.campaign_run_create">Campaign run</a>.


## List bulk senders

 - [GET /campaign-workers/bulk-senders](https://docs.peachfinance.com/api-docs/api-public/bulk-senders/peach.people.campaigns.handlers_workers.bulk_sender_list.md): Get a list of all bulk senders.

## Create bulk sender

 - [POST /campaign-workers/bulk-senders](https://docs.peachfinance.com/api-docs/api-public/bulk-senders/peach.people.campaigns.handlers_workers.bulk_sender_create.md): Create a new bulk sender.

## Delete bulk sender

 - [DELETE /campaign-workers/bulk-senders/{bulkSenderId}](https://docs.peachfinance.com/api-docs/api-public/bulk-senders/peach.people.campaigns.handlers_workers.bulk_sender_delete.md): Delete a bulk sender by ID.

## Get bulk sender by ID

 - [GET /campaign-workers/bulk-senders/{bulkSenderId}](https://docs.peachfinance.com/api-docs/api-public/bulk-senders/peach.people.campaigns.handlers_workers.bulk_sender_get.md): Get a bulk sender by ID.

## Update bulk sender

 - [PUT /campaign-workers/bulk-senders/{bulkSenderId}](https://docs.peachfinance.com/api-docs/api-public/bulk-senders/peach.people.campaigns.handlers_workers.bulk_sender_update.md): Update the existing bulk sender

