# Template A reusable template for generating a subgraph of a Grepr job graph using Javascript. Templates allow users to define parameterized pipeline components that can be instantiated with specific configuration. **Type**: `object` ## Properties - name: builtIn (optional) type: boolean description: Read-only property indicating whether this template is a built-in, non-editable template. - name: description (optional) type: string description: Description of the template. - name: draftOutputs (optional) type: array of `TemplateDraftOutput` description: List of additional outputs that will be added to the graph when running in draft mode. - name: id (optional) type: string description: Unique identifier for the template. - name: inputSchema (optional) type: object description: JSONSchema (https://json-schema.org/draft/2020-12) for validating the inputs to the template. Make sure you make this validation forwards/backwards compatible to ensure that the template version can be upgraded and rolled back. - name: inputs (optional) type: object description: Map of input names used in a parent subgraph that uses a TemplateOperation to their internal connections within the subgraph. Can be missing if there are no inputs to the subgraph - name: isLatest (optional) type: boolean - name: latest (optional) type: boolean - name: name (required) type: string description: Name of the template. - name: organizationId (optional) type: string description: Organization ID to which the template belongs. This is null for built-in templates. - name: outputs (optional) type: object description: Map of output names used in a parent subgraph that uses a TemplateOperation to their internal connections within the subgraph. Can be missing if there are no outputs from the subgraph - name: sourceHash (optional) type: string description: SHA-256 hash of template source and all dependencies (utils, types, build config, package versions). Used to track when template dependencies change and avoid unnecessary updates. - name: teamIds (optional) type: array of string description: Set of team IDs that can use this template. - name: template (required) type: string description: A javascript string that generates the JSON for the job subgraph. It will receive as input a User object and the inputs provided via the operation when it is getting resolved into a subgraph. - name: version (required) type: integer description: Version of the template.