E T X Registration

Retrieve MQTT URL for device or software service connection to the Message Exchange

POST
/api/v2/clients/connection

With this API call the device or software service requests the MQTT URL for the location that it needs to connect. To determine the proper URL the device or software service needs to provide its ID (the one that was provided in the registration request), location (GPS coordinates), and whether it is on the Verizon cellular network or not.

Note: The user needs to authenticate with their ThingSpace credentials using the Access/Bearer and Session/M2M tokens in order to call this API.

Authorization

thingspace_oauth sessionToken
AuthorizationBearer <token>

This is the ThingSpace token, from Credentials and Tokens is used

In: header

SessionToken<token>

This is the Session/M2M token needed to authenticate the user. It should be acquired by using the ThingSpace APIs. For detail on how to obtain a Session/M2M token please refer to the

In: header

Header Parameters

VendorID*string

The VendorID set during the Vendor registration call.

Match^[a-zA-Z0-9]+$
Lengthlength <= 64
X-Transaction-Id?string

Optional transaction identifier for tracing requests. If not provided, the application will generate one.

Formatuuid

Request Body

application/json

Request for /clients/connection. It requires the device ID acquired in the registration request call; the geolocation of the device at the time of the request; and the network type (Verizon or non-Verizon). The system uses this information to determine with MQTT endpoint the device should use to connect the ETX Message Exchange.

DeviceID*string

The generated ID (UUID v4) for the device. It can be used as:

  • the MQTT Client ID when connecting to the Message Exchange system
  • a parameter when asking for the connection endpoint
  • a parameter when finishing the device registration
  • a parameter when unregistering the device
Formatuuid
Geolocation*

Geolocation of the device at the time of the connection request in GPS coordinates.

NetworkType*NetworkType

The type of the device's network connection at the time of the request. If the device is on the Verizon cellular network it should use the "VZ" value otherwise the "non-VZ" value.

Devices on the Verizon network can directly access the ETX Message Exchange on the MEC (Mobile Edge Compute server)

Value in

  • "VZ"
  • "non-VZ"

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/v2/clients/connection" \  -H "VendorID: VerizonETX" \  -H "Content-Type: application/json" \  -d '{    "DeviceID": "976c4bad-03d3-4dcb-9688-ee57db7890e4",    "Geolocation": {      "Latitude": 42.36,      "Longitude": -71.06    },    "NetworkType": "non-VZ"  }'
{  "MqttURL": "mqtt://imp-nyc-1.prod-us-east-1.thingspace.verizon.com:8883",  "Host": "imp-nyc-1.prod-us-east-1.thingspace.verizon.com",  "Port": 8883}

Renew a device certificate or complete the registration for a device with pending certificate PUT

With this API call the user (client) can: - renew the certificate of a device or software service in the ETX system if the original certificate has expired. If the client's certificate expired or going to expire within 30 days and new certificate will be issued. If the certificate expires more than 30 days, the current certificate will be returned to the client. - complete its device or software service registration to the ETX system if the original registration request was not successful because of a pending certificate generation. Whenever the user receives a "client registration is pending" response (HTTP 202) from POST /clients/registration call. The client should initiate this PUT API call to finish the registration process and get the required certificate. Note: The user needs to authenticate with their ThingSpace credentials using the Access/Bearer and Session/M2M tokens in order to call this API.

Retrieve MQTT URL for device or software service connection to the Message Exchange with muti-MECs support POST

With this API call the device or software service requests the MQTT URL for the location that it needs to connect. To determine the proper URL the device or software service needs to provide its ID (the one that was provided in the registration request), location (GPS coordinates), and whether it is on the Verizon cellular network or not. If there are multiple MECs that serve the location of the client all options are provided in the response, and the client is free to choose which MEC they want to connect. Note: The user needs to authenticate with their ThingSpace credentials using the Access/Bearer and Session/M2M tokens in order to call this API.