Introduction Access groups allow for the assignment of many policies to many members in one place. Users, service IDs and trusted profiles can be added to an access group. Each access group is bound to a specific IBM Cloud® account as are users, service IDs and trusted profiles. No longer do policies need to be created on a per user, service ID or trusted profile basis. Instead, a policy can be created for an access group, and that common policy is shared for all of the group's members. This makes it much easier for administrators to manage access control. It is an analogous concept to access control groups that are used to manage users in the Linux® operating system. For more information, see Setting up access groupshttps://cloud.ibm.com/docs/account?topic=account-groups. With access group templates and assignments you can centrally manage access for child accounts in your organization from the root enterprise account. For more information, see Working with template versionshttps://cloud.ibm.com/docs/secure-enterprise?topic=secure-enterprise-working-with-versions&interface=ui and Best practices for assigning access in an enterprisehttps://cloud.ibm.com/docs/secure-enterprise?topic=secure-enterprise-access-enterprises. SDKs for Java, Node, Python, and Go are available to make it easier to programmatically access the API from your code. The client libraries that are provided by the SDKs implement best practices for using the API and reduce the amount of code that you need to write. The tab for each language includes code examples that demonstrate how to use the client libraries. For more information about using the SDKs, see the IBM Cloud SDK Common projecthttps://github.com/IBM/ibm-cloud-sdk-common on GitHub. Installing the Go SDK Go modules recommended: Add the following import in your code, and then run go build or go mod tidy go import "github.com/IBM/platform-services-go-sdk/iamaccessgroupsv2" Go get bash go get -u github.com/IBM/platform-services-go-sdk/iamaccessgroupsv2 View on GitHub https://github.com/IBM/platform-services-go-sdkhttps://github.com/IBM/platform-services-go-sdk Installing the Java SDK Maven xml Method Path Summary POST /v2/groups Create an access group GET /v2/groups List access groups GET /v2/groups/{access_group_id} Get an access group PATCH /v2/groups/{access_group_id} Update an access group DELETE /v2/groups/{access_group_id} Delete an access group PUT /v2/groups/{access_group_id}/members Add members to an access group GET /v2/groups/{access_group_id}/members List access group members HEAD /v2/groups/{access_group_id}/members/{iam_id} Check membership in an access group DELETE /v2/groups/{access_group_id}/members/{iam_id} Delete member from an access group POST /v2/groups/{access_group_id}/members/delete Delete members from an access group DELETE /v2/groups/_allgroups/members/{iam_id} Delete member from all access groups PUT /v2/groups/_allgroups/members/{iam_id} Add member to multiple access groups POST /v2/groups/{access_group_id}/rules Create rule for an access group GET /v2/groups/{access_group_id}/rules List access group rules GET /v2/groups/{access_group_id}/rules/{rule_id} Get an access group rule PUT /v2/groups/{access_group_id}/rules/{rule_id} Replace an access group rule DELETE /v2/groups/{access_group_id}/rules/{rule_id} Delete an access group rule GET /v2/groups/settings Get account settings PATCH /v2/groups/settings Update account settings POST /v1/group_templates Create template GET /v1/group_templates List templates POST /v1/group_templates/{template_id}/versions Create template version GET /v1/group_templates/{template_id}/versions List template versions GET /v1/group_templates/{template_id}/versions/{version_num} Get template version PUT /v1/group_templates/{template_id}/versions/{version_num} Update template version DELETE /v1/group_templates/{template_id}/versions/{version_num} Delete template version POST /v1/group_templates/{template_id}/versions/{version_num}/commit Commit a template GET /v1/group_templates/{template_id} Get latest template version DELETE /v1/group_templates/{template_id} Delete template POST /v1/group_assignments Create assignment GET /v1/group_assignments List assignments GET /v1/group_assignments/{assignment_id} Get assignment PATCH /v1/group_assignments/{assignment_id} Update Assignment DELETE /v1/group_assignments/{assignment_id} Delete assignment