Enable an eSIM Profile

POST /v1/devices/profile/actions/enable

This API allows the customer to activate either Verizon US or Global eSIM profile based on the contracted service plan. If a selected profile is enabled on a device with multiple eSIM profiles, all the other profiles are automatically disabled. Only one eSIM profile can be enabled at any given time for a device. The device must be powered on and connected when performing this operation. Device(s) with enabled Global eSIM profiles are now connected natively to either Verizon US network if enabling Verizon US eSIM profile or local carrier’s network if enabling Global eSIM profile.

Bulk operation: Supported (The callback would be one for each eSIM profile). Bulk operations have a limit of 10,000 requests.

eSIM profiles: Both Verizon US and Global.

Contents

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/enable

Request Parameters

Parameter Data Type Description

devices
required

array

An array of deviceIds. Each deviceId will contain:

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

The the type of device ID represented by the ID value. Only the following are supported by the request and both values must be present:

  • iccid - integrated circuit card ID (SIM card)
  • eid - electronic ID, a 32-digit unique ID of the device
  • imei - International Mobile Equipment Identifier 
accountName
required
string The name of the account.
servicePlan string Use the Verizon ServicePlan when performing an action on the Verizon network and use the Global servicePlan when performing action for Global.

Request Body

Example request:

{
    "devices": [
        {
            "deviceIds": [
                {
                    "kind": "eid",
                    "id": "32-digit EID"
                },
                {
                    "kind": "iccid",
                    "id": "20-digit ICCID"
                },
                {
                    "kind": "imei",
                    "id": "15-digit IMEI"
                }
            ]
        }
    ],
    "accountName": "0000123456-00001",
    "servicePlan": "service plan name",
}

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 callbacks, please visit About Callback Services.

Example callback response:

{
    "requestId": "d1f08526-5443-4054-9a29-4456490ea9f8",
    "deviceIds": [
        {
            "id": "20-digit ICCID",
            "kind": "Iccid"
        },
        {
            "id": "15-digit IMEI",
            "kind": "Imei"
        },
        {
            "id": "32-digit EID",
            "kind": "Eid"
        },
        {
            "id": "10-digit phone number",
            "kind": "mdn"
        }
    ],
    "deviceResponse": {
        "deviceProfileResponse": {
            "deviceIdentifierCollection": [
                {
                    "id": "20-digit ICCID",
                    "kind": "Iccid"
                },
                {
                    "id": "15-digit IMEI",
                    "kind": "Imei"
                },
                {
                    "id": "32-digit EID",
                    "kind": "Eid"
                },
                {
                    "id": "10-digit phone number",
                    "kind": "mdn"
                }
            ],
            "state": "ACTIVE",
            "profileStatus": "ENABLE",
            "profileRole": "LOCAL"
        }
    },
    "status": "SUCCESS",
    "callbackCount": 1,
    "maxCallbackThreshold": 4
}

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 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 value of the device ID.
   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 and will show what request was made.
     profileRole string This indicates if the profile is LEAD or LOCAL. Lead is for Verizon (US) profiles and local is for global profiles.
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"
}