# Bulk import CSV templates

On this page, **bulk import CSV templates** are ready to be downloaded for:

* Connectivity Management only & LoRa Data flows
  * For OTAA- activation mode
  * For ABP- activation mode
* HTTP,  MQTT & CoAP Data Flow

### OTAA- activation mode (Over-the-Air Activation)

**General field descriptions:**

<table data-header-hidden><thead><tr><th width="233.33333333333331">Field</th><th>mandatory or optional</th><th>Description</th></tr></thead><tbody><tr><td><strong>Field</strong></td><td><strong>mandatory or optional</strong></td><td><strong>Description</strong></td></tr><tr><td>name</td><td>mandatory</td><td>Name example of device eg. Humidity Sensor 1</td></tr><tr><td>onlineTimeout</td><td>optional</td><td>Interval in seconds, how long a device appears (green) online in akenza after last sample eg. 86400 (= 24 hours)</td></tr><tr><td>applicationKey</td><td>mandatory</td><td>Provided from the device. 16 byte eg. 1213456789012345612134567890123456</td></tr><tr><td>applicationEui</td><td>mandatory</td><td>Provided from the device. 8 byte eg. 12134567890123456</td></tr><tr><td>deviceClass</td><td>mandatory</td><td>Provided from the device. eg. A, B or C</td></tr><tr><td>loraVersion</td><td>mandatory</td><td>Provided from the device. eg. 1.0.3</td></tr><tr><td>deviceEui</td><td>mandatory</td><td>Provided from the device. 8 byte eg. 12134567890123456</td></tr><tr><td>description</td><td>optional</td><td>Free text field. eg. Humidity Sensor 1 on floor A</td></tr><tr><td>frequencyPlan</td><td>optional</td><td>provided from the device and integration e.g. EU_863_870</td></tr></tbody></table>

**Bulk import template - OTAA:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FVXJWb9QdFB9aGcvzBLSy%2FBulk%20import%20template%20-%20OTAA%20activation%20mode.csv?alt=media&token=31bb6ae3-72b0-4a04-ba15-6cfe6aa0bacc>" %}

**General field descriptions LoRa 1.1:**

| Field          | mandatory or optional | Description                                                                                                      |
| -------------- | --------------------- | ---------------------------------------------------------------------------------------------------------------- |
| name           | mandatory             | Name example of device eg. Humidity Sensor 1                                                                     |
| onlineTimeout  | optional              | Interval in seconds, how long a device appears (green) online in akenza after last sample eg. 86400 (= 24 hours) |
| deviceClass    | mandatory             | Provided from the device. eg. A, B or C                                                                          |
| loraVersion    | mandatory             | 1.1.0                                                                                                            |
| deviceEui      | mandatory             | Provided from the device. 8 byte eg. 12134567890123456                                                           |
| joinEui        | mandatory             | Provided from the device. 8 byte eg. 12134567890123456                                                           |
| networkKey     | mandatory             | Provided from the device. 16 byte eg. 12345678901234561234567890123456                                           |
| applicationKey | mandatory             | Provided from the device. 16 byte eg. 12345678901234561234567890123456                                           |
| description    | optional              | Free text field. eg. Humidity Sensor 1 on floor A                                                                |
| frequencyPlan  | optional              | provided from the device and integration e.g. EU\_863\_870                                                       |

**Bulk import template - OTAA actility:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FuHpHtQSZ9jcMPWoFUBp3%2FBulk%20import%20template%20-%20OTAA%201.1%20activation%20mode.csv?alt=media&token=c7f429fb-9e11-4b68-bc2d-a4fb765be04d>" %}

**Applies only for Swisscom and Actility connectivity carrier:**

| **Field**          | **mandatory or optional** | **Description**                                                                 |
| ------------------ | ------------------------- | ------------------------------------------------------------------------------- |
| motionIndicator    | mandatory                 | Valid values: NEAR\_STATIC, WALKING\_SPEED, VEHICLE\_SPEED, BIKE\_SPEED, RANDOM |
| activationMode     | mandatory                 | Activating a device with Over-the-Air Activation (OTAA)                         |
| deviceProfileId    | mandatory                 | LoRa/GenericA.1.0.3a\_ETSI                                                      |
| connectivityPlanId | optional                  | eg. swisscom-cs/swisscom-cp-nb-trial                                            |

