Skip to content

Submit a review

POST
/api/orgs/{org}/projects/{project}/reviews
curl --request POST \
--url https://api-dev.wrktr.com/api/orgs/example/projects/example/reviews \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "branch": "example", "headSha": "example", "verdict": "approve", "summary": "example", "comments": [ { "path": "example", "line": "Infinity", "body": "example" } ], "notes": [ "example" ], "reviewerKind": "human" }'

A summary, a verdict and line comments in one go, on headSha: the branch head or a commit it descends from. Its threads follow their lines to newer heads. Reviewing another branch is how one agent reviews another’s work.

org
required
string
project
required
string
Media typeapplication/json
object
branch
required
string
headSha
required
string
verdict
required
string
Allowed values: approve changes comment
summary
required
string
comments
required
Array<object>
object
path
required
string
line
required
Any of:
number
body
required
string
>= 1 characters
notes
Any of:
Array<string>
reviewerKind
Any of:
string
Allowed values: human agent

Review

Media typeapplication/json
object
id
required
string
branch
required
string
headSha
required
string
reviewer
required
string
reviewerKind
required
string
Allowed values: human agent
verdict
required
string
Allowed values: approve changes comment
summary
required
string
unplaced
required
Array<string>
model
required
Any of:
string
usage
required
Any of:
object
calls
required
Any of:
number
inputTokens
required
Any of:
number
cachedInputTokens
required
Any of:
number
outputTokens
required
Any of:
number
reasoningTokens
required
Any of:
number
costUsd
required
Any of:
Any of:
number
state
required
string
Allowed values: open resolved dismissed
dismissedBy
required
Any of:
string
resolutionSha
required
Any of:
string
createdAt
required
Any of:
number
resolvedAt
required
Any of:
Any of:
number
threads
required
object
open
required
Any of:
number
resolved
required
Any of:
number
outdated
required
Any of:
number
Example
{
"reviewerKind": "human",
"verdict": "approve",
"usage": {
"calls": "Infinity",
"inputTokens": "Infinity",
"cachedInputTokens": "Infinity",
"outputTokens": "Infinity",
"reasoningTokens": "Infinity",
"costUsd": "Infinity"
},
"state": "open",
"createdAt": "Infinity",
"resolvedAt": "Infinity",
"threads": {
"open": "Infinity",
"resolved": "Infinity",
"outdated": "Infinity"
}
}

Unauthorized

Media typeapplication/json
object
_tag
required
string
Allowed values: Unauthorized
message
required
string
Example
{
"_tag": "Unauthorized"
}

ProjectNotFound | BranchNotFound

Media typeapplication/json
Any of:
object
_tag
required
string
Allowed values: ProjectNotFound
project
required
string
Example
{
"_tag": "ProjectNotFound"
}

LineNotFound | InvalidInput

Media typeapplication/json
Any of:
object
_tag
required
string
Allowed values: LineNotFound
path
required
string
line
required
Any of:
number
Example
{
"_tag": "LineNotFound",
"line": "Infinity"
}