Skip to main content
POST
/
template
/
create
Create a template
curl --request POST \
  --url 'https://api.flashcat.cloud/template/create?app_key=' \
  --header 'Content-Type: application/json' \
  --data '
{
  "team_id": 0,
  "template_name": "Prod incident default",
  "description": "Default template for production incidents.",
  "email": "Incident {{ .IncidentName }} on {{ .Severity }}",
  "sms": "[Flashduty] {{ .IncidentName }} — {{ .Severity }}"
}
'
{
  "request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
  "data": {
    "template_id": "6605a1b2c3d4e5f6a7b8c9d0",
    "template_name": "Prod incident default"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.flashcat.cloud/llms.txt

Use this file to discover all available pages before exploring further.

Restrictions

AspectValue
Rate limits1,000 requests/minute; 50 requests/second per account
PermissionsTemplates Manage (on-call)

Usage

  • template_name must be unique within the account; duplicates return InvalidParameter.
  • The server validates every non-empty channel template by rendering it against a mock incident — a syntactic error in any channel fails the whole request with InvalidParameter.
  • Every call is recorded in the account audit log. Don’t put secrets in request fields.

Authorizations

app_key
string
query
required

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

application/json

Create a new notification template.

template_name
string
required

Template name, unique per account. 1–39 characters.

Required string length: 1 - 39
Example:

"Prod incident default"

team_id
integer<int64>
default:0

Team scope. 0 for account-wide.

description
string

Free-form description. Up to 500 characters.

Maximum string length: 500
email
string

Email body template source (Go html/template syntax).

sms
string

SMS template source (Go text/template syntax).

voice
string

Voice call script template source.

dingtalk
string

DingTalk robot message template source.

wecom
string

WeCom robot message template source.

feishu
string

Feishu robot message template source.

feishu_app
string

Feishu app message template source.

dingtalk_app
string

DingTalk app message template source.

wecom_app
string

WeCom app message template source.

slack_app
string

Slack app message template source.

teams_app
string

Microsoft Teams app message template source.

telegram
string

Telegram bot message template source.

slack
string

Slack robot message template source.

zoom
string

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.

request_id
string
required

Unique ID for this request. Mirrored in the Flashcat-Request-Id response header. Include it when reporting issues.

Example:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
required

Endpoint-specific payload. See each operation's 200 response schema.