How to use JSON API to encode OTA User Data and Application Protocol Data Unit
This API is used to encode OTA messages called UDs.
These UDs can modify files on the SIM (RFM) or manage applets on the SIM (RAM).
Request: generate_uds
Generate and retrieve UDs and APDUs to update the SIM files(RFM) or to manage applets(RAM) for multiple participants(SIMs).
Requests
This request has multiple formats in which it can be sent:
{ "request": "generate_uds", "node": "ota", "params": { "type": "RFM", "tar_type": "Type of tar to use for generating UDs: sim/usim/isim. Required.", "participant": [ { "kic": "Key Identifier for ciphering. Used for encryption. Size: 16/24 bytes. Format: hex", "kid": "Key Identifier for RC/CC/DS. Used to verify integrity data. Size: 16/24 bytes. Format: hex", "kik": "Key Identifier for protecting KIc and KID.", "ota_counter": "Counter used for replay detection and sequence integrity. Size: 5 bytes. Format: hex. Common: 0000000000.", "ota_profile": { "cla": "Class Byte. The class byte shall be coded according to section 11.1.4.1 in GlobalPlatform Card Specification version 2.3. Size: 1 byte. Format: hex. Common: 80", "spi": "Security Parameter Indicator. Specifies if algorithm is used, if PoR is ciphered etc. Size: 2 bytes. Format: hex. Common: 1621", "kic": "Key and algorithm Identifier for ciphering. Algorithm type used for encryption. Size: 1 byte. Format: hex. Common: 15", "kid": "Key and algorithm Identifier for RC/CC/DS. Algorithm type used to compute RC/CC/DS field to verify integrity data. Size: 1 byte. Format: hex. Common: 15", "tar_ram": "Toolkit Application Reference for RAM. Size: 3 byte. Format: hex. Common: 000000", "tar_rfm_sim": "Toolkit Application Reference for RFM SIM. Size: 3 byte. Format: hex. Common: b00010", "tar_rfm_usim": "Toolkit Application Reference for RFM USIM. Size: 3 byte. Format: hex. Common: b00001", "tar_rfm_isim": "Toolkit Application Reference for RFM ISIM. Size: 3 byte. Format: hex. Common: b00020" } } ], "commands": [ { "profile": "String. Optional. Name of the profile to use. If not set, default profile will be used", "app": "String. Required. RFM application to update: gsm/telecom/usim", "batch": [ { "addr": "String or Array if case file in located in directory", "values": "String or Object. If string, it contains the new value for the field. If object with \"old\" and \"new\" keys, then generated UDs will try to encode only the different between the two values." } ] } ] } }
{ "request": "generate_uds", "node": "ota", "params": { "type": "RFM", "tar_type": "Type of tar to use for generating UDs: sim/usim/isim. Required.", "participant": [ { "kic": "Key Identifier for ciphering. Used for encryption. Size: 16/24 bytes. Format: hex", "kid": "Key Identifier for RC/CC/DS. Used to verify integrity data. Size: 16/24 bytes. Format: hex", "kik": "Key Identifier for protecting KIc and KID.", "ota_counter": "Counter used for replay detection and sequence integrity. Size: 5 bytes. Format: hex. Common: 0000000000.", "ota_profile": { "cla": "Class Byte. The class byte shall be coded according to section 11.1.4.1 in GlobalPlatform Card Specification version 2.3. Size: 1 byte. Format: hex. Common: 80", "spi": "Security Parameter Indicator. Specifies if algorithm is used, if PoR is ciphered etc. Size: 2 bytes. Format: hex. Common: 1621", "kic": "Key and algorithm Identifier for ciphering. Algorithm type used for encryption. Size: 1 byte. Format: hex. Common: 15", "kid": "Key and algorithm Identifier for RC/CC/DS. Algorithm type used to compute RC/CC/DS field to verify integrity data. Size: 1 byte. Format: hex. Common: 15", "tar_ram": "Toolkit Application Reference for RAM. Size: 3 byte. Format: hex. Common: 000000", "tar_rfm_sim": "Toolkit Application Reference for RFM SIM. Size: 3 byte. Format: hex. Common: b00010", "tar_rfm_usim": "Toolkit Application Reference for RFM USIM. Size: 3 byte. Format: hex. Common: b00001", "tar_rfm_isim": "Toolkit Application Reference for RFM ISIM. Size: 3 byte. Format: hex. Common: b00020" } } ], "apdus": "Array of already generated APDUs to use to generate UDs. This is required unless commands is present." } }
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "Type of tar to use for generating UDs: ram/applet. Required.", "participant": [ { "kic": "Key Identifier for ciphering. Used for encryption. Size: 16/24 bytes. Format: hex", "kid": "Key Identifier for RC/CC/DS. Used to verify integrity data. Size: 16/24 bytes. Format: hex", "kik": "Key Identifier for protecting KIc and KID.", "ota_counter": "Counter used for replay detection and sequence integrity. Size: 5 bytes. Format: hex. Common: 0000000000.", "ota_profile": { "cla": "Class Byte. The class byte shall be coded according to section 11.1.4.1 in GlobalPlatform Card Specification version 2.3. Size: 1 byte. Format: hex. Common: 80", "spi": "Security Parameter Indicator. Specifies if algorithm is used, if PoR is ciphered etc. Size: 2 bytes. Format: hex. Common: 1621", "kic": "Key and algorithm Identifier for ciphering. Algorithm type used for encryption. Size: 1 byte. Format: hex. Common: 15", "kid": "Key and algorithm Identifier for RC/CC/DS. Algorithm type used to compute RC/CC/DS field to verify integrity data. Size: 1 byte. Format: hex. Common: 15", "tar_ram": "Toolkit Application Reference for RAM. Size: 3 byte. Format: hex. Common: 000000", "tar_rfm_sim": "Toolkit Application Reference for RFM SIM. Size: 3 byte. Format: hex. Common: b00010", "tar_rfm_usim": "Toolkit Application Reference for RFM USIM. Size: 3 byte. Format: hex. Common: b00001", "tar_rfm_isim": "Toolkit Application Reference for RFM ISIM. Size: 3 byte. Format: hex. Common: b00020" } } ], "commands": [ { "operation": "Name of the operation: delete/load/install/load_install/delete_load_install/custom/list_isd/list_packages/list_applets", "parameters": [ { "non_volatile_data_size": "Used to check if there is space on the SIM before loading an applet. Decimal value(0 - 65535), default is 0.", "volatile_data_size": "Used to check if there is space on the SIM before loading an applet. Decimal value(0 - 65535), default is 0.", "module_aid": "AID of the Executable module previously loaded. Mandatory for install operation.", "instance_aid": "AID of the instance that will be selected. Mandatory for install operation.", "aid": "Applet ID. Used for install/delete operation to install/delete specified applet.", "delete_related_objects": "true/false. If true will delete all the related modules/instances to the specified AID. Format: bool. Default true.", "toolkit_parameters": "sim/uicc or empty string. Used to install a STK/USAT applet.", "access_domain": "Access Domain used to install a STK applet. Size: 1 byte. Format: hex. Default value: FF.", "priority_level": "Priority Level. Size 1 byte. Format hex. Default value: 01.", "max_timers": "Maximum Timers. Size 1 byte. Decimal value (0 - 255). Default value: 0", "max_menu_entry_text": "Maximum Menu Entry Text. Size 1 byte. Decimal value (0 - 255). Default value: 16.", "max_menu_entries": "Maximum Menu Entries. Size 1 byte. Decimal value (0 - 255). Default value: 1.", "multi_tar": "Assign one more more TARs to an applet by separating them with ','.", "max_nr_services": "Maximum Number of Services. Size 1 byte. Decimal Value (0 - 255). Default value: 0.", "uicc_access_app": "UICC Access Application. Format Hex.", "uicc_admin_access_app": "UICC Administrative Access Application. Format Hex.", "app_parameters": "Application Parameters. Format Hex.", "applet": "Content of .CAP file base64 encoded or applet_name (if the applet already exists on the server).", "applet_name": "Name of the applet. Optional. Used for load operation to save the applet on server with the specified name, otherwise it will be saved as 'applet_{timestamp}.cap'", "tlv": "true/false. Used for list operations to receive the response (PoR) in TLV format. Default: false.", "first": "true/false. Used for list_packages/list_applets to receive in response the first set of packages/applets or the next sets.", "tar": "TAR of the targeting applet, it will override the profile TAR. Used only for the 'custom' operation to communicate with the applet. (Hexadecimal 3 bytes)", "data": "Hexadecimal string that will be send to the applet. Used only for the 'custom' operation." } ] } ] } }
Responses
{ "code": 0, "messages": { "uds": [ "ud1", "ud2" ], "apdus": [ "apdu1", "apdu2" ], "comment__apdus": "Object 'apdus' will be received only for the RFM commands." } }
Errors
{ "code": 402, "message": "Missing required apdus/commands field." }
{ "code": 401, "message": "No SIM profile found." }
{ "code": 401, "message": "Invalid value 'apdu' set in field 'apdus'." }
{ "code": 500, "message": "Missing apdus in lib response." }
{ "code": 402, "message": "Missing 'operation' field inside 'commands' object." }
Examples: generate_uds
Generate UD(s) and APDU(s) for every participant.
It updates the first 2 bytes of EF 6F05 with value 'AABB'.
It updates the first 2 bytes of EF 6F05 with value 'AABB'.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RFM", "tar_type": "usim", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "app": "gsm", "batch": [ { "addr": "6F05", "values": "AABB" } ] } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000381516211515B000100727B0395DE99FC0CC86E2C7C864F9445C0FB8BC6AD10F0BED7495573F35C4B1333DAE63CF0D8BB84F6D350A70B262FB" ] ], "apdus": [ "00A40004023F00", "00A40004027F20", "00A40004026F05", "00D6000002AABB" ] } }
Generate UD(s) and APDU(s) for every participant.
It finds the differences between old value and new value and updates EF 4F20 in DF 5F3B under USIM.
It finds the differences between old value and new value and updates EF 4F20 in DF 5F3B under USIM.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RFM", "tar_type": "usim", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "profile": "Elatec_new", "app": "usim", "batch": [ { "addr": [ "5F3B", "4F20" ], "values": { "old": "C6B5A841AC6DEC9500", "new": "C6B5A841AC6DEE9500" } } ] } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000301516211515B00001FDE9C49538C606C8691EFD338A0F16CA7BDAB6D3A91E716318ED3240818256DC97A623D0935E0CA4" ] ], "apdus": [ "00A40004025F3B", "00A40004024F20", "00D6000601EE" ] } }
Generate UD(s) and APDU(s) for every participant.
It updates 3 records in EF 6F42 under Telecom.
It updates 3 records in EF 6F42 under Telecom.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RFM", "tar_type": "sim", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "app": "telecom", "batch": [ { "addr": "6F42", "values": { "1": "FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF0591880200F3FFFFFFFFFFFFFFFFFF", "2": "FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF069169830840F4FFFFFFFFFFFFFFFF", "3": "FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF0591880200F3FFFFFFFFFFFFFFFFFF" } } ] } } }
Response
{ "code": 0, "messages": { "uds": [ [ "070003310201700000B81516211515B00010E636A1CF9FBD28D779B719070F6E218DDE0D470F1BC12377A6EE9CFE0131C712D65CCD318DCFAFF68CF534E635B6B23F7088C64EFBCE703466F7A9CF392A8F692327C431CE3DF6324525C0D10C2033430342C4EF15C88BE5E62A0D494144491F32020C23D8A77809A1EAE7242E00134B3B6099B7A53DF9FC5C18", "050003310202758423D3C4EDE7E39412B48D947E76F4F9AD41EDE6D184D25A21CBFC0AA5E87974A91167E9E2396AB0E89F17185E2824D180E54D4068" ] ], "apdus": [ "00A40004023F00", "00A40004027F10", "00A40004026F42", "00DC010428FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF0591880200F3FFFFFFFFFFFFFFFFFF", "00DC020428FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF069169830840F4FFFFFFFFFFFFFFFF", "00DC030428FFFFFFFFFFFFFFFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF0591880200F3FFFFFFFFFFFFFFFFFF" ] } }
Generate UD(s) for every participant by specifying APDUs.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RFM", "tar_type": "usim", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "apdus": [ "00A40004026F42", "00DC0104260581880205F3FFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF0581880205F3FFFFFFFFFFFFFFFFFF", "00A40004026F46", "00D60000110054657374FFFFFFFFFFFFFFFFFFFFFFFF" ] } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000681516211515B00001E34B45BA7930C9191268FDB905AB2F315FB4E29E13D506D040874DB6DA4C9DB21640587297740C6121F817C3C9558AFCE1687EF6D588FF36AC2C2CA9A7ED1942987BCE68D48669C34FE57202AD0AA85C206628F6FD8BB4719AE39A36C2D916EA" ] ], "apdus": [ "00A40004026F42", "00DC0104260581880205F3FFFFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF0581880205F3FFFFFFFFFFFFFFFFFF", "00A40004026F46", "00D60000110054657374FFFFFFFFFFFFFFFFFFFFFFFF" ] } }
Generate UD(s) for every participant to delete an applet and all the related objects to it from the SIM.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "delete", "parameters": { "aid": "D07002CA449001", "delete_related_objects": true } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000281516211515000000156A9BDB5ECE21F9693DC05AD7777F20EF6BFEA40E14BB17235B8FBF5A01F6A4" ] ] } }
Generate UD(s) for every participant to load an applet on SIM by specifying the base64 encoded content.
Save the applet on server with applet name 'TestApplet.cap'.
Save the applet on server with applet name 'TestApplet.cap'.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "load", "parameters": { "volatile_data_size": 0, "non_volatile_data_size": 0, "applet": "UEsDBAoAAAgAAJh7gU4pOAUWFAAAABQAAAAnAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9IZWFkZXIuY2FwAQAR3sr/7QECBAABB9BwAspEkAFQSwMECgAACAAAmHuBTo6jB2YiAAAAIgAAACoAAABvcmcvc3M3d2FyZS9TUzdXYXJlL2phdmFjYXJkL0RpcmVjdG9yeS5jYXACAB8AEQAfAAwAHgBCABgAbQAkABcAAACpAAQAAgAUAgEAUEsDBAoAAAgAAJh7gU6btFc/DwAAAA8AAAAnAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9BcHBsZXQuY2FwAwAMAQjQcALKRJABAQAgUEsDBAoAAAgAAJh7gU7O5gsCIQAAACEAAAAnAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9JbXBvcnQuY2FwBAAeAgABB6AAAABiAQEGAhCgAAAACQAD/////4kQcQACUEsDBAoAAAgAAJh7gU4NmmYIRQAAAEUAAAAtAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9Db25zdGFudFBvb2wuY2FwBQBCABACAAAABoEJAAUAAAIDgQkLBoADAAEAAAAGAAABA4ADAQOAAwMGgQgAA4EIDAYAAFMGgQoABQAAAAOBChMDgQoWUEsDBAoAAAgAAJh7gU7NjbEeGwAAABsAAAAmAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9DbGFzcy5jYXAGABhDgAMB/wAHAgAAAC8AOYACAIEBAQiBAABQSwMECgAACAAAmHuBTmqFhx1wAAAAcAAAACcAAABvcmcvc3M3d2FyZS9TUzdXYXJlL2phdmFjYXJkL01ldGhvZC5jYXAHAG0ACREYjAAEjQABLBgZewACA3sAApIQJAMDA4sAA4gAegIxjwAFPYwABi4biwAHegEgGIsACGADenoCIo0ACS0dEAdrEBqLAAoyH64AawYYjAALegYRjQAMLBkDB3sADQN7AA2SiwAOGYsADzt6UEsDBAoAAAgAAJh7gU6sTtE8JwAAACcAAAAsAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9TdGF0aWNGaWVsZC5jYXAIACQABAACAAIDAApJdCB3b3JrcyAhAwAKQ2xpY2sgbWUgIQAAAABQSwMECgAACAAAmHuBToW/j7EaAAAAGgAAACwAAABvcmcvc3M3d2FyZS9TUzdXYXJlL2phdmFjYXJkL1JlZkxvY2F0aW9uLmNhcAkAFwACHi0AEQUDBgQJCAQFBwkKCgYHBAQEUEsDBAoAAAgAAJh7gU4Za3X6rAAAAKwAAAArAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9EZXNjcmlwdG9yLmNhcAsAqQEAAQAAAwADAAWAAoEBgQD/CAAAAAAo/wgAAAIAKAACAAAAgAP/ggABAC8AHQAAAAAACQAgAD8ADQAAAAAHAQAvAEIACAAAAAAIAQA5AEYAGAAAAAD/AgBTAC8AGAAAAAAAEAAiACQAKAAqAC///wAvAC8AMQAzACIALwA3ACgAOwAiATAFaBCQAbAItEMjQwEQASAFaBCABWgQoAYztEEEtDEGaAChAjFQSwECCgAKAAAIAACYe4FOKTgFFhQAAAAUAAAAJwAAAAAAAAAAAAAAAAAAAAAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9IZWFkZXIuY2FwUEsBAgoACgAACAAAmHuBTo6jB2YiAAAAIgAAACoAAAAAAAAAAAAAAAAAWQAAAG9yZy9zczd3YXJlL1NTN1dhcmUvamF2YWNhcmQvRGlyZWN0b3J5LmNhcFBLAQIKAAoAAAgAAJh7gU6btFc/DwAAAA8AAAAnAAAAAAAAAAAAAAAAAMMAAABvcmcvc3M3d2FyZS9TUzdXYXJlL2phdmFjYXJkL0FwcGxldC5jYXBQSwECCgAKAAAIAACYe4FOzuYLAiEAAAAhAAAAJwAAAAAAAAAAAAAAAAAXAQAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9JbXBvcnQuY2FwUEsBAgoACgAACAAAmHuBTg2aZghFAAAARQAAAC0AAAAAAAAAAAAAAAAAfQEAAG9yZy9zczd3YXJlL1NTN1dhcmUvamF2YWNhcmQvQ29uc3RhbnRQb29sLmNhcFBLAQIKAAoAAAgAAJh7gU7NjbEeGwAAABsAAAAmAAAAAAAAAAAAAAAAAA0CAABvcmcvc3M3d2FyZS9TUzdXYXJlL2phdmFjYXJkL0NsYXNzLmNhcFBLAQIKAAoAAAgAAJh7gU5qhYcdcAAAAHAAAAAnAAAAAAAAAAAAAAAAAGwCAABvcmcvc3M3d2FyZS9TUzdXYXJlL2phdmFjYXJkL01ldGhvZC5jYXBQSwECCgAKAAAIAACYe4FOrE7RPCcAAAAnAAAALAAAAAAAAAAAAAAAAAAhAwAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9TdGF0aWNGaWVsZC5jYXBQSwECCgAKAAAIAACYe4FOhb+PsRoAAAAaAAAALAAAAAAAAAAAAAAAAACSAwAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9SZWZMb2NhdGlvbi5jYXBQSwECCgAKAAAIAACYe4FOGWt1+qwAAACsAAAAKwAAAAAAAAAAAAAAAAD2AwAAb3JnL3NzN3dhcmUvU1M3V2FyZS9qYXZhY2FyZC9EZXNjcmlwdG9yLmNhcFBLBQYAAAAACgAKAGgDAADrBAAAAAA=", "applet_name": "TestApplet.cap" } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "027000003015162115150000007B3A7021E40E0605D7E4CDA05D333E091E848F772DE8721992C511D2A2DFCE3C49D5A455CC04D5DC", "027000007815162115150000003E5FC3862123D2F5B66EC707EED7F16D76D91E9806EDA0F8CFED904F5E2D231428488783435A774A969179D384C1D77A4C1AC59B330F852973A5AF91B80536B6F584C7309D85A5207F51EE2FBE8D14EBB5F73388577A2AFCB28CD85C4B2AB3BC1860475A445582946FC4F73AC645BC13", "027000007815162115150000004C88A0D0B94181FF621CD120C14373DF0843A2D15CA8CE9D255C2A189344D6F1E3BDAAA96C6365575A79A725E587F77D813F7EE7050DECE45D12A5F47CF93738FD2E8FC304D023CCEE5546605A7E527822A9BF59C124D391FC2BCEB892B11CB39FBCA9622EF0950BD6A9C54CEC055849", "02700000781516211515000000B47DCDD325F95C92C9EE85019C13160F63DE87BFD14F4BE62D9268B5DD4D59F40DC5C5C7D9FC4FEE556F9B118F4A43FD3D28167730B39C9D15EA63859B035122616119F8CA1BB884B6D3208632BDC7E1CF6BF46E97A50EBA16A7FA7668E71F8F704471E8515D9C7E517283CF0BB9397E", "027000007815162115150000007E8BC93323B1DA0611715EB1B6D7EBA13938168CC8A20678A2BF576D1928C0786ADC6EA93201AE4CCB5D612F65374B25DA6DC190DF72A231E108D28613FDDE8AAADC821A8EA832D885FD973EA18C7696A6EE33051465504434176E77C539C3CF59A2390C45714D437C95ADE4A5DE3D19", "02700000301516211515000000FB434BD740DE23F4992B44ACD21223BD04C8EED6547DC505EB72722461BCB15FA5BAC96B01E8E7A7" ] ] } }
Generate UD(s) for every participant to load an existing applet from the server on SIM by specifying the applet name 'TestApplet.cap'.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "load", "parameters": { "volatile_data_size": 0, "non_volatile_data_size": 0, "applet": "TestApplet.cap" } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "027000003015162115150000007B3A7021E40E0605D7E4CDA05D333E091E848F772DE8721992C511D2A2DFCE3C49D5A455CC04D5DC", "027000007815162115150000003E5FC3862123D2F5B66EC707EED7F16D76D91E9806EDA0F8CFED904F5E2D231428488783435A774A969179D384C1D77A4C1AC59B330F852973A5AF91B80536B6F584C7309D85A5207F51EE2FBE8D14EBB5F73388577A2AFCB28CD85C4B2AB3BC1860475A445582946FC4F73AC645BC13", "027000007815162115150000004C88A0D0B94181FF621CD120C14373DF0843A2D15CA8CE9D255C2A189344D6F1E3BDAAA96C6365575A79A725E587F77D813F7EE7050DECE45D12A5F47CF93738FD2E8FC304D023CCEE5546605A7E527822A9BF59C124D391FC2BCEB892B11CB39FBCA9622EF0950BD6A9C54CEC055849", "02700000781516211515000000B47DCDD325F95C92C9EE85019C13160F63DE87BFD14F4BE62D9268B5DD4D59F40DC5C5C7D9FC4FEE556F9B118F4A43FD3D28167730B39C9D15EA63859B035122616119F8CA1BB884B6D3208632BDC7E1CF6BF46E97A50EBA16A7FA7668E71F8F704471E8515D9C7E517283CF0BB9397E", "027000007815162115150000007E8BC93323B1DA0611715EB1B6D7EBA13938168CC8A20678A2BF576D1928C0786ADC6EA93201AE4CCB5D612F65374B25DA6DC190DF72A231E108D28613FDDE8AAADC821A8EA832D885FD973EA18C7696A6EE33051465504434176E77C539C3CF59A2390C45714D437C95ADE4A5DE3D19", "02700000301516211515000000FB434BD740DE23F4992B44ACD21223BD04C8EED6547DC505EB72722461BCB15FA5BAC96B01E8E7A7" ] ] } }
Generate UD(s) for every participant to install a STK applet that is already loaded on SIM.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "install", "parameters": { "aid": "D07002CA449001", "module_aid": "D07002CA44900101", "instance_aid": "D07002CA449001", "toolkit_parameters": "sim", "access_domain": "00", "priority_level": "01", "max_timers": "05", "max_menu_entry_text": "10", "max_menu_entries": "3", "app_parameters": "50505050", "multi_tar": "A0A1A2,A3A4A5" } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000601516211515000000DBF78596E0A7707551F40CD5247AF0102113C948000E03C60D2A2B40471B497CF7A0B8E0B84EE9C29396C320AF526A25CCC8DEFFFCF0C614BDEB32D2F4B98F90EEDD912F33C86ED88A9F1A8DCBBDA77958375FB9AA77E41B" ] ] } }
Generate UD(s) for every participant to load and install a STK applet on SIM.
The applet already exists on the server as 'TestApplet.cap'.
The applet already exists on the server as 'TestApplet.cap'.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "load_install", "parameters": { "module_aid": "D07002CA44900101", "instance_aid": "D07002CA449001", "toolkit_parameters": "sim", "access_domain": "00", "priority_level": "01", "max_timers": "05", "max_menu_entry_text": "10", "max_menu_entries": "3", "app_parameters": "50505050", "multi_tar": "A0A1A2,A3A4A5", "applet": "TestApplet.cap", "comment_applet": "The 'applet' parameter can contain the base64 encoded applet" } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "027000003015162115150000007B3A7021E40E0605D7E4CDA05D333E091E848F772DE8721992C511D2A2DFCE3C49D5A455CC04D5DC", "027000007815162115150000003E5FC3862123D2F5B66EC707EED7F16D76D91E9806EDA0F8CFED904F5E2D231428488783435A774A969179D384C1D77A4C1AC59B330F852973A5AF91B80536B6F584C7309D85A5207F51EE2FBE8D14EBB5F73388577A2AFCB28CD85C4B2AB3BC1860475A445582946FC4F73AC645BC13", "027000007815162115150000004C88A0D0B94181FF621CD120C14373DF0843A2D15CA8CE9D255C2A189344D6F1E3BDAAA96C6365575A79A725E587F77D813F7EE7050DECE45D12A5F47CF93738FD2E8FC304D023CCEE5546605A7E527822A9BF59C124D391FC2BCEB892B11CB39FBCA9622EF0950BD6A9C54CEC055849", "02700000781516211515000000B47DCDD325F95C92C9EE85019C13160F63DE87BFD14F4BE62D9268B5DD4D59F40DC5C5C7D9FC4FEE556F9B118F4A43FD3D28167730B39C9D15EA63859B035122616119F8CA1BB884B6D3208632BDC7E1CF6BF46E97A50EBA16A7FA7668E71F8F704471E8515D9C7E517283CF0BB9397E", "027000007815162115150000007E8BC93323B1DA0611715EB1B6D7EBA13938168CC8A20678A2BF576D1928C0786ADC6EA93201AE4CCB5D612F65374B25DA6DC190DF72A231E108D28613FDDE8AAADC821A8EA832D885FD973EA18C7696A6EE33051465504434176E77C539C3CF59A2390C45714D437C95ADE4A5DE3D19", "02700000301516211515000000FB434BD740DE23F4992B44ACD21223BD04C8EED6547DC505EB72722461BCB15FA5BAC96B01E8E7A7", "02700000601516211515000000853F3380A18A5420013F1098808A0ED09917C787C11388AECF094C50BA4692C59D69712A0E7FC95FA4B29B9E489AA16C88977AFB64D07DEE0E76B7355990C70596B7C95DDACFF5A7648DA9E5CE035677A23CAB0B66FBC30F" ] ] } }
Generate UD(s) for every participant to delete,load and install a STK applet on SIM.
The applet already exists on the server as 'TestApplet.cap'.
The applet already exists on the server as 'TestApplet.cap'.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "delete_load_install", "parameters": { "delete_related_objects": true, "module_aid": "D07002CA44900101", "instance_aid": "D07002CA449001", "toolkit_parameters": "sim", "access_domain": "00", "priority_level": "01", "max_timers": "05", "max_menu_entry_text": "10", "max_menu_entries": "3", "app_parameters": "50505050", "multi_tar": "A0A1A2,A3A4A5", "applet": "TestApplet.cap", "comment_applet": "The 'applet' parameter can contain the base64 encoded applet" } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000281516211515000000156A9BDB5ECE21F9693DC05AD7777F20EF6BFEA40E14BB17235B8FBF5A01F6A4", "027000003015162115150000006051EF6EA5A97FC69834F67D4746A5F46CE69F6EF7F3B90A73FE19204644044308EF0E87879928BE", "027000007815162115150000007AD2C5E24EA0B1DDE4737ABF02D59B52925DC645C665CC7ED6A3A476B6BF790864CEC9E0D7120D2CBFCF77FF4BE11CE61C2FCDCC4D10F608AC0E4EAE8565D4601757AA521E0F7C276362339380FEE22CF486BF13D9DC1D2493E3FF5458EE58D91F3D639E81C4D90EAEC0EEC15F174BD3", "027000007815162115150000008BCD9BF6BBE93109EE4F263EE6D429028657D52DAAE1A8DF146F69A9B1460307EF2C086F7F0722A9D0DB8B36792087FF93328ACE5DDA208824890CDC88B1509D38D8623416AB658F99BE081A7B6DEBABB1BDDC5D66FCAC4496D4113FB9C01E1944D89BB6BBE08AB76678AFABC03DDB18", "02700000781516211515000000CF20DB522AC1DAB4E982320BDD31B583083A4E040855712D735F9791D88293750C942F178E15E64FC793F3CC93010D8EB74290B6ECE454E321690DC77A02E359774F1BC468D7A8F5716112C305EB0E4785B5B894DEC573C853A2D1FDFD4B162D73FD55AB8F0E5C941939785AA7E99958", "02700000781516211515000000C3B400B4D835DC7C518D48840EAB2B391BB2DD6BDEF0F05E8539C66FA15BB26A46BDE58CDECCCEAD23F021C7D558633A577BD54AEB3A65B353BA35A7EA74C5EF03F33763D07415026EEF89B417C29CCDDB9ECDD328BFF6A8875741DDADDB50274ECF0D3DC913FADD24D289EB48C8D815", "02700000301516211515000000CD077B62CF6F5A821917DD824A908CDC5EDD71021E03DC80B1A72FE9F7F8ABE5D04110C62FFADD9A", "0270000060151621151500000090CFF640A921D35D7D9C88A756E855E1A3267DCA88BC0FA63888939D2B7800E6EF997D874F10C8EAAC684BADF007517365847421D1B74925F7E7D52959CB0C47FCF50F2DA96D02AC9E5C9F85F7C2CF99313A3C837649BE65" ] ] } }
Generate UD(s) for every participant to send a custom applet command to a specific applet on the SIM.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "applet", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "custom", "parameters": { "tar": "A0A1A2", "data": "00A40004023F0000A40004027F2000A40004026F4600D6000011004D79546573744E6574776F726BFFFFFF" } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000481516211515A0A1A289A7820E37A0B0A2AE8C8EB058A93D2D2977F0A9B2184E71EA610E3C256A7DF9D9936012A0BB70B0EF0E51C241FD5CF0A3485D41E94AAC4318A2B1660F6496BC" ] ] } }
Generate UD(s) for every participant to list ISD from the SIM.
Without any parameters specified, the response will not be in TLV format.
Without any parameters specified, the response will not be in TLV format.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "list_isd" } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000281516211515000000E8470AA04D57A9C21E6387115028060B31B2FFF4A4A3377A649FA921A62D0D54" ] ] } }
Generate UD(s) for every participant to list ISD from the SIM.
Specify the response to be in TLV format.
Specify the response to be in TLV format.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "list_isd", "parameters": { "tlv": true } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "027000002815162115150000003F5EE7A5B2A2AD26346288D59DBEBBAEE210E625FD4EB4D070C24C1904F1A656" ] ] } }
Generate UD(s) for every participant to list the packages from the SIM.
Without any parameters the response will not be in TLV format and retrieve only the first set of the packages.
Without any parameters the response will not be in TLV format and retrieve only the first set of the packages.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "list_packages" } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000281516211515000000FE16579F647906710C5A63186BDBBAAB1D0CEB16A83C7B78BEBC31EC4529E64B" ] ] } }
Generate UD(s) for every participant to list the packages from the SIM.
Specify the response to be in TLV format and retrieve the next set of the packages.
Specify the response to be in TLV format and retrieve the next set of the packages.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "list_packages", "parameters": { "tlv": true, "first": false } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000281516211515000000B42EF94A545DF3316C29F4A51E4A5DA55625A82DB5C2B9489E87B537F7DD43D7" ] ] } }
Generate UD(s) for every participant to list the applets from the SIM.
Without any parameters the response will not be in TLV format and retrieve only the first set of the applets.
Without any parameters the response will not be in TLV format and retrieve only the first set of the applets.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "list_applets" } } }
Response
{ "code": 0, "messages": { "uds": [ [ "02700000281516211515000000D214F24C75D4E6CAAC9C022150EAAB0BFD4C308EB3B2313370BEAB35525FC9A8" ] ] } }
Generate UD(s) for every participant to list the applets from the SIM.
Specify the response to be in TLV format and retrieve the next set of the applets.
Specify the response to be in TLV format and retrieve the next set of the applets.
Request
{ "request": "generate_uds", "node": "ota", "params": { "type": "RAM", "tar_type": "ram", "participant": [ { "kic": "86ADE6DAF787FF199ACB51FFA118F765", "kid": "D6490DCB0EC849A66E43A455916D7DC0", "kik": "DEEACC5323A3FCE76EB3691F0676DFC0", "ota_counter": "000000005e", "ota_profile": { "cla": "80", "spi": "1621", "kid": "15", "kic": "15", "tar_ram": "000000", "tar_rfm_sim": "b00010", "tar_rfm_usim": "b00001", "tar_rfm_isim": "b00020" } } ], "commands": { "operation": "list_applets", "parameters": { "tlv": true, "first": false } } } }
Response
{ "code": 0, "messages": { "uds": [ [ "027000002815162115150000004EB3849530F03C768513C9818268DBCED3B53B4E2972281ABF231F93612E36F0" ] ] } }
Request: generate_apdus
Generate partial APDUs
Requests
{ "request": "generate_apdus", "node": "ota", "params": { "profile": "String. Optional. SIM profile to use, otherwise default SIM profile is used.", "partial_apdus": "Array of APDUs and patters that will be replaced. Pattern format: ${pattern}", "replacements": { "${pattern}": { "app": "String. Name of the SIM app. Default is gsm.", "file": "Short name of the file.", "value": "Human readable value." } } } }
Responses
{ "code": 0, "apdus": "Array of APDUs." }
Errors
{ "code": 401, "message": "Could not translate to batch. Details: Could not find EF 'Test' under sim files library. Path:gsm/IMSID" }
{ "code": 402, "message": "Missing required field 'partial_apdus'" }
{ "code": 402, "message": "Missing required object field 'replacements'" }
Examples: generate_apdus
Generate APDU(s) for every participant by specifying partial APDUs.
Request
{ "request": "generate_apdus", "node": "ota", "params": { "profile": "Altecom", "partial_apdus": [ "00A40004026F46", "00D60000110054657374FFFFFFFFFFFFFFFFFFFFFFFF", "00A40004026F07", "${imsi_pattern}" ], "replacements": { "imsi_patern": { "app": "usim", "file": "imsi", "value": "001015190010489" } } } }
Response
{ "code": 0, "apdus": [ "00A40004026F46", "00D60000110054657374FFFFFFFFFFFFFFFFFFFFFFFF", "00A40004026F07", "00D6000009080910101509104098" ] }
Request: decode_por
Decode PoR(Proof of Receipt) to understand the response returned by the RE(Receiving Entity).
Requests
{ "request": "decode_por", "node": "ota", "params": { "por": "Hexadecimal string. Value returned by RE.", "kic": "Hexadecimal string, length: 8/16/24 bytes. Key value used in ciphering data.", "ota_profile": { "spi": "Hexadecimal string, length: 2 bytes. Security Parameter Indicator.", "kic": "Hexadecimal string, length: 1 byte. Keyset and algorithm used in ciphering data." } } }
Responses
{ "code": 0, "por_decoded": { "rsc": "Response Status Code. Indicates that a message has been received (correctly or incorrectly, indicating the reason for failure).", "comment__rsc": "If RSC is '00' OTA counter will increment, otherwise OTA counter remains the same.", "rsc_decoded": "Decoded RSC in human-readable format.", "nr_commands_executed": "Number of commands executed.", "nr_commands_executed_int": "Number of commands exectued in integer format.", "sw": "Status Word. Indicates if the RFM/RAM command was executed successfully or not.", "sw_decoded": "Decoded SW in human-readable format.", "additional_data": "Additional Hexadecimal Data returned by RE." } }
Errors
{ "code": 401, "message": "Invalid value '3E2561E5FB6E941C321302F2919267DFQ' for 'kic'. Should be hexadecimal." }
{ "code": 401, "message": "Invalid value '02710000000' for 'por'. Should be hexadecimal and at least 15 bytes long." }
{ "code": 402, "message": "Missing all parameters." }
{ "code": 402, "message": "Missing required 'por' field." }
{ "code": 500, "message": "Missing por_decoded in lib response." }
Examples: decode_por
Successful response (RSC = 00, SW = 9000)
Request
{ "request": "decode_por", "node": "ota", "params": { "por": "027100000e0ab0001000000000940000069000", "kic": "3E2561E5FB6E941C321302F2919267DF", "ota_profile": { "spi": "1621", "kic": "15" } } }
Response
{ "code": 0, "por_decoded": { "rsc": "00", "rsc_decoded": "PoR OK", "nr_commands_executed": "06", "nr_commands_executed_int": "6", "sw": "9000", "sw_decoded": "Success", "additional_data": false } }
Unsuccessful Response. Counter verification failed (RSC = 02) => OTA counter is not incremented when RSC fails
Request
{ "request": "decode_por", "node": "ota", "params": { "por": "027100000b0ab0001000000000000002", "kic": "3E2561E5FB6E941C321302F2919267DF", "ota_profile": { "spi": "1621", "kic": "15" } } }
Response
{ "code": 0, "por_decoded": { "rsc": "02", "rsc_decoded": "CNTR LOW", "nr_commands_executed": "00", "nr_commands_executed_int": "0", "sw": false, "sw_decoded": false, "additional_data": false } }
Unsuccessful Response: File not found on SIM (RSC = 00, SW = 06)
Request
{ "request": "decode_por", "node": "ota", "params": { "por": "027100000e0ab0001000000000950000016a82", "kic": "3E2561E5FB6E941C321302F2919267DF", "ota_profile": { "spi": "1621", "kic": "15" } } }
Response
{ "code": 0, "por_decoded": { "rsc": "00", "rsc_decoded": "PoR OK", "nr_commands_executed": "01", "nr_commands_executed_int": "1", "sw": "6a82", "sw_decoded": "Application/File not found", "additional_data": false } }
This documentation was generated on 23 September 2023