**Bulk import template - OTAA actility:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FkDo6bpG2cYBun7w13m0i%2FBulk%20import%20template%20-%20OTAA%20activation%20mode%20-%20actility.csv?alt=media&token=a2b38f51-d193-487c-9562-08f01e6fe4e1>" %}

**Applies only for everynet connectivity carrier:**

| **Field**    | **mandatory or optional** | **Description**                                                        |
| ------------ | ------------------------- | ---------------------------------------------------------------------- |
| countersSize | mandatory                 | size of the device uplink and downlink counter, valid values are: 2, 4 |

**Bulk import template - OTAA everynet:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FOy1kqlFhB2PUEQDlunqA%2FBulk%20import%20template%20-%20OTAA%20activation%20mode%20-%20everynet.csv?alt=media&token=a66fec62-8aca-49b5-ae2a-8763a52861ee>" %}

### ABP- activation mode (Activation by Personalization)

**General field descriptions:**

| **Field**             | **mandatory or optional** | **Description**                                                                                                  |
| --------------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| name                  | mandatory                 | Name example of device eg. Temperature Sensor 2                                                                  |
| onlineTimeout         | optional                  | Interval in seconds, how long a device appears (green) online in akenza after last sample eg. 86400 (= 24 hours) |
| applicationSessionKey | mandatory                 | Provided from the device. 16 byte eg. 1213456789012345612134567890123456                                         |
| deviceClass           | mandatory                 | Provided from the device. A, B or C                                                                              |
| loraVersion           | mandatory                 | Provided from the device. eg. 1.0.3                                                                              |
| deviceEui             | mandatory                 | Provided from the device. 8 byte eg. 12134567890123456                                                           |
| deviceAddress         | mandatory                 | Provided from the device. 4 byte device address (8 characters)                                                   |
| networkSessionKey     | mandatory                 | 16 byte eg. 1213456789012345612134567890123456                                                                   |
| description           | optional                  | Free text field. eg. Temperature Sensor 2 on floor B                                                             |

**Bulk import template - ABP:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FIKxXfJDZ0Y0zbGf7vzq2%2FBulk%20import%20template%20-%20ABP%20activation%20mode.csv?alt=media&token=65deb232-f169-4263-a006-e545116226b8>" %}

**General field descriptions 1.1:**

| Field                                | mandatory or optional | Description                                                                                                      |
| ------------------------------------ | --------------------- | ---------------------------------------------------------------------------------------------------------------- |
| name                                 | mandatory             | Name example of device eg. Temperature Sensor 2                                                                  |
| onlineTimeout                        | optional              | Interval in seconds, how long a device appears (green) online in akenza after last sample eg. 86400 (= 24 hours) |
| deviceEui                            | mandatory             | Provided from the device. 4 byte device address (8 characters)                                                   |
| loraVersion                          | mandatory             | 1.1.0                                                                                                            |
| deviceClass                          | mandatory             | Provided from the device. A, B or C                                                                              |
| deviceAddress                        | mandatory             | Provided from the device. 4 byte eg. 121345678                                                                   |
| applicationSessionKey                | mandatory             | Provided from the device. 16 byte eg. 12345678901234561234567890123456                                           |
| forwardingNetworkSessionIntegrityKey | mandatory             | Provided from the device. 16 byte eg. 12345678901234561234567890123456                                           |
| networkSessionEncryptionKey          | mandatory             | Provided from the device. 16 byte eg. 12345678901234561234567890123456                                           |
| servingNetworkSessionIntegrityKey    | mandatory             | Provided from the device. 16 byte eg. 12345678901234561234567890123456                                           |
| frequencyPlan                        | optional              | provided from the device and integration e.g. EU\_863\_870                                                       |
| description                          | optional              | Free text field. eg. Temperature Sensor 2 on floor B                                                             |

**Bulk import template - ABP 1.1:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FZzZ4F42Gbcx9ogMPUvkQ%2FBulk%20import%20template%20-%20ABP%201.1%20activation%20mode.csv?alt=media&token=0f80dc8e-0d75-4f37-a9ae-1a2abb595c1e>" %}

