User Administration API Resources

Allows you access to Luna groups and their properties, users, and roles.

For all resources that reference an accountId, you need to get the value from elsewhere, either manually from the Luna Control Center or programmatically using the Property Manager API (PAPI). In the latter case, run the List Groups operation, extract the accountId value from the top-level object, then remove the act_ prefix from the value. Use the same account to provision the PAPI token as you do to provision the token for the User Administration API.

API Summary

Operation Method Endpoint
Groups
List Groups GET /user-admin/v1/accounts/{accountId}/groups
List Nested Groups GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/groups
Get a Group GET /user-admin/v1/accounts/{accountId}/groups/{groupId}
Modify a Group PUT /user-admin/v1/accounts/{accountId}/groups/{groupId}
Create a New Group POST /user-admin/v1/accounts/{accountId}/groups/{groupId}
Remove a Group DELETE /user-admin/v1/accounts/{accountId}/groups/{groupId}
Move a Group within Another Group PUT /user-admin/v1/accounts/{accountId}/move/group/{groupId}/groups/{destinationGroupId}/
Properties
List a Group’s Properties GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/properties
Get a Property GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/properties/{assetId}
List a Property’s Users GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/properties/{assetId}/users
List a User’s Property Exceptions GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/users/{contactId}/propertyExceptions
Modify a User’s Set of Property Exceptions PUT /user-admin/v1/accounts/{accountId}/groups/{groupId}/users/{contactId}/propertyExceptions
Modify a Property Exception PUT /user-admin/v1/accounts/{accountId}/groups/{groupId}/users/{contactId}/propertyExceptions/{propertyId}
Move a Property to Another Group POST /user-admin/v1/accounts/{accountId}/properties/{propertyId}
Roles
List Roles GET /user-admin/v1/accounts/{accountId}/roles
Create a New Role POST /user-admin/v1/accounts/{accountId}/roles
Modify a Role PUT /user-admin/v1/accounts/{accountId}/roles
Get a Role GET /user-admin/v1/accounts/{accountId}/roles/{roleId}
Remove a Role DELETE /user-admin/v1/accounts/{accountId}/roles/{roleId}
List Grantable Roles GET /user-admin/v1/accounts/{accountId}/roles/grantable
Users
Create a New User POST /user-admin/v1/users
List Users GET /user-admin/v1/accounts/{accountId}/users
List a Group’s Users GET /user-admin/v1/users{?groupId,actions}
Get a User GET /user-admin/v1/users/{contactId}
Modify a User PUT /user-admin/v1/users/{contactId}
Remove a User DELETE /user-admin/v1/users/{contactId}
Reset a User’s Password PUT /user-admin/v1/users/{contactId}/password

List Groups

This operation provides you with groups and their sub-groups that belong to an account.

GET /user-admin/v1/accounts/{accountId}/groups

Example: /user-admin/v1/accounts/1–599K/groups

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.

Status 200 application/json

Response:

[
    {
        "accountId": "B-M-1LGK2MU",
        "children": [
            {
                "accountId": "B-M-1LGK2MU",
                "createdBy": "Akamai",
                "createdDate": "2016-01-22T20:05:22Z",
                "groupId": 75149,
                "groupName": "testgroup",
                "leaf": true,
                "modifiedBy": "Akamai",
                "modifiedDate": "2016-01-22T20:05:22Z",
                "navGroup": true,
                "parentGroupId": 72872,
                "topLevelGroup": false
            }
        ],
        "createdBy": "Akamai",
        "createdDate": "2015-12-09T19:51:14Z",
        "groupId": 72872,
        "groupName": "Tech Jam-M-1LGK2S7",
        "leaf": false,
        "modifiedBy": "Akamai",
        "modifiedDate": "2015-12-09T19:51:14Z",
        "navGroup": true,
        "parentGroupId": null,
        "topLevelGroup": true
    }
]

List Nested Groups

Get information for groups that are within a higher-level group.

GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/groups

Example: /user-admin/v1/accounts/1–599K/groups/12345/groups

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

[
    {
        "accountId": "B-M-1LGK2MU",
        "createdBy": "Akamai",
        "createdDate": "2016-01-22T20:05:22Z",
        "groupId": 75149,
        "groupName": "testgroup",
        "leaf": true,
        "modifiedBy": "Akamai",
        "modifiedDate": "2016-01-22T20:05:22Z",
        "navGroup": true,
        "parentGroupId": 72872,
        "topLevelGroup": false
    }
]

