Update My Profile
Update your own profile. There is no id in the path — this always edits the authenticated caller (it mirrors GET /v1/user). All fields are optional; only the fields you include in the body are updated, the rest are left as-is.
This edits user properties only. Plan and limits are an account property — change them via the account, not here (see /account/plan). Editing another user is an admin operation under /admin/users/{id}.
Request body
email string
New email address. Triggers re-verification (a fresh verification email is sent and
email_verified flips to false until you click the link).Response (200 OK)
Returns your updated profile — same shape as GET /v1/user (identity only; no plan/billing fields).
Errors
400 Bad Request
Invalid JSON or invalid email format.
401 Unauthorized
Missing or invalid auth.
Request
curl -X PUT "https://api.ngris.com/v1/user" \
-H "X-API-KEY: <your_api_key>" \
-H "Content-Type: application/json" \
-d '{
"email": "alice.new@example.com"
}'
Python
from ngris import Ngris
client = Ngris(api_key="<your_api_key>")
client.users.update({"email": "alice.new@example.com"})
Response — 200 OK
{
"id": 1024,
"username": "alice",
"email": "alice.new@example.com",
"email_verified": false,
"status": "active",
"created_at": "2026-01-15T12:00:00Z"
}