Create a new account user
package main
import ( "fmt" "strings" "net/http" "io")
func main() {
url := "https://api.wpengineapi.com/v1/accounts/example/account_users"
payload := strings.NewReader("{ \"user\": { \"account_id\": \"eeda3227-9a39-46ae-9e14-20958bb4e6c9\", \"first_name\": \"Joe\", \"last_name\": \"Smith\", \"email\": \"joe@gmail.com\", \"roles\": \"full,billing\", \"install_ids\": [ \"ddda3227-9a39-46ae-9e14-20958bb4e6c9\", \"qada3227-9a39-46ae-9e14-20958bb4e45y\" ] } }")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <credentials>") req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}const url = 'https://api.wpengineapi.com/v1/accounts/example/account_users';const options = { method: 'POST', headers: {Authorization: 'Basic <credentials>', 'Content-Type': 'application/json'}, body: '{"user":{"account_id":"eeda3227-9a39-46ae-9e14-20958bb4e6c9","first_name":"Joe","last_name":"Smith","email":"joe@gmail.com","roles":"full,billing","install_ids":["ddda3227-9a39-46ae-9e14-20958bb4e6c9","qada3227-9a39-46ae-9e14-20958bb4e45y"]}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.wpengineapi.com/v1/accounts/example/account_users \ --header 'Authorization: Basic <credentials>' \ --header 'Content-Type: application/json' \ --data '{ "user": { "account_id": "eeda3227-9a39-46ae-9e14-20958bb4e6c9", "first_name": "Joe", "last_name": "Smith", "email": "joe@gmail.com", "roles": "full,billing", "install_ids": [ "ddda3227-9a39-46ae-9e14-20958bb4e6c9", "qada3227-9a39-46ae-9e14-20958bb4e45y" ] } }'Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”ID of account
Request Body
Section titled “Request Body ”Properties
- user - required - The user that will be created
- account_id - required - The ID of the account that the account_user will belong to
- first_name - required - The first name of the user
- last_name - required - The last name of the user
- email - required - The email of the user
- roles — required - The roles the user is allowed. The following roles are valid
- owner
- full
- full,billing
- partial
- partial,billing
- install_ids - optional - Used with partial role selection. The ids of the installs the user will have access to.
object
The user that will be created
object
The account ID
Example
eeda3227-9a39-46ae-9e14-20958bb4e6c9Example
JoeExample
SmithExample
joe@gmail.comChoose from ‘owner’, ‘full,billing’, ‘full’, ‘partial,billing’, and ‘partial’
Example
full,billingExample
[ "ddda3227-9a39-46ae-9e14-20958bb4e6c9", "qada3227-9a39-46ae-9e14-20958bb4e45y"]Responses
Section titled “ Responses ”Created
object
object
The user ID
The account ID
The first name of the user
The last name of the user
The email of the user
The phone number of the user
Whether or not the user has accepted their invitation
Whether or not the user has multi-factor authentication enabled
The user roles
Whether or not this owner is the last on the account. Only shows with users that have owner level roles.
An array of installs tied to a partial user.
object
The ID of the install
The name of the install
Example
{ "message": "Your change was successful.", "account_user": { "user_id": "28c78b6d-c2da-4f09-85f5-1ad588089b2d", "account_id": "eeda3227-9a39-46ae-9e14-20958bb4e6c9", "first_name": "Joe", "last_name": "Smith", "email": "joeSmith@test.com", "phone": "1234567890", "invite_accepted": false, "mfa_enabled": true, "roles": "billing, partial", "last_owner": false, "installs": [ { "id": "3hda2d4h-9a39-o20x-9e14-20958bb4ekd8", "name": "install1" } ] }}Bad Request
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
An array of error objects describing specific errors that arose when servicing the request
object
The name of the resource that was being processed when the error occurred
(Optional) The specific field associated with the error
(Optional) A type associated with the error. invalid_value, access_error, value_unavailable
(Optional) A machine code relating to the error that occurred with the field and resource
(Optional) A human-readable message relating to the error that occurred with the field and resource
Example
{ "message": "Invalid Site: Name cannot be empty.", "errors": [ { "resource": "Site", "field": "name", "type": "invalid_value", "code": "too_long", "message": "Name is too long (maximum is 40 characters)" } ]}Authentication Error
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "Bad Credentials"}Not authorized
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "You don't have permission to perform that action"}Too many requests
Service unavailable