Skip to content
Start here

Create Resource Group

client.IAM.ResourceGroups.New(ctx, params) (*ResourceGroupNewResponse, error)
POST/accounts/{account_id}/iam/resource_groups

Create a new Resource Group under the specified account.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
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
params ResourceGroupNewParams
AccountID param.Field[string]

Path param: Account identifier tag.

maxLength32
minLength32
Name param.Field[string]

Body param: Name of the resource group

Scope param.Field[ResourceGroupNewParamsScope]

Body param: 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 []ResourceGroupNewParamsScopeObject

A list of scope objects for additional context. The number of Scope objects should not be zero.

Key string

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

ReturnsExpand Collapse
type ResourceGroupNewResponse struct{…}

A group of scoped resources.

ID string

Identifier of the resource group.

Scope []ResourceGroupNewResponseScope

The scope associated to the resource group

Key string

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

Objects []ResourceGroupNewResponseScopeObject

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 ResourceGroupNewResponseMetaoptional

Attributes associated to the resource group.

Key stringoptional
Value stringoptional
Name stringoptional

Name of the resource group.

Create Resource 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.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  resourceGroup, err := client.IAM.ResourceGroups.New(context.TODO(), iam.ResourceGroupNewParams{
    AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    Name: cloudflare.F("NewResourceGroup"),
    Scope: cloudflare.F(iam.ResourceGroupNewParamsScope{
      Key: cloudflare.F("com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4"),
      Objects: cloudflare.F([]iam.ResourceGroupNewParamsScopeObject{iam.ResourceGroupNewParamsScopeObject{
        Key: cloudflare.F("com.cloudflare.api.account.zone.23f8d65290b24279ba6f44721b3eaad5"),
      }}),
    }),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", resourceGroup.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": "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": "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"
  }
}