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: