The role_bindings functions are currently in ALPHA. The API may change without notice. A one-time warning is emitted on first use.
Role bindings assign a role to a user on a specific resource. Only one binding per user per resource is allowed.
Create a Role Binding
import { createRoleBinding } from "@arizeai/ax-client";
const binding = await createRoleBinding({
userId: "your_user_id",
roleId: "your_role_id",
resourceType: "PROJECT", // "SPACE" or "PROJECT"
resourceId: "your_project_id",
});
Get a Role Binding
import { getRoleBinding } from "@arizeai/ax-client";
const binding = await getRoleBinding({ bindingId: "your_binding_id" });
console.log(binding.userId, binding.roleId);
Update a Role Binding
Only the roleId can be changed on an existing binding. The user, resource type, and resource ID remain the same.
import { updateRoleBinding } from "@arizeai/ax-client";
const binding = await updateRoleBinding({
bindingId: "your_binding_id",
roleId: "your_new_role_id",
});
Delete a Role Binding
import { deleteRoleBinding } from "@arizeai/ax-client";
await deleteRoleBinding({ bindingId: "your_binding_id" });