WPsigner actions run only when the recipe is a published Automator recipe (uo-recipe or uw_recipe). Draft recipes fail with a clear log error.
All actions set requires_user to false so Everyone recipes can create and send documents.
Document actions
Section titled “Document actions”| Action | Code | What it does |
|---|---|---|
| Create a WPsigner document from a template | WPS_CREATE_SEND_DOCUMENT | Builds a document, maps signers, optional prefill, optional send |
| Send a document | WPS_SEND_DOCUMENT | Sends signing invitations for an existing document ID |
| Send a reminder | WPS_SEND_REMINDER | Email reminders for pending/viewed signers (optional email filter) |
| Cancel a document | WPS_CANCEL_DOCUMENT | Sets status to cancelled if the document is still open |
| Add a tag | WPS_ADD_TAG | Attaches a tag without removing existing ones (max 5) |
| Add a signer | WPS_ADD_SIGNER | Adds a signer; optionally sends if the document is already sent/viewed |
| Set expiration | WPS_SET_EXPIRATION | Sets expires_at, or clears it when the field is empty (max 5 years ahead) |
| Get signers | WPS_GET_SIGNERS | Exposes emails, JSON lists, and pending count as action tokens |
Create from a template
Section titled “Create from a template”Recipe fields:
| Field | Required | Notes |
|---|---|---|
| Template | Yes | No “Any” option — pick a real template |
| Required signers for this template | No | AJAX hint after you pick a template |
| Document title | No | Empty → template name + current date/time |
| Send for signing immediately | Yes | Yes / create as draft |
| Signing workflow | Yes | Parallel or sequential |
| Use the recipe user as signer 1 | Yes | Fills signer 1 from the recipe user when that email is empty |
| Signer 1–5 name/email | Signer emails as required by the template | Extra empty slots are ignored |
| Prefill template variables | No | JSON object or key=value lines |
The AJAX hint uses Automator’s recipe-builder auth check (wpsua_get_template_meta). If it fails, you can still fill slots 1–5 manually.
Template slots must cover every signer_order used on the template. Missing slot → This template requires a signer for slot N.
Prefill
Section titled “Prefill”Keys must match the template Mapping name (or field key). Same keys as form feeds / Zapier.
JSON:
{"client_name":"{{BILLING_FIRST_NAME}}","company":"Acme"}Or lines:
client_name={{BILLING_FIRST_NAME}}company=AcmeRules:
- Automator tokens in values are parsed before WPsigner fills fields
- Maximum 40 keys; key ≤ 80 characters; value ≤ 500 characters
- Signature, initials, label, attachment, image, and stamp fields are never prefilled
- Prefill runs after create and before send, so the emailed PDF can include values
Action tokens after create include document ID, title, status, admin URL, sent yes/no, signer 1–3 emails/URLs (when allowed), field JSON, and FIELD_* values.
Messaging actions
Section titled “Messaging actions”These call WPsigner’s existing messaging classes. They do not store API keys in Automator.
| Action | Code | Channel |
|---|---|---|
| Send a reminder via channel | WPS_SEND_CHANNEL_REMINDER | WhatsApp, SMS (Twilio), Slack, Telegram, or Teams |
| Send a Slack message via WPsigner | WPS_SEND_SLACK_MESSAGE | Custom text through the Slack webhook already configured in WPsigner |
Channel reminders require:
- The matching integration enabled and configured in WPsigner
- Document status
sentorviewed - Pending/viewed signers (optional email filter)
WhatsApp and SMS also need a valid phone number on the signer. Telegram needs a chat ID WPsigner can resolve for that signer. If the channel cannot send, the action fails with an explicit error — it does not silently skip.
Configure channels: WhatsApp, Twilio, Slack, Telegram, Teams.
Slack custom messages are stripped of HTML, capped at 2,000 characters, and rate-limited. Do not paste secrets. Signing URLs appear only if you insert that token.
Rate limits
Section titled “Rate limits”| Limit | Default | Override |
|---|---|---|
| Send / remind / channel cooldown | 20 seconds per document (or channel) | Transient wpsua_rl_* |
| Slack custom message cooldown | 20 seconds global | Same |
| Automated creates | 60 per hour | Settings or wpsua_max_creates_per_hour |
| Signers on create | 5 (max 10) | Settings or wpsua_max_signers |
Exceeded limits return a log error, not a partial send.