Templates

Set template localization

Changed on

Creates or replaces a caller-supplied localized template variant. The locale must be enabled for the company and cannot be its primary locale.

put/templates/{templateId}/localizations/{locale}

Request

  • Base URL
    https://api.sequenzy.com/api/v1
  • URL
    https://api.sequenzy.com/api/v1/templates/{templateId}/localizations/{locale}
  • Auth
    HTTP bearer

Path parameters

templateIdstring required

Template ID, transactional email ID, or transactional slug.

localestring required

Enabled non-primary locale code such as es or pt-BR.

Request body

subjectstring required

Localized email subject line.

previewTextstring nullable

Optional localized inbox preview text.

htmlstring

Localized raw HTML. Provide exactly one of html or blocks.

keepEditsboolean

Protect this translation like a dashboard edit. It is marked as edited (editedAt), automatic translation on save keeps it, and it becomes stale instead of being replaced when the original changes. Without it, the stored content is retranslated on the next save when automatic translation is on, and any earlier edit flag is cleared.

Example request

{
  "blocks": [
    {
      "id": "block_123",
      "type": "html",
      "content": "<h1>Hello</h1>",
      "styles": {
        "backgroundColor": "#f8fafc",
        "backgroundOpacity": 80,
        "textColor": "#111827",
        "borderRadius": 12,
        "borderColor": "#cbd5e1",
        "borderWidth": 1
      },
      "conditions": [
        {
          "id": "c1",
          "value": "plan:pro"
        }
      ]
    }
  ]
}

Response

Template localization saved

successboolean
templateIdstring
warningsstring[]

Non-blocking advisories about a successful write. Present when an input was discarded or did not take effect as requested. This includes block fields that do not render as their names suggest, sequence email-step formatting restored on top of submitted blocks, and sender-identity conflicts such as a replyToName that differs from the saved profile. Each message identifies the affected input and gives recovery guidance. Absent when there is nothing to report.

Example response

{
  "success": true,
  "localization": {
    "locale": "es",
    "subject": "Bienvenido",
    "blocks": [
      {
        "id": "block_123",
        "type": "html",
        "content": "<h1>Hello</h1>",
        "styles": {
          "backgroundColor": "#f8fafc",
          "backgroundOpacity": 80,
          "textColor": "#111827",
          "borderRadius": 12,
          "borderColor": "#cbd5e1",
          "borderWidth": 1
        },
        "conditions": [
          {
            "id": "c1",
            "value": "plan:pro"
          }
        ]
      }
    ]
  },
  "warnings": [
    "blocks[0].styles.color is not a supported field and was ignored. Button label color comes from the block-level `buttonTextColor` field. Supported styles fields: backgroundColor, backgroundOpacity, bleed, borderColor, borderRadius, borderWidth, keepAlign, paddingBottom, paddingLeft, paddingRight, paddingTop, textAlign, textColor."
  ]
}

Changes

    • info

      added the new optional request property ///

    • info

      added the optional property //// to the response with the status

    • info

      added the new optional request property //

    • info

      added the new optional request property

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property /// to the response with the status

    • info

      added the optional property / to the response with the status