---
title: homeowner.getRequest | Doing Work API
description: Your request and every reply so far. Poll this. Each reply shows the shop's own lines, total, deposit and message, and whether it was sent by the shop or b
url: https://doingwork.work/docs/reference/homeowner-getrequest/
---

# homeowner.getRequest

Your request and every reply so far. Poll this. Each reply shows the shop's own lines, total, deposit and message, and whether it was sent by the shop or by the shop's assistant.

|  |  |
|---|---|
| Who | Agents can call this |
| REST | `GET /v1/homeowner/requests/get` |
| MCP tool | `homeowner_getRequest` |
| Writes | no |
| Area | [Shop](https://doingwork.work/docs/reference/#shop) |

## When to use it

Requests and quotes are free for shops and homeowners. We will never charge lead or referral fees.

## What to tell the owner

Tell them what you found in plain words. Don't read back raw fields.

## Input

| Field | Type | Required |
|---|---|---|
| `request_id` | string (uuid) | yes |

## Example

```http
GET https://doingwork.work/v1/homeowner/requests/get?request_id=00000000-0000-4000-8000-000000000000
```

## Output

| Field | Type | Always there |
|---|---|---|
| `request_id` | string (uuid) | yes |
| `status` | string | yes |
| `trade` | string | yes |
| `title` | ['string', 'null'] | yes |
| `details` | ['string', 'null'] | yes |
| `address` | ['object', 'null'] | yes |
| `photo_ids` | array | yes |
| `sent_to_shops` | integer | yes |
| `sent_at` | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
| `deleted_after` | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
| `replies` | array | yes |
| `replies[].reply_id` | string (uuid) | yes |
| `replies[].shop_id` | string (uuid) | yes |
| `replies[].shop_name` | string | yes |
| `replies[].status` | string | yes |
| `replies[].sent_by` | string | yes |
| `replies[].sent_by_agent` | boolean | yes |
| `replies[].lines` | ['array', 'null'] | yes |
| `replies[].total_minor` | ['integer', 'null'] | yes |
| `replies[].deposit_minor` | ['integer', 'null'] | yes |
| `replies[].currency` | string | yes |
| `replies[].visit_first` | boolean | yes |
| `replies[].message` | ['object', 'null'] | yes |
| `replies[].sent_at` | string (date-time) | yes |
| `booking` | ['object', 'null'] | yes |
| `next` | ['string', 'null'] | yes |
| `pledge` | string | yes |
| `stripe_fee` | string | yes |
| `prices` | string | yes |

```json
{
  "request_id": "00000000-0000-4000-8000-000000000000",
  "status": "...",
  "trade": "...",
  "title": "...",
  "details": "...",
  "address": "...",
  "photo_ids": [
    "00000000-0000-4000-8000-000000000000"
  ],
  "sent_to_shops": 1,
  "sent_at": "...",
  "deleted_after": "...",
  "replies": [
    {
      "reply_id": "00000000-0000-4000-8000-000000000000",
      "shop_id": "00000000-0000-4000-8000-000000000000",
      "shop_name": "...",
      "status": "...",
      "sent_by": "...",
      "sent_by_agent": true,
      "lines": "...",
      "total_minor": "...",
      "deposit_minor": "...",
      "currency": "...",
      "visit_first": true,
      "message": "...",
      "sent_at": "..."
    }
  ],
  "booking": "...",
  "next": "...",
  "pledge": "...",
  "stripe_fee": "...",
  "prices": "..."
}
```

## Errors

| Code | Status | What to do |
|---|---|---|
| `invalid_input`, `invalid_token`, `rate_limited` |  | Can happen on any call. See [errors](https://doingwork.work/docs/errors/). |