Get a Group

Get information for a group.

GET /user-admin/v1/accounts/{accountId}/groups/{groupId}

Example: /user-admin/v1/accounts/1–599K/groups/12345

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

{
    "accountId": "B-M-1LGK2MU",
    "createdBy": "Akamai",
    "createdDate": "2016-01-22T20:05:22Z",
    "groupId": 75149,
    "groupName": "testgroup",
    "leaf": true,
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-22T20:05:22Z",
    "navGroup": true,
    "parentGroupId": 72872,
    "topLevelGroup": false
}

Modify a Group

Save changes to an existing group.

PUT /user-admin/v1/accounts/{accountId}/groups/{groupId}

Example: /user-admin/v1/accounts/1–599K/groups/12345

Content-Type: application/json

Request:

{ "groupName": "newName" }

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

{
    "accountId": "B-M-1LGK2MU",
    "createdBy": "Akamai",
    "createdDate": "2016-01-22T20:38:36Z",
    "groupId": 75152,
    "groupName": "newTestGroup",
    "leaf": true,
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-22T20:38:36Z",
    "navGroup": true,
    "parentGroupId": 75149,
    "topLevelGroup": false
}

Create a New Group

POST /user-admin/v1/accounts/{accountId}/groups/{groupId}

Example: /user-admin/v1/accounts/1–599K/groups/12345

Content-Type: application/json

Request:

{ "groupName": "newName" }

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

{
    "accountId": "B-M-1LGK2MU",
    "createdBy": "Akamai",
    "createdDate": "2016-01-22T20:42:21Z",
    "groupId": 75153,
    "groupName": "newgroup2",
    "leaf": true,
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-22T20:42:21Z",
    "navGroup": true,
    "parentGroupId": 72872,
    "topLevelGroup": false
}

Remove a Group

To delete a group, it must be empty of users and properties.

DELETE /user-admin/v1/accounts/{accountId}/groups/{groupId}

Example: /user-admin/v1/accounts/1–599K/groups/12345

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
groupId Integer 12345 Unique numeric identifier for a group.

Status 204

Move a Group within Another Group

PUT /user-admin/v1/accounts/{accountId}/move/group/{groupId}/groups/{destinationGroupId}/

Example: /user-admin/v1/accounts/1–599K/move/group/12345/groups/67890/

Content-Type: application/json

Request:

{
    "sourceGroupId": 00033,
    "destinationGroupId": 00044
}

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
destinationGroupId String 67890 Specifies the new parent group’s identifier.
groupId Integer 12345 Unique numeric identifier for a group.

Status 204

List a Group’s Properties

Get a list of properties within a group.

GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/properties

Example: /user-admin/v1/accounts/1–599K/groups/12345/properties

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

[
    {
        "addedByArlfileGrant": "N",
        "assetId": 10367585,
        "assetName": "demo.akamaitechjam.com",
        "assetTypeDescription": "Site",
        "groupId": 72872,
        "groupName": "Tech Jam-M-1LGK2S7"
    },
    {
        "addedByArlfileGrant": "N",
        "assetId": 10367786,
        "assetName": "demo2.akamaitechjam.com",
        "assetTypeDescription": "Site",
        "groupId": 72872,
        "groupName": "Tech Jam-M-1LGK2S7"
    },
    {
        "addedByArlfileGrant": "N",
        "assetId": 10367788,
        "assetName": "demo3.akamaitechjam.com",
        "assetTypeDescription": "Site",
        "groupId": 72872,
        "groupName": "Tech Jam-M-1LGK2S7"
    },
    {
        "addedByArlfileGrant": "N",
        "assetId": 10368038,
        "assetName": "mvh_test",
        "assetTypeDescription": "Application",
        "groupId": 72872,
        "groupName": "Tech Jam-M-1LGK2S7"
    }
]

Get a Property

Get the details for one property.

GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/properties/{assetId}

Example: /user-admin/v1/accounts/1–599K/groups/12345/properties/123456

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
assetId String 123456 Within the User Admin API, the assetId is also known as the propertyId.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

