Review & send: consent, the template, quality, the messaging limit and the cost
GET
/api/v1/workspaces/{workspace}/whatsapp-campaigns/{campaignId}/review
package main
import ( "fmt" "net/http" "io")
func main() {
url := "https://reputecast.example.com/api/v1/workspaces/acme-newsletter/whatsapp-campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/review"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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/whatsapp-campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/review';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://reputecast.example.com/api/v1/workspaces/acme-newsletter/whatsapp-campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/review \ --header 'Authorization: Bearer <token>'Permission: campaigns:view
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”workspace
required
Workspace slug
string
Workspace slug
campaignId
required
Campaign id
string format: uuid
Campaign id
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
consent
required
integer format: int64
countries
required
object
key
additional properties
integer format: int64
final
required
integer format: int64
lists
required
Array<object>
object
consent
required
integer format: int64
listId
required
string
members
required
integer format: int64
name
required
string
suppressed
required
integer format: int64
without
required
integer format: int64
checkedAt
required
string format: date-time
checks
required
Array<object>
object
accountStatus
string
author
string
category
string
checkedAt
string format: date-time
cost
object
amount
required
number format: double
byCountry
required
Array<object>
object
amount
required
number format: double
country
required
string
messages
required
integer format: int64
price
required
number format: double
category
required
string
messages
required
integer format: int64
ratesAsOf
required
string format: date-time
count
required
integer format: int64
helpers
required
Array<string>
key
required
string
lists
required
Array<string>
missing
required
Array<string>
previousQuality
string
quality
string
qualityAt
string format: date-time
split
object
later
required
integer format: int64
laterAt
string format: date-time
left
required
integer format: int64
limit
required
integer format: int64
now
required
integer format: int64
used
required
integer format: int64
usedBy
string
usedByAt
string format: date-time
usedByN
integer format: int64
status
required
string
template
string
templateStatus
string
without
required
integer format: int64
cost
required
object
amount
required
number format: double
byCountry
required
Array<object>
object
amount
required
number format: double
country
required
string
messages
required
integer format: int64
price
required
number format: double
category
required
string
messages
required
integer format: int64
ratesAsOf
required
string format: date-time
id
required
string
name
required
string
overLimit
required
string
schedule
required
object
label
required
string
localDate
string
localMinute
integer format: int64
mode
required
string
sendAt
string format: date-time
send
object
completedAt
string format: date-time
phase
required
string
recipients
required
integer format: int64
scheduledAt
required
string format: date-time
startedBy
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": [ { "key": "account", "status": "pass" } ], "overLimit": "next_day", "schedule": { "mode": "now" }, "send": { "phase": "scheduled" }, "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"}