> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.deepmask.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Log Activity

> Log a call, email, task, or meeting on a Salesforce record and/or a person. No delete.

`salesforce_log_activity`

Logs a completed or planned activity:

* `call`, `email`, or `task` → creates a **Task**
* `meeting` → creates an **Event** (requires `start` and `end`)

Link it with `related_to` (Account, Opportunity, Case, … — id or name) and/or `who` (Contact or Lead — id or name).

Preview with `dry_run: true`. There is **no delete**.

## Parameters

| Parameter | Type | Required | Description |
| - | - | - | - |
| `type` | `"call"` \| `"email"` \| `"task"` \| `"meeting"` | Yes | The kind of activity. |
| `subject` | string | Yes | Subject / title. |
| `description` | string | No | Longer notes for the body. |
| `related_to` | string | No | A record that is not Contact/Lead: id or name. |
| `who` | string | No | A Contact or Lead: id or name. |
| `due_date` | string | No | Task due date, `YYYY-MM-DD`. |
| `start` | string | No | Meeting start, ISO-8601. **Required for `meeting`.** |
| `end` | string | No | Meeting end, ISO-8601. **Required for `meeting`.** |
| `status` | string | No | Task status. Defaults to the org default. |
| `dry_run` | boolean | No | Preview only; nothing is written. |

## Returns

`status` is `preview`, `created`, or `needs_input` (for example a missing meeting time, or an ambiguous name). Structured data includes the new Task/Event id and `web_url`.

## Example use

> "Log a call with Jane Doe about Edge Communications — we discussed the renewal."

> "Preview a meeting tomorrow 10:00–10:30 with the Edge Communications account."
