API reference
Review an order
PUT
/v2/orders/{id}/reviewSubmit a completed-order review.
Authentication: Required: the order’s owner session in X-Session-ID.
#Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id |
path | string (pattern ^[A-Za-z0-9:_-]{1,128}$) |
Yes | Public order identifier. Not a credential: every read still requires the owner session or the destination proof. |
#Request body
ratingSpeed· integer (1–5) · required — How fast the order settled. 1 is worst, 5 is best.ratingRate· integer (1–5) · required — How good the rate felt. 1 is worst, 5 is best.ratingExperience· integer (1–5) · required — Overall experience. 1 is worst, 5 is best.comment· string (max 500) or null — Optional free-text feedback.
#Response
200 returns an object with:
success·true· required
Errors use the standard error envelope: branch on code, never on the message.
#Example
curl
curl -X PUT 'https://api-beta.wagyu.xyz/v2/orders/<orderId>/review' \
-H 'x-session-id: <sessionId>' \
-H 'content-type: application/json' \
-d '{
"ratingSpeed": 5,
"ratingRate": 4,
"ratingExperience": 5,
"comment": "Fast and simple."
}'JavaScript
const res = await fetch('https://api-beta.wagyu.xyz/v2/orders/<orderId>/review', {
method: 'PUT',
headers: {"content-type":"application/json","x-session-id":"<sessionId>"},
body: JSON.stringify({
"ratingSpeed": 5,
"ratingRate": 4,
"ratingExperience": 5,
"comment": "Fast and simple."
}),
});
const data = await res.json();Python
import requests
res = requests.put('https://api-beta.wagyu.xyz/v2/orders/<orderId>/review', headers={"x-session-id":"<sessionId>"}, json={
"ratingSpeed": 5,
"ratingRate": 4,
"ratingExperience": 5,
"comment": "Fast and simple."
}, timeout=30)
data = res.json()No response is captured for this route: calling it creates or changes a real order. The response fields above come from the live contract.