Creates or Updates a group.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}?api-version=2022-08-01
URI Parameters
Name |
In |
Required |
Type |
Description |
groupId
|
path |
True
|
string
|
Group identifier. Must be unique in the current API Management service instance.
|
resourceGroupName
|
path |
True
|
string
|
The name of the resource group. The name is case insensitive.
|
serviceName
|
path |
True
|
string
|
The name of the API Management service.
Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
|
subscriptionId
|
path |
True
|
string
|
The ID of the target subscription.
|
api-version
|
query |
True
|
string
|
The API version to use for this operation.
|
Name |
Required |
Type |
Description |
If-Match
|
|
string
|
ETag of the Entity. Not required when creating an entity, but required when updating an entity.
|
Request Body
Name |
Required |
Type |
Description |
properties.displayName
|
True
|
string
|
Group name.
|
properties.description
|
|
string
|
Group description.
|
properties.externalId
|
|
string
|
Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory aad://<tenant>.onmicrosoft.com/groups/<group object id> ; otherwise the value is null.
|
properties.type
|
|
GroupType
|
Group type.
|
Responses
Name |
Type |
Description |
200 OK
|
GroupContract
|
Group already exists.
Headers
ETag: string
|
201 Created
|
GroupContract
|
Group was created successfully.
Headers
ETag: string
|
Other Status Codes
|
ErrorResponse
|
Error response describing why the operation failed.
|
Security
azure_auth
Azure Active Directory OAuth2 Flow.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name |
Description |
user_impersonation
|
impersonate your user account
|
Examples
ApiManagementCreateGroup
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup?api-version=2022-08-01
{
"properties": {
"displayName": "temp group"
}
}
/** Samples for Group CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroup.json
*/
/**
* Sample code: ApiManagementCreateGroup.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateGroup(com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.groups()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("temp group")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_group.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.group.create_or_update(
resource_group_name="rg1",
service_name="apimService1",
group_id="tempgroup",
parameters={"properties": {"displayName": "temp group"}},
)
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroup.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroup.json
func ExampleGroupClient_CreateOrUpdate_apiManagementCreateGroup() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewGroupClient().CreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.GroupCreateParameters{
Properties: &armapimanagement.GroupCreateParametersProperties{
DisplayName: to.Ptr("temp group"),
},
}, &armapimanagement.GroupClientCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.GroupContract = armapimanagement.GroupContract{
// Name: to.Ptr("tempgroup"),
// Type: to.Ptr("Microsoft.ApiManagement/service/groups"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup"),
// Properties: &armapimanagement.GroupContractProperties{
// Type: to.Ptr(armapimanagement.GroupTypeCustom),
// DisplayName: to.Ptr("temp group"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or Updates a group.
*
* @summary Creates or Updates a group.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroup.json
*/
async function apiManagementCreateGroup() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const groupId = "tempgroup";
const parameters = { displayName: "temp group" };
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.group.createOrUpdate(
resourceGroupName,
serviceName,
groupId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup",
"type": "Microsoft.ApiManagement/service/groups",
"name": "tempgroup",
"properties": {
"displayName": "temp group",
"type": "custom"
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup",
"type": "Microsoft.ApiManagement/service/groups",
"name": "tempgroup",
"properties": {
"displayName": "temp group",
"type": "custom"
}
}
ApiManagementCreateGroupExternal
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup?api-version=2022-08-01
{
"properties": {
"displayName": "NewGroup (samiraad.onmicrosoft.com)",
"description": "new group to test",
"type": "external",
"externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d"
}
}
import com.azure.resourcemanager.apimanagement.models.GroupType;
/** Samples for Group CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroupExternal.json
*/
/**
* Sample code: ApiManagementCreateGroupExternal.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateGroupExternal(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.groups()
.define("aadGroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("NewGroup (samiraad.onmicrosoft.com)")
.withDescription("new group to test")
.withType(GroupType.EXTERNAL)
.withExternalId("aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_group_external.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.group.create_or_update(
resource_group_name="rg1",
service_name="apimService1",
group_id="aadGroup",
parameters={
"properties": {
"description": "new group to test",
"displayName": "NewGroup (samiraad.onmicrosoft.com)",
"externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d",
"type": "external",
}
},
)
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroupExternal.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroupExternal.json
func ExampleGroupClient_CreateOrUpdate_apiManagementCreateGroupExternal() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewGroupClient().CreateOrUpdate(ctx, "rg1", "apimService1", "aadGroup", armapimanagement.GroupCreateParameters{
Properties: &armapimanagement.GroupCreateParametersProperties{
Type: to.Ptr(armapimanagement.GroupTypeExternal),
Description: to.Ptr("new group to test"),
DisplayName: to.Ptr("NewGroup (samiraad.onmicrosoft.com)"),
ExternalID: to.Ptr("aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d"),
},
}, &armapimanagement.GroupClientCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.GroupContract = armapimanagement.GroupContract{
// Name: to.Ptr("aadGroup"),
// Type: to.Ptr("Microsoft.ApiManagement/service/groups"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup"),
// Properties: &armapimanagement.GroupContractProperties{
// Type: to.Ptr(armapimanagement.GroupTypeExternal),
// Description: to.Ptr("new group to test"),
// DisplayName: to.Ptr("NewGroup (samiraad.onmicrosoft.com)"),
// ExternalID: to.Ptr("aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or Updates a group.
*
* @summary Creates or Updates a group.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGroupExternal.json
*/
async function apiManagementCreateGroupExternal() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const groupId = "aadGroup";
const parameters = {
type: "external",
description: "new group to test",
displayName: "NewGroup (samiraad.onmicrosoft.com)",
externalId: "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.group.createOrUpdate(
resourceGroupName,
serviceName,
groupId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup",
"type": "Microsoft.ApiManagement/service/groups",
"name": "aadGroup",
"properties": {
"displayName": "NewGroup (samiraad.onmicrosoft.com)",
"description": "new group to test",
"type": "external",
"externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d"
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup",
"type": "Microsoft.ApiManagement/service/groups",
"name": "aadGroup",
"properties": {
"displayName": "NewGroup (samiraad.onmicrosoft.com)",
"description": "new group to test",
"type": "external",
"externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d"
}
}
Definitions
ErrorFieldContract
Error Field contract.
Name |
Type |
Description |
code
|
string
|
Property level error code.
|
message
|
string
|
Human-readable representation of property-level error.
|
target
|
string
|
Property name.
|
ErrorResponse
Error Response.
Name |
Type |
Description |
error.code
|
string
|
Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.
|
error.details
|
ErrorFieldContract[]
|
The list of invalid fields send in request, in case of validation error.
|
error.message
|
string
|
Human-readable representation of the error.
|
GroupContract
Contract details.
Name |
Type |
Description |
id
|
string
|
Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
The name of the resource
|
properties.builtIn
|
boolean
|
true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false.
|
properties.description
|
string
|
Group description. Can contain HTML formatting tags.
|
properties.displayName
|
string
|
Group name.
|
properties.externalId
|
string
|
For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory aad://<tenant>.onmicrosoft.com/groups/<group object id> ; otherwise the value is null.
|
properties.type
|
GroupType
|
Group type.
|
type
|
string
|
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
|
GroupCreateParameters
Parameters supplied to the Create Group operation.
Name |
Type |
Description |
properties.description
|
string
|
Group description.
|
properties.displayName
|
string
|
Group name.
|
properties.externalId
|
string
|
Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory aad://<tenant>.onmicrosoft.com/groups/<group object id> ; otherwise the value is null.
|
properties.type
|
GroupType
|
Group type.
|
GroupType
Group type.
Name |
Type |
Description |
custom
|
string
|
|
external
|
string
|
|
system
|
string
|
|