*Workflows › Reference › Actions › Orders*

# Analyze equipment from an email

> Analyzes with AI the equipment list in an email and returns the items it detects with their catalogue match.

## At a glance

| Property | Value |
| --- | --- |
| Domain | `orders` |
| Group in the editor | Orders › Orders |
| Runs as | The owner of the workflow, with their permissions |
| Permission | Edit access to Orders. Administrators always pass; a module outside the plan blocks everyone. |
| Consumes AI credits | Yes |
| Destructive | Not declared |

ACTION `orders.analyzeEmail`

## Inputs

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `messageId` | string | Yes | It is the «Id» published by the «Email received» and «Email sent» triggers. With another trigger, it comes from «Find emails» followed by «Iterate list» or «Find in list». |
| `orderId` | string | No | **Related order.** Optional. The analyzed email is saved on this order. No equipment is added to it. |
| `observations` | string | No |  |

## Outputs

| Name | Type | Description |
| --- | --- | --- |
| `detectedItems` | object[] |  |
| `detectedItems.name` | string |  |
| `detectedItems.quantity` | number |  |
| `detectedItems.status` | enum<string> |  `available`, `low_stock`, `unavailable`, `not_found` |
| `detectedItems.matchedItemId` | string |  |
| `detectedItems.matchedItemName` | string |  |
| `detectedItems.confidence` | number |  |
| `detectedItems.alternativeCount` | number |  |
| `detectedItems.notes` | string |  |
| `summary` | json |  |
| `sourceFileUrl` | string |  |
| `messages` | string[] |  |
| `warnings` | string[] |  |

---

Canonical URL: https://docs.filmo.io/workflows/reference/actions/orders-analyzeemail  
Last updated: 2026-10-25