> ## Documentation Index
> Fetch the complete documentation index at: https://docs.revoengine.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Acceptance and completion

> Return a durable operation ID and expose its terminal outcome separately.

Use an asynchronous contract when the work is too slow or retryable for one interactive request. The caller first learns that work was accepted, then follows the operation to completion.

<ol role="list" />

## Explore the behavior

Next step

<ol />

Step  of . . .

Illustration only. Select a step to inspect it or return to the start.

## Define both contracts

The acceptance response should name the durable identifier. This illustrative application response is not a universal RevoEngine Job response schema:

```json theme={null}
{
  "operationId": "order-1-settlement",
  "status": "ACCEPTED"
}
```

The status contract should identify pending, running, successful and failed states, and make missing or unknown operations distinguishable. Return an artifact or business result only after its required persistence boundary.

## Avoid accidental completion signals

* Use the documented operation contract to interpret `202`. An asynchronous Job receipt confirms acceptance. A successful [manual Materialized View refresh](https://docs.revoengine.com/operate/materialized-views.md#manual-refresh) also confirms the refresh completed.
* A Job ID confirms which run to follow, not that it finished.
* Uploading bytes does not replace finalizing the Storage file.
* A UI action that received a receipt may still need a completion probe.

The caller should poll or subscribe using the exact accepted identifier. Do not infer success from the newest Job, a spinner disappearing or an empty error list.

See [Job lifecycle](https://docs.revoengine.com/operate/jobs.md), [Storage uploads](https://docs.revoengine.com/operate/storage-uploads.md) and [widget completion probes](https://docs.revoengine.com/widgets/execute.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.