Choose when it goes and what quiet hours do
PUT
/api/v1/workspaces/{workspace}/push-campaigns/{campaignId}/send-settings
package main
import ( "fmt" "strings" "net/http" "io")
func main() {
url := "https://reputecast.example.com/api/v1/workspaces/acme-newsletter/push-campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/send-settings"
payload := strings.NewReader("{ \"mode\": \"now\", \"outside\": \"hold\", \"sendAt\": \"2026-04-15T12:00:00Z\" }")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>") req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}const url = 'https://reputecast.example.com/api/v1/workspaces/acme-newsletter/push-campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/send-settings';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"mode":"now","outside":"hold","sendAt":"2026-04-15T12:00:00Z"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://reputecast.example.com/api/v1/workspaces/acme-newsletter/push-campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/send-settings \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "mode": "now", "outside": "hold", "sendAt": "2026-04-15T12:00:00Z" }'Permission: campaigns:edit
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”workspace
required
Workspace slug
string
Workspace slug
campaignId
required
string format: uuid
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
mode
required
string
outside
required
string
sendAt
string format: date-time
Responses
Section titled “Responses”OK
Media typeapplication/json
object
access
required
object
canEdit
required
boolean
canSend
required
boolean
helpers
required
Array<string>
missing
required
Array<string>
approval
required
object
approvers
required
Array<object>
object
color
required
string
email
required
string
id
required
string
initials
required
string
name
required
string
presence
string
role
required
string
canBypass
required
boolean
canRequest
required
boolean
medianWaitMinutes
integer format: int64
needed
required
integer format: int64
policyRules
required
Array<string>
request
object
audit
object
action
required
string
actor
required
string
at
required
string format: date-time
ip
string
bypassReason
string
changes
required
Array<object>
object
after
required
string
before
required
string
field
required
string
label
required
string
what
string
comment
string
decidedAt
string format: date-time
decidedBy
string
decisions
required
Array<object>
object
approver
required
object
color
required
string
email
required
string
id
required
string
initials
required
string
name
required
string
presence
string
role
required
string
at
required
string format: date-time
comment
required
string
decision
required
string
followsId
string
given
required
integer format: int64
id
required
string
invalidatedAt
string format: date-time
invalidatedBy
string
invalidatedFields
string
invalidatedReason
string
needed
required
integer format: int64
note
required
string
requestedAt
required
string format: date-time
requestedBy
required
object
color
required
string
email
required
string
id
required
string
initials
required
string
name
required
string
presence
string
role
required
string
rules
required
Array<object>
object
author
string
badge
required
string
key
required
string
label
required
string
role
string
short
required
string
snapshot
required
object
audienceCount
required
integer format: int64
routeLabel
required
string
routeText
required
string
scheduleAt
string format: date-time
scheduleMode
required
string
scheduleText
required
string
splitLabel
required
string
subject
required
string
timezone
string
version
required
integer format: int64
status
required
string
subjectType
required
string
version
required
integer format: int64
requestReason
string
required
required
boolean
rules
required
Array<object>
object
author
string
badge
required
string
key
required
string
label
required
string
role
string
short
required
string
valid
required
boolean
audience
required
object
anonymous
required
integer format: int64
final
required
integer format: int64
linked
required
integer format: int64
narrowed
required
boolean
overCap
required
integer format: int64
total
required
integer format: int64
checkedAt
required
string format: date-time
checks
required
Array<object>
object
anonymous
required
integer format: int64
at
required
string format: date-time
atZone
required
string
author
string
authorRole
string
cap
required
integer format: int64
count
required
integer format: int64
cuts
required
Array<object>
object
lines
required
integer format: int64
platform
required
string
title
required
boolean
hadToday
required
integer format: int64
held
required
integer format: int64
heldZones
required
Array<object>
object
inside
required
boolean
localTime
required
string
subscribers
required
integer format: int64
until
required
string format: date-time
zone
required
string
helpers
required
Array<string>
image
object
bytes
required
integer format: int64
height
required
integer format: int64
mediaId
required
string
name
required
string
url
required
string
width
required
integer format: int64
inside
required
integer format: int64
key
required
string
keysAcceptedAt
string format: date-time
keysCreatedAt
string format: date-time
link
string
linkDemo
boolean
linkError
string
linkMillis
integer format: int64
linkStatus
integer format: int64
linked
required
integer format: int64
messageLength
required
integer format: int64
missing
required
Array<string>
otherSites
required
integer format: int64
overCap
required
integer format: int64
quietOff
required
boolean
ratio
string
rules
required
Array<string>
sites
required
Array<object>
object
host
required
string
httpStatus
integer format: int64
status
required
string
subscribers
required
integer format: int64
url
required
string
version
integer format: int64
skipped
required
integer format: int64
status
required
string
titleLength
required
integer format: int64
window
required
string
guards
required
object
cap
required
integer format: int64
held
required
integer format: int64
inside
required
integer format: int64
overCap
required
integer format: int64
quiet
required
boolean
sentToday
required
Array<object>
object
at
required
string format: date-time
by
required
string
kind
required
string
name
required
string
to
required
integer format: int64
unknown
required
integer format: int64
window
required
string
zones
required
Array<object>
object
inside
required
boolean
localTime
required
string
subscribers
required
integer format: int64
until
required
string format: date-time
zone
required
string
id
required
string
name
required
string
schedule
required
object
mode
required
string
outside
required
string
sendAt
string format: date-time
ttlMinutes
required
integer format: int64
zone
required
string
send
object
completedAt
string format: date-time
phase
required
string
recipients
required
integer format: int64
scheduledAt
required
string format: date-time
startedBy
string
sites
required
Array<object>
object
host
required
string
subscribers
required
integer format: int64
status
required
string
test
object
at
required
string format: date-time
browser
required
string
detail
string
platform
required
string
status
required
string
verdict
required
string
version
required
integer format: int64
Example
{ "approval": { "request": { "changes": [ { "field": "subject" } ], "decisions": [ { "decision": "approve" } ], "rules": [ { "key": "audience_min" } ], "snapshot": { "scheduleMode": "now" }, "status": "pending", "subjectType": "campaign" }, "rules": [ { "key": "audience_min" } ] }, "checks": [ { "cuts": [ { "platform": "chrome_windows" } ], "key": "keys", "sites": [ { "status": "built_in" } ], "status": "pass" } ], "guards": { "sentToday": [ { "kind": "campaign" } ] }, "schedule": { "mode": "now", "outside": "hold" }, "send": { "phase": "scheduled" }, "test": { "status": "queued" }, "verdict": "ready"}default
Section titled “default”Error
Media typeapplication/problem+json
object
code
Stable error code, e.g. permission_denied
string
detail
A human-readable explanation specific to this occurrence of the problem.
string
errors
Optional list of individual error details
Array<object>
object
location
Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’
string
message
Error message text
string
value
The value at the given location
helpers
Members who hold the missing permission
Array<string>
instance
A URI reference that identifies the specific occurrence of the problem.
string format: uri
meta
object
key
additional properties
permission
The missing permission key
string
status
HTTP status code
integer format: int64
title
A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
string
type
A URI reference to human-readable documentation for the error.
string format: uri
Example
{ "detail": "Property foo is required but is missing.", "instance": "https://example.com/error-log/abc123", "status": 400, "title": "Bad Request", "type": "about:blank"}