# Create Wifi Profile

> Adds a wireless network to the device from the settings you fill in here.

Source: https://docs.capaone.com/capaone/application-manager/powerbricks/bricks/create-wifi-profile/  
Product: CapaOne — a separate CapaSystems product; do not apply this page to any other.

Adds a wireless network to the device from the settings you fill in here. Nothing has to be set up and exported on a reference device first, and no file has to be shipped with the package.\\n\\nThis brick covers open networks and networks where everyone shares the same network key - WPA2-Personal and WPA3-Personal. For a network where each user signs in with their own account or a certificate, use the Create Enterprise Wifi Profile brick instead. To reuse a profile that was exported on a reference device, use the Import Wifi Profile brick. Use the Remove Wifi Profile brick to take a network off a device again.\\n\\nThe network key is never written to the log, and the profile the brick builds is deleted from the device again as soon as the network has been added.\\n\\nTip - dynamic values: a value typed here is applied unchanged to every device the workflow runs on. When different offices, models or hardware need different settings, add an Execute PowerShell Snippet brick earlier in the same workflow, let it work out the right value for the device it is running on, and use that value here instead of a fixed one. One workflow then covers every site, instead of one workflow per site. The same approach works with any brick.

## Parameters

#### Network Name (SSID)
*Required*

The name of the wireless network, exactly as it appears when a user picks a network. Example: Office-North\\n\\nThe name is case sensitive and can be at most 32 characters. A name that does not match the network exactly is added to the device without any error, but the device will never find the network.

#### Profile Name
*Optional*

The name the network is stored under on the device. Leave this empty to use the network name, which is what most deployments should do. Give it a separate name only when you need to tell two profiles for the same network apart, and remember that the Remove Wifi Profile brick asks for this name.

#### Security Type
*Required* — Default: `WPA2-Personal (shared network key)`

How the device proves it is allowed on the network.\\n\\nWPA2-Personal is the default because every Windows version and every wireless adapter in use understands it, and it is what the vast majority of office and site networks run.\\n\\nWPA3-Personal is the stronger choice and should be used where every device and every access point supports it. A device that does not support WPA3 will not be able to use the network at all, so change this only when you know the whole fleet and the network are ready for it.\\n\\nOpen means the network has no key at all and anything sent over it can be read by anyone in range. Use it only for guest or onboarding networks that carry nothing sensitive.\\n\\nA network where each user signs in with their own account or a certificate is not covered here - use the Create Enterprise Wifi Profile brick for that. Allowed values: `WPA2-Personal (shared network key)`, `WPA3-Personal (shared network key)`, `Open (no security)`.

#### Network Key
*Optional*

The key users would otherwise type when they join the network. Required for WPA2-Personal and WPA3-Personal, and must be left empty for an open network.\\n\\nThe key must be between 8 and 63 characters. For WPA2-Personal you may instead paste the raw 64 character key that some access points show, if that is what your network documentation gives you.\\n\\nThe key is never written to the log, and the deployment stops with an error if it does not match the security type you selected.

#### Hidden Network
*Required* — Default: `False`

Enable when the network does not announce its name, so it never shows up in the list of available networks. The device will then actively look for it instead of waiting to see it. Keep this disabled for a normal network, because a device that looks for a hidden network keeps announcing that network name wherever it goes.

#### Connect Automatically
*Required* — Default: `True`

Enable to let the device connect to the wireless network on its own whenever the network is in range. Disable to require the user to pick the network manually.

#### Connect After Deployment
*Required* — Default: `False`

Enable to make the device try to connect to the wireless network right after it has been added. The wait for the connection is limited to 30 seconds, so the deployment never hangs. A device that is out of range is reported as a warning in the log and the deployment still counts as successful. Disable when the device only needs the network for later use.

## Details

- **Category:** Provisioning
- **Brick ID:** `WiFi-Profile-Create`

## Raw JSON definition

