followup/patch_by_id
Tool: update
Update a followup's content, timing, or thread settings.
Performs a partial update — only supplied fields are changed. Returns the full updated followup object. To clear a field — and to know why null fails — see call-contract.
subjectandbodytake personalization variables from a closed list — see personalization-variables. Nothing is checked here, only at campaign/start_by_id, so this is the operation to fix a followup that a start-time 422 named: patch the corrected text, then start again.
useOriginalSubject: truedoes not waive the subject requirement. Omitsubjectentirely to inherit the campaign's subject — do not sendsubject: "", which defeats inheritance and makescampaign/start_by_idfail with a followup-validation error.
Conditional — shown while this account's documentation includes the Outreach Playbook
If you are rewriting subject or body, Follow-up emails covers what a bump has to add — a proof point, a sharper angle, a smaller question, never "just bumping this up" — and when a followup earns a new thread instead of riding the original (sendInSameThread). If you are changing waitMin on a campaign that is already running, Campaign scheduling and pausing explains why to leave the gaps alone mid-flight: shortening them compresses the sending load into a volume spike.
Arguments
| name | type | req | notes |
|---|---|---|---|
| id | integer | ✓ | Followup ID — the object's followupId (int64) |
Body
| field | type | req | constraints | description |
|---|---|---|---|---|
| subject | string | – | ≤1024 chars | Email subject; may include personalization variables (see the note above) |
| body | string | – | HTML email body; may include personalization variables, Liquid conditionals and A/Z variants (see the note above) | |
| waitMin | integer | – | 1–1000 | Wait duration before sending |
| waitUnits | string | – | one of: Minutes, Hours, Days | Unit for the wait period |
| useOriginalSubject | boolean | – | Use original campaign subject instead of custom subject | |
| sendInSameThread | boolean | – | Send as a reply in the same email thread | |
| replyInThread | boolean | – | Reply in the original email thread | |
| replyInThreadToFollowupId | integer | – | int64, positive | Reply to a specific earlier followup in the thread |
Response
200 — Updated followup object: see schemas/followup. Deltas: bounceCount/replyInThread may be absent from this single-item response.
Errors: 400, 401, 404, 406, 415, 422, 429, 500 — shared schema: schemas/errors.
Invoke
Call update with name: "followup/patch_by_id".