Manage eUICC local profiles on devices, including downloading, enabling, disabling, and deleting profiles.
NOTE: This API method requires eUICC devices that can accept downloadable profiles.
You can only change the profile state on one device at a time. The device must have been activated and have an assigned ICCID before you can download a local profile to it or make profile changes.
The ThingSpace Platform sends an asynchronous DeviceProfileService callback message when it receives a response from the SM-SR system about a profile state change. If a time-out situation occurs, such as when a device is unreachable, the initial callback will include a "warning" status, and a later response will indicate either success or failure.
Parameter | Type | Description |
---|---|---|
DeviceList
required |
DeviceIdentifierCollection |
The EID and ICCID of the device for which you want to make a profile change. You can use GetDeviceList to get a list of all devices in the account. Use this structure of nested parameters: <DeviceIdentifierCollection> <DeviceIndentifiers> <DeviceIdentifier> <Kind>eid</Kind> <Identifier>eid_value</Identifier> </DeviceIdentifier> <DeviceIdentifier> <Kind>iccid</Kind> <Identifier>iccid_value</Identifier> </DeviceIdentifier> </DeviceIndentifiers> </DeviceIdentifierCollection> |
Kind
required for DeviceList |
string | The type of the device identifier. Valid types of identifiers are:
|
Identifier
required for DeviceList |
string | The value of the device identifier. |
AccountName
required |
string | The name of a billing account. An account name is usually numeric, and must include any leading zeros. |
DeviceProfileAction
required |
string | The profile-related action that you want to take:
|
SmsrOid
required |
string | The Object ID of the SMSR system. |
Parameter | Type | Description |
---|---|---|
RequestId | string | A unique string that associates the request with the results that are sent via a callback service.
The ThingSpace Platform will send a separate callback message for each device that matched the request criteria, indicating whether the operation succeeded for that device and containing any requested information. All of the callback messages will have the same RequestId. |
Parameter | Type | Description |
---|---|---|
CallbackRequest | CallbackRequest | Wrapper element for all callback elements. |
Username | string | The username defined when a URL was registered for the callback service, or an empty element if no username was defined. |
Password | string | The password defined when a registered for the callback service, or an empty element if no password was defined. |
RequestId | string | A unique string that matches the RequestId returned in the synchronous response to the original API request.
A separate callback message is sent for each device that matched the request criteria, indicating whether the operation succeeded for that device. All of the callback messages will have the same RequestId. |
Device | DeviceIdentifier | An identifier of the device that was activated. This element may appear multiple times, for different types of device identifier. |
Kind | string | The type of the device identifier. Valid types of identifiers are:
|
Identifier | string | The value of the device identifier. |
Data | CallbackData | The data elements for this callback. |
CarrierService | CarrierServiceCallbackRequest | Null for this callback service. |
ExternalProvisioningChange | ExternalProvisioningChange | Null for this callback service. |
PromoChange | PromoChange | Null for this callback service. |
SMSDelivery | SMSDelivery | Null for this callback service. |
PRLInformation | PRLInformation | Null for this callback service. |
DeviceService | DeviceServiceCallbackRequest | Null for this callback service. |
GoToState | GoToState | Null for this callback service. |
DeviceProfileService | DeviceProfileServiceCallbackRequest | The data returned from a DeviceProfileService API request. |
ChangeDeviceProfileState | ChangeDeviceProfileStateResponse | Contains child elements for successful ChangeDeviceProfileState requests. |
DeviceIdentifierCollection | DeviceIdentifier | The device identifiers for the device. All known identifiers that are assigned to the device are included in the callback. |
Kind | string | The type of the device identifier. Valid types are:
|
Identifier | string | The value of the device identifier. |
IpAddress | string | The IP address of the activated device. |
State | string | The current service state of the device. |
ServicePlan | string | The service plan code that is assigned to the device. |
DeviceCredential | DeviceCredential | |
Username | string | |
Password | string | |
SmsrOid | string | The Object ID of the SMSR system. |
ProfileStatus | string | The status of the local profile on the device:
|
euiccStatus | string | Overall status of the request, such as "EXECUTED_SUCCESS" or "EXECUTED_WITHWARNING" or "FAILED." |
euiccStatusCode | string | Profile change status code. |
euiccStatusDesc | string | Profile change status description, such as "EUICC device profile has been updated." |
euiccSubAddressUpdateStatus | string | Subscription Address Update status, such as "EXECUTED_SUCCESS." |
euiccSubAddressUpdateStatusCode | string | Subscription Address Update status code. |
euiccSubAddressUpdateStatusDesc | string | Subscription Address Update description, such as "SUCCESS: Address has been updated." |
EuiccErrorCode | string | Any error code returned by the eUICC provisioning system (SM-SR, SM-DP), otherwise null. |
EuiccErrorDesc | string | The description of any error returned by the eUICC provisioning system (SM-SR, SM-DP), otherwise null. |
Fault | SoapFault | Information about any errors that may have occurred. |
faultcode | QName | |
faultstring | string | |
faultfactor | anyURI | |
detail | ||
Comment | string | Null for this callback service. |
Summary | SummaryReport | Null for this callback service. |
Status | string | The overall status of the profile change operation, Success, Warning, or Failed. |
CallbackCount | integer | The number of times this callback message has been sent. |
MaxCallbackThreshold | integer | The maximum number of times this callback message will be sent if it is not correctly acknowledged. |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v2="http://nphase.com/unifiedwebservice/v2" xmlns:nph="http://schemas.datacontract.org/2004/07/NPhase.UnifiedWebService.APIs.v2.Contract.CarrierService" xmlns:nph1="http://schemas.datacontract.org/2004/07/NPhase.UnifiedWebService.APIs.v2.Contract.Common" xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <soapenv:Header> <v2:token>current_session_token</v2:token> </soapenv:Header> <soapenv:Body> <v2:ChangeDeviceProfileState> <v2:Input> <nph:DeviceList> <nph1:DeviceIdentifierCollection> <nph1:DeviceIdentifiers> <nph1:DeviceIdentifier> <nph1:Kind>eid</nph1:Kind> <nph1:Identifier>12345678954357688412445678912398</nph1:Identifier> </nph1:DeviceIdentifier> <nph1:DeviceIdentifier> <nph1:Kind>iccid</nph1:Kind> <nph1:Identifier>11245013879359100199</nph1:Identifier> </nph1:DeviceIdentifier> </nph1:DeviceIdentifiers> </nph1:DeviceIdentifierCollection> </nph:DeviceList> <nph:AccountName>1223334444</nph:AccountName> <nph:DeviceProfileAction>Download_Enable</nph:DeviceProfileAction> <nph:SmsrOid>634.32418.489196.513</nph:SmsrOid> </v2:Input> </v2:ChangeDeviceProfileState> </soapenv:Body> </soapenv:Envelope>
<ChangeDeviceProfileStateResponse xmlns="http://nphase.com/unifiedwebservice/v2"> <Output xmlns:a="http://schemas.datacontract.org/2004/07NPhase.UnifiedWebService.APIs.v2.Contract.DeviceProfileService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <a:RequestId>2c90bd28-ece4-42ef-9f02-7e3bd4fbff33</a:RequestId> </Output> </ChangeDeviceProfileStateResponse>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <CallbackRequest xmlns="http://nphase.com/unifiedwebservice/v2"> <Username/> <Password/> <RequestId>2c90bd28-ece4-42ef-9f02-7e3bd4fbff33</RequestId> <Device xmlns="http://nphase.com/unifiedwebservice/v2"> <Kind>Iccid</Kind> <Identifier>11245013879359100199</Identifier> </Device> <Device xmlns="http://nphase.com/unifiedwebservice/v2"> <Kind>Eid</Kind> <Identifier>123456789543576884124456789123</Identifier> </Device> <Data xmlns="http://nphase.com/unifiedwebservice/v2"> <Data xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://nphase.com/unifiedwebservice/v2"> <CarrierService xsi:nil="true" /> <ExternalProvisioningChange xsi:nil="true" /> <PromoChange xsi:nil="true" /> <SMSDelivery xsi:nil="true" /> <PRLInformation xsi:nil="true" /> <DeviceService xsi:nil="true" /> <GoToState xsi:nil="true" /> <DeviceProfileService> <DownloadDeviceProfile xsi:nil="true" /> <ChangeDeviceProfileState> <DeviceIdentifierCollection> <Kind>iccid</Kind> <Identifier>11245013879359100199</Identifier> </DeviceIdentifierCollection> <DeviceIdentifierCollection> <Kind>eid</Kind> <Identifier>12345678954357688412445678912398</Identifier> </DeviceIdentifierCollection> <IpAddress xsi:nil="true" /> <State>Active</State> <ServicePlan xsi:nil="true" /> <DeviceCredential /> <SmsrOid>634.32418.489196.513<</SmsrOid> <ProfileStatus>DOWNLOAD_ENABLE</ProfileStatus> <updateSubAddressStatus>SUCCESS</updateSubAddressStatus> <updateSubAddressStatusCode>1</updateSubAddressStatusCode> <updateSubAddressStatusDesc>SUCCESS: Address has been updated</updateSubAddressStatusDesc> <EuiccErrorCode xsi:nil="true" /> <EuiccErrorDesc xsi:nil="true" /> </ChangeDeviceProfileState> </DeviceProfileService> <Fault xsi:nil="true" /> <Comment xsi:nil="true" /> <Summary xsi:nil="true" /> <Status xsi:nil="true" /> <CallbackCount>1</CallbackCount> <MaxCallbackThreshold>4</MaxCallbackThreshold> <ExtendedEnhancedConnectivityService xsi:nil="true" /> </Data> </Data> </CallbackRequest> </s:Body> </s:Envelope>