Set Custom Attribute Value
Set a custom attribute field (also known as a custom user field) value for a user.
The custom attribute field must exist for your account. For details about defining custom user fields in OneLogin, see Custom User Fields.
Resource URL
https://<subdomain>/api/1/users/:id/
set_custom_attributes
Header Parameters
Authorization required string |
Set to Set The access token must have been generated using an API credential pair created using the scope required to call this API. This API can be called using either of the following scopes: |
Content-Type required string |
Set to application/json . |
Resource Parameter
id required string |
Set to the |
Request Parameter
custom_attributes required object |
Provide one or more key value pairs composed of the custom attribute field shortname and the value that you want to set the field to. See the Sample Request Body below for the required format. Any existing custom attribute field value will be overwritten. To remove a custom attribute value, send an empty value, such as To get a list of existing custom attribute fields, use the Get Custom Attribute Fields API. |
Request Body
{
"custom_attributes":{
"AWS_Role":"Administrator",
"skype":"l_gonzalez"
}
}
Sample Response
- 200 OK
- 400 Bad Req.
- 401 Unauth.
- 403 Forbid.
- 404 Not Found
{
"status": {
"code": 200,
"error": false,
"message": "Success",
"type": "success"
}
}
Here are a few different errors that will return a 400 Bad Request status code.
{
"status": {
"code": 400,
"error": true,
"message": "input custom_attributes is not valid. Valid custom_attributes ->
[AWS_Role skype messenger ]",
"type": "bad request"
}
}
{
"status": {
"code": 400,
"error": true,
"message": "custom_attributes is empty",
"type": "bad request"
}
}
{
"status": {
"code": 400,
"error": true,
"message": "Input JSON is not valid",
"type": "bad request"
}
}
Typically, the following error means that the Authorization
header is missing or incorrectly formatted. The Authorization
header should use this format: bearer:<access_token>
.
{
"status": {
"error": true,
"code": 400,
"type": "bad request",
"message": "Authorization Information is incorrect"
}
}
Typically, the following error means that the user ID is not an integer. The user ID must be an integer.
{
"status": {
"error": true,
"code": 400,
"type": "bad request",
"message": {
"attribute": "id",
"description": "ID is incorrect"
}
}
}
Typically, the following error means that the access token is invalid.
{
"status": {
"error": true,
"code": 401,
"type": "Unauthorized",
"message": "Authentication Failure"
}
}
Typically, the following error means that the access token used to make the call was generated using API credentials that have insufficient permissions. This API can be called using the Manage users
or Manage All
scope.
{
"status": {
"error": true,
"code": 401,
"type": "Unauthorized",
"message": "Insufficient Permission"
}
}
{
"status": {
"error": true,
"code": 403,
"type": "forbidden",
"message": "user is not authorized to access this User"
}
}
{
"status": {
"code": 404,
"error": true,
"message": "User for id 88888888 was not found",
"type": "not found"
}
}
Postman Collection
- Clicking Run in Postman button navigates to the page where you can fork the collection to your workspace. Forking the collection into your workspace will enable you to contribute to the source collection using pull requests. You can also view the collection in a public workspace if you like and even import a copy of the collection using the links present on the screen.
Sample Code
cURL
Replace sample values indicated by < >
with your actual values.
curl 'https://<subdomain>/api/1/users/<user_id>/set_custom_attributes' \
-X PUT \
-H "Authorization: bearer: <access_token>" \
-H "Content-Type: application/json" \
-d '{
"custom_attributes":{
"<custom_attribute_shortname1>":"<value>",
"<custom_attribute_shortname2>":"<value>"
}
}'
Python
See Work with OAuth 2.0 Tokens, Users, and Roles.
Have a Question?
Found a problem or a bug? Submit a support ticket.
Looking for walkthroughs or how-to guides on OneLogin's user and admin features? Check out the documentation in our Knowledge Base.
Have a product idea or request? Share it with us in our Ideas Portal.