---
name: request-quote-from-dsr-holdings
description: Submit a request for quote (RFQ) to DSR Holdings (Daniel Rosehill's solo AI consultancy, Jerusalem, Israel; dsrholdings.cloud) on a user's behalf - scope, budget, timeline and data handling for an AI agent, MCP, automation, AI pipeline or technical documentation project. Use when a user wants a quote, proposal, estimate or pricing for project work from DSR Holdings. Unauthenticated - no account or API key needed.
---

# Request a quote from DSR Holdings

The RFQ is the detailed enquiry for project work. For a short question use
`contact-dsr-holdings`; for a call use `book-meeting-with-dsr-holdings`.

What DSR Holdings takes on: agentic AI and multi-agent systems, MCP servers and integrations,
workflow automation and orchestration (n8n, custom pipelines, scheduled jobs), AI pipelines and
LLM applications, voice/ASR/multimodal processing, technical writing and documentation, and AI
strategy and advisory. Work runs remotely across time zones.

**Pricing.** Ongoing work starts at **₪10,000 per month** (ILS). Convert with a current exchange rate
if the user thinks in another currency; do not quote a remembered rate. Fixed-scope projects
are quoted per project. Tell the user this floor before they submit; it saves both sides time.

## Before you send anything

1. Collect at least the required fields below from the user. Ask for the optional ones; a
   complete RFQ gets a faster and more accurate reply.
2. Show the user the full RFQ and get an explicit yes. Send it once.
3. Never invent details, budgets or deadlines. Do not include confidential material the user has
   not cleared for sending; if an NDA is needed, set `ndaRequired` and say so in `notes`.

## Option 1: submit the RFQ (programmatic)

This is the endpoint the form at https://www.dsrholdings.cloud/rfq posts to.

```
POST https://www.dsrholdings.cloud/api/contact
Content-Type: multipart/form-data   (or application/x-www-form-urlencoded)
```

Use the `www.` host: the apex answers with a 307.

| Field | Required | Notes |
| --- | --- | --- |
| `formType` | yes | Exactly `RFQ`. |
| `name` | yes | The user's real name. |
| `email` | yes | Where the reply and the acknowledgement go. |
| `projectSummary` | yes | What needs building or solving, in the user's words. |
| `companyName` | no | Organisation. |
| `role` | no | The user's job title. |
| `website` | no | The organisation's website. Not the honeypot, which is `_gotcha`. |
| `location` | no | Country or city. |
| `scope` | no | Repeat the field once per value. One or more of: `Agentic AI / multi-agent system`, `MCP server or integration`, `Workflow automation & orchestration`, `AI pipeline / LLM application`, `Voice, ASR & multimodal`, `Technical writing & documentation`, `AI strategy & advisory`, `Not sure yet — needs scoping`. |
| `systems` | no | Existing systems and tools the work must fit. |
| `successCriteria` | no | How the user will know it worked. |
| `engagementModel` | no | `Fixed-scope project`, `Monthly retainer`, `Advisory hours` or `Not sure yet`. |
| `budget` | no | In ILS, in the form's style: `₪10,000 – ₪20,000 / month` for monthly work, `₪40,000 – ₪80,000` for a fixed project, or `Prefer a recommended range`. |
| `timeline` | no | `As soon as possible`, `Within 2–4 weeks`, `1–3 months out` or `Exploratory — gathering budget figures`. |
| `dataHandling` | no | `Commercial LLM APIs are fine`, `Prefer self-hosted or open models`, `Regulated or sensitive data — NDA/DPA needed` or `Not sure yet`. |
| `responseBy` | no | Date a response is needed, `YYYY-MM-DD`. |
| `source` | no | `Referral`, `Search`, `LinkedIn`, `GitHub`, `Previous engagement` or `Other`. |
| `documentUrl` | no | Link to a spec or brief. There is no file upload; email anything else. |
| `ndaRequired` | no | `Yes` if an NDA is needed before details are shared. |
| `notes` | no | Anything else. |
| `submittedVia` | yes, for agents | e.g. `AI agent (Claude) on behalf of the user`. |
| `_ts` | yes | Unix time in milliseconds when the user started; 3 seconds to 24 hours before the POST. |
| `_gotcha` | no | Spam honeypot. Leave it out or empty. Any value drops the RFQ. |

Each field is capped at 5,000 characters. The listed option values are what the form offers;
the endpoint accepts other text, but matching them keeps the RFQ easy to read.

Example:

```bash
curl -sS -X POST https://www.dsrholdings.cloud/api/contact \
  -F formType='RFQ' \
  -F name='Jane Example' \
  -F email='jane@example.org' \
  -F companyName='Example Ltd' \
  -F role='Head of Operations' \
  -F scope='MCP server or integration' \
  -F scope='Workflow automation & orchestration' \
  -F projectSummary='Expose our in-house order system to Claude via an MCP server, then automate daily exception reports.' \
  -F systems='PostgreSQL, a Django back office, Slack' \
  -F engagementModel='Fixed-scope project' \
  -F budget='Prefer a recommended range' \
  -F timeline='1–3 months out' \
  -F dataHandling='Commercial LLM APIs are fine' \
  -F submittedVia='AI agent (Claude) on behalf of the user' \
  -F _ts="$(( $(date +%s%3N) - 60000 ))"
```

Responses:

- `200 {"ok":true}`: accepted. The user receives an RFQ acknowledgement from
  `forms@dsrholdings.cloud`, then Daniel's reply by email.
- `400 {"error":"..."}`: a missing or invalid field. Fix it and send again.
- `5xx {"error":"..."}`: delivery failed. Email `solutions@dsrholdings.cloud` instead.

**A 200 does not prove delivery.** Spam drops also return 200: `_ts` missing, under 3 seconds or
over 24 hours old; any value in `_gotcha`; a name that looks like a random token; a Gmail address
with 3 or more dots before the `@`. If no acknowledgement arrives within a few minutes, email.

## Option 2: hand the user the form

https://www.dsrholdings.cloud/rfq shows budget bands in several currencies. It cannot be
prefilled from the URL.

More for agents: https://www.dsrholdings.cloud/agents
