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

# Make

> Use Darwin from a Make scenario with explicit review and recovery.

Call Darwin's API from a server-side HTTP module and keep the API key in a protected connection.

<Note>
  Private custom-app testing is the current path. Darwin is not yet a public Make app; publication requires automated
  checks followed by Make's manual QA review.
</Note>

Search first, then map the selected Search `agent` and optional nested `capability` into `start_thread`. Save `threadId` and the last consumed cursor in the scenario's durable data store if the work can outlive one execution. Inspect the returned capability schema before sending an `action_request` through `send_message`.

Use routers for nonterminal states. A successful HTTP response can still mean Darwin needs input, connection, payment, or approval before work can continue.

## Scenario pattern

```text theme={null}
Trigger → Search → Review or deterministic selection → Start thread → Store threadId + cursor
                                                               ↓
                                                 Scheduled get_thread → Router → next step
```

Use a new `requestId` for each new logical mutation. Reuse the same ID only when the scenario retries the identical request after a transport failure.


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