Skip to content

Create a Worker

POST
/api/v1/sites
curl --request POST \
--url https://digize.com/api/v1/sites \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: 5f1c2a8e-3b7d-4c55-9a0e-1f2d3c4b5a69' \
--header 'x-api-key: <x-api-key>' \
--data '{ "name": "example", "description": "example", "templateId": "example" }'

Creates a Worker with a git repo and, for a site or API, its own address at .yourfreesite.com. Answers its git remote and a push token, shown once. With a template, the repo starts with the template’s code and its first build starts.

Needs the sites:write permission.

Idempotency-Key
string
>= 1 characters <= 255 characters

Makes the request safe to send again: for 24 hours the same key and request answer the first response without repeating the change.

Example

5f1c2a8e-3b7d-4c55-9a0e-1f2d3c4b5a69
Media typeapplication/json
object
name
required
string
>= 3 characters <= 40 characters
description
string
<= 200 characters
templateId
string
<= 64 characters

Example generated

{
"name": "example",
"description": "example",
"templateId": "example"
}

Done

Media typeapplication/json
object
worker
required
object
id
required
string
name
required
string
kind
required
string
Allowed values: site api consumer scheduled
description
required
string
hostnames
required
Array<string>
routes
required
Array<string>
crons
required
Array<string>
createdAt
required
string format: date-time
scriptName
required
string
gitRemote
required
string
platformHostname
required
string | null
mainHostname
required
string | null
status
required
string
Allowed values: live deploying not_deployed
liveVersion
required
number | null
lastDeployment
required
Any of:
object
id
required
string
version
required
number
status
required
string
Allowed values: queued building deploying live failed superseded
createdAt
required
string format: date-time
requests
required
number
errors
required
number
cpuTime
required
number
bindingCount
required
number
consumes
required
Array<string>
gitRemote
required
string
token
required
string
pushToken
required
object
id
required
string
siteId
required
string
worker
required
string
label
required
string
prefix
required
string
createdBy
required
string
createdAt
required
string format: date-time
expiresAt
required
string format: date-time
lastUsedAt
required
Any of:
string format: date-time
revokedAt
required
Any of:
string format: date-time
deployment
required
Any of:
object
id
required
string
siteId
required
string
worker
required
string
version
required
number
status
required
string
Allowed values: queued building deploying live failed superseded
kind
required
string
Allowed values: push manual redeploy rollback
commit
required
object
sha
required
string
message
required
string
author
required
string
branch
required
string
requestedBy
required
string | null
createdAt
required
string format: date-time
startedAt
required
Any of:
string format: date-time
finishedAt
required
Any of:
string format: date-time
duration
required
number | null
error
required
string | null
failedStage
required
Any of:
string
Allowed values: build deploy
canRedeploy
required
boolean

Example

{
"worker": {
"kind": "site",
"status": "live",
"lastDeployment": {
"status": "queued"
}
},
"deployment": {
"status": "queued",
"kind": "push",
"failedStage": "build"
}
}

What was sent isn’t valid (invalid).

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}

No key, or one that’s unknown, off or expired.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}

The key doesn’t have the permission this needs.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}

Nothing has that id (not_found).

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}

A request with the same Idempotency-Key is still running (conflict).

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}

The Idempotency-Key was used with a different request.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}

Over the rate limit; see retry-after.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: invalid unauthorized forbidden not_found conflict too_large rate_limited unavailable internal
message
required
string
details
object
key
additional properties
any

Example

{
"error": {
"code": "invalid"
}
}