---
canonical_url: "https://docs.composio.dev/toolkits/devolens"
markdown_url: "https://docs.composio.dev/toolkits/devolens.md"
product: "platform"
version: null
last_updated: null
---

# Devolens / Cryptolens

Devolens provides the Cryptolens software licensing API for managing products, license keys, customers, usage analytics, and entitlements.

- **Category:** developer tools
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 10
- **Triggers:** 0
- **Slug:** `DEVOLENS`
- **Version:** 00000000_00

## Tools

### Get License Key

**Slug:** `DEVOLENS_GET_LICENSE_KEY`

Retrieve one license key and optional activation metadata by its product ID and key string. The token must enable the Get Key method.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `product_id` | integer | Yes | Product ID that owns the license key. |
| `license_key` | string | Yes | License key string to retrieve. |
| `include_metadata` | boolean | No | Include activation and device-count metadata when available. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Customers

**Slug:** `DEVOLENS_LIST_CUSTOMERS`

Search or list customers visible to the connected Cryptolens account, including reseller-visible customer groups returned by the API. The token must enable the Get Customers method.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of customers to return; omit to use the provider's unbounded default. |
| `search` | string | No | Text matched against customer name, company, email, or secret. |
| `customer_id` | integer | No | Exact numeric customer ID to retrieve. |
| `newest_first` | boolean | No | Sort newer customers first. |
| `include_id_in_search` | boolean | No | Also allow a numeric search string to match customer IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Daily Usage Aggregates

**Slug:** `DEVOLENS_LIST_DAILY_USAGE_AGGREGATES`

Return one page of daily Cryptolens usage aggregates, optionally filtered by product and inclusive date range. Pass next_cursor back with the same filters to continue forward. The token must enable the Usage Analytics method group.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum aggregate records in this page (1-1000). |
| `end_date` | string | No | Inclusive end date in YYYY-MM-DD format. |
| `product_id` | integer | No | Only return aggregates for this product ID. |
| `start_date` | string | No | Inclusive start date in YYYY-MM-DD format. |
| `next_cursor` | integer | No | Forward cursor returned by the previous call. Omit for the first page; repeat the same filters when continuing. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List License Keys

**Slug:** `DEVOLENS_LIST_LICENSE_KEYS`

List and search one page of license keys for a Cryptolens product. Call List Products first when the product ID is unknown, then pass next_cursor back to continue through additional pages. The token must enable the Get Keys method.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `order_by` | string | No | Sort by a field name followed by ascending or descending, for example 'Created descending'. Ascending is optional. Common fields include ID, Created, Expires, Period, F1-F8, and Block. |
| `global_id` | integer | No | Exact numeric license-key global ID for a faster lookup within the product. |
| `product_id` | integer | Yes | Product ID whose license keys should be returned. |
| `next_cursor` | integer | No | Page cursor from a previous response; use 1 for the first page. |
| `search_query` | string | No | Cryptolens license filter. Use comparisons such as 'id < 10', 'key.contains("ITVBC")', 'created >= yesterday', 'f1 = true', 'block = false', or 'customer.email = "user@example.com"'. Combine conditions with 'and' or 'or'; field names are case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List License Templates

**Slug:** `DEVOLENS_LIST_LICENSE_TEMPLATES`

Return the license templates available to the connected Cryptolens account. The token must enable the Get License Templates method.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List License Users

**Slug:** `DEVOLENS_LIST_LICENSE_USERS`

Return registered Cryptolens license users, optionally limited to one customer. The token must enable the UserAuthAdmin method group.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `customer_id` | integer | No | Only return users associated with this numeric customer ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Messages

**Slug:** `DEVOLENS_LIST_MESSAGES`

Return Cryptolens account messages, optionally filtered by channel or creation time. The token must enable the Get Messages method.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `channel` | string | No | Only return messages from this channel. |
| `created_after` | integer | No | Only return messages created strictly after this Unix timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Products

**Slug:** `DEVOLENS_LIST_PRODUCTS`

Return the Cryptolens products visible to the connected access token. Use this first to obtain product IDs required by license-key tools. The token must enable the Get Products method.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Resellers

**Slug:** `DEVOLENS_LIST_RESELLERS`

Search or list resellers visible to the connected Cryptolens account. The token must enable the Reseller method group.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of resellers to return; omit to use the provider default. |
| `search` | string | No | Text matched against reseller name, phone, email, or description. |
| `reseller_id` | integer | No | Exact reseller ID; do not combine with search. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Web API Logs

**Slug:** `DEVOLENS_LIST_WEB_API_LOGS`

Inspect one page of Cryptolens Web API request logs with optional product, license-key, machine, event, and time filters. Pass next_cursor back to continue when one is returned. The token must enable the Get Web APILog method.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum logs in this page (1-1000). |
| `product_id` | integer | No | Only return logs for this numeric product ID; required with license_key. |
| `event_types` | array | No | Named Cryptolens operations or outcomes to include in the logs. |
| `license_key` | string | No | Only return logs for this license key; requires product_id. |
| `next_cursor` | integer | No | Forward cursor returned by the previous call. It is a log ID normally and a request Unix timestamp when time_filter is set. |
| `time_filter` | object | No | Unix timestamp bounds for the request time. |
| `machine_code` | string | No | Exact case-sensitive machine code to filter on. |
| `friendly_name` | string | No | Case-insensitive substring of the machine friendly name. |
| `include_anomaly_classification` | boolean | No | Include anomaly-classification fields when the subscription supports them. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
