The GitHub Deployments API allows users to trigger Buildkite deployment pipelines. It supports options such as required_contexts for validating that other services and Buildkite pipelines must have succeeded on a commit before allowing a deploy. When creating a deployment using a tool like hubot-deploy, a sequence of events occurs involving GitHub, Buildkite, and the Buildkite Agent. Deployment builds triggered from GitHub have four additional environment variables. A separate deployment project is recommended for better visibility and control over deployment builds.