Manajemen pengguna
Kelola orang-orang di organisasi Claude Enterprise Anda dengan Admin API: daftarkan anggota dan ubah peran, kirim dan tarik undangan, kelola grup, dan baca peran kustom.
Halaman ini membahas cara mengelola orang-orang di organisasi Claude Enterprise (claude.ai) Anda secara terprogram, menggunakan Admin API: mendaftar anggota dan mencarinya berdasarkan alamat email, mengubah peran anggota, menghapus anggota, mengirim dan menarik undangan, mengelola grup enterprise Anda beserta keanggotaannya, dan membaca peran kustom organisasi Anda. Untuk organisasi Claude Console (Claude Platform), lihat panduan Admin API untuk Claude Console.
Endpoint mana yang dapat digunakan organisasi Anda?
Admin API adalah satu set endpoint di bawah https://api.anthropic.com/v1/organizations/. Organisasi Claude Console dan Claude Enterprise melakukan autentikasi dengan kunci yang berbeda dan masing-masing memiliki akses ke subset endpoint yang berbeda:
| Endpoint | Claude Console (Claude Platform) | Claude Enterprise (claude.ai) |
|---|---|---|
| Anggota dan undangan | Tersedia; lihat panduan Admin API | Tersedia (halaman ini) |
| Grup | Tidak tersedia | Tersedia (halaman ini) |
| Peran kustom | Tidak tersedia | Tersedia, hanya-baca (halaman ini) |
| Plugin | Tidak tersedia | Tersedia dalam beta |
| Batas pengeluaran | Tidak tersedia | Tersedia |
| Laporan penggunaan dan biaya | Tersedia; lihat Usage and Cost API | Tersedia melalui Claude Enterprise Analytics API |
| Workspace, kunci API, batas laju, dan endpoint lain dalam panduan Admin API | Tersedia | Tidak tersedia |
Anggota dan undangan menggunakan endpoint yang sama untuk kedua jenis organisasi; halaman ini mendokumentasikan perilakunya di Claude Enterprise, termasuk peran organisasi Claude Enterprise. Endpoint grup dan peran kustom hanya ada untuk Claude Enterprise.
Ikhtisar
Halaman ini membahas lima sumber daya:
| Sumber daya | Endpoint | Digunakan untuk |
|---|---|---|
| Anggota | GET /v1/organizations/usersGET /v1/organizations/users/{user_id}POST /v1/organizations/users/{user_id}DELETE /v1/organizations/users/{user_id} | Mendaftar anggota organisasi atau mencari satu anggota berdasarkan email; mengubah peran anggota; menghapus anggota. |
| Undangan | POST /v1/organizations/invitesGET /v1/organizations/invitesGET /v1/organizations/invites/{invite_id}DELETE /v1/organizations/invites/{invite_id} | Mengundang seseorang ke organisasi, melacak status undangan, dan menariknya sebelum diterima. |
| Grup | GET /v1/organizations/rbac_groupsGET /v1/organizations/rbac_groups/{rbac_group_id}POST /v1/organizations/rbac_groupsPOST /v1/organizations/rbac_groups/{rbac_group_id}DELETE /v1/organizations/rbac_groups/{rbac_group_id} | Membaca grup enterprise Anda dan peran kustom yang terlampir pada masing-masing; membuat, mengganti nama, dan menghapus grup. |
| Anggota grup | GET /v1/organizations/rbac_groups/{rbac_group_id}/membersPOST /v1/organizations/rbac_groups/{rbac_group_id}/membersDELETE /v1/organizations/rbac_groups/{rbac_group_id}/members/{user_id} | Membaca anggota grup; menambah dan menghapus anggota. |
| Peran kustom | GET /v1/organizations/rbac_rolesGET /v1/organizations/rbac_roles/{rbac_role_id}GET /v1/organizations/rbac_roles/{rbac_role_id}/permissions | Membaca peran kustom organisasi Anda dan izin yang diberikan setiap peran. |
Peran kustom dan lampirannya ke grup dikelola di pengaturan organisasi claude.ai; API dapat membacanya tetapi tidak dapat mengubahnya.
Mulai cepat
Atur variabel lingkungan ANTHROPIC_API_KEY ke kunci Admin API Anda. Contoh-contoh di halaman ini membaca kunci dari variabel tersebut. SDK dan CLI ant mengirimkan header Authorization dan anthropic-version untuk Anda.
Daftarkan anggota organisasi, yang terbaru terlebih dahulu:
client = anthropic.Anthropic()
users = client.organization.users.list(limit=20)
for user in users:
print(f"{user.id}: {user.email} ({user.role})"){
"data": [
{
"type": "user",
"id": "user_01AbCdEfGhIjKlMnOpQrSt",
"email": "jane@example.com",
"name": "Jane Smith",
"role": "user",
"added_at": "2026-06-12T09:14:03Z"
}
],
"has_more": false,
"first_id": "user_01AbCdEfGhIjKlMnOpQrSt",
"last_id": "user_01AbCdEfGhIjKlMnOpQrSt"
}Konsep utama
Peran organisasi
Setiap anggota memiliki tepat satu peran organisasi. Operasi baca mengembalikan peran anggota sebagai salah satu dari lima nilai:
| Peran | Arti |
|---|---|
user | Anggota standar. |
managed | Anggota yang izinnya diberikan melalui peran kustom yang terlampir pada grup mereka. |
owner | Pemilik organisasi. |
membership_admin | Anggota yang dapat mengelola anggota organisasi. |
primary_owner | Pemilik utama organisasi. Hanya ada tepat satu. |
API hanya dapat menetapkan peran user dan managed, saat pembuatan undangan dan pembaruan peran. Menetapkan managed memerlukan scope write:rbac_groups selain write:members, karena izin anggota managed berasal dari peran kustom yang terlampir pada grup mereka. Peran administratif (owner, membership_admin, dan primary_owner) ditetapkan di pengaturan organisasi claude.ai, dan anggota yang memegangnya tidak dapat diubah atau dihapus melalui API ini.
Anggota dan undangan
Seseorang menjadi anggota dengan menerima undangan (atau melalui "single sign-on" (masuk tunggal), atau SSO, organisasi Anda, jika dikonfigurasi). Membuat undangan akan mengirimkan email undangan; undangan kemudian berstatus pending hingga penerima menerimanya (accepted) atau expires_at yang ditetapkan server terlewati (expired). Hanya undangan pending yang dapat ditarik. Untuk mengubah alamat email atau peran undangan yang tertunda, tarik undangan tersebut dan buat yang baru.
Jika paket organisasi Anda mengambil anggota dari kumpulan kursi (seat) terbatas yang dibeli, undangan yang tertunda menggunakan satu kursi. Endpoint pembuatan undangan tidak menerima parameter kursi atau tier: kursi ditetapkan secara otomatis dari tier terendah yang masih tersedia. Membuat undangan saat tidak ada kursi kosong akan gagal dengan error 400 alih-alih membeli kursi. Menarik undangan, membiarkannya kedaluwarsa, atau menghapus anggota di kemudian hari akan mengembalikan kursi ke kumpulan.
Grup dan peran
Grup menghubungkan anggota dengan peran kustom ("role-based access control" (kontrol akses berbasis peran), yaitu rbac dalam path endpoint dan nama scope). Grup dimiliki oleh enterprise Anda secara keseluruhan (organisasi induk bersama setiap organisasi di bawahnya), bukan oleh satu organisasi, sehingga scope grup (read:rbac_groups dan write:rbac_groups) memerlukan kunci yang dibuat untuk semua organisasi yang tertaut. Setiap grup membawa source_type: direct untuk grup yang dibuat di claude.ai, scim untuk grup yang disediakan oleh penyedia identitas Anda. Field role_ids pada grup mencantumkan ID peran kustom yang terlampir padanya; uraikan menjadi nama dan izin dengan endpoint peran kustom, dengan catatan bahwa katalog peran bersifat per organisasi sementara grup berlaku di seluruh enterprise, sehingga mengambil peran milik organisasi lain di enterprise Anda akan mengembalikan 404 untuk kunci Anda. Field ini bernilai null (bukan []) ketika data peran untuk sementara tidak tersedia, jadi coba lagi untuk membedakan pembacaan yang terdegradasi dari grup tanpa peran.
Pembuatan versi
Kirimkan header anthropic-version pada setiap permintaan; lihat Versi API untuk versi yang tersedia.
Batas laju
Endpoint Admin API berbagi batas per organisasi sebesar 100 permintaan per menit; pembuatan undangan memiliki batasnya sendiri sebesar 1.200 permintaan per jam. Permintaan yang melebihi batas mengembalikan 429 Too Many Requests.
Paginasi
Daftar anggota dan undangan menggunakan paginasi berbasis ID: kirimkan limit (default 20, maks 1000) ditambah paling banyak salah satu dari before_id atau after_id, dan lakukan paginasi menggunakan field first_id dan last_id dari setiap respons hingga has_more bernilai false. Daftar grup dan peran kustom menggunakan kursor opak: nilai next_page dari respons diteruskan tanpa perubahan sebagai parameter page pada permintaan berikutnya, hingga next_page bernilai null.
Saat Anda melakukan iterasi atas hasil, SDK mengambil halaman berikutnya untuk Anda, sehingga limit menetapkan ukuran halaman, bukan total. Di CLI, --limit menetapkan jumlah total hasil untuk daftar anggota dan undangan. Untuk daftar grup dan peran, opsi ini menetapkan ukuran halaman.
Respons error
Respons error mengikuti bentuk standar yang didokumentasikan di Errors.
Anggota
Mendaftar anggota
GET /v1/organizations/users mengembalikan anggota organisasi, yang paling baru ditambahkan terlebih dahulu. Filter berdasarkan email untuk mencari anggota tertentu; pencocokan tidak peka huruf besar/kecil dan menoleransi varian umum dari alamat yang sama (misalnya, jane+hiring@example.com cocok dengan jane@example.com). Memerlukan scope read:members.
Untuk detail parameter lengkap dan skema respons, lihat List users di referensi API.
client = anthropic.Anthropic()
users = client.organization.users.list(email="jane@example.com")
for user in users:
print(f"{user.id}: {user.email} ({user.role})")Mendapatkan anggota
GET /v1/organizations/users/{user_id} mengembalikan satu anggota berdasarkan ID. Memerlukan scope read:members.
Untuk detail parameter lengkap dan skema respons, lihat Get user di referensi API.
client = anthropic.Anthropic()
user = client.organization.users.retrieve("user_01AbCdEfGhIjKlMnOpQrSt")
print(f"id: {user.id}")
print(f"email: {user.email}")
print(f"role: {user.role}")Mengubah peran anggota
POST /v1/organizations/users/{user_id} menetapkan peran anggota menjadi user atau managed. Anggota yang memegang peran administratif (owner, membership_admin, atau primary_owner) tidak dapat diubah melalui endpoint ini, dan peran administratif tidak dapat ditetapkan; keduanya mengembalikan 400 dan dikelola di pengaturan organisasi claude.ai. Jika penyedia identitas organisasi Anda mengelola peran (SSO lanjutan atau penyediaan SCIM lanjutan), pembaruan peran mengembalikan 400. Memerlukan scope write:members, ditambah write:rbac_groups saat mengubah peran menjadi managed.
Untuk detail parameter lengkap dan skema respons, lihat Update user di referensi API.
client = anthropic.Anthropic()
user = client.organization.users.update("user_01AbCdEfGhIjKlMnOpQrSt", role="managed")
print(f"id: {user.id}")
print(f"role: {user.role}")Menghapus anggota
DELETE /v1/organizations/users/{user_id} menghapus anggota dari organisasi, mengembalikan kursi yang dibeli yang mereka tempati ke kumpulan organisasi. Anggota yang memegang peran administratif tidak dapat dihapus melalui endpoint ini, dan jika penyedia identitas Anda mengelola keanggotaan (SCIM), penghapusan mengembalikan 400. Memerlukan scope write:members.
Untuk detail parameter lengkap dan skema respons, lihat Remove user di referensi API.
client = anthropic.Anthropic()
removed_user = client.organization.users.remove("user_01AbCdEfGhIjKlMnOpQrSt")
print(f"id: {removed_user.id}"){
"type": "user_deleted",
"id": "user_01AbCdEfGhIjKlMnOpQrSt"
}Undangan
Membuat undangan
POST /v1/organizations/invites mengirimkan email undangan dan mengembalikan undangan dengan expires_at yang ditetapkan server. role harus berupa user atau managed. Jika undangan tertunda sudah ada untuk alamat email tersebut, atau alamat tersebut sudah milik seorang anggota, permintaan mengembalikan 400 yang menyebutkan sumber daya yang sudah ada. Organisasi yang penyedia identitasnya menyediakan pengguna secara otomatis (JIT atau SCIM) tidak dapat membuat undangan melalui API. Memerlukan scope write:members, ditambah write:rbac_groups saat role bernilai managed.
Pada paket yang mengambil anggota dari kumpulan kursi terbatas, undangan secara otomatis mengambil kursi dari tier terendah yang masih tersedia. API tidak menerima parameter tier. Jika tidak ada kursi kosong, permintaan gagal dengan error 400 alih-alih membeli kursi. Tambahkan kursi melalui manajemen paket organisasi dan coba lagi.
Field opsional rbac_group_ids mencantumkan grup (berdasarkan ID berawalan rbac_group_) yang akan ditetapkan kepada anggota saat mereka menerima undangan. Mengirimkan rbac_group_ids yang tidak kosong juga mengharuskan kunci membawa scope write:rbac_groups, karena penetapan grup dapat memberikan izin yang terlampir pada peran grup tersebut.
Untuk detail parameter lengkap dan skema respons, lihat Create invite di referensi API.
client = anthropic.Anthropic()
invite = client.organization.invites.create(
email="newhire@example.com",
role="managed",
rbac_group_ids=["rbac_group_01UvWxYzAbCdEfGhIjKlMn"],
)
print(f"id: {invite.id}")
print(f"email: {invite.email}")
print(f"status: {invite.status}")
print(f"expires_at: {invite.expires_at}"){
"type": "invite",
"id": "invite_01QrStUvWxYzAbCdEfGhIj",
"email": "newhire@example.com",
"role": "managed",
"invited_at": "2026-07-06T16:20:11Z",
"expires_at": "2026-07-27T16:20:11Z",
"accepted_at": null,
"status": "pending",
"rbac_group_ids": ["rbac_group_01UvWxYzAbCdEfGhIjKlMn"]
}Mendaftar undangan
GET /v1/organizations/invites mengembalikan undangan organisasi, yang terbaru terlebih dahulu, di seluruh status pending, accepted, dan expired; tidak ada filter status. Memerlukan scope read:members.
Untuk detail parameter lengkap dan skema respons, lihat List invites di referensi API.
client = anthropic.Anthropic()
invites = client.organization.invites.list(limit=20)
for invite in invites:
print(f"{invite.id}: {invite.email} ({invite.status})")Mendapatkan undangan
GET /v1/organizations/invites/{invite_id} mengembalikan satu undangan berdasarkan ID. Memerlukan scope read:members.
Untuk detail parameter lengkap dan skema respons, lihat Get invite di referensi API.
client = anthropic.Anthropic()
invite = client.organization.invites.retrieve("invite_01QrStUvWxYzAbCdEfGhIj")
print(f"id: {invite.id}")
print(f"email: {invite.email}")
print(f"status: {invite.status}")Menarik undangan
DELETE /v1/organizations/invites/{invite_id} menarik undangan pending, menonaktifkan tautan di email undangan. Menarik undangan accepted mengembalikan 400 (hapus anggotanya sebagai gantinya); menarik undangan expired mengembalikan 400. Memerlukan scope write:members.
Untuk detail parameter lengkap dan skema respons, lihat Delete invite di referensi API.
client = anthropic.Anthropic()
deleted_invite = client.organization.invites.delete("invite_01QrStUvWxYzAbCdEfGhIj")
print(f"id: {deleted_invite.id}")Grup
Grup yang dibuat langsung oleh enterprise Anda, di pengaturan organisasi claude.ai atau melalui API ini (source_type: "direct"), mendukung setiap endpoint di bagian ini. Grup yang disediakan oleh penyedia identitas Anda (source_type: "scim") dapat dibaca tetapi tidak dapat diubah: mengganti nama atau menghapus grup SCIM, atau mengubah keanggotaannya, mengembalikan 400, karena penyedia identitas Anda yang memilikinya.
Mendaftar grup
GET /v1/organizations/rbac_groups mengembalikan grup enterprise Anda, termasuk grup yang dikelola penyedia identitas (scim). Memerlukan scope read:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat List groups di referensi API.
client = anthropic.Anthropic()
groups = client.beta.organization.rbac_groups.list(limit=20)
for group in groups:
print(f"{group.id}: {group.name} ({group.source_type})"){
"data": [
{
"type": "rbac_group",
"id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"name": "Engineering",
"source_type": "direct",
"role_ids": ["rbac_role_01CdEfGhIjKlMnOpQrStUv"],
"roles": ["rbac_role_01CdEfGhIjKlMnOpQrStUv"],
"created_at": "2026-03-18T10:01:42Z",
"updated_at": "2026-05-02T08:55:09Z"
}
],
"has_more": false,
"next_page": null
}Mendapatkan grup
GET /v1/organizations/rbac_groups/{rbac_group_id} mengembalikan satu grup berdasarkan ID. Memerlukan scope read:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat Get group di referensi API.
client = anthropic.Anthropic()
group = client.beta.organization.rbac_groups.retrieve(
"rbac_group_01UvWxYzAbCdEfGhIjKlMn"
)
print(f"id: {group.id}")
print(f"name: {group.name}")
print(f"source_type: {group.source_type}")Membuat grup
POST /v1/organizations/rbac_groups membuat grup dengan name yang diberikan (1–255 karakter) tanpa peran atau anggota. Memerlukan scope write:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat Create group di referensi API.
client = anthropic.Anthropic()
group = client.beta.organization.rbac_groups.create(name="Engineering")
print(f"id: {group.id}")
print(f"name: {group.name}"){
"type": "rbac_group",
"id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"name": "Engineering",
"source_type": "direct",
"role_ids": [],
"roles": [],
"created_at": "2026-07-09T18:00:00Z",
"updated_at": "2026-07-09T18:00:00Z"
}Mengganti nama grup
POST /v1/organizations/rbac_groups/{rbac_group_id} memperbarui grup. name adalah satu-satunya field yang dapat diubah oleh endpoint ini. Memerlukan scope write:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat Update group di referensi API.
client = anthropic.Anthropic()
group = client.beta.organization.rbac_groups.update(
"rbac_group_01UvWxYzAbCdEfGhIjKlMn", name="Platform Engineering"
)
print(f"id: {group.id}")
print(f"name: {group.name}")Menghapus grup
DELETE /v1/organizations/rbac_groups/{rbac_group_id} menghapus grup. Anggotanya tetap menjadi anggota organisasi mereka, tetapi mereka kehilangan izin dari peran yang terlampir pada grup tersebut, dan batas pengeluaran grup, jika ada, tidak lagi berlaku bagi mereka. Memerlukan scope write:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat Delete group di referensi API.
client = anthropic.Anthropic()
deleted_group = client.beta.organization.rbac_groups.delete(
"rbac_group_01UvWxYzAbCdEfGhIjKlMn"
)
print(f"id: {deleted_group.id}"){
"id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"type": "rbac_group_deleted"
}Mendaftar anggota grup
GET /v1/organizations/rbac_groups/{rbac_group_id}/members mengembalikan anggota grup (masing-masing dengan user_id dan email mereka), yang terlama terlebih dahulu. Hanya anggota saat ini dari organisasi-organisasi enterprise Anda yang dikembalikan, sehingga satu halaman mungkin berisi lebih sedikit dari limit entri sementara has_more bernilai true. Memerlukan scope read:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat List group members di referensi API.
client = anthropic.Anthropic()
members = client.beta.organization.rbac_groups.members.list(
"rbac_group_01UvWxYzAbCdEfGhIjKlMn", limit=100
)
for member in members:
print(f"{member.user_id}: {member.email}"){
"data": [
{
"type": "rbac_group_member",
"rbac_group_id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"group_id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"user_id": "user_01AbCdEfGhIjKlMnOpQrSt",
"email": "jane@example.com",
"created_at": "2026-04-07T12:30:00Z"
}
],
"has_more": false,
"next_page": null
}Menambahkan anggota ke grup
POST /v1/organizations/rbac_groups/{rbac_group_id}/members menambahkan anggota organisasi ke grup berdasarkan user_id. Pengguna harus sudah menjadi anggota salah satu organisasi enterprise Anda (jika tidak, permintaan mengembalikan 404), dan menambahkan seseorang yang sudah ada di grup mengembalikan 400. Untuk grup scim, keanggotaan dikelola di penyedia identitas Anda dan permintaan ini mengembalikan 400. Untuk menetapkan grup kepada seseorang yang belum bergabung, gunakan rbac_group_ids pada pembuatan undangan sebagai gantinya. Memerlukan scope write:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat Add group member di referensi API.
client = anthropic.Anthropic()
member = client.beta.organization.rbac_groups.members.add(
"rbac_group_01UvWxYzAbCdEfGhIjKlMn", user_id="user_01AbCdEfGhIjKlMnOpQrSt"
)
print(f"user_id: {member.user_id}")
print(f"email: {member.email}"){
"type": "rbac_group_member",
"rbac_group_id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"group_id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"user_id": "user_01AbCdEfGhIjKlMnOpQrSt",
"email": "jane@example.com",
"created_at": "2026-07-09T18:00:00Z"
}Menghapus anggota dari grup
DELETE /v1/organizations/rbac_groups/{rbac_group_id}/members/{user_id} menghapus anggota dari grup; mereka tetap menjadi anggota organisasi mereka. Permintaan mengembalikan 404 jika pengguna bukan anggota grup, dan 400 untuk grup scim, yang keanggotaannya dikelola di penyedia identitas Anda. Memerlukan scope write:rbac_groups.
Untuk detail parameter lengkap dan skema respons, lihat Remove group member di referensi API.
client = anthropic.Anthropic()
removed_member = client.beta.organization.rbac_groups.members.remove(
"user_01AbCdEfGhIjKlMnOpQrSt", rbac_group_id="rbac_group_01UvWxYzAbCdEfGhIjKlMn"
)
print(f"user_id: {removed_member.user_id}"){
"rbac_group_id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"group_id": "rbac_group_01UvWxYzAbCdEfGhIjKlMn",
"user_id": "user_01AbCdEfGhIjKlMnOpQrSt",
"type": "rbac_group_member_deleted"
}Peran kustom
Peran kustom bersifat hanya-baca melalui API: endpoint ini mengatalogkan peran kustom organisasi Anda (yang didefinisikan di pengaturan organisasi claude.ai atau disediakan oleh Anthropic) dan izin yang diberikan setiap peran. Pembacaan peran kustom menggunakan scope read:members (tidak ada scope peran terpisah) dan berfungsi dengan kunci tingkat organisasi: tidak seperti endpoint grup, endpoint ini tidak memerlukan kunci yang dibuat untuk semua organisasi yang tertaut, dan katalog yang dikembalikan adalah milik organisasi Anda sendiri.
Baca nama peran dari field display_name-nya. Untuk peran yang disediakan oleh Anthropic, display_name dapat berbeda dari label yang ditampilkan claude.ai, dan Anthropic mungkin mengubah namanya. Untuk menyimpan referensi permanen ke suatu peran, simpan id-nya.
Mendaftar peran
GET /v1/organizations/rbac_roles mengembalikan peran kustom organisasi Anda. Memerlukan scope read:members.
Untuk detail parameter lengkap dan skema respons, lihat List roles di referensi API.
client = anthropic.Anthropic()
roles = client.beta.organization.rbac_roles.list(limit=20)
for role in roles:
print(f"{role.id}: {role.display_name}"){
"data": [
{
"type": "rbac_role",
"id": "rbac_role_01CdEfGhIjKlMnOpQrStUv",
"display_name": "Engineering base",
"name": "Engineering base",
"created_at": "2026-03-18T10:01:42Z",
"updated_at": "2026-05-02T08:55:09Z"
}
],
"has_more": false,
"next_page": null
}Mendapatkan peran
GET /v1/organizations/rbac_roles/{rbac_role_id} mengembalikan satu peran berdasarkan ID. Memerlukan scope read:members.
Untuk detail parameter lengkap dan skema respons, lihat Get role di referensi API.
client = anthropic.Anthropic()
role = client.beta.organization.rbac_roles.retrieve("rbac_role_01CdEfGhIjKlMnOpQrStUv")
print(f"id: {role.id}")
print(f"display_name: {role.display_name}")Mendaftar izin peran
GET /v1/organizations/rbac_roles/{rbac_role_id}/permissions mengembalikan izin peran. Setiap izin memasangkan resource (tempat izin berlaku: fitur produk organisasi, alat konektor, scope OAuth konektor, satu konektor, atau setiap konektor) dengan action (apa yang diberikan pada sumber daya tersebut). Baris untuk fitur yang tidak diaktifkan untuk organisasi Anda dihilangkan, sehingga satu halaman mungkin berisi lebih sedikit dari limit baris sementara has_more bernilai true. Memerlukan scope read:members.
Dua nilai action memerlukan perhatian khusus: izin organization yang action-nya adalah capability_access_all (setiap fitur produk) atau capability_access_all_ga (setiap fitur produk yang stabil, yaitu setiap fitur yang tidak berlabel beta atau research preview) merupakan pemberian menyeluruh (yang tidak mencakup akses model maupun izin panel admin berawalan permission_) dan dicantumkan sebagai satu baris tersebut alih-alih diuraikan. Saat Anda menghitung apa yang diberikan suatu peran, perlakukan baris menyeluruh sebagai mencakup semua yang dijelaskan variannya, bukan hanya fitur yang disebutkan di baris lain.
Untuk detail parameter lengkap dan skema respons, lihat List role permissions di referensi API.
client = anthropic.Anthropic()
permissions = client.beta.organization.rbac_roles.permissions.list(
"rbac_role_01CdEfGhIjKlMnOpQrStUv", limit=20
)
for permission in permissions:
print(permission.action){
"data": [
{
"type": "rbac_role_permission",
"resource": {
"type": "organization",
"organization_id": "12345678-1234-5678-1234-567812345678"
},
"action": "capability_access_all_ga"
},
{
"type": "rbac_role_permission",
"resource": {
"type": "connector_tool",
"connector_id": "mcpsrv_01WxYzAbCdEfGhIjKlMnOp",
"tool_name": "search_tickets"
},
"action": "use"
}
],
"has_more": false,
"next_page": null
}Contoh alur kerja
Offboarding karyawan yang keluar
-
Cari anggota berdasarkan email:
Pythonclient = anthropic.Anthropic() users = client.organization.users.list(email="departing@example.com") for user in users: print(f"{user.id}: {user.email} ({user.role})") -
Hapus mereka dengan
DELETE /v1/organizations/users/{user_id}, menggunakaniddari respons. Kursi mereka, jika ada, kembali ke kumpulan. -
Jika orang tersebut belum bergabung, pencarian tidak mengembalikan anggota; daftarkan undangan dan tarik undangan
pendingmereka sebagai gantinya.
Mengaudit keanggotaan grup
-
Daftarkan grup dan catat
id,name, danrole_idssetiap grup. -
Untuk setiap grup yang membawa peran sensitif, telusuri halaman
GET /v1/organizations/rbac_groups/{rbac_group_id}/membersdan bandingkan email anggota dengan daftar di penyedia identitas Anda. -
Hapus anggota yang seharusnya tidak lagi berada di grup dengan
DELETE /v1/organizations/rbac_groups/{rbac_group_id}/members/{user_id}. Untuk grupscim, lakukan perubahan di penyedia identitas Anda sebagai gantinya.
Untuk alur kerja yang menggabungkan keanggotaan grup dengan kenaikan batas pengeluaran sementara, lihat Menaikkan sementara batas pengeluaran anggota selama insiden di halaman Spend Limits API.
Pertanyaan yang sering diajukan
Apakah ini API yang berbeda dari Admin API?
Tidak. Endpoint anggota dan undangan adalah endpoint /v1/organizations/ yang sama yang digunakan organisasi Claude Console; halaman ini mendokumentasikan perilakunya di Claude Enterprise. Endpoint grup dan peran kustom adalah bagian dari API yang sama dan hanya ada untuk organisasi Claude Enterprise. Tabel ketersediaan menunjukkan endpoint mana yang dapat dipanggil oleh setiap jenis organisasi.
Dapatkah saya menetapkan peran owner atau membership admin melalui API?
Tidak. API hanya menetapkan user dan managed, saat pembuatan undangan dan pembaruan peran. Peran administratif ditetapkan di pengaturan organisasi claude.ai, dan anggota yang memegangnya tidak dapat diubah atau dihapus melalui API.
Dapatkah saya membuat atau mengubah grup melalui API?
Ya, dengan scope write:rbac_groups: membuat, mengganti nama, dan menghapus grup, serta menambah atau menghapus anggotanya. Ada dua hal yang tidak dapat diubah oleh API: grup yang disediakan oleh penyedia identitas Anda (source_type: "scim"), yang nama dan keanggotaannya dimiliki oleh penyedia identitas, dan peran kustom, yang dikelola di pengaturan organisasi claude.ai (API membacanya).
Apakah undangan yang belum diterima menggunakan kursi?
Pada paket dengan kumpulan kursi terbatas, ya: undangan pending menahan satu kursi. Menarik undangan atau membiarkannya kedaluwarsa akan membebaskan kursi tersebut. Pada paket tanpa kumpulan kursi, undangan tidak menggunakan apa pun.
Organisasi saya menggunakan single sign-on. Operasi mana yang berfungsi?
Jika penyedia identitas Anda menyediakan pengguna secara otomatis (JIT atau SCIM), pembuatan undangan mengembalikan 400. Jika penyedia identitas mengelola peran (SSO lanjutan atau penyediaan SCIM lanjutan), pembaruan peran mengembalikan 400. Jika penyedia identitas mengelola keanggotaan (penyediaan SCIM), penghapusan anggota mengembalikan 400. Operasi baca tetap berfungsi.
Apa yang terjadi pada kunci Admin API ketika orang yang membuatnya keluar?
Kunci tetap berfungsi. Kunci Admin API dicakup ke organisasi, bukan ke pengguna individu, dan kunci yang dibuat di claude.ai tidak kedaluwarsa. Menghapus pembuatnya dari organisasi atau mencabut penyediaannya melalui penyedia identitas Anda mengakhiri akses mereka sendiri, tetapi tidak mengakhiri kunci yang mereka buat. Menurunkan peran mereka juga tidak mengubah kunci: setiap kunci tetap aktif dengan scope aslinya. Saat Anda melakukan offboarding terhadap seseorang yang membuat kunci Admin API, hapus kunci tersebut di bagian Keys pada claude.ai > Organization settings > API dan buat penggantinya.
Lihat juga
Tempat primary owner Anda membuat kunci dengan scope dan scope mana yang harus dipilih.
Audit aktivitas serta ambil atau hapus konten pengguna di seluruh organisasi Anda.
Pelaporan penggunaan dan biaya per pengguna dan per rentang waktu untuk Claude Enterprise.
Tetapkan batas pengeluaran per anggota dan tinjau permintaan kenaikan.
Was this page helpful?