Create a new user
POST /accounts/{account_id}/core/v1/users
Indicates desired values for the User API resource to be created.
Parameters
Name | Type | In | Required | Description |
---|---|---|---|---|
account_id |
string |
path |
True |
ID of the containing account resource
|
Request Body
Indicates desired values for the User API resource to be created.
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
Media type of the resource. Defined values are:
|
version |
string |
True |
Version of the resource. Defined values are:
|
authID |
string |
False |
JSON string containing the identifier associated with an external identity provider. The contents of this string depend on the specified authProvider. For a user with "authProvider" as "local", "authID" is set to the value of "email". For a user with "authProvider" as "ldap", "authID" is set to its Distinguished Name (DN) from the LDAP server. |
authProvider |
string |
False |
JSON string indicating the context of the idAuth identifier. Defined values are:
|
firstName |
string |
False |
JSON string containing a user-specified long form first name. Defined values are:
|
lastName |
string |
False |
JSON string containing a user-specified long-form last name. Defined values are:
|
companyName |
string |
False |
JSON string containing the company name associated with the user. If this key does not exist, it indicates that a company name has not been provided. Defined values are:
|
string |
True |
JSON strings containing a user-specified email address. |
|
phone |
string |
False |
JSON string containing the phone number of the user. If this key does not exist, it indicates that a phone number has not been provided. |
postalAddress |
False |
JSON object containing a collection of fields that specifies an address. If this key does not exist, it indicates that an address has not been provided. If this key exists, all six of the contained fields will be present. If nothing was provided by the user, the string will be empty. |
|
sendWelcomeEmail |
string |
False |
JSON string indicating whether a welcome email will be sent after validation. If not specified on create, the value will be set to "true" for ACS and "false" for Astra Control Center. Defined values are:
|
metadata |
False |
Client and service-specified metadata associated with the resource. Defined values are:
|
Example request
{
"type": "application/astra-user",
"version": "1.2",
"firstName": "John",
"lastName": "Doe",
"email": "jdoe@example.com"
}
Response
Status: 201, Returns the newly created user resource in the JSON response body.
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
Media type of the resource. Defined values are:
|
version |
string |
True |
Version of the resource. Defined values are:
|
id |
string |
True |
Globally unique identifier of the resource. Defined values are:
|
state |
string |
True |
JSON string containing a value indicating the operational state of the user. Defined values are:
|
isEnabled |
string |
True |
JSON string indicating if the user is allowed to log in. Defined values are:
|
authID |
string |
False |
JSON string containing the identifier associated with an external identity provider. The contents of this string depend on the specified authProvider. For a user with "authProvider" as "local", "authID" is set to the value of "email". For a user with "authProvider" as "ldap", "authID" is set to its Distinguished Name (DN) from the LDAP server. |
authProvider |
string |
False |
JSON string indicating the context of the idAuth identifier. Defined values are:
|
firstName |
string |
True |
JSON string containing a user-specified long form first name. Defined values are:
|
lastName |
string |
True |
JSON string containing a user-specified long-form last name. Defined values are:
|
companyName |
string |
False |
JSON string containing the company name associated with the user. If this key does not exist, it indicates that a company name has not been provided. Defined values are:
|
string |
True |
JSON strings containing a user-specified email address. |
|
phone |
string |
False |
JSON string containing the phone number of the user. If this key does not exist, it indicates that a phone number has not been provided. |
postalAddress |
False |
JSON object containing a collection of fields that specifies an address. If this key does not exist, it indicates that an address has not been provided. If this key exists, all six of the contained fields will be present. If nothing was provided by the user, the string will be empty. |
|
sendWelcomeEmail |
string |
True |
JSON string indicating whether a welcome email will be sent after validation. If not specified on create, the value will be set to "true" for ACS and "false" for Astra Control Center. Defined values are:
|
enableTimestamp |
string |
False |
JSON string containing an ISO-8601 formatted timestamp indicating when the user was last enabled. Defined values are:
|
lastActTimestamp |
string |
False |
JSON string containing an ISO-8601 formatted timestamp indicating when the identity API was last invoked on behalf of this user. (Note: This is expensive.) Defined values are:
|
metadata |
True |
Client and service-specified metadata associated with the resource. Defined values are:
|
Example response
{
"type": "application/astra-user",
"version": "1.2",
"id": "5bad8e04-e2fd-5c43-98d7-300580993f49",
"state": "pending",
"isEnabled": "true",
"authID": "HteLK3hk28sdbDLKHReB",
"authProvider": "cloud-central",
"firstName": "John",
"lastName": "Doe",
"email": "jdoe@example.com",
"sendWelcomeEmail": "true",
"lastActTimestamp": "2020-08-05T14:24:54.128427Z",
"metadata": {
"labels": [],
"creationTimestamp": "2022-10-06T20:58:16.305662Z",
"modificationTimestamp": "2022-10-06T20:58:16.305662Z",
"createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
}
}
Response
Status: 401, Unauthorized
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
|
title |
string |
True |
|
detail |
string |
False |
|
status |
string |
True |
|
correlationID |
string |
False |
Example response
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
Response
Status: 400, Bad request
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
|
title |
string |
True |
|
detail |
string |
False |
|
status |
string |
True |
|
correlationID |
string |
False |
|
invalidFields |
array[invalidFields] |
False |
List of invalid request body fields |
Example response
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
Response
Status: 409, Conflict
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
|
title |
string |
True |
|
detail |
string |
False |
|
status |
string |
True |
|
correlationID |
string |
False |
|
invalidFields |
array[invalidFields] |
False |
List of invalid request body fields |
Example response
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
Response
Status: 403, Forbidden
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
|
title |
string |
True |
|
detail |
string |
False |
|
status |
string |
True |
|
correlationID |
string |
False |
Example response
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
Error
Status: 404, Not found
Name | Type | Required | Description |
---|---|---|---|
type |
string |
True |
|
title |
string |
True |
|
detail |
string |
False |
|
status |
string |
True |
|
correlationID |
string |
False |
Example error response
{
"type": "https://astra.netapp.io/problems/2",
"title": "Collection not found",
"detail": "The collection specified in the request URI wasn't found.",
"status": "404"
}
Definitions
See Definitions
postalAddress
JSON object containing a collection of fields that specifies an address. If this key does not exist, it indicates that an address has not been provided. If this key exists, all six of the contained fields will be present. If nothing was provided by the user, the string will be empty.
Name | Type | Required | Description |
---|---|---|---|
addressCountry |
string |
True |
JSON string containing the country name or country code associated with the postal address, as specified in ISO 3166 Alpha-2. Defined values are:
|
addressLocality |
string |
True |
JSON string containing the locality (for example, city) associated with the postal address. Defined values are:
|
addressRegion |
string |
True |
JSON string containing the region (for example, state) associated with the postal address. Defined values are:
|
postalCode |
string |
True |
JSON string containing the postal code associated with the postal address. Defined values are:
|
streetAddress1 |
string |
True |
JSON string containing the street address associated with the postal address. Defined values are:
|
streetAddress2 |
string |
False |
JSON string containing optional ancillary street address information, post office box, and so on. Defined values are:
|
type_astra_label
Name | Type | Required | Description |
---|---|---|---|
name |
string |
True |
|
value |
string |
True |
type_astra_metadata_update
Client and service-specified metadata associated with the resource. Defined values are:
-
Conforms to the Astra Metadata Schema If not specified on create, a metadata object will be created with no labels. If not specified on update, the metadata object's labels, creationTimestamp and createdBy, will be preserved without modification.
Name | Type | Required | Description |
---|---|---|---|
labels |
array[type_astra_label] |
False |
|
creationTimestamp |
string |
False |
|
modificationTimestamp |
string |
False |
|
createdBy |
string |
False |
|
modifiedBy |
string |
False |
invalidParams
Name | Type | Required | Description |
---|---|---|---|
name |
string |
True |
Name of the invalid query parameter |
reason |
string |
True |
Reason why the query parameter is invalid |
invalidFields
Name | Type | Required | Description |
---|---|---|---|
name |
string |
True |
Name of the invalid request body field |
reason |
string |
True |
Reason why the request body field is invalid |