Upload Devices

Upload Device Identifiers to Verizon:
POST /devices/actions/upload

Uploads new device identifiers from OEMs to Verizon. The devices can then be added to accounts and activated for service.

To use this API method, your company must be registered on the Open Development portal with the ability to upload devices to Verizon.

NOTE: This API method is currently in limited release, and is not yet available to all customers.

Contents

See also:
Retrieve Device SKU List

Uses and Requirements

As an alternative to uploading a CSV file, device manufacturers can use this endpoint to upload the identifiers and SKUs of newly manufactured devices to Verizon. The request returns a synchronous response that indicates that the data has been received, and any errors in the request format. When the request has been fully processed, Verizon will send a report to the email address provided in the request body.

All devices in an upload must be of the same type and have the same SKU.

Request Components

HTTP Request

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

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 to upload.

Parameter Name Data Type Description
accountName
required
string The billing account that is being used to upload the devices.
emailAddress
required
string Email address that the report should be sent to after the uploaded device list is processed. This email address must be registered as part of the account profile in the Open Development portal before devices are uploaded.
deviceSku
required
string The stock keeping unit that identifies the type of devices in the upload.
uploadType
required
string The format of the device identifiers in the upload. One of these values:
  • IMEI
  • IMEI ICCID Pair
  • IMEI ICCID Embedded SIM Pair
  • IMEI EID Pair
devices
required
array of deviceIds objects The devices to upload, specified by device IDs in a format matching uploadType.

Example Request Body

Upload devices by IMEI

{
  "accountName":"1223334444-00001",
  "emailAddress":"bob@mycompany.com",
  "deviceSku":"VZW123456",
  "uploadType":"IMEI",
  "devices":[
    {
      "deviceIds":[  
        {
          "kind":"IMEI",
          "id":"990013907835573"
        }
      ]
    },
    {
      "deviceIds":[  
        {
          "kind":"IMEI",
          "id":"990013907837533"
        }
      ]
    },
    {
      "deviceIds":[  
        {
          "kind":"IMEI",
          "id":"990013907833575"
        }
      ]
    }
  ]
}

Upload devices by IMEI ICCID Pair

{
  "accountName":"1223334444-00001",
  "emailAddress":"bob@mycompany.com",
  "deviceSku":"VZW123456",
  "uploadType":"IMEI ICCID Pair",
  "devices":[
    {
      "deviceIds":[  
        {
          "kind":"IMEI",
          "id":"990013907835573"
        },
        {  
          "kind":"ICCID",
          "id":"89141390780800784259"
        },
      ]
    },
    {
      "deviceIds":[  
        {
          "kind":"IMEI",
          "id":"990013907833575"
        },
        {  
          "kind":"ICCID",
          "id":"42598914139078080078"
        },
      ]
    },
    {
      "deviceIds":[  
        {
          "kind":"IMEI",
          "id":"990013907837353"
        },
        {  
          "kind":"ICCID",
          "id":"780889141390780800"
        },
      ]
    }
  ]
}

Success Responses

Status 200

The synchronous response shows any validity problems with the overall request or with individual devices.

NOTE: The synchronous response does not indicate whether devices were successfully added to the Verizon Database. You must look at the email report for that information.

Parameter Name Data Type Description
status string This field is only present if the request could not be accepted due to a package-level validity problem. See the list of possible errors below. Note that a status error means that NO devices were added to the Verizon database.
deviceSku string The SKU of the uploaded devices.
accountName string The billing account that was used to upload the devices.
devices array of objects A device identifier and status for each device in the request.
devices.deviceIds array of objects The identifiers for a device.
devices.lineStatus string Either “Device upload request submitted” or one of the possible line-level error messages.

Example Success Response

{
  "accountName": "1223334444-00001",
  "deviceSku": "VZW123456",
  "devices": [
    {
      "deviceIds": [
        {
          "id": "89141390780800784259",
          "kind": "Iccid"
        },
        {
          "id": "990013907835573",
          "kind": "Imei"
        }
      ],
      "lineStatus": "Device upload request submitted"
    },
    {
      "deviceIds": [
        {
          "id": "42598914139078080078",
          "kind": "Iccid"
        },
        {
          "id": "990013907833575",
          "kind": "Imei"
        }
      ],
      "lineStatus": "Device upload request submitted"
    },
    {
      "deviceIds": [
        {
          "id": "780889141390780800",
          "kind": "Iccid"
        },
        {
          "id": "990013907837353",
          "kind": "Imei"
        }
      ],
      "lineStatus": "SIM Id (780889141390780800) is invalid"
    }
  ]
}

Error and Status Messages

Error Level Error Text Notes
Package Device SKU is not present in ODI The SKU is not recognized.
Package Device SKU is not present in DMD The SKU is not recognized.
Package Device SKU is not Certified The SKU is for a device that is not yet certified for use on the Verizon network.
Package Device SKU is CDMA Type and only exception request is supported The SKU is for CDMA devices, which can no longer be activated on the Verizon network.
Package Device SKU is missing status in DMD The SKU is for a device type that is not fully configured in Verizon systems.
Package Device SKU is certified but not present in DMD The SKU is for a device type that is not fully configured in Verizon systems.
Package No Profile found for email address (odiPortalEmailAddress) The email address is not registered to an Open Development account.
Package There are no active/approved devices The request did not contain a list of devices.
Package Device SKU (deviceSku) not provided The request did not contain a deviceSku value.
Package Upload Type (uploadType) not provided The request did not contain an uploadType value.
Package Upload Type (uploadType)  is invalid. (Must be one of ESN HEX, MEID, IMEI, IMEI ICCID Pair, IMEI ICCID Embedded SIM Pair or IMEI EID Pair) The UploadType value was not recognized. You must use one of the valid values.
Package Email Address (odiPortalEmailAddress) not provided The request did not contain an emailAddress value.
Package Email Address (odiPortalEmailAddress) is invalid The emailAddress value is not in a valid format.
Package Number of upload lines exceeds threshold of 10000 The request contains more than 10,0000 devices.
Package Processing failed due to an unknown error
Line Device upload request submitted The device has been accepted for processing. The email report will indicate whether the device was added to the Verizon database.
Line Duplicate Device ID (deviceId) found in the request The upload contained more than one entry with the specified IMEI.
Line Duplicate EID (eid) found in the request The upload contained more than one entry with the specified EID.
Line Duplicate ICCID (iccid) found in the request The upload contained more than one entry with the specified ICCID.
Line EID (eId) is invalid The EID provided is not valid.
Line EID (eId) not provided The request did not include an EID for this device.
Line IMEI (deviceId) is invalid The IMEI provided is not valid.
Line IMEI (deviceId) not provided The request did not include an IMEI for this device.
Line SIM Id (iccId) is invalid The ICCID provided is not valid.
Line SIM Id (iccId) not provided The request did not include an ICCID for this device.