CreateGroup - AWS Directory Service Data

CreateGroup

Creates a new group.

Request Syntax

POST /Groups/CreateGroup?DirectoryId=DirectoryId HTTP/1.1 Content-type: application/json { "ClientToken": "string", "GroupScope": "string", "GroupType": "string", "OtherAttributes": { "string" : { ... } }, "SAMAccountName": "string" }

URI Request Parameters

The request uses the following URI parameters.

DirectoryId

The identifier (ID) of the directory that's associated with the group.

Pattern: ^d-[0-9a-f]{10}$

Required: Yes

Request Body

The request accepts the following data in JSON format.

ClientToken

A unique and case-sensitive identifier that you provide to make sure the idempotency of the request, so multiple identical calls have the same effect as one single call.

A client token is valid for 8 hours after the first request that uses it completes. After 8 hours, any request with the same client token is treated as a new request. If the request succeeds, any future uses of that token will be idempotent for another 8 hours.

If you submit a request with the same client token but change one of the other parameters within the 8-hour idempotency window, Directory Service Data returns an ConflictException.

Note

This parameter is optional when using the AWS CLI or SDK.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^[\x00-\x7F]+$

Required: No

GroupScope

The scope of the AD group. For details, see Active Directory security group scope.

Type: String

Valid Values: DomainLocal | Global | Universal | BuiltinLocal

Required: No

GroupType

The AD group type. For details, see Active Directory security group type.

Type: String

Valid Values: Distribution | Security

Required: No

OtherAttributes

An expression that defines one or more attributes with the data type and value of each attribute.

Type: String to AttributeValue object map

Map Entries: Maximum number of 25 items.

Key Length Constraints: Minimum length of 1. Maximum length of 63.

Key Pattern: ^[A-Za-z*][A-Za-z-*]*$

Required: No

SAMAccountName

The name of the group.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: ^[^:;|=+"*?<>/\\,\[\]@]+$

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "DirectoryId": "string", "SAMAccountName": "string", "SID": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

DirectoryId

The identifier (ID) of the directory that's associated with the group.

Type: String

Pattern: ^d-[0-9a-f]{10}$

SAMAccountName

The name of the group.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: ^[^:;|=+"*?<>/\\,\[\]@]+$

SID

The unique security identifier (SID) of the group.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You don't have permission to perform the request or access the directory. It can also occur when the DirectoryId doesn't exist or the user, member, or group might be outside of your organizational unit (OU).

Make sure that you have the authentication and authorization to perform the action. Review the directory information in the request, and make sure that the object isn't outside of your OU.

HTTP Status Code: 403

ConflictException

This error will occur when you try to create a resource that conflicts with an existing object. It can also occur when adding a member to a group that the member is already in.

This error can be caused by a request sent within the 8-hour idempotency window with the same client token but different input parameters. Client tokens should not be re-used across different requests. After 8 hours, any request with the same client token is treated as a new request.

HTTP Status Code: 409

DirectoryUnavailableException

The request could not be completed due to a problem in the configuration or current state of the specified directory.

HTTP Status Code: 400

InternalServerException

The operation didn't succeed because an internal error occurred. Try again later.

HTTP Status Code: 500

ThrottlingException

The limit on the number of requests per second has been exceeded.

HTTP Status Code: 429

ValidationException

The request isn't valid. Review the details in the error message to update the invalid parameters or values in your request.

HTTP Status Code: 400

Examples

Example

This example illustrates one usage of CreateGroup.

Sample Request

{ "ClientToken": "550e8400-e29b-41d4-a716-446655440000", "GroupScope": "DomainLocal", "GroupType": "Distribution", "OtherAttributes": { "displayName": {"S": "Acctng-mailing-list"}, "description": {"S": "Accounting dept mailing list"} }, "SAMAccountName": "AcctngMail" }

Sample Response

{ "DirectoryId": "d-926example", "SAMAccountName": "AcctMail", "SID": "S-1-5-33-123" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: