Admin API
Gerencie membros da organização, workspaces, convites e chaves de API programaticamente com a Admin API, usando uma chave de Admin API, um token OAuth org:admin ou uma chave pessoal ou de conta de serviço.
A Admin API permite que você gerencie os membros, workspaces, convites e chaves de API da sua organização programaticamente, em vez de manualmente no Claude Console.
Autenticação
Autentique-se com qualquer uma das três credenciais. Uma chave de Admin API cobre a maioria dos endpoints. Os endpoints de conta de serviço, emissor de federação e regra de federação aceitam apenas um token OAuth org:admin. Envie uma chave pessoal ou chave de conta de serviço no cabeçalho x-api-key, como você faria com uma chave de Admin API. Os exemplos a seguir chamam o endpoint de informações da organização com um token OAuth e com uma chave de Admin API.
Os SDKs Python, TypeScript, C#, Go, Java, PHP e Ruby expõem a Admin API em client.beta.organization, e a CLI ant em ant beta:organization. Os exemplos nesta página usam o cliente padrão, que lê uma chave de Admin API de ANTHROPIC_API_KEY ou um token bearer OAuth de ANTHROPIC_AUTH_TOKEN. Os métodos de listagem dos SDKs em Python, TypeScript, C#, Go e Java retornam um iterador que busca mais páginas sob demanda, portanto limit define o tamanho da página, não o total. Os exemplos em PHP, Ruby e curl retornam uma página. Na CLI, --limit limita os resultados nas listas de membros, convites, workspaces, membros de workspace e chaves de API. Para os parâmetros e respostas de cada endpoint, consulte a referência da Admin API.
Token bearer OAuth
Faça login com a CLI ant em um perfil dedicado com o escopo org:admin (consulte Acesso de administrador) e, em seguida, exporte o token bearer. --profile admin armazena a credencial org:admin em seu próprio perfil e o torna o perfil ativo da CLI. A variável exportada se aplica a todas as chamadas de SDK e CLI naquele shell. Use um shell reservado para administração, remova a variável quando terminar e volte a CLI ao perfil padrão com ant profile activate default:
ant auth login --profile admin --scope "org:admin"
export ANTHROPIC_AUTH_TOKEN=$(ant auth print-credentials --profile admin --access-token)Tokens interativos têm vida curta. Se as requisições começarem a retornar 401, execute novamente o comando export para atualizar o token.
Os SDKs e a CLI ant leem ANTHROPIC_AUTH_TOKEN automaticamente. Deixe ANTHROPIC_API_KEY sem definição no mesmo shell para que eles enviem o token bearer. Cargas de trabalho automatizadas pulam o login: elas se autenticam por meio de federação de identidade de carga de trabalho, e os SDKs e a CLI realizam a troca de token a partir das variáveis de ambiente de federação. Consulte Inicializar uma carga de trabalho para gerenciar WIF.
Chame a Admin API com o token exportado:
client = anthropic.Anthropic()
organization = client.beta.organization.retrieve()
print(f"id: {organization.id}")
print(f"name: {organization.name}")Um token org:admin concede acesso a toda a organização, independentemente do workspace ao qual o perfil subjacente ou a regra de federação esteja vinculado.
Para CI e outras cargas de trabalho não interativas, emita o token com Workload Identity Federation em vez de fazer login interativamente. Consulte Gerenciar WIF com a Admin API.
Chave de Admin API
Para criar uma chave de Admin API para o seu tipo de organização, consulte Criar uma chave de Admin API.
client = anthropic.Anthropic()
organization = client.beta.organization.retrieve()
print(f"id: {organization.id}")
print(f"name: {organization.name}")Como a Admin API funciona
Autentique-se com qualquer credencial de Autenticação e, em seguida, gerencie os seguintes recursos:
- Membros da organização e suas funções
- Convites da organização
- Workspaces e seus membros
- Chaves de API
- Contas de serviço, emissores de federação e regras de federação (somente token OAuth
org:admin)
Usos comuns incluem automatizar a integração e o desligamento de usuários, gerenciar o acesso a workspaces e auditar chaves de API.
Funções e permissões da organização
Existem cinco funções no nível da organização. Para detalhes, consulte Funções e permissões do API Console.
| Função | Permissões |
|---|---|
| user | Pode usar o playground |
| claude_code_user | Pode usar o playground e o Claude Code |
| developer | Pode usar o playground e gerenciar chaves de API |
| billing | Pode usar o playground e gerenciar detalhes de cobrança |
| admin | Pode fazer tudo o que foi mencionado acima, além de gerenciar usuários |
Owners e primary owners da organização têm todas as permissões de admin e também podem gerenciar admins. Todas as referências à função admin nesta página também se aplicam a owners e primary owners.
Conceitos principais
Membros da organização
Liste membros da organização, atualize suas funções e remova-os.
Liste os membros da sua organização:
client = anthropic.Anthropic()
users = client.beta.organization.users.list(limit=10)
# Busca automaticamente mais páginas conforme necessário.
for user in users:
print(f"{user.id}: {user.email} ({user.role})")Atualize a função de um membro:
client = anthropic.Anthropic()
user = client.beta.organization.users.update(
"user_01XyDMpzjS89pFZXqSFUBDr6", role="developer"
)
print(f"id: {user.id}")
print(f"role: {user.role}")Remova um membro da organização:
client = anthropic.Anthropic()
removed_user = client.beta.organization.users.remove("user_01XyDMpzjS89pFZXqSFUBDr6")
print(f"id: {removed_user.id}")Convites da organização
Convide usuários para sua organização e gerencie convites pendentes.
Convide um usuário para sua organização:
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}")Liste convites pendentes:
client = anthropic.Anthropic()
invites = client.beta.organization.invites.list(limit=10)
# Busca automaticamente mais páginas conforme necessário.
for invite in invites:
print(f"{invite.id}: {invite.email} ({invite.status})")Exclua um convite:
client = anthropic.Anthropic()
deleted_invite = client.beta.organization.invites.delete(
"invite_015gWxHNr6h6TdRPZTmuCGnn"
)
print(f"id: {deleted_invite.id}")Workspaces
Consulte Workspaces para exemplos do Console e da API.
Membros de workspace
Gerencie o acesso de usuários a workspaces específicos:
Adicione um membro a um workspace:
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}")Liste os membros de um workspace:
client = anthropic.Anthropic()
members = client.beta.organization.workspaces.members.list(
"wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ", limit=10
)
# Busca automaticamente mais páginas conforme necessário.
for member in members:
print(f"{member.user_id}: {member.workspace_role}")Atualize a função de um membro de workspace:
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}")Remova um membro de um workspace:
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}")Chaves de API
Monitore e gerencie chaves de API. Cada chave na resposta inclui seu timestamp expires_at (null para chaves sem expiração) e principal, a identidade como a qual ela atua (consulte Tipos de chave). Para uma chave pessoal, principal é {"type": "user_actor", "user_id": "user_..."}; para uma chave de conta de serviço, {"type": "service_account_actor", "service_account_id": "svac_..."}; e para uma chave de workspace, null. Cada chave também tem um objeto scope: {"type": "workspace", "workspace_id": "wrkspc_..."} para uma chave vinculada a um workspace, ou {"type": "organization"} para uma chave que pode funcionar em qualquer workspace ao qual a conta tenha acesso. O campo de nível superior workspace_id está descontinuado e é null tanto para chaves vinculadas ao Default Workspace quanto para chaves sem escopo de workspace; use scope para diferenciá-las. Filtrar a lista por workspace_id com o ID do Default Workspace retorna apenas chaves vinculadas ao Default Workspace; chaves sem escopo de workspace não são retornadas em nenhum filtro workspace_id.
Liste as chaves de API ativas em um workspace:
client = anthropic.Anthropic()
api_keys = client.beta.organization.api_keys.list(
limit=10, status="active", workspace_id="wrkspc_01JwQvzr7rXLA5AGx3HKfFUJ"
)
# Busca automaticamente mais páginas conforme necessário.
for api_key in api_keys:
print(f"{api_key.id}: {api_key.name} ({api_key.status})")Renomeie ou desative uma chave 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}")Contas de serviço
Crie e gerencie contas de serviço (svac_...), as identidades não humanas como as quais as chaves de conta de serviço e os tokens de Workload Identity Federation atuam. Esses endpoints, assim como os endpoints de emissor de federação e regra de federação, requerem um token OAuth org:admin. Consulte Gerenciar WIF com a Admin API.
Emissores de federação
Registre os provedores de identidade OIDC (fdis_...) cujos tokens podem afirmar a identidade de carga de trabalho para sua organização. Consulte Gerenciar WIF com a Admin API.
Regras de federação
Gerencie as regras (fdrl_...) que mapeiam tokens de emissores para contas de serviço e escopos. Consulte Gerenciar WIF com a Admin API.
Acessando informações da organização
O endpoint /v1/organizations/me retorna a organização à qual sua credencial pertence:
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 detalhes de parâmetros e esquemas de resposta, consulte a referência da API de Informações da Organização.
Relatórios de uso e custo
Acompanhe o uso e os custos da sua organização com a API de Uso e Custo.
Análises do Claude Code
Monitore a produtividade dos desenvolvedores e a adoção do Claude Code com a API de Análises do Claude Code.
Limites de taxa
Leia os limites de taxa configurados para sua organização e seus workspaces com a API de Limites de Taxa.
Compliance API
Recupere dados de auditoria e atividade da sua organização com a Compliance API. Chaves de Admin API podem ler apenas o Activity Feed. Para acesso completo, consulte Configurar a Compliance API.
Melhores práticas
- Use nomes e descrições significativos para workspaces e chaves de API
- Trate erros de operações com falha
- Audite regularmente as funções e permissões dos membros
- Limpe workspaces não utilizados e convites expirados
- Monitore o uso de chaves de API, audite o
expires_atde cada chave e faça a rotação das chaves periodicamente
Perguntas frequentes
A Admin API aceita uma chave de Admin API (começando com sk-ant-admin), um token bearer OAuth com o escopo org:admin, ou uma chave pessoal ou chave de conta de serviço que não esteja restrita a um workspace específico. Somente membros da organização com a função admin podem provisionar chaves de Admin API, e somente membros com a função admin, owner ou primary owner podem obter tokens org:admin. Uma chave pessoal ou chave de conta de serviço tem as mesmas permissões da conta vinculada. Consulte Autenticação.
Não. Você cria chaves de API no Claude Console. A Admin API só pode ler, renomear e alterar o status de chaves existentes.
O comportamento depende do tipo de chave.
Chaves pessoais param de funcionar quando seu usuário é removido da organização. Chaves de conta de serviço param de funcionar se sua conta de serviço for arquivada, mas continuam funcionando mesmo que o usuário que as criou seja removido. Chaves de API de workspace continuam funcionando. No workspace do Claude Code, cada chave é vinculada ao membro que a criou e para de funcionar quando esse membro é removido.
Não. A API não pode remover membros com a função admin.
Os convites expiram após 21 dias. O período de expiração não é configurável.
Para perguntas específicas sobre workspaces, consulte as Perguntas frequentes sobre Workspaces.
Was this page helpful?