API Reference
# Renew an Activation Code `POST /v1/devices/profile/actions/renew_activation_code` Generate a new activation code to reactivate a deactivated device. Use the Activate a SIM endpoint with the new actiavtion code to reactivate the device. ## 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](https://thingspace.verizon.com/documentation/api-documentation.html#/http/session-management/guides/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/renew_activation_code](/docs/standard-apis/connectivity-management/api-endpoints/embedded-sim-including-consumer-esim/consumer-esim-for-iot-solutions/renew-an-activation-code/newactivatecode) ## 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. Renew an Activation Code for Consumer eSIM for Enterprise will only accept the **EID** and **ICCID** values. | | **accountName** *(required)* | string | The name of the account. This is numeric and is in the format **0000123456-00001**. Leading zeros must be included. | | **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. | ## Request Body Example request: ```json { "devices": [ { "deviceIds": [ { "kind": "eid", "id": "32-digit EID" }, { "kind": "imei", "id": "15-digit IMEI" } ] } ], "accountName": "0000123456-00001", "servicePlan": "name of the service plan", "mdnZipCode": "5 digit zip code", } } ``` ## Success Response **Status 200** A successful response shows a system generated request ID to track the request. Example Response: ```json { "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](https://thingspace.verizon.com/documentation/api-documentation.html#/http/connectivity-management/guides/working-with-verizon-wireless/about-callback-services). The callback that must be subscribed to is `DeviceProfileService`. Example callback response: ```json { "requestId":"d1f08526-5443-4054-9a29-4456490ea9f8", "deviceIds":[ { "id":"10-digit phone number", "kind":"mdn" }, { "id":"15-digit IMEI", "kind":"imei" } ], "deviceResponse":{ "deviceProfileResponse":{ "deviceIdentifierCollection":[ { "id":"10-digit phone number", "kind":"mdn" }, { "id":"15-digit IMEI", "kind":"imei" } ], "state":"ACTIVE", "profileStatus":"UNKNOWN", "profileRole":"LOCAL", "activationCode":"activation code" } }, "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 type of device ID represented by the ID value. This could be: **imei**, **iccid**, **mdn** or **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 responding. | | **profileStatus** | string | Indicates the profile state. | | **profileRole** | string | Indicates if the profile used is Verizon (local) or Global (remote) | | **activationCode** | string | A system generated code for activating this device. | | **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 ```json { "errorCode": "The 3-digit HTML error code", "errorMessage": "string" } ```