Skip to main content
PATCH
Update a sender

Authorizations

X-API-Key
string
header
required

Path Parameters

profile_id
string<uuid>
required

Body

application/json

A field omitted from the request is left unchanged.

booking_url

The link people use to book a meeting with this sender. It has to be a full web address starting with http:// or https://. Null or an empty string removes it. Only a person signed in to Oneprofile can change it.

Maximum string length: 2048
confirm
boolean
default:false

Set to true to confirm that this sender's messages may go out without anyone reading them first. Required when send_mode is always_send; ignored otherwise.

email_approval_mode

Whether a sender's email steps wait in the approval queue or send on their own.

F-25's per-sender override of the workspace's email approval mode. The workspace setting lives in the outreach-task domain, a layer above this one, so this enum names only the two overrides a sender can carry; the absence of one (SenderProfileDTO.email_approval_mode is None) means the sender follows the workspace.

Available options:
manual,
auto
first_name
string
Required string length: 1 - 128
last_name
string
Maximum string length: 128
send_mode

How much of this sender's agent-written email leaves without a person.

ALWAYS_SEND: agent-written email steps and replies go out unattended unless a defect is found in the message itself. SEND_WHEN_CONFIDENT: they go out when the agent's confidence rule holds, and a person is asked when it does not. ALWAYS_ASK: every agent-written email waits for a person, whatever the agent thinks of it.

The three are ordered by strictness — ALWAYS_ASK strictest, then SEND_WHEN_CONFIDENT, then ALWAYS_SEND loosest — and that order is what service.strictest_send_mode folds a cadence's assigned senders down with. The order is the point: everything that combines two modes must resolve towards asking, never towards sending.

Replaces EmailApprovalMode's two-way choice, which cannot express "send the ones the agent stands behind". That enum and its column stay until a release backfills this one; do not read both in one decision.

Available options:
always_send,
send_when_confident,
always_ask
signature_text

Plain-text signature appended to every send.

title

The sender's job title, one line of up to 120 characters, as their messages introduce them. An empty string removes it. Only a person signed in to Oneprofile can change it.

Maximum string length: 120

Response

Successful Response

booking_url
string | null
required

The link people use to book a meeting with this sender, such as a Calendly or Cal.com page. It is what the {{Sender booking link}} variable is replaced with. Null when none is set.

created_at
string<date-time>
required
id
string<uuid>
required
mailbox_count
integer
required
name
string
required
send_mode
enum<string>
required

Whether the messages the agent writes for this sender go out on their own or wait for a person, replies included. Always send (always_send): the agent's messages go out on their own unless something is wrong with the words. Send when confident (send_when_confident, the default): they go out when the agent was confident and nothing is wrong, and wait for a person otherwise. Always ask (always_ask): a person approves every one. A sequence set to ask first still asks, whichever mode its senders are on.

Available options:
always_send,
send_when_confident,
always_ask
status
enum<string>
required

Lifecycle of a sender.

A sender is DRAFT from the moment it is created and becomes ACTIVE once at least one mailbox is attached. The status is derived from attachment, never stored — it cannot drift.

Available options:
draft,
active
title
string
required

The sender's job title, as their messages introduce them. It is what the {{Sender title}} variable is replaced with. Empty when none is set.

updated_at
string<date-time>
required
daily_limit
integer
default:0
email_approval_mode
enum<string> | null

manual | auto; null inherits the workspace's email approval mode.

Available options:
manual,
auto
first_name
string
default:""
last_name
string
default:""
linkedin_connection_request_cap
integer
default:0
linkedin_connection_requests_today
integer
default:0
linkedin_identity
string | null
linkedin_photo_url
string | null
linkedin_presence
enum<string> | null

How recently ANY browser connected to this sender checked in.

Three states, not two, because two different questions are asked of a connection. ACTIVE answers "can a step run right now" — a browser is open and heartbeating. IDLE answers "is this still set up" — the laptop was closed for the evening. NOT_SEEN is the one that needs a person: nothing has checked in for a day, and queued work is silently waiting.

Available options:
active,
idle,
not_seen
sent_today
integer
default:0
signature_text
string
default:""