Admin API
Administra miembros de la organización, espacios de trabajo, invitaciones y claves de API de forma programática con la Admin API, usando una clave de Admin API, un token OAuth org:admin, o una clave personal o de cuenta de servicio.
La Admin API te permite administrar los miembros, espacios de trabajo, invitaciones y claves de API de tu organización de forma programática en lugar de hacerlo manualmente en la Claude Console.
Autenticación
Autentícate con cualquiera de las tres credenciales. Una clave de Admin API cubre la mayoría de los endpoints. Los endpoints de cuentas de servicio, emisores de federación y reglas de federación aceptan solo un token OAuth org:admin. Envía una clave personal o una clave de cuenta de servicio en el encabezado x-api-key, como lo harías con una clave de Admin API. Los siguientes ejemplos llaman al endpoint de información de la organización con un token OAuth y con una clave de Admin API.
Los SDK de Python, TypeScript, C#, Go, Java, PHP y Ruby exponen la Admin API bajo client.beta.organization, y la CLI ant bajo ant beta:organization. Los ejemplos de esta página usan el cliente predeterminado, que lee una clave de Admin API desde ANTHROPIC_API_KEY o un token bearer de OAuth desde ANTHROPIC_AUTH_TOKEN. Los métodos de listado de los SDK en Python, TypeScript, C#, Go y Java devuelven un iterador que obtiene más páginas bajo demanda, por lo que limit establece el tamaño de página, no el total. Los ejemplos de PHP, Ruby y curl devuelven una página. En la CLI, --limit limita los resultados en las listas de miembros, invitaciones, espacios de trabajo, miembros de espacios de trabajo y claves de API. Para los parámetros y respuestas de cada endpoint, consulta la referencia de la Admin API.
Token bearer de OAuth
Inicia sesión con la CLI ant bajo un perfil dedicado con el alcance org:admin (consulta Acceso de administrador), luego exporta el token bearer. --profile admin almacena la credencial org:admin bajo su propio perfil y lo convierte en el perfil activo de la CLI. La variable exportada se aplica a cada llamada del SDK y de la CLI en ese shell. Usa un shell que reserves para administración, elimina la variable cuando termines y vuelve a cambiar la CLI con ant profile activate default:
ant auth login --profile admin --scope "org:admin"
export ANTHROPIC_AUTH_TOKEN=$(ant auth print-credentials --profile admin --access-token)Los tokens interactivos son de corta duración. Si las solicitudes comienzan a devolver 401, vuelve a ejecutar el comando export para actualizar el token.
Los SDK y la CLI ant leen ANTHROPIC_AUTH_TOKEN automáticamente. Deja ANTHROPIC_API_KEY sin definir en el mismo shell para que envíen el token bearer. Las cargas de trabajo automatizadas omiten el inicio de sesión: se autentican mediante la federación de identidades de carga de trabajo, y los SDK y la CLI realizan el intercambio de tokens a partir de las variables de entorno de federación. Consulta Inicializar una carga de trabajo para administrar WIF.
Llama a la Admin API con el token exportado:
client = anthropic.Anthropic()
organization = client.beta.organization.retrieve()
print(f"id: {organization.id}")
print(f"name: {organization.name}")Un token org:admin otorga acceso a toda la organización, independientemente del espacio de trabajo al que esté vinculado el perfil subyacente o la regla de federación.
Para CI y otras cargas de trabajo no interactivas, genera el token con Workload Identity Federation en lugar de iniciar sesión de forma interactiva. Consulta Administrar WIF con la Admin API.
Clave de Admin API
Para crear una clave de Admin API para tu tipo de organización, consulta Crear una clave de Admin API.
client = anthropic.Anthropic()
organization = client.beta.organization.retrieve()
print(f"id: {organization.id}")
print(f"name: {organization.name}")Cómo funciona la Admin API
Autentícate con cualquier credencial de Autenticación, luego administra los siguientes recursos:
- Miembros de la organización y sus roles
- Invitaciones de la organización
- Espacios de trabajo y sus miembros
- Claves de API
- Cuentas de servicio, emisores de federación y reglas de federación (solo token OAuth
org:admin)
Los usos comunes incluyen automatizar la incorporación y la baja de usuarios, administrar el acceso a espacios de trabajo y auditar claves de API.
Roles y permisos de la organización
Hay cinco roles a nivel de organización. Para más detalles, consulta Roles y permisos de la API Console.
| Rol | Permisos |
|---|---|
| user | Puede usar el playground |
| claude_code_user | Puede usar el playground y Claude Code |
| developer | Puede usar el playground y administrar claves de API |
| billing | Puede usar el playground y administrar detalles de facturación |
| admin | Puede hacer todo lo anterior, además de administrar usuarios |
Los owners y primary owners de la organización tienen todos los permisos de admin y también pueden administrar admins. Todas las referencias al rol admin en esta página también se aplican a owners y primary owners.
Conceptos clave
Miembros de la organización
Lista los miembros de la organización, actualiza sus roles y elimínalos.
Lista los miembros de tu organización:
client = anthropic.Anthropic()
users = client.beta.organization.users.list(limit=10)
# Obtiene automáticamente más páginas según sea necesario.
for user in users:
print(f"{user.id}: {user.email} ({user.role})")Actualiza el rol de un miembro:
client = anthropic.Anthropic()
user = client.beta.organization.users.update(
"user_01XyDMpzjS89pFZXqSFUBDr6", role="developer"
)
print(f"id: {user.id}")
print(f"role: {user.role}")Elimina un miembro de la organización:
client = anthropic.Anthropic()
removed_user = client.beta.organization.users.remove("user_01XyDMpzjS89pFZXqSFUBDr6")
print(f"id: {removed_user.id}")Invitaciones de la organización
Invita usuarios a tu organización y administra las invitaciones pendientes.
Invita a un usuario a tu organización:
client = anthropic.Anthropic()
invite = client.beta.organization.invites.create(
email="user@example.com", role="developer"
)
print(f"id: {invite.id}")
print(f"email: {invite.email}")
print(f"status: {invite.status}")
print(f"expires_at: {invite.expires_at}")Lista las invitaciones pendientes:
client = anthropic.Anthropic()
invites = client.beta.organization.invites.list(limit=10)
# Obtiene automáticamente más páginas según sea necesario.
for invite in invites:
print(f"{invite.id}: {invite.email} ({invite.status})")Elimina una invitación:
client = anthropic.Anthropic()
deleted_invite = client.beta.organization.invites.delete(
"invite_015gWxHNr6h6TdRPZTmuCGnn"
)
print(f"id: {deleted_invite.id}")Espacios de trabajo
Consulta Espacios de trabajo para ver ejemplos de la Console y la API.
Miembros de espacios de trabajo
Administra el acceso de usuarios a espacios de trabajo específicos:
Agrega un miembro a un espacio de trabajo:
client = anthropic.Anthropic()
member = client.beta.organization.workspaces.members.add(
"wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ",
user_id="user_01XyDMpzjS89pFZXqSFUBDr6",
workspace_role="workspace_developer",
)
print(f"user_id: {member.user_id}")
print(f"workspace_role: {member.workspace_role}")Lista los miembros de un espacio de trabajo:
client = anthropic.Anthropic()
members = client.beta.organization.workspaces.members.list(
"wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ", limit=10
)
# Obtiene automáticamente más páginas según sea necesario.
for member in members:
print(f"{member.user_id}: {member.workspace_role}")Actualiza el rol de un miembro del espacio de trabajo:
client = anthropic.Anthropic()
member = client.beta.organization.workspaces.members.update(
"user_01XyDMpzjS89pFZXqSFUBDr6",
workspace_id="wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ",
workspace_role="workspace_admin",
)
print(f"user_id: {member.user_id}")
print(f"workspace_role: {member.workspace_role}")Elimina un miembro de un espacio de trabajo:
client = anthropic.Anthropic()
removed_member = client.beta.organization.workspaces.members.remove(
"user_01XyDMpzjS89pFZXqSFUBDr6", workspace_id="wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ"
)
print(f"user_id: {removed_member.user_id}")Claves de API
Monitorea y administra las claves de API. Cada clave en la respuesta incluye su marca de tiempo expires_at (null para claves sin vencimiento) y principal, la identidad como la que actúa (consulta Tipos de claves). Para una clave personal, principal es {"type": "user_actor", "user_id": "user_..."}; para una clave de cuenta de servicio, {"type": "service_account_actor", "service_account_id": "svac_..."}; y para una clave de espacio de trabajo, null. Cada clave también tiene un objeto scope: {"type": "workspace", "workspace_id": "wrkspc_..."} para una clave vinculada a un espacio de trabajo, o {"type": "organization"} para una clave que puede funcionar en cualquier espacio de trabajo al que la cuenta tenga acceso. El campo de nivel superior workspace_id está obsoleto y es null tanto para las claves vinculadas al Default Workspace como para las claves sin alcance de espacio de trabajo; usa scope para distinguirlas. Filtrar la lista por workspace_id con el ID del Default Workspace devuelve solo las claves vinculadas al Default Workspace; las claves sin alcance de espacio de trabajo no se devuelven bajo ningún filtro workspace_id.
Lista las claves de API activas en un espacio de trabajo:
client = anthropic.Anthropic()
api_keys = client.beta.organization.api_keys.list(
limit=10, status="active", workspace_id="wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ"
)
# Obtiene automáticamente más páginas según sea necesario.
for api_key in api_keys:
print(f"{api_key.id}: {api_key.name} ({api_key.status})")Renombra o desactiva una clave de API:
client = anthropic.Anthropic()
api_key = client.beta.organization.api_keys.update(
"apikey_01Rj2N8SVvo6BePZj99NhmiT", status="inactive", name="New Key Name"
)
print(f"id: {api_key.id}")
print(f"name: {api_key.name}")
print(f"status: {api_key.status}")Cuentas de servicio
Crea y administra cuentas de servicio (svac_...), las identidades no humanas como las que actúan las claves de cuenta de servicio y los tokens de Workload Identity Federation. Estos endpoints, al igual que los endpoints de emisores de federación y reglas de federación, requieren un token OAuth org:admin. Consulta Administrar WIF con la Admin API.
Emisores de federación
Registra los proveedores de identidad OIDC (fdis_...) cuyos tokens pueden afirmar la identidad de carga de trabajo para tu organización. Consulta Administrar WIF con la Admin API.
Reglas de federación
Administra las reglas (fdrl_...) que asignan tokens de emisores a cuentas de servicio y alcances. Consulta Administrar WIF con la Admin API.
Acceder a la información de la organización
El endpoint /v1/organizations/me devuelve la organización a la que pertenece tu credencial:
client = anthropic.Anthropic()
organization = client.beta.organization.retrieve()
print(f"id: {organization.id}")
print(f"name: {organization.name}"){
"id": "12345678-1234-5678-1234-567812345678",
"type": "organization",
"name": "Organization Name"
}Para detalles de los parámetros y esquemas de respuesta, consulta la referencia de la API de información de la organización.
Informes de uso y costos
Haz seguimiento del uso y los costos de tu organización con la API de uso y costos.
Analíticas de Claude Code
Monitorea la productividad de los desarrolladores y la adopción de Claude Code con la API de analíticas de Claude Code.
Límites de velocidad
Lee los "rate limits" (límites de velocidad) configurados para tu organización y sus espacios de trabajo con la API de límites de velocidad.
Compliance API
Recupera datos de auditoría y actividad de tu organización con la Compliance API. Las claves de Admin API solo pueden leer el Activity Feed. Para acceso completo, consulta Configurar la Compliance API.
Mejores prácticas
- Usa nombres y descripciones significativos para los espacios de trabajo y las claves de API
- Maneja los errores de las operaciones fallidas
- Audita regularmente los roles y permisos de los miembros
- Limpia los espacios de trabajo sin uso y las invitaciones vencidas
- Monitorea el uso de las claves de API, audita el
expires_atde cada clave y rota las claves periódicamente
Preguntas frecuentes
La Admin API acepta una clave de Admin API (que comienza con sk-ant-admin), un token bearer de OAuth con el alcance org:admin, o una clave personal o clave de cuenta de servicio que no esté limitada a un espacio de trabajo específico. Solo los miembros de la organización con el rol admin pueden aprovisionar claves de Admin API, y solo los miembros con el rol admin, owner o primary owner pueden obtener tokens org:admin. Una clave personal o una clave de cuenta de servicio tiene los mismos permisos que la cuenta vinculada. Consulta Autenticación.
No. Las claves de API se crean en la Claude Console. La Admin API solo puede leer, renombrar y cambiar el estado de las claves existentes.
El comportamiento depende del tipo de clave.
Las claves personales dejan de funcionar cuando su usuario es eliminado de la organización. Las claves de cuenta de servicio dejan de funcionar si su cuenta de servicio se archiva, pero siguen funcionando incluso si el usuario que las creó es eliminado. Las claves de API de espacio de trabajo siguen funcionando. En el espacio de trabajo de Claude Code, cada clave está vinculada al miembro que la creó y deja de funcionar cuando ese miembro es eliminado.
No. La API no puede eliminar miembros con el rol admin.
Las invitaciones vencen después de 21 días. El período de vencimiento no es configurable.
Para preguntas específicas sobre espacios de trabajo, consulta las Preguntas frecuentes sobre espacios de trabajo.
Was this page helpful?