# pn_user – CLI command to create/modify/delete user

New in version 2.8.

- Synopsis
- Parameters
- Examples
- Return Values
- Status

## Synopsis

- This module can be used to create a user and apply a role, update a user and delete a user.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
pn_cliswitch string |  | Target switch to run the CLI on.
pn_initial_role string |  | initial role for user.
pn_name string |  | username.
pn_password string |  | plain text password.

pn_scope
string

Choices:
- local
- fabric

local or fabric.

state
string / required

Choices:
- present
- absent
- update

State the action to perform. Use `present` to create user and `absent` to delete user `update` to update user.

## Examples

    - name: Create user
      pn_user:
        pn_cliswitch: "sw01"
        state: "present"
        pn_scope: "fabric"
        pn_password: "foo123"
        pn_name: "foo"

    - name: Delete user
      pn_user:
        pn_cliswitch: "sw01"
        state: "absent"
        pn_name: "foo"

    - name: Modify user
      pn_user:
        pn_cliswitch: "sw01"
        state: "update"
        pn_password: "test1234"
        pn_name: "foo"

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
changed boolean | always | indicates whether the CLI caused changes on the target.
command string | always | the CLI command run on the target node.
stderr list | on error | set of error responses from the user command.
stdout list | always | set of responses from the user command.

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]

### Authors

- Pluribus Networks (@rajaspachipulusu17)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.