Skip to content

Submit Email for Review

POST
/api/v1/workspaces/{workspace_id}/emails/{email_id}/approval_workflow
curl --request POST \
--url https://example.com/%7B%7Bapp_url%7D/api/v1/workspaces/1/emails/1/approval_workflow \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "review_group_id": 1, "resubmission": false }'

Submits an email for review.

workspace_id
required
integer

Workspace ID

email_id
required
integer

Email ID

Media typeapplication/json
object
review_group_id

The ID of the Review Group to assign for reviewing this email.

integer
Example
1
resubmission

Whether this is a resubmission of a previously reviewed email (e.g. after addressing requested changes).

boolean
Example
false

Successful

Media typeapplication/json
object
id
required
integer
email_id
required
integer
status
required
string
Allowed values: in_progress completed
review_group_id
required
integer
creator_id
required
integer
creator
required
One of:
object
type
required
string
Allowed values: User
id
required
integer
first_name
required
string
last_name
required
string
profile_image_url
required
string
nullable
review_approvals
required
Array<object>
object
id
required
integer
approval_workflow_id
required
integer
decision
required
string
Allowed values: approved request_changes
user_id
required
integer
user
required
One of:
object
type
required
string
Allowed values: User
id
required
integer
first_name
required
string
last_name
required
string
profile_image_url
required
string
nullable
review_group
required
object
id
required
integer
name
required
string
reusable
required
boolean
stages
required
Array<object>
object
position
required
integer
approval_type
required
string
Allowed values: one_of all_of
members
required
Array<object>
object
user_id
required
integer
user
required
One of:
object
type
required
string
Allowed values: User
id
required
integer
first_name
required
string
last_name
required
string
profile_image_url
required
string
nullable
Example
{
"id": 12345,
"email_id": 12345,
"status": "in_progress",
"review_group_id": 12345,
"creator_id": 12345,
"creator": {
"type": "User",
"id": 12345,
"first_name": "John",
"last_name": "Smith",
"profile_image_url": "https://example.com/profile.jpg"
},
"review_approvals": [
{
"id": 12345,
"approval_workflow_id": 12345,
"decision": "approved",
"user_id": 12345,
"user": {
"type": "User",
"id": 12345,
"first_name": "John",
"last_name": "Smith",
"profile_image_url": "https://example.com/profile.jpg"
}
}
],
"review_group": {
"id": 12345,
"name": "My Review Group",
"reusable": false,
"stages": [
{
"position": 1,
"approval_type": "one_of",
"members": [
{
"user_id": 12345,
"user": {
"type": "User",
"id": 12345,
"first_name": "John",
"last_name": "Smith",
"profile_image_url": "https://example.com/profile.jpg"
}
}
]
}
]
}
}

Unauthorized

Media typeapplication/json
object
message
required
string
Example
{
"message": "Record not found"
}

Forbidden

Media typeapplication/json
object
message
required
string
Example
{
"message": "Record not found"
}

Unprocessable Entity

Media typeapplication/json
object
message
required
string
errors
required
object
key
additional properties
Array<string>
Example
{
"errors": {
"username": [
"Username is required.",
"Username must be unique."
],
"email": [
"Invalid email format."
]
}
}