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

# Salesloft: Call Data Records Update

> Update a Salesloft call data record by its ID: status, recording, person, duration or call times. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Update a Salesloft call data record by its ID: status, recording, person, duration or call times.

> [!NOTE]
>
> Tool ID: `salesloft_call_data_records_update`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'salesloft_call_data_records_update',
  {
    "id": 123
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute salesloft_call_data_records_update --input '{
  "id": 123
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "user": {},
    "updated_at": "2026-01-15T12:00:00Z",
    "to": "example"
  }
}
```

Use `deepline describe salesloft_call_data_records_update --json` for the latest machine-readable contract.

## Input reference

Update a call data record

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.id` | `integer` | Yes | — | ID of the call data record |
| `payload.status` | `string` | No | — | The status of the call. Can be one of: queued, initiated, ringing, in-progress, completed, busy, no-answer, canceled, failed |
| `payload.recording` | `object` | No | — | Object with a "url" property containing the URL of the recording file. This will be processed asynchronously. Cannot be updated once it is set. Example: `&#123;"url": "https://example.com/recording.mp3"&#125;)` |
| `payload.person_id` | `integer` | No | — | Person ID |
| `payload.melody_call_id` | `integer` | No | — | Call Log ID. Cannot be updated once it is set. |
| `payload.duration` | `integer` | No | — | Length of the call in seconds |
| `payload.call_started_at` | `integer` | No | — | Timestamp when the call started |
| `payload.call_ended_at` | `integer` | No | — | Timestamp when the call ended |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ````json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Update a call data record",
    "properties": {
      "id": {
        "type": "integer",
        "description": "ID of the call data record"
      },
      "status": {
        "type": "string",
        "description": "The status of the call. Can be one of: queued, initiated, ringing, in-progress, completed, busy, no-answer, canceled, failed"
      },
      "recording": {
        "type": "object",
        "description": "Object with a \"url\" property containing the URL of the recording file. This will be processed asynchronously. Cannot be updated once it is set. Example: ``` {\"url\": \"https://example.com/recording.mp3\"}) ```"
      },
      "person_id": {
        "type": "integer",
        "description": "Person ID"
      },
      "melody_call_id": {
        "type": "integer",
        "description": "Call Log ID. Cannot be updated once it is set."
      },
      "duration": {
        "type": "integer",
        "description": "Length of the call in seconds"
      },
      "call_started_at": {
        "type": "integer",
        "description": "Timestamp when the call started"
      },
      "call_ended_at": {
        "type": "integer",
        "description": "Timestamp when the call ended"
      }
    },
    "required": [
      "id"
    ],
    "additionalProperties": false
  }
  ````
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.user` | `record` | No | — | User that made or received the call, if the call was to a user |
| `result.data.updated_at` | `string` | No | — | Datetime of when the call was last updated Format: `date-time`. |
| `result.data.to` | `string` | No | — | Phone number that received the call |
| `result.data.status` | `string` | No | — | The outcome of the call. Can be one of: queued, initiated, ringing, in-progress, completed, busy, no-answer, canceled, failed |
| `result.data.started_at` | `string` | No | — | Datetime of when the call started Format: `date-time`. |
| `result.data.recording` | `record` | No | — | The recording for this this call data record, with a status |
| `result.data.id` | `integer` | No | — | ID of CallDataRecord |
| `result.data.from` | `string` | No | — | Phone number that placed the call |
| `result.data.ended_at` | `string` | No | — | Datetime of when the call ended Format: `date-time`. |
| `result.data.duration` | `integer` | No | — | Length of the call in seconds |
| `result.data.direction` | `string` | No | — | Direction of the call. Can be one of: inbound, outbound |
| `result.data.dialer_recording` | `record` | No | — | The dialer recording resource for the call recording |
| `result.data.created_at` | `string` | No | — | Datetime of when the call was created Format: `date-time`. |
| `result.data.called_person` | `record` | No | — | The person called |
| `result.data.call_uuid` | `string` | No | — | UUID of the call. Legs of the same call will have the same call\_uuid. |
| `result.data.call_type` | `string` | No | — | Type of the call. Can be one of: call, bridge, collaboration. Though exact values may change over time |
| `result.data.call` | `record` | No | — | Call that this record was logged to, if logged to a call |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "user": {
            "type": "object",
            "description": "User that made or received the call, if the call was to a user"
          },
          "updated_at": {
            "type": "string",
            "description": "Datetime of when the call was last updated",
            "format": "date-time"
          },
          "to": {
            "type": "string",
            "description": "Phone number that received the call"
          },
          "status": {
            "type": "string",
            "description": "The outcome of the call. Can be one of: queued, initiated, ringing, in-progress, completed, busy, no-answer, canceled, failed"
          },
          "started_at": {
            "type": "string",
            "description": "Datetime of when the call started",
            "format": "date-time"
          },
          "recording": {
            "type": "object",
            "description": "The recording for this this call data record, with a status"
          },
          "id": {
            "type": "integer",
            "description": "ID of CallDataRecord"
          },
          "from": {
            "type": "string",
            "description": "Phone number that placed the call"
          },
          "ended_at": {
            "type": "string",
            "description": "Datetime of when the call ended",
            "format": "date-time"
          },
          "duration": {
            "type": "integer",
            "description": "Length of the call in seconds"
          },
          "direction": {
            "type": "string",
            "description": "Direction of the call. Can be one of: inbound, outbound"
          },
          "dialer_recording": {
            "type": "object",
            "description": "The dialer recording resource for the call recording"
          },
          "created_at": {
            "type": "string",
            "description": "Datetime of when the call was created",
            "format": "date-time"
          },
          "called_person": {
            "type": "object",
            "description": "The person called"
          },
          "call_uuid": {
            "type": "string",
            "description": "UUID of the call. Legs of the same call will have the same call_uuid."
          },
          "call_type": {
            "type": "string",
            "description": "Type of the call. Can be one of: call, bridge, collaboration. Though exact values may change over time"
          },
          "call": {
            "type": "object",
            "description": "Call that this record was logged to, if logged to a call"
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Salesloft provider guide](https://deepline.com/docs/providers/salesloft/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.