Change a 5G Business Internet Service Plan

PUT /devices/actions/plan

Changes the service plan for one or more 5G BI devices.

Uses and Requirements

  • You can change the service plan for an active device up to four times per month.

  • Changing an individual device to a 5G Business Internet unlimited plan requires address qualification. Please note that these plans are fixed location plans. It is agreed to only use the service at the qualified service address that Verizon Wireless approved at the time the service was activated. If the service is used outside of the qualified service address without the specific written approval of Verizon Wireless, Verizon Wireless reserves the right to terminate the Service at any time thereafter upon written notice. 

  • You cannot change the service plan for a device while its service is suspended.

ThingSpace sends an asynchronous CarrierService callback message for each device in the request when the service plan has been changed, or if there was a problem and the change could not be completed.

Request Components

HTTP Request

POST https://thingspace.verizon.com/api/m2m/v1/devices/actions/plan

Resource Path and Query Parameters

None.

Header Parameters

The request header must contain a current ThingSpace authorization bearer token and a valid VZ-M2M session token, and must set the content-type to JSON.

Parameter Name Data Type Description
Authorization
required
string HTTP Authorization bearer token.
VZ-M2M-Token
required
string A valid session token returned by POST /session/login.
Content-Type
required
string Must be application/json.

Request Body

The request body identifies the devices that you want to change. You can either list individual devices, or work with all devices in an account or device group, and optionally filter by service plan or custom field values. Fields are required unless marked "optional".

Parameter Name Data Type Description
accountName
optional (Recommended)
string

The name of a billing account. This value is numeric and must include any leading zeroes. This parameter is only required if the UWS account used for the current API session has access to multiple billing accounts.

Using this field is recommended. By coding for the account number, future code is prevented from breaking if a new sub-account is added.

servicePlan string The service plan code that you want to assign to all specified devices. Set this parameter to one of the code values returned by GET /plans/{accountname}.
Verizon Wireless provides service plan codes at the time of on-boarding and subsequently whenever there are any changes to the service plan.
NOTE: Any devices in the request that are not supported by the service plan will not activate.
deviceListWithServiceAddress array An array of Device ID information and customer information objects, including the object defining the address of where the device will be used.
    deviceIds array An array of Device ID objects.

        id,

        kind

object

The type and value of the device identifier. Valid values include:

  • IMEI (decimal, 15 digits)
  • MEID (Alphanumeric, 14 characters)
  • ICCID (decimal, 20 digits) in that order.
    primaryPlaceOfUse object The customer name and the address of the device’s primary place of use. 

    address

object The customer address for the line’s primary place of use.

        addresLine1

string The street address for the line’s primary place of use. This must be a physical address; it cannot be a P.O. box.

        city

string The city for the line’s primary place of use.

        state

string The two-letter abbreviation of the state for the line’s primary place of use. To see examples of the two-letter codes (i.e. TX for Texas), please see the Wikipedia page on ISO-3166-2:US

         zip

string The Zip code for the line’s primary place of use.

         zip4
        optional

string The ZIP+4 for the line’s primary place of use.

        country

string  “US” for the country of the line’s primary place of use.
customerName
object The customer name to be used for line usage taxation.
title
optional
string An optional title for the customer, such as “Mr.” or “Dr.”
firstName
string The customer’s first name. Valid values are any string of up to 20 alphanumeric characters, space, dash, exclamation point, and pound sign.
middleName
optional
string The customer’s middle name.
lastName
string The customer’s last name. Valid values are any string of up to 25 alphanumeric characters, space, dash, exclamation point, and pound sign.
suffix
optional
string An optional suffix for the customer name, such as “Jr.” or “III.”
currentServicePlan string This is the service plan value that the device will be switched from.

Example Request (Single Device)

{
   "accountName":"0000123456-00001",
   "servicePlan":"Name of the plan being changed to",
   "deviceListWithServiceAddress":[
      {
         "deviceIds":[
            {
               "id":"14-digit alphanumeric",
               "kind":"MEID"
            }
         ],
         "primaryPlaceOfUse":{
            "address":{
               "addressLine1":"address first line",
               "addressLine2":"address second line",
               "city":"city name",
               "state":"2-letter state ID (ISO 3166)",
               "country":"2-letter country code (ISO 3166)",
               "zip":"1234"
            },
            "customerName":{
                "firstName":"First Name",
                "lastName":"Last Name or Surname"
            }
         }
      }
   ],
   "currentServicePlan":"Name of the plan being changed from"
} 

Example Request (Two Devices)

{
   "accountName":"0000123456-00001",
   "servicePlan":"Name of the plan being changed to",
   "deviceListWithServiceAddress":[
      {
         "deviceIds":[
            {
               "id":"14-digit alphanumeric",
               "kind":"MEID"
            }
         ],
         "primaryPlaceOfUse":{
            "address":{
               "addressLine1":"address first line",
               "addressLine2":"address second line",
               "city":"city name",
               "state":"2-letter state ID (ISO 3166)",
               "country":"2-letter country code (ISO 3166)",
               "zip":"1234"
            },
            "customerName":{
                "firstName":"First Name",
                "lastName":"Last Name or Surname"
            }
         }
      },
    {
         "deviceIds":[
            {
               "id":"14-digit alphanumeric",
               "kind":"MEID"
            }
         ],
         "primaryPlaceOfUse":{
            "address":{
               "addressLine1":"address first line",
               "addressLine2":"address second line",
               "city":"city name",
               "state":"2-letter state ID (ISO 3166)",
               "country":"2-letter country code (ISO 3166)",
               "zip":"1234"
            },
            "customerName":{
                "firstName":"First Name",
                "lastName":"Last Name or Surname"
            }
         }
      }
   ],
   "currentServicePlan":"Name of the plan being changed from"
} 

Success Responses

Status 200

{
"requestId": "be36accb-0a9a-4367-93ab-0af6c4ed256a"
}

Callback example

{
   "username":"user name making the request",
   "password":"password of the user",
   "requestId":"c8de7c1d-59b9-4cf3-b969-db76cb2ce509",
   "deviceIds":[
      {
         "id":"10-digit phone number",
         "kind":"mdn"
      }
   ],
   "deviceResponse":{
      "changeServicePlanResponse":{
         "effectiveDate":"5/31/2018 12:00:00 AM"
      }
   }
}

Callback Parameters

Parameter Name Data Type Description
username string The user name making the callback request
password string The password of the user
requestId string The request ID that the callback is for. This is a unique string that associates the request with the information that is sent via a callback service.
deviceIds array An array of device identifier objects where the "kind" can be IMEI, IMSI, MSISDN, ICCID, MDN and MIN and the "id" is the value of the "kind" represented.
deviceResponse object The object containing the device's response.
    changeServicePlanResponse object An object showing the device response to a plan change.
    effectiveDate string If the change succeeds, this is the timestamp of when the change is effective.

Failure Responses

Status 400

All error messages are returned in this format:

{
      "errorCode": "error code string",
      "errorMessage": "error message string"
    }