---
title: "Update Viber transactional template lifecycle callback"
method: PATCH
path: "/viber/transactional/templates/{templateId}"
tags: ["Viber transactional"]
---

# Update Viber transactional template lifecycle callback

`PATCH /viber/transactional/templates/{templateId}`

Updates **Routee-only** moderation lifecycle webhook settings.

## Path parameters

- `templateId` string, required

## Headers

- `Authorization` string, required
- `Content-Type` string, required

## Request body

- ViberTransactionalTemplatePatchRequest
  - `callbackUrl` string, uri, nullable
  - `lifecycleCallbackUrl` string, uri, nullable — Legacy alias for callbackUrl.

## Response `200`

Template metadata updated

- ViberTransactionalTemplate
  - `id` string
  - `serviceId` integer
  - `category` string
  - `status` string — e.g. PENDING_MODERATION, APPROVED, REJECTED
  - `statusNote` string
  - `createdAt` integer
  - `lastModified` integer
  - `params` ViberTransactionalTemplateParam[]
    - `name` string, required
    - `type` 'TEXT', required
  - `locales` ViberTransactionalTemplateLocale[]
    - `lang` string, required — ISO 639-1 language code (e.g. en).
    - `template` string, required
  - `varExample` ViberTransactionalTemplateVarExample[]
    - `name` string, required
    - `example` string, required
  - `callbackUrl` string, uri

## Other responses

- `400` — Validation or business rule failure (domain, sender, subscription, size limits)
- `403` — Insufficient role or OAuth scope (`transactional_email` required)
- `404` — Message not found for this account

---

[API](https://skmtc.net/routee/apis/auth.md) · [All operations](https://skmtc.net/routee/apis/auth/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/routee/auth/revisions/5cef04e8f7d8/schema)
