Admin API
The Admin API is unavailable for individual accounts. To collaborate with teammates and add members, set up your organization in Console → Settings → Organization.
The Admin API allows you to programmatically manage your organization's resources, including organization members, workspaces, and API keys. This provides programmatic control over administrative tasks that would otherwise require manual configuration in the Claude Console.
The Admin API requires special access
The Admin API requires a special Admin API key (starting with sk-ant-admin...) that differs from standard API keys. Only organization members with the admin role can provision Admin API keys through the Claude Console.
Claude Platform on AWS: Most of the Admin API is not available on Claude Platform on AWS. Workspace endpoints (create, get, list, update, and archive on /v1/organizations/workspaces) are available. Other endpoints including organization members, workspace members, invites, API keys, usage reports, cost reports, and rate limit reports are not available. See Claude Platform on AWS for details.
How the Admin API works
When you use the Admin API:
- You make requests using your Admin API key in the
x-api-keyheader - The API allows you to manage:
- Organization members and their roles
- Organization member invites
- Workspaces and their members
- API keys
This is useful for:
- Automating user onboarding/offboarding
- Programmatically managing workspace access
- Monitoring and managing API key usage
Organization roles and permissions
There are five organization-level roles. See more details in the API Console roles and permissions article.
| Role | Permissions |
|---|---|
| user | Can use Workbench |
| claude_code_user | Can use Workbench and Claude Code |
| developer | Can use Workbench and manage API keys |
| billing | Can use Workbench and manage billing details |
| admin | Can do all of the above, plus manage users |
Key concepts
Organization Members
You can list organization members, update member roles, and remove members.
# List organization members
curl "https://api.anthropic.com/v1/organizations/users?limit=10" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
# Update member role
curl "https://api.anthropic.com/v1/organizations/users/{user_id}" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY" \
--data '{"role": "developer"}'
# Remove member
curl --request DELETE "https://api.anthropic.com/v1/organizations/users/{user_id}" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
Organization Invites
You can invite users to organizations and manage those invites.
# Create invite
curl --request POST "https://api.anthropic.com/v1/organizations/invites" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY" \
--data '{
"email": "newuser@domain.com",
"role": "developer"
}'
# List invites
curl "https://api.anthropic.com/v1/organizations/invites?limit=10" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
# Delete invite
curl --request DELETE "https://api.anthropic.com/v1/organizations/invites/{invite_id}" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
Workspaces
For a comprehensive guide to workspaces, including Console and API examples, see Workspaces.
Workspace Members
Manage user access to specific workspaces:
# Add member to workspace
curl --request POST "https://api.anthropic.com/v1/organizations/workspaces/{workspace_id}/members" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY" \
--data '{
"user_id": "user_xxx",
"workspace_role": "workspace_developer"
}'
# List workspace members
curl "https://api.anthropic.com/v1/organizations/workspaces/{workspace_id}/members?limit=10" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
# Update member role
curl --request POST "https://api.anthropic.com/v1/organizations/workspaces/{workspace_id}/members/{user_id}" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY" \
--data '{
"workspace_role": "workspace_admin"
}'
# Remove member from workspace
curl --request DELETE "https://api.anthropic.com/v1/organizations/workspaces/{workspace_id}/members/{user_id}" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
API Keys
Monitor and manage API keys:
# List API keys
curl "https://api.anthropic.com/v1/organizations/api_keys?limit=10&status=active&workspace_id=wrkspc_xxx" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
# Update API key
curl --request POST "https://api.anthropic.com/v1/organizations/api_keys/{api_key_id}" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY" \
--data '{
"status": "inactive",
"name": "New Key Name"
}'
Accessing organization info
Get information about your organization programmatically with the /v1/organizations/me endpoint.
For example:
curl "https://api.anthropic.com/v1/organizations/me" \
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
{
"id": "12345678-1234-5678-1234-567812345678",
"type": "organization",
"name": "Organization Name"
}
This endpoint is useful for programmatically determining which organization an Admin API key belongs to.
For complete parameter details and response schemas, see the Organization Info API reference.
Usage and cost reports
Track your organization's usage and costs with the Usage and Cost API.
Claude Code analytics
Monitor developer productivity and Claude Code adoption with the Claude Code Analytics API.
Rate limits
Read the rate limits configured for your organization and its workspaces with the Rate Limits API.
Compliance API
Retrieve audit and activity data for your organization with the Compliance API. Admin API keys can read the Activity Feed only; for full access, see Get access to the Compliance API.
Best practices
To effectively use the Admin API:
- Use meaningful names and descriptions for workspaces and API keys
- Implement proper error handling for failed operations
- Regularly audit member roles and permissions
- Clean up unused workspaces and expired invites
- Monitor API key usage and rotate keys periodically
FAQ
What permissions are needed to use the Admin API?
Only organization members with the admin role can use the Admin API. They must also have a special Admin API key (starting with sk-ant-admin).
Can I create new API keys through the Admin API?
No, new API keys can only be created through the Claude Console for security reasons. The Admin API can only manage existing API keys.
What happens to API keys when removing a user?
API keys persist in their current state as they are scoped to the Organization, not to individual users.
Can organization admins be removed through the API?
No, organization members with the admin role cannot be removed through the API for security reasons.
How long do organization invites last?
Organization invites expire after 21 days. There is currently no way to modify this expiration period.
For workspace-specific questions, see the Workspaces FAQ.