**Applies only for Swisscom and Actility connectivity carrier:**

| **Field**          | **mandatory or optional** | **Description**                                                                 |
| ------------------ | ------------------------- | ------------------------------------------------------------------------------- |
| motionIndicator    | mandatory                 | Valid values: NEAR\_STATIC, WALKING\_SPEED, VEHICLE\_SPEED, BIKE\_SPEED, RANDOM |
| activationMode     | mandatory                 | Activating a device with Activation by Personalization (ABP)                    |
| deviceProfileId    | mandatory                 | LoRa/GenericA.1.0.3a\_ETSI                                                      |
| connectivityPlanId | optional                  | eg. swisscom-cs/swisscom-cp-nb-trial                                            |

**Bulk import template - ABP actility:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2FNl17eRuRUxsqoteH8WX2%2FBulk%20import%20template%20-%20ABP%20activation%20mode%20-%20actility.csv?alt=media&token=959f3b26-b862-455f-a7bb-0b42d1446cf3>" %}

**Applies only for everynet connectivity carrier:**

| **Field**    | **mandatory or optional** | **Description**                                                        |
| ------------ | ------------------------- | ---------------------------------------------------------------------- |
| countersSize | mandatory                 | size of the device uplink and downlink counter, valid values are: 2, 4 |

**Bulk import template - ABP everynet:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2Fuiqw5YjddMOlvfCXDCYC%2FBulk%20import%20template%20-%20ABP%20activation%20mode%20-%20everynet.csv?alt=media&token=6e8406cd-fea8-4ffe-a162-0675bdd999ee>" %}

### HTTP, MQTT & CoAP Data Flow

**General field descriptions:**

| **Field**     | **mandatory or optional** | **Description**                                                                                                  |
| ------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| name          | mandatory                 | Name example of device eg. Brightness Sensor 3                                                                   |
| onlineTimeout | optional                  | Interval in seconds, how long a device appears (green) online in akenza after last sample eg. 86400 (= 24 hours) |
| deviceId      | mandatory                 | Provided from the device. 16 character hex string eg. 1234567890123456                                           |
| description   | optional                  | Free text field. eg. Brightness Sensor 3 on floor C                                                              |

**Bulk import template - HTTP, MQTT & CoAP:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MMKXTFIN5ZlLOjBlfC4%2F-MgQQYRYQznxRr5FWwWJ%2F-MgQQfYRozdyrqSJnSjD%2FBulk%20import%20template%20-%20HTTP%2C%20MQTT%20%26%20CoAP%20data%20flow.csv?alt=media&token=c6d77f13-7e8b-4ff0-9f8a-2398ca7a9d88>" %}

### Additional values Custom Fields and Tags

**General field descriptions:**

| **Field**           | **mandatory or optional** | **Description**                                                                                                                                                                                |
| ------------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| tags                | optional                  | Tag name or id formatted as list separated with spaces                                                                                                                                         |
| {{CustomFieldName}} | optional                  | The custom field name or id is used as column name. The value has to be set based on custom field type. JSON example: `{"someKey":"someValue"}` GPS example: `{"latitude":90, "longitude":20}` |

**Bulk import template - custom fields and tags:**

{% file src="<https://2165942204-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MMKXTFIN5ZlLOjBlfC4%2Fuploads%2F20hO6FQvP8ETHRGNlnrH%2FBulk%20import%20template%20-%20custom%20fields%20and%20tags.csv?alt=media&token=bee0b653-8203-459a-a78c-a36fae160077>" %}

Note that custom fields to be added using the bulk import  need to exist in your workspace. There is a bulk import feature to [create custom fields](https://docs.akenza.io/akenza.io/your-organization/how-to-use-custom-fields-on-akenza#id-2.-adding-custom-fields-in-custom-fields-management-section).

Once the CSV file is uploaded, the file validation can be started. If the validation is successful, the import can start. All imported assets will be displayed now on the **Asset Inventory Overview**.

If you need further assistance, please contact us at <support@akenza.io>
