Export Device Decryption Passwords

Overview

This endpoint exports device decryption password information based on specified search criteria and sends the results to designated email recipients. The export includes configurable columns with custom logic fields for data transformation.

Permissions: INBOUND, MAINTENANCE, VALUE_ADDED

Request Body

This endpoint accepts a JSON body with the following structure:

Root Parameters

ParameterTypeRequiredDescription
entityTypestringYesThe type of entity to export. Use "device" for device exports
accountIdintegerYesThe account ID for which to export data
hierLevelstringNoHierarchical level filter (empty string for all levels)
channelTypestringYesChannel type filter. Example: "INBOUND,MAINTENANCE,VALUE_ADDED"
actionTypestringYesThe type of export action. Use "deviceDecryptionPasswordExport" for password exports
emailRecipientsarrayYesList of email addresses to receive the export file

Export Columns

The exportColumns object defines which fields to include in the export and their display names:

{
  "esn": "ESN",
  "keyValueHex": "KeyValueHex",
  "keyValueBase64": "KeyValueBase64",
  "channel": "Channel",
  "type": "Type",
  "size": "Size",
  "crypto": "Crypto"
}

Available Columns:

  • esn - Electronic Serial Number
  • keyValueHex - Decryption key in hexadecimal format
  • keyValueBase64 - Decryption key in Base64 format
  • channel - Communication channel information
  • type - Device or key type
  • size - Key size information
  • crypto - Cryptographic algorithm details

Search Criteria

The searchCriteria object uses smart search functionality:

{
  "smartSearch": {
    "search": {
      "accountId": 2,
      "queryString": "(esn: (*))"
    }
  }
}

Parameters:

  • accountId - Account ID to search within
  • queryString - Lucene-style query string for filtering devices
    • (esn: (*)) - Matches all devices with any ESN
    • You can customize this to filter specific devices, e.g., (esn: (ABC123*))

Custom Logic Fields

The customLogicFields object contains JavaScript functions for transforming data before export. Each field corresponds to an export column:

{
  "esn": "module.exports = () => { return dataList... }",
  "keyValueHex": "module.exports = () => { return dataList... }",
  "keyValueBase64": "module.exports = () => { return dataList... }",
  "channel": "module.exports = () => { return dataList... }",
  "type": "module.exports = () => { return dataList... }",
  "size": "module.exports = () => { return dataList... }",
  "crypto": "module.exports = () => { return dataList... }"
}

These functions allow you to:

  • Format data before export
  • Apply business logic transformations
  • Filter or modify values dynamically

Response

The endpoint typically returns:

  • Success (200): Confirmation that the export has been initiated and will be sent to the specified email recipients
  • Error (4xx/5xx): Error details if the export fails

The actual export file will be delivered via email to the addresses specified in emailRecipients.

Use Cases

1. Export All Device Passwords for an Account

Export decryption passwords for all devices in a specific account for backup or migration purposes.

2. Selective Device Export

Use the queryString parameter to filter specific devices by ESN pattern or other criteria.

3. Multi-Format Key Export

Export keys in both hexadecimal and Base64 formats for compatibility with different systems.

4. Audit and Compliance

Generate reports of device encryption keys for security audits or compliance requirements.

Example Request

{
  "entityType": "device",
  "accountId": 2,
  "exportColumns": {
    "esn": "ESN",
    "keyValueHex": "KeyValueHex",
    "keyValueBase64": "KeyValueBase64",
    "channel": "Channel",
    "type": "Type",
    "size": "Size",
    "crypto": "Crypto"
  },
  "hierLevel": "",
  "searchCriteria": {
    "smartSearch": {
      "search": {
        "accountId": 2,
        "queryString": "(esn: (*))"
      }
    }
  },
  "channelType": "INBOUND",
  "actionType": "deviceDecryptionPasswordExport",
  "emailRecipients": [
    "[email protected]",
    "[email protected]"
  ],
  "customLogicFields": {
    "esn": "module.exports = () => { return dataList.map(item => item.esn); }",
    "keyValueHex": "module.exports = () => { return dataList.map(item => item.keyHex); }"
  }
}

Notes

  • Ensure you have proper permissions to export device decryption passwords
  • The export process may take time for large datasets
  • Email delivery depends on the configured email service
  • Custom logic fields are optional but provide powerful data transformation capabilities
  • Always validate email recipients before initiating the export
Language
Credentials
Click Try It! to start a request and see the response here!