upsert_message_variant
Create or update a message-angle variant (subject pattern + optional body approach) for a project. Idempotent by variant ID; archived variants retire from rotation but remain analyzable.
Instructions
Register or update a message-angle variant (subject pattern + optional body approach) on a project. Idempotent by variantId — re-calling updates that variant's fields / archived state. archived=true retires it from rotation but keeps it analysable for historic outreach rows. Refused (400) when it would push the active count past the project's cap.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"projectId": "<projectId>",
"variantId": "<variantId>",
"subjectPattern": "<subjectPattern>"
},
"name": "upsert_message_variant"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| label | No | Human-readable display label; null clears it. | |
| archived | No | Omit to leave the archived state unchanged; false un-archives. | |
| projectId | Yes | Project name or ID | |
| variantId | Yes | ||
| bodyApproach | No | Angle brief (2-5 lines: structure / tone / CTA type / length / opener policy) the body is written from; null clears it, leaving the email guidelines alone to shape the body. | |
| subjectPattern | Yes | Subject template; may embed {{placeholders}} substituted at send time. |