Skip to main content
POST
/
review-submit
Submit a review
curl --request POST \
  --url https://aarwcjjzhlmkgdwrisyt.supabase.co/functions/v1/review-submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "escrow_id": "d4e5f6a7-b8c9-0123-defa-234567890123",
  "rating": 5,
  "feedback": "Very smooth transaction. Delivered exactly as described."
}
'
{
  "success": true,
  "status": 201,
  "data": {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "escrow_id": "d4e5f6a7-b8c9-0123-defa-234567890123",
    "reviewer_id": "11111111-2222-3333-4444-555555555555",
    "reviewee_id": "66666666-7777-8888-9999-000000000000",
    "rating": 5,
    "feedback": "Very smooth transaction. Delivered exactly as described.",
    "created_at": "2026-04-18T10:30:00Z",
    "reviewer_first_name": "Adebayo",
    "reviewer_last_name": "Johnson",
    "reviewer_avatar_url": null,
    "escrow_title": "iPhone 15 Pro Max 256GB"
  }
}

Authorizations

Authorization
string
header
required

JWT access token obtained from /auth-verify (login context) or /auth-signup. Set the bearer_token environment variable in your API client to apply it globally.

Body

application/json
escrow_id
string<uuid>
required

The escrow being reviewed. Must be in released, refunded, or ended status.

Example:

"d4e5f6a7-b8c9-0123-defa-234567890123"

rating
integer
required

Star rating from 1 (poor) to 5 (excellent).

Required range: 1 <= x <= 5
Example:

5

feedback
string | null

Optional written review visible on the counterparty's public profile.

Maximum string length: 2000
Example:

"Very smooth transaction. Delivered exactly as described."

Response

Review submitted

success
boolean
Example:

true

status
integer
Example:

201

data
object

A review received by a user, including reviewer identity and escrow context.