addedInput schema / allOf
Added value: +[
+ {
+ "if": {
+ "properties": {
+ "type": {
+ "enum": [
+ "static_site"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "then": {
+ "properties": {
+ "serviceDetails": {
+ "additionalProperties": false,
+ "properties": {
+ "buildCommand": {
+ "type": "string"
+ },
+ "headers": {
+ "items": {
+ "properties": {
+ "name": {
+ "description": "Header name",
+ "example": "Cache-Control",
+ "type": "string"
+ },
+ "path": {
+ "description": "The request path to add the header to. Wildcards will cause headers to be applied to all matching paths.",
+ "example": "/static/*",
+ "type": "string"
+ },
+ "value": {
+ "description": "Header value",
+ "example": "public, max-age=604800",
+ "type": "string"
+ }
+ },
+ "required": [
+ "path",
+ "name",
+ "value"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "ipAllowList": {
+ "items": {
+ "properties": {
+ "cidrBlock": {
+ "type": "string"
+ },
+ "description": {
+ "description": "User-provided description of the CIDR block",
+ "type": "string"
+ }
+ },
+ "required": [
+ "cidrBlock",
+ "description"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "previews": {
+ "properties": {
+ "generation": {
+ "default": "off",
+ "description": "Defaults to \"off\"",
+ "enum": [
+ "off",
+ "manual",
+ "automatic"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "publishPath": {
+ "description": "Defaults to \"public\"",
+ "type": "string"
+ },
+ "pullRequestPreviewsEnabled": {
+ "default": "no",
+ "deprecated": true,
+ "description": "This field has been deprecated. previews.generation should be used in its place.",
+ "enum": [
+ "yes",
+ "no"
+ ],
+ "type": "string"
+ },
+ "renderSubdomainPolicy": {
+ "description": "Controls whether render.com subdomains are available for the service",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string"
+ },
+ "routes": {
+ "items": {
+ "properties": {
+ "destination": {
+ "example": "/foo/:bar",
+ "type": "string"
+ },
+ "priority": {
+ "description": "Redirect and Rewrite Rules are applied in priority order starting at 0. Defaults to last in the priority list.",
+ "type": "integer"
+ },
+ "source": {
+ "example": "/:bar/foo",
+ "type": "string"
+ },
+ "type": {
+ "enum": [
+ "redirect",
+ "rewrite"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "source",
+ "destination"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ }
+ },
+ "title": "staticSiteDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "type": {
+ "enum": [
+ "web_service"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "then": {
+ "properties": {
+ "serviceDetails": {
+ "additionalProperties": false,
+ "allOf": [
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "docker"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "properties": {
+ "dockerCommand": {
+ "type": "string"
+ },
+ "dockerContext": {
+ "type": "string"
+ },
+ "dockerfilePath": {
+ "description": "Defaults to \"./Dockerfile\"",
+ "type": "string"
+ },
+ "registryCredentialId": {
+ "type": "string"
+ }
+ },
+ "title": "dockerDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "description": "Fields for native environment (runtime) services",
+ "properties": {
+ "buildCommand": {
+ "type": "string"
+ },
+ "startCommand": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "buildCommand",
+ "startCommand"
+ ],
+ "title": "nativeEnvironmentDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ }
+ ],
+ "properties": {
+ "autoscaling": {
+ "properties": {
+ "criteria": {
+ "properties": {
+ "cpu": {
+ "properties": {
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "percentage": {
+ "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "percentage"
+ ],
+ "type": "object"
+ },
+ "memory": {
+ "properties": {
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "percentage": {
+ "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "percentage"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "cpu",
+ "memory"
+ ],
+ "type": "object"
+ },
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "max": {
+ "description": "The maximum number of instances for the service",
+ "type": "integer"
+ },
+ "min": {
+ "description": "The minimum number of instances for the service",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "min",
+ "max",
+ "criteria"
+ ],
+ "type": "object"
+ },
+ "disk": {
+ "properties": {
+ "mountPath": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "sizeGB": {
+ "description": "Defaults to 1",
+ "minimum": 1,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "name",
+ "mountPath"
+ ],
+ "type": "object"
+ },
+ "env": {
+ "deprecated": true,
+ "description": "This field has been deprecated, runtime should be used in its place.",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ },
+ "envSpecificDetails": {
+ "description": "Selected by `runtime`: `docker` → dockerDetailsPOST, `elixir`/`go`/`node`/`python`/`ruby`/`rust` → nativeEnvironmentDetailsPOST. The matching schema is applied by this object's `allOf` rules, where each branch's fields are listed; sending a field from another branch is rejected.",
+ "type": "object"
+ },
+ "healthCheckPath": {
+ "type": "string"
+ },
+ "ipAllowList": {
+ "items": {
+ "properties": {
+ "cidrBlock": {
+ "type": "string"
+ },
+ "description": {
+ "description": "User-provided description of the CIDR block",
+ "type": "string"
+ }
+ },
+ "required": [
+ "cidrBlock",
+ "description"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "maintenanceMode": {
+ "properties": {
+ "enabled": {
+ "type": "boolean"
+ },
+ "uri": {
+ "description": "The page to be served when [maintenance mode](https://render.com/docs/maintenance-mode) is enabled. When empty, the default maintenance mode page is served.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "enabled",
+ "uri"
+ ],
+ "type": "object"
+ },
+ "maxShutdownDelaySeconds": {
+ "default": 30,
+ "description": "The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal.",
+ "maximum": 300,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "numInstances": {
+ "description": "Defaults to 1",
+ "minimum": 1,
+ "type": "integer"
+ },
+ "plan": {
+ "default": "starter",
+ "description": "The instance type to use. If omitted, defaults to `starter` when creating a new service.",
+ "enum": [
+ "starter",
+ "starter_plus",
+ "standard",
+ "standard_plus",
+ "pro",
+ "pro_plus",
+ "pro_max",
+ "pro_ultra",
+ "free",
+ "custom",
+ "starter_legacy",
+ "standard_legacy",
+ "standard_plus_legacy",
+ "pro_legacy",
+ "pro_plus_legacy"
+ ],
+ "example": "starter",
+ "type": "string"
+ },
+ "preDeployCommand": {
+ "type": "string"
+ },
+ "previews": {
+ "properties": {
+ "generation": {
+ "default": "off",
+ "description": "Defaults to \"off\"",
+ "enum": [
+ "off",
+ "manual",
+ "automatic"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "pullRequestPreviewsEnabled": {
+ "default": "no",
+ "deprecated": true,
+ "description": "This field has been deprecated. previews.generation should be used in its place.",
+ "enum": [
+ "yes",
+ "no"
+ ],
+ "type": "string"
+ },
+ "region": {
+ "default": "oregon",
+ "description": "Defaults to \"oregon\"",
+ "enum": [
+ "frankfurt",
+ "oregon",
+ "ohio",
+ "singapore",
+ "virginia"
+ ],
+ "type": "string"
+ },
+ "renderSubdomainPolicy": {
+ "description": "Controls whether render.com subdomains are available for the service",
+ "enum": [
+ "enabled",
+ "disabled"
+ ],
+ "type": "string"
+ },
+ "runtime": {
+ "description": "Runtime",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "runtime"
+ ],
+ "title": "webServiceDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "type": {
+ "enum": [
+ "private_service"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "then": {
+ "properties": {
+ "serviceDetails": {
+ "additionalProperties": false,
+ "allOf": [
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "docker"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "properties": {
+ "dockerCommand": {
+ "type": "string"
+ },
+ "dockerContext": {
+ "type": "string"
+ },
+ "dockerfilePath": {
+ "description": "Defaults to \"./Dockerfile\"",
+ "type": "string"
+ },
+ "registryCredentialId": {
+ "type": "string"
+ }
+ },
+ "title": "dockerDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "description": "Fields for native environment (runtime) services",
+ "properties": {
+ "buildCommand": {
+ "type": "string"
+ },
+ "startCommand": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "buildCommand",
+ "startCommand"
+ ],
+ "title": "nativeEnvironmentDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ }
+ ],
+ "properties": {
+ "autoscaling": {
+ "properties": {
+ "criteria": {
+ "properties": {
+ "cpu": {
+ "properties": {
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "percentage": {
+ "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "percentage"
+ ],
+ "type": "object"
+ },
+ "memory": {
+ "properties": {
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "percentage": {
+ "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "percentage"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "cpu",
+ "memory"
+ ],
+ "type": "object"
+ },
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "max": {
+ "description": "The maximum number of instances for the service",
+ "type": "integer"
+ },
+ "min": {
+ "description": "The minimum number of instances for the service",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "min",
+ "max",
+ "criteria"
+ ],
+ "type": "object"
+ },
+ "disk": {
+ "properties": {
+ "mountPath": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "sizeGB": {
+ "description": "Defaults to 1",
+ "minimum": 1,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "name",
+ "mountPath"
+ ],
+ "type": "object"
+ },
+ "env": {
+ "deprecated": true,
+ "description": "This field has been deprecated, runtime should be used in its place.",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ },
+ "envSpecificDetails": {
+ "description": "Selected by `runtime`: `docker` → dockerDetailsPOST, `elixir`/`go`/`node`/`python`/`ruby`/`rust` → nativeEnvironmentDetailsPOST. The matching schema is applied by this object's `allOf` rules, where each branch's fields are listed; sending a field from another branch is rejected.",
+ "type": "object"
+ },
+ "maxShutdownDelaySeconds": {
+ "default": 30,
+ "description": "The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal.",
+ "maximum": 300,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "numInstances": {
+ "default": 1,
+ "description": "Defaults to 1",
+ "minimum": 1,
+ "type": "integer"
+ },
+ "plan": {
+ "default": "starter",
+ "description": "Defaults to `starter` when creating a new database.",
+ "enum": [
+ "starter",
+ "standard",
+ "pro",
+ "pro_plus",
+ "pro_max",
+ "pro_ultra"
+ ],
+ "type": "string"
+ },
+ "preDeployCommand": {
+ "type": "string"
+ },
+ "previews": {
+ "properties": {
+ "generation": {
+ "default": "off",
+ "description": "Defaults to \"off\"",
+ "enum": [
+ "off",
+ "manual",
+ "automatic"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "pullRequestPreviewsEnabled": {
+ "default": "no",
+ "deprecated": true,
+ "description": "This field has been deprecated. previews.generation should be used in its place.",
+ "enum": [
+ "yes",
+ "no"
+ ],
+ "type": "string"
+ },
+ "region": {
+ "default": "oregon",
+ "description": "Defaults to \"oregon\"",
+ "enum": [
+ "frankfurt",
+ "oregon",
+ "ohio",
+ "singapore",
+ "virginia"
+ ],
+ "type": "string"
+ },
+ "runtime": {
+ "description": "Runtime",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "runtime"
+ ],
+ "title": "privateServiceDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "type": {
+ "enum": [
+ "background_worker"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "then": {
+ "properties": {
+ "serviceDetails": {
+ "additionalProperties": false,
+ "allOf": [
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "docker"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "properties": {
+ "dockerCommand": {
+ "type": "string"
+ },
+ "dockerContext": {
+ "type": "string"
+ },
+ "dockerfilePath": {
+ "description": "Defaults to \"./Dockerfile\"",
+ "type": "string"
+ },
+ "registryCredentialId": {
+ "type": "string"
+ }
+ },
+ "title": "dockerDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "description": "Fields for native environment (runtime) services",
+ "properties": {
+ "buildCommand": {
+ "type": "string"
+ },
+ "startCommand": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "buildCommand",
+ "startCommand"
+ ],
+ "title": "nativeEnvironmentDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ }
+ ],
+ "properties": {
+ "autoscaling": {
+ "properties": {
+ "criteria": {
+ "properties": {
+ "cpu": {
+ "properties": {
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "percentage": {
+ "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "percentage"
+ ],
+ "type": "object"
+ },
+ "memory": {
+ "properties": {
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "percentage": {
+ "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "percentage"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "cpu",
+ "memory"
+ ],
+ "type": "object"
+ },
+ "enabled": {
+ "default": false,
+ "type": "boolean"
+ },
+ "max": {
+ "description": "The maximum number of instances for the service",
+ "type": "integer"
+ },
+ "min": {
+ "description": "The minimum number of instances for the service",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "enabled",
+ "min",
+ "max",
+ "criteria"
+ ],
+ "type": "object"
+ },
+ "disk": {
+ "properties": {
+ "mountPath": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "sizeGB": {
+ "description": "Defaults to 1",
+ "minimum": 1,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "name",
+ "mountPath"
+ ],
+ "type": "object"
+ },
+ "env": {
+ "deprecated": true,
+ "description": "This field has been deprecated, runtime should be used in its place.",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ },
+ "envSpecificDetails": {
+ "description": "Selected by `runtime`: `docker` → dockerDetailsPOST, `elixir`/`go`/`node`/`python`/`ruby`/`rust` → nativeEnvironmentDetailsPOST. The matching schema is applied by this object's `allOf` rules, where each branch's fields are listed; sending a field from another branch is rejected.",
+ "type": "object"
+ },
+ "maxShutdownDelaySeconds": {
+ "default": 30,
+ "description": "The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal.",
+ "maximum": 300,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "numInstances": {
+ "default": 1,
+ "description": "Defaults to 1",
+ "minimum": 1,
+ "type": "integer"
+ },
+ "plan": {
+ "default": "starter",
+ "description": "Defaults to `starter` when creating a new database.",
+ "enum": [
+ "starter",
+ "standard",
+ "pro",
+ "pro_plus",
+ "pro_max",
+ "pro_ultra"
+ ],
+ "type": "string"
+ },
+ "preDeployCommand": {
+ "type": "string"
+ },
+ "previews": {
+ "properties": {
+ "generation": {
+ "default": "off",
+ "description": "Defaults to \"off\"",
+ "enum": [
+ "off",
+ "manual",
+ "automatic"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "pullRequestPreviewsEnabled": {
+ "default": "no",
+ "deprecated": true,
+ "description": "This field has been deprecated. previews.generation should be used in its place.",
+ "enum": [
+ "yes",
+ "no"
+ ],
+ "type": "string"
+ },
+ "region": {
+ "default": "oregon",
+ "description": "Defaults to \"oregon\"",
+ "enum": [
+ "frankfurt",
+ "oregon",
+ "ohio",
+ "singapore",
+ "virginia"
+ ],
+ "type": "string"
+ },
+ "runtime": {
+ "description": "Runtime",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "runtime"
+ ],
+ "title": "backgroundWorkerDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "type": {
+ "enum": [
+ "cron_job"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "then": {
+ "properties": {
+ "serviceDetails": {
+ "additionalProperties": false,
+ "allOf": [
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "docker"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "properties": {
+ "dockerCommand": {
+ "type": "string"
+ },
+ "dockerContext": {
+ "type": "string"
+ },
+ "dockerfilePath": {
+ "type": "string"
+ },
+ "preDeployCommand": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "dockerCommand",
+ "dockerContext",
+ "dockerfilePath"
+ ],
+ "title": "dockerDetails",
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "if": {
+ "properties": {
+ "runtime": {
+ "enum": [
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust"
+ ]
+ }
+ },
+ "required": [
+ "runtime"
+ ]
+ },
+ "then": {
+ "properties": {
+ "envSpecificDetails": {
+ "additionalProperties": false,
+ "properties": {
+ "buildCommand": {
+ "type": "string"
+ },
+ "preDeployCommand": {
+ "type": "string"
+ },
+ "startCommand": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "buildCommand",
+ "startCommand"
+ ],
+ "title": "nativeEnvironmentDetails",
+ "type": "object"
+ }
+ }
+ }
+ }
+ ],
+ "properties": {
+ "env": {
+ "deprecated": true,
+ "description": "This field has been deprecated, runtime should be used in its place.",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ },
+ "envSpecificDetails": {
+ "description": "Selected by `runtime`: `docker` → dockerDetails, `elixir`/`go`/`node`/`python`/`ruby`/`rust` → nativeEnvironmentDetails. The matching schema is applied by this object's `allOf` rules, where each branch's fields are listed; sending a field from another branch is rejected.",
+ "type": "object"
+ },
+ "plan": {
+ "default": "starter",
+ "description": "Defaults to `starter` when creating a new database.",
+ "enum": [
+ "starter",
+ "standard",
+ "pro",
+ "pro_plus",
+ "pro_max",
+ "pro_ultra"
+ ],
+ "type": "string"
+ },
+ "region": {
+ "default": "oregon",
+ "description": "Defaults to \"oregon\"",
+ "enum": [
+ "frankfurt",
+ "oregon",
+ "ohio",
+ "singapore",
+ "virginia"
+ ],
+ "type": "string"
+ },
+ "runtime": {
+ "description": "Runtime",
+ "enum": [
+ "docker",
+ "elixir",
+ "go",
+ "node",
+ "python",
+ "ruby",
+ "rust",
+ "image"
+ ],
+ "type": "string"
+ },
+ "schedule": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "runtime",
+ "schedule"
+ ],
+ "title": "cronJobDetailsPOST",
+ "type": "object"
+ }
+ }
+ }
+ }
+]
removedInput schema / properties / serviceDetails / oneOf
Removed value: -[
- {
- "properties": {
- "buildCommand": {
- "type": "string"
- },
- "headers": {
- "items": {
- "properties": {
- "name": {
- "description": "Header name",
- "example": "Cache-Control",
- "type": "string"
- },
- "path": {
- "description": "The request path to add the header to. Wildcards will cause headers to be applied to all matching paths.",
- "example": "/static/*",
- "type": "string"
- },
- "value": {
- "description": "Header value",
- "example": "public, max-age=604800",
- "type": "string"
- }
- },
- "required": [
- "path",
- "name",
- "value"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "ipAllowList": {
- "items": {
- "properties": {
- "cidrBlock": {
- "type": "string"
- },
- "description": {
- "description": "User-provided description of the CIDR block",
- "type": "string"
- }
- },
- "required": [
- "cidrBlock",
- "description"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "previews": {
- "properties": {
- "generation": {
- "default": "off",
- "description": "Defaults to \"off\"",
- "enum": [
- "off",
- "manual",
- "automatic"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "publishPath": {
- "description": "Defaults to \"public\"",
- "type": "string"
- },
- "pullRequestPreviewsEnabled": {
- "default": "no",
- "deprecated": true,
- "description": "This field has been deprecated. previews.generation should be used in its place.",
- "enum": [
- "yes",
- "no"
- ],
- "type": "string"
- },
- "renderSubdomainPolicy": {
- "description": "Controls whether render.com subdomains are available for the service",
- "enum": [
- "enabled",
- "disabled"
- ],
- "type": "string"
- },
- "routes": {
- "items": {
- "properties": {
- "destination": {
- "example": "/foo/:bar",
- "type": "string"
- },
- "priority": {
- "description": "Redirect and Rewrite Rules are applied in priority order starting at 0. Defaults to last in the priority list.",
- "type": "integer"
- },
- "source": {
- "example": "/:bar/foo",
- "type": "string"
- },
- "type": {
- "enum": [
- "redirect",
- "rewrite"
- ],
- "type": "string"
- }
- },
- "required": [
- "type",
- "source",
- "destination"
- ],
- "type": "object"
- },
- "type": "array"
- }
- },
- "type": "object"
- },
- {
- "properties": {
- "autoscaling": {
- "properties": {
- "criteria": {
- "properties": {
- "cpu": {
- "properties": {
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "percentage": {
- "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "percentage"
- ],
- "type": "object"
- },
- "memory": {
- "properties": {
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "percentage": {
- "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "percentage"
- ],
- "type": "object"
- }
- },
- "required": [
- "cpu",
- "memory"
- ],
- "type": "object"
- },
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "max": {
- "description": "The maximum number of instances for the service",
- "type": "integer"
- },
- "min": {
- "description": "The minimum number of instances for the service",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "min",
- "max",
- "criteria"
- ],
- "type": "object"
- },
- "disk": {
- "properties": {
- "mountPath": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "sizeGB": {
- "description": "Defaults to 1",
- "minimum": 1,
- "type": "integer"
- }
- },
- "required": [
- "name",
- "mountPath"
- ],
- "type": "object"
- },
- "env": {
- "deprecated": true,
- "description": "This field has been deprecated, runtime should be used in its place.",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- },
- "envSpecificDetails": {
- "oneOf": [
- {
- "properties": {
- "dockerCommand": {
- "type": "string"
- },
- "dockerContext": {
- "type": "string"
- },
- "dockerfilePath": {
- "description": "Defaults to \"./Dockerfile\"",
- "type": "string"
- },
- "registryCredentialId": {
- "type": "string"
- }
- },
- "type": "object"
- },
- {
- "description": "Fields for native environment (runtime) services",
- "properties": {
- "buildCommand": {
- "type": "string"
- },
- "startCommand": {
- "type": "string"
- }
- },
- "required": [
- "buildCommand",
- "startCommand"
- ],
- "type": "object"
- }
- ]
- },
- "healthCheckPath": {
- "type": "string"
- },
- "ipAllowList": {
- "items": {
- "properties": {
- "cidrBlock": {
- "type": "string"
- },
- "description": {
- "description": "User-provided description of the CIDR block",
- "type": "string"
- }
- },
- "required": [
- "cidrBlock",
- "description"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "maintenanceMode": {
- "properties": {
- "enabled": {
- "type": "boolean"
- },
- "uri": {
- "description": "The page to be served when [maintenance mode](https://render.com/docs/maintenance-mode) is enabled. When empty, the default maintenance mode page is served.",
- "type": "string"
- }
- },
- "required": [
- "enabled",
- "uri"
- ],
- "type": "object"
- },
- "maxShutdownDelaySeconds": {
- "default": 30,
- "description": "The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal.",
- "maximum": 300,
- "minimum": 1,
- "type": "integer"
- },
- "numInstances": {
- "description": "Defaults to 1",
- "minimum": 1,
- "type": "integer"
- },
- "plan": {
- "default": "starter",
- "description": "The instance type to use. If omitted, defaults to `starter` when creating a new service.",
- "enum": [
- "starter",
- "starter_plus",
- "standard",
- "standard_plus",
- "pro",
- "pro_plus",
- "pro_max",
- "pro_ultra",
- "free",
- "custom",
- "starter_legacy",
- "standard_legacy",
- "standard_plus_legacy",
- "pro_legacy",
- "pro_plus_legacy"
- ],
- "example": "starter",
- "type": "string"
- },
- "preDeployCommand": {
- "type": "string"
- },
- "previews": {
- "properties": {
- "generation": {
- "default": "off",
- "description": "Defaults to \"off\"",
- "enum": [
- "off",
- "manual",
- "automatic"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "pullRequestPreviewsEnabled": {
- "default": "no",
- "deprecated": true,
- "description": "This field has been deprecated. previews.generation should be used in its place.",
- "enum": [
- "yes",
- "no"
- ],
- "type": "string"
- },
- "region": {
- "default": "oregon",
- "description": "Defaults to \"oregon\"",
- "enum": [
- "frankfurt",
- "oregon",
- "ohio",
- "singapore",
- "virginia"
- ],
- "type": "string"
- },
- "renderSubdomainPolicy": {
- "description": "Controls whether render.com subdomains are available for the service",
- "enum": [
- "enabled",
- "disabled"
- ],
- "type": "string"
- },
- "runtime": {
- "description": "Runtime",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- }
- },
- "required": [
- "runtime"
- ],
- "type": "object"
- },
- {
- "properties": {
- "autoscaling": {
- "properties": {
- "criteria": {
- "properties": {
- "cpu": {
- "properties": {
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "percentage": {
- "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "percentage"
- ],
- "type": "object"
- },
- "memory": {
- "properties": {
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "percentage": {
- "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "percentage"
- ],
- "type": "object"
- }
- },
- "required": [
- "cpu",
- "memory"
- ],
- "type": "object"
- },
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "max": {
- "description": "The maximum number of instances for the service",
- "type": "integer"
- },
- "min": {
- "description": "The minimum number of instances for the service",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "min",
- "max",
- "criteria"
- ],
- "type": "object"
- },
- "disk": {
- "properties": {
- "mountPath": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "sizeGB": {
- "description": "Defaults to 1",
- "minimum": 1,
- "type": "integer"
- }
- },
- "required": [
- "name",
- "mountPath"
- ],
- "type": "object"
- },
- "env": {
- "deprecated": true,
- "description": "This field has been deprecated, runtime should be used in its place.",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- },
- "envSpecificDetails": {
- "oneOf": [
- {
- "properties": {
- "dockerCommand": {
- "type": "string"
- },
- "dockerContext": {
- "type": "string"
- },
- "dockerfilePath": {
- "description": "Defaults to \"./Dockerfile\"",
- "type": "string"
- },
- "registryCredentialId": {
- "type": "string"
- }
- },
- "type": "object"
- },
- {
- "description": "Fields for native environment (runtime) services",
- "properties": {
- "buildCommand": {
- "type": "string"
- },
- "startCommand": {
- "type": "string"
- }
- },
- "required": [
- "buildCommand",
- "startCommand"
- ],
- "type": "object"
- }
- ]
- },
- "maxShutdownDelaySeconds": {
- "default": 30,
- "description": "The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal.",
- "maximum": 300,
- "minimum": 1,
- "type": "integer"
- },
- "numInstances": {
- "default": 1,
- "description": "Defaults to 1",
- "minimum": 1,
- "type": "integer"
- },
- "plan": {
- "default": "starter",
- "description": "Defaults to `starter` when creating a new database.",
- "enum": [
- "starter",
- "standard",
- "pro",
- "pro_plus",
- "pro_max",
- "pro_ultra"
- ],
- "type": "string"
- },
- "preDeployCommand": {
- "type": "string"
- },
- "previews": {
- "properties": {
- "generation": {
- "default": "off",
- "description": "Defaults to \"off\"",
- "enum": [
- "off",
- "manual",
- "automatic"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "pullRequestPreviewsEnabled": {
- "default": "no",
- "deprecated": true,
- "description": "This field has been deprecated. previews.generation should be used in its place.",
- "enum": [
- "yes",
- "no"
- ],
- "type": "string"
- },
- "region": {
- "default": "oregon",
- "description": "Defaults to \"oregon\"",
- "enum": [
- "frankfurt",
- "oregon",
- "ohio",
- "singapore",
- "virginia"
- ],
- "type": "string"
- },
- "runtime": {
- "description": "Runtime",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- }
- },
- "required": [
- "runtime"
- ],
- "type": "object"
- },
- {
- "properties": {
- "autoscaling": {
- "properties": {
- "criteria": {
- "properties": {
- "cpu": {
- "properties": {
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "percentage": {
- "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "percentage"
- ],
- "type": "object"
- },
- "memory": {
- "properties": {
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "percentage": {
- "description": "Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances.\n",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "percentage"
- ],
- "type": "object"
- }
- },
- "required": [
- "cpu",
- "memory"
- ],
- "type": "object"
- },
- "enabled": {
- "default": false,
- "type": "boolean"
- },
- "max": {
- "description": "The maximum number of instances for the service",
- "type": "integer"
- },
- "min": {
- "description": "The minimum number of instances for the service",
- "type": "integer"
- }
- },
- "required": [
- "enabled",
- "min",
- "max",
- "criteria"
- ],
- "type": "object"
- },
- "disk": {
- "properties": {
- "mountPath": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "sizeGB": {
- "description": "Defaults to 1",
- "minimum": 1,
- "type": "integer"
- }
- },
- "required": [
- "name",
- "mountPath"
- ],
- "type": "object"
- },
- "env": {
- "deprecated": true,
- "description": "This field has been deprecated, runtime should be used in its place.",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- },
- "envSpecificDetails": {
- "oneOf": [
- {
- "properties": {
- "dockerCommand": {
- "type": "string"
- },
- "dockerContext": {
- "type": "string"
- },
- "dockerfilePath": {
- "description": "Defaults to \"./Dockerfile\"",
- "type": "string"
- },
- "registryCredentialId": {
- "type": "string"
- }
- },
- "type": "object"
- },
- {
- "description": "Fields for native environment (runtime) services",
- "properties": {
- "buildCommand": {
- "type": "string"
- },
- "startCommand": {
- "type": "string"
- }
- },
- "required": [
- "buildCommand",
- "startCommand"
- ],
- "type": "object"
- }
- ]
- },
- "maxShutdownDelaySeconds": {
- "default": 30,
- "description": "The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal.",
- "maximum": 300,
- "minimum": 1,
- "type": "integer"
- },
- "numInstances": {
- "default": 1,
- "description": "Defaults to 1",
- "minimum": 1,
- "type": "integer"
- },
- "plan": {
- "default": "starter",
- "description": "Defaults to `starter` when creating a new database.",
- "enum": [
- "starter",
- "standard",
- "pro",
- "pro_plus",
- "pro_max",
- "pro_ultra"
- ],
- "type": "string"
- },
- "preDeployCommand": {
- "type": "string"
- },
- "previews": {
- "properties": {
- "generation": {
- "default": "off",
- "description": "Defaults to \"off\"",
- "enum": [
- "off",
- "manual",
- "automatic"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "pullRequestPreviewsEnabled": {
- "default": "no",
- "deprecated": true,
- "description": "This field has been deprecated. previews.generation should be used in its place.",
- "enum": [
- "yes",
- "no"
- ],
- "type": "string"
- },
- "region": {
- "default": "oregon",
- "description": "Defaults to \"oregon\"",
- "enum": [
- "frankfurt",
- "oregon",
- "ohio",
- "singapore",
- "virginia"
- ],
- "type": "string"
- },
- "runtime": {
- "description": "Runtime",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- }
- },
- "required": [
- "runtime"
- ],
- "type": "object"
- },
- {
- "properties": {
- "env": {
- "deprecated": true,
- "description": "This field has been deprecated, runtime should be used in its place.",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- },
- "envSpecificDetails": {
- "oneOf": [
- {
- "properties": {
- "dockerCommand": {
- "type": "string"
- },
- "dockerContext": {
- "type": "string"
- },
- "dockerfilePath": {
- "type": "string"
- },
- "preDeployCommand": {
- "type": "string"
- },
- "registryCredential": {
- "properties": {
- "id": {
- "description": "Unique identifier for this credential",
- "type": "string"
- },
- "name": {
- "description": "Descriptive name for this credential",
- "type": "string"
- },
- "registry": {
- "description": "The registry to use this credential with",
- "enum": [
- "GITHUB",
- "GITLAB",
- "DOCKER",
- "GOOGLE_ARTIFACT",
- "AWS_ECR"
- ],
- "type": "string"
- },
- "updatedAt": {
- "description": "Last updated time for the credential",
- "format": "date-time",
- "type": "string"
- },
- "username": {
- "description": "The username associated with the credential",
- "type": "string"
- }
- },
- "required": [
- "id",
- "name",
- "username",
- "registry",
- "updatedAt"
- ],
- "type": "object"
- }
- },
- "required": [
- "dockerCommand",
- "dockerContext",
- "dockerfilePath"
- ],
- "type": "object"
- },
- {
- "properties": {
- "buildCommand": {
- "type": "string"
- },
- "preDeployCommand": {
- "type": "string"
- },
- "startCommand": {
- "type": "string"
- }
- },
- "required": [
- "buildCommand",
- "startCommand"
- ],
- "type": "object"
- }
- ]
- },
- "plan": {
- "default": "starter",
- "description": "Defaults to `starter` when creating a new database.",
- "enum": [
- "starter",
- "standard",
- "pro",
- "pro_plus",
- "pro_max",
- "pro_ultra"
- ],
- "type": "string"
- },
- "region": {
- "default": "oregon",
- "description": "Defaults to \"oregon\"",
- "enum": [
- "frankfurt",
- "oregon",
- "ohio",
- "singapore",
- "virginia"
- ],
- "type": "string"
- },
- "runtime": {
- "description": "Runtime",
- "enum": [
- "docker",
- "elixir",
- "go",
- "node",
- "python",
- "ruby",
- "rust",
- "image"
- ],
- "type": "string"
- },
- "schedule": {
- "type": "string"
- }
- },
- "required": [
- "runtime",
- "schedule"
- ],
- "type": "object"
- }
-]