Application

创建部署

创建部署

POST /application/v1/workers/{worker_id}/deployments

Deploy one version to serve the Worker. Unlike Cloudflare, a deployment holds exactly one version at 100 percent (no gradual rollout), so strategy must be percentage. Deployment is asynchronous; poll the deployment until praxis.status is active or failed.

支持状态: supported

参数

名称位置类型必填说明
worker_idpathstringtrueWorker ID (wkr_…).

请求体 (application/json)

必填: true

名称类型说明
strategystringRollout strategy.
versionsarray<object>Exactly one version at 100 percent.
versions[].version_idstringVersion to deploy.
versions[].percentagenumberMust be 100.
forcebooleanOwn face only; on the compatible face use the force query parameter.
annotationsobjectFree-form annotations.
annotations.workers/messagestringDeployment message.
{
  "type": "object",
  "required": [
    "strategy",
    "versions"
  ],
  "properties": {
    "strategy": {
      "type": "string",
      "description": "Rollout strategy.",
      "enum": [
        "percentage"
      ],
      "x-enum-descriptions": {
        "percentage": "Split traffic by percentage; only a single version at 100 is accepted."
      },
      "example": "percentage"
    },
    "versions": {
      "type": "array",
      "description": "Exactly one version at 100 percent.",
      "items": {
        "type": "object",
        "required": [
          "version_id",
          "percentage"
        ],
        "properties": {
          "version_id": {
            "type": "string",
            "description": "Version to deploy."
          },
          "percentage": {
            "type": "number",
            "description": "Must be 100."
          }
        }
      }
    },
    "force": {
      "type": "boolean",
      "description": "Own face only; on the compatible face use the force query parameter."
    },
    "annotations": {
      "type": "object",
      "description": "Free-form annotations.",
      "required": [],
      "properties": {
        "workers/message": {
          "type": "string",
          "description": "Deployment message."
        }
      }
    }
  }
}

响应

HTTP 200

Success

application/json

名称类型说明
idstringDeployment ID, prefixed dep_.
created_onstringWhen the deployment was created.
sourcestringOrigin: api, sdk, console or rollback.
strategystringRollout strategy.
versionsarray<object>Exactly one version at 100 percent.
versions[].version_idstringDeployed version.
versions[].percentagenumberTraffic share; always 100.
annotationsobjectFree-form annotations.
annotations.workers/messagestringDeployment message.
annotations.workers/triggered_bystringWhat triggered the deployment.
author_emailstring | nullWho created the deployment.
praxisobjectPlatform fields: deployments run asynchronously, so track status, progress and error here.
praxis.worker_idstringOwning Worker.
praxis.statusstringDeployment status: pending (queued), uploading (pushing components and assets), activating (switching traffic), active (serving), superseded (replaced by a later deployment), failed (see error), cancelled (replaced before it finished).
praxis.progressobject | nullUpload progress.
praxis.errorobject | nullWhy the deployment failed.
praxis.finished_onstring | nullWhen the deployment reached a final status.
导出

本页内容