Skip to content

Partially update an email channel

Requires EDITOR. Partial update. Switching kind requires resubmitting the full config. Quota fields are re-pushed to the RateBudget Durable Object after write.

projectId
required
string

Tenant project id (row-level isolation on every query).

id
required
string

Resource id.

Media typeapplication/json

Partial update; all fields optional. Changing kind requires resubmitting config.

object
name
string
>= 1 characters <= 120 characters
kind
string
Allowed values: log resend sendgrid mailgun aliyun cf_email
status
string
Allowed values: active paused disabled
fromAddress
string format: email
replyToAddress
string | null format: email
config
object
key
additional properties
string
rateLimitPerSecond
integer
>= 1 <= 100
dailyLimit
integer | null
>= 1
transactionalReservePercent
integer
<= 100
marketingDailyLimit
integer | null
>= 1

Acknowledged.

Media typeapplication/json
object
ok
boolean

Validation error, or kind changed without full config.

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Not authenticated (no valid session/principal).

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Authenticated but lacks the required project role.

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Resource not found (or belongs to another project — indistinguishable).

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}