Create, list, retrieve, validate, update, and delete template components.
Overview
Create, list, retrieve, validate, update, and delete template components. API clients must be tenant-aware, permission-aware, and capable of handling both JSON and binary responses.
Key points
- POST creates a component.
- GET can filter by type and active state.
- POST validate checks a native fragment.
- PUT increments the component version.
- DELETE invalidates dependent compiled packages.
- Native formats require elevated permission.
Endpoints
| Method | Route | Purpose |
|---|---|---|
| POST | /api/v1/template-components | Create a component. |
| POST | /api/v1/template-components/validate | Validate native XSLT or OpenXML fragment content. |
| GET | /api/v1/template-components | List visible tenant and global components. |
| GET | /api/v1/template-components/i/{uuid} | Retrieve a component. |
| PUT | /api/v1/template-components/i/{uuid} | Update and version a component. |
| DELETE | /api/v1/template-components/i/{uuid} | Delete a component. |
Recommended procedure
- Send authentication and instance headers.
- Validate the request body before transmission.
- Inspect HTTP status, content type, and structured errors.
- Log non-sensitive identifiers needed to reproduce failures.
Client requirements
- Check the HTTP status before processing the body.
- Check
Content-Typebefore deciding whether the response is JSON, DOCX, or PDF. - Do not log authentication tokens or complete client document data.
- Preserve the instance context through every Feradel service-to-service call.
- Treat validation and compilation errors as input or template defects rather than transient network failures.
Troubleshooting
A client treats an error as a file
Check HTTP status and Content-Type before writing the response body to disk.
The same request works in another tenant
Compare instance, owner, token permissions, and object UUIDs.
A route returns an unexpected envelope
The current controllers are not fully standardized; handle HTTP status and documented fields defensively.
Related documentation
Documentation source: feradelinc/feradel.render.api, reviewed against repository revision b2c3a710. Verify behavior against the deployed release before publishing exact routes, limits, or version requirements.