# Resource management

The SAS Portal API allows you to create, view, update, or delete the following resources within
your CBRS network:

- [User IDs](https://developers.google.com/spectrum-access-system/guides/resource-management#user-ids)
- [Devices](https://developers.google.com/spectrum-access-system/guides/resource-management#devices)

The ability for each user to manage a resource depends on the user role assigned to the resource
or parent resource. Permissions are inherited from the parent resource.

## User IDs

A user ID uniquely identifies the operator of a CBSD. The SAS uses user IDs to assign a device to
a Customer. Every SAS customer has to provide at least one user ID during Customer account setup.
You can add additional user IDs later.

## Devices

The SAS Portal API enables multi-step registration of CBSDs. For devices that need to be
installed by a Certified Professional Installer (CPI), you have two options to initiate the
multi-step registration process:

- **Option 1:** Initiate the process with a CPI account. For this option, the user must be
  authenticated with the `role_cpi` role. First, the user is verified with the
  [`ValidateInstaller()`](https://developers.google.com/spectrum-access-system/reference/rest/customers.devices/validate)
  method, and then they use the
  [`SignDevice()`](https://developers.google.com/spectrum-access-system/reference/rest/customers.devices/signDevice)
  method to send the CPI-validated configuration to the SAS.

  > [!NOTE]
  > **Note:** The user only needs to validate their CPI identity once.

- **Option 2:** Initiate the process with any account. For this option, any user can use the [`CreateSigned()`](https://developers.google.com/spectrum-access-system/reference/rest/customers.devices/createSigned) method to create an inactive device configuration that's ready for the CBSD to use. This method uses device parameters that are encoded with a CPI's private key.

Regardless of which option you use, this process creates an inactive configuration for the device
in the SAS. Then, the CBSD sends a registration request to the SAS. If it's successful, the device status
changes to "REGISTERED."

For CBSDs that don't need CPI validation, use the
[`CreateDevice()`](https://developers.google.com/spectrum-access-system/reference/rest/customers.devices/create)
method.

For single-step registration with CPI-encoded data, use the
[SAS-CBSD API](https://winnf.memberclicks.net/assets/CBRS/WINNF-TS-0016.pdf)
defined by WInnForum.