# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for dotCMS REST Templates API version: 1.0.0 extends: openapi/dotcms-templates-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 18 - target: $.paths['/api/vtl/{folder}'].get update: x-apievangelist-phrasing: intent: Run a scripted endpoint's GET Velocity file effect: read questions: - How do I call the get.vtl script in one of my scripting API folders? - Can a custom Velocity endpoint folder answer a plain GET request? instructions: - text: Call the GET script in Velocity endpoint folder {folder}. slots: folder: path.folder - text: Read data from my custom scripting endpoint {folder} with a GET. slots: folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}'].put update: x-apievangelist-phrasing: intent: Send a multipart PUT to a scripted endpoint effect: write questions: - How do I PUT files as multipart form data to a Velocity endpoint folder? - Can my put.vtl script receive uploaded files? instructions: - text: Upload form files by PUT to the root of scripting folder {folder}. slots: folder: path.folder - text: Replace data through the put.vtl script in {folder} with these form files. slots: folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}'].post update: x-apievangelist-phrasing: intent: Send a multipart POST to a scripted endpoint effect: write questions: - How do I POST a form with files to one of my Velocity scripting folders? - Can post.vtl in a custom endpoint handle multipart uploads? instructions: - text: Submit this multipart form by POST to the root of scripting folder {folder}. slots: folder: path.folder - text: Submit files to the post.vtl script in {folder}. slots: folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}'].delete update: x-apievangelist-phrasing: intent: Run a scripted endpoint's DELETE Velocity file effect: destructive questions: - How do I trigger the delete.vtl script of a custom Velocity endpoint? - Can a scripting API folder handle HTTP DELETE requests? instructions: - text: Send a DELETE to scripting endpoint folder {folder}. slots: folder: path.folder - text: Run the delete.vtl script in {folder}. slots: folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}'].patch update: x-apievangelist-phrasing: intent: Send a multipart PATCH to a scripted endpoint effect: write questions: - How do I PATCH a scripting endpoint folder with multipart data? - Does the patch.vtl script accept form uploads? instructions: - text: PATCH scripting folder {folder} with this multipart payload. slots: folder: path.folder - text: Partially update data via the patch.vtl script in {folder}. slots: folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}/{pathParam}'].get update: x-apievangelist-phrasing: intent: Run a scripted GET with an extra path segment effect: read questions: - Can my Velocity GET endpoint read an id from a sub-path after the folder? - How do I pass a path value to get.vtl in a scripting folder? instructions: - text: GET {pathParam} from scripting endpoint {folder}. slots: pathParam: path.pathParam folder: path.folder - text: Call {folder}'s get.vtl for the item at sub-path {pathParam}. slots: folder: path.folder pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}/{pathParam}'].put update: x-apievangelist-phrasing: intent: Multipart PUT to a scripted endpoint sub-path effect: write questions: - How do I PUT multipart data to a specific item path under a Velocity endpoint? - Can put.vtl receive both a sub-path value and uploaded files? instructions: - text: PUT a multipart upload to {pathParam} under scripting folder {folder}. slots: pathParam: path.pathParam folder: path.folder - text: Replace item {pathParam} via {folder}'s put.vtl with these files. slots: pathParam: path.pathParam folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}/{pathParam}'].post update: x-apievangelist-phrasing: intent: Multipart POST to a scripted endpoint sub-path effect: write questions: - How do I POST files to a sub-path of a custom Velocity endpoint? - Can post.vtl read a path segment as well as form data? instructions: - text: POST this multipart form to {pathParam} in scripting folder {folder}. slots: pathParam: path.pathParam folder: path.folder - text: Submit files for item {pathParam} to {folder}'s post.vtl. slots: pathParam: path.pathParam folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}/{pathParam}'].delete update: x-apievangelist-phrasing: intent: Scripted DELETE for an item sub-path effect: destructive questions: - How do I send a DELETE for a specific item under a Velocity endpoint folder? - Can delete.vtl read the id of the item from the URL path? instructions: - text: DELETE item {pathParam} through scripting folder {folder}. slots: pathParam: path.pathParam folder: path.folder - text: Run {folder}'s delete.vtl against sub-path {pathParam}. slots: folder: path.folder pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/{folder}/{pathParam}'].patch update: x-apievangelist-phrasing: intent: Multipart PATCH to a scripted endpoint sub-path effect: write questions: - How do I PATCH a single item path under a scripting endpoint with form data? - Can patch.vtl take a sub-path plus multipart files? instructions: - text: PATCH item {pathParam} in scripting folder {folder} with this multipart payload. slots: pathParam: path.pathParam folder: path.folder - text: Partially update {pathParam} via {folder}'s patch.vtl. slots: pathParam: path.pathParam folder: path.folder method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic/{pathParam}'].get update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via GET with a path value effect: read questions: - Can I evaluate ad-hoc Velocity code with a GET and a path segment, no .vtl file needed? - What role do I need to run inline VTL through the dynamic GET endpoint with a path? instructions: - text: Evaluate this inline VTL with a GET to dynamic path {pathParam}. slots: pathParam: path.pathParam - text: Run my Velocity snippet via dynamic GET, passing {pathParam} in the URL. slots: pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic/{pathParam}'].put update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via PUT with a path value effect: write questions: - Can I PUT raw Velocity code to the dynamic endpoint along with a path segment? - How do I run inline VTL as a PUT that also reads a value from the URL? instructions: - text: Evaluate this inline VTL with a PUT to dynamic path {pathParam}. slots: pathParam: path.pathParam - text: Run my Velocity code as a dynamic PUT with {pathParam} in the URL. slots: pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic/{pathParam}'].post update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via POST with a path value effect: write questions: - How do I POST inline Velocity code to the dynamic endpoint with a path segment? - Will a dynamic POST with a path return JSON if my code fills $dotJSON? instructions: - text: Evaluate this inline VTL with a POST to dynamic path {pathParam}. slots: pathParam: path.pathParam - text: Run my Velocity script as a dynamic POST with {pathParam} in the URL. slots: pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic/{pathParam}'].delete update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via DELETE with a path effect: destructive questions: - Can I send inline Velocity code with an HTTP DELETE and a path segment? - How do I run ad-hoc VTL as a DELETE request on the dynamic endpoint? instructions: - text: Evaluate this inline VTL with a DELETE to dynamic path {pathParam}. slots: pathParam: path.pathParam - text: Run my Velocity code as a dynamic DELETE targeting {pathParam}. slots: pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic/{pathParam}'].patch update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via PATCH with a path effect: write questions: - Can I PATCH inline Velocity code to the dynamic endpoint with a path segment? - How do I run ad-hoc VTL as a PATCH request? instructions: - text: Evaluate this inline VTL with a PATCH to dynamic path {pathParam}. slots: pathParam: path.pathParam - text: Run my Velocity code as a dynamic PATCH on {pathParam}. slots: pathParam: path.pathParam method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic'].get update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via GET, no path effect: read questions: - What's the simplest way to evaluate a Velocity snippet with a bare GET and no sub-path? - Can I test VTL code on the dynamic root without writing a .vtl file? instructions: - text: Evaluate this Velocity snippet with a GET on the dynamic root. - text: Run my VTL via the path-less dynamic GET and return the output. method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic'].put update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via PUT, no path effect: write questions: - Can I PUT Velocity code to the dynamic root with no extra path? - How do I run inline VTL as a plain PUT on the dynamic endpoint? instructions: - text: Evaluate this Velocity snippet with a PUT on the dynamic root. - text: Run my VTL via the path-less dynamic PUT. method: generated generated: '2026-09-26' - target: $.paths['/api/vtl/dynamic'].post update: x-apievangelist-phrasing: intent: Evaluate inline Velocity via POST, no path effect: write questions: - How do I POST raw VTL to the dynamic root and get the rendered result? - Can a path-less dynamic POST return JSON built with $dotJSON? instructions: - text: Evaluate this Velocity snippet with a POST on the dynamic root. - text: Run my VTL via the path-less dynamic POST and return the JSON. method: generated generated: '2026-09-26'