```json
{
  "category": "provisioning",
  "description": "Adds a wireless network to the device from the settings you fill in here. Nothing has to be set up and exported on a reference device first, and no file has to be shipped with the package.\\n\\nThis brick covers open networks and networks where everyone shares the same network key - WPA2-Personal and WPA3-Personal. For a network where each user signs in with their own account or a certificate, use the Create Enterprise Wifi Profile brick instead. To reuse a profile that was exported on a reference device, use the Import Wifi Profile brick. Use the Remove Wifi Profile brick to take a network off a device again.\\n\\nThe network key is never written to the log, and the profile the brick builds is deleted from the device again as soon as the network has been added.\\n\\nTip - dynamic values: a value typed here is applied unchanged to every device the workflow runs on. When different offices, models or hardware need different settings, add an Execute PowerShell Snippet brick earlier in the same workflow, let it work out the right value for the device it is running on, and use that value here instead of a fixed one. One workflow then covers every site, instead of one workflow per site. The same approach works with any brick.",
  "developerVendor": "CapaSystems A/S",
  "displayName": null,
  "id": "WiFi-Profile-Create",
  "name": "Create Wifi Profile",
  "parameters": [
    {
      "allowManualInput": false,
      "defaultValue": "",
      "defaultValueObject": null,
      "description": "The name of the wireless network, exactly as it appears when a user picks a network. Example: Office-North\\n\\nThe name is case sensitive and can be at most 32 characters. A name that does not match the network exactly is added to the device without any error, but the device will never find the network.",
      "id": "SSID",
      "name": "Network Name (SSID)",
      "regExValidation": "",
      "required": true,
      "type": "TextBox",
      "value": null,
      "values": [],
      "valuesObject": null
    },
    {
      "allowManualInput": false,
      "defaultValue": "",
      "defaultValueObject": null,
      "description": "The name the network is stored under on the device. Leave this empty to use the network name, which is what most deployments should do. Give it a separate name only when you need to tell two profiles for the same network apart, and remember that the Remove Wifi Profile brick asks for this name.",
      "id": "ProfileName",
      "name": "Profile Name",
      "regExValidation": "",
      "required": false,
      "type": "TextBox",
      "value": null,
      "values": [],
      "valuesObject": null
    },
    {
      "allowManualInput": false,
      "defaultValue": null,
      "defaultValueObject": {
        "id": "WPA2Personal",
        "name": "WPA2-Personal (shared network key)"
      },
      "description": "How the device proves it is allowed on the network.\\n\\nWPA2-Personal is the default because every Windows version and every wireless adapter in use understands it, and it is what the vast majority of office and site networks run.\\n\\nWPA3-Personal is the stronger choice and should be used where every device and every access point supports it. A device that does not support WPA3 will not be able to use the network at all, so change this only when you know the whole fleet and the network are ready for it.\\n\\nOpen means the network has no key at all and anything sent over it can be read by anyone in range. Use it only for guest or onboarding networks that carry nothing sensitive.\\n\\nA network where each user signs in with their own account or a certificate is not covered here - use the Create Enterprise Wifi Profile brick for that.",
      "id": "SecurityType",
      "name": "Security Type",
      "regExValidation": "",
      "required": true,
      "type": "ComboBox",
      "value": null,
      "values": [],
      "valuesObject": [
        {
          "id": "WPA2Personal",
          "name": "WPA2-Personal (shared network key)"
        },
        {
          "id": "WPA3Personal",
          "name": "WPA3-Personal (shared network key)"
        },
        {
          "id": "Open",
          "name": "Open (no security)"
        }
      ]
    },
    {
      "allowManualInput": false,
      "defaultValue": "",
      "defaultValueObject": null,
      "description": "The key users would otherwise type when they join the network. Required for WPA2-Personal and WPA3-Personal, and must be left empty for an open network.\\n\\nThe key must be between 8 and 63 characters. For WPA2-Personal you may instead paste the raw 64 character key that some access points show, if that is what your network documentation gives you.\\n\\nThe key is never written to the log, and the deployment stops with an error if it does not match the security type you selected.",
      "id": "Base64Password",
      "name": "Network Key",
      "regExValidation": "",
      "required": false,
      "type": "TextBoxWithPassword",
      "value": null,
      "values": [],
      "valuesObject": null
    },
    {
      "allowManualInput": false,
      "defaultValue": "False",
      "defaultValueObject": null,
      "description": "Enable when the network does not announce its name, so it never shows up in the list of available networks. The device will then actively look for it instead of waiting to see it. Keep this disabled for a normal network, because a device that looks for a hidden network keeps announcing that network name wherever it goes.",
      "id": "HiddenNetwork",
      "name": "Hidden Network",
      "regExValidation": "",
      "required": true,
      "type": "Boolean",
      "value": null,
      "values": [],
      "valuesObject": null
    },
    {
      "allowManualInput": false,
      "defaultValue": "True",
      "defaultValueObject": null,
      "description": "Enable to let the device connect to the wireless network on its own whenever the network is in range. Disable to require the user to pick the network manually.",
      "id": "ConnectAutomatically",
      "name": "Connect Automatically",
      "regExValidation": "",
      "required": true,
      "type": "Boolean",
      "value": null,
      "values": [],
      "valuesObject": null
    },
    {
      "allowManualInput": false,
      "defaultValue": "False",
      "defaultValueObject": null,
      "description": "Enable to make the device try to connect to the wireless network right after it has been added. The wait for the connection is limited to 30 seconds, so the deployment never hangs. A device that is out of range is reported as a warning in the log and the deployment still counts as successful. Disable when the device only needs the network for later use.",
      "id": "ConnectAfterDeployment",
      "name": "Connect After Deployment",
      "regExValidation": "",
      "required": true,
      "type": "Boolean",
      "value": null,
      "values": [],
      "valuesObject": null
    }
  ],
  "powershell": {
    "base64Encoded": true,
    "function": "ZnVuY3Rpb2..."
  },
  "type": "powerbrick",
  "version": "2026.10.8.1"
}
```