{
    "arlConfigFile": "unimatrixzero1.xml",
    "arlFileVersion": 1,
    "assetId": 10373924,
    "assetName": "unimatrixzero1",
    "assetType": "SITE",
    "assetTypeDescription": "Site",
    "configManagerVisible": false,
    "createdBy": "Akamai",
    "createdDate": "2016-01-25T15:56:35Z",
    "groupId": 75152,
    "groupName": "newTestGroup",
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-25T15:56:35Z",
    "productType": "Site_Accel",
    "solutionType": "AQUA"
}

List a Property’s Users

Get a list of users for a single property.

GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/properties/{assetId}/users

Example: /user-admin/v1/accounts/1–599K/groups/12345/properties/123456/users

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
assetId String 123456 Within the User Admin API, the assetId is also known as the propertyId.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

[
    {
        "contactId": "B-C-IP9HJX",
        "firstName": "Diana",
        "groupId": 72872,
        "lastName": "Prince",
        "roleDescription": "Professional Services/Integration Consultant",
        "roleId": 875,
        "roleName": "PS/Integration Consultant",
        "username": "example_testemail"
    },
    {
        "contactId": "B-M-1LJQV49",
        "firstName": "TechJam",
        "groupId": 72872,
        "lastName": "2015",
        "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
        "roleId": 14,
        "roleName": "Admin",
        "username": "techjam2015"
    }
]

List a User’s Property Exceptions

Get the property exceptions for one user.

GET /user-admin/v1/accounts/{accountId}/groups/{groupId}/users/{contactId}/propertyExceptions

Example: /user-admin/v1/accounts/1–599K/groups/12345/users/1–0A1BCD/propertyExceptions

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
contactId String 1-0A1BCD Unique identifier for a user.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

[
    {
        "block": false,
        "propertyId": 10373924,
        "propertyName": "unimatrixzero1"
    }
]

Modify a User’s Set of Property Exceptions

PUT /user-admin/v1/accounts/{accountId}/groups/{groupId}/users/{contactId}/propertyExceptions

Example: /user-admin/v1/accounts/1–599K/groups/12345/users/1–0A1BCD/propertyExceptions

Content-Type: application/json

Request:

[
    {
        "block": "true",
        "propertyId": 10368038,
        "propertyName": "mvh_test"
    },
    {
        "block": "false",
        "propertyId": 10373924,
        "propertyName": "unimatrixzero1"
    }
]

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
contactId String 1-0A1BCD Unique identifier for a user.
groupId Integer 12345 Unique numeric identifier for a group.

Status 200 application/json

Response:

[
    {
        "block": true,
        "propertyId": 10368038,
        "propertyName": "mvh_test"
    },
    {
        "block": false,
        "propertyId": 10373924,
        "propertyName": "unimatrixzero1"
    }
]

Modify a Property Exception

Save the property exceptions for a user.

PUT /user-admin/v1/accounts/{accountId}/groups/{groupId}/users/{contactId}/propertyExceptions/{propertyId}

Example: /user-admin/v1/accounts/1–599K/groups/12345/users/1–0A1BCD/propertyExceptions/123456

Content-Type: application/json

Request:

[
    {
        "block": "false",
        "propertyId": 10373924,
        "propertyName": "unimatrixzero1"
    }
]

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
contactId String 1-0A1BCD Unique identifier for a user.
groupId Integer 12345 Unique numeric identifier for a group.
propertyId String 123456 Within the User Admin API, the assetId is also known as the propertyId.

Status 200 application/json

Response:

[
    {
        "block": false,
        "propertyId": 10373924,
        "propertyName": "unimatrixzero1"
    }
]

Move a Property to Another Group

POST /user-admin/v1/accounts/{accountId}/properties/{propertyId}

Example: /user-admin/v1/accounts/1–599K/properties/123456

Content-Type: application/json

Request:

{
    "sourceGroupId": 28717,
    "destinationGroupId": 28760
}

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
propertyId String 123456 Within the User Admin API, the assetId is also known as the propertyId.

Status 204

List Roles

Get roles for an account.

GET /user-admin/v1/accounts/{accountId}/roles

Example: /user-admin/v1/accounts/1–599K/roles

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.

Status 200 application/json

Response:

