Instead of adding devices one by one, The Things Stack supports multiple methods of adding multiple end devices at once. Adding multiple devices is also referred to as importing devices.
There are two ways to import devices in The Things Stack - using Console or CLI.
The Things Stack supports importing end devices in JSON and CSV format:
- To import devices that are in a JSON file (for example, the one you created by following Migrating End Devices from V2 or Exporting Devices from ChirpStack), use The Things Stack JSON format (identified by
the-things-stack
). The JSON format data format is documented in the JSON File Reference. - To import devices that are in a CSV file, use the The Things Stack CSV (identified by
the-things-stack-csv
). The CSV data format is documented in the CSV File Reference, including a handy Excel template.
Import devices via the Console
Open your application and click the button Import end devices

Select the File format and upload the file (e.g. devices.json
or devices.csv
).
You can specify Fallback values for Frequency plan and LoRaWAN® and Regional Parameters version, in case the import file does not specify these settings for the device.
You can also expand the Advanced claiming and component settings to set targeted components, and set the claim authentication code to be generated.
Start the import by clicking the Import end devices button.

Wait for the end devices to be successfully imported. In case any device fails, you will see a relevant error message in the console.

If the import was successful, your devices are added to the list of end devices in your application.
Import devices via the CLI
To complete these steps, you need the have the latest version of ttn-lw-cli
installed on your system.
Command-line interface only
The instructions below use the command-line interface (CLI).
To import a file in The Things Stack, run the following command with ttn-lw-cli
:
# JSON format
ttn-lw-cli end-devices create --application-id <application-id> < devices.json
# CSV format
ttn-lw-cli end-devices template from-data --local-file devices.csv --format-id the-things-stack-csv \
| ttn-lw-cli end-devices template execute \
| ttn-lw-cli end-devices create --application-id <application-id>
This will import your devices in The Things Stack. In case any device import fails, you will see a relevant error message at the end of the output.
If the import was successful, you will see your devices added to the list of end devices in your application.

See the following video from The Things Network youtube channel for instructions.