# 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="/files/8EUNfj5PDXR17IWnt22p" %}

**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="/files/SIhvzFIJnvOabeKgbOgc" %}

**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="/files/s0XvjcRBwJzikpUWncC3" %}

### 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="/files/PIizfTwdupG0IKLNBqdt" %}

**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="/files/UcE5ESIrCJYANOimMOIc" %}

**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="/files/JesqKQXJBVxrhFKDihY7" %}

### 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="/files/-MgQQfYRozdyrqSJnSjD" %}

### 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="/files/mh757ZMUxNZoKaCvzklR" %}

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/get-started/create-new-device/pages/-MlEhwpEH6NIKG23tvAR#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>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.akenza.io/akenza.io/get-started/create-new-device/bulk-import-csv-templates.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