[
    {
        "contractTypeId": "1-8BYUX",
        "createdBy": "Akamai",
        "createdDate": null,
        "modifiedBy": "Akamai",
        "modifiedDate": null,
        "numUsers": 1,
        "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
        "roleId": 14,
        "roleName": "Admin",
        "type": "standard",
        "users": [
            {
                "accountId": "1-599K",
                "contactId": "B-M-1LJQV49",
                "email": null,
                "firstName": "TechJam",
                "lastName": "2015",
                "phone": null,
                "tfaAllowedForUser": false,
                "tfaConfigured": false,
                "tfaEnabled": false,
                "timezone": null,
                "userPasswordStatus": null,
                "userType": null,
                "username": null
            }
        ]
    }
]

Create a New Role

Create a new role on an account.

POST /user-admin/v1/accounts/{accountId}/roles

Example: /user-admin/v1/accounts/1–599K/roles

Content-Type: application/json

Request:

{
    "roleName": "Funky Test Role",
    "roleDescription": "Description",
    "grantedRoles": [
        { "roleId": 86266 },
        { "roleId": 84513 }
    ]
}

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.

Status 200 application/json

Response:

{
    "actions": {
        "delete": true,
        "edit": true
    },
    "contractTypeId": "1-8BYUX",
    "createdBy": "Akamai",
    "createdDate": "2016-01-25T19:26:19Z",
    "grantedRoles": [
        {
            "roleId": 86266,
            "roleName": "Luna Search Feed Services Consumer"
        },
        {
            "roleId": 84513,
            "roleName": "Luna Messages Target Groups Admin"
        }
    ],
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-25T19:26:19Z",
    "roleDescription": "Description",
    "roleId": 92728,
    "roleName": "Description",
    "type": "custom"
}

Modify a Role

Make changes to an existing role.

PUT /user-admin/v1/accounts/{accountId}/roles

Example: /user-admin/v1/accounts/1–599K/roles

Content-Type: application/json

Request:

{
    "roleName": "Description",
    "roleDescription": "Description",
    "roleId": 98765,
    "grantedRoles": [
        { "roleId": 121 },
        { "roleId": 122 },
        { "roleId": 1234 }
    ]
}

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.

Status 200 application/json

Response:

{
    "actions": {
        "delete": true,
        "edit": true
    },
    "contractTypeId": "1-8BYUX",
    "createdBy": "Akamai",
    "createdDate": "2016-01-25T19:26:19Z",
    "grantedRoles": [
        {
            "roleId": 84513,
            "roleName": "Luna Messages Target Groups Admin"
        },
        {
            "roleId": 15,
            "roleName": "Marketing"
        }
    ],
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-25T19:50:34Z",
    "roleDescription": "testing editing a role.",
    "roleId": 92728,
    "roleName": "testRole",
    "type": "custom"
}

Get a Role

Get a role and its sub-roles.

GET /user-admin/v1/accounts/{accountId}/roles/{roleId}

Example: /user-admin/v1/accounts/1–599K/roles/00

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
roleId String 00 Unique identifier for a role object.

Status 200 application/json

Response:

{
    "contractTypeId": "1-8BYUX",
    "createdBy": "Akamai",
    "createdDate": "2016-01-25T19:26:19Z",
    "grantedRoles": [
        {
            "roleId": 84513,
            "roleName": "Luna Messages Target Groups Admin"
        },
        {
            "roleId": 15,
            "roleName": "Marketing"
        }
    ],
    "modifiedBy": "Akamai",
    "modifiedDate": "2016-01-25T19:50:34Z",
    "roleDescription": "testing editing a role.",
    "roleId": 92728,
    "roleName": "testRole",
    "type": "custom"
}

Remove a Role

Delete a role from an account.

DELETE /user-admin/v1/accounts/{accountId}/roles/{roleId}

Example: /user-admin/v1/accounts/1–599K/roles/00

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.
roleId String 00 Unique identifier for a role object.

Status 204

List Grantable Roles

Get a list of roles that you can grant to users.

GET /user-admin/v1/accounts/{accountId}/roles/grantable

Example: /user-admin/v1/accounts/1–599K/roles/grantable

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.

Status 200 application/json

Response:

[
    {
        "roleId": 1642,
        "roleName": "Netops Sr (Restricted) (Internal) (Akamai Internal)"
    },
    {
        "roleId": 81812,
        "roleName": "Custom role # 81812"
    },
    {
        "roleId": 84513,
        "roleName": "Luna Messages Target Groups Admin"
    },
    {
        "roleId": 78181,
        "roleName": "Waf DLR CSI Support Role (Restricted) (Internal) (Akamai Internal)"
    },
    {
        "roleId": 83968,
        "roleName": "View Cloudlets Policies"
    }
]

