# request.processing_completed

### `request.processing_completed`
Fired when a request finishes intake processing, regardless of how it
entered the platform — a forwarded email, a web-app upload, or
`POST /tenders` / `POST /orders`. `status` is `COMPLETED` when the
request landed ready for review and `FAILED` when parsing failed.
`job_id` is populated only for requests created via the API
(`POST /tenders` / `POST /orders`) and matches the `job_id` from the
original `JobAck` — use it to correlate the event with your upload.
For email- and UI-created requests it is `null`, so this event also
lets you track LVs your customers forward by email without any polling.

```json
{
  "event_id": "5f607182-9304-4d5f-a6c7-1b2c3d4e8b3e",
  "event_type": "request.processing_completed",
  "delivered_at": "2026-06-10T10:04:12Z",
  "data": {
    "request_id": 12345,
    "request_type": "TENDER",
    "status": "COMPLETED",
    "name": "RFQ-2026-0042 — Office Tower B",
    "customer_bp_id": 678,
    "position_count": 47,
    "job_id": "4242",
    "error_message": null
  }
}
```

Version: 1.33.0
