Activate a SIM (Consumer eSIM for IoT Solutions)

POST /v1/devices/profile/actions/activate

Activate an embedded SIM for Consumer eSIM for Enterprise.

Contents

See also:

Request Components

Header Parameters

The request header must set the content-type to JSON, contain a current ThingSpace authorization token and a current VZ-M2M session token. For more details on how to get these tokens, visit  Getting Started.

Parameter Name Data Type Description
Authorization
required
string

HTTP Authorization bearer token:
Authorization: Bearer {token}

VZ-M2M-Token
required
string

A valid session token:
VZ-M2M-Token: {M2Mtoken}

Content-Type
required
string

Must be application/json:
Content-Type: application/json

HTTP Request

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

Request Parameters

Parameter Data Type Description

devices
required

array

An array of deviceIds. Each deviceId will contain:

  • id
  • kind
   id
string The numeric ID of the device.
   kind
string

The the type of device ID represented by the ID value. Activation for Consumer eSIM for Enterprise will only accept the EID and IMEI values for activation.

smsrOid string System Management Service Request Object ID. This is a system generated ID to track transaction requests made by the device.
carrierName
string The name of the carrier providing cellular network access.
accountName
required
string The name of the account.
servicePlan
string The service plan the account is subscribed to. This drives billing for usage.
mdnZipCode
string The 5-digit zip code of the profile
carrierIpPoolName string The name of the pool of IP addresses assigned to the profile.
primaryPlaceOfUse object  An object with 2 arrays containing the account owner's name and address information.

Request Body

Example request:

{
    "devices": [
        {
            "deviceIds": [
                {
                    "kind": "eid",
                    "id": "32-digit EID"
                },
                {
                    "kind": "imei",
                    "id": "15-digit IMEI"
                }
            ]
        }
    ],
    "carrierName": "name of the mobile servie provider",
    "accountName": "0000123456-00001",
    "servicePlan": "name of the service plan (for Consumer eSIM for Enterprise the value will be 'HybridESim')",
    "mdnZipCode": "5 digit zip code",
  }
}

Success Response

Status 200

A successful response shows a system generated request ID to track the request.

Example Response:

{
  "requestId": "d1f08526-5443-4054-9a29-4456490ea9f8"
}

Callback Response

These endpoints send responses asynchronously. In order to read the results a callback is required.To learn more about callback, please visti About Callback Services. The callback that must be subscribed to is DeviceProfileService..

 

Example callback responses:

First Activation Response:

{
   "requestId":"d1f08526-5443-4054-9a29-4456490ea9f8",
   "deviceIds":[
      {
         "id":"32-digit EID",
         "kind":"eid"
      },
      {
         "id":"15-digit IMEI",
         "kind":"imei"
      },
      {
         "id":"10-digit MDN",
         "kind":"mdn"
      },
      {
         "id":"20-digit ICCID",
         "kind":"iccid"
      }
   ],
   "deviceResponse":{
      "deviceProfileResponse":{
         "deviceIdentifierCollection":[
            {
               "id":"32-digit EID",
               "kind":"eid"
            },
            {
               "id":"15-digit IMEI",
               "kind":"imei"
            },
            {
               "id":"10-digit MDN",
               "kind":"mdn"
            },
            {
               "id":"20-digit ICCID",
               "kind":"iccid"
            }
         ],
         "state":"ACTIVE",
         "servicePlan":"service plan name (for Consumer eSIM for Enterprise, this will be 'HybridESim')",
         "deviceCredential":{
            "username":"user name",
            "password":"password"
         },
         "profileStatus":"UNKNOWN",
         "carrierName":"name of the mobile service provider",
         "profileRole":"LOCAL"
      }
   },
   "status":"SUCCESS",
   "callbackCount":1,
   "maxCallbackThreshold":4
}

Second Activation Response

{
   "requestId":"d36bdf9e-2cc5-4c8f-8415-a662c2cd7cdc",
   "deviceIds":[
      {
         "id":"10-digit MDN",
         "kind":"mdn"
      }
   ],
   "deviceResponse":{
      "deviceProfileResponse":{
         "deviceIdentifierCollection":[
            {
               "id":"10-digit MDN",
               "kind":"mdn"
            }
         ],
         "state":"ACTIVE",
         "profileStatus":"UNKNOWN",
         "profileRole":"LOCAL",
         "activationCode":"unique ID assigned to this request"
      }
   },
   "status":"SUCCESS",
   "callbackCount":1,
   "maxCallbackThreshold":4
}

Callback Parameters

Parameter Data Type Description
     
requestId string The requestId being viewed. This is a system generated value from the request above.
deviceIds
array

An array of devices being queried by the request. Each deviceId will contain:

  • id
  • kind
   id
string The numeric ID of the device.
   kind
string

The the type of device ID represented by the ID value. This could be:

  • imei
  • iccid
  • mdn
  • eid
deviceResponse array Contains the deviceProfileResponse, status and number of callback records returned.
deviceProfileResponse  array

Contains the details and status of the devices and the request.

   deviceIdentifierCollection array Similar to deviceIds above, but this lists the devices responding.
   state string The state of the device(s) responding.
   profileStatus string Indicates the profile state
   profileRole string Indicates if the profile used is on the device (local) or not (remote)
   activationCode string A unique numeric ID for this request
status string The status of the deviceResponse.
callbackCount string The number of responses for deviceResponse found.
maxCallbackThreshold string The maximum number of responses for deviceResponse allowed.

Failure Responses

All error responses will be in the following format

{
  "errorCode": "The 3-digit HTML error code",
  "errorMessage": "string"
}