---
title: "Update a module/zone within a template using PUT. Full resource update.
Modules/zones define rectangular content areas on the screen."
method: PUT
path: "/templates/{templateId}/modules/{moduleId}"
tags: ["Templates"]
---

# Update a module/zone within a template using PUT. Full resource update.
Modules/zones define rectangular content areas on the screen.

`PUT /templates/{templateId}/modules/{moduleId}`

## Path parameters

- `templateId` string, required
- `moduleId` string, required

## Request body

- ModuleRequest — Request model for creating or updating a module/zone within a template. Used for partial updates via PATCH or full updates via PUT. Defines the properties and configuration of a content area on the screen.
  - `name` string, nullable — Module/zone name (descriptive identifier)
  - `type` string, nullable — Module/zone type (e.g., 'Playlist', 'Clock', 'Weather', 'Ticker', 'Web')
  - `left` integer, nullable — Left position
  - `top` integer, nullable — Top position
  - `width` integer, nullable — Width
  - `height` integer, nullable — Height
  - `playlist_id` string, nullable — Playlist assigned to this module
  - `sequence` integer, nullable — Sequence or Z-Order

## Response `200`

OK

- Module — Represents a module (also called a zone or region) within a template layout. Modules/zones define rectangular areas on screen where content from playlists is displayed. The terms "module" and "zone" are used interchangeably throughout the API.
  - `id` string, nullable — Module/zone unique identifier
  - `name` string, nullable — Module/zone name
  - `type` string, nullable — Module/zone type (e.g., 'Playlist', 'Clock', 'Weather', 'Ticker', 'Web')
  - `left` integer, nullable — Left position in pixels from the top-left corner of the template
  - `top` integer, nullable — Top position in pixels from the top-left corner of the template
  - `width` integer, nullable — Width of the module/zone in pixels
  - `height` integer, nullable — Height of the module/zone in pixels
  - `playlist_id` string, nullable — Playlist ID assigned to this module/zone. Determines what content is displayed in this area of the screen.
  - `sequence` integer, nullable — Sequence or Z-order for overlapping modules/zones. Higher values appear in front of lower values.
  - `options` ModuleOption[], nullable — Module/zone configuration options (key-value pairs). Used to store type-specific settings like timezone for Clock zones, location for Weather zones, etc.
    - `id` string, nullable — Module/zone option unique identifier
    - `name` string, nullable — Option name/key (e.g., 'timezone', 'location', 'refresh_interval')
    - `value` string, nullable — Option value (stored as string, parse as needed for the specific option)

## Other responses

- `400` — Bad Request
- `404` — Not Found

---

[API](https://skmtc.net/reveldigital/apis/revel-digital-rest-api.md) · [All operations](https://skmtc.net/reveldigital/apis/revel-digital-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/reveldigital/revel-digital-rest-api/versions/f23a94aea621/schema)
