Application
创建版本
创建版本
POST /application/v1/workers/{worker_id}/versions
Upload code and bindings as a new version; a version serves nothing until deployed. Set deploy true to create the pending deployment in the same call. Rejected binding types return UNSUPPORTED.
支持状态: supported
参数
| 名称 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| worker_id | path | string | true | Worker ID (wkr_…). |
请求体 (application/json)
必填: true
| 名称 | 类型 | 说明 |
|---|---|---|
| deploy | boolean | Also create a deployment of this version (own face only; on the compatible face use the deploy query parameter). |
| main_module | string | Entry module name; must equal the name of one of modules. Defaults to the first module; omit it when there are no modules. |
| modules | array<object> | Inline modules. |
| modules[].name | string | Module file name. |
| modules[].content_type | string | Module content type: application/javascript+module, text/javascript, application/javascript, application/wasm, text/plain, application/octet-stream, application/json or application/x-python. Omit it to use application/javascript+module. |
| modules[].content_base64 | string | Module content, base64. |
| compatibility_date | string | Workers runtime compatibility date: a real date in YYYY-MM-DD form, not later than today (UTC). Defaults to today (UTC). |
| compatibility_flags | array<string> | Runtime compatibility flags. |
| bindings | array<object> | Bindings of this version. |
| bindings[].type | string | Binding type; see the binding description for what each needs and which are unavailable. |
| bindings[].name | string | Name of the binding in the Worker's env: 1–64 letters, digits or underscores, not starting with a digit; unique within a version. |
| assets | object | Static assets. Pass either manifest (every file already uploaded through an upload session) or jwt (the completion token from the last upload batch), not both. |
| assets.config | object | Routing settings for the static assets. |
| assets.manifest | object | Map of static file path to content hash and byte size. Paths start with /; the same hash must declare the same size. The root paths /_headers and /_redirects are response-header and redirect rule files and are not served as assets; same-named files in subdirectories are ordinary assets. _headers allows at most 100 rules and 2000 characters per line (whitespace included); _redirects allows at most 2000 static and 100 dynamic rules and 1000 characters per rule (whitespace included), and rules after the first dynamic rule count toward the dynamic quota. Exceeding a limit makes CreateVersion return INVALID_PARAMS, with violations.field pointing at the manifest entry. |
| assets.jwt | string | Completion token from the last assets/upload batch; it carries this version's manifest, so do not also pass manifest. |
| annotations | object | Free-form annotations. |
| annotations.workers/message | string | Version message. |
| annotations.workers/tag | string | Version tag. |
| praxis | object | Praxis settings. |
| praxis.source | object | Build source: {type:inline}, {type:machine, path} or {type:file, file_id}. |
{
"type": "object",
"required": [],
"properties": {
"deploy": {
"type": "boolean",
"description": "Also create a deployment of this version (own face only; on the compatible face use the deploy query parameter)."
},
"main_module": {
"type": "string",
"description": "Entry module name; must equal the name of one of modules. Defaults to the first module; omit it when there are no modules.",
"example": "index.js"
},
"modules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/application-Module"
},
"description": "Inline modules."
},
"compatibility_date": {
"type": "string",
"description": "Workers runtime compatibility date: a real date in YYYY-MM-DD form, not later than today (UTC). Defaults to today (UTC).",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"example": "2026-01-01"
},
"compatibility_flags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Runtime compatibility flags."
},
"bindings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/application-Binding"
},
"description": "Bindings of this version."
},
"assets": {
"type": "object",
"description": "Static assets. Pass either manifest (every file already uploaded through an upload session) or jwt (the completion token from the last upload batch), not both.",
"required": [],
"properties": {
"config": {
"$ref": "#/components/schemas/application-AssetsConfig",
"description": "Routing settings for the static assets."
},
"manifest": {
"$ref": "#/components/schemas/application-AssetManifest"
},
"jwt": {
"type": "string",
"description": "Completion token from the last assets/upload batch; it carries this version's manifest, so do not also pass manifest."
}
}
},
"annotations": {
"type": "object",
"description": "Free-form annotations.",
"required": [],
"properties": {
"workers/message": {
"type": "string",
"description": "Version message."
},
"workers/tag": {
"type": "string",
"description": "Version tag."
}
}
},
"praxis": {
"type": "object",
"description": "Praxis settings.",
"required": [],
"properties": {
"source": {
"type": "object",
"additionalProperties": true,
"description": "Build source: {type:inline}, {type:machine, path} or {type:file, file_id}."
}
}
}
}
}响应
HTTP 200
Success
application/json
| 名称 | 类型 | 说明 |
|---|---|---|
| version | object | The version that was created. |
| version.id | string | Version ID, prefixed ver_. |
| version.number | integer | Per-Worker counter (v1, v2, …). |
| version.created_on | string | When the version was created. |
| version.main_module | string | null | Entry module name, or null for a version containing only static assets. |
| version.modules | array<object> | Module names and types; content is never returned. |
| version.compatibility_date | string | Workers runtime compatibility date. |
| version.compatibility_flags | array<string> | Runtime compatibility flags. |
| version.bindings | array<object> | Bindings; secret values are never returned. |
| version.assets | object | null | Static asset settings. |
| version.annotations | object | Free-form annotations. |
| version.author_id | string | null | Who created the version. |
| version.source | string | Upload origin, e.g. api or sdk. |
| version.urls | array<string> | Preview URLs of this version. |
| version.praxis | object | Platform fields: owning Worker, build source, script size and asset manifest summary. |
| deployment | object | null | The pending deployment; null unless deploy was requested. |
| deployment.id | string | Deployment ID, prefixed dep_. |
| deployment.created_on | string | When the deployment was created. |
| deployment.source | string | Origin: api, sdk, console or rollback. |
| deployment.strategy | string | Rollout strategy. |
| deployment.versions | array<object> | Exactly one version at 100 percent. |
| deployment.annotations | object | Free-form annotations. |
| deployment.author_email | string | null | Who created the deployment. |
| deployment.praxis | object | Platform fields: deployments run asynchronously, so track status, progress and error here. |