Documentation
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Locus with 3rd-Party Network Server Integration

This guide describes how to integrate any external LoRaWAN Network Server (LNS) with LOCUS using the TEKTELIC Format Translator API.

Supported Network Servers include:

  • Chirpstack
  • Loriot
  • Actility ThingPark
  • Any other LNS capable of pushing uplinks over HTTP

Integration Flow

Uplink Path (NS → LOCUS)
Device → LoRaWAN Gateway → Network Server (LNS) → HTTPS Uplink Integration → LOCUS

Downlink Path (LOCUS → NS)
LOCUS → HTTPS Downlink Integration → Network Server (LNS) → LoRaWAN Gateway → Device


Prerequisites

Before beginning, ensure:

Requirement Description
Gateway onboarded to the LNS Must be Online
Device onboarded to the LNS Must be Online

This enables the Network Server to push uplink messages to LOCUS.

Inside your Network Server:

  1. Login to the web UI of the LNS.
  2. Navigate to the application that contains the device.
  3. Add a new HTTP integration / output / webhook.
  4. Configure:
Field Value
Target / Destination URL {step server}
Payload format / encoding JSON (if required by LNS)
Authorization header Token or API key (provided by TEKTELIC Support)
  1. Save the integration.

Expected Result
Uplink messages will now start flowing from the LNS into LOCUS.


Step 2: Add the Device in LOCUS

Once uplinks are verified:

  1. Log in to LOCUS.
  2. Go to Devices → Add Device.
  3. Register the same DevEUI used on the Network Server.

After saving, uplink data will appear in LOCUS.


Downlink flow requires two API configurations in LOCUS.

Part A: Configure LoRa Cloud Token

  1. Go to LOCUS Swagger: (e.g. https://locus-api.tektelic.com/swagger-ui/index.html#/)

  2. Use API endpoint:

    POST /api/lora-cloud-config

    Payload:

    {
      "tenantId": "<your-tenant-id>",
      "loraCloudToken": "<your-lora-cloud-token>",
      "host": "<your-host>",
      "sendUlPath": "/api/v1/uplink/send"
    }
    

    Replace tenantId, loraCloudToken, and host with actual values.

Part B: Configure Downlink Translator Endpoint (LOCUS → NS)

Still in Swagger, use endpoint:

POST /api/ns-credentials

Payload:

{
  "tenantId": "<your-tenant-id>",
  "tekNsDlUrl": "{step server}"
}

{step server} must be replaced with the downlink endpoint corresponding to your Network Server.

Depending on which Network Server (NS) you are using, specific configuration values must be applied to enable downlink delivery to LOCUS.

Select your Network Server from the table below and fill the required fields using the values provided.

Network Server (NS) Required Settings Notes
ChirpStack Downlink Endpoint URL: {step server}/chirpstackdownlink
Authorization Header: ApiKey <your_api_key>
Add integration under Application → Integrations → HTTP. Provide the API Key in the Authorization header.
Loriot Downlink Endpoint URL: {step server}/loriotdownlink
Authorization / Token: Application ID and Application Access Token (send as header or per Loriot requirements)
Configure an HTTP Push / Output in the Loriot Application. Use Application ID and Access Token to authorize incoming downlink requests.
Actility (ThingPark) Downlink Endpoint URL: {step server}/actilitydownlink
Authentication: Client ID + Client Secret (OAuth2 client_credentials) and Downlink UUID
Create a Service Account to obtain Client ID/Secret and retrieve the Downlink UUID from the IoT Flow connection configuration. Actility may require the Downlink UUID in the request or headers.

ℹ️ {step server} — the tenant-specific TEKTELIC downlink translator endpoint for your deployment.
To obtain the correct {step server} value, contact support.

Final Configuration

(Performed by TEKTELIC Support Once the downlink URL ({step server}) and credentials are collected:

Contact TEKTELIC Support through the Support Portal Support will:

  • Inject the credentials into the Format Translator EC2 service
  • Validate connectivity and payload exchange

Testing

  • In LOCUS, send a downlink command to the device.
  • Confirm that the LNS receives the request.
  • Confirm that the device receives the downlink.

Integration Complete! LOCUS now receives uplinks from the Network Server and can send downlinks back to it.