Update a template
Replace the content of every channel on an existing template.
Restrictions
| Aspect | Value |
|---|---|
| Rate limits | 1,000 requests/minute; 50 requests/second per account |
| Permissions | Templates Manage (on-call) |
Usage
- Every channel field in the request overwrites the stored value — send an empty string to clear a channel.
- The caller needs data-permission on the template’s team; otherwise the response is
AccessDenied. - Every call is recorded in the account audit log. Don’t put secrets in request fields.
Authorizations
App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.
Body
Update an existing template.
Target template ID.
^[0-9a-fA-F]{24}$"6605a1b2c3d4e5f6a7b8c9d0"
Template name. 1–39 characters.
1 - 39Team scope. 0 for account-wide.
Free-form description. Up to 500 characters.
500Email body template source (Go html/template syntax).
SMS template source (Go text/template syntax).
Voice call script template source.
DingTalk robot message template source.
WeCom robot message template source.
Feishu robot message template source.
Feishu app message template source.
DingTalk app message template source.
WeCom app message template source.
Slack app message template source.
Microsoft Teams app message template source.
Telegram bot message template source.
Slack robot message template source.
Zoom bot message template source.
Response
Success
Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.
Unique ID for this request. Mirrored in the Flashcat-Request-Id response header. Include it when reporting issues.
"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
An empty object. Returned as the data payload by operations whose success signal is simply the absence of an error.