Skip to main content
POST
Publish a release: upload to live in one flow

Authorizations

Authorization
string
header
required

An API key (pch_...) or the token from pch login.

Path Parameters

owner
string
required
Example:

"patch"

slug
string
required
Example:

"demo-mod"

version
string
required
Example:

"0.1.0"

Query Parameters

wait
integer | null

Seconds (up to 50) to wait for this to change while Patch is working on it. Answers at once when it's your turn or the person's.

Required range: 0 <= x <= 50

Body

application/json
review
object

Your review of the recorded test's footage, at your_review

test_again
boolean

Start another test after one that couldn't run

Response

Where it is now

project
string
required
version
string
required
stage
enum<string>
required

uploading: files are missing. testing: Patch Desktop on the person's PC tests it. your_review: the test is recorded and footage has its sheets: look at every one and send review. in_review: Patch reviews it. ready: in a Patch Desktop chat, it passed and the person's press on the chat's publish button sends it. live. stopped: code and next say why and what to do

Available options:
uploading,
testing,
your_review,
in_review,
ready,
live,
stopped
line
string
required

One line to show the person: Uploading, Testing on your PC, In review or Live

Example:

"Testing on your PC"

next
string
required

What to do now, for the agent

code
string | null
required

Why it stopped: files_failed, test_failed, couldnt_run, rejected, repo_private or overtaken

status
enum<string>
required

draft, then checking (file checks). A browser game is testing until a test on its creator's PC passes, then cloud_review, then published. A mod goes to cloud_review, then in_review (a staff member), then published. Any step can end in rejected.

Available options:
draft,
checking,
testing,
cloud_review,
in_review,
published,
rejected,
yanked,
quarantined
needs_person
object | null
required

Something only the person can do. Ask them, then wait for their answer rather than asking Patch again.

test_id
string<uuid> | null
required
footage
object[] | null
required

At your_review: every contact sheet of the test, in order

findings
object[]
required

When stopped: what to fix

urls
object
required

Where it is on Patch. On single-project responses, not in lists.