Create a New User

Create and grant permissions to a new user.

POST /user-admin/v1/users

Content-Type: application/json

Request:

{
    "firstName": "Diana",
    "lastName": "Prince",
    "email": "example_testemail@akamai.com",
    "phone": "(444) 444-4444",
    "timezone": "GMT",
    "roleAssignments": [
        {
            "groupId": "72872",
            "roleId": 14
        }
    ]
}

Status 200 application/json

Response:

{
    "accountId": "B-M-1LGK2MU",
    "contactId": "B-M-1NU83SN",
    "email": "example_testemail@akamai.com",
    "firstName": "Diana",
    "lastName": "Prince",
    "phone": "(444) 444-4444",
    "roleAssignments": [
        {
            "groupId": 72872,
            "roleDescription": null,
            "roleId": 14
        }
    ],
    "tfaAllowedForUser": false,
    "tfaConfigured": false,
    "tfaEnabled": false,
    "timezone": "GMT",
    "userPasswordStatus": null,
    "userType": null,
    "username": "example_testemail"
}

List Users

This operation provides you with information such as name and email address for every active user on any given account. This may include users from other accounts if they have specified roles in groups under that account. These users may include Professional Services Associates or other support personnel.

GET /user-admin/v1/accounts/{accountId}/users

Example: /user-admin/v1/accounts/1–599K/users

Parameter Type Sample Description
Required
accountId String 1-599K Unique identifier for an account. See above for guidance on how to obtain this value.

Status 200 application/JSON

Response:

[
    {
        "accountId": "1-599K",
        "contactId": "B-C-IP9HJX",
        "email": "example_testemail@akamai.com",
        "firstName": "Diana",
        "lastLoginDate": "2016-01-25T20:02:28Z",
        "lastName": "Prince",
        "phone": "(444) 444-4444",
        "roleAssignments": [
            {
                "groupId": 72872,
                "groupName": "Tech Jam-M-1LGK2S7",
                "roleDescription": "Professional Services/Integration Consultant",
                "roleId": 875,
                "roleName": "PS/Integration Consultant"
            }
        ],
        "tfaAllowedForUser": true,
        "tfaConfigured": false,
        "tfaEnabled": false,
        "timezone": null,
        "userPasswordStatus": 0,
        "userType": "ui",
        "username": "example_testemail"
    },
    {
        "accountId": "B-M-1LGK2MU",
        "contactId": "B-M-1LJQV49",
        "email": "techjam2015@akamai.com",
        "firstName": "TechJam",
        "lastName": "2015",
        "phone": "6175551212",
        "roleAssignments": [
            {
                "groupId": 72872,
                "groupName": "Tech Jam-M-1LGK2S7",
                "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
                "roleId": 14,
                "roleName": "Admin"
            }
        ],
        "tfaAllowedForUser": true,
        "tfaConfigured": false,
        "tfaEnabled": false,
        "timezone": "EST",
        "userPasswordStatus": 3,
        "userType": "ui",
        "username": "techjam2015"
    }
]

List a Group’s Users

GET /user-admin/v1/users{?groupId,actions}

Example: /user-admin/v1/users?groupId=12345&actions=true

Parameter Type Sample Description
Required
groupId Integer 12345 Unique numeric identifier for a group.
Optional
actions Boolean true When enabled, response yields additional details on users’ access rights.

Status 200 application/JSON

Response:

[
    {
        "accountId": "1-599K",
        "contactId": "B-C-IP9HJX",
        "email": "example_testemail@akamai.com",
        "firstName": "Diana",
        "lastLoginDate": "2016-01-25T20:06:06Z",
        "lastName": "Prince",
        "phone": "(444) 444-4444",
        "roleAssignments": [
            {
                "groupId": 72872,
                "groupName": "Tech Jam-M-1LGK2S7",
                "roleDescription": "Professional Services/Integration Consultant",
                "roleId": 875,
                "roleName": "PS/Integration Consultant"
            }
        ],
        "tfaAllowedForUser": true,
        "tfaConfigured": false,
        "tfaEnabled": false,
        "timezone": null,
        "userPasswordStatus": 0,
        "userType": "ui",
        "username": "example_testemail"
    },
    {
        "accountId": "B-M-1LGK2MU",
        "contactId": "B-M-1LJQV49",
        "email": "techjam2015@akamai.com",
        "firstName": "TechJam",
        "lastName": "2015",
        "phone": "6175551212",
        "roleAssignments": [
            {
                "groupId": 72872,
                "groupName": "Tech Jam-M-1LGK2S7",
                "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
                "roleId": 14,
                "roleName": "Admin"
            }
        ],
        "tfaAllowedForUser": true,
        "tfaConfigured": false,
        "tfaEnabled": false,
        "timezone": "EST",
        "userPasswordStatus": 3,
        "userType": "ui",
        "username": "techjam2015"
    }
]

