Update My Profile

PUT /v1/user

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" }
On this page
Update My Profile
Iris