Update Client Status
Quick disable/reactivate switch. disabled or revoked clients can't authenticate (login attempts get 401), but their credentials, sessions table, role assignments, and audit history are all preserved — making this the right action when you might want to reactivate later. For permanent removal use DELETE.
Active sessions are not automatically revoked when a client is disabled — they continue until expiry. Pair with POST .../sessions/revoke-all to kick the user off everywhere immediately.
Path parameters
id string (uuid) Req
Endpoint UUID.
client_id int64 Req
Client ID.
Request body
status string Req
One of
invited | active | disabled | revoked.Response (200 OK)
client_id int64
The updated client's ID.
status string
The new status.
message string
"Client status updated successfully".Errors
400 Bad Request
Invalid request body, or
status not one of the four allowed values.401 Unauthorized
Missing auth.
403 Forbidden
Caller lacks the
endpoints:update permission in the active account.404 Not Found
Endpoint doesn't belong to the calling account, or client not found.
Request — disable
curl -X PUT "https://api.ngris.com/v1/endpoints/<uuid>/rbac/clients/11/status" \
-H "X-API-KEY: <your_api_key>" \
-H "Content-Type: application/json" \
-d '{"status": "disabled"}'
Python — disable + revoke all sessions
from ngris import Ngris
client = Ngris(api_key="<your_api_key>")
client._put_raw(
"/endpoints/<endpoint_uuid>/rbac/clients/11/status",
{"status": "disabled"},
)
# Kick the user off any active sessions:
client._post_raw(
"/endpoints/<endpoint_uuid>/rbac/clients/11/sessions/revoke-all",
{},
)
Response — 200 OK
{
"client_id": 11,
"status": "disabled",
"message": "Client status updated successfully"
}