Update own profile
Overview
Update the currently authenticated user's own profile — name, phone, title, email and optional password. Changing the password revokes the caller's other tokens and is audited (AUTH_PASSWORD_CHANGED).
Prerequisites
- A bearer token in the
Authorizationheader.
Base URL
| Environment | URL |
|---|---|
| Production | https://production-api.shoutaboutus.com |
| Development | https://development-api.shoutaboutus.com |
Endpoint
POST /api/v1/users/profile/update
Authentication
-
Requires a bearer token in the
Authorization: Bearer <bearer-token>header. -
Any authenticated user — collection bearer token.
-
Email must be unique across
users(ignoring the caller).
Rate limit
- No rate limit.
Request body
| Field | Type | Required | Description |
|---|---|---|---|
first_name | string | Required | 2–100 chars; no angle brackets. |
last_name | string | Required | ≤100 chars; no angle brackets. |
phone_number | string | Required | 9–15 chars; no angle brackets. |
title | string | Optional | ≤100 chars. |
email | string | Required | Valid email; unique in users (ignoring the caller). |
password | string | Optional | 8–100 chars, mixed case + number + special char, no spaces/quotes; blank leaves the password unchanged. |
{
"first_name": "Jane",
"last_name": "Doe",
"phone_number": "+15551234567",
"title": "Owner",
"email": "[email protected]",
"password": null
}How it works
- Synchronous (DB transaction).
200on success. 422on validation failure.
Response
200 OK · 200
200{
"data": {
"status": "success",
"response": "Saved Successfully"
}
}422 Validation error · 422
422{
"message": "The email field must be a valid email address.",
"errors": {
"email": [
"The email field must be a valid email address."
],
"phone_number": [
"The phone number field must be at least 9 characters."
]
}
}Errors
| Status | Meaning |
|---|---|
401 | The bearer token is missing, expired or invalid |
422 | Validation error |
500 | Unexpected server error |
Example request
curl --request POST \
--url "https://production-api.shoutaboutus.com/api/v1/users/profile/update" \
--header 'Authorization: Bearer <bearer-token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"first_name": "Jane", "last_name": "Doe", "phone_number": "+15551234567", "title": "Owner", "email": "[email protected]", "password": null}'Updated 11 days ago
Did this page help you?
