Update a user

PATCH https://api.ap1.datadoghq.com/api/v2/users/{user_id}https://api.ap2.datadoghq.com/api/v2/users/{user_id}https://api.datadoghq.eu/api/v2/users/{user_id}https://api.ddog-gov.com/api/v2/users/{user_id}https://api.us2.ddog-gov.com/api/v2/users/{user_id}https://api.datadoghq.com/api/v2/users/{user_id}https://api.us3.datadoghq.com/api/v2/users/{user_id}https://api.us5.datadoghq.com/api/v2/users/{user_id}

Overview

Edit a user. Can only be used with an application key belonging to an administrator user. This endpoint requires any of the following permissions:

  • user_access_manage
  • service_account_write

  • OAuth apps require the user_access_manage authorization scope to access this endpoint.

    Arguments

    Path Parameters

    Name

    Type

    Description

    user_id [required]

    string

    The ID of the user.

    Request

    Body Data (required)

    Expand All

    Field

    Type

    Description

    data [required]

    object

    Object to update a user.

    attributes [required]

    object

    Attributes of the edited user.

    disabled

    boolean

    When set to true, the user is deactivated and can no longer log in. When false, the user is active.

    email

    string

    The email address of the user, used for login and notifications. Must be a valid email format.

    name

    string

    The full display name of the user as shown in the Datadog UI. Maximum 55 characters, cannot contain < or >.

    title

    string

    The job title of the user (for example, "Senior Engineer" or "Product Manager").

    id [required]

    string

    ID of the user.

    type [required]

    enum

    Users resource type. Allowed enum values: users

    default: users

    {
      "data": {
        "id": "string",
        "type": "users",
        "attributes": {
          "name": "updated",
          "disabled": true
        }
      }
    }

    Response

    OK

    Response containing information about a single user.

    Expand All

    Field

    Type

    Description

    data

    object

    User object returned by the API.

    attributes

    object

    Attributes of user object returned by the API.

    created_at

    date-time

    The ISO 8601 timestamp of when the user account was created.

    disabled

    boolean

    Whether the user account is deactivated. Disabled users cannot log in.

    email

    string

    The email address of the user, used for login and notifications.

    handle

    string

    The unique handle (username) of the user, typically matching their email prefix.

    icon

    string

    URL of the user's profile icon, typically a Gravatar URL derived from the email address.

    last_login_time

    date-time

    The ISO 8601 timestamp of the user's most recent login, or null if the user has never logged in.

    mfa_enabled

    boolean

    Whether multi-factor authentication (MFA) is enabled for the user's account.

    modified_at

    date-time

    The ISO 8601 timestamp of when the user account was last modified.

    name

    string

    The full display name of the user as shown in the Datadog UI.

    service_account

    boolean

    Whether this is a service account rather than a human user. Service accounts are used for programmatic API access.

    status

    string

    The current status of the user account (for example, Active, Pending, or Disabled).

    title

    string

    The job title of the user (for example, "Senior Engineer" or "Product Manager").

    uuid

    string

    The globally unique identifier (UUID) of the user.

    verified

    boolean

    Whether the user's email address has been verified.

    id

    string

    ID of the user.

    relationships

    object

    Relationships of the user object returned by the API.

    org

    object

    Relationship to an organization.

    data [required]

    object

    Relationship to organization object.

    id [required]

    string

    ID of the organization.

    type [required]

    enum

    Organizations resource type. Allowed enum values: orgs

    default: orgs

    other_orgs

    object

    Relationship to organizations.

    data [required]

    [object]

    Relationships to organization objects.

    id [required]

    string

    ID of the organization.

    type [required]

    enum

    Organizations resource type. Allowed enum values: orgs

    default: orgs

    other_users

    object

    Relationship to users.

    data [required]

    [object]

    Relationships to user objects.

    id [required]

    string

    A unique identifier that represents the user.

    type [required]

    enum

    Users resource type. Allowed enum values: users

    default: users

    roles

    object

    Relationship to roles.

    data

    [object]

    An array containing type and the unique identifier of a role.

    id

    string

    The unique identifier of the role.

    type

    enum

    Roles type. Allowed enum values: roles

    default: roles

    type

    enum

    Users resource type. Allowed enum values: users

    default: users

    included

    [ <oneOf>]

    Array of objects related to the user.

    Option 1

    object

    Organization object.

    attributes

    object

    Attributes of the organization.

    created_at

    date-time

    Creation time of the organization.

    description

    string

    Description of the organization.

    disabled

    boolean

    Whether or not the organization is disabled.

    modified_at

    date-time

    Time of last organization modification.

    name

    string

    Name of the organization.

    public_id

    string

    Public ID of the organization.

    sharing

    string

    Sharing type of the organization.

    url

    string

    URL of the site that this organization exists at.

    id

    string

    ID of the organization.

    type [required]

    enum

    Organizations resource type. Allowed enum values: orgs

    default: orgs

    Option 2

    object

    Permission object.

    attributes

    object

    Attributes of a permission.

    created

    date-time

    Creation time of the permission.

    description

    string

    Description of the permission.

    display_name

    string

    Displayed name for the permission.

    display_type

    string

    Display type.

    group_name

    string

    Name of the permission group.

    name

    string

    Name of the permission.

    name_aliases

    [string]

    List of alias names for the permission.

    restricted

    boolean

    Whether or not the permission is restricted.

    id

    string

    ID of the permission.

    type [required]

    enum

    Permissions resource type. Allowed enum values: permissions

    default: permissions

    Option 3

    object

    Role object returned by the API.

    attributes

    object

    Attributes of the role.

    created_at

    date-time

    Creation time of the role.

    modified_at

    date-time

    Time of last role modification.

    name

    string

    The name of the role. The name is neither unique nor a stable identifier of the role.

    receives_permissions_from

    [string]

    The managed role from which this role automatically inherits new permissions. Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". If empty or not specified, the role does not automatically inherit permissions from any managed role.

    user_count

    int64

    Number of users with that role.

    id

    string

    The unique identifier of the role.

    relationships

    object

    Relationships of the role object returned by the API.

    permissions

    object

    Relationship to multiple permissions objects.

    data

    [object]

    Relationships to permission objects.

    id

    string

    ID of the permission.

    type

    enum

    Permissions resource type. Allowed enum values: permissions

    default: permissions

    type [required]

    enum

    Roles type. Allowed enum values: roles

    default: roles

    {
      "data": {
        "attributes": {
          "created_at": "2019-09-19T10:00:00.000Z",
          "disabled": false,
          "email": "string",
          "handle": "string",
          "icon": "string",
          "last_login_time": "2019-09-19T10:00:00.000Z",
          "mfa_enabled": false,
          "modified_at": "2019-09-19T10:00:00.000Z",
          "name": "string",
          "service_account": false,
          "status": "string",
          "title": "string",
          "uuid": "string",
          "verified": false
        },
        "id": "string",
        "relationships": {
          "org": {
            "data": {
              "id": "00000000-0000-beef-0000-000000000000",
              "type": "orgs"
            }
          },
          "other_orgs": {
            "data": [
              {
                "id": "00000000-0000-beef-0000-000000000000",
                "type": "orgs"
              }
            ]
          },
          "other_users": {
            "data": [
              {
                "id": "00000000-0000-0000-2345-000000000000",
                "type": "users"
              }
            ]
          },
          "roles": {
            "data": [
              {
                "id": "3653d3c6-0c75-11ea-ad28-fb5701eabc7d",
                "type": "roles"
              }
            ]
          }
        },
        "type": "users"
      },
      "included": [
        {
          "attributes": {
            "created_at": "2019-09-19T10:00:00.000Z",
            "description": "string",
            "disabled": false,
            "modified_at": "2019-09-19T10:00:00.000Z",
            "name": "string",
            "public_id": "string",
            "sharing": "string",
            "url": "string"
          },
          "id": "string",
          "type": "orgs"
        }
      ]
    }

    Bad Request

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    A list of errors.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Authentication error

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    A list of errors.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Not found

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    A list of errors.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Unprocessable Entity

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    A list of errors.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Too many requests

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    A list of errors.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Code Example

                              ## default
    # 
    
    # Path parameters
    export user_id="00000000-0000-9999-0000-000000000000"
    # Curl command
    curl -X PATCH "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/users/${user_id}" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}" \ -d @- << EOF { "data": { "id": "00000000-0000-feed-0000-000000000000", "type": "users" } } EOF
    // Update a user returns "OK" response
    
    package main
    
    import (
    	"context"
    	"encoding/json"
    	"fmt"
    	"os"
    
    	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
    	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
    )
    
    func main() {
    	// there is a valid "user" in the system
    	UserDataID := os.Getenv("USER_DATA_ID")
    
    	body := datadogV2.UserUpdateRequest{
    		Data: datadogV2.UserUpdateData{
    			Id:   UserDataID,
    			Type: datadogV2.USERSTYPE_USERS,
    			Attributes: datadogV2.UserUpdateAttributes{
    				Name:     datadog.PtrString("updated"),
    				Disabled: datadog.PtrBool(true),
    			},
    		},
    	}
    	ctx := datadog.NewDefaultContext(context.Background())
    	configuration := datadog.NewConfiguration()
    	apiClient := datadog.NewAPIClient(configuration)
    	api := datadogV2.NewUsersApi(apiClient)
    	resp, r, err := api.UpdateUser(ctx, UserDataID, body)
    
    	if err != nil {
    		fmt.Fprintf(os.Stderr, "Error when calling `UsersApi.UpdateUser`: %v\n", err)
    		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    	}
    
    	responseContent, _ := json.MarshalIndent(resp, "", "  ")
    	fmt.Fprintf(os.Stdout, "Response from `UsersApi.UpdateUser`:\n%s\n", responseContent)
    }
    

    Instructions

    First install the library and its dependencies and then save the example to main.go and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
    // Update a user returns "OK" response
    
    import com.datadog.api.client.ApiClient;
    import com.datadog.api.client.ApiException;
    import com.datadog.api.client.v2.api.UsersApi;
    import com.datadog.api.client.v2.model.UserResponse;
    import com.datadog.api.client.v2.model.UserUpdateAttributes;
    import com.datadog.api.client.v2.model.UserUpdateData;
    import com.datadog.api.client.v2.model.UserUpdateRequest;
    import com.datadog.api.client.v2.model.UsersType;
    
    public class Example {
      public static void main(String[] args) {
        ApiClient defaultClient = ApiClient.getDefaultApiClient();
        UsersApi apiInstance = new UsersApi(defaultClient);
    
        // there is a valid "user" in the system
        String USER_DATA_ID = System.getenv("USER_DATA_ID");
    
        UserUpdateRequest body =
            new UserUpdateRequest()
                .data(
                    new UserUpdateData()
                        .id(USER_DATA_ID)
                        .type(UsersType.USERS)
                        .attributes(new UserUpdateAttributes().name("updated").disabled(true)));
    
        try {
          UserResponse result = apiInstance.updateUser(USER_DATA_ID, body);
          System.out.println(result);
        } catch (ApiException e) {
          System.err.println("Exception when calling UsersApi#updateUser");
          System.err.println("Status code: " + e.getCode());
          System.err.println("Reason: " + e.getResponseBody());
          System.err.println("Response headers: " + e.getResponseHeaders());
          e.printStackTrace();
        }
      }
    }
    

    Instructions

    First install the library and its dependencies and then save the example to Example.java and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
    """
    Update a user returns "OK" response
    """
    
    from os import environ
    from datadog_api_client import ApiClient, Configuration
    from datadog_api_client.v2.api.users_api import UsersApi
    from datadog_api_client.v2.model.user_update_attributes import UserUpdateAttributes
    from datadog_api_client.v2.model.user_update_data import UserUpdateData
    from datadog_api_client.v2.model.user_update_request import UserUpdateRequest
    from datadog_api_client.v2.model.users_type import UsersType
    
    # there is a valid "user" in the system
    USER_DATA_ID = environ["USER_DATA_ID"]
    
    body = UserUpdateRequest(
        data=UserUpdateData(
            id=USER_DATA_ID,
            type=UsersType.USERS,
            attributes=UserUpdateAttributes(
                name="updated",
                disabled=True,
            ),
        ),
    )
    
    configuration = Configuration()
    with ApiClient(configuration) as api_client:
        api_instance = UsersApi(api_client)
        response = api_instance.update_user(user_id=USER_DATA_ID, body=body)
    
        print(response)
    

    Instructions

    First install the library and its dependencies and then save the example to example.py and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
    # Update a user returns "OK" response
    
    require "datadog_api_client"
    api_instance = DatadogAPIClient::V2::UsersAPI.new
    
    # there is a valid "user" in the system
    USER_DATA_ID = ENV["USER_DATA_ID"]
    
    body = DatadogAPIClient::V2::UserUpdateRequest.new({
      data: DatadogAPIClient::V2::UserUpdateData.new({
        id: USER_DATA_ID,
        type: DatadogAPIClient::V2::UsersType::USERS,
        attributes: DatadogAPIClient::V2::UserUpdateAttributes.new({
          name: "updated",
          disabled: true,
        }),
      }),
    })
    p api_instance.update_user(USER_DATA_ID, body)
    

    Instructions

    First install the library and its dependencies and then save the example to example.rb and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
    // Update a user returns "OK" response
    use datadog_api_client::datadog;
    use datadog_api_client::datadogV2::api_users::UsersAPI;
    use datadog_api_client::datadogV2::model::UserUpdateAttributes;
    use datadog_api_client::datadogV2::model::UserUpdateData;
    use datadog_api_client::datadogV2::model::UserUpdateRequest;
    use datadog_api_client::datadogV2::model::UsersType;
    
    #[tokio::main]
    async fn main() {
        // there is a valid "user" in the system
        let user_data_id = std::env::var("USER_DATA_ID").unwrap();
        let body = UserUpdateRequest::new(UserUpdateData::new(
            UserUpdateAttributes::new()
                .disabled(true)
                .name("updated".to_string()),
            user_data_id.clone(),
            UsersType::USERS,
        ));
        let configuration = datadog::Configuration::new();
        let api = UsersAPI::with_config(configuration);
        let resp = api.update_user(user_data_id.clone(), body).await;
        if let Ok(value) = resp {
            println!("{:#?}", value);
        } else {
            println!("{:#?}", resp.unwrap_err());
        }
    }
    

    Instructions

    First install the library and its dependencies and then save the example to src/main.rs and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
    /**
     * Update a user returns "OK" response
     */
    
    import { client, v2 } from "@datadog/datadog-api-client";
    
    const configuration = client.createConfiguration();
    const apiInstance = new v2.UsersApi(configuration);
    
    // there is a valid "user" in the system
    const USER_DATA_ID = process.env.USER_DATA_ID as string;
    
    const params: v2.UsersApiUpdateUserRequest = {
      body: {
        data: {
          id: USER_DATA_ID,
          type: "users",
          attributes: {
            name: "updated",
            disabled: true,
          },
        },
      },
      userId: USER_DATA_ID,
    };
    
    apiInstance
      .updateUser(params)
      .then((data: v2.UserResponse) => {
        console.log(
          "API called successfully. Returned data: " + JSON.stringify(data)
        );
      })
      .catch((error: any) => console.error(error));
    

    Instructions

    First install the library and its dependencies and then save the example to example.ts and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"

    PUT https://api.ap1.datadoghq.com/api/v1/user/{user_handle}https://api.ap2.datadoghq.com/api/v1/user/{user_handle}https://api.datadoghq.eu/api/v1/user/{user_handle}https://api.ddog-gov.com/api/v1/user/{user_handle}https://api.us2.ddog-gov.com/api/v1/user/{user_handle}https://api.datadoghq.com/api/v1/user/{user_handle}https://api.us3.datadoghq.com/api/v1/user/{user_handle}https://api.us5.datadoghq.com/api/v1/user/{user_handle}

    Overview

    Update a user information.

    Note: It can only be used with application keys belonging to administrators.

    Arguments

    Path Parameters

    Name

    Type

    Description

    user_handle [required]

    string

    The ID of the user.

    Request

    Body Data (required)

    Description of the update.

    Expand All

    Field

    Type

    Description

    access_role

    enum

    The access role of the user. Options are st (standard user), adm (admin user), or ro (read-only user). Allowed enum values: st,adm,ro,ERROR

    disabled

    boolean

    The new disabled status of the user.

    email

    string

    The new email of the user.

    handle

    string

    The user handle, must be a valid email.

    icon

    string

    Gravatar icon associated to the user.

    name

    string

    The name of the user.

    verified

    boolean

    Whether or not the user logged in Datadog at least once.

    {
      "access_role": "ro",
      "disabled": false,
      "email": "test@datadoghq.com",
      "handle": "test@datadoghq.com",
      "name": "test user"
    }

    Response

    User updated

    A Datadog User.

    Expand All

    Field

    Type

    Description

    user

    object

    Create, edit, and disable users.

    access_role

    enum

    The access role of the user. Options are st (standard user), adm (admin user), or ro (read-only user). Allowed enum values: st,adm,ro,ERROR

    disabled

    boolean

    The new disabled status of the user.

    email

    string

    The new email of the user.

    handle

    string

    The user handle, must be a valid email.

    icon

    string

    Gravatar icon associated to the user.

    name

    string

    The name of the user.

    verified

    boolean

    Whether or not the user logged in Datadog at least once.

    {
      "user": {
        "access_role": "ro",
        "disabled": false,
        "email": "test@datadoghq.com",
        "handle": "test@datadoghq.com",
        "icon": "/path/to/matching/gravatar/icon",
        "name": "test user",
        "verified": true
      }
    }

    Bad Request

    Error response object.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    Array of errors returned by the API.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Authentication error

    Error response object.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    Array of errors returned by the API.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Not Found

    Error response object.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    Array of errors returned by the API.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Too many requests

    Error response object.

    Expand All

    Field

    Type

    Description

    errors [required]

    [string]

    Array of errors returned by the API.

    {
      "errors": [
        "Bad Request"
      ]
    }

    Code Example

                      ## default
    # 
    
    # Path parameters
    export user_handle="test@datadoghq.com"
    # Curl command
    curl -X PUT "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v1/user/${user_handle}" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}" \ -d @- << EOF { "disabled": false, "email": "test@datadoghq.com", "name": "test user" } EOF
    """
    Update a user returns "User updated" response
    """
    
    from datadog_api_client import ApiClient, Configuration
    from datadog_api_client.v1.api.users_api import UsersApi
    from datadog_api_client.v1.model.access_role import AccessRole
    from datadog_api_client.v1.model.user import User
    
    body = User(
        access_role=AccessRole.READ_ONLY,
        disabled=False,
        email="test@datadoghq.com",
        handle="test@datadoghq.com",
        name="test user",
    )
    
    configuration = Configuration()
    with ApiClient(configuration) as api_client:
        api_instance = UsersApi(api_client)
        response = api_instance.update_user(user_handle="test@datadoghq.com", body=body)
    
        print(response)
    

    Instructions

    First install the library and its dependencies and then save the example to example.py and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
    # Update a user returns "User updated" response
    
    require "datadog_api_client"
    api_instance = DatadogAPIClient::V1::UsersAPI.new
    
    body = DatadogAPIClient::V1::User.new({
      access_role: DatadogAPIClient::V1::AccessRole::READ_ONLY,
      disabled: false,
      email: "test@datadoghq.com",
      handle: "test@datadoghq.com",
      name: "test user",
    })
    p api_instance.update_user("test@datadoghq.com", body)
    

    Instructions

    First install the library and its dependencies and then save the example to example.rb and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
    // Update a user returns "User updated" response
    
    package main
    
    import (
    	"context"
    	"encoding/json"
    	"fmt"
    	"os"
    
    	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
    	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV1"
    )
    
    func main() {
    	body := datadogV1.User{
    		AccessRole: *datadogV1.NewNullableAccessRole(datadogV1.ACCESSROLE_READ_ONLY.Ptr()),
    		Disabled:   datadog.PtrBool(false),
    		Email:      datadog.PtrString("test@datadoghq.com"),
    		Handle:     datadog.PtrString("test@datadoghq.com"),
    		Name:       datadog.PtrString("test user"),
    	}
    	ctx := datadog.NewDefaultContext(context.Background())
    	configuration := datadog.NewConfiguration()
    	apiClient := datadog.NewAPIClient(configuration)
    	api := datadogV1.NewUsersApi(apiClient)
    	resp, r, err := api.UpdateUser(ctx, "test@datadoghq.com", body)
    
    	if err != nil {
    		fmt.Fprintf(os.Stderr, "Error when calling `UsersApi.UpdateUser`: %v\n", err)
    		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    	}
    
    	responseContent, _ := json.MarshalIndent(resp, "", "  ")
    	fmt.Fprintf(os.Stdout, "Response from `UsersApi.UpdateUser`:\n%s\n", responseContent)
    }
    

    Instructions

    First install the library and its dependencies and then save the example to main.go and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
    // Update a user returns "User updated" response
    
    import com.datadog.api.client.ApiClient;
    import com.datadog.api.client.ApiException;
    import com.datadog.api.client.v1.api.UsersApi;
    import com.datadog.api.client.v1.model.AccessRole;
    import com.datadog.api.client.v1.model.User;
    import com.datadog.api.client.v1.model.UserResponse;
    
    public class Example {
      public static void main(String[] args) {
        ApiClient defaultClient = ApiClient.getDefaultApiClient();
        UsersApi apiInstance = new UsersApi(defaultClient);
    
        User body =
            new User()
                .accessRole(AccessRole.READ_ONLY)
                .disabled(false)
                .email("test@datadoghq.com")
                .handle("test@datadoghq.com")
                .name("test user");
    
        try {
          UserResponse result = apiInstance.updateUser("test@datadoghq.com", body);
          System.out.println(result);
        } catch (ApiException e) {
          System.err.println("Exception when calling UsersApi#updateUser");
          System.err.println("Status code: " + e.getCode());
          System.err.println("Reason: " + e.getResponseBody());
          System.err.println("Response headers: " + e.getResponseHeaders());
          e.printStackTrace();
        }
      }
    }
    

    Instructions

    First install the library and its dependencies and then save the example to Example.java and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
    // Update a user returns "User updated" response
    use datadog_api_client::datadog;
    use datadog_api_client::datadogV1::api_users::UsersAPI;
    use datadog_api_client::datadogV1::model::AccessRole;
    use datadog_api_client::datadogV1::model::User;
    
    #[tokio::main]
    async fn main() {
        let body = User::new()
            .access_role(Some(AccessRole::READ_ONLY))
            .disabled(false)
            .email("test@datadoghq.com".to_string())
            .handle("test@datadoghq.com".to_string())
            .name("test user".to_string());
        let configuration = datadog::Configuration::new();
        let api = UsersAPI::with_config(configuration);
        let resp = api
            .update_user("test@datadoghq.com".to_string(), body)
            .await;
        if let Ok(value) = resp {
            println!("{:#?}", value);
        } else {
            println!("{:#?}", resp.unwrap_err());
        }
    }
    

    Instructions

    First install the library and its dependencies and then save the example to src/main.rs and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
    /**
     * Update a user returns "User updated" response
     */
    
    import { client, v1 } from "@datadog/datadog-api-client";
    
    const configuration = client.createConfiguration();
    const apiInstance = new v1.UsersApi(configuration);
    
    const params: v1.UsersApiUpdateUserRequest = {
      body: {
        accessRole: "ro",
        disabled: false,
        email: "test@datadoghq.com",
        handle: "test@datadoghq.com",
        name: "test user",
      },
      userHandle: "test@datadoghq.com",
    };
    
    apiInstance
      .updateUser(params)
      .then((data: v1.UserResponse) => {
        console.log(
          "API called successfully. Returned data: " + JSON.stringify(data)
        );
      })
      .catch((error: any) => console.error(error));
    

    Instructions

    First install the library and its dependencies and then save the example to example.ts and run following commands:

        
    DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"