{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "The ref to deploy. This can be a branch, tag, or SHA."
    },
    "task": {
      "type": "string",
      "description": "Specifies a task to execute (e.g., `deploy` or `deploy:migrations`).",
      "default": "deploy"
    },
    "auto_merge": {
      "type": "boolean",
      "description": "Attempts to automatically merge the default branch into the requested ref, if it's behind the default branch.",
      "default": true
    },
    "required_contexts": {
      "type": "array",
      "description": "The [status](https://docs.github.com/rest/commits/statuses) contexts to verify against commit status checks. If you omit this parameter, GitHub verifies all unique contexts before creating a deployment. To bypass checking entirely, pass an empty array. Defaults to all unique contexts.",
      "items": {
        "type": "string"
      }
    },
    "payload": {
      "oneOf": [
        {
          "type": "object",
          "additionalProperties": true
        },
        {
          "type": "string",
          "description": "JSON payload with extra information about the deployment.",
          "default": ""
        }
      ]
    },
    "environment": {
      "type": "string",
      "description": "Name for the target deployment environment (e.g., `production`, `staging`, `qa`).",
      "default": "production"
    },
    "description": {
      "type": [
        "string",
        "null"
      ],
      "description": "Short description of the deployment.",
      "default": ""
    },
    "transient_environment": {
      "type": "boolean",
      "description": "Specifies if the given environment is specific to the deployment and will no longer exist at some point in the future. Default: `false`",
      "default": false
    },
    "production_environment": {
      "type": "boolean",
      "description": "Specifies if the given environment is one that end-users directly interact with. Default: `true` when `environment` is `production` and `false` otherwise."
    }
  },
  "required": [
    "ref"
  ],
  "$schema": "https://json-schema.org/draft/2019-09/schema"
}