---
title: "Scope - CE.SDK Glossary"
description: "A named permission that controls whether a specific editing operation is allowed on a block. Scopes are how a regular scene becomes a guided template."
url: "https://img.ly/glossary/scope/"
type: "page"
---

> This is the markdown version of [Scope - CE.SDK Glossary](https://img.ly/glossary/scope/). For all pages in one file, see [llms-full.txt](https://img.ly/llms-full.txt). For an index of all available pages, see [llms.txt](https://img.ly/llms.txt).

---

# Scope

Also known as: Block Scope

A scope is a named permission that controls whether a specific editing operation is allowed on a block. Selecting a block, moving it, replacing its fill, editing its text, deleting it: each operation is governed by its own scope. Scopes are the mechanism that turns a regular scene into a guided template.

The template-author workflow involves two steps: build the design first, then decide which operations should remain available and which should be locked. Scopes provide that control at the block level, so different blocks within the same scene can carry different rules.

## Global versus block-level

Scopes operate at two levels: globally on the editor session, and per individual block.

The global setting has three states. **Allow** means the operation is permitted on every block in the scene, regardless of block-level settings. **Deny** means it is blocked everywhere, regardless of block-level settings. **Defer** means the engine consults each block individually. Blocks with the scope enabled can perform the operation; blocks with it disabled cannot.

Everything defaults to Allow globally, which means every block is fully editable when a fresh session starts. Block-level scopes default to disabled. So the standard template-authoring pattern looks like this:

1. Identify which operations you want fine-grained control over: text editing, image replacement, position changes, deletion.
2. Set those global scopes to Defer.
3. Enable those scopes on the specific blocks meant to be editable.
4. Leave everything else alone. Blocks you have not touched stay locked because their block-level scope started disabled, and the engine respects that under Defer.

This is what turns a regular scene into a template: a controlled set of blocks responding to a controlled set of operations, with everything else locked by default.

## Common scope combinations

A few patterns appear repeatedly in customer templates.

**A locked logo.** With `editor/select`, `layer/move`, and `lifecycle/destroy` set to Defer globally, the logo block is automatically protected because its block-level settings default to disabled. Once the session switches to Adopter mode, the logo cannot be selected, moved, or deleted.

**An editable headline.** Enable `text/edit` and `text/character` on the text block. The Adopter can change the wording and apply character-level formatting; everything else about the block remains unchanged.

**A swappable image placeholder.** Enable `fill/change` on the graphic block. The Adopter can replace the image. If you also want them to be able to reposition or crop, enable `layer/move` and `layer/crop` on the same block.

**Brand color enforcement.** Set `fill/change` globally to Defer, and enable it only on blocks where users should be allowed to recolor. The blocks holding brand colors stay protected automatically.

These patterns are what drives the customer templates behind real products. Digitas Germany's regional dealer campaigns lock the brand assets at the block level while leaving headline and image placeholders editable. Optimizely's template editor for 1,000+ customers follows the same shape.

## Scope categories

Each editing operation lives in one of six categories. The full set is in the API docs; the categories themselves are:

- **Text** for editing and character-level styling
- **Fill and stroke** for image, video, color fill replacement, and border styling
- **Layer** for moving, resizing, cropping, rotating, opacity, and blend mode
- **Appearance** for filters, color adjustments, effects, blur, and shadows
- **Lifecycle** for deletion and duplication
- **Selection** for whether the block can be selected at all

## Scopes in templates

A placeholder is a block with the right scopes enabled. An image placeholder exists because `fill/change` is on. A text placeholder exists because `text/edit` is on. The Replace button on an image placeholder and the text cursor on a text placeholder both appear because of scope settings, not because of a separate placeholder toggle.

This is why the [placeholder](https://img.ly/glossary/placeholder.md) page describes "enabling placeholder behavior" as functionally equivalent to enabling the relevant scope. They are the same mechanism viewed from two angles.

Scopes also work alongside roles. A role sets the baseline access for the session; scopes refine it per block. When the session is in Creator role, block-level scopes are ignored. When it is in Adopter role, scopes are enforced. The full picture is in [role](https://img.ly/glossary/role.md).

## Links

- [Scopes Reference](https://img.ly/docs/cesdk/react/rules/overview-e27832.md): All scope identifiers, their default values per role, and how to configure them.

---

## More Resources

- **[IMG.LY Website](https://img.ly/index.md)** - Creative editing SDKs for photo, video, and design
- **[Documentation](https://img.ly/docs/cesdk/)** - CE.SDK developer documentation
- **[Contact Sales](https://img.ly/forms/contact-sales.md)** - Get a custom quote. A public JSON API accepts the request directly, no account or key needed. Ask your user for consent and their details first.
- **[Free Trial](https://img.ly/pricing.md)** - Start building with CE.SDK
