# Run template

Run a template

Required permission: Account > Templates > General > Run

**Path parameters:**

{object}
- `templateId`: (string) (required) ID of the template

**Request body:**

{object}
- `arguments`: {object}

**Response body:**

{object}
- `data`: {object}
  - `name`: (string) (required) Name of the template. (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
  - `description`: (string) Description of the template. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
  - `apiVersion`: (string) (required) The version of the Northflank API to run the template against. (enum: v1.2)
  - `options`: {object}
    - `autorun`: (boolean) If true, the template will run automatically whenever a change is made to it.
    - `concurrencyPolicy`: (string) Defines the concurrency behaviour of the template with respect to parallel runs. (enum: allow, queue, forbid, latest, replace)
  - `arguments`: {object}
  - `gitops`: {object}
    - `vcsService`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
    - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
    - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
    - `vcsLinkId`: (string) Legacy key. Please used accountLogin instead.
    - `repoUrl`: (string) (required) URL of the Git repo to sync the file with. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
    - `branch`: (string) (required) The name of the branch to use.
    - `filePath`: (string) (required) The file path in the repository. If using an existing file, it should be in JSON format. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
  - `$schema`: (string)
  - `spec`: (multiple options) {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Workflow)
     - `spec`: (undefined) (required)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Workflow node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: CustomPlan)
     - `spec`: {object}
       - `type`: [array of] (multiple options) (string) (enum: deployment, build) | (string) (pattern: .*\${.*}.*)
       - `configuration`: {object}
         - `type`: (multiple options) (string) (enum: northflank, kubernetes) | (string) (pattern: .*\${.*}.*)
         - `resources`: {object}
           - `cpu`: {object}
             - `resources`: {object}
               - `limit`: (multiple options) (number) (format: float) | (string) (pattern: .*\${.*}.*)
               - `request`: (multiple options) (number) (format: float) | (string) (pattern: .*\${.*}.*)
             - `options`: {object}
               - `unbounded`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `memory`: {object}
             - `resources`: {object}
               - `limit`: (multiple options) (number) (format: float) | (string) (pattern: .*\${.*}.*)
               - `request`: (multiple options) (number) (format: float) | (string) (pattern: .*\${.*}.*)
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `type`: [array of] (string) (enum: deployment, build)
         - `configuration`: {object}
           - `type`: (string) (enum: northflank, kubernetes)
           - `resources`: {object}
             - `cpu`: {object}
               - `resources`: {object}
                 - `limit`: (number) (format: float)
                 - `request`: (number) (format: float)
               - `options`: {object}
                 - `unbounded`: (boolean)
             - `memory`: {object}
               - `resources`: {object}
                 - `limit`: (number) (format: float)
                 - `request`: (number) (format: float)
         - `name`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `id`: (string) (required) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Subdomain)
     - `spec`: {object}
       - `domain`: (multiple options) (string) The domain the path should be created for. (pattern: ^((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+$) | (string) A string containing one or more references that resolve to the domain the path should be created for. (pattern: .*\${.*}.*)
       - `name`: (multiple options) (string) Subdomain prepended to the domain name | (string) A string containing one or more references that resolve to subdomain prepended to the domain name (pattern: .*\${.*}.*)
       - `options`: {object}
         - `tlsMode`: (string) Desired TLS mode for the subdomain. (enum: default, passthrough)
         - `minTlsProtocolVersion`: (string) Minimum TLS protocol version for the subdomain. Only applicable for non-wildcard subdomains. (enum: TLSV1_2, TLSV1_3)
         - `autoVerify`: (boolean) The domain will be automatically verified on creation. Only configurable if the relevant feature flag is enabled for you account.
         - `aliasDomains`: [array of] (string)
       - `cdn`: {object}
         - `northflank`: {object}
           - `enabled`: (boolean)
           - `options`: {object}
             - `service`: {object}
               - `forceTlsEnableHsts`: (boolean)
               - `hstsDuration`: (number) HSTS duration. Required when `forceTlsEnableHsts` is `true`. (format: float)
               - `staleIfError`: (boolean)
               - `staleIfErrorTtl`: (number) (format: float)
               - `defaultTtl`: (number) (format: float)
             - `logging`: {object}
               - `enabled`: (boolean)
             - `http3`: {object}
               - `enabled`: (boolean)
             - `websockets`: {object}
               - `enabled`: (boolean)
             - `compression`: {object}
               - `enabled`: (boolean)
               - `mode`: (string) Compression options. Required when `enabled` is `true`. (enum: gzip, brotli)
             - `vclSnippets`: [array of] {object}
                 - `id`: (string)
                 - `name`: (string) (required) (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                 - `type`: (string) (required) (enum: init, recv, hash, hit, miss, pass, fetch, error, deliver, log, none)
                 - `dynamic`: (string) (required) (enum: 0, 1)
                 - `priority`: (number) (required) (format: float)
                 - `content`: (string) (required)
             - `cacheSettings`: [array of] {object}
                 - `id`: (string)
                 - `name`: (string) (required) (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                 - `action`: (string) (enum: pass, cache, restart)
                 - `cacheCondition`: (string)
                 - `staleTtl`: (number) (required) (format: float)
                 - `ttl`: (number) (required) (format: float)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `domain`: (string) (required) The domain the path should be created for. (pattern: ^((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+$)
         - `name`: (string) (required) Subdomain prepended to the domain name
         - `options`: {object}
           - `tlsMode`: (string) Desired TLS mode for the subdomain. (enum: default, passthrough)
           - `minTlsProtocolVersion`: (string) Minimum TLS protocol version for the subdomain. Only applicable for non-wildcard subdomains. (enum: TLSV1_2, TLSV1_3)
           - `autoVerify`: (boolean) The domain will be automatically verified on creation. Only configurable if the relevant feature flag is enabled for you account.
           - `aliasDomains`: [array of] (string)
         - `cdn`: {object}
           - `northflank`: {object}
             - `enabled`: (boolean)
             - `options`: {object}
               - `service`: {object}
                 - `forceTlsEnableHsts`: (boolean)
                 - `hstsDuration`: (number) HSTS duration. Required when `forceTlsEnableHsts` is `true`. (format: float)
                 - `staleIfError`: (boolean)
                 - `staleIfErrorTtl`: (number) (format: float)
                 - `defaultTtl`: (number) (format: float)
               - `logging`: {object}
                 - `enabled`: (boolean)
               - `http3`: {object}
                 - `enabled`: (boolean)
               - `websockets`: {object}
                 - `enabled`: (boolean)
               - `compression`: {object}
                 - `enabled`: (boolean)
                 - `mode`: (string) Compression options. Required when `enabled` is `true`. (enum: gzip, brotli)
               - `vclSnippets`: [array of] {object}
                   - `id`: (string)
                   - `name`: (string) (required) (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                   - `type`: (string) (required) (enum: init, recv, hash, hit, miss, pass, fetch, error, deliver, log, none)
                   - `dynamic`: (string) (required) (enum: 0, 1)
                   - `priority`: (number) (required) (format: float)
                   - `content`: (string) (required)
               - `cacheSettings`: [array of] {object}
                   - `id`: (string)
                   - `name`: (string) (required) (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                   - `action`: (string) (enum: pass, cache, restart)
                   - `cacheCondition`: (string)
                   - `staleTtl`: (number) (required) (format: float)
                   - `ttl`: (number) (required) (format: float)
         - `id`: (string) The full URL including name and domain.
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: SubdomainPath)
     - `spec`: {object}
       - `subdomain`: (multiple options) (string) The domain the path should be created for. (pattern: ^\*|^@$|^([0-9a-z]([0-9a-z\-]*[0-9a-z])?\.)*[0-9a-z]([0-9a-z\-]*[0-9a-z])?$) | (string) A string containing one or more references that resolve to the domain the path should be created for. (pattern: .*\${.*}.*)
       - `mode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: prefix, exact, regex) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
       - `uri`: (multiple options) (string) URI of the subdomain path. Interpreted according to the selected path mode | (string) A string containing one or more references that resolve to uRI of the subdomain path. Interpreted according to the selected path mode (pattern: .*\${.*}.*)
       - `options`: {object}
         - `priority`: (multiple options) (integer) In case of uri conflicts, the route with the higher priority will take precedence | (string) A string containing one or more references that resolve to in case of uri conflicts, the route with the higher priority will take precedence (pattern: .*\${.*}.*)
         - `ignoreUriCase`: (multiple options) (boolean) Allows case insensitive matching for 'prefix' and 'exact' modes | (string) A string containing one or more references that resolve to allows case insensitive matching for 'prefix' and 'exact' modes (pattern: .*\${.*}.*)
         - `rewrite`: (multiple options) {object}
             - `uri`: (multiple options) (string) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) (pattern: .*\${.*}.*) | {object}
             - `regex`: {object}
               - `match`: (multiple options) (string) Regex match for the given path | (string) A string containing one or more references that resolve to regex match for the given path (pattern: .*\${.*}.*)
               - `rewrite`: (multiple options) (string) Regex rewrite for the given matched path | (string) A string containing one or more references that resolve to regex rewrite for the given matched path (pattern: .*\${.*}.*)
         - `timeout`: (multiple options) (string) Customised request timeout for the given path. By default no timeout is set. (pattern: ^[1-9][0-9]*(s|ms)$) | (string) A string containing one or more references that resolve to customised request timeout for the given path. By default no timeout is set. (pattern: .*\${.*}.*)
         - `headers`: {object}
           - `request`: {object}
             - `set`: {object}
             - `add`: {object}
             - `remove`: [array of] (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
           - `response`: {object}
             - `set`: {object}
             - `add`: {object}
             - `remove`: [array of] (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
         - `corsPolicy`: {object}
           - `enabled`: (boolean) (required)
           - `allowOrigins`: [array of] {object}
               - `mode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: prefix, exact, regex) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
               - `origin`: (multiple options) (string) Origin definition. | (string) A string containing one or more references that resolve to origin definition. (pattern: .*\${.*}.*)
           - `allowMethods`: [array of] (string) (enum: GET, POST, PUT, PATCH, DELETE, OPTIONS, TRACE, CONNECT, HEAD)
           - `allowCredentials`: (boolean)
           - `allowHeaders`: [array of] (string)
           - `maxAge`: (string) (pattern: ^[1-9][0-9]*(s|m|h)$)
         - `retries`: {object}
           - `enabled`: (boolean) (required)
           - `attempts`: (integer) (required)
           - `perTryTimeout`: (string) Timeout per attempt. By default uses the path level timeout. (pattern: ^[1-9][0-9]*(s|ms)$)
           - `retryOn`: [array of] (string) (enum: 5xx, gateway-error, reset, connect-failure, envoy-ratelimited, retriable-4xx, refused-stream, retriable-status-codes, retriable-headers, cancelled, deadline-exceeded, internal, resource-exhausted, unavailable)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `subdomain`: (string) (required) The domain the path should be created for. (pattern: ^\*|^@$|^([0-9a-z]([0-9a-z\-]*[0-9a-z])?\.)*[0-9a-z]([0-9a-z\-]*[0-9a-z])?$)
         - `mode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: prefix, exact, regex)
         - `uri`: (string) (required) URI of the subdomain path. Interpreted according to the selected path mode
         - `options`: {object}
           - `priority`: (integer) In case of uri conflicts, the route with the higher priority will take precedence
           - `ignoreUriCase`: (boolean) Allows case insensitive matching for 'prefix' and 'exact' modes
           - `rewrite`: (multiple options) {object}
               - `uri`: (string) (required) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | {object}
               - `regex`: {object}
                 - `match`: (string) (required) Regex match for the given path
                 - `rewrite`: (string) (required) Regex rewrite for the given matched path
           - `timeout`: (string) Customised request timeout for the given path. By default no timeout is set. (pattern: ^[1-9][0-9]*(s|ms)$)
           - `headers`: {object}
             - `request`: {object}
               - `set`: {object}
               - `add`: {object}
               - `remove`: [array of] (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
             - `response`: {object}
               - `set`: {object}
               - `add`: {object}
               - `remove`: [array of] (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
           - `corsPolicy`: {object}
             - `enabled`: (boolean) (required)
             - `allowOrigins`: [array of] {object}
                 - `mode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: prefix, exact, regex)
                 - `origin`: (string) Origin definition.
             - `allowMethods`: [array of] (string) (enum: GET, POST, PUT, PATCH, DELETE, OPTIONS, TRACE, CONNECT, HEAD)
             - `allowCredentials`: (boolean)
             - `allowHeaders`: [array of] (string)
             - `maxAge`: (string) (pattern: ^[1-9][0-9]*(s|m|h)$)
           - `retries`: {object}
             - `enabled`: (boolean) (required)
             - `attempts`: (integer) (required)
             - `perTryTimeout`: (string) Timeout per attempt. By default uses the path level timeout. (pattern: ^[1-9][0-9]*(s|ms)$)
             - `retryOn`: [array of] (string) (enum: 5xx, gateway-error, reset, connect-failure, envoy-ratelimited, retriable-4xx, refused-stream, retriable-status-codes, retriable-headers, cancelled, deadline-exceeded, internal, resource-exhausted, unavailable)
         - `name`: (string) The full URL including subdomain and path URI.
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: ResourceTag)
     - `spec`: {object}
       - `useSpotNodes`: (boolean) Schedule workloads to spot nodes
       - `useOnDemandNodes`: (boolean) Also allow workloads to schedule to on demand nodes. Only relevant if you want workloads to schedule across both spot and on demand nodes
       - `nodeAffinities`: [array of] {object}
           - `preference`: (boolean)
           - `weight`: (number) The node affinity weight. Required when `preference` is `true`. (format: float)
           - `matchExpressions`: [array of] {object}
               - `key`: (string) (required)
               - `operator`: (string) (required) (enum: In, NotIn)
               - `values`: [array of] (string)
       - `color`: (string) (pattern: ^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$)
       - `description`: (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `useSpotNodes`: (boolean) Schedule workloads to spot nodes
         - `useOnDemandNodes`: (boolean) Also allow workloads to schedule to on demand nodes. Only relevant if you want workloads to schedule across both spot and on demand nodes
         - `nodeAffinities`: [array of] {object}
             - `preference`: (boolean)
             - `weight`: (number) The node affinity weight. Required when `preference` is `true`. (format: float)
             - `matchExpressions`: [array of] {object}
                 - `key`: (string) (required)
                 - `operator`: (string) (required) (enum: In, NotIn)
                 - `values`: [array of] (string)
         - `color`: (string) (pattern: ^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$)
         - `description`: (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `name`: (string) (required) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `id`: (string) (required) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: BYOCIntegration)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the cloud provider integration. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the cloud provider integration. (pattern: .*\${.*}.*)
       - `description`: (string) The description of the integration. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `provider`: (multiple options) (string) Cloud provider to be used for the selected resource (enum: aws, azure, civo, gcp, oci, cloudflare, coreweave, aiven, backblaze, akamai, byok) | (string) A string containing one or more references that resolve to cloud provider to be used for the selected resource (pattern: .*\${.*}.*)
       - `features`: [array of] (string) The type of provider integration. (enum: byoc, byoc-static-egress, byoc-custom-launch-templates, byoc-custom-vpc, byoc-logs, cloudfront, route53, registry-pull, registry-push, opentofu, workload-identity)
       - `restrictions`: {object}
         - `enabled`: (boolean) (required) Enable or disable BYOC restrictions for this entity
         - `teams`: [array of] {object}
             - `teamId`: (string) (required) The ID of the team that has access to this BYOC cluster (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 45)
       - `credentials`: {object}
         - `keyfileJson`: (multiple options) (string) Contents of a GCP key file. | (string) A string containing one or more references that resolve to contents of a GCP key file. (pattern: .*\${.*}.*)
         - `accessKey`: (multiple options) (string) AWS access key. | (string) A string containing one or more references that resolve to aWS access key. (pattern: .*\${.*}.*)
         - `secretKey`: (multiple options) (string) AWS secret key. | (string) A string containing one or more references that resolve to aWS secret key. (pattern: .*\${.*}.*)
         - `roleArn`: (multiple options) (string) AWS IAM role ARN. | (string) A string containing one or more references that resolve to aWS IAM role ARN. (pattern: .*\${.*}.*)
         - `externalId`: (multiple options) (string) AWS shared secret (external id). | (string) A string containing one or more references that resolve to aWS shared secret (external id). (pattern: .*\${.*}.*)
         - `apiKey`: (multiple options) (string) API key. | (string) A string containing one or more references that resolve to aPI key. (pattern: .*\${.*}.*)
         - `email`: (multiple options) (string) Email address for Cloudflare global API key. (format: email) | (string) A string containing one or more references that resolve to email address for Cloudflare global API key. (pattern: .*\${.*}.*)
         - `tenantId`: (multiple options) (string) Directory (tenant) ID  | (string) A string containing one or more references that resolve to directory (tenant) ID  (pattern: .*\${.*}.*)
         - `clientId`: (multiple options) (string) Application (client) ID  | (string) A string containing one or more references that resolve to application (client) ID  (pattern: .*\${.*}.*)
         - `objectId`: (multiple options) (string) Object ID | (string) A string containing one or more references that resolve to object ID (pattern: .*\${.*}.*)
         - `secret`: (multiple options) (string) Secret | (string) A string containing one or more references that resolve to secret (pattern: .*\${.*}.*)
         - `subscriptionId`: (multiple options) (string) Azure Subscription ID | (string) A string containing one or more references that resolve to azure Subscription ID (pattern: .*\${.*}.*)
         - `region`: (multiple options) (string) OCI Authentication Region | (string) A string containing one or more references that resolve to oCI Authentication Region (pattern: .*\${.*}.*)
         - `tenancyId`: (multiple options) (string) OCI Tenancy ID | (string) A string containing one or more references that resolve to oCI Tenancy ID (pattern: .*\${.*}.*)
         - `userId`: (multiple options) (string) User ID | (string) A string containing one or more references that resolve to user ID (pattern: .*\${.*}.*)
         - `fingerprint`: (multiple options) (string) Fingerprint | (string) A string containing one or more references that resolve to fingerprint (pattern: .*\${.*}.*)
         - `privateKey`: (multiple options) (string) OCI Private Key | (string) A string containing one or more references that resolve to oCI Private Key (pattern: .*\${.*}.*)
         - `passphrase`: (multiple options) (string) Passphrase | (string) A string containing one or more references that resolve to passphrase (pattern: .*\${.*}.*)
         - `compartmentId`: (multiple options) (string) OCI Compartment ID | (string) A string containing one or more references that resolve to oCI Compartment ID (pattern: .*\${.*}.*)
         - `kubeconfig`: (multiple options) (string) Kubeconfig | (string) A string containing one or more references that resolve to kubeconfig (pattern: .*\${.*}.*)
         - `applicationKeyId`: (multiple options) (string) Backblaze Application Key ID | (string) A string containing one or more references that resolve to backblaze Application Key ID (pattern: .*\${.*}.*)
         - `applicationKey`: (multiple options) (string) Backblaze Application Key | (string) A string containing one or more references that resolve to backblaze Application Key (pattern: .*\${.*}.*)
         - `host`: (multiple options) (string) Akamai Host | (string) A string containing one or more references that resolve to akamai Host (pattern: .*\${.*}.*)
         - `accessToken`: (multiple options) (string) Akamai Access Token | (string) A string containing one or more references that resolve to akamai Access Token (pattern: .*\${.*}.*)
         - `clientToken`: (multiple options) (string) Akamai Client Token | (string) A string containing one or more references that resolve to akamai Client Token (pattern: .*\${.*}.*)
         - `clientSecret`: (multiple options) (string) Akamai Client Secret | (string) A string containing one or more references that resolve to akamai Client Secret (pattern: .*\${.*}.*)
       - `aws`: {object}
         - `authenticationMode`: (string) The provider authentication mode to use for this integration. (enum: accessKey, crossAccountRole)
       - `gcp`: {object}
         - `projectId`: (string) (required) GCP Project ID
         - `authenticationMode`: (string) The provider authentication mode to use for this integration. (enum: accessKey, crossAccountRole)
       - `cloudflare`: {object}
         - `credentialType`: (string) The type of api key (enum: apiToken, originCAKey, globalApiKey)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) ID of the integration (pattern: ^[A-Za-z0-9-]+$)
         - `name`: (string) (required) The name of the cloud provider integration. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `description`: (string) The description of the integration. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `provider`: (string) (required) Cloud provider to be used for the selected resource (enum: aws, azure, civo, gcp, oci, cloudflare, coreweave, aiven, backblaze, akamai, byok)
         - `features`: [array of] (string) The type of provider integration. (enum: byoc, byoc-static-egress, byoc-custom-launch-templates, byoc-custom-vpc, byoc-logs, cloudfront, route53, registry-pull, registry-push, opentofu, workload-identity)
         - `restrictions`: {object}
           - `enabled`: (boolean) (required) Enable or disable BYOC restrictions for this entity
           - `teams`: [array of] {object}
               - `teamId`: (string) (required) The ID of the team that has access to this BYOC cluster
         - `credentials`: {object}
           - `keyfileJson`: (string) Contents of a GCP key file.
           - `accessKey`: (string) AWS access key.
           - `secretKey`: (string) AWS secret key.
           - `roleArn`: (string) AWS IAM role ARN.
           - `externalId`: (string) AWS shared secret (external id).
           - `apiKey`: (string) API key.
           - `email`: (string) Email address for Cloudflare global API key. (format: email)
           - `tenantId`: (string) Directory (tenant) ID 
           - `clientId`: (string) Application (client) ID 
           - `objectId`: (string) Object ID
           - `secret`: (string) Secret
           - `subscriptionId`: (string) Azure Subscription ID
           - `region`: (string) OCI Authentication Region
           - `tenancyId`: (string) OCI Tenancy ID
           - `userId`: (string) User ID
           - `fingerprint`: (string) Fingerprint
           - `privateKey`: (string) OCI Private Key
           - `passphrase`: (string) Passphrase
           - `compartmentId`: (string) OCI Compartment ID
           - `kubeconfig`: (string) Kubeconfig
           - `applicationKeyId`: (string) Backblaze Application Key ID
           - `applicationKey`: (string) Backblaze Application Key
           - `host`: (string) Akamai Host
           - `accessToken`: (string) Akamai Access Token
           - `clientToken`: (string) Akamai Client Token
           - `clientSecret`: (string) Akamai Client Secret
         - `aws`: {object}
           - `authenticationMode`: (string) The provider authentication mode to use for this integration. (enum: accessKey, crossAccountRole)
         - `gcp`: {object}
           - `projectId`: (string) (required) GCP Project ID
           - `authenticationMode`: (string) The provider authentication mode to use for this integration. (enum: accessKey, crossAccountRole)
           - `serviceAccountEmail`: (string) Service account email that will be used for cross account access.
         - `cloudflare`: {object}
           - `credentialType`: (string) The type of api key (enum: apiToken, originCAKey, globalApiKey)
         - `createdAt`: (string) (required) The time the integration was created. (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: RolloutStrategy)
     - `spec`: {object}
       - `name`: (multiple options) (string) Display name for the gradual rollout strategy | (string) A string containing one or more references that resolve to display name for the gradual rollout strategy (pattern: .*\${.*}.*)
       - `type`: (multiple options) (string) Type of the gradual rollout strategy (enum: canary) | (string) A string containing one or more references that resolve to type of the gradual rollout strategy (pattern: .*\${.*}.*)
       - `options`: (multiple options) {object}
           - `triggers`: (multiple options) {object}
               - `releaseFromTemplate`: (multiple options) (boolean) Automatically trigger the rollout strategy when a release is initiated from a template | (string) A string containing one or more references that resolve to automatically trigger the rollout strategy when a release is initiated from a template (pattern: .*\${.*}.*)
               - `releaseFromReleaseFlow`: (multiple options) (boolean) Automatically trigger the rollout strategy when a release is initiated from a release flow | (string) A string containing one or more references that resolve to automatically trigger the rollout strategy when a release is initiated from a release flow (pattern: .*\${.*}.*)
               - `releaseFromCD`: (multiple options) (boolean) Automatically trigger the rollout strategy when a release is initiated from a CD pipeline | (string) A string containing one or more references that resolve to automatically trigger the rollout strategy when a release is initiated from a CD pipeline (pattern: .*\${.*}.*)
               - `releaseFromUI`: (multiple options) (boolean) Automatically trigger the rollout strategy when a release is initiated from the UI | (string) A string containing one or more references that resolve to automatically trigger the rollout strategy when a release is initiated from the UI (pattern: .*\${.*}.*)
               - `releaseFromApi`: (multiple options) (boolean) Automatically trigger the rollout strategy when a release is initiated via the API | (string) A string containing one or more references that resolve to automatically trigger the rollout strategy when a release is initiated via the API (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to conditions under which a new release will automatically initiate as a gradual rollout (pattern: .*\${.*}.*)
           - `blockDeploymentOnActiveRollout`: (multiple options) (boolean) When enabled, new deployments are blocked while a rollout is in progress | (string) A string containing one or more references that resolve to when enabled, new deployments are blocked while a rollout is in progress (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
       - `details`: (multiple options) (multiple options) {object}
             - `canaryStrategy`: (multiple options) (string) Strategy used to split traffic between stable and canary deployments (enum: percentage, header) | (string) A string containing one or more references that resolve to strategy used to split traffic between stable and canary deployments (pattern: .*\${.*}.*)
             - `config`: (multiple options) (multiple options) {object}
                   - `canaryPercentage`: (multiple options) (integer) Percentage of traffic to route to the canary deployment | (string) A string containing one or more references that resolve to percentage of traffic to route to the canary deployment (pattern: .*\${.*}.*)
                   - `stablePercentage`: (multiple options) (integer) Percentage of traffic to route to the stable deployment | (string) A string containing one or more references that resolve to percentage of traffic to route to the stable deployment (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to configuration for the selected canary strategy (pattern: .*\${.*}.*) | (multiple options) {object}
                   - `canaryHeader`: {object}
                     - `headerName`: (multiple options) (string) HTTP header name used to identify requests that should be routed to the target deployment (min length: 1) | (string) A string containing one or more references that resolve to hTTP header name used to identify requests that should be routed to the target deployment (pattern: .*\${.*}.*)
                     - `headerValue`: (multiple options) (string) HTTP header value that routes matching requests to the target deployment (min length: 1) | (string) A string containing one or more references that resolve to hTTP header value that routes matching requests to the target deployment (pattern: .*\${.*}.*)
                   - `stableHeader`: {object}
                     - `headerName`: (multiple options) (string) HTTP header name used to identify requests that should be routed to the target deployment (min length: 1) | (string) A string containing one or more references that resolve to hTTP header name used to identify requests that should be routed to the target deployment (pattern: .*\${.*}.*)
                     - `headerValue`: (multiple options) (string) HTTP header value that routes matching requests to the target deployment (min length: 1) | (string) A string containing one or more references that resolve to hTTP header value that routes matching requests to the target deployment (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to configuration for the selected canary strategy (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to strategy-specific configuration details (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) Identifier for the gradual rollout strategy
         - `name`: (string) (required) Name of the gradual rollout strategy
         - `type`: (string) (required) Type of the gradual rollout strategy (enum: canary)
         - `options`: {object}
           - `triggers`: {object}
             - `releaseFromTemplate`: (boolean)
             - `releaseFromReleaseFlow`: (boolean)
             - `releaseFromCD`: (boolean)
             - `releaseFromUI`: (boolean)
             - `releaseFromApi`: (boolean)
           - `blockDeploymentOnActiveRollout`: (boolean)
         - `details`: {object}
           - `canaryStrategy`: (string) (required) (enum: percentage, header)
           - `config`: (multiple options) {object}
               - `canaryPercentage`: (integer) (required)
               - `stablePercentage`: (integer) (required) | {object}
               - `headerName`: (string) (required) (min length: 1)
               - `headerValue`: (string) (required) (min length: 1) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: BYOCCluster)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the cluster. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 20) | (string) A string containing one or more references that resolve to the name of the cluster. (pattern: .*\${.*}.*)
       - `description`: (string) The description of the cluster. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `provider`: (multiple options) (string) Cloud provider to be used for the selected resource (enum: aws, azure, civo, gcp, oci, cloudflare, coreweave, aiven, backblaze, akamai, byok) | (string) A string containing one or more references that resolve to cloud provider to be used for the selected resource (pattern: .*\${.*}.*)
       - `region`: (string) Region of the cluster. Can only be updated for BYOK clusters.
       - `kubernetesVersion`: (multiple options) (string) Deprecated: This field is no longer used, the version is now set by the platform. | (string) A string containing one or more references that resolve to deprecated: This field is no longer used, the version is now set by the platform. (pattern: .*\${.*}.*)
       - `integrationId`: (multiple options) (string) Existing integration to use for this cluster. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to existing integration to use for this cluster. (pattern: .*\${.*}.*)
       - `storage`: {object}
         - `storageClasses`: [array of] {object}
             - `id`: (string) (required)
             - `name`: (string) (required)
             - `description`: (string)
             - `type`: (string) (enum: storage-class, snapshot-class)
             - `kubernetesName`: (string) (required)
             - `defaultSnapshotClass`: (string)
             - `options`: {object}
               - `capabilities`: {object}
                 - `expansion`: (boolean) Increasing volume size after provisioning.
                 - `snapshot`: (boolean) Point in time snapshotting of volumes.
               - `accessModes`: {object}
                 - `ReadWriteOnce`: (boolean) Access mode where a volume is exclusively attached to a single pod at a time.
                 - `ReadWriteMany`: (boolean) Access mode where a volume can be attached to multiple single pods at a time for read and write operations.
               - `storageSize`: {object}
                 - `minValidSize`: (integer) Enforces a minimum storage size per addon or volume.
                 - `maxValidSize`: (integer) Enforces a maximum storage size per addon or volume.
                 - `suggestedOptions`: [array of] (integer)
               - `platform`: {object}
                 - `supportedResources`: [array of] (string) (enum: addon, volume, build-cache)
         - `snapshotClasses`: [array of] {object}
             - `id`: (string) (required)
             - `name`: (string) (required)
             - `description`: (string)
             - `kubernetesName`: (string) (required)
       - `nodePools`: (multiple options) [array of] {object}
             - `id`: (string) (required) ID of existing node pool. Must be passed when modifying existing node pools. Not relevant for new node pools (pattern: (^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)|(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89ABab][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$)) (min length: 3) (max length: 63)
             - `nodeType`: (multiple options) (string) Machine type to be used by the node pool. | (string) A string containing one or more references that resolve to machine type to be used by the node pool. (pattern: .*\${.*}.*)
             - `oci`: {object}
               - `ocpu`: (integer) (required)
               - `memory`: (integer) (required)
             - `gcp`: {object}
               - `enablePrivateNodes`: (boolean) Set this flag to disable public IP assignment for nodes in this node pool.
             - `azure`: {object}
               - `systemPool`: (boolean) When 'provider' is 'azure', at least one system node pool is required per cluster.
               - `enablePublicNodeIp`: (boolean) When 'provider' is 'azure', set this flag to use public node IPs.
               - `vnetSubnetId`: (multiple options) (string) ID of the vnet subnet to use. | (string) A string containing one or more references that resolve to iD of the vnet subnet to use. (pattern: .*\${.*}.*)
             - `aws`: {object}
               - `launchTemplate`: {object}
                 - `id`: (multiple options) (string) ID of the launch template to use. | (string) A string containing one or more references that resolve to iD of the launch template to use. (pattern: .*\${.*}.*)
                 - `version`: (multiple options) (integer) Version of the launch template that should be used. | (string) A string containing one or more references that resolve to version of the launch template that should be used. (pattern: .*\${.*}.*)
             - `nodeCount`: (multiple options) (integer) Number of nodes to the node pool should be provisioned with. | (string) A string containing one or more references that resolve to number of nodes to the node pool should be provisioned with. (pattern: .*\${.*}.*)
             - `autoscaling`: {object}
               - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
               - `min`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
               - `max`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `computeResources`: {object}
               - `gpu`: {object}
                 - `timeslicing`: {object}
                   - `enabled`: (boolean) Whether or not to enable time-slicing on the GPU.
                   - `numSlices`: (number) Sets the amount of slices per GPU, e.g. how many pods may be scheduled concurrently on each GPU. (format: float)
             - `preemptible`: (boolean) Configures node pool with preemptible / spot instances if enabled.
             - `diskType`: (multiple options) (string) The disk type to use. | (string) A string containing one or more references that resolve to the disk type to use. (pattern: .*\${.*}.*)
             - `diskSize`: (multiple options) (integer) Disk size in GB | (string) A string containing one or more references that resolve to disk size in GB (pattern: .*\${.*}.*)
             - `availabilityZones`: [array of] (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `subnets`: [array of] (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `scheduling`: {object}
               - `allowJobs`: (boolean) Allow jobs to schedule to this node pool
               - `onlyGpuJobs`: (boolean) Restrict job scheduling to jobs which have GPU resources configured. Only relevant for GPU node pools.
               - `allowServices`: (boolean) Allow services to schedule to this node pool
               - `onlyGpuServices`: (boolean) Restrict service scheduling to services which have GPU resources configured. Only relevant for GPU node pools.
               - `allowAddons`: (boolean) Allow addons to schedule to this node pool
               - `allowBuilds`: (boolean) Allow builds to schedule to this node pool
               - `onlyGpuBuilds`: (boolean) Restrict build scheduling to builds which have GPU resources configured. Only relevant for GPU node pools.
               - `allowCeph`: (boolean) Allow the placement of Ceph pods
             - `labels`: {object} | [array of] {object}
             - `id`: (string) (required) ID of the node pool. Must be passed when modifying existing node pools. Not relevant for new node pools (pattern: (^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)|(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89ABab][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$)) (min length: 3) (max length: 63)
             - `providerId`: (string) (required) ID which identifies kubernetes nodes as belonging to this pool. (pattern: (^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)|(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89ABab][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$)) (min length: 3) (max length: 63)
             - `computeResources`: {object}
               - `gpu`: {object}
                 - `supported`: (boolean) Whether this node pool consists of GPU nodes .
                 - `type`: (string) GPU type associated with the node pool. (pattern: [a-z0-9])
                 - `resources`: {object}
                   - `memoryInfo`: {object}
                     - `sizeInGiB`: (number) Memory amount of the GPU in Gib. (format: float)
                 - `mig`: {object}
                   - `enabled`: (boolean) Whether or not to enable Multi-Instance GPU (MIG).
                   - `partitions`: [array of] (string)
                 - `timeslicing`: {object}
                   - `enabled`: (boolean) Whether or not to enable time-slicing on the GPU.
                   - `numSlices`: (number) Sets the amount of slices per GPU, e.g. how many pods may be scheduled concurrently on each GPU. (format: float)
                 - `count`: (integer) Number of GPUs per node.
             - `defaultPool`: (boolean) Fallback pool to which nodes which do not match any defined node pool are assigned. Exactly one default pool is required.
             - `preemptible`: (boolean) Configures node pool with preemptible / spot instances if enabled.
             - `scheduling`: {object}
               - `allowJobs`: (boolean) Allow jobs to schedule to this node pool
               - `onlyGpuJobs`: (boolean) Restrict job scheduling to jobs which have GPU resources configured. Only relevant for GPU node pools.
               - `allowServices`: (boolean) Allow services to schedule to this node pool
               - `onlyGpuServices`: (boolean) Restrict service scheduling to services which have GPU resources configured. Only relevant for GPU node pools.
               - `allowAddons`: (boolean) Allow addons to schedule to this node pool
               - `allowBuilds`: (boolean) Allow builds to schedule to this node pool
               - `onlyGpuBuilds`: (boolean) Restrict build scheduling to builds which have GPU resources configured. Only relevant for GPU node pools.
               - `allowCeph`: (boolean) Allow the placement of Ceph pods
             - `platform`: {object}
               - `architecture`: (string) Platform architecture of the underlying node type. (enum: amd64, arm64)
             - `labels`: {object}
       - `settings`: {object}
         - `builds`: {object}
           - `mode`: (multiple options) (string) (enum: paas, internal, build-cluster) | (string) (pattern: .*\${.*}.*)
           - `plan`: (multiple options) (string) Plan to use for builds if they are run on the cluster (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) (pattern: .*\${.*}.*)
           - `clusterId`: (multiple options) (string) Cluster to use for scheduling builds (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) (pattern: .*\${.*}.*)
           - `caching`: {object}
             - `allow`: (boolean) Whether to allow local disk based caching for builds.
             - `storageClassName`: (string) Storage class used by default for local disk based caching.
         - `registry`: {object}
           - `mode`: (multiple options) (string) (enum: paas, self-hosted) | (string) (pattern: .*\${.*}.*)
           - `registryId`: (multiple options) (string) Credentials to use for storing of images. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) (pattern: .*\${.*}.*)
         - `logging`: (multiple options) {object}
             - `mode`: (multiple options) (string) (enum: paas) | (string) (pattern: .*\${.*}.*) | {object}
             - `mode`: (multiple options) (string) (enum: loki) | (string) (pattern: .*\${.*}.*)
             - `loki`: {object}
               - `storageType`: (string) (required) (enum: s3)
               - `s3BucketName`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
               - `s3AccessKey`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
               - `s3SecretKey`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
               - `s3Region`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
             - `mode`: (multiple options) (string) (enum: loki) | (string) (pattern: .*\${.*}.*)
             - `loki`: {object}
               - `storageType`: (string) (required) (enum: gcs)
               - `gcsBucketName`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
               - `gcpIntegrationId`: (multiple options) (string) (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) (pattern: .*\${.*}.*)
         - `networking`: {object}
           - `overlayNetwork`: (boolean) Whether overlay networking is enabled for this cluster.
           - `overlayCIDR`: (string) CIDR range for the overlay network. (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$)
         - `vanityDomains`: {object}
           - `apps`: {object}
             - `zoneName`: (string) (required)
             - `integrationId`: (string) (required)
           - `customDomains`: {object}
             - `zoneName`: (string) (required)
             - `integrationId`: (string) (required)
           - `loadBalancers`: {object}
             - `zoneName`: (string) (required)
             - `integrationId`: (string) (required)
         - `infrastructure`: {object}
           - `workloads`: {object}
             - `runtimeClass`: (multiple options) (string) (enum: none, gvisor, kata-clh, kata-qemu) | (string) (pattern: .*\${.*}.*)
           - `builds`: {object}
             - `runtimeClass`: (multiple options) (string) (enum: none, gvisor, kata-clh, kata-qemu) | (string) (pattern: .*\${.*}.*)
           - `installKata`: (boolean)
           - `installGvisor`: (boolean)
           - `cleanupVolumes`: (boolean)
           - `cleanupSnapshots`: (boolean)
           - `cephStorageProvider`: {object}
             - `enabled`: (boolean)
             - `resources`: {object}
               - `cpu`: (number) Configure the CPU resources per Ceph replica (format: float)
               - `memory`: (number) Configure the memory resources per Ceph replica (format: float)
               - `storage`: (number) Configure the data disk size per Ceph replica (format: float)
             - `enableMultiReadWriteStorage`: (boolean) Configure Ceph to be enable use of multi read write storage for persistent volumes on the cluster.
             - `enableSingleReadWriteStorage`: (boolean) Configure Ceph to be used as default storage class for single read write storage. This will replace the default storage of the cloud provider.
             - `enableErasureCoding`: (boolean) Configure Ceph to be set up with erasure coding. This will be less fault tolerant but more cost effective.
             - `enableTopologyAwareScheduling`: (boolean) Configure Ceph to be set up with topology aware scheduling, enforcing deployment across multiple zones.
         - `requestModifiers`: {object}
           - `services`: {object}
             - `cpu`: (number) (required) (format: float)
             - `memory`: (number) (required) (format: float)
           - `jobs`: {object}
             - `cpu`: (number) (required) (format: float)
             - `memory`: (number) (required) (format: float)
           - `builds`: {object}
             - `cpu`: (number) (required) (format: float)
             - `memory`: (number) (required) (format: float)
           - `addons`: {object}
             - `cpu`: (number) (required) (format: float)
             - `memory`: (number) (required) (format: float)
       - `restrictions`: {object}
         - `enabled`: (boolean) (required) Enable or disable BYOC restrictions for this entity
         - `teams`: [array of] {object}
             - `teamId`: (string) (required) The ID of the team that has access to this BYOC cluster (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 45)
       - `gcp`: {object}
         - `networking`: {object}
           - `network`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
           - `subnetwork`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
         - `enableAuthorizedIpRanges`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `authorizedIpRanges`: (multiple options) [array of] (string) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$) | (string) (pattern: .*\${.*}.*)
         - `projectId`: (multiple options) (string) GCP Project ID (pattern: ^[a-z][a-z0-9-]{4,28}[a-z0-9]$) | (string) A string containing one or more references that resolve to gCP Project ID (pattern: .*\${.*}.*)
       - `aws`: {object}
         - `enablePublicAccessCidrs`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `publicAccessCidrs`: (multiple options) [array of] (string) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$) | (string) (pattern: .*\${.*}.*)
         - `subnetConfiguration`: {object}
           - `mode`: (multiple options) (string) The mode of the AWS subnet configuration (enum: default-subnets-for-azs, explicit-subnets) | (string) A string containing one or more references that resolve to the mode of the AWS subnet configuration (pattern: .*\${.*}.*)
           - `vpcId`: (multiple options) (string) Id of the VPC | (string) (pattern: .*\${.*}.*)
           - `subnets`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to list of subnets the cluster should be created for. At least 2 must be specified. (pattern: .*\${.*}.*)
         - `vpcEgress`: (multiple options) (boolean) If egress traffic from the cluster should come from a single static egress IP. | (string) A string containing one or more references that resolve to if egress traffic from the cluster should come from a single static egress IP. (pattern: .*\${.*}.*)
       - `oci`: {object}
         - `vcnConfiguration`: {object}
           - `vcnId`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
           - `subnetIdForKubernetesApi`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
           - `subnetIdsForServiceLBs`: (multiple options) [array of] (string) | (string) (pattern: .*\${.*}.*)
       - `azure`: {object}
         - `networking`: {object}
           - `vnetConfiguration`: {object}
             - `mode`: (multiple options) (string) The vnet mode to use for this cluster. Use this to switch between creation of a new vnet per cluster or specifying a custom vnet. (enum: create-default, custom-vnet) | (string) A string containing one or more references that resolve to the vnet mode to use for this cluster. Use this to switch between creation of a new vnet per cluster or specifying a custom vnet. (pattern: .*\${.*}.*)
             - `vnetId`: (multiple options) (string) Azure vnetId that should be used for this cluster. By default a new vnet will be created. | (string) A string containing one or more references that resolve to azure vnetId that should be used for this cluster. By default a new vnet will be created. (pattern: .*\${.*}.*)
           - `networkPluginMode`: (multiple options) (string) Optional setting to configure overlay mode on Azure. (enum: overlay) | (string) A string containing one or more references that resolve to optional setting to configure overlay mode on Azure. (pattern: .*\${.*}.*)
         - `enableAuthorizedIpRanges`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `authorizedIpRanges`: (multiple options) [array of] (string) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$) | (string) (pattern: .*\${.*}.*)
       - `coreweave`: {object}
         - `zone`: (multiple options) (string) AZ of the cluster | (string) A string containing one or more references that resolve to aZ of the cluster (pattern: .*\${.*}.*)
         - `network`: {object}
           - `networkMode`: (multiple options) (string) (enum: create-default, custom) | (string) (pattern: .*\${.*}.*)
           - `vpcId`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
           - `customPrefixNames`: {object}
             - `podCidrName`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `serviceCidrName`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `internalLbCidrNames`: (multiple options) [array of] (string) | (string) (pattern: .*\${.*}.*)
       - `byok`: {object}
         - `nodePoolProviderIdLabel`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
       - `coordinates`: {object}
         - `latitude`: (number) (required) (format: float)
         - `longitude`: (number) (required) (format: float)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) The ID of cluster
         - `name`: (string) (required) The name of the cluster. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 20)
         - `entityType`: (string) (enum: org, team)
         - `description`: (string) The description of the cluster. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `provider`: (string) (required) Cloud provider to be used for the selected resource (enum: aws, azure, civo, gcp, oci, cloudflare, coreweave, aiven, backblaze, akamai, byok)
         - `region`: (string) Region of the cluster. Can only be updated for BYOK clusters.
         - `status`: {object}
           - `state`: {object}
             - `state`: (string) (required) Current state of the cluster.
             - `transitionTime`: (string) Time of the last state transition. (format: date-time)
             - `reason`: (string) The reason, given the cluster is in an error state.
         - `kubernetesVersion`: (string) Deprecated: This field is no longer used, the version is now set by the platform.
         - `integrationId`: (string) Existing integration to use for this cluster. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
         - `storage`: {object}
           - `storageClasses`: [array of] {object}
               - `id`: (string) (required)
               - `name`: (string) (required)
               - `description`: (string)
               - `type`: (string) (enum: storage-class, snapshot-class)
               - `kubernetesName`: (string) (required)
               - `defaultSnapshotClass`: (string)
               - `options`: {object}
                 - `capabilities`: {object}
                   - `expansion`: (boolean) Increasing volume size after provisioning.
                   - `snapshot`: (boolean) Point in time snapshotting of volumes.
                 - `accessModes`: {object}
                   - `ReadWriteOnce`: (boolean) Access mode where a volume is exclusively attached to a single pod at a time.
                   - `ReadWriteMany`: (boolean) Access mode where a volume can be attached to multiple single pods at a time for read and write operations.
                 - `storageSize`: {object}
                   - `minValidSize`: (integer) Enforces a minimum storage size per addon or volume.
                   - `maxValidSize`: (integer) Enforces a maximum storage size per addon or volume.
                   - `suggestedOptions`: [array of] (integer)
                 - `platform`: {object}
                   - `supportedResources`: [array of] (string) (enum: addon, volume, build-cache)
           - `snapshotClasses`: [array of] {object}
               - `id`: (string) (required)
               - `name`: (string) (required)
               - `description`: (string)
               - `kubernetesName`: (string) (required)
         - `nodePools`: (multiple options) [array of] {object}
               - `id`: (string) (required) ID of existing node pool. Must be passed when modifying existing node pools. Not relevant for new node pools (pattern: (^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)|(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89ABab][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$)) (min length: 3) (max length: 63)
               - `nodeType`: (string) (required) Machine type to be used by the node pool.
               - `oci`: {object}
                 - `ocpu`: (integer) (required)
                 - `memory`: (integer) (required)
               - `gcp`: {object}
                 - `enablePrivateNodes`: (boolean) Set this flag to disable public IP assignment for nodes in this node pool.
               - `azure`: {object}
                 - `systemPool`: (boolean) When 'provider' is 'azure', at least one system node pool is required per cluster.
                 - `enablePublicNodeIp`: (boolean) When 'provider' is 'azure', set this flag to use public node IPs.
                 - `vnetSubnetId`: (string) ID of the vnet subnet to use.
               - `aws`: {object}
                 - `launchTemplate`: {object}
                   - `id`: (string) (required) ID of the launch template to use.
                   - `version`: (integer) (required) Version of the launch template that should be used.
               - `nodeCount`: (integer) (required) Number of nodes to the node pool should be provisioned with.
               - `autoscaling`: {object}
                 - `enabled`: (boolean)
                 - `min`: (integer)
                 - `max`: (integer)
               - `computeResources`: {object}
                 - `gpu`: {object}
                   - `type`: (string) (required) GPU type associated with the node pool. (pattern: [a-z0-9])
                   - `resources`: {object}
                     - `memoryInfo`: {object}
                       - `sizeInGiB`: (number) Memory amount of the GPU in Gib. (format: float)
                   - `count`: (integer) (required) Number of GPUs per node.
                   - `timeslicing`: {object}
                     - `enabled`: (boolean) Whether or not to enable time-slicing on the GPU.
                     - `numSlices`: (number) Sets the amount of slices per GPU, e.g. how many pods may be scheduled concurrently on each GPU. (format: float)
               - `preemptible`: (boolean) Configures node pool with preemptible / spot instances if enabled.
               - `diskType`: (string) The disk type to use.
               - `diskSize`: (integer) (required) Disk size in GB
               - `availabilityZones`: [array of] (string)
               - `subnets`: [array of] (string)
               - `scheduling`: {object}
                 - `allowJobs`: (boolean) Allow jobs to schedule to this node pool
                 - `onlyGpuJobs`: (boolean) Restrict job scheduling to jobs which have GPU resources configured. Only relevant for GPU node pools.
                 - `allowServices`: (boolean) Allow services to schedule to this node pool
                 - `onlyGpuServices`: (boolean) Restrict service scheduling to services which have GPU resources configured. Only relevant for GPU node pools.
                 - `allowAddons`: (boolean) Allow addons to schedule to this node pool
                 - `allowBuilds`: (boolean) Allow builds to schedule to this node pool
                 - `onlyGpuBuilds`: (boolean) Restrict build scheduling to builds which have GPU resources configured. Only relevant for GPU node pools.
                 - `allowCeph`: (boolean) Allow the placement of Ceph pods
               - `labels`: {object} | [array of] {object}
               - `id`: (string) (required) ID of the node pool. Must be passed when modifying existing node pools. Not relevant for new node pools (pattern: (^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)|(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89ABab][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$)) (min length: 3) (max length: 63)
               - `providerId`: (string) (required) ID which identifies kubernetes nodes as belonging to this pool. (pattern: (^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)|(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89ABab][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$)) (min length: 3) (max length: 63)
               - `computeResources`: {object}
                 - `gpu`: {object}
                   - `supported`: (boolean) Whether this node pool consists of GPU nodes .
                   - `type`: (string) GPU type associated with the node pool. (pattern: [a-z0-9])
                   - `resources`: {object}
                     - `memoryInfo`: {object}
                       - `sizeInGiB`: (number) Memory amount of the GPU in Gib. (format: float)
                   - `mig`: {object}
                     - `enabled`: (boolean) Whether or not to enable Multi-Instance GPU (MIG).
                     - `partitions`: [array of] (string)
                   - `timeslicing`: {object}
                     - `enabled`: (boolean) Whether or not to enable time-slicing on the GPU.
                     - `numSlices`: (number) Sets the amount of slices per GPU, e.g. how many pods may be scheduled concurrently on each GPU. (format: float)
                   - `count`: (integer) Number of GPUs per node.
               - `defaultPool`: (boolean) Fallback pool to which nodes which do not match any defined node pool are assigned. Exactly one default pool is required.
               - `preemptible`: (boolean) Configures node pool with preemptible / spot instances if enabled.
               - `scheduling`: {object}
                 - `allowJobs`: (boolean) Allow jobs to schedule to this node pool
                 - `onlyGpuJobs`: (boolean) Restrict job scheduling to jobs which have GPU resources configured. Only relevant for GPU node pools.
                 - `allowServices`: (boolean) Allow services to schedule to this node pool
                 - `onlyGpuServices`: (boolean) Restrict service scheduling to services which have GPU resources configured. Only relevant for GPU node pools.
                 - `allowAddons`: (boolean) Allow addons to schedule to this node pool
                 - `allowBuilds`: (boolean) Allow builds to schedule to this node pool
                 - `onlyGpuBuilds`: (boolean) Restrict build scheduling to builds which have GPU resources configured. Only relevant for GPU node pools.
                 - `allowCeph`: (boolean) Allow the placement of Ceph pods
               - `platform`: {object}
                 - `architecture`: (string) Platform architecture of the underlying node type. (enum: amd64, arm64)
               - `labels`: {object}
         - `settings`: {object}
           - `builds`: {object}
             - `mode`: (string) (enum: paas, internal, build-cluster)
             - `plan`: (string) Plan to use for builds if they are run on the cluster (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
             - `clusterId`: (string) Cluster to use for scheduling builds (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
             - `caching`: {object}
               - `allow`: (boolean) Whether to allow local disk based caching for builds.
               - `storageClassName`: (string) Storage class used by default for local disk based caching.
           - `registry`: {object}
             - `mode`: (string) (enum: paas, self-hosted)
             - `registryId`: (string) Credentials to use for storing of images. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `logging`: (multiple options) {object}
               - `mode`: (string) (enum: paas) | {object}
               - `mode`: (string) (required) (enum: loki)
               - `loki`: {object}
                 - `storageType`: (string) (required) (enum: s3)
                 - `s3BucketName`: (string) (required)
                 - `s3AccessKey`: (string) (required)
                 - `s3SecretKey`: (string) (required)
                 - `s3Region`: (string) (required) | {object}
               - `mode`: (string) (required) (enum: loki)
               - `loki`: {object}
                 - `storageType`: (string) (required) (enum: gcs)
                 - `gcsBucketName`: (string) (required)
                 - `gcpIntegrationId`: (string) (required) (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `networking`: {object}
             - `overlayNetwork`: (boolean) Whether overlay networking is enabled for this cluster.
             - `overlayCIDR`: (string) CIDR range for the overlay network. (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$)
           - `vanityDomains`: {object}
             - `apps`: {object}
               - `zoneName`: (string) (required)
               - `integrationId`: (string) (required)
             - `customDomains`: {object}
               - `zoneName`: (string) (required)
               - `integrationId`: (string) (required)
             - `loadBalancers`: {object}
               - `zoneName`: (string) (required)
               - `integrationId`: (string) (required)
           - `infrastructure`: {object}
             - `workloads`: {object}
               - `runtimeClass`: (string) (enum: none, gvisor, kata-clh, kata-qemu)
             - `builds`: {object}
               - `runtimeClass`: (string) (enum: none, gvisor, kata-clh, kata-qemu)
             - `installKata`: (boolean)
             - `installGvisor`: (boolean)
             - `cleanupVolumes`: (boolean)
             - `cleanupSnapshots`: (boolean)
             - `cephStorageProvider`: {object}
               - `enabled`: (boolean)
               - `resources`: {object}
                 - `cpu`: (number) Configure the CPU resources per Ceph replica (format: float)
                 - `memory`: (number) Configure the memory resources per Ceph replica (format: float)
                 - `storage`: (number) Configure the data disk size per Ceph replica (format: float)
               - `enableMultiReadWriteStorage`: (boolean) Configure Ceph to be enable use of multi read write storage for persistent volumes on the cluster.
               - `enableSingleReadWriteStorage`: (boolean) Configure Ceph to be used as default storage class for single read write storage. This will replace the default storage of the cloud provider.
               - `enableErasureCoding`: (boolean) Configure Ceph to be set up with erasure coding. This will be less fault tolerant but more cost effective.
               - `enableTopologyAwareScheduling`: (boolean) Configure Ceph to be set up with topology aware scheduling, enforcing deployment across multiple zones.
           - `requestModifiers`: {object}
             - `services`: {object}
               - `cpu`: (number) (required) (format: float)
               - `memory`: (number) (required) (format: float)
             - `jobs`: {object}
               - `cpu`: (number) (required) (format: float)
               - `memory`: (number) (required) (format: float)
             - `builds`: {object}
               - `cpu`: (number) (required) (format: float)
               - `memory`: (number) (required) (format: float)
             - `addons`: {object}
               - `cpu`: (number) (required) (format: float)
               - `memory`: (number) (required) (format: float)
         - `restrictions`: {object}
           - `enabled`: (boolean) (required) Enable or disable BYOC restrictions for this entity
           - `teams`: [array of] {object}
               - `teamId`: (string) (required) The ID of the team that has access to this BYOC cluster (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 45)
         - `gcp`: {object}
           - `networking`: {object}
             - `network`: (string)
             - `subnetwork`: (string)
           - `enableAuthorizedIpRanges`: (boolean)
           - `authorizedIpRanges`: [array of] (string) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$)
           - `projectId`: (string) GCP Project ID (pattern: ^[a-z][a-z0-9-]{4,28}[a-z0-9]$)
         - `aws`: {object}
           - `enablePublicAccessCidrs`: (boolean)
           - `publicAccessCidrs`: [array of] (string) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$)
           - `subnetConfiguration`: {object}
             - `mode`: (string) (required) The mode of the AWS subnet configuration (enum: default-subnets-for-azs, explicit-subnets)
             - `vpcId`: (string) Id of the VPC
             - `subnets`: [array of] (string)
           - `vpcEgress`: (boolean) If egress traffic from the cluster should come from a single static egress IP.
         - `oci`: {object}
           - `vcnConfiguration`: {object}
             - `vcnId`: (string) (required)
             - `subnetIdForKubernetesApi`: (string) (required)
             - `subnetIdsForServiceLBs`: [array of] (string)
         - `azure`: {object}
           - `networking`: {object}
             - `vnetConfiguration`: {object}
               - `mode`: (string) (required) The vnet mode to use for this cluster. Use this to switch between creation of a new vnet per cluster or specifying a custom vnet. (enum: create-default, custom-vnet)
               - `vnetId`: (string) Azure vnetId that should be used for this cluster. By default a new vnet will be created.
             - `networkPluginMode`: (string) Optional setting to configure overlay mode on Azure. (enum: overlay)
           - `enableAuthorizedIpRanges`: (boolean)
           - `authorizedIpRanges`: [array of] (string) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$)
         - `coreweave`: {object}
           - `zone`: (string) (required) AZ of the cluster
           - `network`: {object}
             - `networkMode`: (string) (required) (enum: create-default, custom)
             - `vpcId`: (string)
             - `customPrefixNames`: {object}
               - `podCidrName`: (string) (required)
               - `serviceCidrName`: (string) (required)
               - `internalLbCidrNames`: [array of] (string)
         - `byok`: {object}
           - `nodePoolProviderIdLabel`: (string) (required)
         - `coordinates`: {object}
           - `latitude`: (number) (required) (format: float)
           - `longitude`: (number) (required) (format: float)
         - `dns`: (string) Auto-generated dns identifier for this cluster.
         - `updatedAt`: (string) (required) The time the cluster was last updated. (format: date-time)
         - `createdAt`: (string) (required) The time the cluster was created. (format: date-time)
         - `deletionRequested`: (boolean) (required) Indicates if provider resource deletion has been requested. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: BYOCRegistry)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the cloud provider registry. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the cloud provider registry. (pattern: .*\${.*}.*)
       - `description`: (string) The description of the integration. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `uid`: (string) Unique id of the registry.
       - `provider`: (multiple options) (string) Cloud provider to be used for the selected resource (enum: aws, azure, civo, gcp, oci, cloudflare, coreweave, aiven, backblaze, akamai, byok) | (string) A string containing one or more references that resolve to cloud provider to be used for the selected resource (pattern: .*\${.*}.*)
       - `region`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
       - `integrationId`: (multiple options) (string) Integration to use for this registry. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this registry. (pattern: .*\${.*}.*)
       - `restrictions`: {object}
         - `enabled`: (boolean) (required) Enable or disable BYOC restrictions for this entity
         - `teams`: [array of] {object}
             - `teamId`: (string) (required) The ID of the team that has access to this BYOC cluster (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 45)
       - `updatedAt`: (string) time of update (format: date-time)
       - `createdAt`: (string) time of creation (format: date-time)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) ID of the registry (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `name`: (string) (required) The name of the cloud provider registry. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `description`: (string) The description of the integration. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `uid`: (string) Unique id of the registry.
         - `provider`: (string) (required) Cloud provider to be used for the selected resource (enum: aws, azure, civo, gcp, oci, cloudflare, coreweave, aiven, backblaze, akamai, byok)
         - `region`: (string) (required)
         - `integrationId`: (string) Integration to use for this registry. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
         - `restrictions`: {object}
           - `enabled`: (boolean) (required) Enable or disable BYOC restrictions for this entity
           - `teams`: [array of] {object}
               - `teamId`: (string) (required) The ID of the team that has access to this BYOC cluster
         - `updatedAt`: (string) time of update (format: date-time)
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: CustomDockerCredentials)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the docker credentials. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the docker credentials. (pattern: .*\${.*}.*)
       - `provider`: (string) (required) The provider of the docker registry. (enum: acr, ecr, gar, dockerhub, dhi, github, gitlab, custom, legacy)
       - `registryUrl`: (multiple options) (string) The URL of the docker registry. | (string) A string containing one or more references that resolve to the URL of the docker registry. (pattern: .*\${.*}.*)
       - `aws`: {object}
         - `region`: (string) The region of the docker registry.
       - `gcp`: {object}
         - `projectId`: (string) The project ID of the GCP docker registry.
       - `azure`: {object}
         - `resourceGroup`: (string) The resource group of the Azure docker registry.
       - `integrationId`: (multiple options) (string) Integration to use for this registry. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this registry. (pattern: .*\${.*}.*)
       - `credentials`: {object}
         - `username`: (string) Username for the docker registry. Required when `integrationId` is provided.
         - `password`: (string) Password for the docker registry. Required when `integrationId` is provided.
         - `scope`: {object}
           - `pull`: (boolean) Whether the credentials can pull images.
           - `push`: (boolean) Whether the credentials can push images.
       - `restrictions`: {object}
         - `restricted`: (boolean) (required) Whether access to this credential is restricted.
         - `projects`: [array of] (string)
       - `updatedAt`: (string) time of update (format: date-time)
       - `createdAt`: (string) time of creation (format: date-time)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) ID of the docker credentials (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `name`: (string) (required) The name of the docker credentials. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `provider`: (string) (required) The provider of the docker registry. (enum: acr, ecr, gar, dockerhub, dhi, github, gitlab, custom, legacy)
         - `registryUrl`: (string) The URL of the docker registry.
         - `aws`: {object}
           - `region`: (string) The region of the docker registry.
         - `gcp`: {object}
           - `projectId`: (string) The project ID of the GCP docker registry.
         - `azure`: {object}
           - `resourceGroup`: (string) The resource group of the Azure docker registry.
         - `integrationId`: (string) Integration to use for this registry. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
         - `credentials`: {object}
           - `username`: (string) Username for the docker registry. Required when `integrationId` is provided.
           - `password`: (string) Password for the docker registry. Required when `integrationId` is provided.
           - `scope`: {object}
             - `pull`: (boolean) Whether the credentials can pull images.
             - `push`: (boolean) Whether the credentials can push images.
         - `restrictions`: {object}
           - `restricted`: (boolean) (required) Whether access to this credential is restricted.
           - `projects`: [array of] (string)
         - `updatedAt`: (string) time of update (format: date-time)
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Project)
     - `spec`: (multiple options) {object}
         - `name`: (multiple options) (string) The name of the project. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the project. (pattern: .*\${.*}.*)
         - `description`: (multiple options) (string) The description of the project. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to the description of the project. (pattern: .*\${.*}.*)
         - `color`: (multiple options) (string) The color of the project in the Northflank App. (pattern: ^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$) | (string) A string containing one or more references that resolve to the color of the project in the Northflank App. (pattern: .*\${.*}.*)
         - `region`: (multiple options) (string) The region the project will be hosted in. | (string) A string containing one or more references that resolve to the region the project will be hosted in. (pattern: .*\${.*}.*)
         - `networking`: {object}
           - `allowedIngressProjects`: [array of] (multiple options) (string) (pattern: ^[A-Za-z0-9-]+$) | (string) (pattern: .*\${.*}.*)
           - `tailscale`: {object}
             - `enabled`: (boolean) Whether or not to inject a Tailscale sidecar for this project's resources
             - `authKeyTags`: [array of] (multiple options) (string) (pattern: ^tag:.+) | (string) (pattern: .*\${.*}.*)
             - `restrictions`: {object}
               - `enabled`: (boolean) (required) Whether or not to restrict the settings to resources with specific tags
               - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) (pattern: .*\${.*}.*)
               - `tagMatchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*)
             - `options`: {object}
               - `applyToAddons`: (boolean) Apply the Tailscale configuration to addons.
               - `applyToAddonJobs`: (boolean) Apply the Tailscale configuration to addon jobs (backups, restores).
               - `autoRedeployOnRegeneration`: (boolean) Automatically restart applicable services when the auth key is regenerated
             - `tailscaleOptions`: {object}
               - `acceptRoutes`: (boolean) Accept advertised routes from the Tailscale network
             - `secrets`: {object}
               - `clientId`: (multiple options) (string) Tailscale OAuth client ID (required for generating auth keys for Tailscale) | (string) A string containing one or more references that resolve to tailscale OAuth client ID (required for generating auth keys for Tailscale) (pattern: .*\${.*}.*)
               - `clientSecret`: (multiple options) (string) Tailscale OAuth client secret (required for generating auth keys for Tailscale) | (string) A string containing one or more references that resolve to tailscale OAuth client secret (required for generating auth keys for Tailscale) (pattern: .*\${.*}.*)
           - `hostAliases`: {object}
             - `enabled`: (boolean) Enable support for adding /etc/hosts overrides for a container
             - `hostEntries`: [array of] (multiple options) {object}
                   - `ipAddress`: (string) (required) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)
                   - `hostnames`: [array of] (string) (pattern: ^(([a-z0-9][a-z0-9\-]*)|[a-z0-9]\.)*([a-z]+|xn\-\-[a-z0-9]+)\.?$) | (string) (pattern: .*\${.*}.*)
             - `restrictions`: {object}
               - `enabled`: (boolean) (required) Whether or not to restrict the settings to resources with specific tags
               - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) (pattern: .*\${.*}.*)
               - `tagMatchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*) | {object}
         - `name`: (multiple options) (string) The name of the project. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the project. (pattern: .*\${.*}.*)
         - `description`: (multiple options) (string) The description of the project. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to the description of the project. (pattern: .*\${.*}.*)
         - `color`: (multiple options) (string) The color of the project in the Northflank App. (pattern: ^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$) | (string) A string containing one or more references that resolve to the color of the project in the Northflank App. (pattern: .*\${.*}.*)
         - `clusterId`: (multiple options) (string) The BYOC cluster this project will be hosted in. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to the BYOC cluster this project will be hosted in. (pattern: .*\${.*}.*)
         - `networking`: {object}
           - `allowedIngressProjects`: [array of] (multiple options) (string) (pattern: ^[A-Za-z0-9-]+$) | (string) (pattern: .*\${.*}.*)
           - `tailscale`: {object}
             - `enabled`: (boolean) Whether or not to inject a Tailscale sidecar for this project's resources
             - `authKeyTags`: [array of] (multiple options) (string) (pattern: ^tag:.+) | (string) (pattern: .*\${.*}.*)
             - `restrictions`: {object}
               - `enabled`: (boolean) (required) Whether or not to restrict the settings to resources with specific tags
               - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) (pattern: .*\${.*}.*)
               - `tagMatchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*)
             - `options`: {object}
               - `applyToAddons`: (boolean) Apply the Tailscale configuration to addons.
               - `applyToAddonJobs`: (boolean) Apply the Tailscale configuration to addon jobs (backups, restores).
               - `autoRedeployOnRegeneration`: (boolean) Automatically restart applicable services when the auth key is regenerated
             - `tailscaleOptions`: {object}
               - `acceptRoutes`: (boolean) Accept advertised routes from the Tailscale network
             - `secrets`: {object}
               - `clientId`: (multiple options) (string) Tailscale OAuth client ID (required for generating auth keys for Tailscale) | (string) A string containing one or more references that resolve to tailscale OAuth client ID (required for generating auth keys for Tailscale) (pattern: .*\${.*}.*)
               - `clientSecret`: (multiple options) (string) Tailscale OAuth client secret (required for generating auth keys for Tailscale) | (string) A string containing one or more references that resolve to tailscale OAuth client secret (required for generating auth keys for Tailscale) (pattern: .*\${.*}.*)
           - `hostAliases`: {object}
             - `enabled`: (boolean) Enable support for adding /etc/hosts overrides for a container
             - `hostEntries`: [array of] (multiple options) {object}
                   - `ipAddress`: (string) (required) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)
                   - `hostnames`: [array of] (string) (pattern: ^(([a-z0-9][a-z0-9\-]*)|[a-z0-9]\.)*([a-z]+|xn\-\-[a-z0-9]+)\.?$) | (string) (pattern: .*\${.*}.*)
             - `restrictions`: {object}
               - `enabled`: (boolean) (required) Whether or not to restrict the settings to resources with specific tags
               - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) (pattern: .*\${.*}.*)
               - `tagMatchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) Identifier for the project
         - `name`: (string) (required) The name of the project. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `description`: (string) The description of the project. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `color`: (string) The color of the project in the Northflank App. (pattern: ^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$)
         - `region`: (string) The region the project will be hosted in.
         - `clusterId`: (string) The BYOC cluster this project will be hosted in. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
         - `customRegistry`: {object}
           - `enabled`: (boolean)
           - `configuration`: {object}
             - `credentialId`: (string) (required) (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
             - `provider`: (string) (enum: acr, ecr, gar, dockerhub, dhi, github, gitlab, custom, legacy)
         - `networking`: {object}
           - `allowedIngressProjects`: [array of] (string) (pattern: ^[A-Za-z0-9-]+$)
           - `tailscale`: {object}
             - `enabled`: (boolean) Whether or not to inject a Tailscale sidecar for this project's resources
             - `authKeyTags`: [array of] (string) (pattern: ^tag:.+)
             - `restrictions`: {object}
               - `enabled`: (boolean) (required) Whether or not to restrict the settings to resources with specific tags
               - `tags`: [array of] (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
               - `tagMatchCondition`: (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or)
             - `options`: {object}
               - `applyToAddons`: (boolean) Apply the Tailscale configuration to addons.
               - `applyToAddonJobs`: (boolean) Apply the Tailscale configuration to addon jobs (backups, restores).
               - `autoRedeployOnRegeneration`: (boolean) Automatically restart applicable services when the auth key is regenerated
             - `tailscaleOptions`: {object}
               - `acceptRoutes`: (boolean) Accept advertised routes from the Tailscale network
             - `secrets`: {object}
               - `clientId`: (string) (required) Tailscale OAuth client ID (required for generating auth keys for Tailscale)
               - `clientSecret`: (string) (required) Tailscale OAuth client secret (required for generating auth keys for Tailscale)
           - `hostAliases`: {object}
             - `enabled`: (boolean) Enable support for adding /etc/hosts overrides for a container
             - `hostEntries`: [array of] {object}
                 - `ipAddress`: (string) (required) (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$)
                 - `hostnames`: [array of] (string) (pattern: ^(([a-z0-9][a-z0-9\-]*)|[a-z0-9]\.)*([a-z]+|xn\-\-[a-z0-9]+)\.?$)
             - `restrictions`: {object}
               - `enabled`: (boolean) (required) Whether or not to restrict the settings to resources with specific tags
               - `tags`: [array of] (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
               - `tagMatchCondition`: (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: BuildService)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the service. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the name of the service. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the service. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the service. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `billing`: {object}
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (Deprecated - use buildPlan for build resources instead.). (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (Deprecated - use buildPlan for build resources instead.). (pattern: .*\${.*}.*)
         - `buildPlan`: (multiple options) (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the build plan to use. (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
       - `infrastructure`: {object}
         - `architecture`: (string) (enum: x86, arm)
       - `disabledCI`: (boolean) Whether CI (continuous integration) should be disabled.
       - `buildSource`: (string) Defines the build source for this resource (enum: git, bundle)
       - `vcsData`: {object}
         - `projectUrl`: (multiple options) (string) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo to build. (pattern: .*\${.*}.*)
         - `projectType`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
         - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
         - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
         - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24) | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
       - `buildSettings`: (multiple options) {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `dockerfile`: {object}
             - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
             - `buildEngine`: (multiple options) (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko) | (string) A string containing one or more references that resolve to build engine to use. Defaults to recommended build engine `buildkit` (pattern: .*\${.*}.*)
             - `dockerFilePath`: (multiple options) (string) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$) | (string) A string containing one or more references that resolve to the file path of the Dockerfile. (pattern: .*\${.*}.*)
             - `dockerWorkDir`: (multiple options) (string) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory of the Dockerfile. (pattern: .*\${.*}.*)
             - `buildkit`: {object}
               - `useCache`: (multiple options) (boolean) Use persistent storage to cache build layers. | (string) A string containing one or more references that resolve to use persistent storage to cache build layers. (pattern: .*\${.*}.*)
               - `cacheStorageSize`: (multiple options) (integer) The amount of persistent storage available to each build in MB. | (string) A string containing one or more references that resolve to the amount of persistent storage available to each build in MB. (pattern: .*\${.*}.*)
               - `useInternalCache`: (multiple options) (boolean) DEPRECATED: This field will be removed in the near future. | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*)
               - `internalCacheStorage`: (multiple options) (number) DEPRECATED: This field will be removed in the near future. (format: float) | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*) | {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `buildpack`: {object}
             - `builder`: (multiple options) (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL) | (string) A string containing one or more references that resolve to buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (pattern: .*\${.*}.*)
             - `buildpackLocators`: [array of] (multiple options) (string) Url or registry identifier of custom Buildpack. | (string) A string containing one or more references that resolve to url or registry identifier of custom Buildpack. (pattern: .*\${.*}.*)
             - `buildContext`: (multiple options) (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory to build in. (pattern: .*\${.*}.*)
             - `useCache`: (multiple options) (boolean) Should build dependencies be cached? | (string) A string containing one or more references that resolve to should build dependencies be cached? (pattern: .*\${.*}.*)
       - `buildConfiguration`: {object}
         - `prRestrictions`: [array of] (multiple options) (string) A pull request build rule. Can contain `*` as a wildcard to match multiple branch names. For example, `feature/*` will build all commits from pull requests from branches that start with `feature/`. (pattern: ^[^?:@$~ [\]{}]*$) | (string) A string containing one or more references that resolve to a pull request build rule. Can contain `*` as a wildcard to match multiple branch names. For example, `feature/*` will build all commits from pull requests from branches that start with `feature/`. (pattern: .*\${.*}.*)
         - `branchRestrictions`: [array of] (multiple options) (string) A branch build rule. Can contain `*` as a wildcard to match multiple branch names. For example, `feature/*` will build all commits from branches that start with `feature/`. (pattern: ^[^?:@$~ [\]{}]*$) | (string) A string containing one or more references that resolve to a branch build rule. Can contain `*` as a wildcard to match multiple branch names. For example, `feature/*` will build all commits from branches that start with `feature/`. (pattern: .*\${.*}.*)
         - `crossProjectAccess`: {object}
           - `enabled`: (boolean) (required) Allow this build service to be referenced by resources in other projects.
           - `projects`: [array of] (multiple options) (string) The ID of a project to include or exclude. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of a project to include or exclude. (pattern: .*\${.*}.*)
           - `isAllowList`: (boolean) (required) If true, only the listed projects can use this build service. If false, all projects except the listed ones can use this build service.
         - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
         - `isAllowList`: (multiple options) (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. | (string) A string containing one or more references that resolve to if `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. (pattern: .*\${.*}.*)
         - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. | (string) A string containing one or more references that resolve to if `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. (pattern: .*\${.*}.*)
         - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
         - `dockerfileTarget`: (multiple options) (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. | (string) A string containing one or more references that resolve to if your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. (pattern: .*\${.*}.*)
         - `dockerCredentials`: [array of] (multiple options) (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the docker credentials to use. (pattern: .*\${.*}.*)
         - `includeGitFolder`: (boolean) Include .git folder inside the build context
         - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
         - `enableGitLfs`: (boolean) Enable Git LFS support for the build
         - `storage`: {object}
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
       - `buildArguments`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `buildFiles`: {object}
       - `dockerSecretMounts`: {object}
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the service. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54)
         - `description`: (string) A description of the service. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `billing`: {object}
           - `deploymentPlan`: (string) The ID of the deployment plan to use. (Deprecated - use buildPlan for build resources instead.). (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `buildPlan`: (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `disabledCI`: (boolean) Whether CI (continuous integration) should be disabled.
         - `buildSource`: (string) Defines the build source for this resource (enum: git, bundle)
         - `vcsData`: {object}
           - `projectUrl`: (string) (required) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
           - `projectType`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
           - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use.
           - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
           - `vcsLinkId`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24)
         - `buildSettings`: (multiple options) {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `dockerfile`: {object}
               - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
               - `buildEngine`: (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko)
               - `dockerFilePath`: (string) (required) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
               - `dockerWorkDir`: (string) (required) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `buildkit`: {object}
                 - `useCache`: (boolean) Use persistent storage to cache build layers.
                 - `cacheStorageSize`: (integer) The amount of persistent storage available to each build in MB.
                 - `useInternalCache`: (boolean) DEPRECATED: This field will be removed in the near future.
                 - `internalCacheStorage`: (number) DEPRECATED: This field will be removed in the near future. (format: float) | {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `buildpack`: {object}
               - `builder`: (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL)
               - `buildpackLocators`: [array of] (string) Url or registry identifier of custom Buildpack.
               - `buildContext`: (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `useCache`: (boolean) Should build dependencies be cached?
         - `buildConfiguration`: {object}
           - `prRestrictions`: [array of] (string) A pull request build rule. Can contain `*` as a wildcard to match multiple branch names. For example, `feature/*` will build all commits from pull requests from branches that start with `feature/`. (pattern: ^[^?:@$~ [\]{}]*$)
           - `branchRestrictions`: [array of] (string) A branch build rule. Can contain `*` as a wildcard to match multiple branch names. For example, `feature/*` will build all commits from branches that start with `feature/`. (pattern: ^[^?:@$~ [\]{}]*$)
           - `crossProjectAccess`: {object}
             - `enabled`: (boolean) (required) Allow this build service to be referenced by resources in other projects.
             - `projects`: [array of] (string) The ID of a project to include or exclude. (pattern: ^[A-Za-z0-9-]+$)
             - `isAllowList`: (boolean) (required) If true, only the listed projects can use this build service. If false, all projects except the listed ones can use this build service.
           - `pathIgnoreRules`: [array of] (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260)
           - `isAllowList`: (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.
           - `ciIgnoreFlagsEnabled`: (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.
           - `ciIgnoreFlags`: [array of] (string) A commit ignore flag. (max length: 72)
           - `dockerfileTarget`: (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.
           - `dockerCredentials`: [array of] (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$)
           - `includeGitFolder`: (boolean) Include .git folder inside the build context
           - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
           - `enableGitLfs`: (boolean) Enable Git LFS support for the build
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
         - `buildArguments`: {object}
         - `buildFiles`: {object}
         - `dockerSecretMounts`: {object}
         - `serviceType`: (string) (required) Type of the service (combined, build or deployment) (enum: build)
         - `id`: (string) (required) Identifier for the service
         - `appId`: (string) (required) Full identifier used for service deployment
         - `cluster`: {object}
           - `id`: (string) (required) The id of the cluster associated with this project.
           - `name`: (string) (required) The name of the cluster associated with this project.
           - `namespace`: (string) Namespace this resource is located within on the cluster.
           - `loadBalancers`: [array of] (string)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time)
         - `status`: {object}
           - `build`: {object}
             - `status`: (string) (required) The current status of the build. (enum: QUEUED, PENDING, UNSCHEDULABLE, STARTING, CLONING, BUILDING, UPLOADING, ABORTED, FAILURE, SUBMISSION_FAILURE, SUCCESS, CRASHED, IN_PROGRESS)
             - `lastTransitionTime`: (string) The timestamp of when the build reached this status. (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: CombinedService)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the service. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the name of the service. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the service. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the service. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `billing`: {object}
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (pattern: .*\${.*}.*)
         - `buildPlan`: (multiple options) (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the build plan to use. (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
       - `infrastructure`: {object}
         - `architecture`: (string) (enum: x86, arm)
       - `deployment`: {object}
         - `type`: (multiple options) (string) The way the service should be deployed. Either as a deployment (default), or as a stateful set. (enum: deployment, statefulSet) | (string) A string containing one or more references that resolve to the way the service should be deployed. Either as a deployment (default), or as a stateful set. (pattern: .*\${.*}.*)
         - `instances`: (multiple options) (integer) The number of instances to run the service on. | (string) A string containing one or more references that resolve to the number of instances to run the service on. (pattern: .*\${.*}.*)
         - `buildpack`: {object}
           - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
           - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
           - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
         - `docker`: {object}
           - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
           - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
         - `storage`: {object}
           - `useHdbStorage`: (boolean)
           - `usePdSsdStorage`: (boolean)
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
           - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
         - `strategy`: {object}
           - `type`: (multiple options) (string) Configures the instance roll out strategy of your service. Currently only available via feature flag. (enum: recreate, rollout-steady, rollout-balanced, rollout-fast, custom) | (string) A string containing one or more references that resolve to configures the instance roll out strategy of your service. Currently only available via feature flag. (pattern: .*\${.*}.*)
           - `settings`: {object}
             - `maxSurge`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
             - `maxUnavailable`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
         - `zonalRedundancy`: {object}
           - `type`: (multiple options) (string) Defines scheduling behaviour across different zones within the same region. (enum: disabled, preferred, required) | (string) A string containing one or more references that resolve to defines scheduling behaviour across different zones within the same region. (pattern: .*\${.*}.*)
           - `minZones`: (integer) Defines how many zones are required and will prevent containers from additional scheduling into existing zones. (Only relevant if type is set to "required")
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `gracePeriodSeconds`: (multiple options) (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. | (string) A string containing one or more references that resolve to the maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. (pattern: .*\${.*}.*)
         - `gradualRolloutStrategyId`: (multiple options) (string) The id of the strategy to be attached to service. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the strategy to be attached to service. (pattern: .*\${.*}.*)
         - `ssh`: {object}
           - `enabled`: (multiple options) (boolean) Enables SSH access if the resource matches an SSH identity selector. | (string) A string containing one or more references that resolve to enables SSH access if the resource matches an SSH identity selector. (pattern: .*\${.*}.*)
         - `metadata`: {object}
           - `labels`: {object}
           - `annotations`: {object}
       - `ports`: [array of] {object}
           - `name`: (multiple options) (string) The name used to identify the port. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 1) (max length: 8) | (string) A string containing one or more references that resolve to the name used to identify the port. (pattern: .*\${.*}.*)
           - `internalPort`: (multiple options) (integer) The port number. | (string) A string containing one or more references that resolve to the port number. (pattern: .*\${.*}.*)
           - `public`: (multiple options) (boolean) If true, the port will be exposed publicly. | (string) A string containing one or more references that resolve to if true, the port will be exposed publicly. (pattern: .*\${.*}.*)
           - `security`: {object}
             - `credentials`: [array of] {object}
                 - `username`: (multiple options) (string) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the username to access the service (pattern: .*\${.*}.*)
                 - `password`: (multiple options) (string) The password to access the service with this username. | (string) A string containing one or more references that resolve to the password to access the service with this username. (pattern: .*\${.*}.*)
                 - `type`: (multiple options) (string) The type of authentication used (enum: basic-auth) | (string) A string containing one or more references that resolve to the type of authentication used (pattern: .*\${.*}.*)
             - `ip`: (multiple options) [array of] {object}
                   - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                   - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
             - `policies`: (multiple options) [array of] {object}
                   - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                   - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
             - `sso`: {object}
               - `organizationId`: (multiple options) (string) ID of the SSO organization that the user will have to be a member of | (string) A string containing one or more references that resolve to iD of the SSO organization that the user will have to be a member of (pattern: .*\${.*}.*)
               - `directoryGroupIds`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to array of directory groups that will have access (pattern: .*\${.*}.*)
               - `allowAnyOrgUsers`: (multiple options) (boolean) Allow entire organization to access this service | (string) A string containing one or more references that resolve to allow entire organization to access this service (pattern: .*\${.*}.*)
               - `validateInternalTraffic`: (multiple options) (boolean) Enforce internal traffic through SSO authentication flow | (string) A string containing one or more references that resolve to enforce internal traffic through SSO authentication flow (pattern: .*\${.*}.*)
               - `setCookieOnRootDomain`: (multiple options) (boolean) Set SSO authentication cookie on root domain | (string) A string containing one or more references that resolve to set SSO authentication cookie on root domain (pattern: .*\${.*}.*)
               - `allowInternalTrafficViaPublicDns`: (multiple options) (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow | (string) A string containing one or more references that resolve to allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow (pattern: .*\${.*}.*)
             - `headers`: [array of] (multiple options) {object}
                   - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                   - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$) | (string) (pattern: .*\${.*}.*)
                   - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
                   - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                   - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                   - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `verificationMode`: (string) Mode used to verify multiple security features like ip policies and SSO authentication (enum: or, and)
             - `securePathConfiguration`: {object}
               - `enabled`: (boolean) Enable security policies on a path-level style
               - `skipSecurityPoliciesForInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip all security policies
               - `rules`: [array of] {object}
                   - `paths`: [array of] (multiple options) {object}
                         - `path`: (multiple options) (string) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) (pattern: .*\${.*}.*)
                         - `routingMode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: prefix) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
                         - `priority`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*) | {object}
                         - `path`: (multiple options) (string) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) (pattern: .*\${.*}.*)
                         - `routingMode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: exact) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
                         - `priority`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*) | {object}
                         - `path`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                         - `routingMode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: regex) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
                         - `priority`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
                   - `accessMode`: (multiple options) (string) Specify the way the path rule will behave when processing policies. This enables an allow-list/deny-list approach for access control on each path (enum: protected, unprotected) | (string) A string containing one or more references that resolve to specify the way the path rule will behave when processing policies. This enables an allow-list/deny-list approach for access control on each path (pattern: .*\${.*}.*)
                   - `securityPolicies`: (multiple options) {object}
                       - `orPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (multiple options) (string) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the username to access the service (pattern: .*\${.*}.*)
                             - `password`: (multiple options) (string) The password to access the service with this username. | (string) A string containing one or more references that resolve to the password to access the service with this username. (pattern: .*\${.*}.*)
                             - `type`: (multiple options) (string) The type of authentication used (enum: basic-auth) | (string) A string containing one or more references that resolve to the type of authentication used (pattern: .*\${.*}.*)
                         - `ip`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `policies`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `sso`: {object}
                           - `organizationId`: (multiple options) (string) ID of the SSO organization that the user will have to be a member of | (string) A string containing one or more references that resolve to iD of the SSO organization that the user will have to be a member of (pattern: .*\${.*}.*)
                           - `directoryGroupIds`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to array of directory groups that will have access (pattern: .*\${.*}.*)
                           - `allowAnyOrgUsers`: (multiple options) (boolean) Allow entire organization to access this service | (string) A string containing one or more references that resolve to allow entire organization to access this service (pattern: .*\${.*}.*)
                           - `validateInternalTraffic`: (multiple options) (boolean) Enforce internal traffic through SSO authentication flow | (string) A string containing one or more references that resolve to enforce internal traffic through SSO authentication flow (pattern: .*\${.*}.*)
                           - `setCookieOnRootDomain`: (multiple options) (boolean) Set SSO authentication cookie on root domain | (string) A string containing one or more references that resolve to set SSO authentication cookie on root domain (pattern: .*\${.*}.*)
                           - `allowInternalTrafficViaPublicDns`: (multiple options) (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow | (string) A string containing one or more references that resolve to allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow (pattern: .*\${.*}.*)
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                       - `requiredPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (multiple options) (string) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the username to access the service (pattern: .*\${.*}.*)
                             - `password`: (multiple options) (string) The password to access the service with this username. | (string) A string containing one or more references that resolve to the password to access the service with this username. (pattern: .*\${.*}.*)
                             - `type`: (multiple options) (string) The type of authentication used (enum: basic-auth) | (string) A string containing one or more references that resolve to the type of authentication used (pattern: .*\${.*}.*)
                         - `ip`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `policies`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `sso`: {object}
                           - `organizationId`: (multiple options) (string) ID of the SSO organization that the user will have to be a member of | (string) A string containing one or more references that resolve to iD of the SSO organization that the user will have to be a member of (pattern: .*\${.*}.*)
                           - `directoryGroupIds`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to array of directory groups that will have access (pattern: .*\${.*}.*)
                           - `allowAnyOrgUsers`: (multiple options) (boolean) Allow entire organization to access this service | (string) A string containing one or more references that resolve to allow entire organization to access this service (pattern: .*\${.*}.*)
                           - `validateInternalTraffic`: (multiple options) (boolean) Enforce internal traffic through SSO authentication flow | (string) A string containing one or more references that resolve to enforce internal traffic through SSO authentication flow (pattern: .*\${.*}.*)
                           - `setCookieOnRootDomain`: (multiple options) (boolean) Set SSO authentication cookie on root domain | (string) A string containing one or more references that resolve to set SSO authentication cookie on root domain (pattern: .*\${.*}.*)
                           - `allowInternalTrafficViaPublicDns`: (multiple options) (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow | (string) A string containing one or more references that resolve to allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow (pattern: .*\${.*}.*)
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
           - `domains`: (multiple options) [array of] (multiple options) (string) A domain to redirect to this port. | (string) A string containing one or more references that resolve to a domain to redirect to this port. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of domains to redirect to this port. Each domain must first be verified and registered to your account. (pattern: .*\${.*}.*)
           - `disableNfDomain`: (multiple options) (boolean) Disable routing on the default code.run domain for public HTTP ports with custom domains. | (string) A string containing one or more references that resolve to disable routing on the default code.run domain for public HTTP ports with custom domains. (pattern: .*\${.*}.*)
           - `advancedOptions`: {object}
             - `enableTlsPassthrough`: (multiple options) (boolean) Whether this port should use pass through mode for TLS | (string) A string containing one or more references that resolve to whether this port should use pass through mode for TLS (pattern: .*\${.*}.*)
           - `protocol`: (multiple options) (string) (enum: HTTP, HTTP/2) | (string) (enum: HTTP, HTTP/2, TCP, UDP)
       - `disabledCI`: (boolean) Whether CI (continuous integration) should be disabled.
       - `buildSource`: (string) Defines the build source for this resource (enum: git, bundle)
       - `vcsData`: {object}
         - `projectUrl`: (multiple options) (string) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo to build. (pattern: .*\${.*}.*)
         - `projectType`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
         - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
         - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
         - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24) | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
         - `projectBranch`: (multiple options) (string) The name of the branch to use. | (string) A string containing one or more references that resolve to the name of the branch to use. (pattern: .*\${.*}.*)
       - `bundleData`: {object}
         - `bundleUrl`: (multiple options) (string) URL of the bundle to be built | (string) A string containing one or more references that resolve to uRL of the bundle to be built (pattern: .*\${.*}.*)
         - `branch`: (multiple options) (string) Branch identifier for the bundle. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to branch identifier for the bundle. (pattern: .*\${.*}.*)
       - `buildSettings`: (multiple options) {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `dockerfile`: {object}
             - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
             - `buildEngine`: (multiple options) (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko) | (string) A string containing one or more references that resolve to build engine to use. Defaults to recommended build engine `buildkit` (pattern: .*\${.*}.*)
             - `dockerFilePath`: (multiple options) (string) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$) | (string) A string containing one or more references that resolve to the file path of the Dockerfile. (pattern: .*\${.*}.*)
             - `dockerWorkDir`: (multiple options) (string) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory of the Dockerfile. (pattern: .*\${.*}.*)
             - `buildkit`: {object}
               - `useCache`: (multiple options) (boolean) Use persistent storage to cache build layers. | (string) A string containing one or more references that resolve to use persistent storage to cache build layers. (pattern: .*\${.*}.*)
               - `cacheStorageSize`: (multiple options) (integer) The amount of persistent storage available to each build in MB. | (string) A string containing one or more references that resolve to the amount of persistent storage available to each build in MB. (pattern: .*\${.*}.*)
               - `useInternalCache`: (multiple options) (boolean) DEPRECATED: This field will be removed in the near future. | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*)
               - `internalCacheStorage`: (multiple options) (number) DEPRECATED: This field will be removed in the near future. (format: float) | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*) | {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `buildpack`: {object}
             - `builder`: (multiple options) (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL) | (string) A string containing one or more references that resolve to buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (pattern: .*\${.*}.*)
             - `buildpackLocators`: [array of] (multiple options) (string) Url or registry identifier of custom Buildpack. | (string) A string containing one or more references that resolve to url or registry identifier of custom Buildpack. (pattern: .*\${.*}.*)
             - `buildContext`: (multiple options) (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory to build in. (pattern: .*\${.*}.*)
             - `useCache`: (multiple options) (boolean) Should build dependencies be cached? | (string) A string containing one or more references that resolve to should build dependencies be cached? (pattern: .*\${.*}.*)
       - `buildConfiguration`: {object}
         - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
         - `isAllowList`: (multiple options) (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. | (string) A string containing one or more references that resolve to if `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. (pattern: .*\${.*}.*)
         - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. | (string) A string containing one or more references that resolve to if `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. (pattern: .*\${.*}.*)
         - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
         - `dockerfileTarget`: (multiple options) (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. | (string) A string containing one or more references that resolve to if your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. (pattern: .*\${.*}.*)
         - `dockerCredentials`: [array of] (multiple options) (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the docker credentials to use. (pattern: .*\${.*}.*)
         - `includeGitFolder`: (boolean) Include .git folder inside the build context
         - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
         - `enableGitLfs`: (boolean) Enable Git LFS support for the build
         - `storage`: {object}
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
       - `runtimeEnvironment`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `runtimeFiles`: {object}
       - `buildArguments`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `buildFiles`: {object}
       - `dockerSecretMounts`: {object}
       - `healthChecks`: [array of] {object}
           - `protocol`: (multiple options) (string) The protocol to access the health check with. (enum: HTTP, CMD, TCP) | (string) A string containing one or more references that resolve to the protocol to access the health check with. (pattern: .*\${.*}.*)
           - `type`: (multiple options) (string) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe) | (string) A string containing one or more references that resolve to the type of health check. (pattern: .*\${.*}.*)
           - `path`: (multiple options) (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$) | (string) (pattern: .*\${.*}.*)
           - `cmd`: (multiple options) (string) The command to run for the health check. Required when protocol is CMD | (string) (pattern: .*\${.*}.*)
           - `port`: (multiple options) (integer) Port number for the health check endpoint. Required when protocol is HTTP. | (string) (pattern: .*\${.*}.*)
           - `initialDelaySeconds`: (multiple options) (integer) Initial delay, in seconds, before the health check is first run. | (string) A string containing one or more references that resolve to initial delay, in seconds, before the health check is first run. (pattern: .*\${.*}.*)
           - `periodSeconds`: (multiple options) (integer) The time between each check, in seconds. | (string) A string containing one or more references that resolve to the time between each check, in seconds. (pattern: .*\${.*}.*)
           - `timeoutSeconds`: (multiple options) (integer) The time to wait for a response before marking the health check as a failure. | (string) A string containing one or more references that resolve to the time to wait for a response before marking the health check as a failure. (pattern: .*\${.*}.*)
           - `failureThreshold`: (multiple options) (integer) The maximum number of allowed failures. | (string) A string containing one or more references that resolve to the maximum number of allowed failures. (pattern: .*\${.*}.*)
           - `successThreshold`: (multiple options) (integer) The number of successes required to mark the health check as a success. | (string) (pattern: .*\${.*}.*)
       - `loadBalancing`: {object}
         - `mode`: (string) (required) (enum: leastConnection, consistentHash, roundRobin, consistentReplicaRouting)
         - `consistentHash`: {object}
           - `mode`: (string) (required) (enum: ip, customHeader)
           - `header`: (string)
         - `consistentReplicaRouting`: {object}
           - `mode`: (string) (required) (enum: path, header)
       - `autoscaling`: {object}
         - `horizontal`: {object}
           - `enabled`: (multiple options) (boolean) Whether horizontal autoscaling should be enabled | (string) A string containing one or more references that resolve to whether horizontal autoscaling should be enabled (pattern: .*\${.*}.*)
           - `minReplicas`: (multiple options) (number) Minimum number of replicas which should be running at any time (format: float) | (string) A string containing one or more references that resolve to minimum number of replicas which should be running at any time (pattern: .*\${.*}.*)
           - `maxReplicas`: (multiple options) (number) Maximum number of replicas which can be running at any time (format: float) | (string) A string containing one or more references that resolve to maximum number of replicas which can be running at any time (pattern: .*\${.*}.*)
           - `cpu`: {object}
             - `enabled`: (multiple options) (boolean) Whether autoscaling should take into account cpu usage | (string) A string containing one or more references that resolve to whether autoscaling should take into account cpu usage (pattern: .*\${.*}.*)
             - `thresholdPercentage`: (multiple options) (integer) Threshold CPU usage percentage at which the workload will be scaled | (string) A string containing one or more references that resolve to threshold CPU usage percentage at which the workload will be scaled (pattern: .*\${.*}.*)
           - `memory`: {object}
             - `enabled`: (multiple options) (boolean) Whether autoscaling should take into account memory usage | (string) A string containing one or more references that resolve to whether autoscaling should take into account memory usage (pattern: .*\${.*}.*)
             - `thresholdPercentage`: (multiple options) (integer) Threshold memory usage percentage at which the workload will be scaled | (string) A string containing one or more references that resolve to threshold memory usage percentage at which the workload will be scaled (pattern: .*\${.*}.*)
           - `rps`: {object}
             - `enabled`: (multiple options) (boolean) Whether autoscaling should take into requests-per-second | (string) A string containing one or more references that resolve to whether autoscaling should take into requests-per-second (pattern: .*\${.*}.*)
             - `thresholdValue`: (multiple options) (integer) Threshold rps value on which the workload will be scaled | (string) A string containing one or more references that resolve to threshold rps value on which the workload will be scaled (pattern: .*\${.*}.*)
           - `userMetrics`: {object}
             - `enabled`: (multiple options) (boolean) Whether to enable handling for custom metrics in the autoscaling configuration | (string) A string containing one or more references that resolve to whether to enable handling for custom metrics in the autoscaling configuration (pattern: .*\${.*}.*)
             - `exposedMetricsPath`: (multiple options) (string) Path on which the metrics will be exposed by the service.. (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) A string containing one or more references that resolve to path on which the metrics will be exposed by the service.. (pattern: .*\${.*}.*)
             - `exposedMetricsPort`: (multiple options) (integer) Port on which the metrics will be exposed by the service. | (string) A string containing one or more references that resolve to port on which the metrics will be exposed by the service. (pattern: .*\${.*}.*)
             - `metrics`: [array of] {object}
                 - `metricName`: (multiple options) (string) Name of the custom metric (pattern: [a-zA-Z_:][a-zA-Z0-9_:]*$) | (string) A string containing one or more references that resolve to name of the custom metric (pattern: .*\${.*}.*)
                 - `metricType`: (multiple options) (string) Type of metric exposed, this will affect how it'll be queried by the autoscaler component: Gauge will be used as is, Counter will be used with rate() (enum: gauge, counter) | (string) A string containing one or more references that resolve to type of metric exposed, this will affect how it'll be queried by the autoscaler component: Gauge will be used as is, Counter will be used with rate() (pattern: .*\${.*}.*)
                 - `thresholdValue`: (multiple options) (number) Threshold value on which the workload will be scaled. Represents the average value across all running pods. (format: float) | (string) A string containing one or more references that resolve to threshold value on which the workload will be scaled. Represents the average value across all running pods. (pattern: .*\${.*}.*)
       - `createOptions`: {object}
         - `volumesToAttach`: [array of] (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the service. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54)
         - `description`: (string) A description of the service. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `billing`: {object}
           - `deploymentPlan`: (string) (required) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `buildPlan`: (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `ports`: [array of] {object}
             - `name`: (string) (required) The name used to identify the port. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 1) (max length: 8)
             - `internalPort`: (integer) (required) The port number.
             - `public`: (boolean) If true, the port will be exposed publicly.
             - `security`: {object}
               - `credentials`: [array of] {object}
                   - `username`: (string) (required) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                   - `password`: (string) (required) The password to access the service with this username.
                   - `type`: (string) (required) The type of authentication used (enum: basic-auth)
               - `ip`: [array of] {object}
                   - `addresses`: [array of] (string) An IP address used by this rule
                   - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
               - `policies`: [array of] {object}
                   - `addresses`: [array of] (string) An IP address used by this rule
                   - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
               - `sso`: {object}
                 - `organizationId`: (string) ID of the SSO organization that the user will have to be a member of
                 - `directoryGroupIds`: [array of] (string)
                 - `allowAnyOrgUsers`: (boolean) Allow entire organization to access this service
                 - `validateInternalTraffic`: (boolean) Enforce internal traffic through SSO authentication flow
                 - `setCookieOnRootDomain`: (boolean) Set SSO authentication cookie on root domain
                 - `allowInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow
               - `headers`: [array of] (multiple options) {object}
                     - `regexMode`: (boolean)
                     - `name`: (string) (required) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
                     - `value`: (string) (required) | {object}
                     - `regexMode`: (boolean)
                     - `name`: (string) (required)
                     - `value`: (string) (required)
               - `verificationMode`: (string) Mode used to verify multiple security features like ip policies and SSO authentication (enum: or, and)
               - `securePathConfiguration`: {object}
                 - `enabled`: (boolean) Enable security policies on a path-level style
                 - `skipSecurityPoliciesForInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip all security policies
                 - `rules`: [array of] {object}
                     - `paths`: [array of] (multiple options) {object}
                           - `path`: (string) (required) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$)
                           - `routingMode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: prefix)
                           - `priority`: (integer) (required) | {object}
                           - `path`: (string) (required) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$)
                           - `routingMode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: exact)
                           - `priority`: (integer) (required) | {object}
                           - `path`: (string) (required)
                           - `routingMode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: regex)
                           - `priority`: (integer) (required)
                     - `accessMode`: (string) (required) Specify the way the path rule will behave when processing policies. This enables an allow-list/deny-list approach for access control on each path (enum: protected, unprotected)
                     - `securityPolicies`: {object}
                       - `orPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (string) (required) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                             - `password`: (string) (required) The password to access the service with this username.
                             - `type`: (string) (required) The type of authentication used (enum: basic-auth)
                         - `ip`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `policies`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `sso`: {object}
                           - `organizationId`: (string) ID of the SSO organization that the user will have to be a member of
                           - `directoryGroupIds`: [array of] (string)
                           - `allowAnyOrgUsers`: (boolean) Allow entire organization to access this service
                           - `validateInternalTraffic`: (boolean) Enforce internal traffic through SSO authentication flow
                           - `setCookieOnRootDomain`: (boolean) Set SSO authentication cookie on root domain
                           - `allowInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
                               - `value`: (string) (required) | {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required)
                               - `value`: (string) (required)
                       - `requiredPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (string) (required) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                             - `password`: (string) (required) The password to access the service with this username.
                             - `type`: (string) (required) The type of authentication used (enum: basic-auth)
                         - `ip`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `policies`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `sso`: {object}
                           - `organizationId`: (string) ID of the SSO organization that the user will have to be a member of
                           - `directoryGroupIds`: [array of] (string)
                           - `allowAnyOrgUsers`: (boolean) Allow entire organization to access this service
                           - `validateInternalTraffic`: (boolean) Enforce internal traffic through SSO authentication flow
                           - `setCookieOnRootDomain`: (boolean) Set SSO authentication cookie on root domain
                           - `allowInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
                               - `value`: (string) (required) | {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required)
                               - `value`: (string) (required)
             - `domains`: [array of] (string) A domain to redirect to this port.
             - `disableNfDomain`: (boolean) Disable routing on the default code.run domain for public HTTP ports with custom domains.
             - `advancedOptions`: {object}
               - `enableTlsPassthrough`: (boolean) Whether this port should use pass through mode for TLS
             - `protocol`: (multiple options) (string) (enum: HTTP, HTTP/2) | (string) (enum: HTTP, HTTP/2, TCP, UDP)
         - `disabledCI`: (boolean) Whether CI (continuous integration) should be disabled.
         - `buildSource`: (string) Defines the build source for this resource (enum: git, bundle)
         - `vcsData`: {object}
           - `projectUrl`: (string) (required) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
           - `projectType`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
           - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use.
           - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
           - `vcsLinkId`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24)
           - `projectBranch`: (string) (required) The name of the branch to use.
         - `bundleData`: {object}
           - `bundleUrl`: (string) (required) URL of the bundle to be built
           - `branch`: (string) (required) Branch identifier for the bundle. (pattern: ^[A-Za-z0-9-]+$)
         - `buildSettings`: (multiple options) {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `dockerfile`: {object}
               - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
               - `buildEngine`: (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko)
               - `dockerFilePath`: (string) (required) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
               - `dockerWorkDir`: (string) (required) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `buildkit`: {object}
                 - `useCache`: (boolean) Use persistent storage to cache build layers.
                 - `cacheStorageSize`: (integer) The amount of persistent storage available to each build in MB.
                 - `useInternalCache`: (boolean) DEPRECATED: This field will be removed in the near future.
                 - `internalCacheStorage`: (number) DEPRECATED: This field will be removed in the near future. (format: float) | {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `buildpack`: {object}
               - `builder`: (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL)
               - `buildpackLocators`: [array of] (string) Url or registry identifier of custom Buildpack.
               - `buildContext`: (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `useCache`: (boolean) Should build dependencies be cached?
         - `buildConfiguration`: {object}
           - `pathIgnoreRules`: [array of] (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260)
           - `isAllowList`: (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.
           - `ciIgnoreFlagsEnabled`: (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.
           - `ciIgnoreFlags`: [array of] (string) A commit ignore flag. (max length: 72)
           - `dockerfileTarget`: (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.
           - `dockerCredentials`: [array of] (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$)
           - `includeGitFolder`: (boolean) Include .git folder inside the build context
           - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
           - `enableGitLfs`: (boolean) Enable Git LFS support for the build
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
         - `runtimeEnvironment`: {object}
         - `runtimeFiles`: {object}
         - `buildArguments`: {object}
         - `buildFiles`: {object}
         - `dockerSecretMounts`: {object}
         - `healthChecks`: [array of] {object}
             - `protocol`: (string) (required) The protocol to access the health check with. (enum: HTTP, CMD, TCP)
             - `type`: (string) (required) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe)
             - `path`: (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$)
             - `cmd`: (string) The command to run for the health check. Required when protocol is CMD
             - `port`: (integer) Port number for the health check endpoint. Required when protocol is HTTP.
             - `initialDelaySeconds`: (integer) (required) Initial delay, in seconds, before the health check is first run.
             - `periodSeconds`: (integer) (required) The time between each check, in seconds.
             - `timeoutSeconds`: (integer) (required) The time to wait for a response before marking the health check as a failure.
             - `failureThreshold`: (integer) (required) The maximum number of allowed failures.
             - `successThreshold`: (integer) The number of successes required to mark the health check as a success.
         - `loadBalancing`: {object}
           - `mode`: (string) (required) (enum: leastConnection, consistentHash, roundRobin, consistentReplicaRouting)
           - `consistentHash`: {object}
             - `mode`: (string) (required) (enum: ip, customHeader)
             - `header`: (string)
           - `consistentReplicaRouting`: {object}
             - `mode`: (string) (required) (enum: path, header)
         - `autoscaling`: {object}
           - `horizontal`: {object}
             - `enabled`: (boolean) (required) Whether horizontal autoscaling should be enabled
             - `minReplicas`: (number) (required) Minimum number of replicas which should be running at any time (format: float)
             - `maxReplicas`: (number) (required) Maximum number of replicas which can be running at any time (format: float)
             - `cpu`: {object}
               - `enabled`: (boolean) (required) Whether autoscaling should take into account cpu usage
               - `thresholdPercentage`: (integer) (required) Threshold CPU usage percentage at which the workload will be scaled
             - `memory`: {object}
               - `enabled`: (boolean) (required) Whether autoscaling should take into account memory usage
               - `thresholdPercentage`: (integer) (required) Threshold memory usage percentage at which the workload will be scaled
             - `rps`: {object}
               - `enabled`: (boolean) (required) Whether autoscaling should take into requests-per-second
               - `thresholdValue`: (integer) (required) Threshold rps value on which the workload will be scaled
             - `userMetrics`: {object}
               - `enabled`: (boolean) (required) Whether to enable handling for custom metrics in the autoscaling configuration
               - `exposedMetricsPath`: (string) (required) Path on which the metrics will be exposed by the service.. (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$)
               - `exposedMetricsPort`: (integer) (required) Port on which the metrics will be exposed by the service.
               - `metrics`: [array of] {object}
                   - `metricName`: (string) (required) Name of the custom metric (pattern: [a-zA-Z_:][a-zA-Z0-9_:]*$)
                   - `metricType`: (string) (required) Type of metric exposed, this will affect how it'll be queried by the autoscaler component: Gauge will be used as is, Counter will be used with rate() (enum: gauge, counter)
                   - `thresholdValue`: (number) (required) Threshold value on which the workload will be scaled. Represents the average value across all running pods. (format: float)
         - `createOptions`: {object}
           - `volumesToAttach`: [array of] (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `serviceType`: (string) (required) Type of the service (combined, build or deployment) (enum: combined)
         - `deployment`: {object}
           - `type`: (string) The way the service should be deployed. Either as a deployment (default), or as a stateful set. (enum: deployment, statefulSet)
           - `instances`: (integer) (required) The number of instances to run the service on.
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per container in MB
             - `shmSize`: (integer) Configures the amount of available memory-backed disk space available to /dev/shm
           - `strategy`: {object}
             - `type`: (string) Configures the instance roll out strategy of your service. Currently only available via feature flag. (enum: recreate, rollout-steady, rollout-balanced, rollout-fast, custom)
             - `settings`: {object}
               - `maxSurge`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
               - `maxUnavailable`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
           - `zonalRedundancy`: {object}
             - `type`: (string) Defines scheduling behaviour across different zones within the same region. (enum: disabled, preferred, required)
             - `minZones`: (integer) Defines how many zones are required and will prevent containers from additional scheduling into existing zones. (Only relevant if type is set to "required")
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
           - `gracePeriodSeconds`: (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.
           - `gradualRolloutStrategyId`: (string) The id of the strategy to be attached to service. (pattern: ^[A-Za-z0-9-]+$)
           - `ssh`: {object}
             - `enabled`: (boolean) (required) Enables SSH access if the resource matches an SSH identity selector.
           - `metadata`: {object}
             - `labels`: {object}
             - `annotations`: {object}
           - `imageUrl`: (string) Image registry url of the deployed image.
         - `id`: (string) (required) Identifier for the service
         - `appId`: (string) (required) Full identifier used for service deployment
         - `cluster`: {object}
           - `id`: (string) (required) The id of the cluster associated with this project.
           - `name`: (string) (required) The name of the cluster associated with this project.
           - `namespace`: (string) Namespace this resource is located within on the cluster.
           - `loadBalancers`: [array of] (string)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time)
         - `status`: {object}
           - `build`: {object}
             - `status`: (string) (required) The current status of the build. (enum: QUEUED, PENDING, UNSCHEDULABLE, STARTING, CLONING, BUILDING, UPLOADING, ABORTED, FAILURE, SUBMISSION_FAILURE, SUCCESS, CRASHED, IN_PROGRESS)
             - `lastTransitionTime`: (string) The timestamp of when the build reached this status. (format: date-time)
           - `deployment`: {object}
             - `status`: (string) (required) The current status of the deployment. (enum: PENDING, IN_PROGRESS, COMPLETED, FAILED)
             - `reason`: (string) (required) The reason the current deployment was started. (enum: SCALING, DEPLOYING)
             - `lastTransitionTime`: (string) The timestamp of when the deployment reached this status. (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: DeploymentService)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the service. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the name of the service. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the service. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the service. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `billing`: {object}
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
       - `infrastructure`: {object}
         - `architecture`: (string) (enum: x86, arm)
       - `deployment`: {object}
         - `type`: (multiple options) (string) The way the service should be deployed. Either as a deployment (default), or as a stateful set. (enum: deployment, statefulSet) | (string) A string containing one or more references that resolve to the way the service should be deployed. Either as a deployment (default), or as a stateful set. (pattern: .*\${.*}.*)
         - `instances`: (multiple options) (integer) The number of instances to run the service on. | (string) A string containing one or more references that resolve to the number of instances to run the service on. (pattern: .*\${.*}.*)
         - `buildpack`: {object}
           - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
           - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
           - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
         - `docker`: {object}
           - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
           - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
         - `storage`: {object}
           - `useHdbStorage`: (boolean)
           - `usePdSsdStorage`: (boolean)
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
           - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
         - `strategy`: {object}
           - `type`: (multiple options) (string) Configures the instance roll out strategy of your service. Currently only available via feature flag. (enum: recreate, rollout-steady, rollout-balanced, rollout-fast, custom) | (string) A string containing one or more references that resolve to configures the instance roll out strategy of your service. Currently only available via feature flag. (pattern: .*\${.*}.*)
           - `settings`: {object}
             - `maxSurge`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
             - `maxUnavailable`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
         - `zonalRedundancy`: {object}
           - `type`: (multiple options) (string) Defines scheduling behaviour across different zones within the same region. (enum: disabled, preferred, required) | (string) A string containing one or more references that resolve to defines scheduling behaviour across different zones within the same region. (pattern: .*\${.*}.*)
           - `minZones`: (integer) Defines how many zones are required and will prevent containers from additional scheduling into existing zones. (Only relevant if type is set to "required")
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `gracePeriodSeconds`: (multiple options) (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. | (string) A string containing one or more references that resolve to the maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. (pattern: .*\${.*}.*)
         - `gradualRolloutStrategyId`: (multiple options) (string) The id of the strategy to be attached to service. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the strategy to be attached to service. (pattern: .*\${.*}.*)
         - `ssh`: {object}
           - `enabled`: (multiple options) (boolean) Enables SSH access if the resource matches an SSH identity selector. | (string) A string containing one or more references that resolve to enables SSH access if the resource matches an SSH identity selector. (pattern: .*\${.*}.*)
         - `metadata`: {object}
           - `labels`: {object}
           - `annotations`: {object}
         - `internal`: {object}
           - `id`: (multiple options) (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) | (string) A string containing one or more references that resolve to iD of the build service to deploy (pattern: .*\${.*}.*)
           - `branch`: (multiple options) (string) Branch to deploy | (string) A string containing one or more references that resolve to branch to deploy (pattern: .*\${.*}.*)
           - `buildSHA`: (multiple options) (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest) | (string) A string containing one or more references that resolve to commit SHA to deploy, or 'latest' to deploy the most recent commit (pattern: .*\${.*}.*)
           - `buildId`: (multiple options) (string) ID of the build that should be deployed | (string) A string containing one or more references that resolve to iD of the build that should be deployed (pattern: .*\${.*}.*)
         - `external`: {object}
           - `imagePath`: (multiple options) (string) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$) | (string) A string containing one or more references that resolve to image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: .*\${.*}.*)
           - `credentials`: (multiple options) (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the saved credentials to use to access this external image. (pattern: .*\${.*}.*)
         - `releaseFlowControlled`: (boolean) When enabled the deployment source will only be set on creation. All changes to the deployment source must be done via a release flow or manually.
       - `ports`: [array of] {object}
           - `name`: (multiple options) (string) The name used to identify the port. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 1) (max length: 8) | (string) A string containing one or more references that resolve to the name used to identify the port. (pattern: .*\${.*}.*)
           - `internalPort`: (multiple options) (integer) The port number. | (string) A string containing one or more references that resolve to the port number. (pattern: .*\${.*}.*)
           - `public`: (multiple options) (boolean) If true, the port will be exposed publicly. | (string) A string containing one or more references that resolve to if true, the port will be exposed publicly. (pattern: .*\${.*}.*)
           - `security`: {object}
             - `credentials`: [array of] {object}
                 - `username`: (multiple options) (string) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the username to access the service (pattern: .*\${.*}.*)
                 - `password`: (multiple options) (string) The password to access the service with this username. | (string) A string containing one or more references that resolve to the password to access the service with this username. (pattern: .*\${.*}.*)
                 - `type`: (multiple options) (string) The type of authentication used (enum: basic-auth) | (string) A string containing one or more references that resolve to the type of authentication used (pattern: .*\${.*}.*)
             - `ip`: (multiple options) [array of] {object}
                   - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                   - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
             - `policies`: (multiple options) [array of] {object}
                   - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                   - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
             - `sso`: {object}
               - `organizationId`: (multiple options) (string) ID of the SSO organization that the user will have to be a member of | (string) A string containing one or more references that resolve to iD of the SSO organization that the user will have to be a member of (pattern: .*\${.*}.*)
               - `directoryGroupIds`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to array of directory groups that will have access (pattern: .*\${.*}.*)
               - `allowAnyOrgUsers`: (multiple options) (boolean) Allow entire organization to access this service | (string) A string containing one or more references that resolve to allow entire organization to access this service (pattern: .*\${.*}.*)
               - `validateInternalTraffic`: (multiple options) (boolean) Enforce internal traffic through SSO authentication flow | (string) A string containing one or more references that resolve to enforce internal traffic through SSO authentication flow (pattern: .*\${.*}.*)
               - `setCookieOnRootDomain`: (multiple options) (boolean) Set SSO authentication cookie on root domain | (string) A string containing one or more references that resolve to set SSO authentication cookie on root domain (pattern: .*\${.*}.*)
               - `allowInternalTrafficViaPublicDns`: (multiple options) (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow | (string) A string containing one or more references that resolve to allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow (pattern: .*\${.*}.*)
             - `headers`: [array of] (multiple options) {object}
                   - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                   - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$) | (string) (pattern: .*\${.*}.*)
                   - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
                   - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                   - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                   - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `verificationMode`: (string) Mode used to verify multiple security features like ip policies and SSO authentication (enum: or, and)
             - `securePathConfiguration`: {object}
               - `enabled`: (boolean) Enable security policies on a path-level style
               - `skipSecurityPoliciesForInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip all security policies
               - `rules`: [array of] {object}
                   - `paths`: [array of] (multiple options) {object}
                         - `path`: (multiple options) (string) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) (pattern: .*\${.*}.*)
                         - `routingMode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: prefix) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
                         - `priority`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*) | {object}
                         - `path`: (multiple options) (string) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) (pattern: .*\${.*}.*)
                         - `routingMode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: exact) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
                         - `priority`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*) | {object}
                         - `path`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                         - `routingMode`: (multiple options) (string) Mode of the path, determining how the URI will be interpreted. (enum: regex) | (string) A string containing one or more references that resolve to mode of the path, determining how the URI will be interpreted. (pattern: .*\${.*}.*)
                         - `priority`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
                   - `accessMode`: (multiple options) (string) Specify the way the path rule will behave when processing policies. This enables an allow-list/deny-list approach for access control on each path (enum: protected, unprotected) | (string) A string containing one or more references that resolve to specify the way the path rule will behave when processing policies. This enables an allow-list/deny-list approach for access control on each path (pattern: .*\${.*}.*)
                   - `securityPolicies`: (multiple options) {object}
                       - `orPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (multiple options) (string) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the username to access the service (pattern: .*\${.*}.*)
                             - `password`: (multiple options) (string) The password to access the service with this username. | (string) A string containing one or more references that resolve to the password to access the service with this username. (pattern: .*\${.*}.*)
                             - `type`: (multiple options) (string) The type of authentication used (enum: basic-auth) | (string) A string containing one or more references that resolve to the type of authentication used (pattern: .*\${.*}.*)
                         - `ip`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `policies`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `sso`: {object}
                           - `organizationId`: (multiple options) (string) ID of the SSO organization that the user will have to be a member of | (string) A string containing one or more references that resolve to iD of the SSO organization that the user will have to be a member of (pattern: .*\${.*}.*)
                           - `directoryGroupIds`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to array of directory groups that will have access (pattern: .*\${.*}.*)
                           - `allowAnyOrgUsers`: (multiple options) (boolean) Allow entire organization to access this service | (string) A string containing one or more references that resolve to allow entire organization to access this service (pattern: .*\${.*}.*)
                           - `validateInternalTraffic`: (multiple options) (boolean) Enforce internal traffic through SSO authentication flow | (string) A string containing one or more references that resolve to enforce internal traffic through SSO authentication flow (pattern: .*\${.*}.*)
                           - `setCookieOnRootDomain`: (multiple options) (boolean) Set SSO authentication cookie on root domain | (string) A string containing one or more references that resolve to set SSO authentication cookie on root domain (pattern: .*\${.*}.*)
                           - `allowInternalTrafficViaPublicDns`: (multiple options) (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow | (string) A string containing one or more references that resolve to allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow (pattern: .*\${.*}.*)
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                       - `requiredPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (multiple options) (string) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the username to access the service (pattern: .*\${.*}.*)
                             - `password`: (multiple options) (string) The password to access the service with this username. | (string) A string containing one or more references that resolve to the password to access the service with this username. (pattern: .*\${.*}.*)
                             - `type`: (multiple options) (string) The type of authentication used (enum: basic-auth) | (string) A string containing one or more references that resolve to the type of authentication used (pattern: .*\${.*}.*)
                         - `ip`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `policies`: (multiple options) [array of] {object}
                               - `addresses`: (multiple options) [array of] (multiple options) (string) An IP address used by this rule (pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))?$) | (string) A string containing one or more references that resolve to an IP address used by this rule (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP addresses used for this rule (pattern: .*\${.*}.*)
                               - `action`: (multiple options) (string) The action for this rule. (enum: ALLOW, DENY) | (string) A string containing one or more references that resolve to the action for this rule. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of IP address policies. (pattern: .*\${.*}.*)
                         - `sso`: {object}
                           - `organizationId`: (multiple options) (string) ID of the SSO organization that the user will have to be a member of | (string) A string containing one or more references that resolve to iD of the SSO organization that the user will have to be a member of (pattern: .*\${.*}.*)
                           - `directoryGroupIds`: (multiple options) [array of] (string) | (string) A string containing one or more references that resolve to array of directory groups that will have access (pattern: .*\${.*}.*)
                           - `allowAnyOrgUsers`: (multiple options) (boolean) Allow entire organization to access this service | (string) A string containing one or more references that resolve to allow entire organization to access this service (pattern: .*\${.*}.*)
                           - `validateInternalTraffic`: (multiple options) (boolean) Enforce internal traffic through SSO authentication flow | (string) A string containing one or more references that resolve to enforce internal traffic through SSO authentication flow (pattern: .*\${.*}.*)
                           - `setCookieOnRootDomain`: (multiple options) (boolean) Set SSO authentication cookie on root domain | (string) A string containing one or more references that resolve to set SSO authentication cookie on root domain (pattern: .*\${.*}.*)
                           - `allowInternalTrafficViaPublicDns`: (multiple options) (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow | (string) A string containing one or more references that resolve to allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow (pattern: .*\${.*}.*)
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9_\-%$+]+$) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | {object}
                               - `regexMode`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                               - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                               - `value`: (multiple options) (string) | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
           - `domains`: (multiple options) [array of] (multiple options) (string) A domain to redirect to this port. | (string) A string containing one or more references that resolve to a domain to redirect to this port. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of domains to redirect to this port. Each domain must first be verified and registered to your account. (pattern: .*\${.*}.*)
           - `disableNfDomain`: (multiple options) (boolean) Disable routing on the default code.run domain for public HTTP ports with custom domains. | (string) A string containing one or more references that resolve to disable routing on the default code.run domain for public HTTP ports with custom domains. (pattern: .*\${.*}.*)
           - `advancedOptions`: {object}
             - `enableTlsPassthrough`: (multiple options) (boolean) Whether this port should use pass through mode for TLS | (string) A string containing one or more references that resolve to whether this port should use pass through mode for TLS (pattern: .*\${.*}.*)
           - `protocol`: (multiple options) (string) (enum: HTTP, HTTP/2) | (string) (enum: HTTP, HTTP/2, TCP, UDP)
       - `runtimeEnvironment`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `runtimeFiles`: {object}
       - `healthChecks`: [array of] {object}
           - `protocol`: (multiple options) (string) The protocol to access the health check with. (enum: HTTP, CMD, TCP) | (string) A string containing one or more references that resolve to the protocol to access the health check with. (pattern: .*\${.*}.*)
           - `type`: (multiple options) (string) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe) | (string) A string containing one or more references that resolve to the type of health check. (pattern: .*\${.*}.*)
           - `path`: (multiple options) (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$) | (string) (pattern: .*\${.*}.*)
           - `cmd`: (multiple options) (string) The command to run for the health check. Required when protocol is CMD | (string) (pattern: .*\${.*}.*)
           - `port`: (multiple options) (integer) Port number for the health check endpoint. Required when protocol is HTTP. | (string) (pattern: .*\${.*}.*)
           - `initialDelaySeconds`: (multiple options) (integer) Initial delay, in seconds, before the health check is first run. | (string) A string containing one or more references that resolve to initial delay, in seconds, before the health check is first run. (pattern: .*\${.*}.*)
           - `periodSeconds`: (multiple options) (integer) The time between each check, in seconds. | (string) A string containing one or more references that resolve to the time between each check, in seconds. (pattern: .*\${.*}.*)
           - `timeoutSeconds`: (multiple options) (integer) The time to wait for a response before marking the health check as a failure. | (string) A string containing one or more references that resolve to the time to wait for a response before marking the health check as a failure. (pattern: .*\${.*}.*)
           - `failureThreshold`: (multiple options) (integer) The maximum number of allowed failures. | (string) A string containing one or more references that resolve to the maximum number of allowed failures. (pattern: .*\${.*}.*)
           - `successThreshold`: (multiple options) (integer) The number of successes required to mark the health check as a success. | (string) (pattern: .*\${.*}.*)
       - `loadBalancing`: {object}
         - `mode`: (string) (required) (enum: leastConnection, consistentHash, roundRobin, consistentReplicaRouting)
         - `consistentHash`: {object}
           - `mode`: (string) (required) (enum: ip, customHeader)
           - `header`: (string)
         - `consistentReplicaRouting`: {object}
           - `mode`: (string) (required) (enum: path, header)
       - `autoscaling`: {object}
         - `horizontal`: {object}
           - `enabled`: (multiple options) (boolean) Whether horizontal autoscaling should be enabled | (string) A string containing one or more references that resolve to whether horizontal autoscaling should be enabled (pattern: .*\${.*}.*)
           - `minReplicas`: (multiple options) (number) Minimum number of replicas which should be running at any time (format: float) | (string) A string containing one or more references that resolve to minimum number of replicas which should be running at any time (pattern: .*\${.*}.*)
           - `maxReplicas`: (multiple options) (number) Maximum number of replicas which can be running at any time (format: float) | (string) A string containing one or more references that resolve to maximum number of replicas which can be running at any time (pattern: .*\${.*}.*)
           - `cpu`: {object}
             - `enabled`: (multiple options) (boolean) Whether autoscaling should take into account cpu usage | (string) A string containing one or more references that resolve to whether autoscaling should take into account cpu usage (pattern: .*\${.*}.*)
             - `thresholdPercentage`: (multiple options) (integer) Threshold CPU usage percentage at which the workload will be scaled | (string) A string containing one or more references that resolve to threshold CPU usage percentage at which the workload will be scaled (pattern: .*\${.*}.*)
           - `memory`: {object}
             - `enabled`: (multiple options) (boolean) Whether autoscaling should take into account memory usage | (string) A string containing one or more references that resolve to whether autoscaling should take into account memory usage (pattern: .*\${.*}.*)
             - `thresholdPercentage`: (multiple options) (integer) Threshold memory usage percentage at which the workload will be scaled | (string) A string containing one or more references that resolve to threshold memory usage percentage at which the workload will be scaled (pattern: .*\${.*}.*)
           - `rps`: {object}
             - `enabled`: (multiple options) (boolean) Whether autoscaling should take into requests-per-second | (string) A string containing one or more references that resolve to whether autoscaling should take into requests-per-second (pattern: .*\${.*}.*)
             - `thresholdValue`: (multiple options) (integer) Threshold rps value on which the workload will be scaled | (string) A string containing one or more references that resolve to threshold rps value on which the workload will be scaled (pattern: .*\${.*}.*)
           - `userMetrics`: {object}
             - `enabled`: (multiple options) (boolean) Whether to enable handling for custom metrics in the autoscaling configuration | (string) A string containing one or more references that resolve to whether to enable handling for custom metrics in the autoscaling configuration (pattern: .*\${.*}.*)
             - `exposedMetricsPath`: (multiple options) (string) Path on which the metrics will be exposed by the service.. (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$) | (string) A string containing one or more references that resolve to path on which the metrics will be exposed by the service.. (pattern: .*\${.*}.*)
             - `exposedMetricsPort`: (multiple options) (integer) Port on which the metrics will be exposed by the service. | (string) A string containing one or more references that resolve to port on which the metrics will be exposed by the service. (pattern: .*\${.*}.*)
             - `metrics`: [array of] {object}
                 - `metricName`: (multiple options) (string) Name of the custom metric (pattern: [a-zA-Z_:][a-zA-Z0-9_:]*$) | (string) A string containing one or more references that resolve to name of the custom metric (pattern: .*\${.*}.*)
                 - `metricType`: (multiple options) (string) Type of metric exposed, this will affect how it'll be queried by the autoscaler component: Gauge will be used as is, Counter will be used with rate() (enum: gauge, counter) | (string) A string containing one or more references that resolve to type of metric exposed, this will affect how it'll be queried by the autoscaler component: Gauge will be used as is, Counter will be used with rate() (pattern: .*\${.*}.*)
                 - `thresholdValue`: (multiple options) (number) Threshold value on which the workload will be scaled. Represents the average value across all running pods. (format: float) | (string) A string containing one or more references that resolve to threshold value on which the workload will be scaled. Represents the average value across all running pods. (pattern: .*\${.*}.*)
       - `createOptions`: {object}
         - `volumesToAttach`: [array of] (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the service. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54)
         - `description`: (string) A description of the service. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `billing`: {object}
           - `deploymentPlan`: (string) (required) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `ports`: [array of] {object}
             - `name`: (string) (required) The name used to identify the port. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 1) (max length: 8)
             - `internalPort`: (integer) (required) The port number.
             - `public`: (boolean) If true, the port will be exposed publicly.
             - `security`: {object}
               - `credentials`: [array of] {object}
                   - `username`: (string) (required) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                   - `password`: (string) (required) The password to access the service with this username.
                   - `type`: (string) (required) The type of authentication used (enum: basic-auth)
               - `ip`: [array of] {object}
                   - `addresses`: [array of] (string) An IP address used by this rule
                   - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
               - `policies`: [array of] {object}
                   - `addresses`: [array of] (string) An IP address used by this rule
                   - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
               - `sso`: {object}
                 - `organizationId`: (string) ID of the SSO organization that the user will have to be a member of
                 - `directoryGroupIds`: [array of] (string)
                 - `allowAnyOrgUsers`: (boolean) Allow entire organization to access this service
                 - `validateInternalTraffic`: (boolean) Enforce internal traffic through SSO authentication flow
                 - `setCookieOnRootDomain`: (boolean) Set SSO authentication cookie on root domain
                 - `allowInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow
               - `headers`: [array of] (multiple options) {object}
                     - `regexMode`: (boolean)
                     - `name`: (string) (required) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
                     - `value`: (string) (required) | {object}
                     - `regexMode`: (boolean)
                     - `name`: (string) (required)
                     - `value`: (string) (required)
               - `verificationMode`: (string) Mode used to verify multiple security features like ip policies and SSO authentication (enum: or, and)
               - `securePathConfiguration`: {object}
                 - `enabled`: (boolean) Enable security policies on a path-level style
                 - `skipSecurityPoliciesForInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip all security policies
                 - `rules`: [array of] {object}
                     - `paths`: [array of] (multiple options) {object}
                           - `path`: (string) (required) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$)
                           - `routingMode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: prefix)
                           - `priority`: (integer) (required) | {object}
                           - `path`: (string) (required) (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$)
                           - `routingMode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: exact)
                           - `priority`: (integer) (required) | {object}
                           - `path`: (string) (required)
                           - `routingMode`: (string) (required) Mode of the path, determining how the URI will be interpreted. (enum: regex)
                           - `priority`: (integer) (required)
                     - `accessMode`: (string) (required) Specify the way the path rule will behave when processing policies. This enables an allow-list/deny-list approach for access control on each path (enum: protected, unprotected)
                     - `securityPolicies`: {object}
                       - `orPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (string) (required) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                             - `password`: (string) (required) The password to access the service with this username.
                             - `type`: (string) (required) The type of authentication used (enum: basic-auth)
                         - `ip`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `policies`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `sso`: {object}
                           - `organizationId`: (string) ID of the SSO organization that the user will have to be a member of
                           - `directoryGroupIds`: [array of] (string)
                           - `allowAnyOrgUsers`: (boolean) Allow entire organization to access this service
                           - `validateInternalTraffic`: (boolean) Enforce internal traffic through SSO authentication flow
                           - `setCookieOnRootDomain`: (boolean) Set SSO authentication cookie on root domain
                           - `allowInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
                               - `value`: (string) (required) | {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required)
                               - `value`: (string) (required)
                       - `requiredPolicies`: {object}
                         - `credentials`: [array of] {object}
                             - `username`: (string) (required) The username to access the service (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                             - `password`: (string) (required) The password to access the service with this username.
                             - `type`: (string) (required) The type of authentication used (enum: basic-auth)
                         - `ip`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `policies`: [array of] {object}
                             - `addresses`: [array of] (string) An IP address used by this rule
                             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
                         - `sso`: {object}
                           - `organizationId`: (string) ID of the SSO organization that the user will have to be a member of
                           - `directoryGroupIds`: [array of] (string)
                           - `allowAnyOrgUsers`: (boolean) Allow entire organization to access this service
                           - `validateInternalTraffic`: (boolean) Enforce internal traffic through SSO authentication flow
                           - `setCookieOnRootDomain`: (boolean) Set SSO authentication cookie on root domain
                           - `allowInternalTrafficViaPublicDns`: (boolean) Allow internal traffic from same or shared projects via public DNS to skip SSO authentication flow
                         - `headers`: [array of] (multiple options) {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required) (pattern: ^[a-zA-Z0-9_\-%$+]+$)
                               - `value`: (string) (required) | {object}
                               - `regexMode`: (boolean)
                               - `name`: (string) (required)
                               - `value`: (string) (required)
             - `domains`: [array of] (string) A domain to redirect to this port.
             - `disableNfDomain`: (boolean) Disable routing on the default code.run domain for public HTTP ports with custom domains.
             - `advancedOptions`: {object}
               - `enableTlsPassthrough`: (boolean) Whether this port should use pass through mode for TLS
             - `protocol`: (multiple options) (string) (enum: HTTP, HTTP/2) | (string) (enum: HTTP, HTTP/2, TCP, UDP)
         - `runtimeEnvironment`: {object}
         - `runtimeFiles`: {object}
         - `healthChecks`: [array of] {object}
             - `protocol`: (string) (required) The protocol to access the health check with. (enum: HTTP, CMD, TCP)
             - `type`: (string) (required) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe)
             - `path`: (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$)
             - `cmd`: (string) The command to run for the health check. Required when protocol is CMD
             - `port`: (integer) Port number for the health check endpoint. Required when protocol is HTTP.
             - `initialDelaySeconds`: (integer) (required) Initial delay, in seconds, before the health check is first run.
             - `periodSeconds`: (integer) (required) The time between each check, in seconds.
             - `timeoutSeconds`: (integer) (required) The time to wait for a response before marking the health check as a failure.
             - `failureThreshold`: (integer) (required) The maximum number of allowed failures.
             - `successThreshold`: (integer) The number of successes required to mark the health check as a success.
         - `loadBalancing`: {object}
           - `mode`: (string) (required) (enum: leastConnection, consistentHash, roundRobin, consistentReplicaRouting)
           - `consistentHash`: {object}
             - `mode`: (string) (required) (enum: ip, customHeader)
             - `header`: (string)
           - `consistentReplicaRouting`: {object}
             - `mode`: (string) (required) (enum: path, header)
         - `autoscaling`: {object}
           - `horizontal`: {object}
             - `enabled`: (boolean) (required) Whether horizontal autoscaling should be enabled
             - `minReplicas`: (number) (required) Minimum number of replicas which should be running at any time (format: float)
             - `maxReplicas`: (number) (required) Maximum number of replicas which can be running at any time (format: float)
             - `cpu`: {object}
               - `enabled`: (boolean) (required) Whether autoscaling should take into account cpu usage
               - `thresholdPercentage`: (integer) (required) Threshold CPU usage percentage at which the workload will be scaled
             - `memory`: {object}
               - `enabled`: (boolean) (required) Whether autoscaling should take into account memory usage
               - `thresholdPercentage`: (integer) (required) Threshold memory usage percentage at which the workload will be scaled
             - `rps`: {object}
               - `enabled`: (boolean) (required) Whether autoscaling should take into requests-per-second
               - `thresholdValue`: (integer) (required) Threshold rps value on which the workload will be scaled
             - `userMetrics`: {object}
               - `enabled`: (boolean) (required) Whether to enable handling for custom metrics in the autoscaling configuration
               - `exposedMetricsPath`: (string) (required) Path on which the metrics will be exposed by the service.. (pattern: ^\/([_a-zA-Z0-9-&?=.]*)((\/[_a-zA-Z0-9-&?=.]+)*(\/)?)?$)
               - `exposedMetricsPort`: (integer) (required) Port on which the metrics will be exposed by the service.
               - `metrics`: [array of] {object}
                   - `metricName`: (string) (required) Name of the custom metric (pattern: [a-zA-Z_:][a-zA-Z0-9_:]*$)
                   - `metricType`: (string) (required) Type of metric exposed, this will affect how it'll be queried by the autoscaler component: Gauge will be used as is, Counter will be used with rate() (enum: gauge, counter)
                   - `thresholdValue`: (number) (required) Threshold value on which the workload will be scaled. Represents the average value across all running pods. (format: float)
         - `createOptions`: {object}
           - `volumesToAttach`: [array of] (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `serviceType`: (string) (required) Type of the service (combined, build or deployment) (enum: deployment)
         - `deployment`: {object}
           - `type`: (string) The way the service should be deployed. Either as a deployment (default), or as a stateful set. (enum: deployment, statefulSet)
           - `instances`: (integer) (required) The number of instances to run the service on.
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per container in MB
             - `shmSize`: (integer) Configures the amount of available memory-backed disk space available to /dev/shm
           - `strategy`: {object}
             - `type`: (string) Configures the instance roll out strategy of your service. Currently only available via feature flag. (enum: recreate, rollout-steady, rollout-balanced, rollout-fast, custom)
             - `settings`: {object}
               - `maxSurge`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
               - `maxUnavailable`: (multiple options) (integer) A non-negative integer. | (string) A percentage string in the range 0% to 100%, e.g. `25%` (pattern: ^\d+%$)
           - `zonalRedundancy`: {object}
             - `type`: (string) Defines scheduling behaviour across different zones within the same region. (enum: disabled, preferred, required)
             - `minZones`: (integer) Defines how many zones are required and will prevent containers from additional scheduling into existing zones. (Only relevant if type is set to "required")
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
           - `gracePeriodSeconds`: (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.
           - `gradualRolloutStrategyId`: (string) The id of the strategy to be attached to service. (pattern: ^[A-Za-z0-9-]+$)
           - `ssh`: {object}
             - `enabled`: (boolean) (required) Enables SSH access if the resource matches an SSH identity selector.
           - `metadata`: {object}
             - `labels`: {object}
             - `annotations`: {object}
           - `internal`: {object}
             - `id`: (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string)
             - `branch`: (string) Branch to deploy
             - `buildSHA`: (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest)
             - `buildId`: (string) ID of the build that should be deployed
           - `external`: {object}
             - `imagePath`: (string) (required) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$)
             - `credentials`: (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$)
           - `imageUrl`: (string) Image registry url of the deployed image.
         - `id`: (string) (required) Identifier for the service
         - `appId`: (string) (required) Full identifier used for service deployment
         - `cluster`: {object}
           - `id`: (string) (required) The id of the cluster associated with this project.
           - `name`: (string) (required) The name of the cluster associated with this project.
           - `namespace`: (string) Namespace this resource is located within on the cluster.
           - `loadBalancers`: [array of] (string)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time)
         - `status`: {object}
           - `deployment`: {object}
             - `status`: (string) (required) The current status of the deployment. (enum: PENDING, IN_PROGRESS, COMPLETED, FAILED)
             - `reason`: (string) (required) The reason the current deployment was started. (enum: SCALING, DEPLOYING)
             - `lastTransitionTime`: (string) The timestamp of when the deployment reached this status. (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: LLMModelDeployment)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the AI model. (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the name of the AI model. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the AI model. (pattern: ^[\s\S]*$) (max length: 1024) | (string) A string containing one or more references that resolve to a description of the AI model. (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `ports`: [array of] {object}
           - `name`: (multiple options) (string) The name used to identify the port. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 1) (max length: 8) | (string) A string containing one or more references that resolve to the name used to identify the port. (pattern: .*\${.*}.*)
           - `internalPort`: (multiple options) (integer) The port number. | (string) A string containing one or more references that resolve to the port number. (pattern: .*\${.*}.*)
           - `public`: (multiple options) (boolean) If true, the port will be exposed publicly. | (string) A string containing one or more references that resolve to if true, the port will be exposed publicly. (pattern: .*\${.*}.*)
           - `domains`: (multiple options) [array of] (multiple options) (string) A domain to redirect to this port. | (string) A string containing one or more references that resolve to a domain to redirect to this port. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to an array of domains to redirect to this port. Each domain must first be verified and registered to your account. (pattern: .*\${.*}.*)
           - `disableNfDomain`: (multiple options) (boolean) Disable routing on the default code.run domain for public HTTP ports with custom domains. | (string) A string containing one or more references that resolve to disable routing on the default code.run domain for public HTTP ports with custom domains. (pattern: .*\${.*}.*)
           - `protocol`: (string) (required) The protocol to use for the port. (enum: HTTP, HTTP/2, TCP, UDP)
       - `spec`: {object}
         - `type`: (string) (required) Type of model spec - custom for user-defined configuration (enum: custom)
         - `configuration`: {object}
           - `name`: (string)
           - `engine`: (string) (enum: vllm)
           - `revision`: (string)
           - `nodeConfiguration`: {object}
             - `gpu`: {object}
               - `enabled`: (boolean)
               - `configuration`: {object}
                 - `gpuType`: (string)
                 - `gpuCount`: (integer)
                 - `timesliced`: (boolean)
             - `storage`: {object}
               - `accessMode`: (string) (enum: ReadWriteMany)
               - `storageClass`: (string) The type of the storage. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
               - `storageSize`: (integer) (required) The size of the storage, in megabytes. Configurable sizes depend on the storage class.
               - `shmSize`: (integer)
           - `architecture`: {object}
             - `type`: (string) (enum: aggregated)
             - `workerConfig`: {object}
               - `replicas`: (integer)
               - `parallelismConfig`: {object}
                 - `tensorParallelism`: (integer)
                 - `pipelineParallelism`: (integer)
                 - `expertParallelism`: (integer)
               - `sequenceLengthConfig`: {object}
                 - `maxModelLength`: (multiple options) (integer) | (string) (enum: auto)
                 - `maxInputLength`: (integer)
                 - `maxOutputLength`: (integer)
               - `batchingConfig`: {object}
                 - `maxNumSeqs`: (integer)
                 - `maxNumBatchedTokens`: (integer)
               - `enableChunkedPrefill`: (boolean)
               - `enablePrefixCaching`: (boolean)
               - `enforceEager`: (boolean)
               - `enableAsyncScheduling`: (boolean)
               - `gpuMemoryUtilization`: (number) (format: float)
               - `trustRemoteCode`: (boolean)
               - `dataType`: (string) (enum: auto, float16, bfloat16)
               - `kvCacheDataType`: (string) (enum: fp8, fp8_e5m2, fp8_e4m3)
               - `quantization`: (string) (enum: fp8, awq, gptq, int4)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the AI model. (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `description`: (string) A description of the AI model. (pattern: ^[\s\S]*$) (max length: 1024)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `spec`: {object}
           - `type`: (string) (required) Type of model spec - custom for user-defined configuration (enum: custom)
           - `configuration`: {object}
             - `name`: (string)
             - `engine`: (string) (enum: vllm)
             - `revision`: (string)
             - `nodeConfiguration`: {object}
               - `gpu`: {object}
                 - `enabled`: (boolean)
                 - `configuration`: {object}
                   - `gpuType`: (string)
                   - `gpuCount`: (integer)
                   - `timesliced`: (boolean)
               - `storage`: {object}
                 - `accessMode`: (string) (enum: ReadWriteMany)
                 - `storageClass`: (string) The type of the storage. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
                 - `storageSize`: (integer) (required) The size of the storage, in megabytes. Configurable sizes depend on the storage class.
                 - `shmSize`: (integer)
             - `architecture`: {object}
               - `type`: (string) (enum: aggregated)
               - `workerConfig`: {object}
                 - `replicas`: (integer)
                 - `parallelismConfig`: {object}
                   - `tensorParallelism`: (integer)
                   - `pipelineParallelism`: (integer)
                   - `expertParallelism`: (integer)
                 - `sequenceLengthConfig`: {object}
                   - `maxModelLength`: (multiple options) (integer) | (string) (enum: auto)
                   - `maxInputLength`: (integer)
                   - `maxOutputLength`: (integer)
                 - `batchingConfig`: {object}
                   - `maxNumSeqs`: (integer)
                   - `maxNumBatchedTokens`: (integer)
                 - `enableChunkedPrefill`: (boolean)
                 - `enablePrefixCaching`: (boolean)
                 - `enforceEager`: (boolean)
                 - `enableAsyncScheduling`: (boolean)
                 - `gpuMemoryUtilization`: (number) (format: float)
                 - `trustRemoteCode`: (boolean)
                 - `dataType`: (string) (enum: auto, float16, bfloat16)
                 - `kvCacheDataType`: (string) (enum: fp8, fp8_e5m2, fp8_e4m3)
                 - `quantization`: (string) (enum: fp8, awq, gptq, int4)
         - `id`: (string) (required) The unique identifier of the AI model.
         - `projectId`: (string) (required) ID of the project that the AI model belongs to
         - `entityId`: (string) (required) The entity ID (team) this deployment belongs to.
         - `entityType`: (string) (required) (enum: user, team, org)
         - `creatorId`: (string) (required) The user who created this deployment.
         - `dns`: {object}
           - `base`: (string) (required) (pattern: ^([a-zA-Z0-9-]{2,}\.){2,}[a-zA-Z]{2,}$)
           - `zone`: (string) (required)
         - `ports`: [array of] {object}
             - `id`: (string) (required) The id used to identify the port across requests. (pattern: ^[a-z]-?[a-z0-9]+(-[a-z0-9]+)*$)
             - `name`: (string) (required) The name of the port used in the public url and UI. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
             - `internalPort`: (integer) (required) The port number.
             - `protocol`: (string) (required) The protocol used by the port.
             - `public`: (boolean) (required) If true, the port is exposed publicly.
             - `dns`: (string) DNS entry for this port.
             - `disableNfDomain`: (boolean) Disable routing on the default code.run domain for public HTTP ports with custom domains.
         - `status`: (string) (required) The current status of the AI model. (enum: pending, provisioning, starting, crashed, paused, running, deleting)
         - `deploymentConfiguration`: {object}
           - `id`: (string) (required) The deployment configuration identifier.
           - `createdAt`: (string) time of creation (format: date-time)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: CronJob)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the job. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52) | (string) A string containing one or more references that resolve to the name of the job. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the job. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the job. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `infrastructure`: {object}
         - `architecture`: (string) (enum: x86, arm)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `billing`: {object}
         - `buildPlan`: (multiple options) (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the build plan to use. (pattern: .*\${.*}.*)
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
       - `deployment`: {object}
         - `buildpack`: {object}
           - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
           - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
           - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
         - `docker`: {object}
           - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
           - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
         - `storage`: {object}
           - `useHdbStorage`: (boolean)
           - `usePdSsdStorage`: (boolean)
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
           - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `gracePeriodSeconds`: (multiple options) (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. | (string) A string containing one or more references that resolve to the maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. (pattern: .*\${.*}.*)
         - `metadata`: {object}
           - `labels`: {object}
           - `annotations`: {object}
         - `vcs`: {object}
           - `projectUrl`: (multiple options) (string) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo to build. (pattern: .*\${.*}.*)
           - `projectType`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
           - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
           - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
           - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24) | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
           - `projectBranch`: (multiple options) (string) The name of the branch to use. | (string) A string containing one or more references that resolve to the name of the branch to use. (pattern: .*\${.*}.*)
         - `external`: {object}
           - `imagePath`: (multiple options) (string) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$) | (string) A string containing one or more references that resolve to image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: .*\${.*}.*)
           - `credentials`: (multiple options) (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the saved credentials to use to access this external image. (pattern: .*\${.*}.*)
         - `internal`: {object}
           - `id`: (multiple options) (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) | (string) A string containing one or more references that resolve to iD of the build service to deploy (pattern: .*\${.*}.*)
           - `branch`: (multiple options) (string) Branch to deploy | (string) A string containing one or more references that resolve to branch to deploy (pattern: .*\${.*}.*)
           - `buildSHA`: (multiple options) (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest) | (string) A string containing one or more references that resolve to commit SHA to deploy, or 'latest' to deploy the most recent commit (pattern: .*\${.*}.*)
           - `buildId`: (multiple options) (string) ID of the build that should be deployed | (string) A string containing one or more references that resolve to iD of the build that should be deployed (pattern: .*\${.*}.*)
         - `releaseFlowControlled`: (boolean) When enabled the deployment source will only be set on creation. All changes to the deployment source must be done via a release flow or manually.
       - `disabledCI`: (multiple options) (boolean) Whether CI should be disabled. Only relevant for jobs deploying directly from version control. | (string) A string containing one or more references that resolve to whether CI should be disabled. Only relevant for jobs deploying directly from version control. (pattern: .*\${.*}.*)
       - `buildConfiguration`: {object}
         - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
         - `isAllowList`: (multiple options) (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. | (string) A string containing one or more references that resolve to if `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. (pattern: .*\${.*}.*)
         - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. | (string) A string containing one or more references that resolve to if `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. (pattern: .*\${.*}.*)
         - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
         - `dockerfileTarget`: (multiple options) (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. | (string) A string containing one or more references that resolve to if your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. (pattern: .*\${.*}.*)
         - `dockerCredentials`: [array of] (multiple options) (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the docker credentials to use. (pattern: .*\${.*}.*)
         - `includeGitFolder`: (boolean) Include .git folder inside the build context
         - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
         - `enableGitLfs`: (boolean) Enable Git LFS support for the build
         - `storage`: {object}
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
       - `buildSettings`: (multiple options) {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `dockerfile`: {object}
             - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
             - `buildEngine`: (multiple options) (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko) | (string) A string containing one or more references that resolve to build engine to use. Defaults to recommended build engine `buildkit` (pattern: .*\${.*}.*)
             - `dockerFilePath`: (multiple options) (string) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$) | (string) A string containing one or more references that resolve to the file path of the Dockerfile. (pattern: .*\${.*}.*)
             - `dockerWorkDir`: (multiple options) (string) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory of the Dockerfile. (pattern: .*\${.*}.*)
             - `buildkit`: {object}
               - `useCache`: (multiple options) (boolean) Use persistent storage to cache build layers. | (string) A string containing one or more references that resolve to use persistent storage to cache build layers. (pattern: .*\${.*}.*)
               - `cacheStorageSize`: (multiple options) (integer) The amount of persistent storage available to each build in MB. | (string) A string containing one or more references that resolve to the amount of persistent storage available to each build in MB. (pattern: .*\${.*}.*)
               - `useInternalCache`: (multiple options) (boolean) DEPRECATED: This field will be removed in the near future. | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*)
               - `internalCacheStorage`: (multiple options) (number) DEPRECATED: This field will be removed in the near future. (format: float) | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*) | {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `buildpack`: {object}
             - `builder`: (multiple options) (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL) | (string) A string containing one or more references that resolve to buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (pattern: .*\${.*}.*)
             - `buildpackLocators`: [array of] (multiple options) (string) Url or registry identifier of custom Buildpack. | (string) A string containing one or more references that resolve to url or registry identifier of custom Buildpack. (pattern: .*\${.*}.*)
             - `buildContext`: (multiple options) (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory to build in. (pattern: .*\${.*}.*)
             - `useCache`: (multiple options) (boolean) Should build dependencies be cached? | (string) A string containing one or more references that resolve to should build dependencies be cached? (pattern: .*\${.*}.*)
       - `runtimeEnvironment`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `runtimeFiles`: {object}
       - `buildArguments`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `buildFiles`: {object}
       - `dockerSecretMounts`: {object}
       - `healthChecks`: [array of] {object}
           - `protocol`: (multiple options) (string) The protocol to access the health check with. (enum: HTTP, CMD, TCP) | (string) A string containing one or more references that resolve to the protocol to access the health check with. (pattern: .*\${.*}.*)
           - `type`: (multiple options) (string) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe) | (string) A string containing one or more references that resolve to the type of health check. (pattern: .*\${.*}.*)
           - `path`: (multiple options) (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$) | (string) (pattern: .*\${.*}.*)
           - `cmd`: (multiple options) (string) The command to run for the health check. Required when protocol is CMD | (string) (pattern: .*\${.*}.*)
           - `port`: (multiple options) (integer) Port number for the health check endpoint. Required when protocol is HTTP. | (string) (pattern: .*\${.*}.*)
           - `initialDelaySeconds`: (multiple options) (integer) Initial delay, in seconds, before the health check is first run. | (string) A string containing one or more references that resolve to initial delay, in seconds, before the health check is first run. (pattern: .*\${.*}.*)
           - `periodSeconds`: (multiple options) (integer) The time between each check, in seconds. | (string) A string containing one or more references that resolve to the time between each check, in seconds. (pattern: .*\${.*}.*)
           - `timeoutSeconds`: (multiple options) (integer) The time to wait for a response before marking the health check as a failure. | (string) A string containing one or more references that resolve to the time to wait for a response before marking the health check as a failure. (pattern: .*\${.*}.*)
           - `failureThreshold`: (multiple options) (integer) The maximum number of allowed failures. | (string) A string containing one or more references that resolve to the maximum number of allowed failures. (pattern: .*\${.*}.*)
           - `successThreshold`: (multiple options) (integer) The number of successes required to mark the health check as a success. | (string) (pattern: .*\${.*}.*)
       - `backoffLimit`: (multiple options) (integer) The number of attempts to rerun a job before it is marked as failed. | (string) A string containing one or more references that resolve to the number of attempts to rerun a job before it is marked as failed. (pattern: .*\${.*}.*)
       - `runOnSourceChange`: (multiple options) (string) Configure when the job should be run if the source image changes. (enum: never, cd-promote, always) | (string) A string containing one or more references that resolve to configure when the job should be run if the source image changes. (pattern: .*\${.*}.*)
       - `activeDeadlineSeconds`: (multiple options) (integer) The maximum amount of time, in seconds, for a job to run before it is marked as failed. | (string) A string containing one or more references that resolve to the maximum amount of time, in seconds, for a job to run before it is marked as failed. (pattern: .*\${.*}.*)
       - `schedule`: (multiple options) (string) The cron timer scheduling when to run the job. | (string) A string containing one or more references that resolve to the cron timer scheduling when to run the job. (pattern: .*\${.*}.*)
       - `suspended`: (multiple options) (boolean) Whether the cron's automatic scheduling is suspended | (string) A string containing one or more references that resolve to whether the cron's automatic scheduling is suspended (pattern: .*\${.*}.*)
       - `concurrencyPolicy`: (multiple options) (string) Whether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one. (enum: allow, forbid, replace) | (string) A string containing one or more references that resolve to whether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one. (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the job. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52)
         - `description`: (string) A description of the job. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `billing`: {object}
           - `buildPlan`: (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `deploymentPlan`: (string) (required) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
         - `disabledCI`: (boolean) Whether CI should be disabled. Only relevant for jobs deploying directly from version control.
         - `buildConfiguration`: {object}
           - `pathIgnoreRules`: [array of] (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260)
           - `isAllowList`: (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.
           - `ciIgnoreFlagsEnabled`: (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.
           - `ciIgnoreFlags`: [array of] (string) A commit ignore flag. (max length: 72)
           - `dockerfileTarget`: (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.
           - `dockerCredentials`: [array of] (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$)
           - `includeGitFolder`: (boolean) Include .git folder inside the build context
           - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
           - `enableGitLfs`: (boolean) Enable Git LFS support for the build
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
         - `buildSettings`: (multiple options) {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `dockerfile`: {object}
               - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
               - `buildEngine`: (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko)
               - `dockerFilePath`: (string) (required) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
               - `dockerWorkDir`: (string) (required) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `buildkit`: {object}
                 - `useCache`: (boolean) Use persistent storage to cache build layers.
                 - `cacheStorageSize`: (integer) The amount of persistent storage available to each build in MB.
                 - `useInternalCache`: (boolean) DEPRECATED: This field will be removed in the near future.
                 - `internalCacheStorage`: (number) DEPRECATED: This field will be removed in the near future. (format: float) | {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `buildpack`: {object}
               - `builder`: (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL)
               - `buildpackLocators`: [array of] (string) Url or registry identifier of custom Buildpack.
               - `buildContext`: (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `useCache`: (boolean) Should build dependencies be cached?
         - `runtimeEnvironment`: {object}
         - `runtimeFiles`: {object}
         - `buildArguments`: {object}
         - `buildFiles`: {object}
         - `dockerSecretMounts`: {object}
         - `healthChecks`: [array of] {object}
             - `protocol`: (string) (required) The protocol to access the health check with. (enum: HTTP, CMD, TCP)
             - `type`: (string) (required) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe)
             - `path`: (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$)
             - `cmd`: (string) The command to run for the health check. Required when protocol is CMD
             - `port`: (integer) Port number for the health check endpoint. Required when protocol is HTTP.
             - `initialDelaySeconds`: (integer) (required) Initial delay, in seconds, before the health check is first run.
             - `periodSeconds`: (integer) (required) The time between each check, in seconds.
             - `timeoutSeconds`: (integer) (required) The time to wait for a response before marking the health check as a failure.
             - `failureThreshold`: (integer) (required) The maximum number of allowed failures.
             - `successThreshold`: (integer) The number of successes required to mark the health check as a success.
         - `backoffLimit`: (integer) (required) The number of attempts to rerun a job before it is marked as failed.
         - `runOnSourceChange`: (string) Configure when the job should be run if the source image changes. (enum: never, cd-promote, always)
         - `activeDeadlineSeconds`: (integer) The maximum amount of time, in seconds, for a job to run before it is marked as failed.
         - `schedule`: (string) The cron timer scheduling when to run the job.
         - `suspended`: (boolean) Whether the cron's automatic scheduling is suspended
         - `concurrencyPolicy`: (string) Whether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one. (enum: allow, forbid, replace)
         - `jobType`: (string) (required) Type of the job (manual or cron) (enum: cron)
         - `id`: (string) (required) Identifier for the job
         - `appId`: (string) (required) Full identifier used for job deployment
         - `deployment`: {object}
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per container in MB
             - `shmSize`: (integer) Configures the amount of available memory-backed disk space available to /dev/shm
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
           - `gracePeriodSeconds`: (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.
           - `metadata`: {object}
             - `labels`: {object}
             - `annotations`: {object}
           - `vcs`: {object}
             - `projectUrl`: (string) (required) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
             - `projectType`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
             - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
             - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
             - `vcsLinkId`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24)
             - `projectBranch`: (string) (required) The name of the branch to use.
           - `external`: {object}
             - `imagePath`: (string) (required) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$)
             - `credentials`: (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$)
           - `internal`: {object}
             - `id`: (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string)
             - `branch`: (string) Branch to deploy
             - `buildSHA`: (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest)
             - `buildId`: (string) ID of the build that should be deployed
           - `imageUrl`: (string) Image registry url of the deployed image.
         - `status`: {object}
           - `build`: {object}
             - `status`: (string) (required) The current status of the build. (enum: QUEUED, PENDING, UNSCHEDULABLE, STARTING, CLONING, BUILDING, UPLOADING, ABORTED, FAILURE, SUBMISSION_FAILURE, SUCCESS, CRASHED, IN_PROGRESS)
             - `lastTransitionTime`: (string) The timestamp of when the build reached this status. (format: date-time)
         - `cluster`: {object}
           - `id`: (string) (required) The id of the cluster associated with this project.
           - `name`: (string) (required) The name of the cluster associated with this project.
           - `namespace`: (string) Namespace this resource is located within on the cluster.
           - `loadBalancers`: [array of] (string)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: ManualJob)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the job. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52) | (string) A string containing one or more references that resolve to the name of the job. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the job. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the job. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `infrastructure`: {object}
         - `architecture`: (string) (enum: x86, arm)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `billing`: {object}
         - `buildPlan`: (multiple options) (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the build plan to use. (pattern: .*\${.*}.*)
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
       - `deployment`: {object}
         - `buildpack`: {object}
           - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
           - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
           - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
         - `docker`: {object}
           - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
           - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
         - `storage`: {object}
           - `useHdbStorage`: (boolean)
           - `usePdSsdStorage`: (boolean)
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
           - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `gracePeriodSeconds`: (multiple options) (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. | (string) A string containing one or more references that resolve to the maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. (pattern: .*\${.*}.*)
         - `metadata`: {object}
           - `labels`: {object}
           - `annotations`: {object}
         - `vcs`: {object}
           - `projectUrl`: (multiple options) (string) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo to build. (pattern: .*\${.*}.*)
           - `projectType`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
           - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
           - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
           - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24) | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
           - `projectBranch`: (multiple options) (string) The name of the branch to use. | (string) A string containing one or more references that resolve to the name of the branch to use. (pattern: .*\${.*}.*)
         - `external`: {object}
           - `imagePath`: (multiple options) (string) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$) | (string) A string containing one or more references that resolve to image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: .*\${.*}.*)
           - `credentials`: (multiple options) (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the saved credentials to use to access this external image. (pattern: .*\${.*}.*)
         - `internal`: {object}
           - `id`: (multiple options) (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) | (string) A string containing one or more references that resolve to iD of the build service to deploy (pattern: .*\${.*}.*)
           - `branch`: (multiple options) (string) Branch to deploy | (string) A string containing one or more references that resolve to branch to deploy (pattern: .*\${.*}.*)
           - `buildSHA`: (multiple options) (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest) | (string) A string containing one or more references that resolve to commit SHA to deploy, or 'latest' to deploy the most recent commit (pattern: .*\${.*}.*)
           - `buildId`: (multiple options) (string) ID of the build that should be deployed | (string) A string containing one or more references that resolve to iD of the build that should be deployed (pattern: .*\${.*}.*)
         - `releaseFlowControlled`: (boolean) When enabled the deployment source will only be set on creation. All changes to the deployment source must be done via a release flow or manually.
       - `disabledCI`: (multiple options) (boolean) Whether CI should be disabled. Only relevant for jobs deploying directly from version control. | (string) A string containing one or more references that resolve to whether CI should be disabled. Only relevant for jobs deploying directly from version control. (pattern: .*\${.*}.*)
       - `buildConfiguration`: {object}
         - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
         - `isAllowList`: (multiple options) (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. | (string) A string containing one or more references that resolve to if `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. (pattern: .*\${.*}.*)
         - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. | (string) A string containing one or more references that resolve to if `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. (pattern: .*\${.*}.*)
         - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
         - `dockerfileTarget`: (multiple options) (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. | (string) A string containing one or more references that resolve to if your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. (pattern: .*\${.*}.*)
         - `dockerCredentials`: [array of] (multiple options) (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the docker credentials to use. (pattern: .*\${.*}.*)
         - `includeGitFolder`: (boolean) Include .git folder inside the build context
         - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
         - `enableGitLfs`: (boolean) Enable Git LFS support for the build
         - `storage`: {object}
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
       - `buildSettings`: (multiple options) {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `dockerfile`: {object}
             - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
             - `buildEngine`: (multiple options) (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko) | (string) A string containing one or more references that resolve to build engine to use. Defaults to recommended build engine `buildkit` (pattern: .*\${.*}.*)
             - `dockerFilePath`: (multiple options) (string) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$) | (string) A string containing one or more references that resolve to the file path of the Dockerfile. (pattern: .*\${.*}.*)
             - `dockerWorkDir`: (multiple options) (string) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory of the Dockerfile. (pattern: .*\${.*}.*)
             - `buildkit`: {object}
               - `useCache`: (multiple options) (boolean) Use persistent storage to cache build layers. | (string) A string containing one or more references that resolve to use persistent storage to cache build layers. (pattern: .*\${.*}.*)
               - `cacheStorageSize`: (multiple options) (integer) The amount of persistent storage available to each build in MB. | (string) A string containing one or more references that resolve to the amount of persistent storage available to each build in MB. (pattern: .*\${.*}.*)
               - `useInternalCache`: (multiple options) (boolean) DEPRECATED: This field will be removed in the near future. | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*)
               - `internalCacheStorage`: (multiple options) (number) DEPRECATED: This field will be removed in the near future. (format: float) | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*) | {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `buildpack`: {object}
             - `builder`: (multiple options) (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL) | (string) A string containing one or more references that resolve to buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (pattern: .*\${.*}.*)
             - `buildpackLocators`: [array of] (multiple options) (string) Url or registry identifier of custom Buildpack. | (string) A string containing one or more references that resolve to url or registry identifier of custom Buildpack. (pattern: .*\${.*}.*)
             - `buildContext`: (multiple options) (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory to build in. (pattern: .*\${.*}.*)
             - `useCache`: (multiple options) (boolean) Should build dependencies be cached? | (string) A string containing one or more references that resolve to should build dependencies be cached? (pattern: .*\${.*}.*)
       - `runtimeEnvironment`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `runtimeFiles`: {object}
       - `buildArguments`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `buildFiles`: {object}
       - `dockerSecretMounts`: {object}
       - `healthChecks`: [array of] {object}
           - `protocol`: (multiple options) (string) The protocol to access the health check with. (enum: HTTP, CMD, TCP) | (string) A string containing one or more references that resolve to the protocol to access the health check with. (pattern: .*\${.*}.*)
           - `type`: (multiple options) (string) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe) | (string) A string containing one or more references that resolve to the type of health check. (pattern: .*\${.*}.*)
           - `path`: (multiple options) (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$) | (string) (pattern: .*\${.*}.*)
           - `cmd`: (multiple options) (string) The command to run for the health check. Required when protocol is CMD | (string) (pattern: .*\${.*}.*)
           - `port`: (multiple options) (integer) Port number for the health check endpoint. Required when protocol is HTTP. | (string) (pattern: .*\${.*}.*)
           - `initialDelaySeconds`: (multiple options) (integer) Initial delay, in seconds, before the health check is first run. | (string) A string containing one or more references that resolve to initial delay, in seconds, before the health check is first run. (pattern: .*\${.*}.*)
           - `periodSeconds`: (multiple options) (integer) The time between each check, in seconds. | (string) A string containing one or more references that resolve to the time between each check, in seconds. (pattern: .*\${.*}.*)
           - `timeoutSeconds`: (multiple options) (integer) The time to wait for a response before marking the health check as a failure. | (string) A string containing one or more references that resolve to the time to wait for a response before marking the health check as a failure. (pattern: .*\${.*}.*)
           - `failureThreshold`: (multiple options) (integer) The maximum number of allowed failures. | (string) A string containing one or more references that resolve to the maximum number of allowed failures. (pattern: .*\${.*}.*)
           - `successThreshold`: (multiple options) (integer) The number of successes required to mark the health check as a success. | (string) (pattern: .*\${.*}.*)
       - `backoffLimit`: (multiple options) (integer) The number of attempts to rerun a job before it is marked as failed. | (string) A string containing one or more references that resolve to the number of attempts to rerun a job before it is marked as failed. (pattern: .*\${.*}.*)
       - `runOnSourceChange`: (multiple options) (string) Configure when the job should be run if the source image changes. (enum: never, cd-promote, always) | (string) A string containing one or more references that resolve to configure when the job should be run if the source image changes. (pattern: .*\${.*}.*)
       - `activeDeadlineSeconds`: (multiple options) (integer) The maximum amount of time, in seconds, for a job to run before it is marked as failed. | (string) A string containing one or more references that resolve to the maximum amount of time, in seconds, for a job to run before it is marked as failed. (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the job. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52)
         - `description`: (string) A description of the job. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `billing`: {object}
           - `buildPlan`: (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `deploymentPlan`: (string) (required) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
         - `disabledCI`: (boolean) Whether CI should be disabled. Only relevant for jobs deploying directly from version control.
         - `buildConfiguration`: {object}
           - `pathIgnoreRules`: [array of] (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260)
           - `isAllowList`: (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.
           - `ciIgnoreFlagsEnabled`: (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.
           - `ciIgnoreFlags`: [array of] (string) A commit ignore flag. (max length: 72)
           - `dockerfileTarget`: (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.
           - `dockerCredentials`: [array of] (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$)
           - `includeGitFolder`: (boolean) Include .git folder inside the build context
           - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
           - `enableGitLfs`: (boolean) Enable Git LFS support for the build
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
         - `buildSettings`: (multiple options) {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `dockerfile`: {object}
               - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
               - `buildEngine`: (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko)
               - `dockerFilePath`: (string) (required) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
               - `dockerWorkDir`: (string) (required) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `buildkit`: {object}
                 - `useCache`: (boolean) Use persistent storage to cache build layers.
                 - `cacheStorageSize`: (integer) The amount of persistent storage available to each build in MB.
                 - `useInternalCache`: (boolean) DEPRECATED: This field will be removed in the near future.
                 - `internalCacheStorage`: (number) DEPRECATED: This field will be removed in the near future. (format: float) | {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `buildpack`: {object}
               - `builder`: (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL)
               - `buildpackLocators`: [array of] (string) Url or registry identifier of custom Buildpack.
               - `buildContext`: (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `useCache`: (boolean) Should build dependencies be cached?
         - `runtimeEnvironment`: {object}
         - `runtimeFiles`: {object}
         - `buildArguments`: {object}
         - `buildFiles`: {object}
         - `dockerSecretMounts`: {object}
         - `healthChecks`: [array of] {object}
             - `protocol`: (string) (required) The protocol to access the health check with. (enum: HTTP, CMD, TCP)
             - `type`: (string) (required) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe)
             - `path`: (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$)
             - `cmd`: (string) The command to run for the health check. Required when protocol is CMD
             - `port`: (integer) Port number for the health check endpoint. Required when protocol is HTTP.
             - `initialDelaySeconds`: (integer) (required) Initial delay, in seconds, before the health check is first run.
             - `periodSeconds`: (integer) (required) The time between each check, in seconds.
             - `timeoutSeconds`: (integer) (required) The time to wait for a response before marking the health check as a failure.
             - `failureThreshold`: (integer) (required) The maximum number of allowed failures.
             - `successThreshold`: (integer) The number of successes required to mark the health check as a success.
         - `backoffLimit`: (integer) (required) The number of attempts to rerun a job before it is marked as failed.
         - `runOnSourceChange`: (string) Configure when the job should be run if the source image changes. (enum: never, cd-promote, always)
         - `activeDeadlineSeconds`: (integer) The maximum amount of time, in seconds, for a job to run before it is marked as failed.
         - `jobType`: (string) (required) Type of the job (manual or manual) (enum: manual)
         - `id`: (string) (required) Identifier for the job
         - `appId`: (string) (required) Full identifier used for job deployment
         - `deployment`: {object}
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per container in MB
             - `shmSize`: (integer) Configures the amount of available memory-backed disk space available to /dev/shm
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
           - `gracePeriodSeconds`: (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.
           - `metadata`: {object}
             - `labels`: {object}
             - `annotations`: {object}
           - `vcs`: {object}
             - `projectUrl`: (string) (required) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
             - `projectType`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
             - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
             - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
             - `vcsLinkId`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24)
             - `projectBranch`: (string) (required) The name of the branch to use.
           - `external`: {object}
             - `imagePath`: (string) (required) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$)
             - `credentials`: (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$)
           - `internal`: {object}
             - `id`: (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string)
             - `branch`: (string) Branch to deploy
             - `buildSHA`: (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest)
             - `buildId`: (string) ID of the build that should be deployed
           - `imageUrl`: (string) Image registry url of the deployed image.
         - `status`: {object}
           - `build`: {object}
             - `status`: (string) (required) The current status of the build. (enum: QUEUED, PENDING, UNSCHEDULABLE, STARTING, CLONING, BUILDING, UPLOADING, ABORTED, FAILURE, SUBMISSION_FAILURE, SUCCESS, CRASHED, IN_PROGRESS)
             - `lastTransitionTime`: (string) The timestamp of when the build reached this status. (format: date-time)
         - `cluster`: {object}
           - `id`: (string) (required) The id of the cluster associated with this project.
           - `name`: (string) (required) The name of the cluster associated with this project.
           - `namespace`: (string) Namespace this resource is located within on the cluster.
           - `loadBalancers`: [array of] (string)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Job)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the job. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52) | (string) A string containing one or more references that resolve to the name of the job. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the job. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the job. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `infrastructure`: {object}
         - `architecture`: (string) (enum: x86, arm)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `billing`: {object}
         - `buildPlan`: (multiple options) (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the build plan to use. (pattern: .*\${.*}.*)
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
       - `deployment`: {object}
         - `buildpack`: {object}
           - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
           - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
           - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
         - `docker`: {object}
           - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
           - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
           - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
         - `storage`: {object}
           - `useHdbStorage`: (boolean)
           - `usePdSsdStorage`: (boolean)
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
           - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
         - `gpu`: {object}
           - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
           - `configuration`: {object}
             - `gpuType`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `gpuCount`: (multiple options) (integer) | (string) (pattern: .*\${.*}.*)
             - `timesliced`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
         - `gracePeriodSeconds`: (multiple options) (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. | (string) A string containing one or more references that resolve to the maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system. (pattern: .*\${.*}.*)
         - `metadata`: {object}
           - `labels`: {object}
           - `annotations`: {object}
         - `vcs`: {object}
           - `projectUrl`: (multiple options) (string) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo to build. (pattern: .*\${.*}.*)
           - `projectType`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
           - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
           - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
           - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24) | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
           - `projectBranch`: (multiple options) (string) The name of the branch to use. | (string) A string containing one or more references that resolve to the name of the branch to use. (pattern: .*\${.*}.*)
         - `external`: {object}
           - `imagePath`: (multiple options) (string) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$) | (string) A string containing one or more references that resolve to image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: .*\${.*}.*)
           - `credentials`: (multiple options) (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the saved credentials to use to access this external image. (pattern: .*\${.*}.*)
         - `internal`: {object}
           - `id`: (multiple options) (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) | (string) A string containing one or more references that resolve to iD of the build service to deploy (pattern: .*\${.*}.*)
           - `branch`: (multiple options) (string) Branch to deploy | (string) A string containing one or more references that resolve to branch to deploy (pattern: .*\${.*}.*)
           - `buildSHA`: (multiple options) (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest) | (string) A string containing one or more references that resolve to commit SHA to deploy, or 'latest' to deploy the most recent commit (pattern: .*\${.*}.*)
           - `buildId`: (multiple options) (string) ID of the build that should be deployed | (string) A string containing one or more references that resolve to iD of the build that should be deployed (pattern: .*\${.*}.*)
         - `releaseFlowControlled`: (boolean) When enabled the deployment source will only be set on creation. All changes to the deployment source must be done via a release flow or manually.
       - `disabledCI`: (multiple options) (boolean) Whether CI should be disabled. Only relevant for jobs deploying directly from version control. | (string) A string containing one or more references that resolve to whether CI should be disabled. Only relevant for jobs deploying directly from version control. (pattern: .*\${.*}.*)
       - `buildConfiguration`: {object}
         - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
         - `isAllowList`: (multiple options) (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. | (string) A string containing one or more references that resolve to if `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`. (pattern: .*\${.*}.*)
         - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. | (string) A string containing one or more references that resolve to if `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built. (pattern: .*\${.*}.*)
         - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
         - `dockerfileTarget`: (multiple options) (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. | (string) A string containing one or more references that resolve to if your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. (pattern: .*\${.*}.*)
         - `dockerCredentials`: [array of] (multiple options) (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the docker credentials to use. (pattern: .*\${.*}.*)
         - `includeGitFolder`: (boolean) Include .git folder inside the build context
         - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
         - `enableGitLfs`: (boolean) Enable Git LFS support for the build
         - `storage`: {object}
           - `ephemeralStorage`: {object}
             - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
       - `buildSettings`: (multiple options) {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `dockerfile`: {object}
             - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
             - `buildEngine`: (multiple options) (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko) | (string) A string containing one or more references that resolve to build engine to use. Defaults to recommended build engine `buildkit` (pattern: .*\${.*}.*)
             - `dockerFilePath`: (multiple options) (string) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$) | (string) A string containing one or more references that resolve to the file path of the Dockerfile. (pattern: .*\${.*}.*)
             - `dockerWorkDir`: (multiple options) (string) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory of the Dockerfile. (pattern: .*\${.*}.*)
             - `buildkit`: {object}
               - `useCache`: (multiple options) (boolean) Use persistent storage to cache build layers. | (string) A string containing one or more references that resolve to use persistent storage to cache build layers. (pattern: .*\${.*}.*)
               - `cacheStorageSize`: (multiple options) (integer) The amount of persistent storage available to each build in MB. | (string) A string containing one or more references that resolve to the amount of persistent storage available to each build in MB. (pattern: .*\${.*}.*)
               - `useInternalCache`: (multiple options) (boolean) DEPRECATED: This field will be removed in the near future. | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*)
               - `internalCacheStorage`: (multiple options) (number) DEPRECATED: This field will be removed in the near future. (format: float) | (string) A string containing one or more references that resolve to dEPRECATED: This field will be removed in the near future. (pattern: .*\${.*}.*) | {object}
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288) | (string) A string containing one or more references that resolve to ephemeral storage per build in MB (pattern: .*\${.*}.*)
           - `buildpack`: {object}
             - `builder`: (multiple options) (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL) | (string) A string containing one or more references that resolve to buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (pattern: .*\${.*}.*)
             - `buildpackLocators`: [array of] (multiple options) (string) Url or registry identifier of custom Buildpack. | (string) A string containing one or more references that resolve to url or registry identifier of custom Buildpack. (pattern: .*\${.*}.*)
             - `buildContext`: (multiple options) (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$) | (string) A string containing one or more references that resolve to the working directory to build in. (pattern: .*\${.*}.*)
             - `useCache`: (multiple options) (boolean) Should build dependencies be cached? | (string) A string containing one or more references that resolve to should build dependencies be cached? (pattern: .*\${.*}.*)
       - `runtimeEnvironment`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `runtimeFiles`: {object}
       - `buildArguments`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `buildFiles`: {object}
       - `dockerSecretMounts`: {object}
       - `healthChecks`: [array of] {object}
           - `protocol`: (multiple options) (string) The protocol to access the health check with. (enum: HTTP, CMD, TCP) | (string) A string containing one or more references that resolve to the protocol to access the health check with. (pattern: .*\${.*}.*)
           - `type`: (multiple options) (string) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe) | (string) A string containing one or more references that resolve to the type of health check. (pattern: .*\${.*}.*)
           - `path`: (multiple options) (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$) | (string) (pattern: .*\${.*}.*)
           - `cmd`: (multiple options) (string) The command to run for the health check. Required when protocol is CMD | (string) (pattern: .*\${.*}.*)
           - `port`: (multiple options) (integer) Port number for the health check endpoint. Required when protocol is HTTP. | (string) (pattern: .*\${.*}.*)
           - `initialDelaySeconds`: (multiple options) (integer) Initial delay, in seconds, before the health check is first run. | (string) A string containing one or more references that resolve to initial delay, in seconds, before the health check is first run. (pattern: .*\${.*}.*)
           - `periodSeconds`: (multiple options) (integer) The time between each check, in seconds. | (string) A string containing one or more references that resolve to the time between each check, in seconds. (pattern: .*\${.*}.*)
           - `timeoutSeconds`: (multiple options) (integer) The time to wait for a response before marking the health check as a failure. | (string) A string containing one or more references that resolve to the time to wait for a response before marking the health check as a failure. (pattern: .*\${.*}.*)
           - `failureThreshold`: (multiple options) (integer) The maximum number of allowed failures. | (string) A string containing one or more references that resolve to the maximum number of allowed failures. (pattern: .*\${.*}.*)
           - `successThreshold`: (multiple options) (integer) The number of successes required to mark the health check as a success. | (string) (pattern: .*\${.*}.*)
       - `settings`: {object}
         - `backoffLimit`: (multiple options) (integer) The number of attempts to rerun a job before it is marked as failed. | (string) A string containing one or more references that resolve to the number of attempts to rerun a job before it is marked as failed. (pattern: .*\${.*}.*)
         - `runOnSourceChange`: (multiple options) (string) Configure when the job should be run if the source image changes. (enum: never, cd-promote, always) | (string) A string containing one or more references that resolve to configure when the job should be run if the source image changes. (pattern: .*\${.*}.*)
         - `activeDeadlineSeconds`: (multiple options) (integer) The maximum amount of time, in seconds, for a job to run before it is marked as failed. | (string) A string containing one or more references that resolve to the maximum amount of time, in seconds, for a job to run before it is marked as failed. (pattern: .*\${.*}.*)
         - `cron`: {object}
           - `schedule`: (multiple options) (string) The cron timer scheduling when to run the job. | (string) A string containing one or more references that resolve to the cron timer scheduling when to run the job. (pattern: .*\${.*}.*)
           - `suspended`: (multiple options) (boolean) Whether the cron's automatic scheduling is suspended | (string) A string containing one or more references that resolve to whether the cron's automatic scheduling is suspended (pattern: .*\${.*}.*)
           - `concurrencyPolicy`: (multiple options) (string) Whether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one. (enum: allow, forbid, replace) | (string) A string containing one or more references that resolve to whether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one. (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the job. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52)
         - `description`: (string) A description of the job. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `billing`: {object}
           - `buildPlan`: (string) The ID of the build plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `deploymentPlan`: (string) (required) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
         - `disabledCI`: (boolean) Whether CI should be disabled. Only relevant for jobs deploying directly from version control.
         - `buildConfiguration`: {object}
           - `pathIgnoreRules`: [array of] (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260)
           - `isAllowList`: (boolean) If `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.
           - `ciIgnoreFlagsEnabled`: (boolean) If `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.
           - `ciIgnoreFlags`: [array of] (string) A commit ignore flag. (max length: 72)
           - `dockerfileTarget`: (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.
           - `dockerCredentials`: [array of] (string) The ID of the docker credentials to use. (pattern: ^[A-Za-z0-9-]+$)
           - `includeGitFolder`: (boolean) Include .git folder inside the build context
           - `fullGitClone`: (boolean) Include the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.
           - `enableGitLfs`: (boolean) Enable Git LFS support for the build
           - `storage`: {object}
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
         - `buildSettings`: (multiple options) {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `dockerfile`: {object}
               - `useCache`: (boolean) DEPRECATED: This field will be removed in the near future and currently has no effect.
               - `buildEngine`: (string) Build engine to use. Defaults to recommended build engine `buildkit` (enum: buildkit, kaniko)
               - `dockerFilePath`: (string) (required) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
               - `dockerWorkDir`: (string) (required) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `buildkit`: {object}
                 - `useCache`: (boolean) Use persistent storage to cache build layers.
                 - `cacheStorageSize`: (integer) The amount of persistent storage available to each build in MB.
                 - `useInternalCache`: (boolean) DEPRECATED: This field will be removed in the near future.
                 - `internalCacheStorage`: (number) DEPRECATED: This field will be removed in the near future. (format: float) | {object}
             - `storage`: {object}
               - `ephemeralStorage`: {object}
                 - `storageSize`: (integer) Ephemeral storage per build in MB (enum: 16384, 32768, 65536, 131072, 262144, 524288)
             - `buildpack`: {object}
               - `builder`: (string) Buildpack stack to use. Defaults to recommended stack `HEROKU_24`. (enum: HEROKU_24, HEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_22, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_JAMMY_TINY, PAKETO_JAMMY_BASE, PAKETO_JAMMY_FULL, PAKETO_TINY, PAKETO_BASE, PAKETO_FULL)
               - `buildpackLocators`: [array of] (string) Url or registry identifier of custom Buildpack.
               - `buildContext`: (string) The working directory to build in. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
               - `useCache`: (boolean) Should build dependencies be cached?
         - `runtimeEnvironment`: {object}
         - `runtimeFiles`: {object}
         - `buildArguments`: {object}
         - `buildFiles`: {object}
         - `dockerSecretMounts`: {object}
         - `healthChecks`: [array of] {object}
             - `protocol`: (string) (required) The protocol to access the health check with. (enum: HTTP, CMD, TCP)
             - `type`: (string) (required) The type of health check. (enum: livenessProbe, readinessProbe, startupProbe)
             - `path`: (string) The path of the health check endpoint. Required when protocol is HTTP. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*((\?([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)(&([a-zA-Z0-9-._]+(=[a-zA-Z0-9-._]+)?)*)*)?$)
             - `cmd`: (string) The command to run for the health check. Required when protocol is CMD
             - `port`: (integer) Port number for the health check endpoint. Required when protocol is HTTP.
             - `initialDelaySeconds`: (integer) (required) Initial delay, in seconds, before the health check is first run.
             - `periodSeconds`: (integer) (required) The time between each check, in seconds.
             - `timeoutSeconds`: (integer) (required) The time to wait for a response before marking the health check as a failure.
             - `failureThreshold`: (integer) (required) The maximum number of allowed failures.
             - `successThreshold`: (integer) The number of successes required to mark the health check as a success.
         - `settings`: {object}
           - `backoffLimit`: (integer) (required) The number of attempts to rerun a job before it is marked as failed.
           - `runOnSourceChange`: (string) Configure when the job should be run if the source image changes. (enum: never, cd-promote, always)
           - `activeDeadlineSeconds`: (integer) The maximum amount of time, in seconds, for a job to run before it is marked as failed.
           - `cron`: {object}
             - `schedule`: (string) The cron timer scheduling when to run the job.
             - `suspended`: (boolean) Whether the cron's automatic scheduling is suspended
             - `concurrencyPolicy`: (string) Whether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one. (enum: allow, forbid, replace)
         - `jobType`: (string) (required) Type of the job (manual or cron) (enum: cron)
         - `id`: (string) (required) Identifier for the job
         - `appId`: (string) (required) Full identifier used for job deployment
         - `deployment`: {object}
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (integer) Ephemeral storage per container in MB
             - `shmSize`: (integer) Configures the amount of available memory-backed disk space available to /dev/shm
           - `gpu`: {object}
             - `enabled`: (boolean)
             - `configuration`: {object}
               - `gpuType`: (string) (required)
               - `gpuCount`: (integer)
               - `timesliced`: (boolean)
           - `gracePeriodSeconds`: (integer) The maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.
           - `metadata`: {object}
             - `labels`: {object}
             - `annotations`: {object}
           - `vcs`: {object}
             - `projectUrl`: (string) (required) URL of the Git repo to build. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
             - `projectType`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
             - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
             - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
             - `vcsLinkId`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (min length: 24) (max length: 24)
             - `projectBranch`: (string) (required) The name of the branch to use.
           - `external`: {object}
             - `imagePath`: (string) (required) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$)
             - `credentials`: (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$)
           - `internal`: {object}
             - `id`: (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string)
             - `branch`: (string) Branch to deploy
             - `buildSHA`: (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest)
             - `buildId`: (string) ID of the build that should be deployed
           - `imageUrl`: (string) Image registry url of the deployed image.
         - `status`: {object}
           - `build`: {object}
             - `status`: (string) (required) The current status of the build. (enum: QUEUED, PENDING, UNSCHEDULABLE, STARTING, CLONING, BUILDING, UPLOADING, ABORTED, FAILURE, SUBMISSION_FAILURE, SUCCESS, CRASHED, IN_PROGRESS)
             - `lastTransitionTime`: (string) The timestamp of when the build reached this status. (format: date-time)
         - `cluster`: {object}
           - `id`: (string) (required) The id of the cluster associated with this project.
           - `name`: (string) (required) The name of the cluster associated with this project.
           - `namespace`: (string) Namespace this resource is located within on the cluster.
           - `loadBalancers`: [array of] (string)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Addon)
     - `spec`: (multiple options) {object}
         - `name`: (multiple options) (string) The name of the addon. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the addon. (pattern: .*\${.*}.*)
         - `description`: (multiple options) (string) A description of the addon. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the addon. (pattern: .*\${.*}.*)
         - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
         - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `type`: (string) (required) The identifier for the type of addon. Addon types can be found at the Get Addon Types endpoint.
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `version`: (string) (required) The version of the addon type to use. If set to `latest`, the addon will be created with the most recent addon version. If set to a major version appended with `-latest`, e.g. e.g. `14-latest` or `14.5-latest`, the addon will be created with the most recent minor/patch version belonging to that major version.
         - `billing`: {object}
           - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan to use. (pattern: .*\${.*}.*)
           - `storageClass`: (multiple options) (string) The type of storage. Only configurable if the relevant feature flag is enabled for you account (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the type of storage. Only configurable if the relevant feature flag is enabled for you account (pattern: .*\${.*}.*)
           - `storage`: (multiple options) (integer) The size of the addon storage, in megabytes. | (string) A string containing one or more references that resolve to the size of the addon storage, in megabytes. (pattern: .*\${.*}.*)
           - `replicas`: (multiple options) (integer) The number of addon replicas to run. | (string) A string containing one or more references that resolve to the number of addon replicas to run. (pattern: .*\${.*}.*)
           - `zonalRedundancy`: {object}
             - `type`: (multiple options) (string) Defines scheduling behaviour across different zones within the same region. (enum: required, disabled) | (string) A string containing one or more references that resolve to defines scheduling behaviour across different zones within the same region. (pattern: .*\${.*}.*)
             - `minZones`: (integer) Defines how many zones are required and will prevent containers from additional scheduling into existing zones. (Only relevant if type is set to "required")
         - `source`: (multiple options) {object}
             - `projectId`: (multiple options) (string) ID of the project of the source addon. Only required if not the same as target addon (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the project of the source addon. Only required if not the same as target addon (pattern: .*\${.*}.*)
             - `addonId`: (multiple options) (string) ID of the addon to fork. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the addon to fork. (pattern: .*\${.*}.*)
             - `backupId`: (multiple options) (string) ID of a backup belonging to that addon to use for the fork. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of a backup belonging to that addon to use for the fork. (pattern: .*\${.*}.*) | {object}
             - `backupUid`: (multiple options) (string) Uid of the backup (format: uuid) | (string) A string containing one or more references that resolve to uid of the backup (pattern: .*\${.*}.*)
         - `tlsEnabled`: (boolean) Enables access to the addon via TLS (if supported by the addon type).
         - `externalAccessEnabled`: (boolean) Enables external access to the addon via TLS (if supported by the addon type).
         - `ipPolicies`: [array of] {object}
             - `addresses`: [array of] (string) An IP address used by this rule
             - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
         - `typeSpecificSettings`: {object}
           - `redisMaxMemoryPolicy`: (string) Redis only: Key eviction policy at memory pressure. (enum: noeviction, allkeys-lru, allkeys-lfu, volatile-lru, volatile-lfu, allkeys-random, volatile-random, volatile-ttl, volatile-lrm, allkeys-lrm)
           - `redisSentinelEnabled`: (boolean) Redis only: Deploy Redis with Sentinel high availability. Default: false
           - `postgresqlWalLevel`: (string) PostgreSQL only: Configure wal_level setting. (enum: replica, logical)
           - `postgresqlSupabaseMode`: (boolean) PostgreSQL only: Enable Supabase mode.
           - `postgresqlConnectionPoolerEnabled`: (boolean) PostgreSQL only: Run connection pooler in front of postgres instance.
           - `postgresqlConnectionPoolerReplicas`: (integer) PostgreSQL only: Number of connection pooler instances in case connection pooler is enabled.
           - `postgresqlReadConnectionPoolerEnabled`: (boolean) PostgreSQL only: Run connection pooler in front of read-only postgres instance.
           - `postgresqlReadConnectionPoolerReplicas`: (integer) PostgreSQL only: Number of read-only connection pooler replicas in case read-only connection pooler is enabled.
           - `postgresqlImportMode`: (boolean) PostgreSQL only: Configure PostgreSQL for higher import speed. Not recommended for production workloads.
           - `mysqlHaModeEnabled`: (boolean) MySQL only: Run MySQL in HA configuration with auto-failover and connection poolers.
           - `mysqlRouterReplicas`: (multiple options) (integer) MysqlHA only: Number of connection router replicas in case connection router is enabled. | (string) A string containing one or more references that resolve to mysqlHA only: Number of connection router replicas in case connection router is enabled. (pattern: .*\${.*}.*)
         - `customCredentials`: {object}
           - `dbName`: (multiple options) (string) Custom database name. Not supported for all addon types. | (string) A string containing one or more references that resolve to custom database name. Not supported for all addon types. (pattern: .*\${.*}.*)
         - `backupSchedules`: [array of] {object}
             - `scheduling`: (multiple options) {object}
                 - `interval`: (multiple options) (string) The interval between backups. Each addon can only have one backup schedule of each interval for each backup type. (enum: hourly, daily, weekly) | (string) A string containing one or more references that resolve to the interval between backups. Each addon can only have one backup schedule of each interval for each backup type. (pattern: .*\${.*}.*)
                 - `minute`: (multiple options) [array of] (integer) A minute when the backup should be performed. | (string) A string containing one or more references that resolve to an array of minutes when the backup should be performed. (pattern: .*\${.*}.*)
                 - `hour`: (multiple options) [array of] (integer) An hour when the backup should be performed, in 24 hour format. | (string) A string containing one or more references that resolve to an array of hours in 24 hour format when the backup should be performed. At these hours, a backup will be performed at each of the minutes provided in the `minute` field. Required for `daily` and `weekly` intervals and unavailable for `hourly` intervals. (pattern: .*\${.*}.*)
                 - `day`: (multiple options) [array of] (integer) A day of the week when the backup should be performed, where `0` represents Monday and `6` represents Sunday. | (string) A string containing one or more references that resolve to an array of days of the week when the backup should be performed, where `0` represents Monday and `6` represents Sunday. On these days, a backup will be performed at each of the minutes provided in the `minute` field whenever it is an hour from the `hour` field. Required for `weekly` intervals and unavailable for `hourly` and `daily` intervals. (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to schedule for the backup. (pattern: .*\${.*}.*)
             - `backupType`: (multiple options) (string) The type of the backup to be performed. (enum: dump, snapshot) | (string) A string containing one or more references that resolve to the type of the backup to be performed. (pattern: .*\${.*}.*)
             - `customDestinationId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
             - `additionalDestinations`: [array of] {object}
                 - `destinationId`: (multiple options) (string) Additional custom back up destination that should be used to store the snapshot. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to additional custom back up destination that should be used to store the snapshot. (pattern: .*\${.*}.*)
                 - `retentionTime`: (multiple options) (integer) Retention time of the additional back up in days. | (string) A string containing one or more references that resolve to retention time of the additional back up in days. (pattern: .*\${.*}.*)
                 - `type`: (string) (required) The type of backup destination to use (enum: custom)
             - `compressionType`: (multiple options) (string) The compression algorithm of the backup. Only applicable for dump backups. Defaults to `gz`. (enum: gz, zstd) | (string) A string containing one or more references that resolve to the compression algorithm of the backup. Only applicable for dump backups. Defaults to `gz`. (pattern: .*\${.*}.*)
             - `retentionTime`: (multiple options) (integer) The time the backup is retained for, in days. | (string) A string containing one or more references that resolve to the time the backup is retained for, in days. (pattern: .*\${.*}.*)
         - `metadata`: {object}
           - `labels`: {object}
           - `annotations`: {object} | {object}
         - `name`: (multiple options) (string) The name of the addon. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the addon. (pattern: .*\${.*}.*)
         - `description`: (multiple options) (string) A description of the addon. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the addon. (pattern: .*\${.*}.*)
         - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
         - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `type`: (string) (required) The identifier for the type of addon. Addon types can be found at the Get Addon Types endpoint.
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `templateValues`: {object} | {object}
         - `name`: (multiple options) (string) The name of the addon. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the addon. (pattern: .*\${.*}.*)
         - `description`: (multiple options) (string) A description of the addon. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the addon. (pattern: .*\${.*}.*)
         - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
         - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `type`: (string) (required) The identifier for the type of addon. Addon types can be found at the Get Addon Types endpoint.
         - `infrastructure`: {object}
           - `architecture`: (string) (enum: x86, arm)
         - `region`: (string) The AWS region identifier for the bucket location.
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (multiple options) {object}
           - `name`: (string) (required) The name of the addon. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
           - `description`: (string) A description of the addon. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
           - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `type`: (string) (required) The identifier for the type of addon. Addon types can be found at the Get Addon Types endpoint.
           - `infrastructure`: {object}
             - `architecture`: (string) (enum: x86, arm)
           - `version`: (string) (required) The version of the addon type to use. If set to `latest`, the addon will be created with the most recent addon version. If set to a major version appended with `-latest`, e.g. `14-latest` or `14.5-latest`, the addon will be created with the most recent minor/patch version belonging to that major version.
           - `billing`: {object}
             - `deploymentPlan`: (string) (required) The ID of the deployment plan to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
             - `storageClass`: (string) The type of storage. Only configurable if the relevant feature flag is enabled for you account (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
             - `storage`: (integer) (required) The size of the addon storage, in megabytes.
             - `replicas`: (integer) (required) The number of addon replicas to run.
             - `zonalRedundancy`: {object}
               - `type`: (string) Defines scheduling behaviour across different zones within the same region. (enum: required, disabled)
               - `minZones`: (integer) Defines how many zones are required and will prevent containers from additional scheduling into existing zones. (Only relevant if type is set to "required")
           - `source`: (multiple options) {object}
               - `projectId`: (string) ID of the project of the source addon. Only required if not the same as target addon (pattern: ^[A-Za-z0-9-]+$)
               - `addonId`: (string) (required) ID of the addon to fork. (pattern: ^[A-Za-z0-9-]+$)
               - `backupId`: (string) (required) ID of a backup belonging to that addon to use for the fork. (pattern: ^[A-Za-z0-9-]+$) | {object}
               - `backupUid`: (string) (required) Uid of the backup (format: uuid)
           - `tlsEnabled`: (boolean) Enables access to the addon via TLS (if supported by the addon type).
           - `externalAccessEnabled`: (boolean) Enables external access to the addon via TLS (if supported by the addon type).
           - `ipPolicies`: [array of] {object}
               - `addresses`: [array of] (string) An IP address used by this rule
               - `action`: (string) (required) The action for this rule. (enum: ALLOW, DENY)
           - `typeSpecificSettings`: {object}
             - `redisMaxMemoryPolicy`: (string) Redis only: Key eviction policy at memory pressure. (enum: noeviction, allkeys-lru, allkeys-lfu, volatile-lru, volatile-lfu, allkeys-random, volatile-random, volatile-ttl, volatile-lrm, allkeys-lrm)
             - `redisSentinelEnabled`: (boolean) Redis only: Deploy Redis with Sentinel high availability. Default: false
             - `postgresqlWalLevel`: (string) PostgreSQL only: Configure wal_level setting. (enum: replica, logical)
             - `postgresqlSupabaseMode`: (boolean) PostgreSQL only: Enable Supabase mode.
             - `postgresqlConnectionPoolerEnabled`: (boolean) PostgreSQL only: Run connection pooler in front of postgres instance.
             - `postgresqlConnectionPoolerReplicas`: (integer) PostgreSQL only: Number of connection pooler replicas in case connection pooler is enabled.
             - `postgresqlReadConnectionPoolerEnabled`: (boolean) PostgreSQL only: Run connection pooler in front of read-only postgres instance.
             - `postgresqlReadConnectionPoolerReplicas`: (integer) PostgreSQL only: Number of read-only connection pooler replicas in case read-only connection pooler is enabled.
             - `postgresqlImportMode`: (boolean) PostgreSQL only: Configure PostgreSQL for higher import speed. Not recommended for production workloads.
             - `mysqlHaModeEnabled`: (boolean) MySQL only: Run MySQL in HA configuration with auto-failover and connection poolers.
             - `mysqlRouterReplicas`: (integer) MysqlHA only: Number of connection router replicas in case connection router is enabled.
           - `customCredentials`: {object}
             - `dbName`: (string) Custom database name. Not supported for all addon types.
           - `backupSchedules`: [array of] {object}
               - `scheduling`: {object}
                 - `interval`: (string) (required) The interval between backups. Each addon can only have one backup schedule of each interval for each backup type. (enum: hourly, daily, weekly)
                 - `minute`: [array of] (integer) A minute when the backup should be performed.
                 - `hour`: [array of] (integer) An hour when the backup should be performed, in 24 hour format.
                 - `day`: [array of] (integer) A day of the week when the backup should be performed, where `0` represents Monday and `6` represents Sunday.
               - `backupType`: (string) (required) The type of the backup to be performed. (enum: dump, snapshot)
               - `customDestinationId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
               - `additionalDestinations`: [array of] {object}
                   - `destinationId`: (string) (required) Additional custom back up destination that should be used to store the snapshot. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
                   - `retentionTime`: (integer) Retention time of the additional back up in days.
                   - `type`: (string) (required) The type of backup destination to use (enum: custom)
               - `compressionType`: (string) The compression algorithm of the backup. Only applicable for dump backups. Defaults to `gz`. (enum: gz, zstd)
               - `retentionTime`: (integer) (required) The time the backup is retained for, in days.
           - `metadata`: {object}
             - `labels`: {object}
             - `annotations`: {object}
           - `id`: (string) (required) Identifier for the addon.
           - `appId`: (string) (required) Full identifier used for deployment
           - `status`: (string) (required) The current state of the addon. (enum: preDeployment, triggerAllocation, allocating, postDeployment, running, paused, scaling, upgrading, resetting, backup, restore, failed, error, errorAllocating, deleting, deleted)
           - `cluster`: {object}
             - `id`: (string) (required) The id of the cluster associated with this project.
             - `name`: (string) (required) The name of the cluster associated with this project.
             - `namespace`: (string) Namespace this resource is located within on the cluster.
             - `loadBalancers`: [array of] (string)
           - `createdAt`: (string) time of creation (format: date-time)
           - `updatedAt`: (string) time of update (format: date-time) | {object}
           - `name`: (string) (required) The name of the addon. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
           - `description`: (string) A description of the addon. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
           - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `type`: (string) (required) The identifier for the type of addon. Addon types can be found at the Get Addon Types endpoint.
           - `infrastructure`: {object}
             - `architecture`: (string) (enum: x86, arm)
           - `templateValues`: {object}
           - `id`: (string) (required) Identifier for the addon.
           - `appId`: (string) (required) Full identifier used for deployment
           - `status`: (string) (required) The current state of the addon. (enum: preDeployment, triggerAllocation, allocating, postDeployment, running, paused, scaling, upgrading, resetting, backup, restore, failed, error, errorAllocating, deleting, deleted)
           - `cluster`: {object}
             - `id`: (string) (required) The id of the cluster associated with this project.
             - `name`: (string) (required) The name of the cluster associated with this project.
             - `namespace`: (string) Namespace this resource is located within on the cluster.
             - `loadBalancers`: [array of] (string)
           - `createdAt`: (string) time of creation (format: date-time)
           - `updatedAt`: (string) time of update (format: date-time) | {object}
           - `name`: (string) (required) The name of the addon. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
           - `description`: (string) A description of the addon. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
           - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `type`: (string) (required) The identifier for the type of addon. Addon types can be found at the Get Addon Types endpoint.
           - `infrastructure`: {object}
             - `architecture`: (string) (enum: x86, arm)
           - `region`: (string) The AWS region identifier for the bucket location.
           - `id`: (string) (required) Identifier for the addon.
           - `appId`: (string) (required) Full identifier used for deployment
           - `status`: (string) (required) The current state of the addon. (enum: preDeployment, triggerAllocation, allocating, postDeployment, running, paused, scaling, upgrading, resetting, backup, restore, failed, error, errorAllocating, deleting, deleted)
           - `cluster`: {object}
             - `id`: (string) (required) The id of the cluster associated with this project.
             - `name`: (string) (required) The name of the cluster associated with this project.
             - `namespace`: (string) Namespace this resource is located within on the cluster.
             - `loadBalancers`: [array of] (string)
           - `createdAt`: (string) time of creation (format: date-time)
           - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: ExternalAddon)
     - `spec`: {object}
       - `description`: (multiple options) (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `environmentId`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
       - `spec`: {object}
         - `resourceType`: (string) (required) (enum: s3, rds, cloudSql, memorystore)
         - `provider`: {object}
           - `aws`: {object}
             - `region`: (string) (required)
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `google`: {object}
             - `project`: (string) (required)
             - `region`: (string)
             - `zone`: (string)
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `cloudflare`: {object}
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `aiven`: {object}
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `backblaze`: {object}
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `azure`: {object}
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
           - `akamai`: {object}
             - `integrationId`: (string) (required) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$)
         - `config`: {object}
         - `outputs`: {object}
         - `workloadIdentityId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `usePlan`: (boolean) Require approval of a plan before applying
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the ExternalAddon node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: AddonBackup)
     - `spec`: {object}
       - `projectId`: (multiple options) (string) The ID of the addon to backup. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the addon to backup. (pattern: .*\${.*}.*)
       - `addonId`: (multiple options) (string) The ID of the addon to backup. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the addon to backup. (pattern: .*\${.*}.*)
       - `backupType`: (string) The type of backup to perform. Defaults to `snapshot`. (enum: dump, snapshot)
       - `compressionType`: (multiple options) (string) (enum: zstd, gz, none) | (string) (pattern: .*\${.*}.*)
       - `customDestinationId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `additionalDestinations`: [array of] {object}
           - `destinationId`: (multiple options) (string) Additional custom back up destination that should be used to store the snapshot. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to additional custom back up destination that should be used to store the snapshot. (pattern: .*\${.*}.*)
           - `retentionTime`: (multiple options) (integer) Retention time of the additional back up in days. | (string) A string containing one or more references that resolve to retention time of the additional back up in days. (pattern: .*\${.*}.*)
           - `type`: (string) (required) The type of backup destination to use (enum: custom)
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the AddonBackup node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: AddonImport)
     - `spec`: {object}
       - `projectId`: (multiple options) (string) The ID of the project containing the addon. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the project containing the addon. (pattern: .*\${.*}.*)
       - `addonId`: (multiple options) (string) The ID of the addon to import a backup into. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the ID of the addon to import a backup into. (pattern: .*\${.*}.*)
       - `importUrl`: (multiple options) (string) A URL to import a backup file from. | (string) A string containing one or more references that resolve to a URL to import a backup file from. (pattern: .*\${.*}.*)
       - `connectionString`: (multiple options) (string) A connection string for a live database to dump and import. | (string) A string containing one or more references that resolve to a connection string for a live database to dump and import. (pattern: .*\${.*}.*)
       - `importAllDatabases`: (boolean) When true, all non-system databases will be detected and dumped. Only applicable when using a connection string with PostgreSQL.
       - `compressionType`: (multiple options) (string) (enum: zstd, gz, none) | (string) (pattern: .*\${.*}.*)
       - `customDestinationId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the AddonImport node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: SecretGroup)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the secret. (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the name of the secret. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the secret. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the secret. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `type`: (string) The hierarchy type of the created secret. (enum: secret, config)
       - `secretType`: (string) (required) The injection scope of the created secret (enum: environment-arguments, environment, arguments)
       - `priority`: (multiple options) (integer) The priority with which different secrets will be merged. | (string) A string containing one or more references that resolve to the priority with which different secrets will be merged. (pattern: .*\${.*}.*)
       - `restrictions`: {object}
         - `restricted`: (boolean) Whether the secret is restricted to specific resources. If this is `true`, only resources listed in `nfObjects` or with a tag listed in `tags` will have access to these secrets. Otherwise, all resources in the project will be able to access it.
         - `nfObjects`: [array of] {object}
             - `id`: (multiple options) (string) ID of the entity the secret is restricted to. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the entity the secret is restricted to. (pattern: .*\${.*}.*)
             - `type`: (string) (required) Type of the entity the secret is restricted to. (enum: service, job)
         - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `tagMatchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*)
       - `addonDependencies`: [array of] {object}
           - `addonId`: (multiple options) (string) The id of the addon to link. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the addon to link. (pattern: .*\${.*}.*)
           - `keys`: [array of] {object}
               - `keyName`: (string) (required) The name of the key to link. (pattern: [a-zA-Z]+)
               - `aliases`: [array of] (multiple options) (string) The name of the alias. Keys may only contain letters, numbers, hyphens, forward slashes and dots. (pattern: ^[a-zA-Z0-9_./-]*$) | (string) A string containing one or more references that resolve to the name of the alias. Keys may only contain letters, numbers, hyphens, forward slashes and dots. (pattern: .*\${.*}.*)
       - `externalAddonDependencies`: [array of] {object}
           - `addonId`: (multiple options) (string) The id of the external addon to link. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the external addon to link. (pattern: .*\${.*}.*)
           - `keys`: [array of] {object}
               - `keyName`: (string) (required) The name of the key to link. (pattern: [a-zA-Z]+)
               - `aliases`: [array of] (multiple options) (string) The name of the alias. Keys may only contain letters, numbers, hyphens, forward slashes and dots. (pattern: ^[a-zA-Z0-9_./-]*$) | (string) A string containing one or more references that resolve to the name of the alias. Keys may only contain letters, numbers, hyphens, forward slashes and dots. (pattern: .*\${.*}.*)
       - `secrets`: {object}
         - `variables`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
         - `files`: {object}
         - `dockerSecretMounts`: {object}
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `name`: (string) (required) The name of the secret. (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `description`: (string) A description of the secret. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `stageId`: (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `type`: (string) The hierarchy type of the created secret. (enum: secret, config)
         - `secretType`: (string) (required) The injection scope of the created secret (enum: environment-arguments, environment, arguments)
         - `priority`: (integer) (required) The priority with which different secrets will be merged.
         - `restrictions`: {object}
           - `restricted`: (boolean) Whether the secret is restricted to specific resources. If this is `true`, only resources listed in `nfObjects` or with a tag listed in `tags` will have access to these secrets. Otherwise, all resources in the project will be able to access it.
           - `nfObjects`: [array of] {object}
               - `id`: (string) (required) ID of the entity the secret is restricted to. (pattern: ^[A-Za-z0-9-]+$)
               - `type`: (string) (required) Type of the entity the secret is restricted to. (enum: service, job)
           - `tags`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `tagMatchCondition`: (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or)
         - `addonDependencies`: [array of] {object}
             - `addonId`: (string) (required) The id of the addon to link. (pattern: ^[A-Za-z0-9-]+$)
             - `keys`: [array of] {object}
                 - `keyName`: (string) (required) The name of the key to link. (pattern: [a-zA-Z]+)
                 - `aliases`: [array of] (string) The name of the alias. Keys may only contain letters, numbers, hyphens, forward slashes and dots. (pattern: ^[a-zA-Z0-9_./-]*$)
         - `externalAddonDependencies`: [array of] {object}
             - `addonId`: (string) (required) The id of the external addon to link. (pattern: ^[A-Za-z0-9-]+$)
             - `keys`: [array of] {object}
                 - `keyName`: (string) (required) The name of the key to link. (pattern: [a-zA-Z]+)
                 - `aliases`: [array of] (string) The name of the alias. Keys may only contain letters, numbers, hyphens, forward slashes and dots. (pattern: ^[a-zA-Z0-9_./-]*$)
         - `secrets`: {object}
           - `variables`: {object}
           - `files`: {object}
           - `dockerSecretMounts`: {object}
         - `id`: (string) (required) Identifier for the secret group (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `createdAt`: (string) time of creation (format: date-time)
         - `updatedAt`: (string) time of update (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: SSHIdentity)
     - `spec`: {object}
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) (pattern: .*\${.*}.*)
       - `sshPublicKeys`: [array of] {object}
           - `key`: (multiple options) (string) The SSH public key. | (string) A string containing one or more references that resolve to the SSH public key. (pattern: .*\${.*}.*)
       - `restrictions`: {object}
         - `projects`: {object}
           - `enabled`: (boolean) Whether restriction by project should be enabled.
           - `items`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
         - `tags`: {object}
           - `enabled`: (boolean) Whether restriction by tag should be enabled.
           - `items`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
           - `matchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*)
       - `updatedAt`: (string) time of update (format: date-time)
       - `createdAt`: (string) time of creation (format: date-time)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) ID of the ssh identity (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `name`: (string) (required) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `description`: (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `sshPublicKeys`: [array of] {object}
             - `key`: (string) (required) The SSH public key.
         - `restrictions`: {object}
           - `projects`: {object}
             - `enabled`: (boolean) Whether restriction by project should be enabled.
             - `items`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `tags`: {object}
             - `enabled`: (boolean) Whether restriction by tag should be enabled.
             - `items`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
             - `matchCondition`: (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or)
         - `updatedAt`: (string) time of update (format: date-time)
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: WorkloadIdentity)
     - `spec`: {object}
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) (pattern: .*\${.*}.*)
       - `spec`: {object}
         - `providerLinkInternalId`: (multiple options) (string) The internal ID of the BYOC provider integration to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the internal ID of the BYOC provider integration to use. (pattern: .*\${.*}.*)
         - `roleMode`: (string) (required) (enum: managed, existing)
         - `providerSetupMode`: (string) (enum: auto, manual)
         - `provider`: (multiple options) {object}
             - `type`: (string) (required) (enum: aws)
             - `policyDocument`: (multiple options) {object}
                 - `Version`: (string) (required) (enum: 2012-10-17, 2008-10-17)
                 - `Statement`: (multiple options) {object}
                     - `Sid`: (string) (pattern: ^[a-zA-Z0-9]*$)
                     - `Effect`: (string) (required) (enum: Allow, Deny)
                     - `Action`: (multiple options) (string) | [array of] (string)
                     - `Resource`: (multiple options) (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$) | [array of] (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$)
                     - `Condition`: {object} | [array of] {object}
                       - `Sid`: (string) (pattern: ^[a-zA-Z0-9]*$)
                       - `Effect`: (string) (required) (enum: Allow, Deny)
                       - `Action`: (multiple options) (string) | [array of] (string)
                       - `Resource`: (multiple options) (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$) | [array of] (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$)
                       - `Condition`: {object} | (string) A string containing one or more references that resolve to the AWS IAM policy document. (pattern: .*\${.*}.*)
             - `arn`: (string) | {object}
             - `type`: (string) (required) (enum: aws)
             - `existingRoleArn`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `arn`: (string) | {object}
             - `type`: (string) (required) (enum: gcp)
             - `permissions`: (multiple options) [array of] (string) (pattern: ^[a-zA-Z0-9.]+$) | (string) A string containing one or more references that resolve to a list of GCP permissions to assign to this workload identity. (pattern: .*\${.*}.*)
             - `impersonationUrl`: (string)
             - `audience`: (string) | {object}
             - `type`: (string) (required) (enum: gcp)
             - `existingRoleAudience`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `existingRoleImpersonationUrl`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
             - `impersonationUrl`: (string)
             - `audience`: (string)
         - `restrictions`: {object}
           - `projects`: {object}
             - `enabled`: (boolean) Whether restriction by project should be enabled.
             - `items`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
           - `tags`: {object}
             - `enabled`: (boolean) Whether restriction by tag should be enabled.
             - `items`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
             - `matchCondition`: (multiple options) (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or) | (string) A string containing one or more references that resolve to if all or any of the tags must be present on the target for it to match the condition. (pattern: .*\${.*}.*)
       - `updatedAt`: (string) time of update (format: date-time)
       - `createdAt`: (string) time of creation (format: date-time)
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: {object}
         - `id`: (string) (required) ID of the workload identity (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39)
         - `name`: (string) (required) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
         - `description`: (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
         - `spec`: {object}
           - `providerLinkInternalId`: (string) (required) The internal ID of the BYOC provider integration to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
           - `roleMode`: (string) (required) (enum: managed, existing)
           - `providerSetupMode`: (string) (enum: auto, manual)
           - `provider`: (multiple options) {object}
               - `type`: (string) (required) (enum: aws)
               - `policyDocument`: {object}
                 - `Version`: (string) (required) (enum: 2012-10-17, 2008-10-17)
                 - `Statement`: (multiple options) {object}
                     - `Sid`: (string) (pattern: ^[a-zA-Z0-9]*$)
                     - `Effect`: (string) (required) (enum: Allow, Deny)
                     - `Action`: (multiple options) (string) | [array of] (string)
                     - `Resource`: (multiple options) (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$) | [array of] (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$)
                     - `Condition`: {object} | [array of] {object}
                       - `Sid`: (string) (pattern: ^[a-zA-Z0-9]*$)
                       - `Effect`: (string) (required) (enum: Allow, Deny)
                       - `Action`: (multiple options) (string) | [array of] (string)
                       - `Resource`: (multiple options) (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$) | [array of] (string) (pattern: ^(\*|arn:[a-zA-Z0-9:*/\-?_+=,.@]+)$)
                       - `Condition`: {object}
               - `arn`: (string) | {object}
               - `type`: (string) (required) (enum: aws)
               - `existingRoleArn`: (string) (required)
               - `arn`: (string) | {object}
               - `type`: (string) (required) (enum: gcp)
               - `permissions`: [array of] (string) (pattern: ^[a-zA-Z0-9.]+$)
               - `impersonationUrl`: (string)
               - `audience`: (string) | {object}
               - `type`: (string) (required) (enum: gcp)
               - `existingRoleAudience`: (string) (required)
               - `existingRoleImpersonationUrl`: (string) (required)
               - `impersonationUrl`: (string)
               - `audience`: (string)
           - `restrictions`: {object}
             - `projects`: {object}
               - `enabled`: (boolean) Whether restriction by project should be enabled.
               - `items`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
             - `tags`: {object}
               - `enabled`: (boolean) Whether restriction by tag should be enabled.
               - `items`: [array of] (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
               - `matchCondition`: (string) If all or any of the tags must be present on the target for it to match the condition. (enum: and, or)
         - `updatedAt`: (string) time of update (format: date-time)
         - `createdAt`: (string) time of creation (format: date-time) | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Pipeline)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the pipeline. (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the name of the pipeline. (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) A description of the pipeline. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) A string containing one or more references that resolve to a description of the pipeline. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `preview`: {object}
         - `kind`: (undefined) (required) (enum: PreviewEnv)
         - `spec`: {object}
           - `apiVersion`: (string) (required) The version of the Northflank API to run the template against. (enum: v1.2)
           - `options`: {object}
             - `concurrencyPolicy`: (string) Defines the concurrency behaviour of the template with respect to parallel runs. (enum: allow, queue, forbid, latest, replace)
             - `nameFormat`: (string) The format of the automatically generated preview name. This is a parsed ref string.
             - `prefixName`: (boolean) If true, the preview name will default to the front of the resource name.
             - `useBranchContents`: (boolean) If true, and gitops is enabled, the preview will run based on the contents of the branch that triggered it, rather than the set branch.
             - `schedule`: {object}
               - `mon`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
               - `tue`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
               - `wed`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
               - `thu`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
               - `fri`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
               - `sat`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
               - `sun`: {object}
                 - `startTime`: (integer)
                 - `endTime`: (integer)
             - `expiry`: {object}
               - `previewLifetime`: (integer) If set, preview environments will be automatically deleted after this many minutes since their last update.
               - `resetOnUpdate`: (boolean) If `true`, the expiry time for an existing preview will be reset when it is ran again.
           - `arguments`: {object}
           - `gitops`: {object}
             - `vcsService`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
             - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
             - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
             - `vcsLinkId`: (string) Legacy key. Please used accountLogin instead.
             - `repoUrl`: (string) (required) URL of the Git repo to sync the file with. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
             - `branch`: (string) (required) The name of the branch to use.
             - `filePath`: (string) (required) The file path in the repository. If using an existing file, it should be in JSON format. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
           - `$schema`: (string)
           - `spec`: (undefined)
           - `triggers`: [array of] {object}
               - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
               - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
               - `selfHostedVcsId`: (multiple options) (string) If vcsService is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if vcsService is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
               - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
               - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
               - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `branchRestrictions`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `prRestrictions`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
               - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
               - `isAllowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
               - `ignoreDrafts`: (multiple options) (boolean) If `true`, draft pull requests from this repo will not trigger the template. | (string) A string containing one or more references that resolve to if `true`, draft pull requests from this repo will not trigger the template. (pattern: .*\${.*}.*)
       - `stages`: [array of] {object}
           - `name`: (string) (required) The stage in the pipeline to include the resource. (enum: Development, Staging, Production)
           - `releaseFlow`: {object}
             - `kind`: (undefined) (required) (enum: ReleaseFlow)
             - `spec`: {object}
               - `apiVersion`: (string) (required) The version of the Northflank API to run the template against. (enum: v1.2)
               - `arguments`: {object}
               - `options`: {object}
                 - `concurrencyPolicy`: (string) Defines the concurrency behaviour of the template with respect to parallel runs. (enum: allow, queue, forbid, latest, replace)
                 - `paused`: (boolean) If `true`, the template will not run when triggered by git.
               - `gitops`: {object}
                 - `vcsService`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
                 - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
                 - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
                 - `vcsLinkId`: (string) Legacy key. Please used accountLogin instead.
                 - `repoUrl`: (string) (required) URL of the Git repo to sync the file with. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
                 - `branch`: (string) (required) The name of the branch to use.
                 - `filePath`: (string) (required) The file path in the repository. If using an existing file, it should be in JSON format. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
               - `$schema`: (string)
               - `spec`: (undefined)
               - `richInputs`: [array of] (undefined)
               - `triggers`: [array of] {object}
                   - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
                   - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                   - `selfHostedVcsId`: (multiple options) (string) If vcsService is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if vcsService is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                   - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                   - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                   - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
                   - `branchRestrictions`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
                   - `prRestrictions`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
                   - `pathIgnoreRules`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
                   - `ciIgnoreFlags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
                   - `ciIgnoreFlagsEnabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                   - `isAllowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                   - `ignoreDrafts`: (multiple options) (boolean) If `true`, draft pull requests from this repo will not trigger the template. | (string) A string containing one or more references that resolve to if `true`, draft pull requests from this repo will not trigger the template. (pattern: .*\${.*}.*)
           - `nfObjects`: [array of] {object}
               - `id`: (multiple options) (string) The ID of the service, job or addon to include in the pipeline. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the ID of the service, job or addon to include in the pipeline. (pattern: .*\${.*}.*)
               - `type`: (string) (required) The type of the resource to include in the pipeline. (enum: service, job, addon)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Pipeline node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Volume)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the volume. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the volume. (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `stageId`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `tags`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `mounts`: [array of] {object}
           - `volumeMountPath`: (string) Optionally specify the path inside this volume that should be mounted (pattern: ^((?!\.\.).)*$)
           - `containerMountPath`: (string) (required) Specify the path into which the volume should be mounted (pattern: ^((?!:).)*$)
       - `spec`: {object}
         - `accessMode`: (string) (required) Access mode of the volume. Only `ReadWriteOnce` is generally available. (enum: ReadWriteOnce, ReadWriteMany)
         - `storageClassName`: (string) The type of the storage.
         - `storageSize`: (integer) (required) The size of the storage, in megabytes. Configurable sizes depend on the storage class.
       - `source`: {object}
         - `type`: (multiple options) (string) (enum: volume, backup) | (string) (pattern: .*\${.*}.*)
         - `sourceId`: (multiple options) (string) The ID of the source object (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the source object (pattern: .*\${.*}.*)
       - `owningObject`: {object}
         - `id`: (multiple options) (string) The id of object to attach this volume to. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of object to attach this volume to. (pattern: .*\${.*}.*)
         - `type`: (string) (required) The type of the object to attach this volume to. (enum: service, job)
       - `attachedObjects`: [array of] {object}
           - `id`: (multiple options) (string) The id of object to attach this volume to. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of object to attach this volume to. (pattern: .*\${.*}.*)
           - `type`: (string) (required) The type of the object to attach this volume to. (enum: service, job)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Volume node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Build)
     - `spec`: {object}
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `buildRules`: {object}
         - `pathIgnoreRules`: [array of] (string) (max length: 260)
         - `isAllowList`: (boolean)
         - `ciIgnoreFlagsEnabled`: (boolean)
         - `ciIgnoreFlags`: [array of] (string) (max length: 72)
       - `buildOverrides`: {object}
         - `buildArguments`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
         - `buildFiles`: {object}
         - `dockerSecretMounts`: {object}
         - `docker`: {object}
           - `dockerFilePath`: (string) The file path of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
           - `dockerWorkDir`: (string) The working directory of the Dockerfile. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$)
           - `dockerfileTarget`: (string) If your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here. (pattern: ^[a-zA-Z0-9-_]+$)
       - `id`: (multiple options) (string) The id of object to build. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of object to build. (pattern: .*\${.*}.*)
       - `type`: (string) (required) The type of the object to build. (enum: service, job)
       - `sha`: (multiple options) (string) Commit sha to build. If not provided, builds the most recent relevant commit. (min length: 40) (max length: 40) | (string) A string containing one or more references that resolve to commit sha to build. If not provided, builds the most recent relevant commit. (pattern: .*\${.*}.*)
       - `branch`: (multiple options) (string) Branch to build from. If `sha` is not provided, the latest commit of this branch will be built. Only supported by build services. Build services require either `branch` or `pullRequestId` field, but cannot be provided with both. | (string) A string containing one or more references that resolve to branch to build from. If `sha` is not provided, the latest commit of this branch will be built. Only supported by build services. Build services require either `branch` or `pullRequestId` field, but cannot be provided with both. (pattern: .*\${.*}.*)
       - `pullRequestId`: (multiple options) (integer) ID of a pull request to build from. If `sha` is not provided, the latest commit of this pull request will be built. Only supported by build services. Build services require either `branch` or `pullRequestId` field, but cannot be provided with both. | (string) A string containing one or more references that resolve to iD of a pull request to build from. If `sha` is not provided, the latest commit of this pull request will be built. Only supported by build services. Build services require either `branch` or `pullRequestId` field, but cannot be provided with both. (pattern: .*\${.*}.*)
       - `reuseExistingBuilds`: (boolean) If true, the build node will return an existing build if one is available for that commit. Otherwise, a new build will be created with every new preview environment. Defaults to `true`.
       - `buildRuleFallThroughHandling`: (string) Define handling if build rules do not match the specified commit (enum: fail, skip, useLastBuild)
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Build node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: JobRun)
     - `spec`: {object}
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
       - `runtimeEnvironment`: (multiple options) {object} | (string) (pattern: .*\${.*}.*)
       - `runtimeFiles`: {object}
       - `dockerSecretMounts`: {object}
       - `billing`: {object}
         - `deploymentPlan`: (multiple options) (string) The ID of the deployment plan override to use. (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to the ID of the deployment plan override to use. (pattern: .*\${.*}.*)
       - `deployment`: (multiple options) {object}
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
             - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
           - `internal`: {object}
             - `id`: (multiple options) (multiple options) (string) (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) | (string) A string containing one or more references that resolve to iD of the build service to deploy (pattern: .*\${.*}.*)
             - `branch`: (multiple options) (string) Branch to deploy | (string) A string containing one or more references that resolve to branch to deploy (pattern: .*\${.*}.*)
             - `buildSHA`: (multiple options) (multiple options) (string) A commit sha. (min length: 40) (max length: 40) | (string) Latest commit. (enum: latest) | (string) A string containing one or more references that resolve to commit SHA to deploy, or 'latest' to deploy the most recent commit (pattern: .*\${.*}.*)
             - `buildId`: (multiple options) (string) ID of the build that should be deployed | (string) A string containing one or more references that resolve to iD of the build that should be deployed (pattern: .*\${.*}.*) | {object}
           - `docker`: {object}
             - `configType`: (string) (required) Type of entrypoint & command override configuration (enum: default, customEntrypoint, customCommand, customEntrypointCustomCommand)
             - `customEntrypoint`: (string) Custom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`
           - `buildpack`: {object}
             - `configType`: (string) (required) Type of buildpack run configuration (enum: default, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommand)
             - `customProcess`: (string) Custom process which should be run. Required in case where `configType` is `customProcess`
             - `customEntrypoint`: (string) Custom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`
             - `customCommand`: (string) Custom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`
           - `storage`: {object}
             - `useHdbStorage`: (boolean)
             - `usePdSsdStorage`: (boolean)
             - `ephemeralStorage`: {object}
               - `storageSize`: (multiple options) (integer) Ephemeral storage per container in MB | (string) A string containing one or more references that resolve to ephemeral storage per container in MB (pattern: .*\${.*}.*)
             - `shmSize`: (multiple options) (integer) Configures the amount of available memory-backed disk space available to /dev/shm | (string) A string containing one or more references that resolve to configures the amount of available memory-backed disk space available to /dev/shm (pattern: .*\${.*}.*)
           - `external`: {object}
             - `imagePath`: (multiple options) (string) Image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: ^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$) | (string) A string containing one or more references that resolve to image to be deployed. When not deploying from Dockerhub the URL must be specified. (pattern: .*\${.*}.*)
             - `credentials`: (multiple options) (string) ID of the saved credentials to use to access this external image. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of the saved credentials to use to access this external image. (pattern: .*\${.*}.*)
       - `jobId`: (multiple options) (string) The ID of the job to run. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 52) | (string) A string containing one or more references that resolve to the ID of the job to run. (pattern: .*\${.*}.*)
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the JobRun node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: LoopWorkflow)
     - `spec`: {object}
       - `iterations`: (multiple options) [array of] (multiple options) {object} | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
       - `steps`: [array of] (undefined)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the LoopWorkflow node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Action)
     - `spec`: (multiple options) {object}
         - `kind`: (string) (required) The kind of action. (enum: Addon)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of action. (enum: restart)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `addonId`: (multiple options) (string) The id of the addon to restart. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the addon to restart. (pattern: .*\${.*}.*)
               - `timeoutDuration`: (multiple options) (integer) Timeout for the condition in seconds. This will fail the condition after the timeout has elapsed. | (string) A template reference that resolves to a timeout duration in seconds (pattern: .*\${.*}.*)
             - `condition`: (string) (enum: running) | {object}
         - `kind`: (string) (required) The kind of action. (enum: AddonBackup)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of action. (enum: restore)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `addonId`: (multiple options) (string) The id of the addon to restore a backup to. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the addon to restore a backup to. (pattern: .*\${.*}.*)
               - `backupId`: (multiple options) (string) The id of the backup to restore. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the backup to restore. (pattern: .*\${.*}.*)
               - `timeoutDuration`: (multiple options) (integer) Timeout for the condition in seconds. This will fail the condition after the timeout has elapsed. | (string) A template reference that resolves to a timeout duration in seconds (pattern: .*\${.*}.*)
             - `condition`: (string) (enum: success) | {object}
         - `kind`: (string) (required) The kind of action. (enum: Job)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of action. (enum: execute)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `jobId`: (multiple options) (string) The id of the job to run the command in. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the job to run the command in. (pattern: .*\${.*}.*)
               - `command`: (string) (required)
               - `shell`: (string)
               - `user`: (string)
               - `group`: (string) | {object}
         - `kind`: (string) (required) The kind of action. (enum: Service)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of action. (enum: restart)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `serviceId`: (multiple options) (string) The id of the service to restart. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the service to restart. (pattern: .*\${.*}.*)
               - `timeoutDuration`: (multiple options) (integer) Timeout for the condition in seconds. This will fail the condition after the timeout has elapsed. | (string) A template reference that resolves to a timeout duration in seconds (pattern: .*\${.*}.*)
             - `condition`: (string) (enum: running) | {object}
             - `type`: (string) (required) The type of action. (enum: execute)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `serviceId`: (multiple options) (string) The id of the service to run the command in. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the service to run the command in. (pattern: .*\${.*}.*)
               - `options`: {object}
                 - `dispatchOnly`: (boolean) Specify whether the command output should be awaited the node should succeed after having sent the command.
               - `command`: (string) (required)
               - `shell`: (string)
               - `user`: (string)
               - `group`: (string) | {object}
         - `kind`: (string) (required) The kind of action. (enum: VCS)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of action. (enum: createRepoFromSource)
             - `data`: {object}
               - `sourceData`: {object}
                 - `publicRepo`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `vcsService`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `oauthProvider`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) (min length: 24) (max length: 24) | (string) (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
               - `targetData`: {object}
                 - `name`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `description`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `privateRepo`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `context`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `folder`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) (min length: 24) (max length: 24) | (string) (pattern: .*\${.*}.*)
                 - `oauthProvider`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `vcsService`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) | (string) (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Action node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Condition)
     - `spec`: (multiple options) {object}
         - `kind`: (string) (required) The kind of condition. (enum: Addon)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: running)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `addonId`: (multiple options) (string) The id of the addon to monitor. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the id of the addon to monitor. (pattern: .*\${.*}.*)
               - `timeoutDuration`: (multiple options) (integer) Timeout for the condition in seconds. This will fail the condition after the timeout has elapsed. | (string) A template reference that resolves to a timeout duration in seconds (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: AddonBackup)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: success)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `addonId`: (multiple options) (string) The id of the addon to monitor. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the id of the addon to monitor. (pattern: .*\${.*}.*)
               - `backupId`: (multiple options) (string) The id of the backup to monitor. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the backup to monitor. (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: AddonImport)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: success)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `addonId`: (multiple options) (string) The id of the addon to monitor. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the id of the addon to monitor. (pattern: .*\${.*}.*)
               - `importId`: (multiple options) (string) The id of the import to monitor. (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to the id of the import to monitor. (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: Build)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: success)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `buildId`: (multiple options) (string) The id of the build to monitor. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the id of the build to monitor. (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: BYOCCluster)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: running)
             - `data`: {object}
               - `clusterId`: (multiple options) (string) The id of the cluster to monitor. (pattern: ^[a-z]-?[a-z0-9]+(-[a-z0-9]+)*$) (min length: 3) (max length: 20) | (string) A string containing one or more references that resolve to the id of the cluster to monitor. (pattern: .*\${.*}.*)
               - `timeoutDuration`: (multiple options) (integer) Timeout for the condition in seconds. This will fail the condition after the timeout has elapsed. | (string) A template reference that resolves to a timeout duration in seconds (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: JobRun)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: success)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `jobId`: (multiple options) (string) The id of the job to monitor. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the id of the job to monitor. (pattern: .*\${.*}.*)
               - `runId`: (multiple options) (string) The id of the job run to monitor. | (string) A string containing one or more references that resolve to the id of the job run to monitor. (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: Service)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: running)
             - `data`: {object}
               - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
               - `serviceId`: (multiple options) (string) The id of the service to monitor. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 54) | (string) A string containing one or more references that resolve to the id of the service to monitor. (pattern: .*\${.*}.*)
               - `timeoutDuration`: (multiple options) (integer) Timeout for the condition in seconds. This will fail the condition after the timeout has elapsed. | (string) A template reference that resolves to a timeout duration in seconds (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of condition. (enum: VCS)
         - `spec`: (multiple options) {object}
             - `type`: (string) (required) The type of condition. (enum: createRepoFromSourceSuccess)
             - `data`: {object}
               - `trackerId`: (multiple options) (string) The tracker id outputted from the 'createRepoFromSource' action to monitor. | (string) A string containing one or more references that resolve to the tracker id outputted from the 'createRepoFromSource' action to monitor. (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Condition node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Template)
     - `spec`: (multiple options) {object}
         - `kind`: (string) (required) The kind of template. (enum: ResourceTemplate)
         - `spec`: {object} | {object}
         - `kind`: (string) (required) The kind of template. (enum: ReleaseFlow)
         - `spec`: {object} | {object}
         - `kind`: (string) (required) The kind of template. (enum: PreviewEnv)
         - `spec`: {object}
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Template node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Message)
     - `spec`: (multiple options) {object}
         - `kind`: (string) (required) The kind of message to send. (enum: VCS)
         - `spec`: {object}
           - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
           - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
           - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
           - `repoUrl`: (multiple options) (string) URL of the Git repo to send this message to. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo to send this message to. (pattern: .*\${.*}.*)
           - `pullRequestId`: (multiple options) (string) The ID of the pull request to comment on. | (string) A string containing one or more references that resolve to the ID of the pull request to comment on. (pattern: .*\${.*}.*)
           - `message`: (multiple options) (string) The rich text message to comment. | (string) A string containing one or more references that resolve to the rich text message to comment. (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of message to send. (enum: SLACK)
         - `spec`: {object}
           - `webhookUrl`: (multiple options) (string) The Slack webhook URL to send messages to. | (string) A string containing one or more references that resolve to the Slack webhook URL to send messages to. (pattern: .*\${.*}.*)
           - `integrationInternalId`: (multiple options) (string) The ID of an existing Slack integration to use. (pattern: ^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the ID of an existing Slack integration to use. (pattern: .*\${.*}.*)
           - `message`: (multiple options) (string) The message content to send to Slack. Supports markdown formatting. | (string) A string containing one or more references that resolve to the message content to send to Slack. Supports markdown formatting. (pattern: .*\${.*}.*)
           - `suppressLink`: (multiple options) (boolean) Prevent link to template run being attached to the message | (string) A string containing one or more references that resolve to prevent link to template run being attached to the message (pattern: .*\${.*}.*) | {object}
         - `kind`: (string) (required) The kind of message to send. (enum: RAW_WEBHOOK)
         - `spec`: {object}
           - `webhookUrl`: (multiple options) (string) The webhook URL to send messages to. | (string) A string containing one or more references that resolve to the webhook URL to send messages to. (pattern: .*\${.*}.*)
           - `message`: (multiple options) (string) The message content to send to the webhook. | (string) A string containing one or more references that resolve to the message content to send to the webhook. (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Message node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: LoopData)
     - `spec`: {object}
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the LoopData node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: SecretInheritance)
     - `spec`: {object}
       - `configs`: (multiple options) [array of] (multiple options) (string) (pattern: ^[A-Za-z0-9-]+$) | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
       - `secrets`: (multiple options) [array of] (multiple options) (string) (pattern: ^[A-Za-z0-9-]+$) | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
       - `requiredKeys`: (multiple options) [array of] (multiple options) (string) | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
       - `requiredFiles`: (multiple options) [array of] (multiple options) (string) | (string) (pattern: .*\${.*}.*) | (string) (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the SecretInheritance node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: EgressIp)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the egress IP. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the egress IP. (pattern: .*\${.*}.*)
       - `description`: (string) The description of the egress IP. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `spec`: {object}
         - `provisioningMode`: (multiple options) (string) Provisioning mode for the egress IP: shared (uses pre-provisioned infrastructure) or dedicated (enum: shared, dedicated) | (string) A string containing one or more references that resolve to provisioning mode for the egress IP: shared (uses pre-provisioned infrastructure) or dedicated (pattern: .*\${.*}.*)
         - `region`: (multiple options) (string) Target region name (pattern: ^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$) | (string) A string containing one or more references that resolve to target region name (pattern: .*\${.*}.*)
         - `mode`: (multiple options) (string) Mode: include (only these projects/resources use this egress IP) or exclude (all except these use this egress IP) (enum: include, exclude) | (string) A string containing one or more references that resolve to mode: include (only these projects/resources use this egress IP) or exclude (all except these use this egress IP) (pattern: .*\${.*}.*)
         - `rules`: (multiple options) [array of] {object}
               - `id`: (multiple options) (string) Project internal ID | (string) A string containing one or more references that resolve to project internal ID (pattern: .*\${.*}.*)
               - `restrictions`: {object}
                 - `enabled`: (boolean) (required) Whether restrictions scoping the rule to specific resources should be applied.
                 - `resources`: [array of] {object}
                     - `type`: (multiple options) (string) Resource type (enum: service, job) | (string) A string containing one or more references that resolve to resource type (pattern: .*\${.*}.*)
                     - `id`: (multiple options) (string) Resource internal ID | (string) A string containing one or more references that resolve to resource internal ID (pattern: .*\${.*}.*) | (string) A string containing one or more references that resolve to egress IP rules - array of projects the rule applies to (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the EgressIp node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: LoadBalancer)
     - `spec`: {object}
       - `name`: (multiple options) (string) The name of the load balancer. (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 39) | (string) A string containing one or more references that resolve to the name of the load balancer. (pattern: .*\${.*}.*)
       - `description`: (string) The description of the load balancer. (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `spec`: {object}
         - `type`: (multiple options) (string) Protocol type for the load balancer (enum: tcp, udp) | (string) A string containing one or more references that resolve to protocol type for the load balancer (pattern: .*\${.*}.*)
         - `target`: {object}
           - `type`: (multiple options) (string) Target type for the load balancer (enum: region, cluster) | (string) A string containing one or more references that resolve to target type for the load balancer (pattern: .*\${.*}.*)
           - `targetId`: (multiple options) (multiple options) (string) Target region name (pattern: ^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$) | (string) Target cluster internal ID (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to id of the loadbalancer target (pattern: .*\${.*}.*)
         - `ports`: [array of] {object}
             - `id`: (multiple options) (string) Unique port identifier (pattern: ^port-\d+$) | (string) A string containing one or more references that resolve to unique port identifier (pattern: .*\${.*}.*)
             - `port`: (multiple options) (string) Port number or range (single port, multiple comma-separated, or range with dash) | (string) A string containing one or more references that resolve to port number or range (single port, multiple comma-separated, or range with dash) (pattern: .*\${.*}.*)
             - `backends`: [array of] {object}
                 - `id`: (multiple options) (string) Backend reference in format {projectId}/{nfObjectId} (pattern: ^[a-zA-Z0-9-]+\/[a-zA-Z0-9-]+$) | (string) A string containing one or more references that resolve to backend reference in format {projectId}/{nfObjectId} (pattern: .*\${.*}.*)
                 - `type`: (multiple options) (string) Backend type (service or addon) (enum: service, addon) | (string) A string containing one or more references that resolve to backend type (service or addon) (pattern: .*\${.*}.*)
                 - `port`: (multiple options) (integer) Backend port number | (string) A string containing one or more references that resolve to backend port number (pattern: .*\${.*}.*)
                 - `weight`: (multiple options) (integer) Traffic weight for this backend | (string) A string containing one or more references that resolve to traffic weight for this backend (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the LoadBalancer node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: OpenTofu)
     - `spec`: {object}
       - `stateKey`: (string) (required) Key to track state, must not be changed after first run.
       - `isolateResourcesPerEnvironment`: (boolean) Each preview environment will have its own isolated OpenTofu state.
       - `usePlan`: (boolean) Require approval of a plan before applying
       - `spec`: {object}
         - `provider`: {object}
           - `aws`: {object}
             - `region`: (string) (required)
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
           - `google`: {object}
             - `project`: (string) (required)
             - `region`: (string)
             - `zone`: (string)
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
           - `cloudflare`: {object}
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
           - `aiven`: {object}
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
           - `backblaze`: {object}
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
           - `azure`: {object}
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
           - `akamai`: {object}
             - `integrationId`: (multiple options) (string) Integration to use for this job. (pattern: ^((org|team)\/)?[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$) | (string) A string containing one or more references that resolve to integration to use for this job. (pattern: .*\${.*}.*)
         - `resource`: {object}
         - `output`: {object}
     - `condition`: (string) (enum: success)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the OpenTofu node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: WorkflowTemplate)
     - `spec`: {object}
       - `apiVersion`: (string) (required) The version of the Northflank API to run the template against. (enum: v1.2)
       - `arguments`: {object}
       - `gitops`: {object}
         - `vcsService`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
         - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
         - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
         - `vcsLinkId`: (string) Legacy key. Please used accountLogin instead.
         - `repoUrl`: (string) (required) URL of the Git repo to sync the file with. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
         - `branch`: (string) (required) The name of the branch to use.
         - `filePath`: (string) (required) The file path in the repository. If using an existing file, it should be in JSON format. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
       - `$schema`: (string)
       - `name`: (string) (required) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100)
       - `description`: (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200)
       - `spec`: (undefined)
       - `richInputs`: [array of] (undefined)
       - `triggers`: [array of] (multiple options) {object}
             - `kind`: (string) (required) (enum: vcs-push)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `branchNamePatterns`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `commitMessageFlags`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `flags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `filePaths`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `allowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `paths`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: vcs-pr)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `branchNamePatterns`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `commitMessageFlags`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `flags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `filePaths`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `allowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `paths`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
               - `ignoreDrafts`: (multiple options) (boolean) If `true`, draft pull requests from this repo will not trigger the template. | (string) A string containing one or more references that resolve to if `true`, draft pull requests from this repo will not trigger the template. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: webhook)
             - `spec`: {object}
               - `token`: (string) (required)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: vcs-release)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: vcs-pr-label)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `labelNamePatterns`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `branchNamePatterns`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `names`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `commitMessageFlags`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `flags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `filePaths`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `allowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `paths`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
               - `ignoreDrafts`: (multiple options) (boolean) If `true`, draft pull requests from this repo will not trigger the template. | (string) A string containing one or more references that resolve to if `true`, draft pull requests from this repo will not trigger the template. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: cron)
             - `spec`: {object}
               - `cron`: (string) (required) A cron expression that defines the schedule on which the template will be executed.
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string)
       - `options`: {object}
         - `autorun`: (boolean) If true, the template will run automatically whenever a change is made to it.
         - `concurrencyPolicy`: (string) Defines the concurrency behaviour of the template with respect to parallel runs. (enum: allow, queue, forbid, latest, replace)
       - `teardownSpec`: {object}
         - `spec`: (undefined) (required) The root node of the teardown workflow.
         - `failurePolicy`: (string) Controls what happens if the teardown spec fails or times out. `ignore` (default) — proceed with resource deletion regardless. `block` — halt deletion and set the environment to `teardown_failed` (enum: ignore, block)
       - `argumentOverrides`: {object}
       - `stageId`: (multiple options) (string) ID of the stage (pattern: ^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) A string containing one or more references that resolve to iD of the stage (pattern: .*\${.*}.*)
       - `projectId`: (multiple options) (string) ID of parent project | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the WorkflowTemplate node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: PreviewBlueprint)
     - `spec`: {object}
       - `apiVersion`: (string) (required) The version of the Northflank API to run the template against. (enum: v1.2)
       - `arguments`: {object}
       - `gitops`: {object}
         - `vcsService`: (string) (required) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure)
         - `selfHostedVcsId`: (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$)
         - `accountLogin`: (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.
         - `vcsLinkId`: (string) Legacy key. Please used accountLogin instead.
         - `repoUrl`: (string) (required) URL of the Git repo to sync the file with. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$)
         - `branch`: (string) (required) The name of the branch to use.
         - `filePath`: (string) (required) The file path in the repository. If using an existing file, it should be in JSON format. (pattern: ^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$)
       - `$schema`: (string)
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*$) (min length: 3) (max length: 100) | (string) (pattern: .*\${.*}.*)
       - `description`: (multiple options) (string) (pattern: ^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$) (max length: 200) | (string) (pattern: .*\${.*}.*)
       - `spec`: (undefined)
       - `triggers`: [array of] (multiple options) {object}
             - `kind`: (string) (required) (enum: vcs-push)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `branchNamePatterns`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `commitMessageFlags`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `flags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `filePaths`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `allowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `paths`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: vcs-pr)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `branchNamePatterns`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `commitMessageFlags`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `flags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `filePaths`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `allowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `paths`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
               - `ignoreDrafts`: (multiple options) (boolean) If `true`, draft pull requests from this repo will not trigger the template. | (string) A string containing one or more references that resolve to if `true`, draft pull requests from this repo will not trigger the template. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: webhook)
             - `spec`: {object}
               - `token`: (string) (required)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: vcs-release)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: vcs-pr-label)
             - `spec`: {object}
               - `vcs`: {object}
                 - `vcsService`: (multiple options) (string) The VCS provider to use. (enum: bitbucket, gitlab, github, self-hosted, azure) | (string) A string containing one or more references that resolve to the VCS provider to use. (pattern: .*\${.*}.*)
                 - `selfHostedVcsId`: (multiple options) (string) If projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: ^([A-Za-z0-9-]+)|([0-9a-f]{24})$) | (string) A string containing one or more references that resolve to if projectType is self-hosted, the ID of the self-hosted vcs to use. (pattern: .*\${.*}.*)
                 - `accountLogin`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name. (pattern: .*\${.*}.*)
                 - `vcsLinkId`: (multiple options) (string) By default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. | (string) A string containing one or more references that resolve to by default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID. (pattern: .*\${.*}.*)
                 - `repoUrl`: (multiple options) (string) URL of the Git repo that will trigger the template. (pattern: ^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$) | (string) A string containing one or more references that resolve to uRL of the Git repo that will trigger the template. (pattern: .*\${.*}.*)
               - `labelNamePatterns`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `branchNamePatterns`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `names`: [array of] (multiple options) (string) (pattern: ^[a-zA-Z/*0-9%\-.#_!'();,&=+]*$) | (string) (pattern: .*\${.*}.*)
               - `commitMessageFlags`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `flags`: [array of] (multiple options) (string) A commit ignore flag. (max length: 72) | (string) A string containing one or more references that resolve to a commit ignore flag. (pattern: .*\${.*}.*)
               - `filePaths`: {object}
                 - `enabled`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `allowList`: (multiple options) (boolean) | (string) (pattern: .*\${.*}.*)
                 - `paths`: [array of] (multiple options) (string) A path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (max length: 260) | (string) A string containing one or more references that resolve to a path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`. (pattern: .*\${.*}.*)
               - `ignoreDrafts`: (multiple options) (boolean) If `true`, draft pull requests from this repo will not trigger the template. | (string) A string containing one or more references that resolve to if `true`, draft pull requests from this repo will not trigger the template. (pattern: .*\${.*}.*)
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string) | {object}
             - `kind`: (string) (required) (enum: cron)
             - `spec`: {object}
               - `cron`: (string) (required) A cron expression that defines the schedule on which the template will be executed.
             - `ref`: (string) A reference that can be used to access the output of this trigger in the template.
             - `id`: (string)
       - `options`: {object}
         - `concurrencyPolicy`: (string) Defines the concurrency behaviour of the template with respect to parallel runs. (enum: allow, queue, forbid, latest, replace)
         - `nameFormat`: (string) The format of the automatically generated preview name. This is a parsed ref string.
         - `prefixName`: (boolean) If true, the preview name will default to the front of the resource name.
         - `useBranchContents`: (boolean) If true, and gitops is enabled, the preview will run based on the contents of the branch that triggered it, rather than the set branch.
         - `schedule`: {object}
           - `mon`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
           - `tue`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
           - `wed`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
           - `thu`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
           - `fri`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
           - `sat`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
           - `sun`: {object}
             - `startTime`: (integer)
             - `endTime`: (integer)
         - `expiry`: {object}
           - `previewLifetime`: (integer) If set, preview environments will be automatically deleted after this many minutes since their last update.
           - `resetOnUpdate`: (boolean) If `true`, the expiry time for an existing preview will be reset when it is ran again.
         - `autorun`: (boolean) If true, the template will run automatically whenever a change is made to it.
       - `argumentOverrides`: {object}
       - `teardownSpec`: {object}
         - `spec`: (undefined) (required) The root node of the teardown workflow.
         - `failurePolicy`: (string) Controls what happens if the teardown spec fails or times out. `ignore` (default) — proceed with resource deletion regardless. `block` — halt deletion and set the environment to `teardown_failed` (enum: ignore, block)
       - `projectId`: (multiple options) (string) ID of parent project | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the PreviewBlueprint node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: Approval)
     - `spec`: {object}
       - `amount`: (integer) (required)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the Approval node. | {object}
     - `ref`: (string) An identifier that can used to reference the output of this node later in the template.
     - `settings`: {object}
       - `maxAttempts`: (integer) The maximum number of attempts before the node is marked as `failure`.
       - `backoff`: {object}
         - `type`: (string) The type of backoff to use. If set to `fixed`, the node will wait the same amount of time between attempts. (enum: fixed)
         - `delay`: (integer) The time between attempts in seconds.
     - `kind`: (string) (required) The kind of node. (enum: ReleaseStage)
     - `spec`: {object}
       - `name`: (multiple options) (string) (pattern: ^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$) (min length: 3) (max length: 20) | (string) (pattern: .*\${.*}.*)
       - `position`: (integer) (required)
       - `projectId`: (multiple options) (string) ID of parent project (pattern: ^[A-Za-z0-9-]+$) | (string) A string containing one or more references that resolve to iD of parent project (pattern: .*\${.*}.*)
     - `skipNodeExecution`: (multiple options) (string) (enum: true, false) | (string) (pattern: .*\${.*}.*)
     - `response`: {object}
       - `status`: (string) (required) The status of the node. (enum: waiting, invalid, failure, retrying, success, aborted, aborting, skipped, async_wait, approval_wait, unknown)
       - `error`: (multiple options) {object}
           - `code`: (integer) (required)
           - `message`: (string) (required) | (undefined)
       - `retries`: {object}
         - `attempts`: (integer) (required) The current number of attempts that have been made by this node.
         - `maxAttempts`: (integer) (required) The maximum number of attempts before the node is marked as `failure`.
         - `timestamp`: (integer) (required) The timestamp of the most recent attempt.
         - `nextAttempt`: (integer) The timestamp of the next attempt.
         - `initialCheckTime`: (integer) The timestamp of the initial condition check.
       - `startTime`: (integer) The timestamp of the initial attempt.
       - `endTime`: (integer) The timestamp of the final attempt.
       - `data`: (undefined) The response data of the ReleaseStage node.
  - `refs`: {object}
  - `id`: (string) (required) Identifier for the template run
  - `templateId`: (string) (required) Identifier for the template
  - `status`: (string) (required) Status of the template run (enum: pending, running, success, failure, aborted, aborting, queued, unknown, skipped, waiting, retrying, async_wait, approval_wait)
  - `concluded`: (boolean) (required) Whether the run has concluded (aborted, success, failed)
  - `createdAt`: (string) (required) Timestamp the run was created at. (format: date-time)
  - `updatedAt`: (string) (required) Timestamp the run was last updated at. (format: date-time)

## API reference

POST /v1/templates/{templateId}/runs

POST /v1/teams/{teamId}/templates/{templateId}/runs

### Example request

Request body

```curl
curl --header "Content-Type: application/json" \
  --header "Authorization: Bearer NORTHFLANK_API_TOKEN" \
  --request POST \
  --data 'undefined' \
  https://api.northflank.com/v1/templates/{templateId}/runs
```

```javascript
const payload = undefined

const response = await fetch('https://api.northflank.com/v1/templates/{templateId}/runs', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': `Bearer ${NORTHFLANK_API_TOKEN}`
  },
  body: JSON.stringify(payload)
})

const json = await response.json()
console.log(json)
```

```python
import requests

url = "https://api.northflank.com/v1/templates/{templateId}/runs"

payload = undefined
headers = {"Content-Type": "application/json", "Authorization": "Bearer NORTHFLANK_API_TOKEN"}

response = requests.request("POST", url, headers = headers, json = payload)

print(response.json())
```

```go
package main

import (
  "bytes"
  "fmt"
  "io/ioutil"
  "net/http"
)

func main() {
  url := "https://api.northflank.com/v1/templates/{templateId}/runs"

  var jsonStr = []byte(`undefined`)
  req, err := http.NewRequest("POST", url, bytes.NewBuffer(jsonStr))
  req.Header.Set("Content-Type", "application/json")
  req.Header.Set("Authorization", "Bearer NORTHFLANK_API_TOKEN")

  client := &http.Client{}
  resp, err := client.Do(req)
  if err != nil {
    panic(err)
  }
  defer resp.Body.Close()

  fmt.Println("Response status:", resp.Status)
  fmt.Println("Response headers:", resp.Header)
  body, _ := ioutil.ReadAll(resp.Body)
  fmt.Println("Response body:", string(body))
}
```

### Example Response

200 OK: Details about the newly create template run.

```json
{
  "data": {
    "name": "Example Template",
    "description": "This is a sample template.",
    "apiVersion": "v1.2",
    "options": {
      "autorun": false,
      "concurrencyPolicy": "allow"
    },
    "gitops": {
      "vcsService": "github",
      "accountLogin": "github-user",
      "repoUrl": "https://github.com/northflank-examples/remix-postgres-redis-demo",
      "branch": "main",
      "filePath": "/Dockerfile"
    },
    "spec": {
      "settings": {
        "maxAttempts": 3,
        "backoff": {
          "type": "fixed",
          "delay": 60
        }
      },
      "kind": "Workflow",
      "response": {
        "status": "success",
        "retries": {
          "attempts": 1,
          "maxAttempts": 3,
          "timestamp": 1657296265
        },
        "startTime": 1657296265,
        "endTime": 1657296265
      }
    },
    "id": "3dd592f6-ce63-45ee-acf8-13dc5ec5235c",
    "templateId": "example-template",
    "status": "success",
    "concluded": true,
    "createdAt": "2021-01-01 12:00:00.000Z",
    "updatedAt": "2021-01-01 12:00:00.000Z"
  }
}
```

## CLI reference

$ northflank run template

Options:

- `--templateId <templateId>`: ID of the template

- `-f --file <file>`: Path to a JSON/YAML resource definition file

- `-i --input <definition>`: JSON/YAML resource definition string (takes precedence over --file)

- `--verbose `: Verbose output

- `--quiet `: No console output

- `-o --output <format>`: Output formatting 

```json
undefined
```

### Example Response

 Details about the newly create template run.

```json
{
  "name": "Example Template",
  "description": "This is a sample template.",
  "apiVersion": "v1.2",
  "options": {
    "autorun": false,
    "concurrencyPolicy": "allow"
  },
  "gitops": {
    "vcsService": "github",
    "accountLogin": "github-user",
    "repoUrl": "https://github.com/northflank-examples/remix-postgres-redis-demo",
    "branch": "main",
    "filePath": "/Dockerfile"
  },
  "spec": {
    "settings": {
      "maxAttempts": 3,
      "backoff": {
        "type": "fixed",
        "delay": 60
      }
    },
    "kind": "Workflow",
    "response": {
      "status": "success",
      "retries": {
        "attempts": 1,
        "maxAttempts": 3,
        "timestamp": 1657296265
      },
      "startTime": 1657296265,
      "endTime": 1657296265
    }
  },
  "id": "3dd592f6-ce63-45ee-acf8-13dc5ec5235c",
  "templateId": "example-template",
  "status": "success",
  "concluded": true,
  "createdAt": "2021-01-01 12:00:00.000Z",
  "updatedAt": "2021-01-01 12:00:00.000Z"
}
```

## JavaScript client reference

### Example request

Request body

```javascript
await apiClient.run.template({
  parameters: {
    "templateId": "example-template"
  }    
});
```

### Example Response

 Details about the newly create template run.

```json
{
  "data": {
    "name": "Example Template",
    "description": "This is a sample template.",
    "apiVersion": "v1.2",
    "options": {
      "autorun": false,
      "concurrencyPolicy": "allow"
    },
    "gitops": {
      "vcsService": "github",
      "accountLogin": "github-user",
      "repoUrl": "https://github.com/northflank-examples/remix-postgres-redis-demo",
      "branch": "main",
      "filePath": "/Dockerfile"
    },
    "spec": {
      "settings": {
        "maxAttempts": 3,
        "backoff": {
          "type": "fixed",
          "delay": 60
        }
      },
      "kind": "Workflow",
      "response": {
        "status": "success",
        "retries": {
          "attempts": 1,
          "maxAttempts": 3,
          "timestamp": 1657296265
        },
        "startTime": 1657296265,
        "endTime": 1657296265
      }
    },
    "id": "3dd592f6-ce63-45ee-acf8-13dc5ec5235c",
    "templateId": "example-template",
    "status": "success",
    "concluded": true,
    "createdAt": "2021-01-01 12:00:00.000Z",
    "updatedAt": "2021-01-01 12:00:00.000Z"
  },
  "rawResponse": "...",
  "request": "...",
  "error": "..."
}
```

Previous: [Delete template](/docs/v1/api//team/templates/delete-template)

Next: [List template runs](/docs/v1/api//team/templates/list-template-runs)