# Test the processor criteria on recent mail

Judges the saved criteria — or a draft sent in the body, validated like a save — against this workspace's last 50 messages at processor@, and answers per message what became of it then, what would become of it now, the intake rule that would decide it and the completeness rules' results. Nothing is written and nobody is emailed. Admin only.

Access class: `workspace:admin`.

## Endpoint

`POST /v1/workspace/processor/criteria/test-run`

## Request body

Content type: `application/json`.

```json
{
  "body": {
    "completeness": [
      {
        "productType": "string",
        "rules": "string"
      }
    ],
    "dealCreation": "string",
    "dealStatus": "string",
    "dealTypeChoices": [
      {
        "builtIn": "string",
        "key": "string",
        "label": "string"
      }
    ],
    "dealTypes": {},
    "defaultAssigneeAccountId": "",
    "emailsOff": [
      "string"
    ],
    "fileTypes": {},
    "intake": [
      {
        "comparison": "string",
        "onFail": "string",
        "signal": "string",
        "value": 1.5
      }
    ],
    "isDefault": true,
    "presets": {
      "completeness": [
        "string"
      ],
      "intake": [
        "string"
      ]
    },
    "updatedAt": "string"
  },
  "params": {},
  "query": {}
}
```

## Responses

### 201

the action's answer

Content type: `application/json`.

```json
{
  "data": {
    "messages": [
      "string"
    ]
  }
}
```

### default

a refusal: `{"error": "<what a person needs to read>"}`. 401 no credential, 402 the plan does not include this, 403 the seat does not, 404 the thing does not exist or is not yours to see.

Content type: `application/json`.

```json
{
  "error": "string"
}
```
