Skip to content
Start here

Update User Group

client.IAM.UserGroups.Update(ctx, userGroupID, params) (*UserGroupUpdateResponse, error)
PUT/accounts/{account_id}/iam/user_groups/{user_group_id}

Modify an existing user group.

Security

API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
SCIM ProvisioningAccount Settings Write
ParametersExpand Collapse
userGroupID string

User Group identifier tag.

maxLength32
minLength32
params UserGroupUpdateParams
AccountID param.Field[string]

Path param: Account identifier tag.

maxLength32
minLength32
Name param.Field[string]Optional

Body param: Name of the User group.

Policies param.Field[[]UserGroupUpdateParamsPolicy]Optional

Body param: Policies attached to the User group

ID string

Policy identifier.

Access UserGroupUpdateParamsPoliciesAccess

Allow or deny operations against the resources.

One of the following:
const UserGroupUpdateParamsPoliciesAccessAllow UserGroupUpdateParamsPoliciesAccess = "allow"
const UserGroupUpdateParamsPoliciesAccessDeny UserGroupUpdateParamsPoliciesAccess = "deny"
PermissionGroups []UserGroupUpdateParamsPoliciesPermissionGroup

A set of permission groups that are specified to the policy.

ID string

Permission Group identifier tag.

maxLength32
minLength32
ResourceGroups []UserGroupUpdateParamsPoliciesResourceGroup

A set of resource groups that are specified to the policy.

ID string

Resource Group identifier tag.

maxLength32
minLength32
ReturnsExpand Collapse
type UserGroupUpdateResponse struct{…}

A group of policies resources.

ID string

User Group identifier tag.

maxLength32
minLength32
CreatedOn Time

Timestamp for the creation of the user group

formatdate-time
ModifiedOn Time

Last time the user group was modified.

formatdate-time
Name string

Name of the user group.

Policies []UserGroupUpdateResponsePolicyOptional

Policies attached to the User group

ID stringOptional

Policy identifier.

Access UserGroupUpdateResponsePoliciesAccessOptional

Allow or deny operations against the resources.

One of the following:
const UserGroupUpdateResponsePoliciesAccessAllow UserGroupUpdateResponsePoliciesAccess = "allow"
const UserGroupUpdateResponsePoliciesAccessDeny UserGroupUpdateResponsePoliciesAccess = "deny"
PermissionGroups []UserGroupUpdateResponsePoliciesPermissionGroupOptional

A set of permission groups that are specified to the policy.

ID string

Identifier of the permission group.

Meta UserGroupUpdateResponsePoliciesPermissionGroupsMetaOptional

Attributes associated to the permission group.

Category stringOptional

A category used to group permission groups.

Deprecated stringOptional

Indicates whether the permission group is deprecated.

Description stringOptional

Additional information about the permission group.

Editable stringOptional

Indicates whether the permission group can be edited.

EolAt TimeOptional

The planned end-of-life date and time, when provided.

formatdate-time
Label stringOptional

A label identifying the permission group.

Scopes stringOptional

The scope associated with the permission group.

Visibility stringOptional

Indicates the permission group’s availability or visibility.

Name stringOptional

Name of the permission group.

ResourceGroups []UserGroupUpdateResponsePoliciesResourceGroupOptional

A list of resource groups that the policy applies to.

ID string

Identifier of the resource group.

Scope UserGroupUpdateResponsePoliciesResourceGroupsScope

A scope is a combination of scope objects which provides additional context.

Key string

This is a combination of pre-defined resource name and identifier (like Account ID etc.)

Objects []UserGroupUpdateResponsePoliciesResourceGroupsScopeObject

A list of scope objects for additional context.

Key string

This is a combination of pre-defined resource name and identifier (like Zone ID etc.)

Meta UserGroupUpdateResponsePoliciesResourceGroupsMetaOptional

Attributes associated to the resource group.

Key stringOptional
Value stringOptional
Name stringOptional

Name of the resource group.

Update User Group

package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/iam"
  "github.com/cloudflare/cloudflare-go/option"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
    option.WithAPIEmail("user@example.com"),
  )
  userGroup, err := client.IAM.UserGroups.Update(
    context.TODO(),
    "023e105f4ecef8ad9ca31a8372d0c353",
    iam.UserGroupUpdateParams{
      AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", userGroup.ID)
}
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "023e105f4ecef8ad9ca31a8372d0c353",
    "created_on": "2024-03-01T12:21:02Z",
    "modified_on": "2024-03-01T12:21:02Z",
    "name": "My New User Group",
    "policies": [
      {
        "id": "f267e341f3dd4697bd3b9f71dd96247f",
        "access": "allow",
        "permission_groups": [
          {
            "id": "c8fed203ed3043cba015a93ad1616f1f",
            "meta": {
              "category": "category",
              "deprecated": "deprecated",
              "description": "description",
              "editable": "editable",
              "eol_at": "2019-12-27T18:11:19.117Z",
              "label": "load_balancer_admin",
              "scopes": "com.cloudflare.api.account",
              "visibility": "visibility"
            },
            "name": "Zone Read"
          },
          {
            "id": "82e64a83756745bbbb1c9c2701bf816b",
            "meta": {
              "category": "category",
              "deprecated": "deprecated",
              "description": "description",
              "editable": "editable",
              "eol_at": "2019-12-27T18:11:19.117Z",
              "label": "fbm_user",
              "scopes": "com.cloudflare.api.account",
              "visibility": "visibility"
            },
            "name": "Magic Network Monitoring"
          }
        ],
        "resource_groups": [
          {
            "id": "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
            "scope": {
              "key": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4",
              "objects": [
                {
                  "key": "com.cloudflare.api.account.zone.23f8d65290b24279ba6f44721b3eaad5"
                }
              ]
            },
            "meta": {
              "key": "key",
              "value": "value"
            },
            "name": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4"
          }
        ]
      }
    ]
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "023e105f4ecef8ad9ca31a8372d0c353",
    "created_on": "2024-03-01T12:21:02Z",
    "modified_on": "2024-03-01T12:21:02Z",
    "name": "My New User Group",
    "policies": [
      {
        "id": "f267e341f3dd4697bd3b9f71dd96247f",
        "access": "allow",
        "permission_groups": [
          {
            "id": "c8fed203ed3043cba015a93ad1616f1f",
            "meta": {
              "category": "category",
              "deprecated": "deprecated",
              "description": "description",
              "editable": "editable",
              "eol_at": "2019-12-27T18:11:19.117Z",
              "label": "load_balancer_admin",
              "scopes": "com.cloudflare.api.account",
              "visibility": "visibility"
            },
            "name": "Zone Read"
          },
          {
            "id": "82e64a83756745bbbb1c9c2701bf816b",
            "meta": {
              "category": "category",
              "deprecated": "deprecated",
              "description": "description",
              "editable": "editable",
              "eol_at": "2019-12-27T18:11:19.117Z",
              "label": "fbm_user",
              "scopes": "com.cloudflare.api.account",
              "visibility": "visibility"
            },
            "name": "Magic Network Monitoring"
          }
        ],
        "resource_groups": [
          {
            "id": "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
            "scope": {
              "key": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4",
              "objects": [
                {
                  "key": "com.cloudflare.api.account.zone.23f8d65290b24279ba6f44721b3eaad5"
                }
              ]
            },
            "meta": {
              "key": "key",
              "value": "value"
            },
            "name": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4"
          }
        ]
      }
    ]
  }
}