Replace accounts

Makes one of the accounts signed in on this browser the current one — the account an account menu switches to — and answers the list in its new order, current first.

PUT /v1/iam/accounts

Addresshttps://api.hanzo.ai/v1/iam/accounts
MethodPUT
Operationput_iam_accounts
AuthAuthorization: Bearer $HANZO_API_KEY

Makes one of the accounts signed in on this browser the current one — the account an account menu switches to — and answers the list in its new order, current first.

Only an account ALREADY signed in here can be chosen, by the subject GET /v1/iam/accounts named it with; anything else is refused and the order is unchanged. Nobody is signed in or out, and nothing is granted: each account keeps resolving to its own row, its own org and its own roles, so switching cannot carry one account's standing to another. Like every write on the session cookie it is taken only from this site's own pages, as JSON.

Request

The document declares no body for PUT /v1/iam/accounts. The handler is typed in cloud but its shape is not yet emitted, so the fields are not listed here — ask MCP's describe for put_iam_accounts, which answers from the running route.

Response

The document declares no response body for this operation. It answers 200 on success and the platform error shape on failure — see Errors.

Examples

hanzo iam accounts replace
import { Configuration, IamApi } from 'hanzoai';

const api = new IamApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.putIamAccounts();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import IamApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = IamApi(client).put_iam_accounts()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.IamAPI.PutIamAccounts(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, iam_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = iam_api::put_iam_accounts(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.IamApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new IamApi(client).putIamAccounts();

The method above is the one at the current release of the document. [email protected] (npm) and [email protected] (PyPI) were generated from an earlier release, where this operation carried a different id, so it spells the method differently — regenerating the clients is what makes the two agree. SDKs →

curl -X PUT https://api.hanzo.ai/v1/iam/accounts \
  -H "Authorization: Bearer $HANZO_API_KEY"

MCP reaches iam through the iam tool, which names its 46 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_iam_applications"
         }
       }
     }'

IAM API · All Hanzo APIs · Interactive reference

Was this page useful?
Broken link or missing step? Drop it in #docs on Discord or open a PR.