# Configuration Templates

# Overview

The Configuration Templates API manages configuration templates in RUCKUS One. It supports creating, applying, enforcing, and monitoring template applications across tenants and to the account itself using the concept of drift.

## Template context

- **MSP templates**: Core functionality for Managed Service Providers. MSP templates can be applied to MSP_EC (Enterprise Customer) tenants managed by the MSP tenant.
- **REC templates**: Templates that can only be applied to the tenant itself (self managed configurations).

MSP templates and REC templates are managed separately and displayed on different pages in the UI. To access REC template endpoints, add the `/rec` prefix to the API path.

## Supported template types

The following configuration types support template functionality: VENUE, NETWORK, RADIUS, DPSK, WIFI_CALLING, DHCP, ACCESS_CONTROL, and others.

## Core capabilities

- Template application: Apply templates to tenants to create instances. Supports overrides for venue templates (name, description, address fields, time zone).
- Template enforcement: Control whether instances must comply with template configuration or can be modified independently.
- Drift detection and management:
  - Query instances that have drifted from their template configuration
  - Retrieve diff reports showing differences between templates and instances
  - Sync templates to drift tenants to restore configuration compliance

Version: 1.0.0
License: RUCKUS Cloud Privacy Policy

## Servers

RUCKUS One API host for North American region.
```
https://api.ruckus.cloud
```

RUCKUS One API host for European region.
```
https://api.eu.ruckus.cloud
```

RUCKUS One API host for Asian region.
```
https://api.asia.ruckus.cloud
```

## Download OpenAPI description

[Configuration Templates](https://docs.ruckus.cloud/_bundle/api/cfg-template-service-1.0.0.yaml)

## Configuration Template

Manage the configuration templates.

### Update Template Enforcement Settings

 - [PUT /templates/{templateId}/enforcementSettings](https://docs.ruckus.cloud/api/cfg-template-service-1.0.0/configuration-template/enforcementsettings.md): Update template enforcement settings.  Add prefix '/rec' for REC templates.

### Apply Template

 - [POST /templates/{templateId}/tenants/{tenantId}](https://docs.ruckus.cloud/api/cfg-template-service-1.0.0/configuration-template/applytemplatev1.md): Apply a template to the target tenant for creating instances. Add prefix '/rec' for REC templates.

### Query Drift Instances

 - [POST /templates/{templateId}/instances/query](https://docs.ruckus.cloud/api/cfg-template-service-1.0.0/configuration-template/queryinstances.md): Query drift instances with filter for template. Add prefix '/rec' for REC templates.

### Query Template Dependency

 - [POST /templates/{templateId}/dependencies/query](https://docs.ruckus.cloud/api/cfg-template-service-1.0.0/configuration-template/querydependency.md): Query template dependency (direct children only) for a specific template with pagination and sorting. Add prefix '/rec' for REC templates.

### Retrieve Diff Reports

 - [GET /templates/{templateId}/tenants/{tenantId}/diffReports](https://docs.ruckus.cloud/api/cfg-template-service-1.0.0/configuration-template/getdiffreport.md): Retrieve diff reports from drift tenant.

### Sync Template

 - [PATCH /templates/{templateId}/tenants/{tenantId}/diffReports](https://docs.ruckus.cloud/api/cfg-template-service-1.0.0/configuration-template/sync.md): Sync the configuration template to a drift tenant.

