Skip to main content
PUT
Update Seller Profile

Endpoint

Authentication

Required. Must be authenticated as a seller. Include a valid JWT token in the Authorization header.

Request Body

string
required
URL or identifier for the seller’s identity document (e.g., government-issued ID, passport). Cannot be empty.
string
required
Valid URL to the seller’s selfie image for identity verification. Must be a valid URL format.

Response

boolean
Indicates whether the profile update was successful.
string
Human-readable message describing the result.
object
Updated user object with complete profile information (password hash is excluded).
string
User’s unique identifier.
string
User’s email address.
string
User’s role (will be “seller”).
string
User’s full name.
string
User’s phone number in international format.
object
Updated seller profile with new verification documents.
string
The newly uploaded identity document URL or identifier.
string
The newly uploaded selfie URL.
string
Will be set to “pending” after this update.
boolean
Whether the seller has a verified badge.
string
ISO 8601 timestamp of when the account was created.
string
ISO 8601 timestamp of when the account was last updated.

Example Request

Example Response

200 Success

Error Responses

error
Bad Request - Validation error.
error
Unauthorized - Missing or invalid authentication token.
error
Forbidden - User is not a seller (admin accounts cannot update seller profile).
error
Server Error - Internal server error.

Notes

  • This endpoint is only accessible to users with the “seller” role
  • Both identity_document and selfie_url must be provided
  • The selfie_url must be a valid URL format
  • After updating, the verification_status is automatically set to “pending”
  • Documents should be uploaded to a storage service (e.g., AWS S3, Cloudinary) before calling this endpoint
  • An admin will review the submitted documents and update the verification status
  • Sellers can update their documents multiple times (e.g., if rejected, they can resubmit)
  • The verification process is asynchronous - sellers should poll the /api/auth/me endpoint or wait for notifications to check verification status