Get a User

Get a user’s details. Phone numbers can be submitted in the PUT/POST body in these formats: 4324324321, 432 432 4321, (432) 432 4321, (432) 432-4321. You may also add + or 0 as a prefix for international numbers. Special characters are not permitted in the name and description fields.

GET /user-admin/v1/users/{contactId}

Example: /user-admin/v1/users/1–0A1BCD

Parameter Type Sample Description
Required
contactId String 1-0A1BCD Unique identifier for a user.

Status 200 application/json

Response:

{
    "accountId": "B-M-1LGK2MU",
    "authPolicies": [],
    "contactId": "B-M-1LJQV49",
    "email": "techjam2015@akamai.com",
    "firstName": "TechJam",
    "lastName": "2015",
    "phone": "6175551212",
    "roleAssignments": [
        {
            "groupId": 72872,
            "groupName": "Tech Jam-M-1LGK2S7",
            "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
            "roleId": 14,
            "roleName": "Admin"
        }
    ],
    "tfaAllowedForUser": true,
    "tfaConfigured": false,
    "tfaEnabled": true,
    "timezone": "EST",
    "userPasswordStatus": 3,
    "userType": "ui",
    "username": "techjam2015"
}

Modify a User

Edit a user’s details and permissions.

PUT /user-admin/v1/users/{contactId}

Example: /user-admin/v1/users/1–0A1BCD

Content-Type: application/json

Request:

{
    "firstName": "Diana",
    "lastName": "Prince",
    "email": "example_testemail@akamai.com",
    "phone": "(111) 111-1111",
    "timezone": "GMT",
    "roleAssignments": [
        {
            "groupId": "75152",
            "roleId": 14
        }
    ]
}

Parameter Type Sample Description
Required
contactId String 1-0A1BCD Unique identifier for a user.

Status 200 application/json

Response:

{
    "accountId": "B-M-1LGK2MU",
    "contactId": "B-M-1NU83SN",
    "email": "example_testemail@akamai.com",
    "firstName": "Diana",
    "lastName": "Prince",
    "phone": "(111) 111-1111",
    "roleAssignments": [
        {
            "groupId": 75152,
            "groupName": "newTestGroup",
            "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
            "roleId": 14,
            "roleName": "Admin"
        },
        {
            "groupId": 72872,
            "groupName": "Tech Jam-M-1LGK2S7",
            "roleDescription": "This role provides the maximum access to users. An Administrator can perform admin tasks such as creating users and groups; configuration-related tasks such as creating and editing configurations; publishing tasks",
            "roleId": 14,
            "roleName": "Admin"
        }
    ],
    "tfaAllowedForUser": false,
    "tfaConfigured": false,
    "tfaEnabled": false,
    "timezone": "GMT",
    "userPasswordStatus": null,
    "userType": null,
    "username": "example_testemail"
}

Remove a User

DELETE /user-admin/v1/users/{contactId}

Example: /user-admin/v1/users/1–0A1BCD

Parameter Type Sample Description
Required
contactId String 1-0A1BCD Unique identifier for a user.

Status 200

Reset a User’s Password

This operation resets a user’s password. Note that it does not require passing data in the body. Setting the send_email query parameter to true sends an email to the user with the reset password.

PUT /user-admin/v1/users/{contactId}/password

Example: /user-admin/v1/users/1–0A1BCD/password

Parameter Type Sample Description
Required
contactId String 1-0A1BCD Unique identifier for a user.

Status 200 application/json

Response:

{
    "localizedMessage": "The password was reset to qtgGc3d6. Mail could not be sent to address: example_testemail@akamai.com. Notify the user directly with the new password."
}