# `Grizzly.ZWave.Commands.CredentialSet`
[🔗](https://github.com/smartrent/grizzly/blob/v9.1.4/lib/grizzly/zwave/commands/credential_set.ex#L1)

CredentialSet is used to set a specific credential at the receiving node.

## Parameters

* `:user_id` - the ID of the user for the credential (required)
* `:credential_type` - the type of credential (required)
* `:credential_slot` - the slot for the credential (required)
* `:operation_type` - the type of operation for setting the credential (required)
  - `:add` - to add a new credential
  - `:modify` - to update an existing credential
  - `:delete` - to delete an existing credential
* `:credential_data` - the data for the credential (required, binary)

# `param`

```elixir
@type param() ::
  {:user_id, 0..65535}
  | {:credential_type,
     Grizzly.ZWave.CommandClasses.UserCredential.credential_type()}
  | {:credential_slot, 0..65535}
  | {:operation_type,
     Grizzly.ZWave.CommandClasses.UserCredential.credential_operation()}
  | {:credential_data, binary()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
